@taon-dev/cms 21.0.23 → 21.0.25

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 (4049) hide show
  1. package/VERIFIED-BUILD-DATA.jsonc +3 -3
  2. package/browser/fesm2022/cms-browser-taon-cms-backoffice.component.html.de-DE.i18n.data-Wz8hRSFC.mjs +21 -0
  3. package/browser/fesm2022/cms-browser-taon-cms-backoffice.component.html.de-DE.i18n.data-Wz8hRSFC.mjs.map +1 -0
  4. package/browser/fesm2022/cms-browser-taon-cms-backoffice.component.html.en-US.i18n.data-Cq_pxm3U.mjs +21 -0
  5. package/browser/fesm2022/cms-browser-taon-cms-backoffice.component.html.en-US.i18n.data-Cq_pxm3U.mjs.map +1 -0
  6. package/browser/fesm2022/cms-browser-taon-cms-backoffice.component.html.pl-PL.i18n.data-CO6JBZPr.mjs +21 -0
  7. package/browser/fesm2022/cms-browser-taon-cms-backoffice.component.html.pl-PL.i18n.data-CO6JBZPr.mjs.map +1 -0
  8. package/browser/fesm2022/cms-browser-taon-cms-backoffice.routes.ts.de-DE.i18n.data-Cor9o5q2.mjs +46 -0
  9. package/browser/fesm2022/cms-browser-taon-cms-backoffice.routes.ts.de-DE.i18n.data-Cor9o5q2.mjs.map +1 -0
  10. package/browser/fesm2022/cms-browser-taon-cms-backoffice.routes.ts.en-US.i18n.data-oL2AKoeA.mjs +43 -0
  11. package/browser/fesm2022/cms-browser-taon-cms-backoffice.routes.ts.en-US.i18n.data-oL2AKoeA.mjs.map +1 -0
  12. package/browser/fesm2022/cms-browser-taon-cms-backoffice.routes.ts.pl-PL.i18n.data-M-s6mPfL.mjs +46 -0
  13. package/browser/fesm2022/cms-browser-taon-cms-backoffice.routes.ts.pl-PL.i18n.data-M-s6mPfL.mjs.map +1 -0
  14. package/browser/fesm2022/cms-browser-taon-cms-comment.controller.ts.de-DE.i18n.data-52JuNZfu.mjs +116 -0
  15. package/browser/fesm2022/cms-browser-taon-cms-comment.controller.ts.de-DE.i18n.data-52JuNZfu.mjs.map +1 -0
  16. package/browser/fesm2022/cms-browser-taon-cms-comment.controller.ts.en-US.i18n.data-CJCvBBU_.mjs +95 -0
  17. package/browser/fesm2022/cms-browser-taon-cms-comment.controller.ts.en-US.i18n.data-CJCvBBU_.mjs.map +1 -0
  18. package/browser/fesm2022/cms-browser-taon-cms-comment.controller.ts.pl-PL.i18n.data-BJs3ls4V.mjs +116 -0
  19. package/browser/fesm2022/cms-browser-taon-cms-comment.controller.ts.pl-PL.i18n.data-BJs3ls4V.mjs.map +1 -0
  20. package/browser/fesm2022/cms-browser-taon-cms-comments-all-preview-backoffice.component.html.de-DE.i18n.data-CMev1wcP.mjs +91 -0
  21. package/browser/fesm2022/cms-browser-taon-cms-comments-all-preview-backoffice.component.html.de-DE.i18n.data-CMev1wcP.mjs.map +1 -0
  22. package/browser/fesm2022/cms-browser-taon-cms-comments-all-preview-backoffice.component.html.en-US.i18n.data-CjF4lqgh.mjs +75 -0
  23. package/browser/fesm2022/cms-browser-taon-cms-comments-all-preview-backoffice.component.html.en-US.i18n.data-CjF4lqgh.mjs.map +1 -0
  24. package/browser/fesm2022/cms-browser-taon-cms-comments-all-preview-backoffice.component.html.pl-PL.i18n.data-CeAhRxMv.mjs +91 -0
  25. package/browser/fesm2022/cms-browser-taon-cms-comments-all-preview-backoffice.component.html.pl-PL.i18n.data-CeAhRxMv.mjs.map +1 -0
  26. package/browser/fesm2022/cms-browser-taon-cms-comments-all-preview-backoffice.component.ts.de-DE.i18n.data-DDK-2rLR.mjs +56 -0
  27. package/browser/fesm2022/cms-browser-taon-cms-comments-all-preview-backoffice.component.ts.de-DE.i18n.data-DDK-2rLR.mjs.map +1 -0
  28. package/browser/fesm2022/cms-browser-taon-cms-comments-all-preview-backoffice.component.ts.en-US.i18n.data-xFeXpn1o.mjs +47 -0
  29. package/browser/fesm2022/cms-browser-taon-cms-comments-all-preview-backoffice.component.ts.en-US.i18n.data-xFeXpn1o.mjs.map +1 -0
  30. package/browser/fesm2022/cms-browser-taon-cms-comments-all-preview-backoffice.component.ts.pl-PL.i18n.data-DYWK01lP.mjs +56 -0
  31. package/browser/fesm2022/cms-browser-taon-cms-comments-all-preview-backoffice.component.ts.pl-PL.i18n.data-DYWK01lP.mjs.map +1 -0
  32. package/browser/fesm2022/cms-browser-taon-cms-comments-backoffice.component.ts.de-DE.i18n.data-B7SytbJB.mjs +10 -0
  33. package/browser/fesm2022/cms-browser-taon-cms-comments-backoffice.component.ts.de-DE.i18n.data-B7SytbJB.mjs.map +1 -0
  34. package/browser/fesm2022/cms-browser-taon-cms-comments-backoffice.component.ts.en-US.i18n.data-D9bcUBff.mjs +10 -0
  35. package/browser/fesm2022/cms-browser-taon-cms-comments-backoffice.component.ts.en-US.i18n.data-D9bcUBff.mjs.map +1 -0
  36. package/browser/fesm2022/cms-browser-taon-cms-comments-backoffice.component.ts.pl-PL.i18n.data-DdHRI05H.mjs +10 -0
  37. package/browser/fesm2022/cms-browser-taon-cms-comments-backoffice.component.ts.pl-PL.i18n.data-DdHRI05H.mjs.map +1 -0
  38. package/browser/fesm2022/cms-browser-taon-cms-comments-backoffice.routes.ts.de-DE.i18n.data-DlfHgbLQ.mjs +26 -0
  39. package/browser/fesm2022/cms-browser-taon-cms-comments-backoffice.routes.ts.de-DE.i18n.data-DlfHgbLQ.mjs.map +1 -0
  40. package/browser/fesm2022/cms-browser-taon-cms-comments-backoffice.routes.ts.en-US.i18n.data-r7UvcnjQ.mjs +23 -0
  41. package/browser/fesm2022/cms-browser-taon-cms-comments-backoffice.routes.ts.en-US.i18n.data-r7UvcnjQ.mjs.map +1 -0
  42. package/browser/fesm2022/cms-browser-taon-cms-comments-backoffice.routes.ts.pl-PL.i18n.data-s7BuhcAO.mjs +26 -0
  43. package/browser/fesm2022/cms-browser-taon-cms-comments-backoffice.routes.ts.pl-PL.i18n.data-s7BuhcAO.mjs.map +1 -0
  44. package/browser/fesm2022/cms-browser-taon-cms-comments-blocked-users.component.html.de-DE.i18n.data-CXQd2XPS.mjs +71 -0
  45. package/browser/fesm2022/cms-browser-taon-cms-comments-blocked-users.component.html.de-DE.i18n.data-CXQd2XPS.mjs.map +1 -0
  46. package/browser/fesm2022/cms-browser-taon-cms-comments-blocked-users.component.html.en-US.i18n.data-tLSegJ6s.mjs +59 -0
  47. package/browser/fesm2022/cms-browser-taon-cms-comments-blocked-users.component.html.en-US.i18n.data-tLSegJ6s.mjs.map +1 -0
  48. package/browser/fesm2022/cms-browser-taon-cms-comments-blocked-users.component.html.pl-PL.i18n.data-DJf5nl3H.mjs +71 -0
  49. package/browser/fesm2022/cms-browser-taon-cms-comments-blocked-users.component.html.pl-PL.i18n.data-DJf5nl3H.mjs.map +1 -0
  50. package/browser/fesm2022/cms-browser-taon-cms-comments-blocked-users.component.ts.de-DE.i18n.data-CuWrfki8.mjs +26 -0
  51. package/browser/fesm2022/cms-browser-taon-cms-comments-blocked-users.component.ts.de-DE.i18n.data-CuWrfki8.mjs.map +1 -0
  52. package/browser/fesm2022/cms-browser-taon-cms-comments-blocked-users.component.ts.en-US.i18n.data-CDHSnoqj.mjs +23 -0
  53. package/browser/fesm2022/cms-browser-taon-cms-comments-blocked-users.component.ts.en-US.i18n.data-CDHSnoqj.mjs.map +1 -0
  54. package/browser/fesm2022/cms-browser-taon-cms-comments-blocked-users.component.ts.pl-PL.i18n.data-CLTOHTxh.mjs +26 -0
  55. package/browser/fesm2022/cms-browser-taon-cms-comments-blocked-users.component.ts.pl-PL.i18n.data-CLTOHTxh.mjs.map +1 -0
  56. package/browser/fesm2022/cms-browser-taon-cms-comments-filters-settings.component.html.de-DE.i18n.data-BwQydxXJ.mjs +46 -0
  57. package/browser/fesm2022/cms-browser-taon-cms-comments-filters-settings.component.html.de-DE.i18n.data-BwQydxXJ.mjs.map +1 -0
  58. package/browser/fesm2022/cms-browser-taon-cms-comments-filters-settings.component.html.en-US.i18n.data-B0WaOo2T.mjs +39 -0
  59. package/browser/fesm2022/cms-browser-taon-cms-comments-filters-settings.component.html.en-US.i18n.data-B0WaOo2T.mjs.map +1 -0
  60. package/browser/fesm2022/cms-browser-taon-cms-comments-filters-settings.component.html.pl-PL.i18n.data-C3LMZQX_.mjs +46 -0
  61. package/browser/fesm2022/cms-browser-taon-cms-comments-filters-settings.component.html.pl-PL.i18n.data-C3LMZQX_.mjs.map +1 -0
  62. package/browser/fesm2022/cms-browser-taon-cms-comments-filters-settings.component.ts.de-DE.i18n.data-DJN7ZL2u.mjs +26 -0
  63. package/browser/fesm2022/cms-browser-taon-cms-comments-filters-settings.component.ts.de-DE.i18n.data-DJN7ZL2u.mjs.map +1 -0
  64. package/browser/fesm2022/cms-browser-taon-cms-comments-filters-settings.component.ts.en-US.i18n.data-C5wx6com.mjs +23 -0
  65. package/browser/fesm2022/cms-browser-taon-cms-comments-filters-settings.component.ts.en-US.i18n.data-C5wx6com.mjs.map +1 -0
  66. package/browser/fesm2022/cms-browser-taon-cms-comments-filters-settings.component.ts.pl-PL.i18n.data-CzLF2vI7.mjs +26 -0
  67. package/browser/fesm2022/cms-browser-taon-cms-comments-filters-settings.component.ts.pl-PL.i18n.data-CzLF2vI7.mjs.map +1 -0
  68. package/browser/fesm2022/cms-browser-taon-cms-comments.component.html.de-DE.i18n.data-CC2pOsBh.mjs +96 -0
  69. package/browser/fesm2022/cms-browser-taon-cms-comments.component.html.de-DE.i18n.data-CC2pOsBh.mjs.map +1 -0
  70. package/browser/fesm2022/cms-browser-taon-cms-comments.component.html.en-US.i18n.data-BlSOCYdH.mjs +79 -0
  71. package/browser/fesm2022/cms-browser-taon-cms-comments.component.html.en-US.i18n.data-BlSOCYdH.mjs.map +1 -0
  72. package/browser/fesm2022/cms-browser-taon-cms-comments.component.html.pl-PL.i18n.data-D7WDhmfg.mjs +96 -0
  73. package/browser/fesm2022/cms-browser-taon-cms-comments.component.html.pl-PL.i18n.data-D7WDhmfg.mjs.map +1 -0
  74. package/browser/fesm2022/cms-browser-taon-cms-comments.component.ts.de-DE.i18n.data-BMFIsFQA.mjs +36 -0
  75. package/browser/fesm2022/cms-browser-taon-cms-comments.component.ts.de-DE.i18n.data-BMFIsFQA.mjs.map +1 -0
  76. package/browser/fesm2022/cms-browser-taon-cms-comments.component.ts.en-US.i18n.data-CcajJkUT.mjs +31 -0
  77. package/browser/fesm2022/cms-browser-taon-cms-comments.component.ts.en-US.i18n.data-CcajJkUT.mjs.map +1 -0
  78. package/browser/fesm2022/cms-browser-taon-cms-comments.component.ts.pl-PL.i18n.data-DHQKm-Vy.mjs +36 -0
  79. package/browser/fesm2022/cms-browser-taon-cms-comments.component.ts.pl-PL.i18n.data-DHQKm-Vy.mjs.map +1 -0
  80. package/browser/fesm2022/cms-browser-taon-cms-course-backoffice.component.html.de-DE.i18n.data-C7pTQWwn.mjs +66 -0
  81. package/browser/fesm2022/cms-browser-taon-cms-course-backoffice.component.html.de-DE.i18n.data-C7pTQWwn.mjs.map +1 -0
  82. package/browser/fesm2022/cms-browser-taon-cms-course-backoffice.component.html.en-US.i18n.data-DS5e_kiO.mjs +55 -0
  83. package/browser/fesm2022/cms-browser-taon-cms-course-backoffice.component.html.en-US.i18n.data-DS5e_kiO.mjs.map +1 -0
  84. package/browser/fesm2022/cms-browser-taon-cms-course-backoffice.component.html.pl-PL.i18n.data-Bbd3tl5E.mjs +66 -0
  85. package/browser/fesm2022/cms-browser-taon-cms-course-backoffice.component.html.pl-PL.i18n.data-Bbd3tl5E.mjs.map +1 -0
  86. package/browser/fesm2022/cms-browser-taon-cms-course-backoffice.component.ts.de-DE.i18n.data-Czh-7oo5.mjs +31 -0
  87. package/browser/fesm2022/cms-browser-taon-cms-course-backoffice.component.ts.de-DE.i18n.data-Czh-7oo5.mjs.map +1 -0
  88. package/browser/fesm2022/cms-browser-taon-cms-course-backoffice.component.ts.pl-PL.i18n.data-C24kqclA.mjs +31 -0
  89. package/browser/fesm2022/cms-browser-taon-cms-course-backoffice.component.ts.pl-PL.i18n.data-C24kqclA.mjs.map +1 -0
  90. package/browser/fesm2022/cms-browser-taon-cms-course-contents.component.html.de-DE.i18n.data-DHjZfsX1.mjs +46 -0
  91. package/browser/fesm2022/cms-browser-taon-cms-course-contents.component.html.de-DE.i18n.data-DHjZfsX1.mjs.map +1 -0
  92. package/browser/fesm2022/cms-browser-taon-cms-course-contents.component.html.en-US.i18n.data-DVgKXqkn.mjs +39 -0
  93. package/browser/fesm2022/cms-browser-taon-cms-course-contents.component.html.en-US.i18n.data-DVgKXqkn.mjs.map +1 -0
  94. package/browser/fesm2022/cms-browser-taon-cms-course-contents.component.html.pl-PL.i18n.data-DG7WF_Q6.mjs +46 -0
  95. package/browser/fesm2022/cms-browser-taon-cms-course-contents.component.html.pl-PL.i18n.data-DG7WF_Q6.mjs.map +1 -0
  96. package/browser/fesm2022/cms-browser-taon-cms-course-contents.component.ts.de-DE.i18n.data-Bpfepbck.mjs +41 -0
  97. package/browser/fesm2022/cms-browser-taon-cms-course-contents.component.ts.de-DE.i18n.data-Bpfepbck.mjs.map +1 -0
  98. package/browser/fesm2022/cms-browser-taon-cms-course-contents.component.ts.en-US.i18n.data-B8LDDxAZ.mjs +35 -0
  99. package/browser/fesm2022/cms-browser-taon-cms-course-contents.component.ts.en-US.i18n.data-B8LDDxAZ.mjs.map +1 -0
  100. package/browser/fesm2022/cms-browser-taon-cms-course-contents.component.ts.pl-PL.i18n.data-BBIJ3S8j.mjs +41 -0
  101. package/browser/fesm2022/cms-browser-taon-cms-course-contents.component.ts.pl-PL.i18n.data-BBIJ3S8j.mjs.map +1 -0
  102. package/browser/fesm2022/cms-browser-taon-cms-course-cover.component.ts.de-DE.i18n.data-DN1aH4NG.mjs +16 -0
  103. package/browser/fesm2022/cms-browser-taon-cms-course-cover.component.ts.de-DE.i18n.data-DN1aH4NG.mjs.map +1 -0
  104. package/browser/fesm2022/cms-browser-taon-cms-course-cover.component.ts.pl-PL.i18n.data-CqFjyHe8.mjs +16 -0
  105. package/browser/fesm2022/cms-browser-taon-cms-course-cover.component.ts.pl-PL.i18n.data-CqFjyHe8.mjs.map +1 -0
  106. package/browser/fesm2022/cms-browser-taon-cms-post-choice-dialog.component.html.de-DE.i18n.data-5Qiho28U.mjs +21 -0
  107. package/browser/fesm2022/cms-browser-taon-cms-post-choice-dialog.component.html.de-DE.i18n.data-5Qiho28U.mjs.map +1 -0
  108. package/browser/fesm2022/cms-browser-taon-cms-post-choice-dialog.component.html.en-US.i18n.data-b7N9eQx6.mjs +19 -0
  109. package/browser/fesm2022/cms-browser-taon-cms-post-choice-dialog.component.html.en-US.i18n.data-b7N9eQx6.mjs.map +1 -0
  110. package/browser/fesm2022/cms-browser-taon-cms-post-choice-dialog.component.html.pl-PL.i18n.data-C60-CdWA.mjs +21 -0
  111. package/browser/fesm2022/cms-browser-taon-cms-post-choice-dialog.component.html.pl-PL.i18n.data-C60-CdWA.mjs.map +1 -0
  112. package/browser/fesm2022/cms-browser-taon-cms-post-choice-dialog.component.ts.de-DE.i18n.data-p-8AkPxT.mjs +10 -0
  113. package/browser/fesm2022/cms-browser-taon-cms-post-choice-dialog.component.ts.de-DE.i18n.data-p-8AkPxT.mjs.map +1 -0
  114. package/browser/fesm2022/cms-browser-taon-cms-post-choice-dialog.component.ts.en-US.i18n.data-Ch5so5tI.mjs +10 -0
  115. package/browser/fesm2022/cms-browser-taon-cms-post-choice-dialog.component.ts.en-US.i18n.data-Ch5so5tI.mjs.map +1 -0
  116. package/browser/fesm2022/cms-browser-taon-cms-post-choice-dialog.component.ts.pl-PL.i18n.data-yUfBicV4.mjs +10 -0
  117. package/browser/fesm2022/cms-browser-taon-cms-post-choice-dialog.component.ts.pl-PL.i18n.data-yUfBicV4.mjs.map +1 -0
  118. package/browser/fesm2022/cms-browser-taon-cms-post-details-page.component.ts.de-DE.i18n.data-Dg1YSTPY.mjs +21 -0
  119. package/browser/fesm2022/cms-browser-taon-cms-post-details-page.component.ts.de-DE.i18n.data-Dg1YSTPY.mjs.map +1 -0
  120. package/browser/fesm2022/cms-browser-taon-cms-post-details-page.component.ts.pl-PL.i18n.data-D0byKBJB.mjs +21 -0
  121. package/browser/fesm2022/cms-browser-taon-cms-post-details-page.component.ts.pl-PL.i18n.data-D0byKBJB.mjs.map +1 -0
  122. package/browser/fesm2022/cms-browser-taon-cms-post-table-actions.directive.ts.de-DE.i18n.data-C2j_py52.mjs +106 -0
  123. package/browser/fesm2022/cms-browser-taon-cms-post-table-actions.directive.ts.de-DE.i18n.data-C2j_py52.mjs.map +1 -0
  124. package/browser/fesm2022/cms-browser-taon-cms-post-table-actions.directive.ts.en-US.i18n.data-BZPgJVlM.mjs +87 -0
  125. package/browser/fesm2022/cms-browser-taon-cms-post-table-actions.directive.ts.en-US.i18n.data-BZPgJVlM.mjs.map +1 -0
  126. package/browser/fesm2022/cms-browser-taon-cms-post-table-actions.directive.ts.pl-PL.i18n.data-BjWjc3BL.mjs +106 -0
  127. package/browser/fesm2022/cms-browser-taon-cms-post-table-actions.directive.ts.pl-PL.i18n.data-BjWjc3BL.mjs.map +1 -0
  128. package/browser/fesm2022/cms-browser-taon-cms-post-thumbnail.component.ts.de-DE.i18n.data-BsUvV7wV.mjs +16 -0
  129. package/browser/fesm2022/cms-browser-taon-cms-post-thumbnail.component.ts.de-DE.i18n.data-BsUvV7wV.mjs.map +1 -0
  130. package/browser/fesm2022/cms-browser-taon-cms-post-thumbnail.component.ts.en-US.i18n.data-BnQ5iyjF.mjs +15 -0
  131. package/browser/fesm2022/cms-browser-taon-cms-post-thumbnail.component.ts.en-US.i18n.data-BnQ5iyjF.mjs.map +1 -0
  132. package/browser/fesm2022/cms-browser-taon-cms-post-thumbnail.component.ts.pl-PL.i18n.data-BK-39xw9.mjs +16 -0
  133. package/browser/fesm2022/cms-browser-taon-cms-post-thumbnail.component.ts.pl-PL.i18n.data-BK-39xw9.mjs.map +1 -0
  134. package/browser/fesm2022/cms-browser-taon-cms-post.component.html.de-DE.i18n.data-Bv4175Nc.mjs +782 -0
  135. package/browser/fesm2022/cms-browser-taon-cms-post.component.html.de-DE.i18n.data-Bv4175Nc.mjs.map +1 -0
  136. package/browser/fesm2022/cms-browser-taon-cms-post.component.html.en-US.i18n.data-CY1znnmK.mjs +703 -0
  137. package/browser/fesm2022/cms-browser-taon-cms-post.component.html.en-US.i18n.data-CY1znnmK.mjs.map +1 -0
  138. package/browser/fesm2022/cms-browser-taon-cms-post.component.html.pl-PL.i18n.data-BcbuzOtn.mjs +784 -0
  139. package/browser/fesm2022/cms-browser-taon-cms-post.component.html.pl-PL.i18n.data-BcbuzOtn.mjs.map +1 -0
  140. package/browser/fesm2022/cms-browser-taon-cms-post.component.ts.de-DE.i18n.data-DzuYOTSn.mjs +356 -0
  141. package/browser/fesm2022/cms-browser-taon-cms-post.component.ts.de-DE.i18n.data-DzuYOTSn.mjs.map +1 -0
  142. package/browser/fesm2022/cms-browser-taon-cms-post.component.ts.en-US.i18n.data-MgewtvKr.mjs +315 -0
  143. package/browser/fesm2022/cms-browser-taon-cms-post.component.ts.en-US.i18n.data-MgewtvKr.mjs.map +1 -0
  144. package/browser/fesm2022/cms-browser-taon-cms-post.component.ts.pl-PL.i18n.data-B1ILfsGK.mjs +356 -0
  145. package/browser/fesm2022/cms-browser-taon-cms-post.component.ts.pl-PL.i18n.data-B1ILfsGK.mjs.map +1 -0
  146. package/browser/fesm2022/cms-browser-taon-cms-posts-backoffice.component.html.de-DE.i18n.data-NJq9X1Xu.mjs +56 -0
  147. package/browser/fesm2022/cms-browser-taon-cms-posts-backoffice.component.html.de-DE.i18n.data-NJq9X1Xu.mjs.map +1 -0
  148. package/browser/fesm2022/cms-browser-taon-cms-posts-backoffice.component.html.en-US.i18n.data-CNVclldN.mjs +49 -0
  149. package/browser/fesm2022/cms-browser-taon-cms-posts-backoffice.component.html.en-US.i18n.data-CNVclldN.mjs.map +1 -0
  150. package/browser/fesm2022/cms-browser-taon-cms-posts-backoffice.component.html.pl-PL.i18n.data-Du1-Z4s7.mjs +56 -0
  151. package/browser/fesm2022/cms-browser-taon-cms-posts-backoffice.component.html.pl-PL.i18n.data-Du1-Z4s7.mjs.map +1 -0
  152. package/browser/fesm2022/cms-browser-taon-cms-posts-backoffice.component.ts.de-DE.i18n.data-Dpn2QCL5.mjs +26 -0
  153. package/browser/fesm2022/cms-browser-taon-cms-posts-backoffice.component.ts.de-DE.i18n.data-Dpn2QCL5.mjs.map +1 -0
  154. package/browser/fesm2022/cms-browser-taon-cms-posts-backoffice.component.ts.pl-PL.i18n.data-D66VONme.mjs +26 -0
  155. package/browser/fesm2022/cms-browser-taon-cms-posts-backoffice.component.ts.pl-PL.i18n.data-D66VONme.mjs.map +1 -0
  156. package/browser/fesm2022/cms-browser-taon-cms-revision-chooser.component.html.de-DE.i18n.data-BwHoQ5dp.mjs +85 -0
  157. package/browser/fesm2022/cms-browser-taon-cms-revision-chooser.component.html.de-DE.i18n.data-BwHoQ5dp.mjs.map +1 -0
  158. package/browser/fesm2022/cms-browser-taon-cms-revision-chooser.component.html.en-US.i18n.data--DmrBMU8.mjs +85 -0
  159. package/browser/fesm2022/cms-browser-taon-cms-revision-chooser.component.html.en-US.i18n.data--DmrBMU8.mjs.map +1 -0
  160. package/browser/fesm2022/cms-browser-taon-cms-revision-chooser.component.html.pl-PL.i18n.data-Dq6ANhCC.mjs +85 -0
  161. package/browser/fesm2022/cms-browser-taon-cms-revision-chooser.component.html.pl-PL.i18n.data-Dq6ANhCC.mjs.map +1 -0
  162. package/browser/fesm2022/cms-browser-taon-cms-taxonomy-quick-create-dialog.component.ts.de-DE.i18n.data-BNNR86nE.mjs +46 -0
  163. package/browser/fesm2022/cms-browser-taon-cms-taxonomy-quick-create-dialog.component.ts.de-DE.i18n.data-BNNR86nE.mjs.map +1 -0
  164. package/browser/fesm2022/cms-browser-taon-cms-taxonomy-quick-create-dialog.component.ts.pl-PL.i18n.data-CWZgi9Oj.mjs +46 -0
  165. package/browser/fesm2022/cms-browser-taon-cms-taxonomy-quick-create-dialog.component.ts.pl-PL.i18n.data-CWZgi9Oj.mjs.map +1 -0
  166. package/browser/fesm2022/cms-browser-taon-cms-website-feature.constants.ts.de-DE.i18n.data-XXzo3WV0.mjs +15 -0
  167. package/browser/fesm2022/cms-browser-taon-cms-website-feature.constants.ts.de-DE.i18n.data-XXzo3WV0.mjs.map +1 -0
  168. package/browser/fesm2022/cms-browser-taon-cms-website-feature.constants.ts.en-US.i18n.data-RSZ1CMH0.mjs +15 -0
  169. package/browser/fesm2022/cms-browser-taon-cms-website-feature.constants.ts.en-US.i18n.data-RSZ1CMH0.mjs.map +1 -0
  170. package/browser/fesm2022/cms-browser-taon-cms-website-feature.constants.ts.pl-PL.i18n.data-DkusOdc2.mjs +15 -0
  171. package/browser/fesm2022/cms-browser-taon-cms-website-feature.constants.ts.pl-PL.i18n.data-DkusOdc2.mjs.map +1 -0
  172. package/browser/fesm2022/cms-browser-taon-cms-website-feature.controller.ts.de-DE.i18n.data-CffwgAbw.mjs +16 -0
  173. package/browser/fesm2022/cms-browser-taon-cms-website-feature.controller.ts.de-DE.i18n.data-CffwgAbw.mjs.map +1 -0
  174. package/browser/fesm2022/cms-browser-taon-cms-website-feature.controller.ts.en-US.i18n.data-B5b4Sjbx.mjs +15 -0
  175. package/browser/fesm2022/cms-browser-taon-cms-website-feature.controller.ts.en-US.i18n.data-B5b4Sjbx.mjs.map +1 -0
  176. package/browser/fesm2022/cms-browser-taon-cms-website-feature.controller.ts.pl-PL.i18n.data-DsRHlzfY.mjs +16 -0
  177. package/browser/fesm2022/cms-browser-taon-cms-website-feature.controller.ts.pl-PL.i18n.data-DsRHlzfY.mjs.map +1 -0
  178. package/browser/fesm2022/cms-browser-taon-cms-website-features.component.html.de-DE.i18n.data-DjcIc00l.mjs +46 -0
  179. package/browser/fesm2022/cms-browser-taon-cms-website-features.component.html.de-DE.i18n.data-DjcIc00l.mjs.map +1 -0
  180. package/browser/fesm2022/cms-browser-taon-cms-website-features.component.html.en-US.i18n.data-QmMRyRO7.mjs +39 -0
  181. package/browser/fesm2022/cms-browser-taon-cms-website-features.component.html.en-US.i18n.data-QmMRyRO7.mjs.map +1 -0
  182. package/browser/fesm2022/cms-browser-taon-cms-website-features.component.html.pl-PL.i18n.data-Dw8jZ3c6.mjs +46 -0
  183. package/browser/fesm2022/cms-browser-taon-cms-website-features.component.html.pl-PL.i18n.data-Dw8jZ3c6.mjs.map +1 -0
  184. package/browser/fesm2022/cms-browser-taon-cms-website-features.component.ts.de-DE.i18n.data-Bza6XFl9.mjs +56 -0
  185. package/browser/fesm2022/cms-browser-taon-cms-website-features.component.ts.de-DE.i18n.data-Bza6XFl9.mjs.map +1 -0
  186. package/browser/fesm2022/cms-browser-taon-cms-website-features.component.ts.en-US.i18n.data-VlSWp-9Q.mjs +47 -0
  187. package/browser/fesm2022/cms-browser-taon-cms-website-features.component.ts.en-US.i18n.data-VlSWp-9Q.mjs.map +1 -0
  188. package/browser/fesm2022/cms-browser-taon-cms-website-features.component.ts.pl-PL.i18n.data-B8sGULWs.mjs +56 -0
  189. package/browser/fesm2022/cms-browser-taon-cms-website-features.component.ts.pl-PL.i18n.data-B8sGULWs.mjs.map +1 -0
  190. package/browser/fesm2022/cms-browser-taon-related-post-chooser.component.html.de-DE.i18n.data-iFMy_s0K.mjs +56 -0
  191. package/browser/fesm2022/cms-browser-taon-related-post-chooser.component.html.de-DE.i18n.data-iFMy_s0K.mjs.map +1 -0
  192. package/browser/fesm2022/cms-browser-taon-related-post-chooser.component.html.en-US.i18n.data-CDzbclv0.mjs +54 -0
  193. package/browser/fesm2022/cms-browser-taon-related-post-chooser.component.html.en-US.i18n.data-CDzbclv0.mjs.map +1 -0
  194. package/browser/fesm2022/cms-browser-taon-related-post-chooser.component.html.pl-PL.i18n.data-ByrgL4Gv.mjs +56 -0
  195. package/browser/fesm2022/cms-browser-taon-related-post-chooser.component.html.pl-PL.i18n.data-ByrgL4Gv.mjs.map +1 -0
  196. package/browser/fesm2022/cms-browser-taon-related-post-chooser.component.ts.de-DE.i18n.data-DfuNO9iv.mjs +21 -0
  197. package/browser/fesm2022/cms-browser-taon-related-post-chooser.component.ts.de-DE.i18n.data-DfuNO9iv.mjs.map +1 -0
  198. package/browser/fesm2022/cms-browser-taon-related-post-chooser.component.ts.en-US.i18n.data-DrnuVs_M.mjs +21 -0
  199. package/browser/fesm2022/cms-browser-taon-related-post-chooser.component.ts.en-US.i18n.data-DrnuVs_M.mjs.map +1 -0
  200. package/browser/fesm2022/cms-browser-taon-related-post-chooser.component.ts.pl-PL.i18n.data-BpjogO9H.mjs +21 -0
  201. package/browser/fesm2022/cms-browser-taon-related-post-chooser.component.ts.pl-PL.i18n.data-BpjogO9H.mjs.map +1 -0
  202. package/browser/fesm2022/cms-browser.mjs +5995 -1216
  203. package/browser/fesm2022/cms-browser.mjs.map +1 -1
  204. package/browser/package.json +1 -1
  205. package/browser/types/cms-browser.d.ts +590 -29
  206. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-backoffice.component.html.de-DE.i18n.data-KeoaV7m2.mjs +21 -0
  207. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-backoffice.component.html.de-DE.i18n.data-KeoaV7m2.mjs.map +1 -0
  208. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-backoffice.component.html.en-US.i18n.data-ygnWytvQ.mjs +21 -0
  209. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-backoffice.component.html.en-US.i18n.data-ygnWytvQ.mjs.map +1 -0
  210. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-backoffice.component.html.pl-PL.i18n.data-UUgWez1i.mjs +21 -0
  211. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-backoffice.component.html.pl-PL.i18n.data-UUgWez1i.mjs.map +1 -0
  212. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-backoffice.routes.ts.de-DE.i18n.data-IYg91CQc.mjs +46 -0
  213. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-backoffice.routes.ts.de-DE.i18n.data-IYg91CQc.mjs.map +1 -0
  214. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-backoffice.routes.ts.en-US.i18n.data-Cm8zOt05.mjs +43 -0
  215. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-backoffice.routes.ts.en-US.i18n.data-Cm8zOt05.mjs.map +1 -0
  216. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-backoffice.routes.ts.pl-PL.i18n.data-BsuJ8Lkt.mjs +46 -0
  217. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-backoffice.routes.ts.pl-PL.i18n.data-BsuJ8Lkt.mjs.map +1 -0
  218. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comment.controller.ts.de-DE.i18n.data-Bd2osC_4.mjs +116 -0
  219. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comment.controller.ts.de-DE.i18n.data-Bd2osC_4.mjs.map +1 -0
  220. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comment.controller.ts.en-US.i18n.data-IWj03KvC.mjs +95 -0
  221. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comment.controller.ts.en-US.i18n.data-IWj03KvC.mjs.map +1 -0
  222. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comment.controller.ts.pl-PL.i18n.data-C5bVU8fj.mjs +116 -0
  223. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comment.controller.ts.pl-PL.i18n.data-C5bVU8fj.mjs.map +1 -0
  224. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments-all-preview-backoffice.component.html.de-DE.i18n.data-CaKUf8Fk.mjs +91 -0
  225. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments-all-preview-backoffice.component.html.de-DE.i18n.data-CaKUf8Fk.mjs.map +1 -0
  226. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments-all-preview-backoffice.component.html.en-US.i18n.data-wKFwdBQr.mjs +75 -0
  227. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments-all-preview-backoffice.component.html.en-US.i18n.data-wKFwdBQr.mjs.map +1 -0
  228. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments-all-preview-backoffice.component.html.pl-PL.i18n.data-CefV542V.mjs +91 -0
  229. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments-all-preview-backoffice.component.html.pl-PL.i18n.data-CefV542V.mjs.map +1 -0
  230. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments-all-preview-backoffice.component.ts.de-DE.i18n.data-CfJrptWE.mjs +56 -0
  231. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments-all-preview-backoffice.component.ts.de-DE.i18n.data-CfJrptWE.mjs.map +1 -0
  232. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments-all-preview-backoffice.component.ts.en-US.i18n.data-Bw-EvzZd.mjs +47 -0
  233. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments-all-preview-backoffice.component.ts.en-US.i18n.data-Bw-EvzZd.mjs.map +1 -0
  234. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments-all-preview-backoffice.component.ts.pl-PL.i18n.data-CFNbIfA2.mjs +56 -0
  235. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments-all-preview-backoffice.component.ts.pl-PL.i18n.data-CFNbIfA2.mjs.map +1 -0
  236. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments-backoffice.component.ts.de-DE.i18n.data-D7SoFQFJ.mjs +10 -0
  237. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments-backoffice.component.ts.de-DE.i18n.data-D7SoFQFJ.mjs.map +1 -0
  238. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments-backoffice.component.ts.en-US.i18n.data-DvzTa0Yp.mjs +10 -0
  239. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments-backoffice.component.ts.en-US.i18n.data-DvzTa0Yp.mjs.map +1 -0
  240. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments-backoffice.component.ts.pl-PL.i18n.data-rZd8Ibrx.mjs +10 -0
  241. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments-backoffice.component.ts.pl-PL.i18n.data-rZd8Ibrx.mjs.map +1 -0
  242. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments-backoffice.routes.ts.de-DE.i18n.data-B8HxMZ2F.mjs +26 -0
  243. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments-backoffice.routes.ts.de-DE.i18n.data-B8HxMZ2F.mjs.map +1 -0
  244. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments-backoffice.routes.ts.en-US.i18n.data-C6g2CYxx.mjs +23 -0
  245. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments-backoffice.routes.ts.en-US.i18n.data-C6g2CYxx.mjs.map +1 -0
  246. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments-backoffice.routes.ts.pl-PL.i18n.data-C9WubLOQ.mjs +26 -0
  247. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments-backoffice.routes.ts.pl-PL.i18n.data-C9WubLOQ.mjs.map +1 -0
  248. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments-blocked-users.component.html.de-DE.i18n.data-R9AH_44l.mjs +71 -0
  249. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments-blocked-users.component.html.de-DE.i18n.data-R9AH_44l.mjs.map +1 -0
  250. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments-blocked-users.component.html.en-US.i18n.data-BQyckLog.mjs +59 -0
  251. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments-blocked-users.component.html.en-US.i18n.data-BQyckLog.mjs.map +1 -0
  252. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments-blocked-users.component.html.pl-PL.i18n.data-_-iaPoPs.mjs +71 -0
  253. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments-blocked-users.component.html.pl-PL.i18n.data-_-iaPoPs.mjs.map +1 -0
  254. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments-blocked-users.component.ts.de-DE.i18n.data-CCyRCtw8.mjs +26 -0
  255. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments-blocked-users.component.ts.de-DE.i18n.data-CCyRCtw8.mjs.map +1 -0
  256. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments-blocked-users.component.ts.en-US.i18n.data-BbwVt_l2.mjs +23 -0
  257. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments-blocked-users.component.ts.en-US.i18n.data-BbwVt_l2.mjs.map +1 -0
  258. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments-blocked-users.component.ts.pl-PL.i18n.data-D-gwEZ1P.mjs +26 -0
  259. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments-blocked-users.component.ts.pl-PL.i18n.data-D-gwEZ1P.mjs.map +1 -0
  260. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments-filters-settings.component.html.de-DE.i18n.data-C0PxPYQr.mjs +46 -0
  261. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments-filters-settings.component.html.de-DE.i18n.data-C0PxPYQr.mjs.map +1 -0
  262. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments-filters-settings.component.html.en-US.i18n.data-k_0dbIXB.mjs +39 -0
  263. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments-filters-settings.component.html.en-US.i18n.data-k_0dbIXB.mjs.map +1 -0
  264. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments-filters-settings.component.html.pl-PL.i18n.data-DgaU4pt5.mjs +46 -0
  265. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments-filters-settings.component.html.pl-PL.i18n.data-DgaU4pt5.mjs.map +1 -0
  266. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments-filters-settings.component.ts.de-DE.i18n.data-BPGhyiPp.mjs +26 -0
  267. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments-filters-settings.component.ts.de-DE.i18n.data-BPGhyiPp.mjs.map +1 -0
  268. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments-filters-settings.component.ts.en-US.i18n.data-DKAqxNAJ.mjs +23 -0
  269. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments-filters-settings.component.ts.en-US.i18n.data-DKAqxNAJ.mjs.map +1 -0
  270. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments-filters-settings.component.ts.pl-PL.i18n.data-CcQBqus-.mjs +26 -0
  271. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments-filters-settings.component.ts.pl-PL.i18n.data-CcQBqus-.mjs.map +1 -0
  272. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments.component.html.de-DE.i18n.data-QVEWNXzQ.mjs +96 -0
  273. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments.component.html.de-DE.i18n.data-QVEWNXzQ.mjs.map +1 -0
  274. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments.component.html.en-US.i18n.data-ryggDWZd.mjs +79 -0
  275. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments.component.html.en-US.i18n.data-ryggDWZd.mjs.map +1 -0
  276. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments.component.html.pl-PL.i18n.data-wWL_FkhB.mjs +96 -0
  277. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments.component.html.pl-PL.i18n.data-wWL_FkhB.mjs.map +1 -0
  278. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments.component.ts.de-DE.i18n.data-nLhHlaqV.mjs +36 -0
  279. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments.component.ts.de-DE.i18n.data-nLhHlaqV.mjs.map +1 -0
  280. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments.component.ts.en-US.i18n.data-srx7cGeB.mjs +31 -0
  281. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments.component.ts.en-US.i18n.data-srx7cGeB.mjs.map +1 -0
  282. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments.component.ts.pl-PL.i18n.data--3605ibH.mjs +36 -0
  283. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments.component.ts.pl-PL.i18n.data--3605ibH.mjs.map +1 -0
  284. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-course-backoffice.component.html.de-DE.i18n.data-DL9j2S1f.mjs +66 -0
  285. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-course-backoffice.component.html.de-DE.i18n.data-DL9j2S1f.mjs.map +1 -0
  286. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-course-backoffice.component.html.en-US.i18n.data-CQQNkA31.mjs +55 -0
  287. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-course-backoffice.component.html.en-US.i18n.data-CQQNkA31.mjs.map +1 -0
  288. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-course-backoffice.component.html.pl-PL.i18n.data-YKrwR-oA.mjs +66 -0
  289. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-course-backoffice.component.html.pl-PL.i18n.data-YKrwR-oA.mjs.map +1 -0
  290. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-course-backoffice.component.ts.de-DE.i18n.data-BjI7Rbas.mjs +31 -0
  291. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-course-backoffice.component.ts.de-DE.i18n.data-BjI7Rbas.mjs.map +1 -0
  292. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-course-backoffice.component.ts.pl-PL.i18n.data-Bpon52uf.mjs +31 -0
  293. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-course-backoffice.component.ts.pl-PL.i18n.data-Bpon52uf.mjs.map +1 -0
  294. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-course-contents.component.html.de-DE.i18n.data-DHHWiChe.mjs +46 -0
  295. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-course-contents.component.html.de-DE.i18n.data-DHHWiChe.mjs.map +1 -0
  296. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-course-contents.component.html.en-US.i18n.data-DtWbUo_H.mjs +39 -0
  297. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-course-contents.component.html.en-US.i18n.data-DtWbUo_H.mjs.map +1 -0
  298. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-course-contents.component.html.pl-PL.i18n.data-CRbTFEf4.mjs +46 -0
  299. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-course-contents.component.html.pl-PL.i18n.data-CRbTFEf4.mjs.map +1 -0
  300. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-course-contents.component.ts.de-DE.i18n.data-6akBXxFh.mjs +41 -0
  301. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-course-contents.component.ts.de-DE.i18n.data-6akBXxFh.mjs.map +1 -0
  302. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-course-contents.component.ts.en-US.i18n.data-B1JxjQQ6.mjs +35 -0
  303. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-course-contents.component.ts.en-US.i18n.data-B1JxjQQ6.mjs.map +1 -0
  304. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-course-contents.component.ts.pl-PL.i18n.data-BgUqIZxn.mjs +41 -0
  305. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-course-contents.component.ts.pl-PL.i18n.data-BgUqIZxn.mjs.map +1 -0
  306. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-course-cover.component.ts.de-DE.i18n.data-edv9b3CL.mjs +16 -0
  307. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-course-cover.component.ts.de-DE.i18n.data-edv9b3CL.mjs.map +1 -0
  308. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-course-cover.component.ts.pl-PL.i18n.data-DCsX0C5i.mjs +16 -0
  309. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-course-cover.component.ts.pl-PL.i18n.data-DCsX0C5i.mjs.map +1 -0
  310. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post-choice-dialog.component.html.de-DE.i18n.data-D_pzY5c6.mjs +21 -0
  311. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post-choice-dialog.component.html.de-DE.i18n.data-D_pzY5c6.mjs.map +1 -0
  312. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post-choice-dialog.component.html.en-US.i18n.data-D-5qFPjS.mjs +19 -0
  313. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post-choice-dialog.component.html.en-US.i18n.data-D-5qFPjS.mjs.map +1 -0
  314. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post-choice-dialog.component.html.pl-PL.i18n.data-BvewjJas.mjs +21 -0
  315. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post-choice-dialog.component.html.pl-PL.i18n.data-BvewjJas.mjs.map +1 -0
  316. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post-choice-dialog.component.ts.de-DE.i18n.data-DSCbLyki.mjs +10 -0
  317. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post-choice-dialog.component.ts.de-DE.i18n.data-DSCbLyki.mjs.map +1 -0
  318. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post-choice-dialog.component.ts.en-US.i18n.data-DFXtq9fz.mjs +10 -0
  319. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post-choice-dialog.component.ts.en-US.i18n.data-DFXtq9fz.mjs.map +1 -0
  320. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post-choice-dialog.component.ts.pl-PL.i18n.data-BEsM01k5.mjs +10 -0
  321. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post-choice-dialog.component.ts.pl-PL.i18n.data-BEsM01k5.mjs.map +1 -0
  322. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post-details-page.component.ts.de-DE.i18n.data-CumuirSm.mjs +21 -0
  323. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post-details-page.component.ts.de-DE.i18n.data-CumuirSm.mjs.map +1 -0
  324. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post-details-page.component.ts.pl-PL.i18n.data-Deh207IQ.mjs +21 -0
  325. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post-details-page.component.ts.pl-PL.i18n.data-Deh207IQ.mjs.map +1 -0
  326. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post-table-actions.directive.ts.de-DE.i18n.data-CSJ-71_1.mjs +106 -0
  327. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post-table-actions.directive.ts.de-DE.i18n.data-CSJ-71_1.mjs.map +1 -0
  328. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post-table-actions.directive.ts.en-US.i18n.data-lHahMG_F.mjs +87 -0
  329. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post-table-actions.directive.ts.en-US.i18n.data-lHahMG_F.mjs.map +1 -0
  330. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post-table-actions.directive.ts.pl-PL.i18n.data-CCVXEdC9.mjs +106 -0
  331. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post-table-actions.directive.ts.pl-PL.i18n.data-CCVXEdC9.mjs.map +1 -0
  332. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post-thumbnail.component.ts.de-DE.i18n.data-d1KbFK-8.mjs +16 -0
  333. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post-thumbnail.component.ts.de-DE.i18n.data-d1KbFK-8.mjs.map +1 -0
  334. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post-thumbnail.component.ts.en-US.i18n.data-DS_P-nD2.mjs +15 -0
  335. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post-thumbnail.component.ts.en-US.i18n.data-DS_P-nD2.mjs.map +1 -0
  336. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post-thumbnail.component.ts.pl-PL.i18n.data-B4j_wPwr.mjs +16 -0
  337. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post-thumbnail.component.ts.pl-PL.i18n.data-B4j_wPwr.mjs.map +1 -0
  338. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post.component.html.de-DE.i18n.data-DpFy5ZSO.mjs +782 -0
  339. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post.component.html.de-DE.i18n.data-DpFy5ZSO.mjs.map +1 -0
  340. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post.component.html.en-US.i18n.data-DLaPQZZj.mjs +703 -0
  341. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post.component.html.en-US.i18n.data-DLaPQZZj.mjs.map +1 -0
  342. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post.component.html.pl-PL.i18n.data-alQxEnOY.mjs +784 -0
  343. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post.component.html.pl-PL.i18n.data-alQxEnOY.mjs.map +1 -0
  344. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post.component.ts.de-DE.i18n.data-4KAdwPda.mjs +356 -0
  345. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post.component.ts.de-DE.i18n.data-4KAdwPda.mjs.map +1 -0
  346. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post.component.ts.en-US.i18n.data-CyuTYn77.mjs +315 -0
  347. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post.component.ts.en-US.i18n.data-CyuTYn77.mjs.map +1 -0
  348. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post.component.ts.pl-PL.i18n.data-CgmdVwt_.mjs +356 -0
  349. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post.component.ts.pl-PL.i18n.data-CgmdVwt_.mjs.map +1 -0
  350. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-posts-backoffice.component.html.de-DE.i18n.data-BZ-i1R4M.mjs +56 -0
  351. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-posts-backoffice.component.html.de-DE.i18n.data-BZ-i1R4M.mjs.map +1 -0
  352. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-posts-backoffice.component.html.en-US.i18n.data-DpY2vTkh.mjs +49 -0
  353. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-posts-backoffice.component.html.en-US.i18n.data-DpY2vTkh.mjs.map +1 -0
  354. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-posts-backoffice.component.html.pl-PL.i18n.data-p5RPou3k.mjs +56 -0
  355. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-posts-backoffice.component.html.pl-PL.i18n.data-p5RPou3k.mjs.map +1 -0
  356. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-posts-backoffice.component.ts.de-DE.i18n.data-CuOgDz6a.mjs +26 -0
  357. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-posts-backoffice.component.ts.de-DE.i18n.data-CuOgDz6a.mjs.map +1 -0
  358. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-posts-backoffice.component.ts.pl-PL.i18n.data-BYAbSMUv.mjs +26 -0
  359. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-posts-backoffice.component.ts.pl-PL.i18n.data-BYAbSMUv.mjs.map +1 -0
  360. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-revision-chooser.component.html.de-DE.i18n.data-SLqA66mR.mjs +85 -0
  361. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-revision-chooser.component.html.de-DE.i18n.data-SLqA66mR.mjs.map +1 -0
  362. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-revision-chooser.component.html.en-US.i18n.data-bi1erbhb.mjs +85 -0
  363. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-revision-chooser.component.html.en-US.i18n.data-bi1erbhb.mjs.map +1 -0
  364. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-revision-chooser.component.html.pl-PL.i18n.data-zyD3T2B0.mjs +85 -0
  365. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-revision-chooser.component.html.pl-PL.i18n.data-zyD3T2B0.mjs.map +1 -0
  366. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-taxonomy-quick-create-dialog.component.ts.de-DE.i18n.data-BkqaMCJv.mjs +46 -0
  367. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-taxonomy-quick-create-dialog.component.ts.de-DE.i18n.data-BkqaMCJv.mjs.map +1 -0
  368. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-taxonomy-quick-create-dialog.component.ts.pl-PL.i18n.data-Df3XTcUB.mjs +46 -0
  369. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-taxonomy-quick-create-dialog.component.ts.pl-PL.i18n.data-Df3XTcUB.mjs.map +1 -0
  370. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-website-feature.constants.ts.de-DE.i18n.data-BGUWeWkj.mjs +15 -0
  371. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-website-feature.constants.ts.de-DE.i18n.data-BGUWeWkj.mjs.map +1 -0
  372. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-website-feature.constants.ts.en-US.i18n.data-CAYhYnAq.mjs +15 -0
  373. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-website-feature.constants.ts.en-US.i18n.data-CAYhYnAq.mjs.map +1 -0
  374. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-website-feature.constants.ts.pl-PL.i18n.data-DupidosD.mjs +15 -0
  375. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-website-feature.constants.ts.pl-PL.i18n.data-DupidosD.mjs.map +1 -0
  376. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-website-feature.controller.ts.de-DE.i18n.data-C6pc-hGv.mjs +16 -0
  377. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-website-feature.controller.ts.de-DE.i18n.data-C6pc-hGv.mjs.map +1 -0
  378. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-website-feature.controller.ts.en-US.i18n.data-BrZBJdiq.mjs +15 -0
  379. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-website-feature.controller.ts.en-US.i18n.data-BrZBJdiq.mjs.map +1 -0
  380. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-website-feature.controller.ts.pl-PL.i18n.data-SCFSueVV.mjs +16 -0
  381. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-website-feature.controller.ts.pl-PL.i18n.data-SCFSueVV.mjs.map +1 -0
  382. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-website-features.component.html.de-DE.i18n.data-BLuXQBJD.mjs +46 -0
  383. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-website-features.component.html.de-DE.i18n.data-BLuXQBJD.mjs.map +1 -0
  384. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-website-features.component.html.en-US.i18n.data-ZSAywMxZ.mjs +39 -0
  385. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-website-features.component.html.en-US.i18n.data-ZSAywMxZ.mjs.map +1 -0
  386. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-website-features.component.html.pl-PL.i18n.data-BfV8s907.mjs +46 -0
  387. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-website-features.component.html.pl-PL.i18n.data-BfV8s907.mjs.map +1 -0
  388. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-website-features.component.ts.de-DE.i18n.data-CyPSphVA.mjs +56 -0
  389. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-website-features.component.ts.de-DE.i18n.data-CyPSphVA.mjs.map +1 -0
  390. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-website-features.component.ts.en-US.i18n.data-CxtU9aqd.mjs +47 -0
  391. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-website-features.component.ts.en-US.i18n.data-CxtU9aqd.mjs.map +1 -0
  392. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-website-features.component.ts.pl-PL.i18n.data-Pck7hkyw.mjs +56 -0
  393. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-website-features.component.ts.pl-PL.i18n.data-Pck7hkyw.mjs.map +1 -0
  394. package/browser-prod/fesm2022/cms-browser-prod-taon-related-post-chooser.component.html.de-DE.i18n.data-aRQCm3uS.mjs +56 -0
  395. package/browser-prod/fesm2022/cms-browser-prod-taon-related-post-chooser.component.html.de-DE.i18n.data-aRQCm3uS.mjs.map +1 -0
  396. package/browser-prod/fesm2022/cms-browser-prod-taon-related-post-chooser.component.html.en-US.i18n.data-B_XqsehF.mjs +54 -0
  397. package/browser-prod/fesm2022/cms-browser-prod-taon-related-post-chooser.component.html.en-US.i18n.data-B_XqsehF.mjs.map +1 -0
  398. package/browser-prod/fesm2022/cms-browser-prod-taon-related-post-chooser.component.html.pl-PL.i18n.data-BHcZlUUP.mjs +56 -0
  399. package/browser-prod/fesm2022/cms-browser-prod-taon-related-post-chooser.component.html.pl-PL.i18n.data-BHcZlUUP.mjs.map +1 -0
  400. package/browser-prod/fesm2022/cms-browser-prod-taon-related-post-chooser.component.ts.de-DE.i18n.data-utf6lc8k.mjs +21 -0
  401. package/browser-prod/fesm2022/cms-browser-prod-taon-related-post-chooser.component.ts.de-DE.i18n.data-utf6lc8k.mjs.map +1 -0
  402. package/browser-prod/fesm2022/cms-browser-prod-taon-related-post-chooser.component.ts.en-US.i18n.data-CRQBHUL4.mjs +21 -0
  403. package/browser-prod/fesm2022/cms-browser-prod-taon-related-post-chooser.component.ts.en-US.i18n.data-CRQBHUL4.mjs.map +1 -0
  404. package/browser-prod/fesm2022/cms-browser-prod-taon-related-post-chooser.component.ts.pl-PL.i18n.data-vo_xnVr_.mjs +21 -0
  405. package/browser-prod/fesm2022/cms-browser-prod-taon-related-post-chooser.component.ts.pl-PL.i18n.data-vo_xnVr_.mjs.map +1 -0
  406. package/browser-prod/fesm2022/cms-browser-prod.mjs +7627 -2837
  407. package/browser-prod/fesm2022/cms-browser-prod.mjs.map +1 -1
  408. package/browser-prod/package.json +1 -1
  409. package/browser-prod/types/cms-browser-prod.d.ts +574 -29
  410. package/browser-prod.split-namespaces.json +19 -1
  411. package/full-dts/build-info._auto-generated_.d.ts +1 -1
  412. package/full-dts/index._auto-generated_.d.ts +34 -1
  413. package/full-dts/migrations/1793664000000_postVersionLinks.d.ts +7 -0
  414. package/full-dts/migrations/migrations_index._auto-generated_.d.ts +3 -0
  415. package/full-dts/taon-cms-backoffice/i18n/taon-cms-backoffice.routes.ts.de-DE.i18n.data.d.ts +4 -6
  416. package/full-dts/taon-cms-backoffice/i18n/taon-cms-backoffice.routes.ts.en-US.i18n.data.d.ts +4 -2
  417. package/full-dts/taon-cms-backoffice/i18n/taon-cms-backoffice.routes.ts.pl-PL.i18n.data.d.ts +2 -0
  418. package/full-dts/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.html.de-DE.i18n.data.d.ts +22 -0
  419. package/full-dts/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.html.en-US.i18n.data.d.ts +21 -0
  420. package/full-dts/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.html.pl-PL.i18n.data.d.ts +22 -0
  421. package/full-dts/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.ts.de-DE.i18n.data.d.ts +25 -0
  422. package/full-dts/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.ts.en-US.i18n.data.d.ts +24 -0
  423. package/full-dts/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.ts.pl-PL.i18n.data.d.ts +25 -0
  424. package/full-dts/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.translation.d.ts +9 -0
  425. package/full-dts/taon-cms-backoffice/taon-cms-website-features/index.d.ts +2 -0
  426. package/full-dts/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.constants.ts.de-DE.i18n.data.d.ts +16 -0
  427. package/full-dts/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.constants.ts.en-US.i18n.data.d.ts +16 -0
  428. package/full-dts/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.constants.ts.pl-PL.i18n.data.d.ts +16 -0
  429. package/full-dts/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.controller.ts.de-DE.i18n.data.d.ts +17 -0
  430. package/full-dts/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.controller.ts.en-US.i18n.data.d.ts +16 -0
  431. package/full-dts/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.controller.ts.pl-PL.i18n.data.d.ts +17 -0
  432. package/full-dts/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.translation.d.ts +9 -0
  433. package/full-dts/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.abstract.context.d.ts +17 -0
  434. package/full-dts/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.api.service.d.ts +19 -0
  435. package/full-dts/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.config.service.d.ts +8 -0
  436. package/full-dts/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.constants.d.ts +8 -0
  437. package/full-dts/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.controller.d.ts +14 -0
  438. package/full-dts/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.kv.repository.d.ts +15 -0
  439. package/full-dts/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.models.d.ts +12 -0
  440. package/full-dts/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.provider.d.ts +13 -0
  441. package/full-dts/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.utils.d.ts +6 -0
  442. package/full-dts/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.validators.d.ts +8 -0
  443. package/full-dts/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-features.component.d.ts +21 -0
  444. package/full-dts/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-features.models.d.ts +2 -0
  445. package/full-dts/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-features.routes.d.ts +8 -0
  446. package/full-dts/taon-cms-comment/i18n/taon-cms-comment.controller.ts.de-DE.i18n.data.d.ts +33 -0
  447. package/full-dts/taon-cms-comment/i18n/taon-cms-comment.controller.ts.en-US.i18n.data.d.ts +32 -0
  448. package/full-dts/taon-cms-comment/i18n/taon-cms-comment.controller.ts.pl-PL.i18n.data.d.ts +33 -0
  449. package/full-dts/taon-cms-comment/i18n/taon-cms-comment.translation.d.ts +12 -0
  450. package/full-dts/taon-cms-comment/i18n/taon-cms-comments.component.html.de-DE.i18n.data.d.ts +30 -0
  451. package/full-dts/taon-cms-comment/i18n/taon-cms-comments.component.html.en-US.i18n.data.d.ts +29 -0
  452. package/full-dts/taon-cms-comment/i18n/taon-cms-comments.component.html.pl-PL.i18n.data.d.ts +30 -0
  453. package/full-dts/taon-cms-comment/i18n/taon-cms-comments.component.ts.de-DE.i18n.data.d.ts +21 -0
  454. package/full-dts/taon-cms-comment/i18n/taon-cms-comments.component.ts.en-US.i18n.data.d.ts +20 -0
  455. package/full-dts/taon-cms-comment/i18n/taon-cms-comments.component.ts.pl-PL.i18n.data.d.ts +21 -0
  456. package/full-dts/taon-cms-comment/index.d.ts +6 -1
  457. package/full-dts/taon-cms-comment/taon-cms-comment-api.service.d.ts +27 -2
  458. package/full-dts/taon-cms-comment/taon-cms-comment-blocked-phrase.entity.d.ts +8 -0
  459. package/full-dts/taon-cms-comment/taon-cms-comment-blocked-user.entity.d.ts +7 -0
  460. package/full-dts/taon-cms-comment/taon-cms-comment-spam-report.entity.d.ts +8 -0
  461. package/full-dts/taon-cms-comment/taon-cms-comment-vote.entity.d.ts +9 -0
  462. package/full-dts/taon-cms-comment/taon-cms-comment.controller.d.ts +49 -7
  463. package/full-dts/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.component.ts.de-DE.i18n.data.d.ts +9 -0
  464. package/full-dts/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.component.ts.en-US.i18n.data.d.ts +9 -0
  465. package/full-dts/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.component.ts.pl-PL.i18n.data.d.ts +9 -0
  466. package/full-dts/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.routes.ts.de-DE.i18n.data.d.ts +19 -0
  467. package/full-dts/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.routes.ts.en-US.i18n.data.d.ts +18 -0
  468. package/full-dts/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.routes.ts.pl-PL.i18n.data.d.ts +19 -0
  469. package/full-dts/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.translation.d.ts +9 -0
  470. package/full-dts/taon-cms-comment/taon-cms-comments-backoffice/index.d.ts +2 -0
  471. package/full-dts/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.component.html.de-DE.i18n.data.d.ts +31 -0
  472. package/full-dts/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.component.html.en-US.i18n.data.d.ts +30 -0
  473. package/full-dts/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.component.html.pl-PL.i18n.data.d.ts +31 -0
  474. package/full-dts/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.component.ts.de-DE.i18n.data.d.ts +25 -0
  475. package/full-dts/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.component.ts.en-US.i18n.data.d.ts +24 -0
  476. package/full-dts/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.component.ts.pl-PL.i18n.data.d.ts +25 -0
  477. package/full-dts/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.translation.d.ts +9 -0
  478. package/full-dts/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/index.d.ts +2 -0
  479. package/full-dts/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/taon-cms-comments-all-preview-backoffice.component.d.ts +25 -0
  480. package/full-dts/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/taon-cms-comments-all-preview-backoffice.models.d.ts +2 -0
  481. package/full-dts/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/taon-cms-comments-all-preview-backoffice.routes.d.ts +8 -0
  482. package/full-dts/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-backoffice.component.d.ts +5 -0
  483. package/full-dts/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-backoffice.models.d.ts +2 -0
  484. package/full-dts/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-backoffice.routes.d.ts +8 -0
  485. package/full-dts/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.component.html.de-DE.i18n.data.d.ts +27 -0
  486. package/full-dts/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.component.html.en-US.i18n.data.d.ts +26 -0
  487. package/full-dts/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.component.html.pl-PL.i18n.data.d.ts +27 -0
  488. package/full-dts/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.component.ts.de-DE.i18n.data.d.ts +19 -0
  489. package/full-dts/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.component.ts.en-US.i18n.data.d.ts +18 -0
  490. package/full-dts/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.component.ts.pl-PL.i18n.data.d.ts +19 -0
  491. package/full-dts/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.translation.d.ts +9 -0
  492. package/full-dts/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/index.d.ts +2 -0
  493. package/full-dts/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/taon-cms-comments-blocked-users.component.d.ts +26 -0
  494. package/full-dts/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/taon-cms-comments-blocked-users.models.d.ts +2 -0
  495. package/full-dts/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/taon-cms-comments-blocked-users.routes.d.ts +8 -0
  496. package/full-dts/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.component.html.de-DE.i18n.data.d.ts +23 -0
  497. package/full-dts/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.component.html.en-US.i18n.data.d.ts +22 -0
  498. package/full-dts/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.component.html.pl-PL.i18n.data.d.ts +23 -0
  499. package/full-dts/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.component.ts.de-DE.i18n.data.d.ts +19 -0
  500. package/full-dts/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.component.ts.en-US.i18n.data.d.ts +18 -0
  501. package/full-dts/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.component.ts.pl-PL.i18n.data.d.ts +19 -0
  502. package/full-dts/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.translation.d.ts +9 -0
  503. package/full-dts/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/index.d.ts +2 -0
  504. package/full-dts/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/taon-cms-comments-filters-settings.component.d.ts +18 -0
  505. package/full-dts/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/taon-cms-comments-filters-settings.models.d.ts +2 -0
  506. package/full-dts/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/taon-cms-comments-filters-settings.routes.d.ts +8 -0
  507. package/full-dts/taon-cms-comment/taon-cms-comments.component.d.ts +25 -0
  508. package/full-dts/taon-cms-content/i18n/taon-cms-content.controller.ts.de-DE.i18n.data.d.ts +2 -0
  509. package/full-dts/taon-cms-content/i18n/taon-cms-content.controller.ts.en-US.i18n.data.d.ts +8 -2
  510. package/full-dts/taon-cms-content/i18n/taon-cms-content.controller.ts.pl-PL.i18n.data.d.ts +2 -0
  511. package/full-dts/taon-cms-content/taon-cms-content-api.service.d.ts +12 -2
  512. package/full-dts/taon-cms-content/taon-cms-content-storage.controller.d.ts +5 -1
  513. package/full-dts/taon-cms-content/taon-cms-content.controller.d.ts +12 -2
  514. package/full-dts/taon-cms-content/taon-cms-content.entity.d.ts +3 -0
  515. package/full-dts/taon-cms-content/taon-cms-content.models.d.ts +39 -0
  516. package/full-dts/taon-cms-content/taon-cms-content.repository.d.ts +21 -3
  517. package/full-dts/taon-cms-content/taon-cms-content.utils.d.ts +2 -0
  518. package/full-dts/taon-cms-content-revision/taon-cms-content-revision.repository.d.ts +1 -0
  519. package/full-dts/taon-cms-taxonomy-backoffice/i18n/taon-cms-taxonomy-quick-create-dialog.component.ts.de-DE.i18n.data.d.ts +1 -0
  520. package/full-dts/taon-cms-taxonomy-backoffice/i18n/taon-cms-taxonomy-quick-create-dialog.component.ts.pl-PL.i18n.data.d.ts +1 -0
  521. package/full-dts/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.html.de-DE.i18n.data.d.ts +2 -1
  522. package/full-dts/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.html.en-US.i18n.data.d.ts +1 -1
  523. package/full-dts/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.html.pl-PL.i18n.data.d.ts +2 -1
  524. package/full-dts/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.ts.de-DE.i18n.data.d.ts +1 -0
  525. package/full-dts/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.ts.pl-PL.i18n.data.d.ts +1 -0
  526. package/full-dts/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.html.de-DE.i18n.data.d.ts +3 -0
  527. package/full-dts/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.html.en-US.i18n.data.d.ts +2 -0
  528. package/full-dts/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.html.pl-PL.i18n.data.d.ts +3 -0
  529. package/full-dts/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.ts.de-DE.i18n.data.d.ts +2 -0
  530. package/full-dts/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.ts.en-US.i18n.data.d.ts +1 -0
  531. package/full-dts/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.ts.pl-PL.i18n.data.d.ts +2 -0
  532. package/full-dts/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-cover.component.ts.de-DE.i18n.data.d.ts +1 -0
  533. package/full-dts/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-cover.component.ts.pl-PL.i18n.data.d.ts +1 -0
  534. package/full-dts/taon-posts/taon-cms-course-backoffice/taon-cms-course-contents.component.d.ts +8 -0
  535. package/full-dts/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.html.de-DE.i18n.data.d.ts +18 -0
  536. package/full-dts/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.html.en-US.i18n.data.d.ts +17 -0
  537. package/full-dts/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.html.pl-PL.i18n.data.d.ts +18 -0
  538. package/full-dts/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.ts.de-DE.i18n.data.d.ts +9 -0
  539. package/full-dts/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.ts.en-US.i18n.data.d.ts +9 -0
  540. package/full-dts/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.ts.pl-PL.i18n.data.d.ts +9 -0
  541. package/full-dts/taon-posts/taon-cms-post/i18n/taon-cms-post-thumbnail.component.ts.de-DE.i18n.data.d.ts +17 -0
  542. package/full-dts/taon-posts/taon-cms-post/i18n/taon-cms-post-thumbnail.component.ts.en-US.i18n.data.d.ts +16 -0
  543. package/full-dts/taon-posts/taon-cms-post/i18n/taon-cms-post-thumbnail.component.ts.pl-PL.i18n.data.d.ts +17 -0
  544. package/full-dts/taon-posts/taon-cms-post/i18n/taon-cms-post.component.html.de-DE.i18n.data.d.ts +49 -4
  545. package/full-dts/taon-posts/taon-cms-post/i18n/taon-cms-post.component.html.en-US.i18n.data.d.ts +49 -4
  546. package/full-dts/taon-posts/taon-cms-post/i18n/taon-cms-post.component.html.pl-PL.i18n.data.d.ts +49 -4
  547. package/full-dts/taon-posts/taon-cms-post/i18n/taon-cms-post.component.ts.de-DE.i18n.data.d.ts +34 -7
  548. package/full-dts/taon-posts/taon-cms-post/i18n/taon-cms-post.component.ts.en-US.i18n.data.d.ts +32 -1
  549. package/full-dts/taon-posts/taon-cms-post/i18n/taon-cms-post.component.ts.pl-PL.i18n.data.d.ts +34 -7
  550. package/full-dts/taon-posts/taon-cms-post/i18n/taon-cms-post.translation.d.ts +10 -1
  551. package/full-dts/taon-posts/taon-cms-post/taon-cms-document-extractor.d.ts +2 -0
  552. package/full-dts/taon-posts/taon-cms-post/taon-cms-post-choice-dialog.component.d.ts +18 -0
  553. package/full-dts/taon-posts/taon-cms-post/taon-cms-post-thumbnail.component.d.ts +11 -0
  554. package/full-dts/taon-posts/taon-cms-post/taon-cms-post.component.d.ts +90 -7
  555. package/full-dts/taon-posts/taon-cms-post-details-page/i18n/taon-cms-post-details-page.component.ts.de-DE.i18n.data.d.ts +2 -6
  556. package/full-dts/taon-posts/taon-cms-post-details-page/i18n/taon-cms-post-details-page.component.ts.pl-PL.i18n.data.d.ts +2 -6
  557. package/full-dts/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-post-table-actions.directive.ts.de-DE.i18n.data.d.ts +8 -2
  558. package/full-dts/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-post-table-actions.directive.ts.en-US.i18n.data.d.ts +7 -2
  559. package/full-dts/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-post-table-actions.directive.ts.pl-PL.i18n.data.d.ts +8 -2
  560. package/full-dts/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.html.de-DE.i18n.data.d.ts +2 -6
  561. package/full-dts/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.html.pl-PL.i18n.data.d.ts +2 -6
  562. package/full-dts/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.ts.de-DE.i18n.data.d.ts +2 -6
  563. package/full-dts/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.ts.pl-PL.i18n.data.d.ts +2 -6
  564. package/full-dts/taon-posts/taon-cms-posts-backoffice/taon-cms-post-table-actions.directive.d.ts +1 -0
  565. package/full-dts/taon-posts/taon-cms-revision-chooser/i18n/taon-cms-revision-chooser.component.html.de-DE.i18n.data.d.ts +7 -2
  566. package/full-dts/taon-posts/taon-cms-revision-chooser/i18n/taon-cms-revision-chooser.component.html.en-US.i18n.data.d.ts +7 -2
  567. package/full-dts/taon-posts/taon-cms-revision-chooser/i18n/taon-cms-revision-chooser.component.html.pl-PL.i18n.data.d.ts +7 -2
  568. package/full-dts/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.html.de-DE.i18n.data.d.ts +1 -0
  569. package/full-dts/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.html.en-US.i18n.data.d.ts +1 -0
  570. package/full-dts/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.html.pl-PL.i18n.data.d.ts +1 -0
  571. package/full-dts/taon-posts/taon-related-post-chooser/taon-related-post-chooser.component.d.ts +5 -0
  572. package/html/assets/generated/pwa/html-pwa.html +53 -53
  573. package/html/lib/taon-cms-assets-backoffice/taon-cms-asset-preview.component.html +1 -1
  574. package/html/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-features.component.html +45 -0
  575. package/html/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/taon-cms-comments-all-preview-backoffice.component.html +55 -0
  576. package/html/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-backoffice.component.html +1 -0
  577. package/html/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/taon-cms-comments-blocked-users.component.html +35 -0
  578. package/html/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/taon-cms-comments-filters-settings.component.html +25 -0
  579. package/html/lib/taon-cms-comment/taon-cms-comments.component.html +95 -0
  580. package/html/lib/taon-posts/taon-cms-course-backoffice/taon-cms-course-backoffice.component.html +3 -2
  581. package/html/lib/taon-posts/taon-cms-course-backoffice/taon-cms-course-contents.component.html +23 -0
  582. package/html/lib/taon-posts/taon-cms-post/taon-cms-post-choice-dialog.component.html +18 -0
  583. package/html/lib/taon-posts/taon-cms-post/taon-cms-post.component.html +1115 -603
  584. package/html/lib/taon-posts/taon-related-post-chooser/taon-related-post-chooser.component.html +3 -3
  585. package/lib/build-info._auto-generated_.d.ts +1 -1
  586. package/lib/build-info._auto-generated_.js +1 -1
  587. package/lib/index._auto-generated_.d.ts +18 -0
  588. package/lib/index._auto-generated_.js +33 -0
  589. package/lib/index._auto-generated_.js.map +1 -1
  590. package/lib/migrations/1793664000000_postVersionLinks.d.ts +6 -0
  591. package/lib/migrations/1793664000000_postVersionLinks.js +41 -0
  592. package/lib/migrations/1793664000000_postVersionLinks.js.map +1 -0
  593. package/lib/migrations/migrations_index._auto-generated_.d.ts +3 -0
  594. package/lib/migrations/migrations_index._auto-generated_.js +5 -1
  595. package/lib/migrations/migrations_index._auto-generated_.js.map +1 -1
  596. package/lib/package.json +1 -1
  597. package/lib/taon-cms-backoffice/i18n/taon-cms-backoffice.component.html.de-DE.i18n.data.js +5 -0
  598. package/lib/taon-cms-backoffice/i18n/taon-cms-backoffice.component.html.de-DE.i18n.data.js.map +1 -1
  599. package/lib/taon-cms-backoffice/i18n/taon-cms-backoffice.component.html.en-US.i18n.data.js +5 -0
  600. package/lib/taon-cms-backoffice/i18n/taon-cms-backoffice.component.html.en-US.i18n.data.js.map +1 -1
  601. package/lib/taon-cms-backoffice/i18n/taon-cms-backoffice.component.html.pl-PL.i18n.data.js +5 -0
  602. package/lib/taon-cms-backoffice/i18n/taon-cms-backoffice.component.html.pl-PL.i18n.data.js.map +1 -1
  603. package/lib/taon-cms-backoffice/i18n/taon-cms-backoffice.routes.ts.de-DE.i18n.data.d.ts +4 -6
  604. package/lib/taon-cms-backoffice/i18n/taon-cms-backoffice.routes.ts.de-DE.i18n.data.js +16 -5
  605. package/lib/taon-cms-backoffice/i18n/taon-cms-backoffice.routes.ts.de-DE.i18n.data.js.map +1 -1
  606. package/lib/taon-cms-backoffice/i18n/taon-cms-backoffice.routes.ts.en-US.i18n.data.d.ts +4 -2
  607. package/lib/taon-cms-backoffice/i18n/taon-cms-backoffice.routes.ts.en-US.i18n.data.js +13 -5
  608. package/lib/taon-cms-backoffice/i18n/taon-cms-backoffice.routes.ts.en-US.i18n.data.js.map +1 -1
  609. package/lib/taon-cms-backoffice/i18n/taon-cms-backoffice.routes.ts.pl-PL.i18n.data.d.ts +2 -0
  610. package/lib/taon-cms-backoffice/i18n/taon-cms-backoffice.routes.ts.pl-PL.i18n.data.js +15 -5
  611. package/lib/taon-cms-backoffice/i18n/taon-cms-backoffice.routes.ts.pl-PL.i18n.data.js.map +1 -1
  612. package/lib/taon-cms-backoffice/index.d.ts +1 -1
  613. package/lib/taon-cms-backoffice/index.js +2 -2
  614. package/lib/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.html.de-DE.i18n.data.d.ts +21 -0
  615. package/lib/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.html.de-DE.i18n.data.js +46 -0
  616. package/lib/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.html.de-DE.i18n.data.js.map +1 -0
  617. package/lib/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.html.en-US.i18n.data.d.ts +20 -0
  618. package/lib/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.html.en-US.i18n.data.js +39 -0
  619. package/lib/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.html.en-US.i18n.data.js.map +1 -0
  620. package/lib/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.html.pl-PL.i18n.data.d.ts +21 -0
  621. package/lib/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.html.pl-PL.i18n.data.js +46 -0
  622. package/lib/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.html.pl-PL.i18n.data.js.map +1 -0
  623. package/lib/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.ts.de-DE.i18n.data.d.ts +24 -0
  624. package/lib/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.ts.de-DE.i18n.data.js +56 -0
  625. package/lib/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.ts.de-DE.i18n.data.js.map +1 -0
  626. package/lib/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.ts.en-US.i18n.data.d.ts +23 -0
  627. package/lib/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.ts.en-US.i18n.data.js +47 -0
  628. package/lib/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.ts.en-US.i18n.data.js.map +1 -0
  629. package/lib/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.ts.pl-PL.i18n.data.d.ts +24 -0
  630. package/lib/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.ts.pl-PL.i18n.data.js +56 -0
  631. package/lib/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.ts.pl-PL.i18n.data.js.map +1 -0
  632. package/lib/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.translation.d.ts +8 -0
  633. package/lib/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.translation.js +5 -0
  634. package/lib/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.translation.js.map +1 -0
  635. package/lib/taon-cms-backoffice/taon-cms-website-features/index.d.ts +1 -0
  636. package/lib/taon-cms-backoffice/taon-cms-website-features/index.js +5 -0
  637. package/lib/taon-cms-backoffice/taon-cms-website-features/index.js.map +1 -0
  638. package/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.constants.ts.de-DE.i18n.data.d.ts +15 -0
  639. package/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.constants.ts.de-DE.i18n.data.js +15 -0
  640. package/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.constants.ts.de-DE.i18n.data.js.map +1 -0
  641. package/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.constants.ts.en-US.i18n.data.d.ts +15 -0
  642. package/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.constants.ts.en-US.i18n.data.js +15 -0
  643. package/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.constants.ts.en-US.i18n.data.js.map +1 -0
  644. package/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.constants.ts.pl-PL.i18n.data.d.ts +15 -0
  645. package/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.constants.ts.pl-PL.i18n.data.js +15 -0
  646. package/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.constants.ts.pl-PL.i18n.data.js.map +1 -0
  647. package/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.controller.ts.de-DE.i18n.data.d.ts +16 -0
  648. package/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.controller.ts.de-DE.i18n.data.js +16 -0
  649. package/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.controller.ts.de-DE.i18n.data.js.map +1 -0
  650. package/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.controller.ts.en-US.i18n.data.d.ts +15 -0
  651. package/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.controller.ts.en-US.i18n.data.js +15 -0
  652. package/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.controller.ts.en-US.i18n.data.js.map +1 -0
  653. package/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.controller.ts.pl-PL.i18n.data.d.ts +16 -0
  654. package/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.controller.ts.pl-PL.i18n.data.js +16 -0
  655. package/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.controller.ts.pl-PL.i18n.data.js.map +1 -0
  656. package/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.translation.d.ts +8 -0
  657. package/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.translation.js +5 -0
  658. package/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.translation.js.map +1 -0
  659. package/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.abstract.context.d.ts +16 -0
  660. package/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.abstract.context.js +21 -0
  661. package/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.abstract.context.js.map +1 -0
  662. package/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.constants.d.ts +7 -0
  663. package/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.constants.js +16 -0
  664. package/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.constants.js.map +1 -0
  665. package/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.controller.d.ts +13 -0
  666. package/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.controller.js +106 -0
  667. package/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.controller.js.map +1 -0
  668. package/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.kv.repository.d.ts +14 -0
  669. package/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.kv.repository.js +100 -0
  670. package/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.kv.repository.js.map +1 -0
  671. package/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.models.d.ts +11 -0
  672. package/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.models.js +12 -0
  673. package/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.models.js.map +1 -0
  674. package/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.provider.d.ts +12 -0
  675. package/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.provider.js +32 -0
  676. package/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.provider.js.map +1 -0
  677. package/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.utils.d.ts +5 -0
  678. package/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.utils.js +21 -0
  679. package/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.utils.js.map +1 -0
  680. package/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.validators.d.ts +2 -0
  681. package/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.validators.js +3 -0
  682. package/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.validators.js.map +1 -0
  683. package/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-features.models.d.ts +1 -0
  684. package/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-features.models.js +3 -0
  685. package/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-features.models.js.map +1 -0
  686. package/lib/taon-cms-comment/i18n/taon-cms-comment.controller.ts.de-DE.i18n.data.d.ts +32 -0
  687. package/lib/taon-cms-comment/i18n/taon-cms-comment.controller.ts.de-DE.i18n.data.js +116 -0
  688. package/lib/taon-cms-comment/i18n/taon-cms-comment.controller.ts.de-DE.i18n.data.js.map +1 -0
  689. package/lib/taon-cms-comment/i18n/taon-cms-comment.controller.ts.en-US.i18n.data.d.ts +31 -0
  690. package/lib/taon-cms-comment/i18n/taon-cms-comment.controller.ts.en-US.i18n.data.js +95 -0
  691. package/lib/taon-cms-comment/i18n/taon-cms-comment.controller.ts.en-US.i18n.data.js.map +1 -0
  692. package/lib/taon-cms-comment/i18n/taon-cms-comment.controller.ts.pl-PL.i18n.data.d.ts +32 -0
  693. package/lib/taon-cms-comment/i18n/taon-cms-comment.controller.ts.pl-PL.i18n.data.js +116 -0
  694. package/lib/taon-cms-comment/i18n/taon-cms-comment.controller.ts.pl-PL.i18n.data.js.map +1 -0
  695. package/lib/taon-cms-comment/i18n/taon-cms-comment.translation.d.ts +11 -0
  696. package/lib/taon-cms-comment/i18n/taon-cms-comment.translation.js +5 -0
  697. package/lib/taon-cms-comment/i18n/taon-cms-comment.translation.js.map +1 -0
  698. package/lib/taon-cms-comment/i18n/taon-cms-comments.component.html.de-DE.i18n.data.d.ts +29 -0
  699. package/lib/taon-cms-comment/i18n/taon-cms-comments.component.html.de-DE.i18n.data.js +96 -0
  700. package/lib/taon-cms-comment/i18n/taon-cms-comments.component.html.de-DE.i18n.data.js.map +1 -0
  701. package/lib/taon-cms-comment/i18n/taon-cms-comments.component.html.en-US.i18n.data.d.ts +28 -0
  702. package/lib/taon-cms-comment/i18n/taon-cms-comments.component.html.en-US.i18n.data.js +79 -0
  703. package/lib/taon-cms-comment/i18n/taon-cms-comments.component.html.en-US.i18n.data.js.map +1 -0
  704. package/lib/taon-cms-comment/i18n/taon-cms-comments.component.html.pl-PL.i18n.data.d.ts +29 -0
  705. package/lib/taon-cms-comment/i18n/taon-cms-comments.component.html.pl-PL.i18n.data.js +96 -0
  706. package/lib/taon-cms-comment/i18n/taon-cms-comments.component.html.pl-PL.i18n.data.js.map +1 -0
  707. package/lib/taon-cms-comment/i18n/taon-cms-comments.component.ts.de-DE.i18n.data.d.ts +20 -0
  708. package/lib/taon-cms-comment/i18n/taon-cms-comments.component.ts.de-DE.i18n.data.js +36 -0
  709. package/lib/taon-cms-comment/i18n/taon-cms-comments.component.ts.de-DE.i18n.data.js.map +1 -0
  710. package/lib/taon-cms-comment/i18n/taon-cms-comments.component.ts.en-US.i18n.data.d.ts +19 -0
  711. package/lib/taon-cms-comment/i18n/taon-cms-comments.component.ts.en-US.i18n.data.js +31 -0
  712. package/lib/taon-cms-comment/i18n/taon-cms-comments.component.ts.en-US.i18n.data.js.map +1 -0
  713. package/lib/taon-cms-comment/i18n/taon-cms-comments.component.ts.pl-PL.i18n.data.d.ts +20 -0
  714. package/lib/taon-cms-comment/i18n/taon-cms-comments.component.ts.pl-PL.i18n.data.js +36 -0
  715. package/lib/taon-cms-comment/i18n/taon-cms-comments.component.ts.pl-PL.i18n.data.js.map +1 -0
  716. package/lib/taon-cms-comment/index.d.ts +4 -0
  717. package/lib/taon-cms-comment/index.js +5 -0
  718. package/lib/taon-cms-comment/index.js.map +1 -1
  719. package/lib/taon-cms-comment/taon-cms-comment-blocked-phrase.entity.d.ts +7 -0
  720. package/lib/taon-cms-comment/taon-cms-comment-blocked-phrase.entity.js +63 -0
  721. package/lib/taon-cms-comment/taon-cms-comment-blocked-phrase.entity.js.map +1 -0
  722. package/lib/taon-cms-comment/taon-cms-comment-blocked-user.entity.d.ts +6 -0
  723. package/lib/taon-cms-comment/taon-cms-comment-blocked-user.entity.js +54 -0
  724. package/lib/taon-cms-comment/taon-cms-comment-blocked-user.entity.js.map +1 -0
  725. package/lib/taon-cms-comment/taon-cms-comment-spam-report.entity.d.ts +7 -0
  726. package/lib/taon-cms-comment/taon-cms-comment-spam-report.entity.js +63 -0
  727. package/lib/taon-cms-comment/taon-cms-comment-spam-report.entity.js.map +1 -0
  728. package/lib/taon-cms-comment/taon-cms-comment-vote.entity.d.ts +8 -0
  729. package/lib/taon-cms-comment/taon-cms-comment-vote.entity.js +72 -0
  730. package/lib/taon-cms-comment/taon-cms-comment-vote.entity.js.map +1 -0
  731. package/lib/taon-cms-comment/taon-cms-comment.abstract.context.js +11 -1
  732. package/lib/taon-cms-comment/taon-cms-comment.abstract.context.js.map +1 -1
  733. package/lib/taon-cms-comment/taon-cms-comment.controller.d.ts +49 -7
  734. package/lib/taon-cms-comment/taon-cms-comment.controller.js +503 -21
  735. package/lib/taon-cms-comment/taon-cms-comment.controller.js.map +1 -1
  736. package/lib/taon-cms-comment/taon-cms-comment.entity.js +2 -2
  737. package/lib/taon-cms-comment/taon-cms-comment.entity.js.map +1 -1
  738. package/lib/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.component.ts.de-DE.i18n.data.d.ts +8 -0
  739. package/lib/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.component.ts.de-DE.i18n.data.js +10 -0
  740. package/lib/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.component.ts.de-DE.i18n.data.js.map +1 -0
  741. package/lib/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.component.ts.en-US.i18n.data.d.ts +8 -0
  742. package/lib/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.component.ts.en-US.i18n.data.js +10 -0
  743. package/lib/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.component.ts.en-US.i18n.data.js.map +1 -0
  744. package/lib/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.component.ts.pl-PL.i18n.data.d.ts +8 -0
  745. package/lib/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.component.ts.pl-PL.i18n.data.js +10 -0
  746. package/lib/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.component.ts.pl-PL.i18n.data.js.map +1 -0
  747. package/lib/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.routes.ts.de-DE.i18n.data.d.ts +18 -0
  748. package/lib/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.routes.ts.de-DE.i18n.data.js +26 -0
  749. package/lib/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.routes.ts.de-DE.i18n.data.js.map +1 -0
  750. package/lib/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.routes.ts.en-US.i18n.data.d.ts +17 -0
  751. package/lib/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.routes.ts.en-US.i18n.data.js +23 -0
  752. package/lib/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.routes.ts.en-US.i18n.data.js.map +1 -0
  753. package/lib/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.routes.ts.pl-PL.i18n.data.d.ts +18 -0
  754. package/lib/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.routes.ts.pl-PL.i18n.data.js +26 -0
  755. package/lib/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.routes.ts.pl-PL.i18n.data.js.map +1 -0
  756. package/lib/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.translation.d.ts +8 -0
  757. package/lib/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.translation.js +5 -0
  758. package/lib/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.translation.js.map +1 -0
  759. package/lib/taon-cms-comment/taon-cms-comments-backoffice/index.d.ts +1 -0
  760. package/lib/taon-cms-comment/taon-cms-comments-backoffice/index.js +5 -0
  761. package/lib/taon-cms-comment/taon-cms-comments-backoffice/index.js.map +1 -0
  762. package/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.component.html.de-DE.i18n.data.d.ts +30 -0
  763. package/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.component.html.de-DE.i18n.data.js +91 -0
  764. package/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.component.html.de-DE.i18n.data.js.map +1 -0
  765. package/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.component.html.en-US.i18n.data.d.ts +29 -0
  766. package/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.component.html.en-US.i18n.data.js +75 -0
  767. package/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.component.html.en-US.i18n.data.js.map +1 -0
  768. package/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.component.html.pl-PL.i18n.data.d.ts +30 -0
  769. package/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.component.html.pl-PL.i18n.data.js +91 -0
  770. package/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.component.html.pl-PL.i18n.data.js.map +1 -0
  771. package/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.component.ts.de-DE.i18n.data.d.ts +24 -0
  772. package/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.component.ts.de-DE.i18n.data.js +56 -0
  773. package/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.component.ts.de-DE.i18n.data.js.map +1 -0
  774. package/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.component.ts.en-US.i18n.data.d.ts +23 -0
  775. package/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.component.ts.en-US.i18n.data.js +47 -0
  776. package/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.component.ts.en-US.i18n.data.js.map +1 -0
  777. package/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.component.ts.pl-PL.i18n.data.d.ts +24 -0
  778. package/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.component.ts.pl-PL.i18n.data.js +56 -0
  779. package/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.component.ts.pl-PL.i18n.data.js.map +1 -0
  780. package/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.translation.d.ts +8 -0
  781. package/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.translation.js +5 -0
  782. package/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.translation.js.map +1 -0
  783. package/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/index.d.ts +1 -0
  784. package/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/index.js +5 -0
  785. package/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/index.js.map +1 -0
  786. package/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/taon-cms-comments-all-preview-backoffice.models.d.ts +1 -0
  787. package/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/taon-cms-comments-all-preview-backoffice.models.js +3 -0
  788. package/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/taon-cms-comments-all-preview-backoffice.models.js.map +1 -0
  789. package/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-backoffice.models.d.ts +1 -0
  790. package/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-backoffice.models.js +3 -0
  791. package/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-backoffice.models.js.map +1 -0
  792. package/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.component.html.de-DE.i18n.data.d.ts +26 -0
  793. package/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.component.html.de-DE.i18n.data.js +71 -0
  794. package/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.component.html.de-DE.i18n.data.js.map +1 -0
  795. package/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.component.html.en-US.i18n.data.d.ts +25 -0
  796. package/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.component.html.en-US.i18n.data.js +59 -0
  797. package/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.component.html.en-US.i18n.data.js.map +1 -0
  798. package/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.component.html.pl-PL.i18n.data.d.ts +26 -0
  799. package/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.component.html.pl-PL.i18n.data.js +71 -0
  800. package/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.component.html.pl-PL.i18n.data.js.map +1 -0
  801. package/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.component.ts.de-DE.i18n.data.d.ts +18 -0
  802. package/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.component.ts.de-DE.i18n.data.js +26 -0
  803. package/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.component.ts.de-DE.i18n.data.js.map +1 -0
  804. package/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.component.ts.en-US.i18n.data.d.ts +17 -0
  805. package/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.component.ts.en-US.i18n.data.js +23 -0
  806. package/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.component.ts.en-US.i18n.data.js.map +1 -0
  807. package/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.component.ts.pl-PL.i18n.data.d.ts +18 -0
  808. package/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.component.ts.pl-PL.i18n.data.js +26 -0
  809. package/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.component.ts.pl-PL.i18n.data.js.map +1 -0
  810. package/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.translation.d.ts +8 -0
  811. package/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.translation.js +5 -0
  812. package/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.translation.js.map +1 -0
  813. package/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/index.d.ts +1 -0
  814. package/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/index.js +5 -0
  815. package/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/index.js.map +1 -0
  816. package/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/taon-cms-comments-blocked-users.models.d.ts +1 -0
  817. package/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/taon-cms-comments-blocked-users.models.js +3 -0
  818. package/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/taon-cms-comments-blocked-users.models.js.map +1 -0
  819. package/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.component.html.de-DE.i18n.data.d.ts +22 -0
  820. package/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.component.html.de-DE.i18n.data.js +46 -0
  821. package/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.component.html.de-DE.i18n.data.js.map +1 -0
  822. package/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.component.html.en-US.i18n.data.d.ts +21 -0
  823. package/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.component.html.en-US.i18n.data.js +39 -0
  824. package/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.component.html.en-US.i18n.data.js.map +1 -0
  825. package/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.component.html.pl-PL.i18n.data.d.ts +22 -0
  826. package/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.component.html.pl-PL.i18n.data.js +46 -0
  827. package/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.component.html.pl-PL.i18n.data.js.map +1 -0
  828. package/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.component.ts.de-DE.i18n.data.d.ts +18 -0
  829. package/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.component.ts.de-DE.i18n.data.js +26 -0
  830. package/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.component.ts.de-DE.i18n.data.js.map +1 -0
  831. package/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.component.ts.en-US.i18n.data.d.ts +17 -0
  832. package/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.component.ts.en-US.i18n.data.js +23 -0
  833. package/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.component.ts.en-US.i18n.data.js.map +1 -0
  834. package/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.component.ts.pl-PL.i18n.data.d.ts +18 -0
  835. package/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.component.ts.pl-PL.i18n.data.js +26 -0
  836. package/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.component.ts.pl-PL.i18n.data.js.map +1 -0
  837. package/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.translation.d.ts +8 -0
  838. package/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.translation.js +5 -0
  839. package/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.translation.js.map +1 -0
  840. package/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/index.d.ts +1 -0
  841. package/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/index.js +5 -0
  842. package/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/index.js.map +1 -0
  843. package/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/taon-cms-comments-filters-settings.models.d.ts +1 -0
  844. package/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/taon-cms-comments-filters-settings.models.js +3 -0
  845. package/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/taon-cms-comments-filters-settings.models.js.map +1 -0
  846. package/lib/taon-cms-content/i18n/taon-cms-content-storage.controller.ts.de-DE.i18n.data.js +1 -1
  847. package/lib/taon-cms-content/i18n/taon-cms-content-storage.controller.ts.en-US.i18n.data.js +1 -1
  848. package/lib/taon-cms-content/i18n/taon-cms-content-storage.controller.ts.pl-PL.i18n.data.js +1 -1
  849. package/lib/taon-cms-content/i18n/taon-cms-content.controller.ts.de-DE.i18n.data.d.ts +2 -0
  850. package/lib/taon-cms-content/i18n/taon-cms-content.controller.ts.de-DE.i18n.data.js +26 -6
  851. package/lib/taon-cms-content/i18n/taon-cms-content.controller.ts.de-DE.i18n.data.js.map +1 -1
  852. package/lib/taon-cms-content/i18n/taon-cms-content.controller.ts.en-US.i18n.data.d.ts +8 -2
  853. package/lib/taon-cms-content/i18n/taon-cms-content.controller.ts.en-US.i18n.data.js +22 -6
  854. package/lib/taon-cms-content/i18n/taon-cms-content.controller.ts.en-US.i18n.data.js.map +1 -1
  855. package/lib/taon-cms-content/i18n/taon-cms-content.controller.ts.pl-PL.i18n.data.d.ts +2 -0
  856. package/lib/taon-cms-content/i18n/taon-cms-content.controller.ts.pl-PL.i18n.data.js +26 -6
  857. package/lib/taon-cms-content/i18n/taon-cms-content.controller.ts.pl-PL.i18n.data.js.map +1 -1
  858. package/lib/taon-cms-content/taon-cms-content-storage.controller.d.ts +5 -1
  859. package/lib/taon-cms-content/taon-cms-content-storage.controller.js +72 -1
  860. package/lib/taon-cms-content/taon-cms-content-storage.controller.js.map +1 -1
  861. package/lib/taon-cms-content/taon-cms-content.controller.d.ts +12 -2
  862. package/lib/taon-cms-content/taon-cms-content.controller.js +246 -3
  863. package/lib/taon-cms-content/taon-cms-content.controller.js.map +1 -1
  864. package/lib/taon-cms-content/taon-cms-content.entity.d.ts +3 -0
  865. package/lib/taon-cms-content/taon-cms-content.entity.js +27 -0
  866. package/lib/taon-cms-content/taon-cms-content.entity.js.map +1 -1
  867. package/lib/taon-cms-content/taon-cms-content.models.d.ts +39 -0
  868. package/lib/taon-cms-content/taon-cms-content.models.js.map +1 -1
  869. package/lib/taon-cms-content/taon-cms-content.repository.d.ts +21 -3
  870. package/lib/taon-cms-content/taon-cms-content.repository.js +830 -30
  871. package/lib/taon-cms-content/taon-cms-content.repository.js.map +1 -1
  872. package/lib/taon-cms-content/taon-cms-content.utils.d.ts +2 -0
  873. package/lib/taon-cms-content/taon-cms-content.utils.js +6 -0
  874. package/lib/taon-cms-content/taon-cms-content.utils.js.map +1 -1
  875. package/lib/taon-cms-content/taon-cms-content.validation.js +4 -0
  876. package/lib/taon-cms-content/taon-cms-content.validation.js.map +1 -1
  877. package/lib/taon-cms-content-revision/taon-cms-content-revision.repository.d.ts +1 -0
  878. package/lib/taon-cms-content-revision/taon-cms-content-revision.repository.js +21 -0
  879. package/lib/taon-cms-content-revision/taon-cms-content-revision.repository.js.map +1 -1
  880. package/lib/taon-cms-taxonomy-backoffice/i18n/taon-cms-taxonomy-quick-create-dialog.component.ts.de-DE.i18n.data.d.ts +1 -0
  881. package/lib/taon-cms-taxonomy-backoffice/i18n/taon-cms-taxonomy-quick-create-dialog.component.ts.de-DE.i18n.data.js +14 -7
  882. package/lib/taon-cms-taxonomy-backoffice/i18n/taon-cms-taxonomy-quick-create-dialog.component.ts.de-DE.i18n.data.js.map +1 -1
  883. package/lib/taon-cms-taxonomy-backoffice/i18n/taon-cms-taxonomy-quick-create-dialog.component.ts.pl-PL.i18n.data.d.ts +1 -0
  884. package/lib/taon-cms-taxonomy-backoffice/i18n/taon-cms-taxonomy-quick-create-dialog.component.ts.pl-PL.i18n.data.js +14 -7
  885. package/lib/taon-cms-taxonomy-backoffice/i18n/taon-cms-taxonomy-quick-create-dialog.component.ts.pl-PL.i18n.data.js.map +1 -1
  886. package/lib/taon-cms.abstract.context.js +2 -0
  887. package/lib/taon-cms.abstract.context.js.map +1 -1
  888. package/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.html.de-DE.i18n.data.d.ts +2 -1
  889. package/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.html.de-DE.i18n.data.js +26 -15
  890. package/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.html.de-DE.i18n.data.js.map +1 -1
  891. package/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.html.en-US.i18n.data.d.ts +1 -1
  892. package/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.html.en-US.i18n.data.js +10 -10
  893. package/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.html.en-US.i18n.data.js.map +1 -1
  894. package/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.html.pl-PL.i18n.data.d.ts +2 -1
  895. package/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.html.pl-PL.i18n.data.js +26 -15
  896. package/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.html.pl-PL.i18n.data.js.map +1 -1
  897. package/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.ts.de-DE.i18n.data.d.ts +1 -0
  898. package/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.ts.de-DE.i18n.data.js +8 -4
  899. package/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.ts.de-DE.i18n.data.js.map +1 -1
  900. package/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.ts.pl-PL.i18n.data.d.ts +1 -0
  901. package/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.ts.pl-PL.i18n.data.js +8 -4
  902. package/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.ts.pl-PL.i18n.data.js.map +1 -1
  903. package/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.html.de-DE.i18n.data.d.ts +3 -0
  904. package/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.html.de-DE.i18n.data.js +20 -5
  905. package/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.html.de-DE.i18n.data.js.map +1 -1
  906. package/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.html.en-US.i18n.data.d.ts +2 -0
  907. package/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.html.en-US.i18n.data.js +8 -0
  908. package/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.html.en-US.i18n.data.js.map +1 -1
  909. package/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.html.pl-PL.i18n.data.d.ts +3 -0
  910. package/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.html.pl-PL.i18n.data.js +20 -5
  911. package/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.html.pl-PL.i18n.data.js.map +1 -1
  912. package/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.ts.de-DE.i18n.data.d.ts +2 -0
  913. package/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.ts.de-DE.i18n.data.js +15 -5
  914. package/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.ts.de-DE.i18n.data.js.map +1 -1
  915. package/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.ts.en-US.i18n.data.d.ts +1 -0
  916. package/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.ts.en-US.i18n.data.js +9 -5
  917. package/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.ts.en-US.i18n.data.js.map +1 -1
  918. package/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.ts.pl-PL.i18n.data.d.ts +2 -0
  919. package/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.ts.pl-PL.i18n.data.js +15 -5
  920. package/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.ts.pl-PL.i18n.data.js.map +1 -1
  921. package/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-cover.component.ts.de-DE.i18n.data.d.ts +1 -0
  922. package/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-cover.component.ts.de-DE.i18n.data.js +2 -1
  923. package/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-cover.component.ts.de-DE.i18n.data.js.map +1 -1
  924. package/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-cover.component.ts.pl-PL.i18n.data.d.ts +1 -0
  925. package/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-cover.component.ts.pl-PL.i18n.data.js +2 -1
  926. package/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-cover.component.ts.pl-PL.i18n.data.js.map +1 -1
  927. package/lib/taon-posts/taon-cms-course-backoffice/index.d.ts +1 -1
  928. package/lib/taon-posts/taon-cms-course-backoffice/index.js +2 -2
  929. package/lib/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.html.de-DE.i18n.data.d.ts +17 -0
  930. package/lib/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.html.de-DE.i18n.data.js +21 -0
  931. package/lib/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.html.de-DE.i18n.data.js.map +1 -0
  932. package/lib/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.html.en-US.i18n.data.d.ts +16 -0
  933. package/lib/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.html.en-US.i18n.data.js +19 -0
  934. package/lib/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.html.en-US.i18n.data.js.map +1 -0
  935. package/lib/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.html.pl-PL.i18n.data.d.ts +17 -0
  936. package/lib/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.html.pl-PL.i18n.data.js +21 -0
  937. package/lib/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.html.pl-PL.i18n.data.js.map +1 -0
  938. package/lib/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.ts.de-DE.i18n.data.d.ts +8 -0
  939. package/lib/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.ts.de-DE.i18n.data.js +10 -0
  940. package/lib/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.ts.de-DE.i18n.data.js.map +1 -0
  941. package/lib/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.ts.en-US.i18n.data.d.ts +8 -0
  942. package/lib/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.ts.en-US.i18n.data.js +10 -0
  943. package/lib/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.ts.en-US.i18n.data.js.map +1 -0
  944. package/lib/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.ts.pl-PL.i18n.data.d.ts +8 -0
  945. package/lib/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.ts.pl-PL.i18n.data.js +10 -0
  946. package/lib/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.ts.pl-PL.i18n.data.js.map +1 -0
  947. package/lib/taon-posts/taon-cms-post/i18n/taon-cms-post-thumbnail.component.ts.de-DE.i18n.data.d.ts +16 -0
  948. package/lib/taon-posts/taon-cms-post/i18n/taon-cms-post-thumbnail.component.ts.de-DE.i18n.data.js +16 -0
  949. package/lib/taon-posts/taon-cms-post/i18n/taon-cms-post-thumbnail.component.ts.de-DE.i18n.data.js.map +1 -0
  950. package/lib/taon-posts/taon-cms-post/i18n/taon-cms-post-thumbnail.component.ts.en-US.i18n.data.d.ts +15 -0
  951. package/lib/taon-posts/taon-cms-post/i18n/taon-cms-post-thumbnail.component.ts.en-US.i18n.data.js +15 -0
  952. package/lib/taon-posts/taon-cms-post/i18n/taon-cms-post-thumbnail.component.ts.en-US.i18n.data.js.map +1 -0
  953. package/lib/taon-posts/taon-cms-post/i18n/taon-cms-post-thumbnail.component.ts.pl-PL.i18n.data.d.ts +16 -0
  954. package/lib/taon-posts/taon-cms-post/i18n/taon-cms-post-thumbnail.component.ts.pl-PL.i18n.data.js +16 -0
  955. package/lib/taon-posts/taon-cms-post/i18n/taon-cms-post-thumbnail.component.ts.pl-PL.i18n.data.js.map +1 -0
  956. package/lib/taon-posts/taon-cms-post/i18n/taon-cms-post.component.html.de-DE.i18n.data.d.ts +49 -4
  957. package/lib/taon-posts/taon-cms-post/i18n/taon-cms-post.component.html.de-DE.i18n.data.js +496 -90
  958. package/lib/taon-posts/taon-cms-post/i18n/taon-cms-post.component.html.de-DE.i18n.data.js.map +1 -1
  959. package/lib/taon-posts/taon-cms-post/i18n/taon-cms-post.component.html.en-US.i18n.data.d.ts +49 -4
  960. package/lib/taon-posts/taon-cms-post/i18n/taon-cms-post.component.html.en-US.i18n.data.js +416 -88
  961. package/lib/taon-posts/taon-cms-post/i18n/taon-cms-post.component.html.en-US.i18n.data.js.map +1 -1
  962. package/lib/taon-posts/taon-cms-post/i18n/taon-cms-post.component.html.pl-PL.i18n.data.d.ts +49 -4
  963. package/lib/taon-posts/taon-cms-post/i18n/taon-cms-post.component.html.pl-PL.i18n.data.js +497 -89
  964. package/lib/taon-posts/taon-cms-post/i18n/taon-cms-post.component.html.pl-PL.i18n.data.js.map +1 -1
  965. package/lib/taon-posts/taon-cms-post/i18n/taon-cms-post.component.ts.de-DE.i18n.data.d.ts +34 -7
  966. package/lib/taon-posts/taon-cms-post/i18n/taon-cms-post.component.ts.de-DE.i18n.data.js +203 -39
  967. package/lib/taon-posts/taon-cms-post/i18n/taon-cms-post.component.ts.de-DE.i18n.data.js.map +1 -1
  968. package/lib/taon-posts/taon-cms-post/i18n/taon-cms-post.component.ts.en-US.i18n.data.d.ts +32 -1
  969. package/lib/taon-posts/taon-cms-post/i18n/taon-cms-post.component.ts.en-US.i18n.data.js +166 -39
  970. package/lib/taon-posts/taon-cms-post/i18n/taon-cms-post.component.ts.en-US.i18n.data.js.map +1 -1
  971. package/lib/taon-posts/taon-cms-post/i18n/taon-cms-post.component.ts.pl-PL.i18n.data.d.ts +34 -7
  972. package/lib/taon-posts/taon-cms-post/i18n/taon-cms-post.component.ts.pl-PL.i18n.data.js +206 -42
  973. package/lib/taon-posts/taon-cms-post/i18n/taon-cms-post.component.ts.pl-PL.i18n.data.js.map +1 -1
  974. package/lib/taon-posts/taon-cms-post/i18n/taon-cms-post.translation.d.ts +10 -1
  975. package/lib/taon-posts/taon-cms-post/i18n/taon-cms-post.translation.js.map +1 -1
  976. package/lib/taon-posts/taon-cms-post/index.d.ts +1 -1
  977. package/lib/taon-posts/taon-cms-post/index.js +2 -2
  978. package/lib/taon-posts/taon-cms-post/taon-cms-document-extractor.d.ts +1 -0
  979. package/lib/taon-posts/taon-cms-post/taon-cms-document-extractor.js +501 -0
  980. package/lib/taon-posts/taon-cms-post/taon-cms-document-extractor.js.map +1 -0
  981. package/lib/taon-posts/taon-cms-post-details-page/i18n/taon-cms-post-details-page.component.ts.de-DE.i18n.data.d.ts +2 -6
  982. package/lib/taon-posts/taon-cms-post-details-page/i18n/taon-cms-post-details-page.component.ts.de-DE.i18n.data.js +2 -1
  983. package/lib/taon-posts/taon-cms-post-details-page/i18n/taon-cms-post-details-page.component.ts.de-DE.i18n.data.js.map +1 -1
  984. package/lib/taon-posts/taon-cms-post-details-page/i18n/taon-cms-post-details-page.component.ts.pl-PL.i18n.data.d.ts +2 -6
  985. package/lib/taon-posts/taon-cms-post-details-page/i18n/taon-cms-post-details-page.component.ts.pl-PL.i18n.data.js +2 -1
  986. package/lib/taon-posts/taon-cms-post-details-page/i18n/taon-cms-post-details-page.component.ts.pl-PL.i18n.data.js.map +1 -1
  987. package/lib/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-post-table-actions.directive.ts.de-DE.i18n.data.d.ts +8 -2
  988. package/lib/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-post-table-actions.directive.ts.de-DE.i18n.data.js +64 -13
  989. package/lib/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-post-table-actions.directive.ts.de-DE.i18n.data.js.map +1 -1
  990. package/lib/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-post-table-actions.directive.ts.en-US.i18n.data.d.ts +7 -2
  991. package/lib/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-post-table-actions.directive.ts.en-US.i18n.data.js +45 -13
  992. package/lib/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-post-table-actions.directive.ts.en-US.i18n.data.js.map +1 -1
  993. package/lib/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-post-table-actions.directive.ts.pl-PL.i18n.data.d.ts +8 -2
  994. package/lib/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-post-table-actions.directive.ts.pl-PL.i18n.data.js +64 -13
  995. package/lib/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-post-table-actions.directive.ts.pl-PL.i18n.data.js.map +1 -1
  996. package/lib/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.html.de-DE.i18n.data.d.ts +2 -6
  997. package/lib/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.html.de-DE.i18n.data.js +19 -12
  998. package/lib/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.html.de-DE.i18n.data.js.map +1 -1
  999. package/lib/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.html.en-US.i18n.data.js +5 -5
  1000. package/lib/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.html.en-US.i18n.data.js.map +1 -1
  1001. package/lib/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.html.pl-PL.i18n.data.d.ts +2 -6
  1002. package/lib/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.html.pl-PL.i18n.data.js +19 -12
  1003. package/lib/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.html.pl-PL.i18n.data.js.map +1 -1
  1004. package/lib/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.ts.de-DE.i18n.data.d.ts +2 -6
  1005. package/lib/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.ts.de-DE.i18n.data.js +2 -1
  1006. package/lib/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.ts.de-DE.i18n.data.js.map +1 -1
  1007. package/lib/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.ts.pl-PL.i18n.data.d.ts +2 -6
  1008. package/lib/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.ts.pl-PL.i18n.data.js +2 -1
  1009. package/lib/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.ts.pl-PL.i18n.data.js.map +1 -1
  1010. package/lib/taon-posts/taon-cms-posts-backoffice/index.d.ts +1 -1
  1011. package/lib/taon-posts/taon-cms-posts-backoffice/index.js +2 -2
  1012. package/lib/taon-posts/taon-cms-revision-chooser/i18n/taon-cms-revision-chooser.component.html.de-DE.i18n.data.d.ts +7 -2
  1013. package/lib/taon-posts/taon-cms-revision-chooser/i18n/taon-cms-revision-chooser.component.html.de-DE.i18n.data.js +23 -9
  1014. package/lib/taon-posts/taon-cms-revision-chooser/i18n/taon-cms-revision-chooser.component.html.de-DE.i18n.data.js.map +1 -1
  1015. package/lib/taon-posts/taon-cms-revision-chooser/i18n/taon-cms-revision-chooser.component.html.en-US.i18n.data.d.ts +7 -2
  1016. package/lib/taon-posts/taon-cms-revision-chooser/i18n/taon-cms-revision-chooser.component.html.en-US.i18n.data.js +23 -9
  1017. package/lib/taon-posts/taon-cms-revision-chooser/i18n/taon-cms-revision-chooser.component.html.en-US.i18n.data.js.map +1 -1
  1018. package/lib/taon-posts/taon-cms-revision-chooser/i18n/taon-cms-revision-chooser.component.html.pl-PL.i18n.data.d.ts +7 -2
  1019. package/lib/taon-posts/taon-cms-revision-chooser/i18n/taon-cms-revision-chooser.component.html.pl-PL.i18n.data.js +23 -9
  1020. package/lib/taon-posts/taon-cms-revision-chooser/i18n/taon-cms-revision-chooser.component.html.pl-PL.i18n.data.js.map +1 -1
  1021. package/lib/taon-posts/taon-cms-revision-chooser/index.d.ts +1 -1
  1022. package/lib/taon-posts/taon-cms-revision-chooser/index.js +2 -2
  1023. package/lib/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.html.de-DE.i18n.data.d.ts +1 -0
  1024. package/lib/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.html.de-DE.i18n.data.js +10 -5
  1025. package/lib/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.html.de-DE.i18n.data.js.map +1 -1
  1026. package/lib/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.html.en-US.i18n.data.d.ts +1 -0
  1027. package/lib/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.html.en-US.i18n.data.js +9 -5
  1028. package/lib/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.html.en-US.i18n.data.js.map +1 -1
  1029. package/lib/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.html.pl-PL.i18n.data.d.ts +1 -0
  1030. package/lib/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.html.pl-PL.i18n.data.js +10 -5
  1031. package/lib/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.html.pl-PL.i18n.data.js.map +1 -1
  1032. package/lib/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.ts.de-DE.i18n.data.js +2 -2
  1033. package/lib/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.ts.en-US.i18n.data.js +2 -2
  1034. package/lib/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.ts.pl-PL.i18n.data.js +2 -2
  1035. package/lib/taon-posts/taon-related-post-chooser/index.d.ts +1 -1
  1036. package/lib/taon-posts/taon-related-post-chooser/index.js +2 -2
  1037. package/lib-esm/lib/build-info._auto-generated_.d.ts +1 -1
  1038. package/lib-esm/lib/build-info._auto-generated_.js +1 -1
  1039. package/lib-esm/lib/index._auto-generated_.d.ts +18 -0
  1040. package/lib-esm/lib/index._auto-generated_.js +33 -0
  1041. package/lib-esm/lib/index._auto-generated_.js.map +1 -1
  1042. package/lib-esm/lib/migrations/1793664000000_postVersionLinks.d.ts +6 -0
  1043. package/lib-esm/lib/migrations/1793664000000_postVersionLinks.js +32 -0
  1044. package/lib-esm/lib/migrations/1793664000000_postVersionLinks.js.map +1 -0
  1045. package/lib-esm/lib/migrations/migrations_index._auto-generated_.d.ts +3 -0
  1046. package/lib-esm/lib/migrations/migrations_index._auto-generated_.js +3 -0
  1047. package/lib-esm/lib/migrations/migrations_index._auto-generated_.js.map +1 -1
  1048. package/lib-esm/lib/taon-cms-backoffice/i18n/taon-cms-backoffice.component.html.de-DE.i18n.data.js +5 -0
  1049. package/lib-esm/lib/taon-cms-backoffice/i18n/taon-cms-backoffice.component.html.de-DE.i18n.data.js.map +1 -1
  1050. package/lib-esm/lib/taon-cms-backoffice/i18n/taon-cms-backoffice.component.html.en-US.i18n.data.js +5 -0
  1051. package/lib-esm/lib/taon-cms-backoffice/i18n/taon-cms-backoffice.component.html.en-US.i18n.data.js.map +1 -1
  1052. package/lib-esm/lib/taon-cms-backoffice/i18n/taon-cms-backoffice.component.html.pl-PL.i18n.data.js +5 -0
  1053. package/lib-esm/lib/taon-cms-backoffice/i18n/taon-cms-backoffice.component.html.pl-PL.i18n.data.js.map +1 -1
  1054. package/lib-esm/lib/taon-cms-backoffice/i18n/taon-cms-backoffice.routes.ts.de-DE.i18n.data.d.ts +4 -6
  1055. package/lib-esm/lib/taon-cms-backoffice/i18n/taon-cms-backoffice.routes.ts.de-DE.i18n.data.js +16 -5
  1056. package/lib-esm/lib/taon-cms-backoffice/i18n/taon-cms-backoffice.routes.ts.de-DE.i18n.data.js.map +1 -1
  1057. package/lib-esm/lib/taon-cms-backoffice/i18n/taon-cms-backoffice.routes.ts.en-US.i18n.data.d.ts +4 -2
  1058. package/lib-esm/lib/taon-cms-backoffice/i18n/taon-cms-backoffice.routes.ts.en-US.i18n.data.js +13 -5
  1059. package/lib-esm/lib/taon-cms-backoffice/i18n/taon-cms-backoffice.routes.ts.en-US.i18n.data.js.map +1 -1
  1060. package/lib-esm/lib/taon-cms-backoffice/i18n/taon-cms-backoffice.routes.ts.pl-PL.i18n.data.d.ts +2 -0
  1061. package/lib-esm/lib/taon-cms-backoffice/i18n/taon-cms-backoffice.routes.ts.pl-PL.i18n.data.js +15 -5
  1062. package/lib-esm/lib/taon-cms-backoffice/i18n/taon-cms-backoffice.routes.ts.pl-PL.i18n.data.js.map +1 -1
  1063. package/lib-esm/lib/taon-cms-backoffice/index.d.ts +1 -1
  1064. package/lib-esm/lib/taon-cms-backoffice/index.js +1 -1
  1065. package/lib-esm/lib/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.html.de-DE.i18n.data.d.ts +21 -0
  1066. package/lib-esm/lib/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.html.de-DE.i18n.data.js +44 -0
  1067. package/lib-esm/lib/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.html.de-DE.i18n.data.js.map +1 -0
  1068. package/lib-esm/lib/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.html.en-US.i18n.data.d.ts +20 -0
  1069. package/lib-esm/lib/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.html.en-US.i18n.data.js +37 -0
  1070. package/lib-esm/lib/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.html.en-US.i18n.data.js.map +1 -0
  1071. package/lib-esm/lib/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.html.pl-PL.i18n.data.d.ts +21 -0
  1072. package/lib-esm/lib/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.html.pl-PL.i18n.data.js +44 -0
  1073. package/lib-esm/lib/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.html.pl-PL.i18n.data.js.map +1 -0
  1074. package/lib-esm/lib/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.ts.de-DE.i18n.data.d.ts +24 -0
  1075. package/lib-esm/lib/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.ts.de-DE.i18n.data.js +54 -0
  1076. package/lib-esm/lib/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.ts.de-DE.i18n.data.js.map +1 -0
  1077. package/lib-esm/lib/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.ts.en-US.i18n.data.d.ts +23 -0
  1078. package/lib-esm/lib/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.ts.en-US.i18n.data.js +45 -0
  1079. package/lib-esm/lib/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.ts.en-US.i18n.data.js.map +1 -0
  1080. package/lib-esm/lib/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.ts.pl-PL.i18n.data.d.ts +24 -0
  1081. package/lib-esm/lib/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.ts.pl-PL.i18n.data.js +54 -0
  1082. package/lib-esm/lib/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.ts.pl-PL.i18n.data.js.map +1 -0
  1083. package/lib-esm/lib/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.translation.d.ts +8 -0
  1084. package/lib-esm/lib/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.translation.js +4 -0
  1085. package/lib-esm/lib/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.translation.js.map +1 -0
  1086. package/lib-esm/lib/taon-cms-backoffice/taon-cms-website-features/index.d.ts +1 -0
  1087. package/lib-esm/lib/taon-cms-backoffice/taon-cms-website-features/index.js +2 -0
  1088. package/lib-esm/lib/taon-cms-backoffice/taon-cms-website-features/index.js.map +1 -0
  1089. package/lib-esm/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.constants.ts.de-DE.i18n.data.d.ts +15 -0
  1090. package/lib-esm/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.constants.ts.de-DE.i18n.data.js +13 -0
  1091. package/lib-esm/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.constants.ts.de-DE.i18n.data.js.map +1 -0
  1092. package/lib-esm/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.constants.ts.en-US.i18n.data.d.ts +15 -0
  1093. package/lib-esm/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.constants.ts.en-US.i18n.data.js +13 -0
  1094. package/lib-esm/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.constants.ts.en-US.i18n.data.js.map +1 -0
  1095. package/lib-esm/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.constants.ts.pl-PL.i18n.data.d.ts +15 -0
  1096. package/lib-esm/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.constants.ts.pl-PL.i18n.data.js +13 -0
  1097. package/lib-esm/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.constants.ts.pl-PL.i18n.data.js.map +1 -0
  1098. package/lib-esm/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.controller.ts.de-DE.i18n.data.d.ts +16 -0
  1099. package/lib-esm/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.controller.ts.de-DE.i18n.data.js +14 -0
  1100. package/lib-esm/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.controller.ts.de-DE.i18n.data.js.map +1 -0
  1101. package/lib-esm/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.controller.ts.en-US.i18n.data.d.ts +15 -0
  1102. package/lib-esm/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.controller.ts.en-US.i18n.data.js +13 -0
  1103. package/lib-esm/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.controller.ts.en-US.i18n.data.js.map +1 -0
  1104. package/lib-esm/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.controller.ts.pl-PL.i18n.data.d.ts +16 -0
  1105. package/lib-esm/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.controller.ts.pl-PL.i18n.data.js +14 -0
  1106. package/lib-esm/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.controller.ts.pl-PL.i18n.data.js.map +1 -0
  1107. package/lib-esm/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.translation.d.ts +8 -0
  1108. package/lib-esm/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.translation.js +4 -0
  1109. package/lib-esm/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.translation.js.map +1 -0
  1110. package/lib-esm/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.abstract.context.d.ts +16 -0
  1111. package/lib-esm/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.abstract.context.js +18 -0
  1112. package/lib-esm/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.abstract.context.js.map +1 -0
  1113. package/lib-esm/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.constants.d.ts +7 -0
  1114. package/lib-esm/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.constants.js +13 -0
  1115. package/lib-esm/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.constants.js.map +1 -0
  1116. package/lib-esm/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.controller.d.ts +13 -0
  1117. package/lib-esm/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.controller.js +91 -0
  1118. package/lib-esm/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.controller.js.map +1 -0
  1119. package/lib-esm/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.kv.repository.d.ts +14 -0
  1120. package/lib-esm/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.kv.repository.js +91 -0
  1121. package/lib-esm/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.kv.repository.js.map +1 -0
  1122. package/lib-esm/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.models.d.ts +11 -0
  1123. package/lib-esm/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.models.js +9 -0
  1124. package/lib-esm/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.models.js.map +1 -0
  1125. package/lib-esm/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.provider.d.ts +12 -0
  1126. package/lib-esm/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.provider.js +22 -0
  1127. package/lib-esm/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.provider.js.map +1 -0
  1128. package/lib-esm/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.utils.d.ts +5 -0
  1129. package/lib-esm/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.utils.js +18 -0
  1130. package/lib-esm/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.utils.js.map +1 -0
  1131. package/lib-esm/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.validators.d.ts +2 -0
  1132. package/lib-esm/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.validators.js +2 -0
  1133. package/lib-esm/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.validators.js.map +1 -0
  1134. package/lib-esm/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-features.models.d.ts +1 -0
  1135. package/lib-esm/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-features.models.js +2 -0
  1136. package/lib-esm/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-features.models.js.map +1 -0
  1137. package/lib-esm/lib/taon-cms-comment/i18n/taon-cms-comment.controller.ts.de-DE.i18n.data.d.ts +32 -0
  1138. package/lib-esm/lib/taon-cms-comment/i18n/taon-cms-comment.controller.ts.de-DE.i18n.data.js +114 -0
  1139. package/lib-esm/lib/taon-cms-comment/i18n/taon-cms-comment.controller.ts.de-DE.i18n.data.js.map +1 -0
  1140. package/lib-esm/lib/taon-cms-comment/i18n/taon-cms-comment.controller.ts.en-US.i18n.data.d.ts +31 -0
  1141. package/lib-esm/lib/taon-cms-comment/i18n/taon-cms-comment.controller.ts.en-US.i18n.data.js +93 -0
  1142. package/lib-esm/lib/taon-cms-comment/i18n/taon-cms-comment.controller.ts.en-US.i18n.data.js.map +1 -0
  1143. package/lib-esm/lib/taon-cms-comment/i18n/taon-cms-comment.controller.ts.pl-PL.i18n.data.d.ts +32 -0
  1144. package/lib-esm/lib/taon-cms-comment/i18n/taon-cms-comment.controller.ts.pl-PL.i18n.data.js +114 -0
  1145. package/lib-esm/lib/taon-cms-comment/i18n/taon-cms-comment.controller.ts.pl-PL.i18n.data.js.map +1 -0
  1146. package/lib-esm/lib/taon-cms-comment/i18n/taon-cms-comment.translation.d.ts +11 -0
  1147. package/lib-esm/lib/taon-cms-comment/i18n/taon-cms-comment.translation.js +4 -0
  1148. package/lib-esm/lib/taon-cms-comment/i18n/taon-cms-comment.translation.js.map +1 -0
  1149. package/lib-esm/lib/taon-cms-comment/i18n/taon-cms-comments.component.html.de-DE.i18n.data.d.ts +29 -0
  1150. package/lib-esm/lib/taon-cms-comment/i18n/taon-cms-comments.component.html.de-DE.i18n.data.js +94 -0
  1151. package/lib-esm/lib/taon-cms-comment/i18n/taon-cms-comments.component.html.de-DE.i18n.data.js.map +1 -0
  1152. package/lib-esm/lib/taon-cms-comment/i18n/taon-cms-comments.component.html.en-US.i18n.data.d.ts +28 -0
  1153. package/lib-esm/lib/taon-cms-comment/i18n/taon-cms-comments.component.html.en-US.i18n.data.js +77 -0
  1154. package/lib-esm/lib/taon-cms-comment/i18n/taon-cms-comments.component.html.en-US.i18n.data.js.map +1 -0
  1155. package/lib-esm/lib/taon-cms-comment/i18n/taon-cms-comments.component.html.pl-PL.i18n.data.d.ts +29 -0
  1156. package/lib-esm/lib/taon-cms-comment/i18n/taon-cms-comments.component.html.pl-PL.i18n.data.js +94 -0
  1157. package/lib-esm/lib/taon-cms-comment/i18n/taon-cms-comments.component.html.pl-PL.i18n.data.js.map +1 -0
  1158. package/lib-esm/lib/taon-cms-comment/i18n/taon-cms-comments.component.ts.de-DE.i18n.data.d.ts +20 -0
  1159. package/lib-esm/lib/taon-cms-comment/i18n/taon-cms-comments.component.ts.de-DE.i18n.data.js +34 -0
  1160. package/lib-esm/lib/taon-cms-comment/i18n/taon-cms-comments.component.ts.de-DE.i18n.data.js.map +1 -0
  1161. package/lib-esm/lib/taon-cms-comment/i18n/taon-cms-comments.component.ts.en-US.i18n.data.d.ts +19 -0
  1162. package/lib-esm/lib/taon-cms-comment/i18n/taon-cms-comments.component.ts.en-US.i18n.data.js +29 -0
  1163. package/lib-esm/lib/taon-cms-comment/i18n/taon-cms-comments.component.ts.en-US.i18n.data.js.map +1 -0
  1164. package/lib-esm/lib/taon-cms-comment/i18n/taon-cms-comments.component.ts.pl-PL.i18n.data.d.ts +20 -0
  1165. package/lib-esm/lib/taon-cms-comment/i18n/taon-cms-comments.component.ts.pl-PL.i18n.data.js +34 -0
  1166. package/lib-esm/lib/taon-cms-comment/i18n/taon-cms-comments.component.ts.pl-PL.i18n.data.js.map +1 -0
  1167. package/lib-esm/lib/taon-cms-comment/index.d.ts +4 -0
  1168. package/lib-esm/lib/taon-cms-comment/index.js +5 -0
  1169. package/lib-esm/lib/taon-cms-comment/index.js.map +1 -1
  1170. package/lib-esm/lib/taon-cms-comment/taon-cms-comment-blocked-phrase.entity.d.ts +7 -0
  1171. package/lib-esm/lib/taon-cms-comment/taon-cms-comment-blocked-phrase.entity.js +51 -0
  1172. package/lib-esm/lib/taon-cms-comment/taon-cms-comment-blocked-phrase.entity.js.map +1 -0
  1173. package/lib-esm/lib/taon-cms-comment/taon-cms-comment-blocked-user.entity.d.ts +6 -0
  1174. package/lib-esm/lib/taon-cms-comment/taon-cms-comment-blocked-user.entity.js +42 -0
  1175. package/lib-esm/lib/taon-cms-comment/taon-cms-comment-blocked-user.entity.js.map +1 -0
  1176. package/lib-esm/lib/taon-cms-comment/taon-cms-comment-spam-report.entity.d.ts +7 -0
  1177. package/lib-esm/lib/taon-cms-comment/taon-cms-comment-spam-report.entity.js +51 -0
  1178. package/lib-esm/lib/taon-cms-comment/taon-cms-comment-spam-report.entity.js.map +1 -0
  1179. package/lib-esm/lib/taon-cms-comment/taon-cms-comment-vote.entity.d.ts +8 -0
  1180. package/lib-esm/lib/taon-cms-comment/taon-cms-comment-vote.entity.js +60 -0
  1181. package/lib-esm/lib/taon-cms-comment/taon-cms-comment-vote.entity.js.map +1 -0
  1182. package/lib-esm/lib/taon-cms-comment/taon-cms-comment.abstract.context.js +11 -1
  1183. package/lib-esm/lib/taon-cms-comment/taon-cms-comment.abstract.context.js.map +1 -1
  1184. package/lib-esm/lib/taon-cms-comment/taon-cms-comment.controller.d.ts +48 -6
  1185. package/lib-esm/lib/taon-cms-comment/taon-cms-comment.controller.js +504 -22
  1186. package/lib-esm/lib/taon-cms-comment/taon-cms-comment.controller.js.map +1 -1
  1187. package/lib-esm/lib/taon-cms-comment/taon-cms-comment.entity.js +3 -3
  1188. package/lib-esm/lib/taon-cms-comment/taon-cms-comment.entity.js.map +1 -1
  1189. package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.component.ts.de-DE.i18n.data.d.ts +8 -0
  1190. package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.component.ts.de-DE.i18n.data.js +8 -0
  1191. package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.component.ts.de-DE.i18n.data.js.map +1 -0
  1192. package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.component.ts.en-US.i18n.data.d.ts +8 -0
  1193. package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.component.ts.en-US.i18n.data.js +8 -0
  1194. package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.component.ts.en-US.i18n.data.js.map +1 -0
  1195. package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.component.ts.pl-PL.i18n.data.d.ts +8 -0
  1196. package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.component.ts.pl-PL.i18n.data.js +8 -0
  1197. package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.component.ts.pl-PL.i18n.data.js.map +1 -0
  1198. package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.routes.ts.de-DE.i18n.data.d.ts +18 -0
  1199. package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.routes.ts.de-DE.i18n.data.js +24 -0
  1200. package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.routes.ts.de-DE.i18n.data.js.map +1 -0
  1201. package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.routes.ts.en-US.i18n.data.d.ts +17 -0
  1202. package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.routes.ts.en-US.i18n.data.js +21 -0
  1203. package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.routes.ts.en-US.i18n.data.js.map +1 -0
  1204. package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.routes.ts.pl-PL.i18n.data.d.ts +18 -0
  1205. package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.routes.ts.pl-PL.i18n.data.js +24 -0
  1206. package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.routes.ts.pl-PL.i18n.data.js.map +1 -0
  1207. package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.translation.d.ts +8 -0
  1208. package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.translation.js +4 -0
  1209. package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.translation.js.map +1 -0
  1210. package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/index.d.ts +1 -0
  1211. package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/index.js +2 -0
  1212. package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/index.js.map +1 -0
  1213. package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.component.html.de-DE.i18n.data.d.ts +30 -0
  1214. package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.component.html.de-DE.i18n.data.js +89 -0
  1215. package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.component.html.de-DE.i18n.data.js.map +1 -0
  1216. package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.component.html.en-US.i18n.data.d.ts +29 -0
  1217. package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.component.html.en-US.i18n.data.js +73 -0
  1218. package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.component.html.en-US.i18n.data.js.map +1 -0
  1219. package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.component.html.pl-PL.i18n.data.d.ts +30 -0
  1220. package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.component.html.pl-PL.i18n.data.js +89 -0
  1221. package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.component.html.pl-PL.i18n.data.js.map +1 -0
  1222. package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.component.ts.de-DE.i18n.data.d.ts +24 -0
  1223. package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.component.ts.de-DE.i18n.data.js +54 -0
  1224. package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.component.ts.de-DE.i18n.data.js.map +1 -0
  1225. package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.component.ts.en-US.i18n.data.d.ts +23 -0
  1226. package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.component.ts.en-US.i18n.data.js +45 -0
  1227. package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.component.ts.en-US.i18n.data.js.map +1 -0
  1228. package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.component.ts.pl-PL.i18n.data.d.ts +24 -0
  1229. package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.component.ts.pl-PL.i18n.data.js +54 -0
  1230. package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.component.ts.pl-PL.i18n.data.js.map +1 -0
  1231. package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.translation.d.ts +8 -0
  1232. package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.translation.js +4 -0
  1233. package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.translation.js.map +1 -0
  1234. package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/index.d.ts +1 -0
  1235. package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/index.js +2 -0
  1236. package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/index.js.map +1 -0
  1237. package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/taon-cms-comments-all-preview-backoffice.models.d.ts +1 -0
  1238. package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/taon-cms-comments-all-preview-backoffice.models.js +2 -0
  1239. package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/taon-cms-comments-all-preview-backoffice.models.js.map +1 -0
  1240. package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-backoffice.models.d.ts +1 -0
  1241. package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-backoffice.models.js +2 -0
  1242. package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-backoffice.models.js.map +1 -0
  1243. package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.component.html.de-DE.i18n.data.d.ts +26 -0
  1244. package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.component.html.de-DE.i18n.data.js +69 -0
  1245. package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.component.html.de-DE.i18n.data.js.map +1 -0
  1246. package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.component.html.en-US.i18n.data.d.ts +25 -0
  1247. package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.component.html.en-US.i18n.data.js +57 -0
  1248. package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.component.html.en-US.i18n.data.js.map +1 -0
  1249. package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.component.html.pl-PL.i18n.data.d.ts +26 -0
  1250. package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.component.html.pl-PL.i18n.data.js +69 -0
  1251. package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.component.html.pl-PL.i18n.data.js.map +1 -0
  1252. package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.component.ts.de-DE.i18n.data.d.ts +18 -0
  1253. package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.component.ts.de-DE.i18n.data.js +24 -0
  1254. package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.component.ts.de-DE.i18n.data.js.map +1 -0
  1255. package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.component.ts.en-US.i18n.data.d.ts +17 -0
  1256. package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.component.ts.en-US.i18n.data.js +21 -0
  1257. package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.component.ts.en-US.i18n.data.js.map +1 -0
  1258. package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.component.ts.pl-PL.i18n.data.d.ts +18 -0
  1259. package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.component.ts.pl-PL.i18n.data.js +24 -0
  1260. package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.component.ts.pl-PL.i18n.data.js.map +1 -0
  1261. package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.translation.d.ts +8 -0
  1262. package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.translation.js +4 -0
  1263. package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.translation.js.map +1 -0
  1264. package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/index.d.ts +1 -0
  1265. package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/index.js +2 -0
  1266. package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/index.js.map +1 -0
  1267. package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/taon-cms-comments-blocked-users.models.d.ts +1 -0
  1268. package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/taon-cms-comments-blocked-users.models.js +2 -0
  1269. package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/taon-cms-comments-blocked-users.models.js.map +1 -0
  1270. package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.component.html.de-DE.i18n.data.d.ts +22 -0
  1271. package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.component.html.de-DE.i18n.data.js +44 -0
  1272. package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.component.html.de-DE.i18n.data.js.map +1 -0
  1273. package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.component.html.en-US.i18n.data.d.ts +21 -0
  1274. package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.component.html.en-US.i18n.data.js +37 -0
  1275. package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.component.html.en-US.i18n.data.js.map +1 -0
  1276. package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.component.html.pl-PL.i18n.data.d.ts +22 -0
  1277. package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.component.html.pl-PL.i18n.data.js +44 -0
  1278. package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.component.html.pl-PL.i18n.data.js.map +1 -0
  1279. package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.component.ts.de-DE.i18n.data.d.ts +18 -0
  1280. package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.component.ts.de-DE.i18n.data.js +24 -0
  1281. package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.component.ts.de-DE.i18n.data.js.map +1 -0
  1282. package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.component.ts.en-US.i18n.data.d.ts +17 -0
  1283. package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.component.ts.en-US.i18n.data.js +21 -0
  1284. package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.component.ts.en-US.i18n.data.js.map +1 -0
  1285. package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.component.ts.pl-PL.i18n.data.d.ts +18 -0
  1286. package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.component.ts.pl-PL.i18n.data.js +24 -0
  1287. package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.component.ts.pl-PL.i18n.data.js.map +1 -0
  1288. package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.translation.d.ts +8 -0
  1289. package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.translation.js +4 -0
  1290. package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.translation.js.map +1 -0
  1291. package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/index.d.ts +1 -0
  1292. package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/index.js +2 -0
  1293. package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/index.js.map +1 -0
  1294. package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/taon-cms-comments-filters-settings.models.d.ts +1 -0
  1295. package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/taon-cms-comments-filters-settings.models.js +2 -0
  1296. package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/taon-cms-comments-filters-settings.models.js.map +1 -0
  1297. package/lib-esm/lib/taon-cms-content/i18n/taon-cms-content-storage.controller.ts.de-DE.i18n.data.js +1 -1
  1298. package/lib-esm/lib/taon-cms-content/i18n/taon-cms-content-storage.controller.ts.en-US.i18n.data.js +1 -1
  1299. package/lib-esm/lib/taon-cms-content/i18n/taon-cms-content-storage.controller.ts.pl-PL.i18n.data.js +1 -1
  1300. package/lib-esm/lib/taon-cms-content/i18n/taon-cms-content.controller.ts.de-DE.i18n.data.d.ts +2 -0
  1301. package/lib-esm/lib/taon-cms-content/i18n/taon-cms-content.controller.ts.de-DE.i18n.data.js +26 -6
  1302. package/lib-esm/lib/taon-cms-content/i18n/taon-cms-content.controller.ts.de-DE.i18n.data.js.map +1 -1
  1303. package/lib-esm/lib/taon-cms-content/i18n/taon-cms-content.controller.ts.en-US.i18n.data.d.ts +8 -2
  1304. package/lib-esm/lib/taon-cms-content/i18n/taon-cms-content.controller.ts.en-US.i18n.data.js +22 -6
  1305. package/lib-esm/lib/taon-cms-content/i18n/taon-cms-content.controller.ts.en-US.i18n.data.js.map +1 -1
  1306. package/lib-esm/lib/taon-cms-content/i18n/taon-cms-content.controller.ts.pl-PL.i18n.data.d.ts +2 -0
  1307. package/lib-esm/lib/taon-cms-content/i18n/taon-cms-content.controller.ts.pl-PL.i18n.data.js +26 -6
  1308. package/lib-esm/lib/taon-cms-content/i18n/taon-cms-content.controller.ts.pl-PL.i18n.data.js.map +1 -1
  1309. package/lib-esm/lib/taon-cms-content/taon-cms-content-storage.controller.d.ts +5 -1
  1310. package/lib-esm/lib/taon-cms-content/taon-cms-content-storage.controller.js +67 -2
  1311. package/lib-esm/lib/taon-cms-content/taon-cms-content-storage.controller.js.map +1 -1
  1312. package/lib-esm/lib/taon-cms-content/taon-cms-content.controller.d.ts +12 -2
  1313. package/lib-esm/lib/taon-cms-content/taon-cms-content.controller.js +246 -3
  1314. package/lib-esm/lib/taon-cms-content/taon-cms-content.controller.js.map +1 -1
  1315. package/lib-esm/lib/taon-cms-content/taon-cms-content.entity.d.ts +3 -0
  1316. package/lib-esm/lib/taon-cms-content/taon-cms-content.entity.js +27 -0
  1317. package/lib-esm/lib/taon-cms-content/taon-cms-content.entity.js.map +1 -1
  1318. package/lib-esm/lib/taon-cms-content/taon-cms-content.models.d.ts +39 -0
  1319. package/lib-esm/lib/taon-cms-content/taon-cms-content.models.js.map +1 -1
  1320. package/lib-esm/lib/taon-cms-content/taon-cms-content.repository.d.ts +21 -3
  1321. package/lib-esm/lib/taon-cms-content/taon-cms-content.repository.js +830 -30
  1322. package/lib-esm/lib/taon-cms-content/taon-cms-content.repository.js.map +1 -1
  1323. package/lib-esm/lib/taon-cms-content/taon-cms-content.utils.d.ts +2 -0
  1324. package/lib-esm/lib/taon-cms-content/taon-cms-content.utils.js +6 -0
  1325. package/lib-esm/lib/taon-cms-content/taon-cms-content.utils.js.map +1 -1
  1326. package/lib-esm/lib/taon-cms-content/taon-cms-content.validation.js +4 -0
  1327. package/lib-esm/lib/taon-cms-content/taon-cms-content.validation.js.map +1 -1
  1328. package/lib-esm/lib/taon-cms-content-revision/taon-cms-content-revision.repository.d.ts +1 -0
  1329. package/lib-esm/lib/taon-cms-content-revision/taon-cms-content-revision.repository.js +21 -0
  1330. package/lib-esm/lib/taon-cms-content-revision/taon-cms-content-revision.repository.js.map +1 -1
  1331. package/lib-esm/lib/taon-cms-taxonomy-backoffice/i18n/taon-cms-taxonomy-quick-create-dialog.component.ts.de-DE.i18n.data.d.ts +1 -0
  1332. package/lib-esm/lib/taon-cms-taxonomy-backoffice/i18n/taon-cms-taxonomy-quick-create-dialog.component.ts.de-DE.i18n.data.js +14 -7
  1333. package/lib-esm/lib/taon-cms-taxonomy-backoffice/i18n/taon-cms-taxonomy-quick-create-dialog.component.ts.de-DE.i18n.data.js.map +1 -1
  1334. package/lib-esm/lib/taon-cms-taxonomy-backoffice/i18n/taon-cms-taxonomy-quick-create-dialog.component.ts.pl-PL.i18n.data.d.ts +1 -0
  1335. package/lib-esm/lib/taon-cms-taxonomy-backoffice/i18n/taon-cms-taxonomy-quick-create-dialog.component.ts.pl-PL.i18n.data.js +14 -7
  1336. package/lib-esm/lib/taon-cms-taxonomy-backoffice/i18n/taon-cms-taxonomy-quick-create-dialog.component.ts.pl-PL.i18n.data.js.map +1 -1
  1337. package/lib-esm/lib/taon-cms.abstract.context.js +2 -0
  1338. package/lib-esm/lib/taon-cms.abstract.context.js.map +1 -1
  1339. package/lib-esm/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.html.de-DE.i18n.data.d.ts +2 -1
  1340. package/lib-esm/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.html.de-DE.i18n.data.js +26 -15
  1341. package/lib-esm/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.html.de-DE.i18n.data.js.map +1 -1
  1342. package/lib-esm/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.html.en-US.i18n.data.d.ts +1 -1
  1343. package/lib-esm/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.html.en-US.i18n.data.js +10 -10
  1344. package/lib-esm/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.html.en-US.i18n.data.js.map +1 -1
  1345. package/lib-esm/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.html.pl-PL.i18n.data.d.ts +2 -1
  1346. package/lib-esm/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.html.pl-PL.i18n.data.js +26 -15
  1347. package/lib-esm/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.html.pl-PL.i18n.data.js.map +1 -1
  1348. package/lib-esm/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.ts.de-DE.i18n.data.d.ts +1 -0
  1349. package/lib-esm/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.ts.de-DE.i18n.data.js +8 -4
  1350. package/lib-esm/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.ts.de-DE.i18n.data.js.map +1 -1
  1351. package/lib-esm/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.ts.pl-PL.i18n.data.d.ts +1 -0
  1352. package/lib-esm/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.ts.pl-PL.i18n.data.js +8 -4
  1353. package/lib-esm/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.ts.pl-PL.i18n.data.js.map +1 -1
  1354. package/lib-esm/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.html.de-DE.i18n.data.d.ts +3 -0
  1355. package/lib-esm/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.html.de-DE.i18n.data.js +20 -5
  1356. package/lib-esm/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.html.de-DE.i18n.data.js.map +1 -1
  1357. package/lib-esm/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.html.en-US.i18n.data.d.ts +2 -0
  1358. package/lib-esm/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.html.en-US.i18n.data.js +8 -0
  1359. package/lib-esm/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.html.en-US.i18n.data.js.map +1 -1
  1360. package/lib-esm/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.html.pl-PL.i18n.data.d.ts +3 -0
  1361. package/lib-esm/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.html.pl-PL.i18n.data.js +20 -5
  1362. package/lib-esm/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.html.pl-PL.i18n.data.js.map +1 -1
  1363. package/lib-esm/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.ts.de-DE.i18n.data.d.ts +2 -0
  1364. package/lib-esm/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.ts.de-DE.i18n.data.js +15 -5
  1365. package/lib-esm/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.ts.de-DE.i18n.data.js.map +1 -1
  1366. package/lib-esm/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.ts.en-US.i18n.data.d.ts +1 -0
  1367. package/lib-esm/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.ts.en-US.i18n.data.js +9 -5
  1368. package/lib-esm/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.ts.en-US.i18n.data.js.map +1 -1
  1369. package/lib-esm/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.ts.pl-PL.i18n.data.d.ts +2 -0
  1370. package/lib-esm/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.ts.pl-PL.i18n.data.js +15 -5
  1371. package/lib-esm/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.ts.pl-PL.i18n.data.js.map +1 -1
  1372. package/lib-esm/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-cover.component.ts.de-DE.i18n.data.d.ts +1 -0
  1373. package/lib-esm/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-cover.component.ts.de-DE.i18n.data.js +2 -1
  1374. package/lib-esm/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-cover.component.ts.de-DE.i18n.data.js.map +1 -1
  1375. package/lib-esm/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-cover.component.ts.pl-PL.i18n.data.d.ts +1 -0
  1376. package/lib-esm/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-cover.component.ts.pl-PL.i18n.data.js +2 -1
  1377. package/lib-esm/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-cover.component.ts.pl-PL.i18n.data.js.map +1 -1
  1378. package/lib-esm/lib/taon-posts/taon-cms-course-backoffice/index.d.ts +1 -1
  1379. package/lib-esm/lib/taon-posts/taon-cms-course-backoffice/index.js +1 -1
  1380. package/lib-esm/lib/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.html.de-DE.i18n.data.d.ts +17 -0
  1381. package/lib-esm/lib/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.html.de-DE.i18n.data.js +19 -0
  1382. package/lib-esm/lib/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.html.de-DE.i18n.data.js.map +1 -0
  1383. package/lib-esm/lib/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.html.en-US.i18n.data.d.ts +16 -0
  1384. package/lib-esm/lib/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.html.en-US.i18n.data.js +17 -0
  1385. package/lib-esm/lib/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.html.en-US.i18n.data.js.map +1 -0
  1386. package/lib-esm/lib/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.html.pl-PL.i18n.data.d.ts +17 -0
  1387. package/lib-esm/lib/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.html.pl-PL.i18n.data.js +19 -0
  1388. package/lib-esm/lib/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.html.pl-PL.i18n.data.js.map +1 -0
  1389. package/lib-esm/lib/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.ts.de-DE.i18n.data.d.ts +8 -0
  1390. package/lib-esm/lib/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.ts.de-DE.i18n.data.js +8 -0
  1391. package/lib-esm/lib/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.ts.de-DE.i18n.data.js.map +1 -0
  1392. package/lib-esm/lib/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.ts.en-US.i18n.data.d.ts +8 -0
  1393. package/lib-esm/lib/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.ts.en-US.i18n.data.js +8 -0
  1394. package/lib-esm/lib/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.ts.en-US.i18n.data.js.map +1 -0
  1395. package/lib-esm/lib/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.ts.pl-PL.i18n.data.d.ts +8 -0
  1396. package/lib-esm/lib/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.ts.pl-PL.i18n.data.js +8 -0
  1397. package/lib-esm/lib/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.ts.pl-PL.i18n.data.js.map +1 -0
  1398. package/lib-esm/lib/taon-posts/taon-cms-post/i18n/taon-cms-post-thumbnail.component.ts.de-DE.i18n.data.d.ts +16 -0
  1399. package/lib-esm/lib/taon-posts/taon-cms-post/i18n/taon-cms-post-thumbnail.component.ts.de-DE.i18n.data.js +14 -0
  1400. package/lib-esm/lib/taon-posts/taon-cms-post/i18n/taon-cms-post-thumbnail.component.ts.de-DE.i18n.data.js.map +1 -0
  1401. package/lib-esm/lib/taon-posts/taon-cms-post/i18n/taon-cms-post-thumbnail.component.ts.en-US.i18n.data.d.ts +15 -0
  1402. package/lib-esm/lib/taon-posts/taon-cms-post/i18n/taon-cms-post-thumbnail.component.ts.en-US.i18n.data.js +13 -0
  1403. package/lib-esm/lib/taon-posts/taon-cms-post/i18n/taon-cms-post-thumbnail.component.ts.en-US.i18n.data.js.map +1 -0
  1404. package/lib-esm/lib/taon-posts/taon-cms-post/i18n/taon-cms-post-thumbnail.component.ts.pl-PL.i18n.data.d.ts +16 -0
  1405. package/lib-esm/lib/taon-posts/taon-cms-post/i18n/taon-cms-post-thumbnail.component.ts.pl-PL.i18n.data.js +14 -0
  1406. package/lib-esm/lib/taon-posts/taon-cms-post/i18n/taon-cms-post-thumbnail.component.ts.pl-PL.i18n.data.js.map +1 -0
  1407. package/lib-esm/lib/taon-posts/taon-cms-post/i18n/taon-cms-post.component.html.de-DE.i18n.data.d.ts +49 -4
  1408. package/lib-esm/lib/taon-posts/taon-cms-post/i18n/taon-cms-post.component.html.de-DE.i18n.data.js +496 -90
  1409. package/lib-esm/lib/taon-posts/taon-cms-post/i18n/taon-cms-post.component.html.de-DE.i18n.data.js.map +1 -1
  1410. package/lib-esm/lib/taon-posts/taon-cms-post/i18n/taon-cms-post.component.html.en-US.i18n.data.d.ts +49 -4
  1411. package/lib-esm/lib/taon-posts/taon-cms-post/i18n/taon-cms-post.component.html.en-US.i18n.data.js +416 -88
  1412. package/lib-esm/lib/taon-posts/taon-cms-post/i18n/taon-cms-post.component.html.en-US.i18n.data.js.map +1 -1
  1413. package/lib-esm/lib/taon-posts/taon-cms-post/i18n/taon-cms-post.component.html.pl-PL.i18n.data.d.ts +49 -4
  1414. package/lib-esm/lib/taon-posts/taon-cms-post/i18n/taon-cms-post.component.html.pl-PL.i18n.data.js +497 -89
  1415. package/lib-esm/lib/taon-posts/taon-cms-post/i18n/taon-cms-post.component.html.pl-PL.i18n.data.js.map +1 -1
  1416. package/lib-esm/lib/taon-posts/taon-cms-post/i18n/taon-cms-post.component.ts.de-DE.i18n.data.d.ts +34 -7
  1417. package/lib-esm/lib/taon-posts/taon-cms-post/i18n/taon-cms-post.component.ts.de-DE.i18n.data.js +203 -39
  1418. package/lib-esm/lib/taon-posts/taon-cms-post/i18n/taon-cms-post.component.ts.de-DE.i18n.data.js.map +1 -1
  1419. package/lib-esm/lib/taon-posts/taon-cms-post/i18n/taon-cms-post.component.ts.en-US.i18n.data.d.ts +32 -1
  1420. package/lib-esm/lib/taon-posts/taon-cms-post/i18n/taon-cms-post.component.ts.en-US.i18n.data.js +166 -39
  1421. package/lib-esm/lib/taon-posts/taon-cms-post/i18n/taon-cms-post.component.ts.en-US.i18n.data.js.map +1 -1
  1422. package/lib-esm/lib/taon-posts/taon-cms-post/i18n/taon-cms-post.component.ts.pl-PL.i18n.data.d.ts +34 -7
  1423. package/lib-esm/lib/taon-posts/taon-cms-post/i18n/taon-cms-post.component.ts.pl-PL.i18n.data.js +206 -42
  1424. package/lib-esm/lib/taon-posts/taon-cms-post/i18n/taon-cms-post.component.ts.pl-PL.i18n.data.js.map +1 -1
  1425. package/lib-esm/lib/taon-posts/taon-cms-post/i18n/taon-cms-post.translation.d.ts +10 -1
  1426. package/lib-esm/lib/taon-posts/taon-cms-post/i18n/taon-cms-post.translation.js.map +1 -1
  1427. package/lib-esm/lib/taon-posts/taon-cms-post/index.d.ts +1 -1
  1428. package/lib-esm/lib/taon-posts/taon-cms-post/index.js +1 -1
  1429. package/lib-esm/lib/taon-posts/taon-cms-post/taon-cms-document-extractor.d.ts +1 -0
  1430. package/lib-esm/lib/taon-posts/taon-cms-post/taon-cms-document-extractor.js +498 -0
  1431. package/lib-esm/lib/taon-posts/taon-cms-post/taon-cms-document-extractor.js.map +1 -0
  1432. package/lib-esm/lib/taon-posts/taon-cms-post-details-page/i18n/taon-cms-post-details-page.component.ts.de-DE.i18n.data.d.ts +2 -6
  1433. package/lib-esm/lib/taon-posts/taon-cms-post-details-page/i18n/taon-cms-post-details-page.component.ts.de-DE.i18n.data.js +2 -1
  1434. package/lib-esm/lib/taon-posts/taon-cms-post-details-page/i18n/taon-cms-post-details-page.component.ts.de-DE.i18n.data.js.map +1 -1
  1435. package/lib-esm/lib/taon-posts/taon-cms-post-details-page/i18n/taon-cms-post-details-page.component.ts.pl-PL.i18n.data.d.ts +2 -6
  1436. package/lib-esm/lib/taon-posts/taon-cms-post-details-page/i18n/taon-cms-post-details-page.component.ts.pl-PL.i18n.data.js +2 -1
  1437. package/lib-esm/lib/taon-posts/taon-cms-post-details-page/i18n/taon-cms-post-details-page.component.ts.pl-PL.i18n.data.js.map +1 -1
  1438. package/lib-esm/lib/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-post-table-actions.directive.ts.de-DE.i18n.data.d.ts +8 -2
  1439. package/lib-esm/lib/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-post-table-actions.directive.ts.de-DE.i18n.data.js +64 -13
  1440. package/lib-esm/lib/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-post-table-actions.directive.ts.de-DE.i18n.data.js.map +1 -1
  1441. package/lib-esm/lib/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-post-table-actions.directive.ts.en-US.i18n.data.d.ts +7 -2
  1442. package/lib-esm/lib/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-post-table-actions.directive.ts.en-US.i18n.data.js +45 -13
  1443. package/lib-esm/lib/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-post-table-actions.directive.ts.en-US.i18n.data.js.map +1 -1
  1444. package/lib-esm/lib/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-post-table-actions.directive.ts.pl-PL.i18n.data.d.ts +8 -2
  1445. package/lib-esm/lib/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-post-table-actions.directive.ts.pl-PL.i18n.data.js +64 -13
  1446. package/lib-esm/lib/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-post-table-actions.directive.ts.pl-PL.i18n.data.js.map +1 -1
  1447. package/lib-esm/lib/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.html.de-DE.i18n.data.d.ts +2 -6
  1448. package/lib-esm/lib/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.html.de-DE.i18n.data.js +19 -12
  1449. package/lib-esm/lib/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.html.de-DE.i18n.data.js.map +1 -1
  1450. package/lib-esm/lib/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.html.en-US.i18n.data.js +5 -5
  1451. package/lib-esm/lib/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.html.en-US.i18n.data.js.map +1 -1
  1452. package/lib-esm/lib/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.html.pl-PL.i18n.data.d.ts +2 -6
  1453. package/lib-esm/lib/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.html.pl-PL.i18n.data.js +19 -12
  1454. package/lib-esm/lib/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.html.pl-PL.i18n.data.js.map +1 -1
  1455. package/lib-esm/lib/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.ts.de-DE.i18n.data.d.ts +2 -6
  1456. package/lib-esm/lib/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.ts.de-DE.i18n.data.js +2 -1
  1457. package/lib-esm/lib/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.ts.de-DE.i18n.data.js.map +1 -1
  1458. package/lib-esm/lib/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.ts.pl-PL.i18n.data.d.ts +2 -6
  1459. package/lib-esm/lib/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.ts.pl-PL.i18n.data.js +2 -1
  1460. package/lib-esm/lib/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.ts.pl-PL.i18n.data.js.map +1 -1
  1461. package/lib-esm/lib/taon-posts/taon-cms-posts-backoffice/index.d.ts +1 -1
  1462. package/lib-esm/lib/taon-posts/taon-cms-posts-backoffice/index.js +1 -1
  1463. package/lib-esm/lib/taon-posts/taon-cms-revision-chooser/i18n/taon-cms-revision-chooser.component.html.de-DE.i18n.data.d.ts +7 -2
  1464. package/lib-esm/lib/taon-posts/taon-cms-revision-chooser/i18n/taon-cms-revision-chooser.component.html.de-DE.i18n.data.js +23 -9
  1465. package/lib-esm/lib/taon-posts/taon-cms-revision-chooser/i18n/taon-cms-revision-chooser.component.html.de-DE.i18n.data.js.map +1 -1
  1466. package/lib-esm/lib/taon-posts/taon-cms-revision-chooser/i18n/taon-cms-revision-chooser.component.html.en-US.i18n.data.d.ts +7 -2
  1467. package/lib-esm/lib/taon-posts/taon-cms-revision-chooser/i18n/taon-cms-revision-chooser.component.html.en-US.i18n.data.js +23 -9
  1468. package/lib-esm/lib/taon-posts/taon-cms-revision-chooser/i18n/taon-cms-revision-chooser.component.html.en-US.i18n.data.js.map +1 -1
  1469. package/lib-esm/lib/taon-posts/taon-cms-revision-chooser/i18n/taon-cms-revision-chooser.component.html.pl-PL.i18n.data.d.ts +7 -2
  1470. package/lib-esm/lib/taon-posts/taon-cms-revision-chooser/i18n/taon-cms-revision-chooser.component.html.pl-PL.i18n.data.js +23 -9
  1471. package/lib-esm/lib/taon-posts/taon-cms-revision-chooser/i18n/taon-cms-revision-chooser.component.html.pl-PL.i18n.data.js.map +1 -1
  1472. package/lib-esm/lib/taon-posts/taon-cms-revision-chooser/index.d.ts +1 -1
  1473. package/lib-esm/lib/taon-posts/taon-cms-revision-chooser/index.js +1 -1
  1474. package/lib-esm/lib/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.html.de-DE.i18n.data.d.ts +1 -0
  1475. package/lib-esm/lib/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.html.de-DE.i18n.data.js +10 -5
  1476. package/lib-esm/lib/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.html.de-DE.i18n.data.js.map +1 -1
  1477. package/lib-esm/lib/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.html.en-US.i18n.data.d.ts +1 -0
  1478. package/lib-esm/lib/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.html.en-US.i18n.data.js +9 -5
  1479. package/lib-esm/lib/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.html.en-US.i18n.data.js.map +1 -1
  1480. package/lib-esm/lib/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.html.pl-PL.i18n.data.d.ts +1 -0
  1481. package/lib-esm/lib/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.html.pl-PL.i18n.data.js +10 -5
  1482. package/lib-esm/lib/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.html.pl-PL.i18n.data.js.map +1 -1
  1483. package/lib-esm/lib/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.ts.de-DE.i18n.data.js +2 -2
  1484. package/lib-esm/lib/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.ts.en-US.i18n.data.js +2 -2
  1485. package/lib-esm/lib/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.ts.pl-PL.i18n.data.js +2 -2
  1486. package/lib-esm/lib/taon-posts/taon-related-post-chooser/index.d.ts +1 -1
  1487. package/lib-esm/lib/taon-posts/taon-related-post-chooser/index.js +1 -1
  1488. package/lib-prod/build-info._auto-generated_.d.ts +1 -1
  1489. package/lib-prod/build-info._auto-generated_.js +1 -1
  1490. package/lib-prod/index._auto-generated_.d.ts +18 -0
  1491. package/lib-prod/index._auto-generated_.js +33 -0
  1492. package/lib-prod/index._auto-generated_.js.map +1 -1
  1493. package/lib-prod/migrations/1793664000000_postVersionLinks.d.ts +6 -0
  1494. package/lib-prod/migrations/1793664000000_postVersionLinks.js +32 -0
  1495. package/lib-prod/migrations/1793664000000_postVersionLinks.js.map +1 -0
  1496. package/lib-prod/migrations/migrations_index._auto-generated_.d.ts +3 -0
  1497. package/lib-prod/migrations/migrations_index._auto-generated_.js +3 -0
  1498. package/lib-prod/migrations/migrations_index._auto-generated_.js.map +1 -1
  1499. package/lib-prod/package.json +1 -1
  1500. package/lib-prod/taon-cms-backoffice/i18n/taon-cms-backoffice.component.html.de-DE.i18n.data.js +5 -0
  1501. package/lib-prod/taon-cms-backoffice/i18n/taon-cms-backoffice.component.html.de-DE.i18n.data.js.map +1 -1
  1502. package/lib-prod/taon-cms-backoffice/i18n/taon-cms-backoffice.component.html.en-US.i18n.data.js +5 -0
  1503. package/lib-prod/taon-cms-backoffice/i18n/taon-cms-backoffice.component.html.en-US.i18n.data.js.map +1 -1
  1504. package/lib-prod/taon-cms-backoffice/i18n/taon-cms-backoffice.component.html.pl-PL.i18n.data.js +5 -0
  1505. package/lib-prod/taon-cms-backoffice/i18n/taon-cms-backoffice.component.html.pl-PL.i18n.data.js.map +1 -1
  1506. package/lib-prod/taon-cms-backoffice/i18n/taon-cms-backoffice.routes.ts.de-DE.i18n.data.d.ts +4 -6
  1507. package/lib-prod/taon-cms-backoffice/i18n/taon-cms-backoffice.routes.ts.de-DE.i18n.data.js +16 -5
  1508. package/lib-prod/taon-cms-backoffice/i18n/taon-cms-backoffice.routes.ts.de-DE.i18n.data.js.map +1 -1
  1509. package/lib-prod/taon-cms-backoffice/i18n/taon-cms-backoffice.routes.ts.en-US.i18n.data.d.ts +4 -2
  1510. package/lib-prod/taon-cms-backoffice/i18n/taon-cms-backoffice.routes.ts.en-US.i18n.data.js +13 -5
  1511. package/lib-prod/taon-cms-backoffice/i18n/taon-cms-backoffice.routes.ts.en-US.i18n.data.js.map +1 -1
  1512. package/lib-prod/taon-cms-backoffice/i18n/taon-cms-backoffice.routes.ts.pl-PL.i18n.data.d.ts +2 -0
  1513. package/lib-prod/taon-cms-backoffice/i18n/taon-cms-backoffice.routes.ts.pl-PL.i18n.data.js +15 -5
  1514. package/lib-prod/taon-cms-backoffice/i18n/taon-cms-backoffice.routes.ts.pl-PL.i18n.data.js.map +1 -1
  1515. package/lib-prod/taon-cms-backoffice/index.d.ts +1 -1
  1516. package/lib-prod/taon-cms-backoffice/index.js +1 -1
  1517. package/lib-prod/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.html.de-DE.i18n.data.d.ts +21 -0
  1518. package/lib-prod/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.html.de-DE.i18n.data.js +44 -0
  1519. package/lib-prod/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.html.de-DE.i18n.data.js.map +1 -0
  1520. package/lib-prod/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.html.en-US.i18n.data.d.ts +20 -0
  1521. package/lib-prod/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.html.en-US.i18n.data.js +37 -0
  1522. package/lib-prod/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.html.en-US.i18n.data.js.map +1 -0
  1523. package/lib-prod/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.html.pl-PL.i18n.data.d.ts +21 -0
  1524. package/lib-prod/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.html.pl-PL.i18n.data.js +44 -0
  1525. package/lib-prod/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.html.pl-PL.i18n.data.js.map +1 -0
  1526. package/lib-prod/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.ts.de-DE.i18n.data.d.ts +24 -0
  1527. package/lib-prod/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.ts.de-DE.i18n.data.js +54 -0
  1528. package/lib-prod/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.ts.de-DE.i18n.data.js.map +1 -0
  1529. package/lib-prod/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.ts.en-US.i18n.data.d.ts +23 -0
  1530. package/lib-prod/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.ts.en-US.i18n.data.js +45 -0
  1531. package/lib-prod/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.ts.en-US.i18n.data.js.map +1 -0
  1532. package/lib-prod/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.ts.pl-PL.i18n.data.d.ts +24 -0
  1533. package/lib-prod/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.ts.pl-PL.i18n.data.js +54 -0
  1534. package/lib-prod/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.ts.pl-PL.i18n.data.js.map +1 -0
  1535. package/lib-prod/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.translation.d.ts +8 -0
  1536. package/lib-prod/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.translation.js +4 -0
  1537. package/lib-prod/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.translation.js.map +1 -0
  1538. package/lib-prod/taon-cms-backoffice/taon-cms-website-features/index.d.ts +1 -0
  1539. package/lib-prod/taon-cms-backoffice/taon-cms-website-features/index.js +2 -0
  1540. package/lib-prod/taon-cms-backoffice/taon-cms-website-features/index.js.map +1 -0
  1541. package/lib-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.constants.ts.de-DE.i18n.data.d.ts +15 -0
  1542. package/lib-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.constants.ts.de-DE.i18n.data.js +13 -0
  1543. package/lib-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.constants.ts.de-DE.i18n.data.js.map +1 -0
  1544. package/lib-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.constants.ts.en-US.i18n.data.d.ts +15 -0
  1545. package/lib-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.constants.ts.en-US.i18n.data.js +13 -0
  1546. package/lib-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.constants.ts.en-US.i18n.data.js.map +1 -0
  1547. package/lib-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.constants.ts.pl-PL.i18n.data.d.ts +15 -0
  1548. package/lib-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.constants.ts.pl-PL.i18n.data.js +13 -0
  1549. package/lib-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.constants.ts.pl-PL.i18n.data.js.map +1 -0
  1550. package/lib-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.controller.ts.de-DE.i18n.data.d.ts +16 -0
  1551. package/lib-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.controller.ts.de-DE.i18n.data.js +14 -0
  1552. package/lib-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.controller.ts.de-DE.i18n.data.js.map +1 -0
  1553. package/lib-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.controller.ts.en-US.i18n.data.d.ts +15 -0
  1554. package/lib-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.controller.ts.en-US.i18n.data.js +13 -0
  1555. package/lib-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.controller.ts.en-US.i18n.data.js.map +1 -0
  1556. package/lib-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.controller.ts.pl-PL.i18n.data.d.ts +16 -0
  1557. package/lib-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.controller.ts.pl-PL.i18n.data.js +14 -0
  1558. package/lib-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.controller.ts.pl-PL.i18n.data.js.map +1 -0
  1559. package/lib-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.translation.d.ts +8 -0
  1560. package/lib-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.translation.js +4 -0
  1561. package/lib-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.translation.js.map +1 -0
  1562. package/lib-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.abstract.context.d.ts +16 -0
  1563. package/lib-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.abstract.context.js +18 -0
  1564. package/lib-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.abstract.context.js.map +1 -0
  1565. package/lib-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.constants.d.ts +7 -0
  1566. package/lib-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.constants.js +13 -0
  1567. package/lib-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.constants.js.map +1 -0
  1568. package/lib-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.controller.d.ts +13 -0
  1569. package/lib-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.controller.js +91 -0
  1570. package/lib-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.controller.js.map +1 -0
  1571. package/lib-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.kv.repository.d.ts +14 -0
  1572. package/lib-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.kv.repository.js +91 -0
  1573. package/lib-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.kv.repository.js.map +1 -0
  1574. package/lib-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.models.d.ts +9 -0
  1575. package/lib-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.models.js +8 -0
  1576. package/lib-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.models.js.map +1 -0
  1577. package/lib-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.provider.d.ts +12 -0
  1578. package/lib-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.provider.js +22 -0
  1579. package/lib-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.provider.js.map +1 -0
  1580. package/lib-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.utils.d.ts +3 -0
  1581. package/lib-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.utils.js +15 -0
  1582. package/lib-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.utils.js.map +1 -0
  1583. package/lib-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.validators.d.ts +1 -0
  1584. package/lib-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.validators.js +22 -0
  1585. package/lib-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.validators.js.map +1 -0
  1586. package/lib-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-features.models.d.ts +0 -0
  1587. package/lib-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-features.models.js +3 -0
  1588. package/lib-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-features.models.js.map +1 -0
  1589. package/lib-prod/taon-cms-comment/i18n/taon-cms-comment.controller.ts.de-DE.i18n.data.d.ts +32 -0
  1590. package/lib-prod/taon-cms-comment/i18n/taon-cms-comment.controller.ts.de-DE.i18n.data.js +114 -0
  1591. package/lib-prod/taon-cms-comment/i18n/taon-cms-comment.controller.ts.de-DE.i18n.data.js.map +1 -0
  1592. package/lib-prod/taon-cms-comment/i18n/taon-cms-comment.controller.ts.en-US.i18n.data.d.ts +31 -0
  1593. package/lib-prod/taon-cms-comment/i18n/taon-cms-comment.controller.ts.en-US.i18n.data.js +93 -0
  1594. package/lib-prod/taon-cms-comment/i18n/taon-cms-comment.controller.ts.en-US.i18n.data.js.map +1 -0
  1595. package/lib-prod/taon-cms-comment/i18n/taon-cms-comment.controller.ts.pl-PL.i18n.data.d.ts +32 -0
  1596. package/lib-prod/taon-cms-comment/i18n/taon-cms-comment.controller.ts.pl-PL.i18n.data.js +114 -0
  1597. package/lib-prod/taon-cms-comment/i18n/taon-cms-comment.controller.ts.pl-PL.i18n.data.js.map +1 -0
  1598. package/lib-prod/taon-cms-comment/i18n/taon-cms-comment.translation.d.ts +11 -0
  1599. package/lib-prod/taon-cms-comment/i18n/taon-cms-comment.translation.js +4 -0
  1600. package/lib-prod/taon-cms-comment/i18n/taon-cms-comment.translation.js.map +1 -0
  1601. package/lib-prod/taon-cms-comment/i18n/taon-cms-comments.component.html.de-DE.i18n.data.d.ts +29 -0
  1602. package/lib-prod/taon-cms-comment/i18n/taon-cms-comments.component.html.de-DE.i18n.data.js +94 -0
  1603. package/lib-prod/taon-cms-comment/i18n/taon-cms-comments.component.html.de-DE.i18n.data.js.map +1 -0
  1604. package/lib-prod/taon-cms-comment/i18n/taon-cms-comments.component.html.en-US.i18n.data.d.ts +28 -0
  1605. package/lib-prod/taon-cms-comment/i18n/taon-cms-comments.component.html.en-US.i18n.data.js +77 -0
  1606. package/lib-prod/taon-cms-comment/i18n/taon-cms-comments.component.html.en-US.i18n.data.js.map +1 -0
  1607. package/lib-prod/taon-cms-comment/i18n/taon-cms-comments.component.html.pl-PL.i18n.data.d.ts +29 -0
  1608. package/lib-prod/taon-cms-comment/i18n/taon-cms-comments.component.html.pl-PL.i18n.data.js +94 -0
  1609. package/lib-prod/taon-cms-comment/i18n/taon-cms-comments.component.html.pl-PL.i18n.data.js.map +1 -0
  1610. package/lib-prod/taon-cms-comment/i18n/taon-cms-comments.component.ts.de-DE.i18n.data.d.ts +20 -0
  1611. package/lib-prod/taon-cms-comment/i18n/taon-cms-comments.component.ts.de-DE.i18n.data.js +34 -0
  1612. package/lib-prod/taon-cms-comment/i18n/taon-cms-comments.component.ts.de-DE.i18n.data.js.map +1 -0
  1613. package/lib-prod/taon-cms-comment/i18n/taon-cms-comments.component.ts.en-US.i18n.data.d.ts +19 -0
  1614. package/lib-prod/taon-cms-comment/i18n/taon-cms-comments.component.ts.en-US.i18n.data.js +29 -0
  1615. package/lib-prod/taon-cms-comment/i18n/taon-cms-comments.component.ts.en-US.i18n.data.js.map +1 -0
  1616. package/lib-prod/taon-cms-comment/i18n/taon-cms-comments.component.ts.pl-PL.i18n.data.d.ts +20 -0
  1617. package/lib-prod/taon-cms-comment/i18n/taon-cms-comments.component.ts.pl-PL.i18n.data.js +34 -0
  1618. package/lib-prod/taon-cms-comment/i18n/taon-cms-comments.component.ts.pl-PL.i18n.data.js.map +1 -0
  1619. package/lib-prod/taon-cms-comment/index.d.ts +4 -0
  1620. package/lib-prod/taon-cms-comment/index.js +5 -0
  1621. package/lib-prod/taon-cms-comment/index.js.map +1 -1
  1622. package/lib-prod/taon-cms-comment/taon-cms-comment-blocked-phrase.entity.d.ts +7 -0
  1623. package/lib-prod/taon-cms-comment/taon-cms-comment-blocked-phrase.entity.js +51 -0
  1624. package/lib-prod/taon-cms-comment/taon-cms-comment-blocked-phrase.entity.js.map +1 -0
  1625. package/lib-prod/taon-cms-comment/taon-cms-comment-blocked-user.entity.d.ts +6 -0
  1626. package/lib-prod/taon-cms-comment/taon-cms-comment-blocked-user.entity.js +42 -0
  1627. package/lib-prod/taon-cms-comment/taon-cms-comment-blocked-user.entity.js.map +1 -0
  1628. package/lib-prod/taon-cms-comment/taon-cms-comment-spam-report.entity.d.ts +7 -0
  1629. package/lib-prod/taon-cms-comment/taon-cms-comment-spam-report.entity.js +51 -0
  1630. package/lib-prod/taon-cms-comment/taon-cms-comment-spam-report.entity.js.map +1 -0
  1631. package/lib-prod/taon-cms-comment/taon-cms-comment-vote.entity.d.ts +8 -0
  1632. package/lib-prod/taon-cms-comment/taon-cms-comment-vote.entity.js +60 -0
  1633. package/lib-prod/taon-cms-comment/taon-cms-comment-vote.entity.js.map +1 -0
  1634. package/lib-prod/taon-cms-comment/taon-cms-comment.abstract.context.js +11 -1
  1635. package/lib-prod/taon-cms-comment/taon-cms-comment.abstract.context.js.map +1 -1
  1636. package/lib-prod/taon-cms-comment/taon-cms-comment.controller.d.ts +48 -6
  1637. package/lib-prod/taon-cms-comment/taon-cms-comment.controller.js +504 -22
  1638. package/lib-prod/taon-cms-comment/taon-cms-comment.controller.js.map +1 -1
  1639. package/lib-prod/taon-cms-comment/taon-cms-comment.entity.js +3 -3
  1640. package/lib-prod/taon-cms-comment/taon-cms-comment.entity.js.map +1 -1
  1641. package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.component.ts.de-DE.i18n.data.d.ts +8 -0
  1642. package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.component.ts.de-DE.i18n.data.js +8 -0
  1643. package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.component.ts.de-DE.i18n.data.js.map +1 -0
  1644. package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.component.ts.en-US.i18n.data.d.ts +8 -0
  1645. package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.component.ts.en-US.i18n.data.js +8 -0
  1646. package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.component.ts.en-US.i18n.data.js.map +1 -0
  1647. package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.component.ts.pl-PL.i18n.data.d.ts +8 -0
  1648. package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.component.ts.pl-PL.i18n.data.js +8 -0
  1649. package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.component.ts.pl-PL.i18n.data.js.map +1 -0
  1650. package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.routes.ts.de-DE.i18n.data.d.ts +18 -0
  1651. package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.routes.ts.de-DE.i18n.data.js +24 -0
  1652. package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.routes.ts.de-DE.i18n.data.js.map +1 -0
  1653. package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.routes.ts.en-US.i18n.data.d.ts +17 -0
  1654. package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.routes.ts.en-US.i18n.data.js +21 -0
  1655. package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.routes.ts.en-US.i18n.data.js.map +1 -0
  1656. package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.routes.ts.pl-PL.i18n.data.d.ts +18 -0
  1657. package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.routes.ts.pl-PL.i18n.data.js +24 -0
  1658. package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.routes.ts.pl-PL.i18n.data.js.map +1 -0
  1659. package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.translation.d.ts +8 -0
  1660. package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.translation.js +4 -0
  1661. package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.translation.js.map +1 -0
  1662. package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/index.d.ts +1 -0
  1663. package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/index.js +2 -0
  1664. package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/index.js.map +1 -0
  1665. package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.component.html.de-DE.i18n.data.d.ts +30 -0
  1666. package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.component.html.de-DE.i18n.data.js +89 -0
  1667. package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.component.html.de-DE.i18n.data.js.map +1 -0
  1668. package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.component.html.en-US.i18n.data.d.ts +29 -0
  1669. package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.component.html.en-US.i18n.data.js +73 -0
  1670. package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.component.html.en-US.i18n.data.js.map +1 -0
  1671. package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.component.html.pl-PL.i18n.data.d.ts +30 -0
  1672. package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.component.html.pl-PL.i18n.data.js +89 -0
  1673. package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.component.html.pl-PL.i18n.data.js.map +1 -0
  1674. package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.component.ts.de-DE.i18n.data.d.ts +24 -0
  1675. package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.component.ts.de-DE.i18n.data.js +54 -0
  1676. package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.component.ts.de-DE.i18n.data.js.map +1 -0
  1677. package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.component.ts.en-US.i18n.data.d.ts +23 -0
  1678. package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.component.ts.en-US.i18n.data.js +45 -0
  1679. package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.component.ts.en-US.i18n.data.js.map +1 -0
  1680. package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.component.ts.pl-PL.i18n.data.d.ts +24 -0
  1681. package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.component.ts.pl-PL.i18n.data.js +54 -0
  1682. package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.component.ts.pl-PL.i18n.data.js.map +1 -0
  1683. package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.translation.d.ts +8 -0
  1684. package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.translation.js +4 -0
  1685. package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.translation.js.map +1 -0
  1686. package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/index.d.ts +1 -0
  1687. package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/index.js +2 -0
  1688. package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/index.js.map +1 -0
  1689. package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/taon-cms-comments-all-preview-backoffice.models.d.ts +0 -0
  1690. package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/taon-cms-comments-all-preview-backoffice.models.js +3 -0
  1691. package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/taon-cms-comments-all-preview-backoffice.models.js.map +1 -0
  1692. package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-backoffice.models.d.ts +0 -0
  1693. package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-backoffice.models.js +3 -0
  1694. package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-backoffice.models.js.map +1 -0
  1695. package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.component.html.de-DE.i18n.data.d.ts +26 -0
  1696. package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.component.html.de-DE.i18n.data.js +69 -0
  1697. package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.component.html.de-DE.i18n.data.js.map +1 -0
  1698. package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.component.html.en-US.i18n.data.d.ts +25 -0
  1699. package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.component.html.en-US.i18n.data.js +57 -0
  1700. package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.component.html.en-US.i18n.data.js.map +1 -0
  1701. package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.component.html.pl-PL.i18n.data.d.ts +26 -0
  1702. package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.component.html.pl-PL.i18n.data.js +69 -0
  1703. package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.component.html.pl-PL.i18n.data.js.map +1 -0
  1704. package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.component.ts.de-DE.i18n.data.d.ts +18 -0
  1705. package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.component.ts.de-DE.i18n.data.js +24 -0
  1706. package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.component.ts.de-DE.i18n.data.js.map +1 -0
  1707. package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.component.ts.en-US.i18n.data.d.ts +17 -0
  1708. package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.component.ts.en-US.i18n.data.js +21 -0
  1709. package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.component.ts.en-US.i18n.data.js.map +1 -0
  1710. package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.component.ts.pl-PL.i18n.data.d.ts +18 -0
  1711. package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.component.ts.pl-PL.i18n.data.js +24 -0
  1712. package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.component.ts.pl-PL.i18n.data.js.map +1 -0
  1713. package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.translation.d.ts +8 -0
  1714. package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.translation.js +4 -0
  1715. package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.translation.js.map +1 -0
  1716. package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/index.d.ts +1 -0
  1717. package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/index.js +2 -0
  1718. package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/index.js.map +1 -0
  1719. package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/taon-cms-comments-blocked-users.models.d.ts +0 -0
  1720. package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/taon-cms-comments-blocked-users.models.js +3 -0
  1721. package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/taon-cms-comments-blocked-users.models.js.map +1 -0
  1722. package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.component.html.de-DE.i18n.data.d.ts +22 -0
  1723. package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.component.html.de-DE.i18n.data.js +44 -0
  1724. package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.component.html.de-DE.i18n.data.js.map +1 -0
  1725. package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.component.html.en-US.i18n.data.d.ts +21 -0
  1726. package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.component.html.en-US.i18n.data.js +37 -0
  1727. package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.component.html.en-US.i18n.data.js.map +1 -0
  1728. package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.component.html.pl-PL.i18n.data.d.ts +22 -0
  1729. package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.component.html.pl-PL.i18n.data.js +44 -0
  1730. package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.component.html.pl-PL.i18n.data.js.map +1 -0
  1731. package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.component.ts.de-DE.i18n.data.d.ts +18 -0
  1732. package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.component.ts.de-DE.i18n.data.js +24 -0
  1733. package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.component.ts.de-DE.i18n.data.js.map +1 -0
  1734. package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.component.ts.en-US.i18n.data.d.ts +17 -0
  1735. package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.component.ts.en-US.i18n.data.js +21 -0
  1736. package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.component.ts.en-US.i18n.data.js.map +1 -0
  1737. package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.component.ts.pl-PL.i18n.data.d.ts +18 -0
  1738. package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.component.ts.pl-PL.i18n.data.js +24 -0
  1739. package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.component.ts.pl-PL.i18n.data.js.map +1 -0
  1740. package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.translation.d.ts +8 -0
  1741. package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.translation.js +4 -0
  1742. package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.translation.js.map +1 -0
  1743. package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/index.d.ts +1 -0
  1744. package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/index.js +2 -0
  1745. package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/index.js.map +1 -0
  1746. package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/taon-cms-comments-filters-settings.models.d.ts +0 -0
  1747. package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/taon-cms-comments-filters-settings.models.js +3 -0
  1748. package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/taon-cms-comments-filters-settings.models.js.map +1 -0
  1749. package/lib-prod/taon-cms-content/i18n/taon-cms-content-storage.controller.ts.de-DE.i18n.data.js +1 -1
  1750. package/lib-prod/taon-cms-content/i18n/taon-cms-content-storage.controller.ts.en-US.i18n.data.js +1 -1
  1751. package/lib-prod/taon-cms-content/i18n/taon-cms-content-storage.controller.ts.pl-PL.i18n.data.js +1 -1
  1752. package/lib-prod/taon-cms-content/i18n/taon-cms-content.controller.ts.de-DE.i18n.data.d.ts +2 -0
  1753. package/lib-prod/taon-cms-content/i18n/taon-cms-content.controller.ts.de-DE.i18n.data.js +26 -6
  1754. package/lib-prod/taon-cms-content/i18n/taon-cms-content.controller.ts.de-DE.i18n.data.js.map +1 -1
  1755. package/lib-prod/taon-cms-content/i18n/taon-cms-content.controller.ts.en-US.i18n.data.d.ts +8 -2
  1756. package/lib-prod/taon-cms-content/i18n/taon-cms-content.controller.ts.en-US.i18n.data.js +22 -6
  1757. package/lib-prod/taon-cms-content/i18n/taon-cms-content.controller.ts.en-US.i18n.data.js.map +1 -1
  1758. package/lib-prod/taon-cms-content/i18n/taon-cms-content.controller.ts.pl-PL.i18n.data.d.ts +2 -0
  1759. package/lib-prod/taon-cms-content/i18n/taon-cms-content.controller.ts.pl-PL.i18n.data.js +26 -6
  1760. package/lib-prod/taon-cms-content/i18n/taon-cms-content.controller.ts.pl-PL.i18n.data.js.map +1 -1
  1761. package/lib-prod/taon-cms-content/taon-cms-content-storage.controller.d.ts +5 -1
  1762. package/lib-prod/taon-cms-content/taon-cms-content-storage.controller.js +67 -2
  1763. package/lib-prod/taon-cms-content/taon-cms-content-storage.controller.js.map +1 -1
  1764. package/lib-prod/taon-cms-content/taon-cms-content.controller.d.ts +12 -2
  1765. package/lib-prod/taon-cms-content/taon-cms-content.controller.js +246 -3
  1766. package/lib-prod/taon-cms-content/taon-cms-content.controller.js.map +1 -1
  1767. package/lib-prod/taon-cms-content/taon-cms-content.entity.d.ts +3 -0
  1768. package/lib-prod/taon-cms-content/taon-cms-content.entity.js +27 -0
  1769. package/lib-prod/taon-cms-content/taon-cms-content.entity.js.map +1 -1
  1770. package/lib-prod/taon-cms-content/taon-cms-content.models.d.ts +39 -0
  1771. package/lib-prod/taon-cms-content/taon-cms-content.models.js.map +1 -1
  1772. package/lib-prod/taon-cms-content/taon-cms-content.repository.d.ts +21 -3
  1773. package/lib-prod/taon-cms-content/taon-cms-content.repository.js +830 -30
  1774. package/lib-prod/taon-cms-content/taon-cms-content.repository.js.map +1 -1
  1775. package/lib-prod/taon-cms-content/taon-cms-content.utils.d.ts +2 -0
  1776. package/lib-prod/taon-cms-content/taon-cms-content.utils.js +5 -0
  1777. package/lib-prod/taon-cms-content/taon-cms-content.utils.js.map +1 -1
  1778. package/lib-prod/taon-cms-content/taon-cms-content.validation.js +4 -0
  1779. package/lib-prod/taon-cms-content/taon-cms-content.validation.js.map +1 -1
  1780. package/lib-prod/taon-cms-content-revision/taon-cms-content-revision.repository.d.ts +1 -0
  1781. package/lib-prod/taon-cms-content-revision/taon-cms-content-revision.repository.js +21 -0
  1782. package/lib-prod/taon-cms-content-revision/taon-cms-content-revision.repository.js.map +1 -1
  1783. package/lib-prod/taon-cms-taxonomy-backoffice/i18n/taon-cms-taxonomy-quick-create-dialog.component.ts.de-DE.i18n.data.d.ts +1 -0
  1784. package/lib-prod/taon-cms-taxonomy-backoffice/i18n/taon-cms-taxonomy-quick-create-dialog.component.ts.de-DE.i18n.data.js +14 -7
  1785. package/lib-prod/taon-cms-taxonomy-backoffice/i18n/taon-cms-taxonomy-quick-create-dialog.component.ts.de-DE.i18n.data.js.map +1 -1
  1786. package/lib-prod/taon-cms-taxonomy-backoffice/i18n/taon-cms-taxonomy-quick-create-dialog.component.ts.pl-PL.i18n.data.d.ts +1 -0
  1787. package/lib-prod/taon-cms-taxonomy-backoffice/i18n/taon-cms-taxonomy-quick-create-dialog.component.ts.pl-PL.i18n.data.js +14 -7
  1788. package/lib-prod/taon-cms-taxonomy-backoffice/i18n/taon-cms-taxonomy-quick-create-dialog.component.ts.pl-PL.i18n.data.js.map +1 -1
  1789. package/lib-prod/taon-cms.abstract.context.js +2 -0
  1790. package/lib-prod/taon-cms.abstract.context.js.map +1 -1
  1791. package/lib-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.html.de-DE.i18n.data.d.ts +2 -1
  1792. package/lib-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.html.de-DE.i18n.data.js +26 -15
  1793. package/lib-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.html.de-DE.i18n.data.js.map +1 -1
  1794. package/lib-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.html.en-US.i18n.data.d.ts +1 -1
  1795. package/lib-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.html.en-US.i18n.data.js +10 -10
  1796. package/lib-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.html.en-US.i18n.data.js.map +1 -1
  1797. package/lib-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.html.pl-PL.i18n.data.d.ts +2 -1
  1798. package/lib-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.html.pl-PL.i18n.data.js +26 -15
  1799. package/lib-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.html.pl-PL.i18n.data.js.map +1 -1
  1800. package/lib-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.ts.de-DE.i18n.data.d.ts +1 -0
  1801. package/lib-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.ts.de-DE.i18n.data.js +8 -4
  1802. package/lib-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.ts.de-DE.i18n.data.js.map +1 -1
  1803. package/lib-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.ts.pl-PL.i18n.data.d.ts +1 -0
  1804. package/lib-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.ts.pl-PL.i18n.data.js +8 -4
  1805. package/lib-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.ts.pl-PL.i18n.data.js.map +1 -1
  1806. package/lib-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.html.de-DE.i18n.data.d.ts +3 -0
  1807. package/lib-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.html.de-DE.i18n.data.js +20 -5
  1808. package/lib-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.html.de-DE.i18n.data.js.map +1 -1
  1809. package/lib-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.html.en-US.i18n.data.d.ts +2 -0
  1810. package/lib-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.html.en-US.i18n.data.js +8 -0
  1811. package/lib-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.html.en-US.i18n.data.js.map +1 -1
  1812. package/lib-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.html.pl-PL.i18n.data.d.ts +3 -0
  1813. package/lib-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.html.pl-PL.i18n.data.js +20 -5
  1814. package/lib-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.html.pl-PL.i18n.data.js.map +1 -1
  1815. package/lib-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.ts.de-DE.i18n.data.d.ts +2 -0
  1816. package/lib-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.ts.de-DE.i18n.data.js +15 -5
  1817. package/lib-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.ts.de-DE.i18n.data.js.map +1 -1
  1818. package/lib-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.ts.en-US.i18n.data.d.ts +1 -0
  1819. package/lib-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.ts.en-US.i18n.data.js +9 -5
  1820. package/lib-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.ts.en-US.i18n.data.js.map +1 -1
  1821. package/lib-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.ts.pl-PL.i18n.data.d.ts +2 -0
  1822. package/lib-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.ts.pl-PL.i18n.data.js +15 -5
  1823. package/lib-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.ts.pl-PL.i18n.data.js.map +1 -1
  1824. package/lib-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-cover.component.ts.de-DE.i18n.data.d.ts +1 -0
  1825. package/lib-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-cover.component.ts.de-DE.i18n.data.js +2 -1
  1826. package/lib-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-cover.component.ts.de-DE.i18n.data.js.map +1 -1
  1827. package/lib-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-cover.component.ts.pl-PL.i18n.data.d.ts +1 -0
  1828. package/lib-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-cover.component.ts.pl-PL.i18n.data.js +2 -1
  1829. package/lib-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-cover.component.ts.pl-PL.i18n.data.js.map +1 -1
  1830. package/lib-prod/taon-posts/taon-cms-course-backoffice/index.d.ts +1 -1
  1831. package/lib-prod/taon-posts/taon-cms-course-backoffice/index.js +1 -1
  1832. package/lib-prod/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.html.de-DE.i18n.data.d.ts +17 -0
  1833. package/lib-prod/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.html.de-DE.i18n.data.js +19 -0
  1834. package/lib-prod/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.html.de-DE.i18n.data.js.map +1 -0
  1835. package/lib-prod/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.html.en-US.i18n.data.d.ts +16 -0
  1836. package/lib-prod/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.html.en-US.i18n.data.js +17 -0
  1837. package/lib-prod/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.html.en-US.i18n.data.js.map +1 -0
  1838. package/lib-prod/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.html.pl-PL.i18n.data.d.ts +17 -0
  1839. package/lib-prod/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.html.pl-PL.i18n.data.js +19 -0
  1840. package/lib-prod/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.html.pl-PL.i18n.data.js.map +1 -0
  1841. package/lib-prod/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.ts.de-DE.i18n.data.d.ts +8 -0
  1842. package/lib-prod/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.ts.de-DE.i18n.data.js +8 -0
  1843. package/lib-prod/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.ts.de-DE.i18n.data.js.map +1 -0
  1844. package/lib-prod/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.ts.en-US.i18n.data.d.ts +8 -0
  1845. package/lib-prod/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.ts.en-US.i18n.data.js +8 -0
  1846. package/lib-prod/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.ts.en-US.i18n.data.js.map +1 -0
  1847. package/lib-prod/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.ts.pl-PL.i18n.data.d.ts +8 -0
  1848. package/lib-prod/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.ts.pl-PL.i18n.data.js +8 -0
  1849. package/lib-prod/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.ts.pl-PL.i18n.data.js.map +1 -0
  1850. package/lib-prod/taon-posts/taon-cms-post/i18n/taon-cms-post-thumbnail.component.ts.de-DE.i18n.data.d.ts +16 -0
  1851. package/lib-prod/taon-posts/taon-cms-post/i18n/taon-cms-post-thumbnail.component.ts.de-DE.i18n.data.js +14 -0
  1852. package/lib-prod/taon-posts/taon-cms-post/i18n/taon-cms-post-thumbnail.component.ts.de-DE.i18n.data.js.map +1 -0
  1853. package/lib-prod/taon-posts/taon-cms-post/i18n/taon-cms-post-thumbnail.component.ts.en-US.i18n.data.d.ts +15 -0
  1854. package/lib-prod/taon-posts/taon-cms-post/i18n/taon-cms-post-thumbnail.component.ts.en-US.i18n.data.js +13 -0
  1855. package/lib-prod/taon-posts/taon-cms-post/i18n/taon-cms-post-thumbnail.component.ts.en-US.i18n.data.js.map +1 -0
  1856. package/lib-prod/taon-posts/taon-cms-post/i18n/taon-cms-post-thumbnail.component.ts.pl-PL.i18n.data.d.ts +16 -0
  1857. package/lib-prod/taon-posts/taon-cms-post/i18n/taon-cms-post-thumbnail.component.ts.pl-PL.i18n.data.js +14 -0
  1858. package/lib-prod/taon-posts/taon-cms-post/i18n/taon-cms-post-thumbnail.component.ts.pl-PL.i18n.data.js.map +1 -0
  1859. package/lib-prod/taon-posts/taon-cms-post/i18n/taon-cms-post.component.html.de-DE.i18n.data.d.ts +49 -4
  1860. package/lib-prod/taon-posts/taon-cms-post/i18n/taon-cms-post.component.html.de-DE.i18n.data.js +496 -90
  1861. package/lib-prod/taon-posts/taon-cms-post/i18n/taon-cms-post.component.html.de-DE.i18n.data.js.map +1 -1
  1862. package/lib-prod/taon-posts/taon-cms-post/i18n/taon-cms-post.component.html.en-US.i18n.data.d.ts +49 -4
  1863. package/lib-prod/taon-posts/taon-cms-post/i18n/taon-cms-post.component.html.en-US.i18n.data.js +416 -88
  1864. package/lib-prod/taon-posts/taon-cms-post/i18n/taon-cms-post.component.html.en-US.i18n.data.js.map +1 -1
  1865. package/lib-prod/taon-posts/taon-cms-post/i18n/taon-cms-post.component.html.pl-PL.i18n.data.d.ts +49 -4
  1866. package/lib-prod/taon-posts/taon-cms-post/i18n/taon-cms-post.component.html.pl-PL.i18n.data.js +497 -89
  1867. package/lib-prod/taon-posts/taon-cms-post/i18n/taon-cms-post.component.html.pl-PL.i18n.data.js.map +1 -1
  1868. package/lib-prod/taon-posts/taon-cms-post/i18n/taon-cms-post.component.ts.de-DE.i18n.data.d.ts +34 -7
  1869. package/lib-prod/taon-posts/taon-cms-post/i18n/taon-cms-post.component.ts.de-DE.i18n.data.js +203 -39
  1870. package/lib-prod/taon-posts/taon-cms-post/i18n/taon-cms-post.component.ts.de-DE.i18n.data.js.map +1 -1
  1871. package/lib-prod/taon-posts/taon-cms-post/i18n/taon-cms-post.component.ts.en-US.i18n.data.d.ts +32 -1
  1872. package/lib-prod/taon-posts/taon-cms-post/i18n/taon-cms-post.component.ts.en-US.i18n.data.js +166 -39
  1873. package/lib-prod/taon-posts/taon-cms-post/i18n/taon-cms-post.component.ts.en-US.i18n.data.js.map +1 -1
  1874. package/lib-prod/taon-posts/taon-cms-post/i18n/taon-cms-post.component.ts.pl-PL.i18n.data.d.ts +34 -7
  1875. package/lib-prod/taon-posts/taon-cms-post/i18n/taon-cms-post.component.ts.pl-PL.i18n.data.js +206 -42
  1876. package/lib-prod/taon-posts/taon-cms-post/i18n/taon-cms-post.component.ts.pl-PL.i18n.data.js.map +1 -1
  1877. package/lib-prod/taon-posts/taon-cms-post/i18n/taon-cms-post.translation.d.ts +10 -1
  1878. package/lib-prod/taon-posts/taon-cms-post/i18n/taon-cms-post.translation.js.map +1 -1
  1879. package/lib-prod/taon-posts/taon-cms-post/index.d.ts +1 -1
  1880. package/lib-prod/taon-posts/taon-cms-post/index.js +1 -1
  1881. package/lib-prod/taon-posts/taon-cms-post/taon-cms-document-extractor.d.ts +1 -0
  1882. package/lib-prod/taon-posts/taon-cms-post/taon-cms-document-extractor.js +498 -0
  1883. package/lib-prod/taon-posts/taon-cms-post/taon-cms-document-extractor.js.map +1 -0
  1884. package/lib-prod/taon-posts/taon-cms-post-details-page/i18n/taon-cms-post-details-page.component.ts.de-DE.i18n.data.d.ts +2 -6
  1885. package/lib-prod/taon-posts/taon-cms-post-details-page/i18n/taon-cms-post-details-page.component.ts.de-DE.i18n.data.js +2 -1
  1886. package/lib-prod/taon-posts/taon-cms-post-details-page/i18n/taon-cms-post-details-page.component.ts.de-DE.i18n.data.js.map +1 -1
  1887. package/lib-prod/taon-posts/taon-cms-post-details-page/i18n/taon-cms-post-details-page.component.ts.pl-PL.i18n.data.d.ts +2 -6
  1888. package/lib-prod/taon-posts/taon-cms-post-details-page/i18n/taon-cms-post-details-page.component.ts.pl-PL.i18n.data.js +2 -1
  1889. package/lib-prod/taon-posts/taon-cms-post-details-page/i18n/taon-cms-post-details-page.component.ts.pl-PL.i18n.data.js.map +1 -1
  1890. package/lib-prod/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-post-table-actions.directive.ts.de-DE.i18n.data.d.ts +8 -2
  1891. package/lib-prod/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-post-table-actions.directive.ts.de-DE.i18n.data.js +64 -13
  1892. package/lib-prod/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-post-table-actions.directive.ts.de-DE.i18n.data.js.map +1 -1
  1893. package/lib-prod/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-post-table-actions.directive.ts.en-US.i18n.data.d.ts +7 -2
  1894. package/lib-prod/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-post-table-actions.directive.ts.en-US.i18n.data.js +45 -13
  1895. package/lib-prod/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-post-table-actions.directive.ts.en-US.i18n.data.js.map +1 -1
  1896. package/lib-prod/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-post-table-actions.directive.ts.pl-PL.i18n.data.d.ts +8 -2
  1897. package/lib-prod/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-post-table-actions.directive.ts.pl-PL.i18n.data.js +64 -13
  1898. package/lib-prod/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-post-table-actions.directive.ts.pl-PL.i18n.data.js.map +1 -1
  1899. package/lib-prod/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.html.de-DE.i18n.data.d.ts +2 -6
  1900. package/lib-prod/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.html.de-DE.i18n.data.js +19 -12
  1901. package/lib-prod/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.html.de-DE.i18n.data.js.map +1 -1
  1902. package/lib-prod/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.html.en-US.i18n.data.js +5 -5
  1903. package/lib-prod/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.html.en-US.i18n.data.js.map +1 -1
  1904. package/lib-prod/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.html.pl-PL.i18n.data.d.ts +2 -6
  1905. package/lib-prod/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.html.pl-PL.i18n.data.js +19 -12
  1906. package/lib-prod/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.html.pl-PL.i18n.data.js.map +1 -1
  1907. package/lib-prod/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.ts.de-DE.i18n.data.d.ts +2 -6
  1908. package/lib-prod/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.ts.de-DE.i18n.data.js +2 -1
  1909. package/lib-prod/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.ts.de-DE.i18n.data.js.map +1 -1
  1910. package/lib-prod/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.ts.pl-PL.i18n.data.d.ts +2 -6
  1911. package/lib-prod/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.ts.pl-PL.i18n.data.js +2 -1
  1912. package/lib-prod/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.ts.pl-PL.i18n.data.js.map +1 -1
  1913. package/lib-prod/taon-posts/taon-cms-posts-backoffice/index.d.ts +1 -1
  1914. package/lib-prod/taon-posts/taon-cms-posts-backoffice/index.js +1 -1
  1915. package/lib-prod/taon-posts/taon-cms-revision-chooser/i18n/taon-cms-revision-chooser.component.html.de-DE.i18n.data.d.ts +7 -2
  1916. package/lib-prod/taon-posts/taon-cms-revision-chooser/i18n/taon-cms-revision-chooser.component.html.de-DE.i18n.data.js +23 -9
  1917. package/lib-prod/taon-posts/taon-cms-revision-chooser/i18n/taon-cms-revision-chooser.component.html.de-DE.i18n.data.js.map +1 -1
  1918. package/lib-prod/taon-posts/taon-cms-revision-chooser/i18n/taon-cms-revision-chooser.component.html.en-US.i18n.data.d.ts +7 -2
  1919. package/lib-prod/taon-posts/taon-cms-revision-chooser/i18n/taon-cms-revision-chooser.component.html.en-US.i18n.data.js +23 -9
  1920. package/lib-prod/taon-posts/taon-cms-revision-chooser/i18n/taon-cms-revision-chooser.component.html.en-US.i18n.data.js.map +1 -1
  1921. package/lib-prod/taon-posts/taon-cms-revision-chooser/i18n/taon-cms-revision-chooser.component.html.pl-PL.i18n.data.d.ts +7 -2
  1922. package/lib-prod/taon-posts/taon-cms-revision-chooser/i18n/taon-cms-revision-chooser.component.html.pl-PL.i18n.data.js +23 -9
  1923. package/lib-prod/taon-posts/taon-cms-revision-chooser/i18n/taon-cms-revision-chooser.component.html.pl-PL.i18n.data.js.map +1 -1
  1924. package/lib-prod/taon-posts/taon-cms-revision-chooser/index.d.ts +1 -1
  1925. package/lib-prod/taon-posts/taon-cms-revision-chooser/index.js +1 -1
  1926. package/lib-prod/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.html.de-DE.i18n.data.d.ts +1 -0
  1927. package/lib-prod/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.html.de-DE.i18n.data.js +10 -5
  1928. package/lib-prod/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.html.de-DE.i18n.data.js.map +1 -1
  1929. package/lib-prod/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.html.en-US.i18n.data.d.ts +1 -0
  1930. package/lib-prod/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.html.en-US.i18n.data.js +9 -5
  1931. package/lib-prod/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.html.en-US.i18n.data.js.map +1 -1
  1932. package/lib-prod/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.html.pl-PL.i18n.data.d.ts +1 -0
  1933. package/lib-prod/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.html.pl-PL.i18n.data.js +10 -5
  1934. package/lib-prod/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.html.pl-PL.i18n.data.js.map +1 -1
  1935. package/lib-prod/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.ts.de-DE.i18n.data.js +2 -2
  1936. package/lib-prod/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.ts.en-US.i18n.data.js +2 -2
  1937. package/lib-prod/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.ts.pl-PL.i18n.data.js +2 -2
  1938. package/lib-prod/taon-posts/taon-related-post-chooser/index.d.ts +1 -1
  1939. package/lib-prod/taon-posts/taon-related-post-chooser/index.js +1 -1
  1940. package/lib-prod.split-namespaces.json +15 -1
  1941. package/package.json +1 -1
  1942. package/scss/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-features.component.scss +27 -0
  1943. package/scss/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/taon-cms-comments-all-preview-backoffice.component.scss +3 -0
  1944. package/scss/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-backoffice.component.scss +3 -0
  1945. package/scss/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/taon-cms-comments-blocked-users.component.scss +3 -0
  1946. package/scss/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/taon-cms-comments-filters-settings.component.scss +3 -0
  1947. package/scss/lib/taon-cms-comment/taon-cms-comments.component.scss +28 -0
  1948. package/scss/lib/taon-posts/taon-cms-post/taon-cms-post.component.scss +115 -0
  1949. package/ts-source/browser-code/build-info._auto-generated_.ts +1 -1
  1950. package/ts-source/browser-code/index._auto-generated_.ts +33 -0
  1951. package/ts-source/browser-code/migrations/1793664000000_postVersionLinks.ts +40 -0
  1952. package/ts-source/browser-code/migrations/migrations_index._auto-generated_.ts +3 -0
  1953. package/ts-source/browser-code/taon-cms-assets-backoffice/taon-cms-asset-preview.component.html +1 -1
  1954. package/ts-source/browser-code/taon-cms-backoffice/i18n/taon-cms-backoffice.component.html.de-DE.i18n.data.ts +5 -0
  1955. package/ts-source/browser-code/taon-cms-backoffice/i18n/taon-cms-backoffice.component.html.de-DE.po +1 -0
  1956. package/ts-source/browser-code/taon-cms-backoffice/i18n/taon-cms-backoffice.component.html.en-US.i18n.data.ts +5 -0
  1957. package/ts-source/browser-code/taon-cms-backoffice/i18n/taon-cms-backoffice.component.html.en-US.po +1 -0
  1958. package/ts-source/browser-code/taon-cms-backoffice/i18n/taon-cms-backoffice.component.html.pl-PL.i18n.data.ts +5 -0
  1959. package/ts-source/browser-code/taon-cms-backoffice/i18n/taon-cms-backoffice.component.html.pl-PL.po +1 -0
  1960. package/ts-source/browser-code/taon-cms-backoffice/i18n/taon-cms-backoffice.routes.ts.de-DE.i18n.data.ts +18 -5
  1961. package/ts-source/browser-code/taon-cms-backoffice/i18n/taon-cms-backoffice.routes.ts.de-DE.po +13 -5
  1962. package/ts-source/browser-code/taon-cms-backoffice/i18n/taon-cms-backoffice.routes.ts.en-US.i18n.data.ts +15 -5
  1963. package/ts-source/browser-code/taon-cms-backoffice/i18n/taon-cms-backoffice.routes.ts.en-US.po +12 -4
  1964. package/ts-source/browser-code/taon-cms-backoffice/i18n/taon-cms-backoffice.routes.ts.pl-PL.i18n.data.ts +17 -5
  1965. package/ts-source/browser-code/taon-cms-backoffice/i18n/taon-cms-backoffice.routes.ts.pl-PL.po +12 -4
  1966. package/ts-source/browser-code/taon-cms-backoffice/taon-cms-backoffice.routes.ts +20 -0
  1967. package/ts-source/browser-code/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.html.de-DE.i18n.data.ts +64 -0
  1968. package/ts-source/browser-code/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.html.de-DE.po +30 -0
  1969. package/ts-source/browser-code/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.html.en-US.i18n.data.ts +57 -0
  1970. package/ts-source/browser-code/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.html.en-US.po +30 -0
  1971. package/ts-source/browser-code/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.html.pl-PL.i18n.data.ts +64 -0
  1972. package/ts-source/browser-code/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.html.pl-PL.po +30 -0
  1973. package/ts-source/browser-code/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.ts.de-DE.i18n.data.ts +77 -0
  1974. package/ts-source/browser-code/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.ts.de-DE.po +41 -0
  1975. package/ts-source/browser-code/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.ts.en-US.i18n.data.ts +68 -0
  1976. package/ts-source/browser-code/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.ts.en-US.po +41 -0
  1977. package/ts-source/browser-code/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.ts.pl-PL.i18n.data.ts +77 -0
  1978. package/ts-source/browser-code/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.ts.pl-PL.po +41 -0
  1979. package/ts-source/browser-code/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.translation.ts +21 -0
  1980. package/ts-source/browser-code/taon-cms-backoffice/taon-cms-website-features/index.ts +13 -0
  1981. package/ts-source/browser-code/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.constants.ts.de-DE.i18n.data.ts +28 -0
  1982. package/ts-source/browser-code/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.constants.ts.de-DE.po +9 -0
  1983. package/ts-source/browser-code/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.constants.ts.en-US.i18n.data.ts +28 -0
  1984. package/ts-source/browser-code/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.constants.ts.en-US.po +9 -0
  1985. package/ts-source/browser-code/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.constants.ts.pl-PL.i18n.data.ts +28 -0
  1986. package/ts-source/browser-code/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.constants.ts.pl-PL.po +9 -0
  1987. package/ts-source/browser-code/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.controller.ts.de-DE.i18n.data.ts +29 -0
  1988. package/ts-source/browser-code/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.controller.ts.de-DE.po +9 -0
  1989. package/ts-source/browser-code/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.controller.ts.en-US.i18n.data.ts +28 -0
  1990. package/ts-source/browser-code/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.controller.ts.en-US.po +9 -0
  1991. package/ts-source/browser-code/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.controller.ts.pl-PL.i18n.data.ts +29 -0
  1992. package/ts-source/browser-code/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.controller.ts.pl-PL.po +9 -0
  1993. package/ts-source/browser-code/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.translation.ts +21 -0
  1994. package/ts-source/browser-code/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.abstract.context.ts +27 -0
  1995. package/ts-source/browser-code/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.api.service.ts +72 -0
  1996. package/ts-source/browser-code/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.config.service.ts +28 -0
  1997. package/ts-source/browser-code/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.constants.ts +25 -0
  1998. package/ts-source/browser-code/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.controller.ts +59 -0
  1999. package/ts-source/browser-code/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.kv.repository.ts +45 -0
  2000. package/ts-source/browser-code/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.models.ts +23 -0
  2001. package/ts-source/browser-code/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.provider.ts +30 -0
  2002. package/ts-source/browser-code/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.utils.ts +26 -0
  2003. package/ts-source/browser-code/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.validators.ts +26 -0
  2004. package/ts-source/browser-code/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-features.component.html +58 -0
  2005. package/ts-source/browser-code/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-features.component.scss +38 -0
  2006. package/ts-source/browser-code/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-features.component.ts +127 -0
  2007. package/ts-source/browser-code/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-features.models.ts +13 -0
  2008. package/ts-source/browser-code/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-features.routes.ts +21 -0
  2009. package/ts-source/browser-code/taon-cms-comment/i18n/taon-cms-comment.controller.ts.de-DE.i18n.data.ts +145 -0
  2010. package/ts-source/browser-code/taon-cms-comment/i18n/taon-cms-comment.controller.ts.de-DE.po +77 -0
  2011. package/ts-source/browser-code/taon-cms-comment/i18n/taon-cms-comment.controller.ts.en-US.i18n.data.ts +124 -0
  2012. package/ts-source/browser-code/taon-cms-comment/i18n/taon-cms-comment.controller.ts.en-US.po +77 -0
  2013. package/ts-source/browser-code/taon-cms-comment/i18n/taon-cms-comment.controller.ts.pl-PL.i18n.data.ts +145 -0
  2014. package/ts-source/browser-code/taon-cms-comment/i18n/taon-cms-comment.controller.ts.pl-PL.po +77 -0
  2015. package/ts-source/browser-code/taon-cms-comment/i18n/taon-cms-comment.translation.ts +24 -0
  2016. package/ts-source/browser-code/taon-cms-comment/i18n/taon-cms-comments.component.html.de-DE.i18n.data.ts +122 -0
  2017. package/ts-source/browser-code/taon-cms-comment/i18n/taon-cms-comments.component.html.de-DE.po +64 -0
  2018. package/ts-source/browser-code/taon-cms-comment/i18n/taon-cms-comments.component.html.en-US.i18n.data.ts +105 -0
  2019. package/ts-source/browser-code/taon-cms-comment/i18n/taon-cms-comments.component.html.en-US.po +64 -0
  2020. package/ts-source/browser-code/taon-cms-comment/i18n/taon-cms-comments.component.html.pl-PL.i18n.data.ts +122 -0
  2021. package/ts-source/browser-code/taon-cms-comment/i18n/taon-cms-comments.component.html.pl-PL.po +64 -0
  2022. package/ts-source/browser-code/taon-cms-comment/i18n/taon-cms-comments.component.ts.de-DE.i18n.data.ts +53 -0
  2023. package/ts-source/browser-code/taon-cms-comment/i18n/taon-cms-comments.component.ts.de-DE.po +25 -0
  2024. package/ts-source/browser-code/taon-cms-comment/i18n/taon-cms-comments.component.ts.en-US.i18n.data.ts +48 -0
  2025. package/ts-source/browser-code/taon-cms-comment/i18n/taon-cms-comments.component.ts.en-US.po +25 -0
  2026. package/ts-source/browser-code/taon-cms-comment/i18n/taon-cms-comments.component.ts.pl-PL.i18n.data.ts +53 -0
  2027. package/ts-source/browser-code/taon-cms-comment/i18n/taon-cms-comments.component.ts.pl-PL.po +25 -0
  2028. package/ts-source/browser-code/taon-cms-comment/index.ts +5 -0
  2029. package/ts-source/browser-code/taon-cms-comment/taon-cms-comment-api.service.ts +97 -4
  2030. package/ts-source/browser-code/taon-cms-comment/taon-cms-comment-blocked-phrase.entity.ts +23 -0
  2031. package/ts-source/browser-code/taon-cms-comment/taon-cms-comment-blocked-user.entity.ts +22 -0
  2032. package/ts-source/browser-code/taon-cms-comment/taon-cms-comment-spam-report.entity.ts +23 -0
  2033. package/ts-source/browser-code/taon-cms-comment/taon-cms-comment-vote.entity.ts +24 -0
  2034. package/ts-source/browser-code/taon-cms-comment/taon-cms-comment.abstract.context.ts +11 -1
  2035. package/ts-source/browser-code/taon-cms-comment/taon-cms-comment.controller.ts +134 -8
  2036. package/ts-source/browser-code/taon-cms-comment/taon-cms-comment.entity.ts +1 -1
  2037. package/ts-source/browser-code/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.component.ts.de-DE.i18n.data.ts +19 -0
  2038. package/ts-source/browser-code/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.component.ts.de-DE.po +5 -0
  2039. package/ts-source/browser-code/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.component.ts.en-US.i18n.data.ts +19 -0
  2040. package/ts-source/browser-code/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.component.ts.en-US.po +5 -0
  2041. package/ts-source/browser-code/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.component.ts.pl-PL.i18n.data.ts +19 -0
  2042. package/ts-source/browser-code/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.component.ts.pl-PL.po +5 -0
  2043. package/ts-source/browser-code/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.routes.ts.de-DE.i18n.data.ts +41 -0
  2044. package/ts-source/browser-code/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.routes.ts.de-DE.po +17 -0
  2045. package/ts-source/browser-code/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.routes.ts.en-US.i18n.data.ts +38 -0
  2046. package/ts-source/browser-code/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.routes.ts.en-US.po +17 -0
  2047. package/ts-source/browser-code/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.routes.ts.pl-PL.i18n.data.ts +41 -0
  2048. package/ts-source/browser-code/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.routes.ts.pl-PL.po +17 -0
  2049. package/ts-source/browser-code/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.translation.ts +21 -0
  2050. package/ts-source/browser-code/taon-cms-comment/taon-cms-comments-backoffice/index.ts +13 -0
  2051. package/ts-source/browser-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.component.html.de-DE.i18n.data.ts +118 -0
  2052. package/ts-source/browser-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.component.html.de-DE.po +66 -0
  2053. package/ts-source/browser-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.component.html.en-US.i18n.data.ts +102 -0
  2054. package/ts-source/browser-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.component.html.en-US.po +66 -0
  2055. package/ts-source/browser-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.component.html.pl-PL.i18n.data.ts +118 -0
  2056. package/ts-source/browser-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.component.html.pl-PL.po +66 -0
  2057. package/ts-source/browser-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.component.ts.de-DE.i18n.data.ts +77 -0
  2058. package/ts-source/browser-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.component.ts.de-DE.po +41 -0
  2059. package/ts-source/browser-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.component.ts.en-US.i18n.data.ts +68 -0
  2060. package/ts-source/browser-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.component.ts.en-US.po +41 -0
  2061. package/ts-source/browser-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.component.ts.pl-PL.i18n.data.ts +77 -0
  2062. package/ts-source/browser-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.component.ts.pl-PL.po +41 -0
  2063. package/ts-source/browser-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.translation.ts +21 -0
  2064. package/ts-source/browser-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/index.ts +13 -0
  2065. package/ts-source/browser-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/taon-cms-comments-all-preview-backoffice.component.html +68 -0
  2066. package/ts-source/browser-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/taon-cms-comments-all-preview-backoffice.component.scss +14 -0
  2067. package/ts-source/browser-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/taon-cms-comments-all-preview-backoffice.component.ts +109 -0
  2068. package/ts-source/browser-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/taon-cms-comments-all-preview-backoffice.models.ts +13 -0
  2069. package/ts-source/browser-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/taon-cms-comments-all-preview-backoffice.routes.ts +21 -0
  2070. package/ts-source/browser-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-backoffice.component.html +14 -0
  2071. package/ts-source/browser-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-backoffice.component.scss +14 -0
  2072. package/ts-source/browser-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-backoffice.component.ts +28 -0
  2073. package/ts-source/browser-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-backoffice.models.ts +13 -0
  2074. package/ts-source/browser-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-backoffice.routes.ts +51 -0
  2075. package/ts-source/browser-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.component.html.de-DE.i18n.data.ts +94 -0
  2076. package/ts-source/browser-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.component.html.de-DE.po +50 -0
  2077. package/ts-source/browser-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.component.html.en-US.i18n.data.ts +82 -0
  2078. package/ts-source/browser-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.component.html.en-US.po +50 -0
  2079. package/ts-source/browser-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.component.html.pl-PL.i18n.data.ts +94 -0
  2080. package/ts-source/browser-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.component.html.pl-PL.po +50 -0
  2081. package/ts-source/browser-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.component.ts.de-DE.i18n.data.ts +41 -0
  2082. package/ts-source/browser-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.component.ts.de-DE.po +17 -0
  2083. package/ts-source/browser-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.component.ts.en-US.i18n.data.ts +38 -0
  2084. package/ts-source/browser-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.component.ts.en-US.po +17 -0
  2085. package/ts-source/browser-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.component.ts.pl-PL.i18n.data.ts +41 -0
  2086. package/ts-source/browser-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.component.ts.pl-PL.po +17 -0
  2087. package/ts-source/browser-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.translation.ts +21 -0
  2088. package/ts-source/browser-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/index.ts +13 -0
  2089. package/ts-source/browser-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/taon-cms-comments-blocked-users.component.html +48 -0
  2090. package/ts-source/browser-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/taon-cms-comments-blocked-users.component.scss +14 -0
  2091. package/ts-source/browser-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/taon-cms-comments-blocked-users.component.ts +94 -0
  2092. package/ts-source/browser-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/taon-cms-comments-blocked-users.models.ts +13 -0
  2093. package/ts-source/browser-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/taon-cms-comments-blocked-users.routes.ts +21 -0
  2094. package/ts-source/browser-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.component.html.de-DE.i18n.data.ts +65 -0
  2095. package/ts-source/browser-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.component.html.de-DE.po +33 -0
  2096. package/ts-source/browser-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.component.html.en-US.i18n.data.ts +58 -0
  2097. package/ts-source/browser-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.component.html.en-US.po +33 -0
  2098. package/ts-source/browser-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.component.html.pl-PL.i18n.data.ts +65 -0
  2099. package/ts-source/browser-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.component.html.pl-PL.po +33 -0
  2100. package/ts-source/browser-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.component.ts.de-DE.i18n.data.ts +41 -0
  2101. package/ts-source/browser-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.component.ts.de-DE.po +17 -0
  2102. package/ts-source/browser-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.component.ts.en-US.i18n.data.ts +38 -0
  2103. package/ts-source/browser-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.component.ts.en-US.po +17 -0
  2104. package/ts-source/browser-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.component.ts.pl-PL.i18n.data.ts +41 -0
  2105. package/ts-source/browser-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.component.ts.pl-PL.po +17 -0
  2106. package/ts-source/browser-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.translation.ts +21 -0
  2107. package/ts-source/browser-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/index.ts +13 -0
  2108. package/ts-source/browser-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/taon-cms-comments-filters-settings.component.html +38 -0
  2109. package/ts-source/browser-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/taon-cms-comments-filters-settings.component.scss +14 -0
  2110. package/ts-source/browser-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/taon-cms-comments-filters-settings.component.ts +82 -0
  2111. package/ts-source/browser-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/taon-cms-comments-filters-settings.models.ts +13 -0
  2112. package/ts-source/browser-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/taon-cms-comments-filters-settings.routes.ts +21 -0
  2113. package/ts-source/browser-code/taon-cms-comment/taon-cms-comments.component.html +108 -0
  2114. package/ts-source/browser-code/taon-cms-comment/taon-cms-comments.component.scss +39 -0
  2115. package/ts-source/browser-code/taon-cms-comment/taon-cms-comments.component.ts +141 -0
  2116. package/ts-source/browser-code/taon-cms-content/i18n/taon-cms-content-storage.controller.ts.de-DE.i18n.data.ts +1 -1
  2117. package/ts-source/browser-code/taon-cms-content/i18n/taon-cms-content-storage.controller.ts.de-DE.po +1 -1
  2118. package/ts-source/browser-code/taon-cms-content/i18n/taon-cms-content-storage.controller.ts.en-US.i18n.data.ts +1 -1
  2119. package/ts-source/browser-code/taon-cms-content/i18n/taon-cms-content-storage.controller.ts.en-US.po +1 -1
  2120. package/ts-source/browser-code/taon-cms-content/i18n/taon-cms-content-storage.controller.ts.pl-PL.i18n.data.ts +1 -1
  2121. package/ts-source/browser-code/taon-cms-content/i18n/taon-cms-content-storage.controller.ts.pl-PL.po +1 -1
  2122. package/ts-source/browser-code/taon-cms-content/i18n/taon-cms-content.controller.ts.de-DE.i18n.data.ts +28 -6
  2123. package/ts-source/browser-code/taon-cms-content/i18n/taon-cms-content.controller.ts.de-DE.po +16 -6
  2124. package/ts-source/browser-code/taon-cms-content/i18n/taon-cms-content.controller.ts.en-US.i18n.data.ts +24 -6
  2125. package/ts-source/browser-code/taon-cms-content/i18n/taon-cms-content.controller.ts.en-US.po +16 -6
  2126. package/ts-source/browser-code/taon-cms-content/i18n/taon-cms-content.controller.ts.pl-PL.i18n.data.ts +28 -6
  2127. package/ts-source/browser-code/taon-cms-content/i18n/taon-cms-content.controller.ts.pl-PL.po +16 -6
  2128. package/ts-source/browser-code/taon-cms-content/taon-cms-content-api.service.ts +60 -3
  2129. package/ts-source/browser-code/taon-cms-content/taon-cms-content-storage.controller.ts +16 -1
  2130. package/ts-source/browser-code/taon-cms-content/taon-cms-content.controller.ts +88 -2
  2131. package/ts-source/browser-code/taon-cms-content/taon-cms-content.entity.ts +3 -0
  2132. package/ts-source/browser-code/taon-cms-content/taon-cms-content.models.ts +39 -0
  2133. package/ts-source/browser-code/taon-cms-content/taon-cms-content.repository.ts +82 -4
  2134. package/ts-source/browser-code/taon-cms-content/taon-cms-content.utils.ts +6 -0
  2135. package/ts-source/browser-code/taon-cms-content/taon-cms-content.validation.ts +4 -0
  2136. package/ts-source/browser-code/taon-cms-content-revision/taon-cms-content-revision.repository.ts +4 -0
  2137. package/ts-source/browser-code/taon-cms-taxonomy-backoffice/i18n/taon-cms-taxonomy-quick-create-dialog.component.ts.de-DE.i18n.data.ts +14 -7
  2138. package/ts-source/browser-code/taon-cms-taxonomy-backoffice/i18n/taon-cms-taxonomy-quick-create-dialog.component.ts.de-DE.po +7 -7
  2139. package/ts-source/browser-code/taon-cms-taxonomy-backoffice/i18n/taon-cms-taxonomy-quick-create-dialog.component.ts.pl-PL.i18n.data.ts +14 -7
  2140. package/ts-source/browser-code/taon-cms-taxonomy-backoffice/i18n/taon-cms-taxonomy-quick-create-dialog.component.ts.pl-PL.po +7 -7
  2141. package/ts-source/browser-code/taon-cms.abstract.context.ts +2 -0
  2142. package/ts-source/browser-code/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.html.de-DE.i18n.data.ts +27 -16
  2143. package/ts-source/browser-code/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.html.de-DE.po +18 -18
  2144. package/ts-source/browser-code/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.html.en-US.i18n.data.ts +11 -11
  2145. package/ts-source/browser-code/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.html.en-US.po +10 -10
  2146. package/ts-source/browser-code/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.html.pl-PL.i18n.data.ts +27 -16
  2147. package/ts-source/browser-code/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.html.pl-PL.po +18 -18
  2148. package/ts-source/browser-code/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.ts.de-DE.i18n.data.ts +8 -4
  2149. package/ts-source/browser-code/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.ts.de-DE.po +4 -4
  2150. package/ts-source/browser-code/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.ts.pl-PL.i18n.data.ts +8 -4
  2151. package/ts-source/browser-code/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.ts.pl-PL.po +4 -4
  2152. package/ts-source/browser-code/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.html.de-DE.i18n.data.ts +22 -5
  2153. package/ts-source/browser-code/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.html.de-DE.po +12 -4
  2154. package/ts-source/browser-code/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.html.en-US.i18n.data.ts +10 -0
  2155. package/ts-source/browser-code/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.html.en-US.po +8 -0
  2156. package/ts-source/browser-code/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.html.pl-PL.i18n.data.ts +22 -5
  2157. package/ts-source/browser-code/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.html.pl-PL.po +12 -4
  2158. package/ts-source/browser-code/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.ts.de-DE.i18n.data.ts +16 -5
  2159. package/ts-source/browser-code/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.ts.de-DE.po +14 -10
  2160. package/ts-source/browser-code/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.ts.en-US.i18n.data.ts +10 -5
  2161. package/ts-source/browser-code/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.ts.en-US.po +9 -5
  2162. package/ts-source/browser-code/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.ts.pl-PL.i18n.data.ts +16 -5
  2163. package/ts-source/browser-code/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.ts.pl-PL.po +14 -10
  2164. package/ts-source/browser-code/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-cover.component.ts.de-DE.i18n.data.ts +2 -1
  2165. package/ts-source/browser-code/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-cover.component.ts.de-DE.po +1 -1
  2166. package/ts-source/browser-code/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-cover.component.ts.pl-PL.i18n.data.ts +2 -1
  2167. package/ts-source/browser-code/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-cover.component.ts.pl-PL.po +1 -1
  2168. package/ts-source/browser-code/taon-posts/taon-cms-course-backoffice/taon-cms-course-backoffice.component.html +3 -2
  2169. package/ts-source/browser-code/taon-posts/taon-cms-course-backoffice/taon-cms-course-contents.component.html +23 -0
  2170. package/ts-source/browser-code/taon-posts/taon-cms-course-backoffice/taon-cms-course-contents.component.ts +22 -1
  2171. package/ts-source/browser-code/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.html.de-DE.i18n.data.ts +35 -0
  2172. package/ts-source/browser-code/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.html.de-DE.po +13 -0
  2173. package/ts-source/browser-code/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.html.en-US.i18n.data.ts +33 -0
  2174. package/ts-source/browser-code/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.html.en-US.po +13 -0
  2175. package/ts-source/browser-code/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.html.pl-PL.i18n.data.ts +35 -0
  2176. package/ts-source/browser-code/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.html.pl-PL.po +13 -0
  2177. package/ts-source/browser-code/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.ts.de-DE.i18n.data.ts +19 -0
  2178. package/ts-source/browser-code/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.ts.de-DE.po +5 -0
  2179. package/ts-source/browser-code/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.ts.en-US.i18n.data.ts +19 -0
  2180. package/ts-source/browser-code/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.ts.en-US.po +5 -0
  2181. package/ts-source/browser-code/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.ts.pl-PL.i18n.data.ts +19 -0
  2182. package/ts-source/browser-code/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.ts.pl-PL.po +5 -0
  2183. package/ts-source/browser-code/taon-posts/taon-cms-post/i18n/taon-cms-post-thumbnail.component.ts.de-DE.i18n.data.ts +29 -0
  2184. package/ts-source/browser-code/taon-posts/taon-cms-post/i18n/taon-cms-post-thumbnail.component.ts.de-DE.po +9 -0
  2185. package/ts-source/browser-code/taon-posts/taon-cms-post/i18n/taon-cms-post-thumbnail.component.ts.en-US.i18n.data.ts +28 -0
  2186. package/ts-source/browser-code/taon-posts/taon-cms-post/i18n/taon-cms-post-thumbnail.component.ts.en-US.po +9 -0
  2187. package/ts-source/browser-code/taon-posts/taon-cms-post/i18n/taon-cms-post-thumbnail.component.ts.pl-PL.i18n.data.ts +29 -0
  2188. package/ts-source/browser-code/taon-posts/taon-cms-post/i18n/taon-cms-post-thumbnail.component.ts.pl-PL.po +9 -0
  2189. package/ts-source/browser-code/taon-posts/taon-cms-post/i18n/taon-cms-post.component.html.de-DE.i18n.data.ts +544 -93
  2190. package/ts-source/browser-code/taon-posts/taon-cms-post/i18n/taon-cms-post.component.html.de-DE.po +318 -104
  2191. package/ts-source/browser-code/taon-posts/taon-cms-post/i18n/taon-cms-post.component.html.en-US.i18n.data.ts +464 -91
  2192. package/ts-source/browser-code/taon-posts/taon-cms-post/i18n/taon-cms-post.component.html.en-US.po +301 -87
  2193. package/ts-source/browser-code/taon-posts/taon-cms-post/i18n/taon-cms-post.component.html.pl-PL.i18n.data.ts +545 -92
  2194. package/ts-source/browser-code/taon-posts/taon-cms-post/i18n/taon-cms-post.component.html.pl-PL.po +317 -103
  2195. package/ts-source/browser-code/taon-posts/taon-cms-post/i18n/taon-cms-post.component.ts.de-DE.i18n.data.ts +235 -40
  2196. package/ts-source/browser-code/taon-posts/taon-cms-post/i18n/taon-cms-post.component.ts.de-DE.po +168 -43
  2197. package/ts-source/browser-code/taon-posts/taon-cms-post/i18n/taon-cms-post.component.ts.en-US.i18n.data.ts +198 -40
  2198. package/ts-source/browser-code/taon-posts/taon-cms-post/i18n/taon-cms-post.component.ts.en-US.po +164 -39
  2199. package/ts-source/browser-code/taon-posts/taon-cms-post/i18n/taon-cms-post.component.ts.pl-PL.i18n.data.ts +238 -43
  2200. package/ts-source/browser-code/taon-posts/taon-cms-post/i18n/taon-cms-post.component.ts.pl-PL.po +170 -45
  2201. package/ts-source/browser-code/taon-posts/taon-cms-post/i18n/taon-cms-post.translation.ts +10 -1
  2202. package/ts-source/browser-code/taon-posts/taon-cms-post/taon-cms-document-extractor.ts +45 -0
  2203. package/ts-source/browser-code/taon-posts/taon-cms-post/taon-cms-post-choice-dialog.component.html +31 -0
  2204. package/ts-source/browser-code/taon-posts/taon-cms-post/taon-cms-post-choice-dialog.component.ts +46 -0
  2205. package/ts-source/browser-code/taon-posts/taon-cms-post/taon-cms-post-thumbnail.component.ts +71 -0
  2206. package/ts-source/browser-code/taon-posts/taon-cms-post/taon-cms-post.component.html +1115 -603
  2207. package/ts-source/browser-code/taon-posts/taon-cms-post/taon-cms-post.component.scss +115 -0
  2208. package/ts-source/browser-code/taon-posts/taon-cms-post/taon-cms-post.component.ts +882 -53
  2209. package/ts-source/browser-code/taon-posts/taon-cms-post-details-page/i18n/taon-cms-post-details-page.component.ts.de-DE.i18n.data.ts +2 -1
  2210. package/ts-source/browser-code/taon-posts/taon-cms-post-details-page/i18n/taon-cms-post-details-page.component.ts.de-DE.po +1 -1
  2211. package/ts-source/browser-code/taon-posts/taon-cms-post-details-page/i18n/taon-cms-post-details-page.component.ts.pl-PL.i18n.data.ts +2 -1
  2212. package/ts-source/browser-code/taon-posts/taon-cms-post-details-page/i18n/taon-cms-post-details-page.component.ts.pl-PL.po +1 -1
  2213. package/ts-source/browser-code/taon-posts/taon-cms-post-details-page/taon-cms-post-details-page.component.ts +1 -0
  2214. package/ts-source/browser-code/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-post-table-actions.directive.ts.de-DE.i18n.data.ts +71 -15
  2215. package/ts-source/browser-code/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-post-table-actions.directive.ts.de-DE.po +46 -23
  2216. package/ts-source/browser-code/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-post-table-actions.directive.ts.en-US.i18n.data.ts +52 -15
  2217. package/ts-source/browser-code/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-post-table-actions.directive.ts.en-US.po +36 -13
  2218. package/ts-source/browser-code/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-post-table-actions.directive.ts.pl-PL.i18n.data.ts +71 -15
  2219. package/ts-source/browser-code/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-post-table-actions.directive.ts.pl-PL.po +46 -23
  2220. package/ts-source/browser-code/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.html.de-DE.i18n.data.ts +19 -12
  2221. package/ts-source/browser-code/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.html.de-DE.po +11 -11
  2222. package/ts-source/browser-code/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.html.en-US.i18n.data.ts +5 -5
  2223. package/ts-source/browser-code/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.html.en-US.po +4 -4
  2224. package/ts-source/browser-code/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.html.pl-PL.i18n.data.ts +19 -12
  2225. package/ts-source/browser-code/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.html.pl-PL.po +11 -11
  2226. package/ts-source/browser-code/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.ts.de-DE.i18n.data.ts +2 -1
  2227. package/ts-source/browser-code/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.ts.de-DE.po +1 -1
  2228. package/ts-source/browser-code/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.ts.pl-PL.i18n.data.ts +2 -1
  2229. package/ts-source/browser-code/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.ts.pl-PL.po +1 -1
  2230. package/ts-source/browser-code/taon-posts/taon-cms-posts-backoffice/taon-cms-post-table-actions.directive.ts +86 -18
  2231. package/ts-source/browser-code/taon-posts/taon-cms-revision-chooser/i18n/taon-cms-revision-chooser.component.html.de-DE.i18n.data.ts +32 -17
  2232. package/ts-source/browser-code/taon-posts/taon-cms-revision-chooser/i18n/taon-cms-revision-chooser.component.html.de-DE.po +14 -8
  2233. package/ts-source/browser-code/taon-posts/taon-cms-revision-chooser/i18n/taon-cms-revision-chooser.component.html.en-US.i18n.data.ts +32 -17
  2234. package/ts-source/browser-code/taon-posts/taon-cms-revision-chooser/i18n/taon-cms-revision-chooser.component.html.en-US.po +14 -8
  2235. package/ts-source/browser-code/taon-posts/taon-cms-revision-chooser/i18n/taon-cms-revision-chooser.component.html.pl-PL.i18n.data.ts +32 -17
  2236. package/ts-source/browser-code/taon-posts/taon-cms-revision-chooser/i18n/taon-cms-revision-chooser.component.html.pl-PL.po +14 -8
  2237. package/ts-source/browser-code/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.html.de-DE.i18n.data.ts +16 -10
  2238. package/ts-source/browser-code/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.html.de-DE.po +8 -4
  2239. package/ts-source/browser-code/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.html.en-US.i18n.data.ts +15 -10
  2240. package/ts-source/browser-code/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.html.en-US.po +8 -4
  2241. package/ts-source/browser-code/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.html.pl-PL.i18n.data.ts +16 -10
  2242. package/ts-source/browser-code/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.html.pl-PL.po +8 -4
  2243. package/ts-source/browser-code/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.ts.de-DE.i18n.data.ts +2 -2
  2244. package/ts-source/browser-code/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.ts.de-DE.po +2 -2
  2245. package/ts-source/browser-code/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.ts.en-US.i18n.data.ts +2 -2
  2246. package/ts-source/browser-code/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.ts.en-US.po +2 -2
  2247. package/ts-source/browser-code/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.ts.pl-PL.i18n.data.ts +2 -2
  2248. package/ts-source/browser-code/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.ts.pl-PL.po +2 -2
  2249. package/ts-source/browser-code/taon-posts/taon-related-post-chooser/taon-related-post-chooser.component.html +3 -3
  2250. package/ts-source/browser-code/taon-posts/taon-related-post-chooser/taon-related-post-chooser.component.ts +8 -1
  2251. package/ts-source/browser-code-prod/build-info._auto-generated_.ts +1 -1
  2252. package/ts-source/browser-code-prod/index._auto-generated_.ts +33 -0
  2253. package/ts-source/browser-code-prod/migrations/1793664000000_postVersionLinks.split-namespaces.json +4 -0
  2254. package/ts-source/browser-code-prod/migrations/1793664000000_postVersionLinks.ts +40 -0
  2255. package/ts-source/browser-code-prod/migrations/migrations_index._auto-generated_.ts +3 -0
  2256. package/ts-source/browser-code-prod/taon-cms-assets-backoffice/i18n/taon-cms-assets-backoffice.translation.ts +1 -1
  2257. package/ts-source/browser-code-prod/taon-cms-assets-backoffice/taon-cms-asset-preview.component.html +1 -1
  2258. package/ts-source/browser-code-prod/taon-cms-backoffice/i18n/taon-cms-backoffice.component.html.de-DE.i18n.data.ts +5 -0
  2259. package/ts-source/browser-code-prod/taon-cms-backoffice/i18n/taon-cms-backoffice.component.html.de-DE.po +1 -0
  2260. package/ts-source/browser-code-prod/taon-cms-backoffice/i18n/taon-cms-backoffice.component.html.en-US.i18n.data.ts +5 -0
  2261. package/ts-source/browser-code-prod/taon-cms-backoffice/i18n/taon-cms-backoffice.component.html.en-US.po +1 -0
  2262. package/ts-source/browser-code-prod/taon-cms-backoffice/i18n/taon-cms-backoffice.component.html.pl-PL.i18n.data.ts +5 -0
  2263. package/ts-source/browser-code-prod/taon-cms-backoffice/i18n/taon-cms-backoffice.component.html.pl-PL.po +1 -0
  2264. package/ts-source/browser-code-prod/taon-cms-backoffice/i18n/taon-cms-backoffice.routes.ts.de-DE.i18n.data.ts +18 -5
  2265. package/ts-source/browser-code-prod/taon-cms-backoffice/i18n/taon-cms-backoffice.routes.ts.de-DE.po +13 -5
  2266. package/ts-source/browser-code-prod/taon-cms-backoffice/i18n/taon-cms-backoffice.routes.ts.en-US.i18n.data.ts +15 -5
  2267. package/ts-source/browser-code-prod/taon-cms-backoffice/i18n/taon-cms-backoffice.routes.ts.en-US.po +12 -4
  2268. package/ts-source/browser-code-prod/taon-cms-backoffice/i18n/taon-cms-backoffice.routes.ts.pl-PL.i18n.data.ts +17 -5
  2269. package/ts-source/browser-code-prod/taon-cms-backoffice/i18n/taon-cms-backoffice.routes.ts.pl-PL.po +12 -4
  2270. package/ts-source/browser-code-prod/taon-cms-backoffice/i18n/taon-cms-backoffice.translation.ts +1 -1
  2271. package/ts-source/browser-code-prod/taon-cms-backoffice/taon-cms-backoffice.routes.ts +20 -0
  2272. package/ts-source/browser-code-prod/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.html.de-DE.i18n.data.ts +64 -0
  2273. package/ts-source/browser-code-prod/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.html.de-DE.po +30 -0
  2274. package/ts-source/browser-code-prod/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.html.en-US.i18n.data.ts +57 -0
  2275. package/ts-source/browser-code-prod/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.html.en-US.po +30 -0
  2276. package/ts-source/browser-code-prod/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.html.pl-PL.i18n.data.ts +64 -0
  2277. package/ts-source/browser-code-prod/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.html.pl-PL.po +30 -0
  2278. package/ts-source/browser-code-prod/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.ts.de-DE.i18n.data.ts +77 -0
  2279. package/ts-source/browser-code-prod/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.ts.de-DE.po +41 -0
  2280. package/ts-source/browser-code-prod/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.ts.en-US.i18n.data.ts +68 -0
  2281. package/ts-source/browser-code-prod/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.ts.en-US.po +41 -0
  2282. package/ts-source/browser-code-prod/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.ts.pl-PL.i18n.data.ts +77 -0
  2283. package/ts-source/browser-code-prod/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.ts.pl-PL.po +41 -0
  2284. package/ts-source/browser-code-prod/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.translation.split-namespaces.json +4 -0
  2285. package/ts-source/browser-code-prod/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.translation.ts +21 -0
  2286. package/ts-source/browser-code-prod/taon-cms-backoffice/taon-cms-website-features/index.split-namespaces.json +4 -0
  2287. package/ts-source/browser-code-prod/taon-cms-backoffice/taon-cms-website-features/index.ts +13 -0
  2288. package/ts-source/browser-code-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.constants.ts.de-DE.i18n.data.ts +28 -0
  2289. package/ts-source/browser-code-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.constants.ts.de-DE.po +9 -0
  2290. package/ts-source/browser-code-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.constants.ts.en-US.i18n.data.ts +28 -0
  2291. package/ts-source/browser-code-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.constants.ts.en-US.po +9 -0
  2292. package/ts-source/browser-code-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.constants.ts.pl-PL.i18n.data.ts +28 -0
  2293. package/ts-source/browser-code-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.constants.ts.pl-PL.po +9 -0
  2294. package/ts-source/browser-code-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.controller.ts.de-DE.i18n.data.ts +29 -0
  2295. package/ts-source/browser-code-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.controller.ts.de-DE.po +9 -0
  2296. package/ts-source/browser-code-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.controller.ts.en-US.i18n.data.ts +28 -0
  2297. package/ts-source/browser-code-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.controller.ts.en-US.po +9 -0
  2298. package/ts-source/browser-code-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.controller.ts.pl-PL.i18n.data.ts +29 -0
  2299. package/ts-source/browser-code-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.controller.ts.pl-PL.po +9 -0
  2300. package/ts-source/browser-code-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.translation.split-namespaces.json +4 -0
  2301. package/ts-source/browser-code-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.translation.ts +21 -0
  2302. package/ts-source/browser-code-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.abstract.context.split-namespaces.json +4 -0
  2303. package/ts-source/browser-code-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.abstract.context.ts +27 -0
  2304. package/ts-source/browser-code-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.api.service.split-namespaces.json +4 -0
  2305. package/ts-source/browser-code-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.api.service.ts +72 -0
  2306. package/ts-source/browser-code-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.config.service.split-namespaces.json +4 -0
  2307. package/ts-source/browser-code-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.config.service.ts +28 -0
  2308. package/ts-source/browser-code-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.constants.split-namespaces.json +4 -0
  2309. package/ts-source/browser-code-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.constants.ts +25 -0
  2310. package/ts-source/browser-code-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.controller.split-namespaces.json +4 -0
  2311. package/ts-source/browser-code-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.controller.ts +59 -0
  2312. package/ts-source/browser-code-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.kv.repository.split-namespaces.json +4 -0
  2313. package/ts-source/browser-code-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.kv.repository.ts +45 -0
  2314. package/ts-source/browser-code-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.models.split-namespaces.json +12 -0
  2315. package/ts-source/browser-code-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.models.ts +21 -0
  2316. package/ts-source/browser-code-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.provider.split-namespaces.json +4 -0
  2317. package/ts-source/browser-code-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.provider.ts +30 -0
  2318. package/ts-source/browser-code-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.utils.split-namespaces.json +12 -0
  2319. package/ts-source/browser-code-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.utils.ts +24 -0
  2320. package/ts-source/browser-code-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.validators.split-namespaces.json +10 -0
  2321. package/ts-source/browser-code-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.validators.ts +24 -0
  2322. package/ts-source/browser-code-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-features.component.html +58 -0
  2323. package/ts-source/browser-code-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-features.component.scss +38 -0
  2324. package/ts-source/browser-code-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-features.component.split-namespaces.json +4 -0
  2325. package/ts-source/browser-code-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-features.component.ts +127 -0
  2326. package/ts-source/browser-code-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-features.models.split-namespaces.json +4 -0
  2327. package/ts-source/browser-code-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-features.models.ts +12 -0
  2328. package/ts-source/browser-code-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-features.routes.split-namespaces.json +4 -0
  2329. package/ts-source/browser-code-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-features.routes.ts +21 -0
  2330. package/ts-source/browser-code-prod/taon-cms-category/i18n/taon-cms-category.translation.ts +1 -1
  2331. package/ts-source/browser-code-prod/taon-cms-comment/i18n/taon-cms-comment.controller.ts.de-DE.i18n.data.ts +145 -0
  2332. package/ts-source/browser-code-prod/taon-cms-comment/i18n/taon-cms-comment.controller.ts.de-DE.po +77 -0
  2333. package/ts-source/browser-code-prod/taon-cms-comment/i18n/taon-cms-comment.controller.ts.en-US.i18n.data.ts +124 -0
  2334. package/ts-source/browser-code-prod/taon-cms-comment/i18n/taon-cms-comment.controller.ts.en-US.po +77 -0
  2335. package/ts-source/browser-code-prod/taon-cms-comment/i18n/taon-cms-comment.controller.ts.pl-PL.i18n.data.ts +145 -0
  2336. package/ts-source/browser-code-prod/taon-cms-comment/i18n/taon-cms-comment.controller.ts.pl-PL.po +77 -0
  2337. package/ts-source/browser-code-prod/taon-cms-comment/i18n/taon-cms-comment.translation.split-namespaces.json +4 -0
  2338. package/ts-source/browser-code-prod/taon-cms-comment/i18n/taon-cms-comment.translation.ts +24 -0
  2339. package/ts-source/browser-code-prod/taon-cms-comment/i18n/taon-cms-comments.component.html.de-DE.i18n.data.ts +122 -0
  2340. package/ts-source/browser-code-prod/taon-cms-comment/i18n/taon-cms-comments.component.html.de-DE.po +64 -0
  2341. package/ts-source/browser-code-prod/taon-cms-comment/i18n/taon-cms-comments.component.html.en-US.i18n.data.ts +105 -0
  2342. package/ts-source/browser-code-prod/taon-cms-comment/i18n/taon-cms-comments.component.html.en-US.po +64 -0
  2343. package/ts-source/browser-code-prod/taon-cms-comment/i18n/taon-cms-comments.component.html.pl-PL.i18n.data.ts +122 -0
  2344. package/ts-source/browser-code-prod/taon-cms-comment/i18n/taon-cms-comments.component.html.pl-PL.po +64 -0
  2345. package/ts-source/browser-code-prod/taon-cms-comment/i18n/taon-cms-comments.component.ts.de-DE.i18n.data.ts +53 -0
  2346. package/ts-source/browser-code-prod/taon-cms-comment/i18n/taon-cms-comments.component.ts.de-DE.po +25 -0
  2347. package/ts-source/browser-code-prod/taon-cms-comment/i18n/taon-cms-comments.component.ts.en-US.i18n.data.ts +48 -0
  2348. package/ts-source/browser-code-prod/taon-cms-comment/i18n/taon-cms-comments.component.ts.en-US.po +25 -0
  2349. package/ts-source/browser-code-prod/taon-cms-comment/i18n/taon-cms-comments.component.ts.pl-PL.i18n.data.ts +53 -0
  2350. package/ts-source/browser-code-prod/taon-cms-comment/i18n/taon-cms-comments.component.ts.pl-PL.po +25 -0
  2351. package/ts-source/browser-code-prod/taon-cms-comment/index.ts +5 -0
  2352. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comment-api.service.ts +97 -4
  2353. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comment-blocked-phrase.entity.split-namespaces.json +4 -0
  2354. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comment-blocked-phrase.entity.ts +23 -0
  2355. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comment-blocked-user.entity.split-namespaces.json +4 -0
  2356. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comment-blocked-user.entity.ts +22 -0
  2357. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comment-spam-report.entity.split-namespaces.json +4 -0
  2358. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comment-spam-report.entity.ts +23 -0
  2359. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comment-vote.entity.split-namespaces.json +4 -0
  2360. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comment-vote.entity.ts +24 -0
  2361. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comment.abstract.context.ts +11 -1
  2362. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comment.controller.ts +134 -8
  2363. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comment.entity.ts +1 -1
  2364. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.component.ts.de-DE.i18n.data.ts +19 -0
  2365. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.component.ts.de-DE.po +5 -0
  2366. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.component.ts.en-US.i18n.data.ts +19 -0
  2367. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.component.ts.en-US.po +5 -0
  2368. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.component.ts.pl-PL.i18n.data.ts +19 -0
  2369. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.component.ts.pl-PL.po +5 -0
  2370. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.routes.ts.de-DE.i18n.data.ts +41 -0
  2371. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.routes.ts.de-DE.po +17 -0
  2372. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.routes.ts.en-US.i18n.data.ts +38 -0
  2373. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.routes.ts.en-US.po +17 -0
  2374. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.routes.ts.pl-PL.i18n.data.ts +41 -0
  2375. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.routes.ts.pl-PL.po +17 -0
  2376. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.translation.split-namespaces.json +4 -0
  2377. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.translation.ts +21 -0
  2378. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/index.split-namespaces.json +4 -0
  2379. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/index.ts +13 -0
  2380. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.component.html.de-DE.i18n.data.ts +118 -0
  2381. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.component.html.de-DE.po +66 -0
  2382. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.component.html.en-US.i18n.data.ts +102 -0
  2383. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.component.html.en-US.po +66 -0
  2384. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.component.html.pl-PL.i18n.data.ts +118 -0
  2385. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.component.html.pl-PL.po +66 -0
  2386. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.component.ts.de-DE.i18n.data.ts +77 -0
  2387. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.component.ts.de-DE.po +41 -0
  2388. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.component.ts.en-US.i18n.data.ts +68 -0
  2389. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.component.ts.en-US.po +41 -0
  2390. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.component.ts.pl-PL.i18n.data.ts +77 -0
  2391. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.component.ts.pl-PL.po +41 -0
  2392. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.translation.split-namespaces.json +4 -0
  2393. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.translation.ts +21 -0
  2394. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/index.split-namespaces.json +4 -0
  2395. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/index.ts +13 -0
  2396. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/taon-cms-comments-all-preview-backoffice.component.html +68 -0
  2397. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/taon-cms-comments-all-preview-backoffice.component.scss +14 -0
  2398. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/taon-cms-comments-all-preview-backoffice.component.split-namespaces.json +4 -0
  2399. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/taon-cms-comments-all-preview-backoffice.component.ts +109 -0
  2400. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/taon-cms-comments-all-preview-backoffice.models.split-namespaces.json +4 -0
  2401. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/taon-cms-comments-all-preview-backoffice.models.ts +12 -0
  2402. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/taon-cms-comments-all-preview-backoffice.routes.split-namespaces.json +4 -0
  2403. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/taon-cms-comments-all-preview-backoffice.routes.ts +21 -0
  2404. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-backoffice.component.html +14 -0
  2405. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-backoffice.component.scss +14 -0
  2406. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-backoffice.component.split-namespaces.json +4 -0
  2407. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-backoffice.component.ts +28 -0
  2408. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-backoffice.models.split-namespaces.json +4 -0
  2409. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-backoffice.models.ts +12 -0
  2410. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-backoffice.routes.split-namespaces.json +4 -0
  2411. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-backoffice.routes.ts +51 -0
  2412. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.component.html.de-DE.i18n.data.ts +94 -0
  2413. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.component.html.de-DE.po +50 -0
  2414. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.component.html.en-US.i18n.data.ts +82 -0
  2415. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.component.html.en-US.po +50 -0
  2416. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.component.html.pl-PL.i18n.data.ts +94 -0
  2417. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.component.html.pl-PL.po +50 -0
  2418. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.component.ts.de-DE.i18n.data.ts +41 -0
  2419. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.component.ts.de-DE.po +17 -0
  2420. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.component.ts.en-US.i18n.data.ts +38 -0
  2421. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.component.ts.en-US.po +17 -0
  2422. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.component.ts.pl-PL.i18n.data.ts +41 -0
  2423. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.component.ts.pl-PL.po +17 -0
  2424. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.translation.split-namespaces.json +4 -0
  2425. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.translation.ts +21 -0
  2426. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/index.split-namespaces.json +4 -0
  2427. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/index.ts +13 -0
  2428. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/taon-cms-comments-blocked-users.component.html +48 -0
  2429. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/taon-cms-comments-blocked-users.component.scss +14 -0
  2430. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/taon-cms-comments-blocked-users.component.split-namespaces.json +4 -0
  2431. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/taon-cms-comments-blocked-users.component.ts +94 -0
  2432. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/taon-cms-comments-blocked-users.models.split-namespaces.json +4 -0
  2433. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/taon-cms-comments-blocked-users.models.ts +12 -0
  2434. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/taon-cms-comments-blocked-users.routes.split-namespaces.json +4 -0
  2435. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/taon-cms-comments-blocked-users.routes.ts +21 -0
  2436. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.component.html.de-DE.i18n.data.ts +65 -0
  2437. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.component.html.de-DE.po +33 -0
  2438. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.component.html.en-US.i18n.data.ts +58 -0
  2439. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.component.html.en-US.po +33 -0
  2440. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.component.html.pl-PL.i18n.data.ts +65 -0
  2441. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.component.html.pl-PL.po +33 -0
  2442. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.component.ts.de-DE.i18n.data.ts +41 -0
  2443. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.component.ts.de-DE.po +17 -0
  2444. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.component.ts.en-US.i18n.data.ts +38 -0
  2445. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.component.ts.en-US.po +17 -0
  2446. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.component.ts.pl-PL.i18n.data.ts +41 -0
  2447. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.component.ts.pl-PL.po +17 -0
  2448. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.translation.split-namespaces.json +4 -0
  2449. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.translation.ts +21 -0
  2450. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/index.split-namespaces.json +4 -0
  2451. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/index.ts +13 -0
  2452. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/taon-cms-comments-filters-settings.component.html +38 -0
  2453. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/taon-cms-comments-filters-settings.component.scss +14 -0
  2454. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/taon-cms-comments-filters-settings.component.split-namespaces.json +4 -0
  2455. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/taon-cms-comments-filters-settings.component.ts +82 -0
  2456. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/taon-cms-comments-filters-settings.models.split-namespaces.json +4 -0
  2457. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/taon-cms-comments-filters-settings.models.ts +12 -0
  2458. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/taon-cms-comments-filters-settings.routes.split-namespaces.json +4 -0
  2459. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/taon-cms-comments-filters-settings.routes.ts +21 -0
  2460. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments.component.html +108 -0
  2461. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments.component.scss +39 -0
  2462. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments.component.split-namespaces.json +4 -0
  2463. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments.component.ts +141 -0
  2464. package/ts-source/browser-code-prod/taon-cms-content/i18n/taon-cms-content-storage.controller.ts.de-DE.i18n.data.ts +1 -1
  2465. package/ts-source/browser-code-prod/taon-cms-content/i18n/taon-cms-content-storage.controller.ts.de-DE.po +1 -1
  2466. package/ts-source/browser-code-prod/taon-cms-content/i18n/taon-cms-content-storage.controller.ts.en-US.i18n.data.ts +1 -1
  2467. package/ts-source/browser-code-prod/taon-cms-content/i18n/taon-cms-content-storage.controller.ts.en-US.po +1 -1
  2468. package/ts-source/browser-code-prod/taon-cms-content/i18n/taon-cms-content-storage.controller.ts.pl-PL.i18n.data.ts +1 -1
  2469. package/ts-source/browser-code-prod/taon-cms-content/i18n/taon-cms-content-storage.controller.ts.pl-PL.po +1 -1
  2470. package/ts-source/browser-code-prod/taon-cms-content/i18n/taon-cms-content.controller.ts.de-DE.i18n.data.ts +28 -6
  2471. package/ts-source/browser-code-prod/taon-cms-content/i18n/taon-cms-content.controller.ts.de-DE.po +16 -6
  2472. package/ts-source/browser-code-prod/taon-cms-content/i18n/taon-cms-content.controller.ts.en-US.i18n.data.ts +24 -6
  2473. package/ts-source/browser-code-prod/taon-cms-content/i18n/taon-cms-content.controller.ts.en-US.po +16 -6
  2474. package/ts-source/browser-code-prod/taon-cms-content/i18n/taon-cms-content.controller.ts.pl-PL.i18n.data.ts +28 -6
  2475. package/ts-source/browser-code-prod/taon-cms-content/i18n/taon-cms-content.controller.ts.pl-PL.po +16 -6
  2476. package/ts-source/browser-code-prod/taon-cms-content/i18n/taon-cms-content.translation.ts +1 -1
  2477. package/ts-source/browser-code-prod/taon-cms-content/taon-cms-content-api.service.ts +60 -3
  2478. package/ts-source/browser-code-prod/taon-cms-content/taon-cms-content-storage.controller.ts +16 -1
  2479. package/ts-source/browser-code-prod/taon-cms-content/taon-cms-content.controller.ts +88 -2
  2480. package/ts-source/browser-code-prod/taon-cms-content/taon-cms-content.entity.ts +3 -0
  2481. package/ts-source/browser-code-prod/taon-cms-content/taon-cms-content.models.ts +39 -0
  2482. package/ts-source/browser-code-prod/taon-cms-content/taon-cms-content.repository.ts +82 -4
  2483. package/ts-source/browser-code-prod/taon-cms-content/taon-cms-content.utils.split-namespaces.json +3 -1
  2484. package/ts-source/browser-code-prod/taon-cms-content/taon-cms-content.utils.ts +6 -0
  2485. package/ts-source/browser-code-prod/taon-cms-content/taon-cms-content.validation.ts +4 -0
  2486. package/ts-source/browser-code-prod/taon-cms-content-revision/taon-cms-content-revision.repository.ts +4 -0
  2487. package/ts-source/browser-code-prod/taon-cms-tag/i18n/taon-cms-tag.translation.ts +1 -1
  2488. package/ts-source/browser-code-prod/taon-cms-taxonomy-backoffice/i18n/taon-cms-taxonomy-backoffice.translation.ts +1 -1
  2489. package/ts-source/browser-code-prod/taon-cms-taxonomy-backoffice/i18n/taon-cms-taxonomy-quick-create-dialog.component.ts.de-DE.i18n.data.ts +14 -7
  2490. package/ts-source/browser-code-prod/taon-cms-taxonomy-backoffice/i18n/taon-cms-taxonomy-quick-create-dialog.component.ts.de-DE.po +7 -7
  2491. package/ts-source/browser-code-prod/taon-cms-taxonomy-backoffice/i18n/taon-cms-taxonomy-quick-create-dialog.component.ts.pl-PL.i18n.data.ts +14 -7
  2492. package/ts-source/browser-code-prod/taon-cms-taxonomy-backoffice/i18n/taon-cms-taxonomy-quick-create-dialog.component.ts.pl-PL.po +7 -7
  2493. package/ts-source/browser-code-prod/taon-cms.abstract.context.ts +2 -0
  2494. package/ts-source/browser-code-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.html.de-DE.i18n.data.ts +27 -16
  2495. package/ts-source/browser-code-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.html.de-DE.po +18 -18
  2496. package/ts-source/browser-code-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.html.en-US.i18n.data.ts +11 -11
  2497. package/ts-source/browser-code-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.html.en-US.po +10 -10
  2498. package/ts-source/browser-code-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.html.pl-PL.i18n.data.ts +27 -16
  2499. package/ts-source/browser-code-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.html.pl-PL.po +18 -18
  2500. package/ts-source/browser-code-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.ts.de-DE.i18n.data.ts +8 -4
  2501. package/ts-source/browser-code-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.ts.de-DE.po +4 -4
  2502. package/ts-source/browser-code-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.ts.pl-PL.i18n.data.ts +8 -4
  2503. package/ts-source/browser-code-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.ts.pl-PL.po +4 -4
  2504. package/ts-source/browser-code-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.translation.ts +1 -1
  2505. package/ts-source/browser-code-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.html.de-DE.i18n.data.ts +22 -5
  2506. package/ts-source/browser-code-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.html.de-DE.po +12 -4
  2507. package/ts-source/browser-code-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.html.en-US.i18n.data.ts +10 -0
  2508. package/ts-source/browser-code-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.html.en-US.po +8 -0
  2509. package/ts-source/browser-code-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.html.pl-PL.i18n.data.ts +22 -5
  2510. package/ts-source/browser-code-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.html.pl-PL.po +12 -4
  2511. package/ts-source/browser-code-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.ts.de-DE.i18n.data.ts +16 -5
  2512. package/ts-source/browser-code-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.ts.de-DE.po +14 -10
  2513. package/ts-source/browser-code-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.ts.en-US.i18n.data.ts +10 -5
  2514. package/ts-source/browser-code-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.ts.en-US.po +9 -5
  2515. package/ts-source/browser-code-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.ts.pl-PL.i18n.data.ts +16 -5
  2516. package/ts-source/browser-code-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.ts.pl-PL.po +14 -10
  2517. package/ts-source/browser-code-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-cover.component.ts.de-DE.i18n.data.ts +2 -1
  2518. package/ts-source/browser-code-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-cover.component.ts.de-DE.po +1 -1
  2519. package/ts-source/browser-code-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-cover.component.ts.pl-PL.i18n.data.ts +2 -1
  2520. package/ts-source/browser-code-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-cover.component.ts.pl-PL.po +1 -1
  2521. package/ts-source/browser-code-prod/taon-posts/taon-cms-course-backoffice/taon-cms-course-backoffice.component.html +3 -2
  2522. package/ts-source/browser-code-prod/taon-posts/taon-cms-course-backoffice/taon-cms-course-contents.component.html +23 -0
  2523. package/ts-source/browser-code-prod/taon-posts/taon-cms-course-backoffice/taon-cms-course-contents.component.ts +22 -1
  2524. package/ts-source/browser-code-prod/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.html.de-DE.i18n.data.ts +35 -0
  2525. package/ts-source/browser-code-prod/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.html.de-DE.po +13 -0
  2526. package/ts-source/browser-code-prod/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.html.en-US.i18n.data.ts +33 -0
  2527. package/ts-source/browser-code-prod/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.html.en-US.po +13 -0
  2528. package/ts-source/browser-code-prod/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.html.pl-PL.i18n.data.ts +35 -0
  2529. package/ts-source/browser-code-prod/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.html.pl-PL.po +13 -0
  2530. package/ts-source/browser-code-prod/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.ts.de-DE.i18n.data.ts +19 -0
  2531. package/ts-source/browser-code-prod/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.ts.de-DE.po +5 -0
  2532. package/ts-source/browser-code-prod/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.ts.en-US.i18n.data.ts +19 -0
  2533. package/ts-source/browser-code-prod/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.ts.en-US.po +5 -0
  2534. package/ts-source/browser-code-prod/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.ts.pl-PL.i18n.data.ts +19 -0
  2535. package/ts-source/browser-code-prod/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.ts.pl-PL.po +5 -0
  2536. package/ts-source/browser-code-prod/taon-posts/taon-cms-post/i18n/taon-cms-post-thumbnail.component.ts.de-DE.i18n.data.ts +29 -0
  2537. package/ts-source/browser-code-prod/taon-posts/taon-cms-post/i18n/taon-cms-post-thumbnail.component.ts.de-DE.po +9 -0
  2538. package/ts-source/browser-code-prod/taon-posts/taon-cms-post/i18n/taon-cms-post-thumbnail.component.ts.en-US.i18n.data.ts +28 -0
  2539. package/ts-source/browser-code-prod/taon-posts/taon-cms-post/i18n/taon-cms-post-thumbnail.component.ts.en-US.po +9 -0
  2540. package/ts-source/browser-code-prod/taon-posts/taon-cms-post/i18n/taon-cms-post-thumbnail.component.ts.pl-PL.i18n.data.ts +29 -0
  2541. package/ts-source/browser-code-prod/taon-posts/taon-cms-post/i18n/taon-cms-post-thumbnail.component.ts.pl-PL.po +9 -0
  2542. package/ts-source/browser-code-prod/taon-posts/taon-cms-post/i18n/taon-cms-post.component.html.de-DE.i18n.data.ts +544 -93
  2543. package/ts-source/browser-code-prod/taon-posts/taon-cms-post/i18n/taon-cms-post.component.html.de-DE.po +318 -104
  2544. package/ts-source/browser-code-prod/taon-posts/taon-cms-post/i18n/taon-cms-post.component.html.en-US.i18n.data.ts +464 -91
  2545. package/ts-source/browser-code-prod/taon-posts/taon-cms-post/i18n/taon-cms-post.component.html.en-US.po +301 -87
  2546. package/ts-source/browser-code-prod/taon-posts/taon-cms-post/i18n/taon-cms-post.component.html.pl-PL.i18n.data.ts +545 -92
  2547. package/ts-source/browser-code-prod/taon-posts/taon-cms-post/i18n/taon-cms-post.component.html.pl-PL.po +317 -103
  2548. package/ts-source/browser-code-prod/taon-posts/taon-cms-post/i18n/taon-cms-post.component.ts.de-DE.i18n.data.ts +235 -40
  2549. package/ts-source/browser-code-prod/taon-posts/taon-cms-post/i18n/taon-cms-post.component.ts.de-DE.po +168 -43
  2550. package/ts-source/browser-code-prod/taon-posts/taon-cms-post/i18n/taon-cms-post.component.ts.en-US.i18n.data.ts +198 -40
  2551. package/ts-source/browser-code-prod/taon-posts/taon-cms-post/i18n/taon-cms-post.component.ts.en-US.po +164 -39
  2552. package/ts-source/browser-code-prod/taon-posts/taon-cms-post/i18n/taon-cms-post.component.ts.pl-PL.i18n.data.ts +238 -43
  2553. package/ts-source/browser-code-prod/taon-posts/taon-cms-post/i18n/taon-cms-post.component.ts.pl-PL.po +170 -45
  2554. package/ts-source/browser-code-prod/taon-posts/taon-cms-post/i18n/taon-cms-post.translation.ts +11 -2
  2555. package/ts-source/browser-code-prod/taon-posts/taon-cms-post/taon-cms-document-extractor.split-namespaces.json +4 -0
  2556. package/ts-source/browser-code-prod/taon-posts/taon-cms-post/taon-cms-document-extractor.ts +45 -0
  2557. package/ts-source/browser-code-prod/taon-posts/taon-cms-post/taon-cms-post-choice-dialog.component.html +31 -0
  2558. package/ts-source/browser-code-prod/taon-posts/taon-cms-post/taon-cms-post-choice-dialog.component.split-namespaces.json +4 -0
  2559. package/ts-source/browser-code-prod/taon-posts/taon-cms-post/taon-cms-post-choice-dialog.component.ts +46 -0
  2560. package/ts-source/browser-code-prod/taon-posts/taon-cms-post/taon-cms-post-thumbnail.component.split-namespaces.json +4 -0
  2561. package/ts-source/browser-code-prod/taon-posts/taon-cms-post/taon-cms-post-thumbnail.component.ts +71 -0
  2562. package/ts-source/browser-code-prod/taon-posts/taon-cms-post/taon-cms-post.component.html +1115 -603
  2563. package/ts-source/browser-code-prod/taon-posts/taon-cms-post/taon-cms-post.component.scss +115 -0
  2564. package/ts-source/browser-code-prod/taon-posts/taon-cms-post/taon-cms-post.component.ts +882 -53
  2565. package/ts-source/browser-code-prod/taon-posts/taon-cms-post-details-page/i18n/taon-cms-post-details-page.component.ts.de-DE.i18n.data.ts +2 -1
  2566. package/ts-source/browser-code-prod/taon-posts/taon-cms-post-details-page/i18n/taon-cms-post-details-page.component.ts.de-DE.po +1 -1
  2567. package/ts-source/browser-code-prod/taon-posts/taon-cms-post-details-page/i18n/taon-cms-post-details-page.component.ts.pl-PL.i18n.data.ts +2 -1
  2568. package/ts-source/browser-code-prod/taon-posts/taon-cms-post-details-page/i18n/taon-cms-post-details-page.component.ts.pl-PL.po +1 -1
  2569. package/ts-source/browser-code-prod/taon-posts/taon-cms-post-details-page/i18n/taon-cms-post-details-page.translation.ts +1 -1
  2570. package/ts-source/browser-code-prod/taon-posts/taon-cms-post-details-page/taon-cms-post-details-page.component.ts +1 -0
  2571. package/ts-source/browser-code-prod/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-post-table-actions.directive.ts.de-DE.i18n.data.ts +71 -15
  2572. package/ts-source/browser-code-prod/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-post-table-actions.directive.ts.de-DE.po +46 -23
  2573. package/ts-source/browser-code-prod/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-post-table-actions.directive.ts.en-US.i18n.data.ts +52 -15
  2574. package/ts-source/browser-code-prod/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-post-table-actions.directive.ts.en-US.po +36 -13
  2575. package/ts-source/browser-code-prod/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-post-table-actions.directive.ts.pl-PL.i18n.data.ts +71 -15
  2576. package/ts-source/browser-code-prod/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-post-table-actions.directive.ts.pl-PL.po +46 -23
  2577. package/ts-source/browser-code-prod/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.html.de-DE.i18n.data.ts +19 -12
  2578. package/ts-source/browser-code-prod/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.html.de-DE.po +11 -11
  2579. package/ts-source/browser-code-prod/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.html.en-US.i18n.data.ts +5 -5
  2580. package/ts-source/browser-code-prod/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.html.en-US.po +4 -4
  2581. package/ts-source/browser-code-prod/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.html.pl-PL.i18n.data.ts +19 -12
  2582. package/ts-source/browser-code-prod/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.html.pl-PL.po +11 -11
  2583. package/ts-source/browser-code-prod/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.ts.de-DE.i18n.data.ts +2 -1
  2584. package/ts-source/browser-code-prod/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.ts.de-DE.po +1 -1
  2585. package/ts-source/browser-code-prod/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.ts.pl-PL.i18n.data.ts +2 -1
  2586. package/ts-source/browser-code-prod/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.ts.pl-PL.po +1 -1
  2587. package/ts-source/browser-code-prod/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.translation.ts +1 -1
  2588. package/ts-source/browser-code-prod/taon-posts/taon-cms-posts-backoffice/taon-cms-post-table-actions.directive.ts +86 -18
  2589. package/ts-source/browser-code-prod/taon-posts/taon-cms-revision-chooser/i18n/taon-cms-revision-chooser.component.html.de-DE.i18n.data.ts +32 -17
  2590. package/ts-source/browser-code-prod/taon-posts/taon-cms-revision-chooser/i18n/taon-cms-revision-chooser.component.html.de-DE.po +14 -8
  2591. package/ts-source/browser-code-prod/taon-posts/taon-cms-revision-chooser/i18n/taon-cms-revision-chooser.component.html.en-US.i18n.data.ts +32 -17
  2592. package/ts-source/browser-code-prod/taon-posts/taon-cms-revision-chooser/i18n/taon-cms-revision-chooser.component.html.en-US.po +14 -8
  2593. package/ts-source/browser-code-prod/taon-posts/taon-cms-revision-chooser/i18n/taon-cms-revision-chooser.component.html.pl-PL.i18n.data.ts +32 -17
  2594. package/ts-source/browser-code-prod/taon-posts/taon-cms-revision-chooser/i18n/taon-cms-revision-chooser.component.html.pl-PL.po +14 -8
  2595. package/ts-source/browser-code-prod/taon-posts/taon-cms-revision-chooser/i18n/taon-cms-revision-chooser.translation.ts +1 -1
  2596. package/ts-source/browser-code-prod/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.html.de-DE.i18n.data.ts +16 -10
  2597. package/ts-source/browser-code-prod/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.html.de-DE.po +8 -4
  2598. package/ts-source/browser-code-prod/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.html.en-US.i18n.data.ts +15 -10
  2599. package/ts-source/browser-code-prod/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.html.en-US.po +8 -4
  2600. package/ts-source/browser-code-prod/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.html.pl-PL.i18n.data.ts +16 -10
  2601. package/ts-source/browser-code-prod/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.html.pl-PL.po +8 -4
  2602. package/ts-source/browser-code-prod/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.ts.de-DE.i18n.data.ts +2 -2
  2603. package/ts-source/browser-code-prod/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.ts.de-DE.po +2 -2
  2604. package/ts-source/browser-code-prod/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.ts.en-US.i18n.data.ts +2 -2
  2605. package/ts-source/browser-code-prod/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.ts.en-US.po +2 -2
  2606. package/ts-source/browser-code-prod/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.ts.pl-PL.i18n.data.ts +2 -2
  2607. package/ts-source/browser-code-prod/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.ts.pl-PL.po +2 -2
  2608. package/ts-source/browser-code-prod/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.translation.ts +1 -1
  2609. package/ts-source/browser-code-prod/taon-posts/taon-related-post-chooser/taon-related-post-chooser.component.html +3 -3
  2610. package/ts-source/browser-code-prod/taon-posts/taon-related-post-chooser/taon-related-post-chooser.component.ts +8 -1
  2611. package/ts-source/websql-code/build-info._auto-generated_.ts +1 -1
  2612. package/ts-source/websql-code/index._auto-generated_.ts +33 -0
  2613. package/ts-source/websql-code/migrations/1793664000000_postVersionLinks.ts +40 -0
  2614. package/ts-source/websql-code/migrations/migrations_index._auto-generated_.ts +3 -0
  2615. package/ts-source/websql-code/taon-cms-assets-backoffice/taon-cms-asset-preview.component.html +1 -1
  2616. package/ts-source/websql-code/taon-cms-backoffice/i18n/taon-cms-backoffice.component.html.de-DE.i18n.data.ts +5 -0
  2617. package/ts-source/websql-code/taon-cms-backoffice/i18n/taon-cms-backoffice.component.html.de-DE.po +1 -0
  2618. package/ts-source/websql-code/taon-cms-backoffice/i18n/taon-cms-backoffice.component.html.en-US.i18n.data.ts +5 -0
  2619. package/ts-source/websql-code/taon-cms-backoffice/i18n/taon-cms-backoffice.component.html.en-US.po +1 -0
  2620. package/ts-source/websql-code/taon-cms-backoffice/i18n/taon-cms-backoffice.component.html.pl-PL.i18n.data.ts +5 -0
  2621. package/ts-source/websql-code/taon-cms-backoffice/i18n/taon-cms-backoffice.component.html.pl-PL.po +1 -0
  2622. package/ts-source/websql-code/taon-cms-backoffice/i18n/taon-cms-backoffice.routes.ts.de-DE.i18n.data.ts +18 -5
  2623. package/ts-source/websql-code/taon-cms-backoffice/i18n/taon-cms-backoffice.routes.ts.de-DE.po +13 -5
  2624. package/ts-source/websql-code/taon-cms-backoffice/i18n/taon-cms-backoffice.routes.ts.en-US.i18n.data.ts +15 -5
  2625. package/ts-source/websql-code/taon-cms-backoffice/i18n/taon-cms-backoffice.routes.ts.en-US.po +12 -4
  2626. package/ts-source/websql-code/taon-cms-backoffice/i18n/taon-cms-backoffice.routes.ts.pl-PL.i18n.data.ts +17 -5
  2627. package/ts-source/websql-code/taon-cms-backoffice/i18n/taon-cms-backoffice.routes.ts.pl-PL.po +12 -4
  2628. package/ts-source/websql-code/taon-cms-backoffice/taon-cms-backoffice.routes.ts +20 -0
  2629. package/ts-source/websql-code/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.html.de-DE.i18n.data.ts +64 -0
  2630. package/ts-source/websql-code/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.html.de-DE.po +30 -0
  2631. package/ts-source/websql-code/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.html.en-US.i18n.data.ts +57 -0
  2632. package/ts-source/websql-code/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.html.en-US.po +30 -0
  2633. package/ts-source/websql-code/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.html.pl-PL.i18n.data.ts +64 -0
  2634. package/ts-source/websql-code/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.html.pl-PL.po +30 -0
  2635. package/ts-source/websql-code/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.ts.de-DE.i18n.data.ts +77 -0
  2636. package/ts-source/websql-code/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.ts.de-DE.po +41 -0
  2637. package/ts-source/websql-code/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.ts.en-US.i18n.data.ts +68 -0
  2638. package/ts-source/websql-code/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.ts.en-US.po +41 -0
  2639. package/ts-source/websql-code/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.ts.pl-PL.i18n.data.ts +77 -0
  2640. package/ts-source/websql-code/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.ts.pl-PL.po +41 -0
  2641. package/ts-source/websql-code/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.translation.ts +21 -0
  2642. package/ts-source/websql-code/taon-cms-backoffice/taon-cms-website-features/index.ts +13 -0
  2643. package/ts-source/websql-code/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.constants.ts.de-DE.i18n.data.ts +28 -0
  2644. package/ts-source/websql-code/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.constants.ts.de-DE.po +9 -0
  2645. package/ts-source/websql-code/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.constants.ts.en-US.i18n.data.ts +28 -0
  2646. package/ts-source/websql-code/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.constants.ts.en-US.po +9 -0
  2647. package/ts-source/websql-code/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.constants.ts.pl-PL.i18n.data.ts +28 -0
  2648. package/ts-source/websql-code/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.constants.ts.pl-PL.po +9 -0
  2649. package/ts-source/websql-code/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.controller.ts.de-DE.i18n.data.ts +29 -0
  2650. package/ts-source/websql-code/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.controller.ts.de-DE.po +9 -0
  2651. package/ts-source/websql-code/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.controller.ts.en-US.i18n.data.ts +28 -0
  2652. package/ts-source/websql-code/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.controller.ts.en-US.po +9 -0
  2653. package/ts-source/websql-code/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.controller.ts.pl-PL.i18n.data.ts +29 -0
  2654. package/ts-source/websql-code/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.controller.ts.pl-PL.po +9 -0
  2655. package/ts-source/websql-code/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.translation.ts +21 -0
  2656. package/ts-source/websql-code/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.abstract.context.ts +27 -0
  2657. package/ts-source/websql-code/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.api.service.ts +72 -0
  2658. package/ts-source/websql-code/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.config.service.ts +28 -0
  2659. package/ts-source/websql-code/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.constants.ts +25 -0
  2660. package/ts-source/websql-code/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.controller.ts +59 -0
  2661. package/ts-source/websql-code/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.kv.repository.ts +86 -0
  2662. package/ts-source/websql-code/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.models.ts +23 -0
  2663. package/ts-source/websql-code/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.provider.ts +30 -0
  2664. package/ts-source/websql-code/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.utils.ts +26 -0
  2665. package/ts-source/websql-code/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.validators.ts +26 -0
  2666. package/ts-source/websql-code/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-features.component.html +58 -0
  2667. package/ts-source/websql-code/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-features.component.scss +38 -0
  2668. package/ts-source/websql-code/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-features.component.ts +127 -0
  2669. package/ts-source/websql-code/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-features.models.ts +13 -0
  2670. package/ts-source/websql-code/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-features.routes.ts +21 -0
  2671. package/ts-source/websql-code/taon-cms-comment/i18n/taon-cms-comment.controller.ts.de-DE.i18n.data.ts +145 -0
  2672. package/ts-source/websql-code/taon-cms-comment/i18n/taon-cms-comment.controller.ts.de-DE.po +77 -0
  2673. package/ts-source/websql-code/taon-cms-comment/i18n/taon-cms-comment.controller.ts.en-US.i18n.data.ts +124 -0
  2674. package/ts-source/websql-code/taon-cms-comment/i18n/taon-cms-comment.controller.ts.en-US.po +77 -0
  2675. package/ts-source/websql-code/taon-cms-comment/i18n/taon-cms-comment.controller.ts.pl-PL.i18n.data.ts +145 -0
  2676. package/ts-source/websql-code/taon-cms-comment/i18n/taon-cms-comment.controller.ts.pl-PL.po +77 -0
  2677. package/ts-source/websql-code/taon-cms-comment/i18n/taon-cms-comment.translation.ts +24 -0
  2678. package/ts-source/websql-code/taon-cms-comment/i18n/taon-cms-comments.component.html.de-DE.i18n.data.ts +122 -0
  2679. package/ts-source/websql-code/taon-cms-comment/i18n/taon-cms-comments.component.html.de-DE.po +64 -0
  2680. package/ts-source/websql-code/taon-cms-comment/i18n/taon-cms-comments.component.html.en-US.i18n.data.ts +105 -0
  2681. package/ts-source/websql-code/taon-cms-comment/i18n/taon-cms-comments.component.html.en-US.po +64 -0
  2682. package/ts-source/websql-code/taon-cms-comment/i18n/taon-cms-comments.component.html.pl-PL.i18n.data.ts +122 -0
  2683. package/ts-source/websql-code/taon-cms-comment/i18n/taon-cms-comments.component.html.pl-PL.po +64 -0
  2684. package/ts-source/websql-code/taon-cms-comment/i18n/taon-cms-comments.component.ts.de-DE.i18n.data.ts +53 -0
  2685. package/ts-source/websql-code/taon-cms-comment/i18n/taon-cms-comments.component.ts.de-DE.po +25 -0
  2686. package/ts-source/websql-code/taon-cms-comment/i18n/taon-cms-comments.component.ts.en-US.i18n.data.ts +48 -0
  2687. package/ts-source/websql-code/taon-cms-comment/i18n/taon-cms-comments.component.ts.en-US.po +25 -0
  2688. package/ts-source/websql-code/taon-cms-comment/i18n/taon-cms-comments.component.ts.pl-PL.i18n.data.ts +53 -0
  2689. package/ts-source/websql-code/taon-cms-comment/i18n/taon-cms-comments.component.ts.pl-PL.po +25 -0
  2690. package/ts-source/websql-code/taon-cms-comment/index.ts +5 -0
  2691. package/ts-source/websql-code/taon-cms-comment/taon-cms-comment-api.service.ts +97 -4
  2692. package/ts-source/websql-code/taon-cms-comment/taon-cms-comment-blocked-phrase.entity.ts +28 -0
  2693. package/ts-source/websql-code/taon-cms-comment/taon-cms-comment-blocked-user.entity.ts +26 -0
  2694. package/ts-source/websql-code/taon-cms-comment/taon-cms-comment-spam-report.entity.ts +28 -0
  2695. package/ts-source/websql-code/taon-cms-comment/taon-cms-comment-vote.entity.ts +30 -0
  2696. package/ts-source/websql-code/taon-cms-comment/taon-cms-comment.abstract.context.ts +11 -1
  2697. package/ts-source/websql-code/taon-cms-comment/taon-cms-comment.controller.ts +464 -15
  2698. package/ts-source/websql-code/taon-cms-comment/taon-cms-comment.entity.ts +3 -3
  2699. package/ts-source/websql-code/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.component.ts.de-DE.i18n.data.ts +19 -0
  2700. package/ts-source/websql-code/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.component.ts.de-DE.po +5 -0
  2701. package/ts-source/websql-code/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.component.ts.en-US.i18n.data.ts +19 -0
  2702. package/ts-source/websql-code/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.component.ts.en-US.po +5 -0
  2703. package/ts-source/websql-code/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.component.ts.pl-PL.i18n.data.ts +19 -0
  2704. package/ts-source/websql-code/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.component.ts.pl-PL.po +5 -0
  2705. package/ts-source/websql-code/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.routes.ts.de-DE.i18n.data.ts +41 -0
  2706. package/ts-source/websql-code/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.routes.ts.de-DE.po +17 -0
  2707. package/ts-source/websql-code/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.routes.ts.en-US.i18n.data.ts +38 -0
  2708. package/ts-source/websql-code/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.routes.ts.en-US.po +17 -0
  2709. package/ts-source/websql-code/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.routes.ts.pl-PL.i18n.data.ts +41 -0
  2710. package/ts-source/websql-code/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.routes.ts.pl-PL.po +17 -0
  2711. package/ts-source/websql-code/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.translation.ts +21 -0
  2712. package/ts-source/websql-code/taon-cms-comment/taon-cms-comments-backoffice/index.ts +13 -0
  2713. package/ts-source/websql-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.component.html.de-DE.i18n.data.ts +118 -0
  2714. package/ts-source/websql-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.component.html.de-DE.po +66 -0
  2715. package/ts-source/websql-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.component.html.en-US.i18n.data.ts +102 -0
  2716. package/ts-source/websql-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.component.html.en-US.po +66 -0
  2717. package/ts-source/websql-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.component.html.pl-PL.i18n.data.ts +118 -0
  2718. package/ts-source/websql-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.component.html.pl-PL.po +66 -0
  2719. package/ts-source/websql-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.component.ts.de-DE.i18n.data.ts +77 -0
  2720. package/ts-source/websql-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.component.ts.de-DE.po +41 -0
  2721. package/ts-source/websql-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.component.ts.en-US.i18n.data.ts +68 -0
  2722. package/ts-source/websql-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.component.ts.en-US.po +41 -0
  2723. package/ts-source/websql-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.component.ts.pl-PL.i18n.data.ts +77 -0
  2724. package/ts-source/websql-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.component.ts.pl-PL.po +41 -0
  2725. package/ts-source/websql-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.translation.ts +21 -0
  2726. package/ts-source/websql-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/index.ts +13 -0
  2727. package/ts-source/websql-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/taon-cms-comments-all-preview-backoffice.component.html +68 -0
  2728. package/ts-source/websql-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/taon-cms-comments-all-preview-backoffice.component.scss +14 -0
  2729. package/ts-source/websql-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/taon-cms-comments-all-preview-backoffice.component.ts +109 -0
  2730. package/ts-source/websql-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/taon-cms-comments-all-preview-backoffice.models.ts +13 -0
  2731. package/ts-source/websql-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/taon-cms-comments-all-preview-backoffice.routes.ts +21 -0
  2732. package/ts-source/websql-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-backoffice.component.html +14 -0
  2733. package/ts-source/websql-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-backoffice.component.scss +14 -0
  2734. package/ts-source/websql-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-backoffice.component.ts +28 -0
  2735. package/ts-source/websql-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-backoffice.models.ts +13 -0
  2736. package/ts-source/websql-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-backoffice.routes.ts +51 -0
  2737. package/ts-source/websql-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.component.html.de-DE.i18n.data.ts +94 -0
  2738. package/ts-source/websql-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.component.html.de-DE.po +50 -0
  2739. package/ts-source/websql-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.component.html.en-US.i18n.data.ts +82 -0
  2740. package/ts-source/websql-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.component.html.en-US.po +50 -0
  2741. package/ts-source/websql-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.component.html.pl-PL.i18n.data.ts +94 -0
  2742. package/ts-source/websql-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.component.html.pl-PL.po +50 -0
  2743. package/ts-source/websql-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.component.ts.de-DE.i18n.data.ts +41 -0
  2744. package/ts-source/websql-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.component.ts.de-DE.po +17 -0
  2745. package/ts-source/websql-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.component.ts.en-US.i18n.data.ts +38 -0
  2746. package/ts-source/websql-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.component.ts.en-US.po +17 -0
  2747. package/ts-source/websql-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.component.ts.pl-PL.i18n.data.ts +41 -0
  2748. package/ts-source/websql-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.component.ts.pl-PL.po +17 -0
  2749. package/ts-source/websql-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.translation.ts +21 -0
  2750. package/ts-source/websql-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/index.ts +13 -0
  2751. package/ts-source/websql-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/taon-cms-comments-blocked-users.component.html +48 -0
  2752. package/ts-source/websql-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/taon-cms-comments-blocked-users.component.scss +14 -0
  2753. package/ts-source/websql-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/taon-cms-comments-blocked-users.component.ts +94 -0
  2754. package/ts-source/websql-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/taon-cms-comments-blocked-users.models.ts +13 -0
  2755. package/ts-source/websql-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/taon-cms-comments-blocked-users.routes.ts +21 -0
  2756. package/ts-source/websql-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.component.html.de-DE.i18n.data.ts +65 -0
  2757. package/ts-source/websql-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.component.html.de-DE.po +33 -0
  2758. package/ts-source/websql-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.component.html.en-US.i18n.data.ts +58 -0
  2759. package/ts-source/websql-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.component.html.en-US.po +33 -0
  2760. package/ts-source/websql-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.component.html.pl-PL.i18n.data.ts +65 -0
  2761. package/ts-source/websql-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.component.html.pl-PL.po +33 -0
  2762. package/ts-source/websql-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.component.ts.de-DE.i18n.data.ts +41 -0
  2763. package/ts-source/websql-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.component.ts.de-DE.po +17 -0
  2764. package/ts-source/websql-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.component.ts.en-US.i18n.data.ts +38 -0
  2765. package/ts-source/websql-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.component.ts.en-US.po +17 -0
  2766. package/ts-source/websql-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.component.ts.pl-PL.i18n.data.ts +41 -0
  2767. package/ts-source/websql-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.component.ts.pl-PL.po +17 -0
  2768. package/ts-source/websql-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.translation.ts +21 -0
  2769. package/ts-source/websql-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/index.ts +13 -0
  2770. package/ts-source/websql-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/taon-cms-comments-filters-settings.component.html +38 -0
  2771. package/ts-source/websql-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/taon-cms-comments-filters-settings.component.scss +14 -0
  2772. package/ts-source/websql-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/taon-cms-comments-filters-settings.component.ts +82 -0
  2773. package/ts-source/websql-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/taon-cms-comments-filters-settings.models.ts +13 -0
  2774. package/ts-source/websql-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/taon-cms-comments-filters-settings.routes.ts +21 -0
  2775. package/ts-source/websql-code/taon-cms-comment/taon-cms-comments.component.html +108 -0
  2776. package/ts-source/websql-code/taon-cms-comment/taon-cms-comments.component.scss +39 -0
  2777. package/ts-source/websql-code/taon-cms-comment/taon-cms-comments.component.ts +141 -0
  2778. package/ts-source/websql-code/taon-cms-content/i18n/taon-cms-content-storage.controller.ts.de-DE.i18n.data.ts +1 -1
  2779. package/ts-source/websql-code/taon-cms-content/i18n/taon-cms-content-storage.controller.ts.de-DE.po +1 -1
  2780. package/ts-source/websql-code/taon-cms-content/i18n/taon-cms-content-storage.controller.ts.en-US.i18n.data.ts +1 -1
  2781. package/ts-source/websql-code/taon-cms-content/i18n/taon-cms-content-storage.controller.ts.en-US.po +1 -1
  2782. package/ts-source/websql-code/taon-cms-content/i18n/taon-cms-content-storage.controller.ts.pl-PL.i18n.data.ts +1 -1
  2783. package/ts-source/websql-code/taon-cms-content/i18n/taon-cms-content-storage.controller.ts.pl-PL.po +1 -1
  2784. package/ts-source/websql-code/taon-cms-content/i18n/taon-cms-content.controller.ts.de-DE.i18n.data.ts +28 -6
  2785. package/ts-source/websql-code/taon-cms-content/i18n/taon-cms-content.controller.ts.de-DE.po +16 -6
  2786. package/ts-source/websql-code/taon-cms-content/i18n/taon-cms-content.controller.ts.en-US.i18n.data.ts +24 -6
  2787. package/ts-source/websql-code/taon-cms-content/i18n/taon-cms-content.controller.ts.en-US.po +16 -6
  2788. package/ts-source/websql-code/taon-cms-content/i18n/taon-cms-content.controller.ts.pl-PL.i18n.data.ts +28 -6
  2789. package/ts-source/websql-code/taon-cms-content/i18n/taon-cms-content.controller.ts.pl-PL.po +16 -6
  2790. package/ts-source/websql-code/taon-cms-content/taon-cms-content-api.service.ts +60 -3
  2791. package/ts-source/websql-code/taon-cms-content/taon-cms-content-storage.controller.ts +16 -1
  2792. package/ts-source/websql-code/taon-cms-content/taon-cms-content.controller.ts +188 -3
  2793. package/ts-source/websql-code/taon-cms-content/taon-cms-content.entity.ts +6 -0
  2794. package/ts-source/websql-code/taon-cms-content/taon-cms-content.models.ts +39 -0
  2795. package/ts-source/websql-code/taon-cms-content/taon-cms-content.repository.ts +802 -31
  2796. package/ts-source/websql-code/taon-cms-content/taon-cms-content.utils.ts +6 -0
  2797. package/ts-source/websql-code/taon-cms-content/taon-cms-content.validation.ts +4 -0
  2798. package/ts-source/websql-code/taon-cms-content-revision/taon-cms-content-revision.repository.ts +18 -0
  2799. package/ts-source/websql-code/taon-cms-taxonomy-backoffice/i18n/taon-cms-taxonomy-quick-create-dialog.component.ts.de-DE.i18n.data.ts +14 -7
  2800. package/ts-source/websql-code/taon-cms-taxonomy-backoffice/i18n/taon-cms-taxonomy-quick-create-dialog.component.ts.de-DE.po +7 -7
  2801. package/ts-source/websql-code/taon-cms-taxonomy-backoffice/i18n/taon-cms-taxonomy-quick-create-dialog.component.ts.pl-PL.i18n.data.ts +14 -7
  2802. package/ts-source/websql-code/taon-cms-taxonomy-backoffice/i18n/taon-cms-taxonomy-quick-create-dialog.component.ts.pl-PL.po +7 -7
  2803. package/ts-source/websql-code/taon-cms.abstract.context.ts +2 -0
  2804. package/ts-source/websql-code/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.html.de-DE.i18n.data.ts +27 -16
  2805. package/ts-source/websql-code/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.html.de-DE.po +18 -18
  2806. package/ts-source/websql-code/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.html.en-US.i18n.data.ts +11 -11
  2807. package/ts-source/websql-code/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.html.en-US.po +10 -10
  2808. package/ts-source/websql-code/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.html.pl-PL.i18n.data.ts +27 -16
  2809. package/ts-source/websql-code/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.html.pl-PL.po +18 -18
  2810. package/ts-source/websql-code/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.ts.de-DE.i18n.data.ts +8 -4
  2811. package/ts-source/websql-code/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.ts.de-DE.po +4 -4
  2812. package/ts-source/websql-code/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.ts.pl-PL.i18n.data.ts +8 -4
  2813. package/ts-source/websql-code/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.ts.pl-PL.po +4 -4
  2814. package/ts-source/websql-code/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.html.de-DE.i18n.data.ts +22 -5
  2815. package/ts-source/websql-code/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.html.de-DE.po +12 -4
  2816. package/ts-source/websql-code/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.html.en-US.i18n.data.ts +10 -0
  2817. package/ts-source/websql-code/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.html.en-US.po +8 -0
  2818. package/ts-source/websql-code/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.html.pl-PL.i18n.data.ts +22 -5
  2819. package/ts-source/websql-code/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.html.pl-PL.po +12 -4
  2820. package/ts-source/websql-code/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.ts.de-DE.i18n.data.ts +16 -5
  2821. package/ts-source/websql-code/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.ts.de-DE.po +14 -10
  2822. package/ts-source/websql-code/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.ts.en-US.i18n.data.ts +10 -5
  2823. package/ts-source/websql-code/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.ts.en-US.po +9 -5
  2824. package/ts-source/websql-code/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.ts.pl-PL.i18n.data.ts +16 -5
  2825. package/ts-source/websql-code/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.ts.pl-PL.po +14 -10
  2826. package/ts-source/websql-code/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-cover.component.ts.de-DE.i18n.data.ts +2 -1
  2827. package/ts-source/websql-code/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-cover.component.ts.de-DE.po +1 -1
  2828. package/ts-source/websql-code/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-cover.component.ts.pl-PL.i18n.data.ts +2 -1
  2829. package/ts-source/websql-code/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-cover.component.ts.pl-PL.po +1 -1
  2830. package/ts-source/websql-code/taon-posts/taon-cms-course-backoffice/taon-cms-course-backoffice.component.html +3 -2
  2831. package/ts-source/websql-code/taon-posts/taon-cms-course-backoffice/taon-cms-course-contents.component.html +23 -0
  2832. package/ts-source/websql-code/taon-posts/taon-cms-course-backoffice/taon-cms-course-contents.component.ts +22 -1
  2833. package/ts-source/websql-code/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.html.de-DE.i18n.data.ts +35 -0
  2834. package/ts-source/websql-code/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.html.de-DE.po +13 -0
  2835. package/ts-source/websql-code/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.html.en-US.i18n.data.ts +33 -0
  2836. package/ts-source/websql-code/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.html.en-US.po +13 -0
  2837. package/ts-source/websql-code/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.html.pl-PL.i18n.data.ts +35 -0
  2838. package/ts-source/websql-code/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.html.pl-PL.po +13 -0
  2839. package/ts-source/websql-code/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.ts.de-DE.i18n.data.ts +19 -0
  2840. package/ts-source/websql-code/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.ts.de-DE.po +5 -0
  2841. package/ts-source/websql-code/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.ts.en-US.i18n.data.ts +19 -0
  2842. package/ts-source/websql-code/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.ts.en-US.po +5 -0
  2843. package/ts-source/websql-code/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.ts.pl-PL.i18n.data.ts +19 -0
  2844. package/ts-source/websql-code/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.ts.pl-PL.po +5 -0
  2845. package/ts-source/websql-code/taon-posts/taon-cms-post/i18n/taon-cms-post-thumbnail.component.ts.de-DE.i18n.data.ts +29 -0
  2846. package/ts-source/websql-code/taon-posts/taon-cms-post/i18n/taon-cms-post-thumbnail.component.ts.de-DE.po +9 -0
  2847. package/ts-source/websql-code/taon-posts/taon-cms-post/i18n/taon-cms-post-thumbnail.component.ts.en-US.i18n.data.ts +28 -0
  2848. package/ts-source/websql-code/taon-posts/taon-cms-post/i18n/taon-cms-post-thumbnail.component.ts.en-US.po +9 -0
  2849. package/ts-source/websql-code/taon-posts/taon-cms-post/i18n/taon-cms-post-thumbnail.component.ts.pl-PL.i18n.data.ts +29 -0
  2850. package/ts-source/websql-code/taon-posts/taon-cms-post/i18n/taon-cms-post-thumbnail.component.ts.pl-PL.po +9 -0
  2851. package/ts-source/websql-code/taon-posts/taon-cms-post/i18n/taon-cms-post.component.html.de-DE.i18n.data.ts +545 -94
  2852. package/ts-source/websql-code/taon-posts/taon-cms-post/i18n/taon-cms-post.component.html.de-DE.po +318 -104
  2853. package/ts-source/websql-code/taon-posts/taon-cms-post/i18n/taon-cms-post.component.html.en-US.i18n.data.ts +465 -92
  2854. package/ts-source/websql-code/taon-posts/taon-cms-post/i18n/taon-cms-post.component.html.en-US.po +301 -87
  2855. package/ts-source/websql-code/taon-posts/taon-cms-post/i18n/taon-cms-post.component.html.pl-PL.i18n.data.ts +546 -93
  2856. package/ts-source/websql-code/taon-posts/taon-cms-post/i18n/taon-cms-post.component.html.pl-PL.po +317 -103
  2857. package/ts-source/websql-code/taon-posts/taon-cms-post/i18n/taon-cms-post.component.ts.de-DE.i18n.data.ts +235 -40
  2858. package/ts-source/websql-code/taon-posts/taon-cms-post/i18n/taon-cms-post.component.ts.de-DE.po +168 -43
  2859. package/ts-source/websql-code/taon-posts/taon-cms-post/i18n/taon-cms-post.component.ts.en-US.i18n.data.ts +198 -40
  2860. package/ts-source/websql-code/taon-posts/taon-cms-post/i18n/taon-cms-post.component.ts.en-US.po +164 -39
  2861. package/ts-source/websql-code/taon-posts/taon-cms-post/i18n/taon-cms-post.component.ts.pl-PL.i18n.data.ts +238 -43
  2862. package/ts-source/websql-code/taon-posts/taon-cms-post/i18n/taon-cms-post.component.ts.pl-PL.po +170 -45
  2863. package/ts-source/websql-code/taon-posts/taon-cms-post/i18n/taon-cms-post.translation.ts +10 -1
  2864. package/ts-source/websql-code/taon-posts/taon-cms-post/taon-cms-document-extractor.ts +499 -0
  2865. package/ts-source/websql-code/taon-posts/taon-cms-post/taon-cms-post-choice-dialog.component.html +31 -0
  2866. package/ts-source/websql-code/taon-posts/taon-cms-post/taon-cms-post-choice-dialog.component.ts +46 -0
  2867. package/ts-source/websql-code/taon-posts/taon-cms-post/taon-cms-post-thumbnail.component.ts +71 -0
  2868. package/ts-source/websql-code/taon-posts/taon-cms-post/taon-cms-post.component.html +1115 -603
  2869. package/ts-source/websql-code/taon-posts/taon-cms-post/taon-cms-post.component.scss +115 -0
  2870. package/ts-source/websql-code/taon-posts/taon-cms-post/taon-cms-post.component.ts +882 -53
  2871. package/ts-source/websql-code/taon-posts/taon-cms-post-details-page/i18n/taon-cms-post-details-page.component.ts.de-DE.i18n.data.ts +2 -1
  2872. package/ts-source/websql-code/taon-posts/taon-cms-post-details-page/i18n/taon-cms-post-details-page.component.ts.de-DE.po +1 -1
  2873. package/ts-source/websql-code/taon-posts/taon-cms-post-details-page/i18n/taon-cms-post-details-page.component.ts.pl-PL.i18n.data.ts +2 -1
  2874. package/ts-source/websql-code/taon-posts/taon-cms-post-details-page/i18n/taon-cms-post-details-page.component.ts.pl-PL.po +1 -1
  2875. package/ts-source/websql-code/taon-posts/taon-cms-post-details-page/taon-cms-post-details-page.component.ts +1 -0
  2876. package/ts-source/websql-code/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-post-table-actions.directive.ts.de-DE.i18n.data.ts +71 -15
  2877. package/ts-source/websql-code/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-post-table-actions.directive.ts.de-DE.po +46 -23
  2878. package/ts-source/websql-code/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-post-table-actions.directive.ts.en-US.i18n.data.ts +52 -15
  2879. package/ts-source/websql-code/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-post-table-actions.directive.ts.en-US.po +36 -13
  2880. package/ts-source/websql-code/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-post-table-actions.directive.ts.pl-PL.i18n.data.ts +71 -15
  2881. package/ts-source/websql-code/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-post-table-actions.directive.ts.pl-PL.po +46 -23
  2882. package/ts-source/websql-code/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.html.de-DE.i18n.data.ts +19 -12
  2883. package/ts-source/websql-code/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.html.de-DE.po +11 -11
  2884. package/ts-source/websql-code/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.html.en-US.i18n.data.ts +5 -5
  2885. package/ts-source/websql-code/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.html.en-US.po +4 -4
  2886. package/ts-source/websql-code/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.html.pl-PL.i18n.data.ts +19 -12
  2887. package/ts-source/websql-code/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.html.pl-PL.po +11 -11
  2888. package/ts-source/websql-code/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.ts.de-DE.i18n.data.ts +2 -1
  2889. package/ts-source/websql-code/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.ts.de-DE.po +1 -1
  2890. package/ts-source/websql-code/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.ts.pl-PL.i18n.data.ts +2 -1
  2891. package/ts-source/websql-code/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.ts.pl-PL.po +1 -1
  2892. package/ts-source/websql-code/taon-posts/taon-cms-posts-backoffice/taon-cms-post-table-actions.directive.ts +86 -18
  2893. package/ts-source/websql-code/taon-posts/taon-cms-revision-chooser/i18n/taon-cms-revision-chooser.component.html.de-DE.i18n.data.ts +24 -9
  2894. package/ts-source/websql-code/taon-posts/taon-cms-revision-chooser/i18n/taon-cms-revision-chooser.component.html.de-DE.po +14 -8
  2895. package/ts-source/websql-code/taon-posts/taon-cms-revision-chooser/i18n/taon-cms-revision-chooser.component.html.en-US.i18n.data.ts +24 -9
  2896. package/ts-source/websql-code/taon-posts/taon-cms-revision-chooser/i18n/taon-cms-revision-chooser.component.html.en-US.po +14 -8
  2897. package/ts-source/websql-code/taon-posts/taon-cms-revision-chooser/i18n/taon-cms-revision-chooser.component.html.pl-PL.i18n.data.ts +24 -9
  2898. package/ts-source/websql-code/taon-posts/taon-cms-revision-chooser/i18n/taon-cms-revision-chooser.component.html.pl-PL.po +14 -8
  2899. package/ts-source/websql-code/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.html.de-DE.i18n.data.ts +11 -5
  2900. package/ts-source/websql-code/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.html.de-DE.po +8 -4
  2901. package/ts-source/websql-code/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.html.en-US.i18n.data.ts +10 -5
  2902. package/ts-source/websql-code/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.html.en-US.po +8 -4
  2903. package/ts-source/websql-code/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.html.pl-PL.i18n.data.ts +11 -5
  2904. package/ts-source/websql-code/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.html.pl-PL.po +8 -4
  2905. package/ts-source/websql-code/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.ts.de-DE.i18n.data.ts +2 -2
  2906. package/ts-source/websql-code/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.ts.de-DE.po +2 -2
  2907. package/ts-source/websql-code/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.ts.en-US.i18n.data.ts +2 -2
  2908. package/ts-source/websql-code/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.ts.en-US.po +2 -2
  2909. package/ts-source/websql-code/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.ts.pl-PL.i18n.data.ts +2 -2
  2910. package/ts-source/websql-code/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.ts.pl-PL.po +2 -2
  2911. package/ts-source/websql-code/taon-posts/taon-related-post-chooser/taon-related-post-chooser.component.html +3 -3
  2912. package/ts-source/websql-code/taon-posts/taon-related-post-chooser/taon-related-post-chooser.component.ts +8 -1
  2913. package/ts-source/websql-code-prod/build-info._auto-generated_.ts +1 -1
  2914. package/ts-source/websql-code-prod/index._auto-generated_.ts +33 -0
  2915. package/ts-source/websql-code-prod/migrations/1793664000000_postVersionLinks.split-namespaces.json +4 -0
  2916. package/ts-source/websql-code-prod/migrations/1793664000000_postVersionLinks.ts +40 -0
  2917. package/ts-source/websql-code-prod/migrations/migrations_index._auto-generated_.ts +3 -0
  2918. package/ts-source/websql-code-prod/taon-cms-assets-backoffice/i18n/taon-cms-assets-backoffice.translation.ts +1 -1
  2919. package/ts-source/websql-code-prod/taon-cms-assets-backoffice/taon-cms-asset-preview.component.html +1 -1
  2920. package/ts-source/websql-code-prod/taon-cms-backoffice/i18n/taon-cms-backoffice.component.html.de-DE.i18n.data.ts +5 -0
  2921. package/ts-source/websql-code-prod/taon-cms-backoffice/i18n/taon-cms-backoffice.component.html.de-DE.po +1 -0
  2922. package/ts-source/websql-code-prod/taon-cms-backoffice/i18n/taon-cms-backoffice.component.html.en-US.i18n.data.ts +5 -0
  2923. package/ts-source/websql-code-prod/taon-cms-backoffice/i18n/taon-cms-backoffice.component.html.en-US.po +1 -0
  2924. package/ts-source/websql-code-prod/taon-cms-backoffice/i18n/taon-cms-backoffice.component.html.pl-PL.i18n.data.ts +5 -0
  2925. package/ts-source/websql-code-prod/taon-cms-backoffice/i18n/taon-cms-backoffice.component.html.pl-PL.po +1 -0
  2926. package/ts-source/websql-code-prod/taon-cms-backoffice/i18n/taon-cms-backoffice.routes.ts.de-DE.i18n.data.ts +18 -5
  2927. package/ts-source/websql-code-prod/taon-cms-backoffice/i18n/taon-cms-backoffice.routes.ts.de-DE.po +13 -5
  2928. package/ts-source/websql-code-prod/taon-cms-backoffice/i18n/taon-cms-backoffice.routes.ts.en-US.i18n.data.ts +15 -5
  2929. package/ts-source/websql-code-prod/taon-cms-backoffice/i18n/taon-cms-backoffice.routes.ts.en-US.po +12 -4
  2930. package/ts-source/websql-code-prod/taon-cms-backoffice/i18n/taon-cms-backoffice.routes.ts.pl-PL.i18n.data.ts +17 -5
  2931. package/ts-source/websql-code-prod/taon-cms-backoffice/i18n/taon-cms-backoffice.routes.ts.pl-PL.po +12 -4
  2932. package/ts-source/websql-code-prod/taon-cms-backoffice/i18n/taon-cms-backoffice.translation.ts +1 -1
  2933. package/ts-source/websql-code-prod/taon-cms-backoffice/taon-cms-backoffice.routes.ts +20 -0
  2934. package/ts-source/websql-code-prod/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.html.de-DE.i18n.data.ts +64 -0
  2935. package/ts-source/websql-code-prod/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.html.de-DE.po +30 -0
  2936. package/ts-source/websql-code-prod/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.html.en-US.i18n.data.ts +57 -0
  2937. package/ts-source/websql-code-prod/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.html.en-US.po +30 -0
  2938. package/ts-source/websql-code-prod/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.html.pl-PL.i18n.data.ts +64 -0
  2939. package/ts-source/websql-code-prod/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.html.pl-PL.po +30 -0
  2940. package/ts-source/websql-code-prod/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.ts.de-DE.i18n.data.ts +77 -0
  2941. package/ts-source/websql-code-prod/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.ts.de-DE.po +41 -0
  2942. package/ts-source/websql-code-prod/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.ts.en-US.i18n.data.ts +68 -0
  2943. package/ts-source/websql-code-prod/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.ts.en-US.po +41 -0
  2944. package/ts-source/websql-code-prod/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.ts.pl-PL.i18n.data.ts +77 -0
  2945. package/ts-source/websql-code-prod/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.ts.pl-PL.po +41 -0
  2946. package/ts-source/websql-code-prod/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.translation.split-namespaces.json +4 -0
  2947. package/ts-source/websql-code-prod/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.translation.ts +21 -0
  2948. package/ts-source/websql-code-prod/taon-cms-backoffice/taon-cms-website-features/index.split-namespaces.json +4 -0
  2949. package/ts-source/websql-code-prod/taon-cms-backoffice/taon-cms-website-features/index.ts +13 -0
  2950. package/ts-source/websql-code-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.constants.ts.de-DE.i18n.data.ts +28 -0
  2951. package/ts-source/websql-code-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.constants.ts.de-DE.po +9 -0
  2952. package/ts-source/websql-code-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.constants.ts.en-US.i18n.data.ts +28 -0
  2953. package/ts-source/websql-code-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.constants.ts.en-US.po +9 -0
  2954. package/ts-source/websql-code-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.constants.ts.pl-PL.i18n.data.ts +28 -0
  2955. package/ts-source/websql-code-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.constants.ts.pl-PL.po +9 -0
  2956. package/ts-source/websql-code-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.controller.ts.de-DE.i18n.data.ts +29 -0
  2957. package/ts-source/websql-code-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.controller.ts.de-DE.po +9 -0
  2958. package/ts-source/websql-code-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.controller.ts.en-US.i18n.data.ts +28 -0
  2959. package/ts-source/websql-code-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.controller.ts.en-US.po +9 -0
  2960. package/ts-source/websql-code-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.controller.ts.pl-PL.i18n.data.ts +29 -0
  2961. package/ts-source/websql-code-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.controller.ts.pl-PL.po +9 -0
  2962. package/ts-source/websql-code-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.translation.split-namespaces.json +4 -0
  2963. package/ts-source/websql-code-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.translation.ts +21 -0
  2964. package/ts-source/websql-code-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.abstract.context.split-namespaces.json +4 -0
  2965. package/ts-source/websql-code-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.abstract.context.ts +27 -0
  2966. package/ts-source/websql-code-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.api.service.split-namespaces.json +4 -0
  2967. package/ts-source/websql-code-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.api.service.ts +72 -0
  2968. package/ts-source/websql-code-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.config.service.split-namespaces.json +4 -0
  2969. package/ts-source/websql-code-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.config.service.ts +28 -0
  2970. package/ts-source/websql-code-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.constants.split-namespaces.json +4 -0
  2971. package/ts-source/websql-code-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.constants.ts +25 -0
  2972. package/ts-source/websql-code-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.controller.split-namespaces.json +4 -0
  2973. package/ts-source/websql-code-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.controller.ts +59 -0
  2974. package/ts-source/websql-code-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.kv.repository.split-namespaces.json +4 -0
  2975. package/ts-source/websql-code-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.kv.repository.ts +86 -0
  2976. package/ts-source/websql-code-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.models.split-namespaces.json +12 -0
  2977. package/ts-source/websql-code-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.models.ts +21 -0
  2978. package/ts-source/websql-code-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.provider.split-namespaces.json +4 -0
  2979. package/ts-source/websql-code-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.provider.ts +30 -0
  2980. package/ts-source/websql-code-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.utils.split-namespaces.json +12 -0
  2981. package/ts-source/websql-code-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.utils.ts +24 -0
  2982. package/ts-source/websql-code-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.validators.split-namespaces.json +10 -0
  2983. package/ts-source/websql-code-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.validators.ts +24 -0
  2984. package/ts-source/websql-code-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-features.component.html +58 -0
  2985. package/ts-source/websql-code-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-features.component.scss +38 -0
  2986. package/ts-source/websql-code-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-features.component.split-namespaces.json +4 -0
  2987. package/ts-source/websql-code-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-features.component.ts +127 -0
  2988. package/ts-source/websql-code-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-features.models.split-namespaces.json +4 -0
  2989. package/ts-source/websql-code-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-features.models.ts +12 -0
  2990. package/ts-source/websql-code-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-features.routes.split-namespaces.json +4 -0
  2991. package/ts-source/websql-code-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-features.routes.ts +21 -0
  2992. package/ts-source/websql-code-prod/taon-cms-category/i18n/taon-cms-category.translation.ts +1 -1
  2993. package/ts-source/websql-code-prod/taon-cms-comment/i18n/taon-cms-comment.controller.ts.de-DE.i18n.data.ts +145 -0
  2994. package/ts-source/websql-code-prod/taon-cms-comment/i18n/taon-cms-comment.controller.ts.de-DE.po +77 -0
  2995. package/ts-source/websql-code-prod/taon-cms-comment/i18n/taon-cms-comment.controller.ts.en-US.i18n.data.ts +124 -0
  2996. package/ts-source/websql-code-prod/taon-cms-comment/i18n/taon-cms-comment.controller.ts.en-US.po +77 -0
  2997. package/ts-source/websql-code-prod/taon-cms-comment/i18n/taon-cms-comment.controller.ts.pl-PL.i18n.data.ts +145 -0
  2998. package/ts-source/websql-code-prod/taon-cms-comment/i18n/taon-cms-comment.controller.ts.pl-PL.po +77 -0
  2999. package/ts-source/websql-code-prod/taon-cms-comment/i18n/taon-cms-comment.translation.split-namespaces.json +4 -0
  3000. package/ts-source/websql-code-prod/taon-cms-comment/i18n/taon-cms-comment.translation.ts +24 -0
  3001. package/ts-source/websql-code-prod/taon-cms-comment/i18n/taon-cms-comments.component.html.de-DE.i18n.data.ts +122 -0
  3002. package/ts-source/websql-code-prod/taon-cms-comment/i18n/taon-cms-comments.component.html.de-DE.po +64 -0
  3003. package/ts-source/websql-code-prod/taon-cms-comment/i18n/taon-cms-comments.component.html.en-US.i18n.data.ts +105 -0
  3004. package/ts-source/websql-code-prod/taon-cms-comment/i18n/taon-cms-comments.component.html.en-US.po +64 -0
  3005. package/ts-source/websql-code-prod/taon-cms-comment/i18n/taon-cms-comments.component.html.pl-PL.i18n.data.ts +122 -0
  3006. package/ts-source/websql-code-prod/taon-cms-comment/i18n/taon-cms-comments.component.html.pl-PL.po +64 -0
  3007. package/ts-source/websql-code-prod/taon-cms-comment/i18n/taon-cms-comments.component.ts.de-DE.i18n.data.ts +53 -0
  3008. package/ts-source/websql-code-prod/taon-cms-comment/i18n/taon-cms-comments.component.ts.de-DE.po +25 -0
  3009. package/ts-source/websql-code-prod/taon-cms-comment/i18n/taon-cms-comments.component.ts.en-US.i18n.data.ts +48 -0
  3010. package/ts-source/websql-code-prod/taon-cms-comment/i18n/taon-cms-comments.component.ts.en-US.po +25 -0
  3011. package/ts-source/websql-code-prod/taon-cms-comment/i18n/taon-cms-comments.component.ts.pl-PL.i18n.data.ts +53 -0
  3012. package/ts-source/websql-code-prod/taon-cms-comment/i18n/taon-cms-comments.component.ts.pl-PL.po +25 -0
  3013. package/ts-source/websql-code-prod/taon-cms-comment/index.ts +5 -0
  3014. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comment-api.service.ts +97 -4
  3015. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comment-blocked-phrase.entity.split-namespaces.json +4 -0
  3016. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comment-blocked-phrase.entity.ts +28 -0
  3017. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comment-blocked-user.entity.split-namespaces.json +4 -0
  3018. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comment-blocked-user.entity.ts +26 -0
  3019. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comment-spam-report.entity.split-namespaces.json +4 -0
  3020. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comment-spam-report.entity.ts +28 -0
  3021. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comment-vote.entity.split-namespaces.json +4 -0
  3022. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comment-vote.entity.ts +30 -0
  3023. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comment.abstract.context.ts +11 -1
  3024. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comment.controller.ts +464 -15
  3025. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comment.entity.ts +3 -3
  3026. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.component.ts.de-DE.i18n.data.ts +19 -0
  3027. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.component.ts.de-DE.po +5 -0
  3028. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.component.ts.en-US.i18n.data.ts +19 -0
  3029. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.component.ts.en-US.po +5 -0
  3030. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.component.ts.pl-PL.i18n.data.ts +19 -0
  3031. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.component.ts.pl-PL.po +5 -0
  3032. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.routes.ts.de-DE.i18n.data.ts +41 -0
  3033. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.routes.ts.de-DE.po +17 -0
  3034. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.routes.ts.en-US.i18n.data.ts +38 -0
  3035. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.routes.ts.en-US.po +17 -0
  3036. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.routes.ts.pl-PL.i18n.data.ts +41 -0
  3037. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.routes.ts.pl-PL.po +17 -0
  3038. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.translation.split-namespaces.json +4 -0
  3039. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.translation.ts +21 -0
  3040. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/index.split-namespaces.json +4 -0
  3041. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/index.ts +13 -0
  3042. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.component.html.de-DE.i18n.data.ts +118 -0
  3043. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.component.html.de-DE.po +66 -0
  3044. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.component.html.en-US.i18n.data.ts +102 -0
  3045. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.component.html.en-US.po +66 -0
  3046. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.component.html.pl-PL.i18n.data.ts +118 -0
  3047. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.component.html.pl-PL.po +66 -0
  3048. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.component.ts.de-DE.i18n.data.ts +77 -0
  3049. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.component.ts.de-DE.po +41 -0
  3050. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.component.ts.en-US.i18n.data.ts +68 -0
  3051. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.component.ts.en-US.po +41 -0
  3052. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.component.ts.pl-PL.i18n.data.ts +77 -0
  3053. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.component.ts.pl-PL.po +41 -0
  3054. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.translation.split-namespaces.json +4 -0
  3055. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/i18n/taon-cms-comments-all-preview-backoffice.translation.ts +21 -0
  3056. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/index.split-namespaces.json +4 -0
  3057. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/index.ts +13 -0
  3058. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/taon-cms-comments-all-preview-backoffice.component.html +68 -0
  3059. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/taon-cms-comments-all-preview-backoffice.component.scss +14 -0
  3060. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/taon-cms-comments-all-preview-backoffice.component.split-namespaces.json +4 -0
  3061. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/taon-cms-comments-all-preview-backoffice.component.ts +109 -0
  3062. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/taon-cms-comments-all-preview-backoffice.models.split-namespaces.json +4 -0
  3063. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/taon-cms-comments-all-preview-backoffice.models.ts +12 -0
  3064. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/taon-cms-comments-all-preview-backoffice.routes.split-namespaces.json +4 -0
  3065. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/taon-cms-comments-all-preview-backoffice.routes.ts +21 -0
  3066. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-backoffice.component.html +14 -0
  3067. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-backoffice.component.scss +14 -0
  3068. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-backoffice.component.split-namespaces.json +4 -0
  3069. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-backoffice.component.ts +28 -0
  3070. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-backoffice.models.split-namespaces.json +4 -0
  3071. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-backoffice.models.ts +12 -0
  3072. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-backoffice.routes.split-namespaces.json +4 -0
  3073. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-backoffice.routes.ts +51 -0
  3074. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.component.html.de-DE.i18n.data.ts +94 -0
  3075. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.component.html.de-DE.po +50 -0
  3076. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.component.html.en-US.i18n.data.ts +82 -0
  3077. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.component.html.en-US.po +50 -0
  3078. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.component.html.pl-PL.i18n.data.ts +94 -0
  3079. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.component.html.pl-PL.po +50 -0
  3080. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.component.ts.de-DE.i18n.data.ts +41 -0
  3081. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.component.ts.de-DE.po +17 -0
  3082. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.component.ts.en-US.i18n.data.ts +38 -0
  3083. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.component.ts.en-US.po +17 -0
  3084. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.component.ts.pl-PL.i18n.data.ts +41 -0
  3085. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.component.ts.pl-PL.po +17 -0
  3086. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.translation.split-namespaces.json +4 -0
  3087. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.translation.ts +21 -0
  3088. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/index.split-namespaces.json +4 -0
  3089. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/index.ts +13 -0
  3090. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/taon-cms-comments-blocked-users.component.html +48 -0
  3091. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/taon-cms-comments-blocked-users.component.scss +14 -0
  3092. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/taon-cms-comments-blocked-users.component.split-namespaces.json +4 -0
  3093. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/taon-cms-comments-blocked-users.component.ts +94 -0
  3094. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/taon-cms-comments-blocked-users.models.split-namespaces.json +4 -0
  3095. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/taon-cms-comments-blocked-users.models.ts +12 -0
  3096. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/taon-cms-comments-blocked-users.routes.split-namespaces.json +4 -0
  3097. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/taon-cms-comments-blocked-users.routes.ts +21 -0
  3098. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.component.html.de-DE.i18n.data.ts +65 -0
  3099. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.component.html.de-DE.po +33 -0
  3100. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.component.html.en-US.i18n.data.ts +58 -0
  3101. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.component.html.en-US.po +33 -0
  3102. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.component.html.pl-PL.i18n.data.ts +65 -0
  3103. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.component.html.pl-PL.po +33 -0
  3104. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.component.ts.de-DE.i18n.data.ts +41 -0
  3105. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.component.ts.de-DE.po +17 -0
  3106. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.component.ts.en-US.i18n.data.ts +38 -0
  3107. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.component.ts.en-US.po +17 -0
  3108. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.component.ts.pl-PL.i18n.data.ts +41 -0
  3109. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.component.ts.pl-PL.po +17 -0
  3110. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.translation.split-namespaces.json +4 -0
  3111. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.translation.ts +21 -0
  3112. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/index.split-namespaces.json +4 -0
  3113. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/index.ts +13 -0
  3114. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/taon-cms-comments-filters-settings.component.html +38 -0
  3115. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/taon-cms-comments-filters-settings.component.scss +14 -0
  3116. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/taon-cms-comments-filters-settings.component.split-namespaces.json +4 -0
  3117. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/taon-cms-comments-filters-settings.component.ts +82 -0
  3118. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/taon-cms-comments-filters-settings.models.split-namespaces.json +4 -0
  3119. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/taon-cms-comments-filters-settings.models.ts +12 -0
  3120. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/taon-cms-comments-filters-settings.routes.split-namespaces.json +4 -0
  3121. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/taon-cms-comments-filters-settings.routes.ts +21 -0
  3122. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments.component.html +108 -0
  3123. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments.component.scss +39 -0
  3124. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments.component.split-namespaces.json +4 -0
  3125. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments.component.ts +141 -0
  3126. package/ts-source/websql-code-prod/taon-cms-content/i18n/taon-cms-content-storage.controller.ts.de-DE.i18n.data.ts +1 -1
  3127. package/ts-source/websql-code-prod/taon-cms-content/i18n/taon-cms-content-storage.controller.ts.de-DE.po +1 -1
  3128. package/ts-source/websql-code-prod/taon-cms-content/i18n/taon-cms-content-storage.controller.ts.en-US.i18n.data.ts +1 -1
  3129. package/ts-source/websql-code-prod/taon-cms-content/i18n/taon-cms-content-storage.controller.ts.en-US.po +1 -1
  3130. package/ts-source/websql-code-prod/taon-cms-content/i18n/taon-cms-content-storage.controller.ts.pl-PL.i18n.data.ts +1 -1
  3131. package/ts-source/websql-code-prod/taon-cms-content/i18n/taon-cms-content-storage.controller.ts.pl-PL.po +1 -1
  3132. package/ts-source/websql-code-prod/taon-cms-content/i18n/taon-cms-content.controller.ts.de-DE.i18n.data.ts +28 -6
  3133. package/ts-source/websql-code-prod/taon-cms-content/i18n/taon-cms-content.controller.ts.de-DE.po +16 -6
  3134. package/ts-source/websql-code-prod/taon-cms-content/i18n/taon-cms-content.controller.ts.en-US.i18n.data.ts +24 -6
  3135. package/ts-source/websql-code-prod/taon-cms-content/i18n/taon-cms-content.controller.ts.en-US.po +16 -6
  3136. package/ts-source/websql-code-prod/taon-cms-content/i18n/taon-cms-content.controller.ts.pl-PL.i18n.data.ts +28 -6
  3137. package/ts-source/websql-code-prod/taon-cms-content/i18n/taon-cms-content.controller.ts.pl-PL.po +16 -6
  3138. package/ts-source/websql-code-prod/taon-cms-content/i18n/taon-cms-content.translation.ts +1 -1
  3139. package/ts-source/websql-code-prod/taon-cms-content/taon-cms-content-api.service.ts +60 -3
  3140. package/ts-source/websql-code-prod/taon-cms-content/taon-cms-content-storage.controller.ts +16 -1
  3141. package/ts-source/websql-code-prod/taon-cms-content/taon-cms-content.controller.ts +188 -3
  3142. package/ts-source/websql-code-prod/taon-cms-content/taon-cms-content.entity.ts +6 -0
  3143. package/ts-source/websql-code-prod/taon-cms-content/taon-cms-content.models.ts +39 -0
  3144. package/ts-source/websql-code-prod/taon-cms-content/taon-cms-content.repository.ts +802 -31
  3145. package/ts-source/websql-code-prod/taon-cms-content/taon-cms-content.utils.split-namespaces.json +3 -1
  3146. package/ts-source/websql-code-prod/taon-cms-content/taon-cms-content.utils.ts +6 -0
  3147. package/ts-source/websql-code-prod/taon-cms-content/taon-cms-content.validation.ts +4 -0
  3148. package/ts-source/websql-code-prod/taon-cms-content-revision/taon-cms-content-revision.repository.ts +18 -0
  3149. package/ts-source/websql-code-prod/taon-cms-tag/i18n/taon-cms-tag.translation.ts +1 -1
  3150. package/ts-source/websql-code-prod/taon-cms-taxonomy-backoffice/i18n/taon-cms-taxonomy-backoffice.translation.ts +1 -1
  3151. package/ts-source/websql-code-prod/taon-cms-taxonomy-backoffice/i18n/taon-cms-taxonomy-quick-create-dialog.component.ts.de-DE.i18n.data.ts +14 -7
  3152. package/ts-source/websql-code-prod/taon-cms-taxonomy-backoffice/i18n/taon-cms-taxonomy-quick-create-dialog.component.ts.de-DE.po +7 -7
  3153. package/ts-source/websql-code-prod/taon-cms-taxonomy-backoffice/i18n/taon-cms-taxonomy-quick-create-dialog.component.ts.pl-PL.i18n.data.ts +14 -7
  3154. package/ts-source/websql-code-prod/taon-cms-taxonomy-backoffice/i18n/taon-cms-taxonomy-quick-create-dialog.component.ts.pl-PL.po +7 -7
  3155. package/ts-source/websql-code-prod/taon-cms.abstract.context.ts +2 -0
  3156. package/ts-source/websql-code-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.html.de-DE.i18n.data.ts +27 -16
  3157. package/ts-source/websql-code-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.html.de-DE.po +18 -18
  3158. package/ts-source/websql-code-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.html.en-US.i18n.data.ts +11 -11
  3159. package/ts-source/websql-code-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.html.en-US.po +10 -10
  3160. package/ts-source/websql-code-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.html.pl-PL.i18n.data.ts +27 -16
  3161. package/ts-source/websql-code-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.html.pl-PL.po +18 -18
  3162. package/ts-source/websql-code-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.ts.de-DE.i18n.data.ts +8 -4
  3163. package/ts-source/websql-code-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.ts.de-DE.po +4 -4
  3164. package/ts-source/websql-code-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.ts.pl-PL.i18n.data.ts +8 -4
  3165. package/ts-source/websql-code-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.ts.pl-PL.po +4 -4
  3166. package/ts-source/websql-code-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.translation.ts +1 -1
  3167. package/ts-source/websql-code-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.html.de-DE.i18n.data.ts +22 -5
  3168. package/ts-source/websql-code-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.html.de-DE.po +12 -4
  3169. package/ts-source/websql-code-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.html.en-US.i18n.data.ts +10 -0
  3170. package/ts-source/websql-code-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.html.en-US.po +8 -0
  3171. package/ts-source/websql-code-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.html.pl-PL.i18n.data.ts +22 -5
  3172. package/ts-source/websql-code-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.html.pl-PL.po +12 -4
  3173. package/ts-source/websql-code-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.ts.de-DE.i18n.data.ts +16 -5
  3174. package/ts-source/websql-code-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.ts.de-DE.po +14 -10
  3175. package/ts-source/websql-code-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.ts.en-US.i18n.data.ts +10 -5
  3176. package/ts-source/websql-code-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.ts.en-US.po +9 -5
  3177. package/ts-source/websql-code-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.ts.pl-PL.i18n.data.ts +16 -5
  3178. package/ts-source/websql-code-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.ts.pl-PL.po +14 -10
  3179. package/ts-source/websql-code-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-cover.component.ts.de-DE.i18n.data.ts +2 -1
  3180. package/ts-source/websql-code-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-cover.component.ts.de-DE.po +1 -1
  3181. package/ts-source/websql-code-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-cover.component.ts.pl-PL.i18n.data.ts +2 -1
  3182. package/ts-source/websql-code-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-cover.component.ts.pl-PL.po +1 -1
  3183. package/ts-source/websql-code-prod/taon-posts/taon-cms-course-backoffice/taon-cms-course-backoffice.component.html +3 -2
  3184. package/ts-source/websql-code-prod/taon-posts/taon-cms-course-backoffice/taon-cms-course-contents.component.html +23 -0
  3185. package/ts-source/websql-code-prod/taon-posts/taon-cms-course-backoffice/taon-cms-course-contents.component.ts +22 -1
  3186. package/ts-source/websql-code-prod/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.html.de-DE.i18n.data.ts +35 -0
  3187. package/ts-source/websql-code-prod/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.html.de-DE.po +13 -0
  3188. package/ts-source/websql-code-prod/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.html.en-US.i18n.data.ts +33 -0
  3189. package/ts-source/websql-code-prod/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.html.en-US.po +13 -0
  3190. package/ts-source/websql-code-prod/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.html.pl-PL.i18n.data.ts +35 -0
  3191. package/ts-source/websql-code-prod/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.html.pl-PL.po +13 -0
  3192. package/ts-source/websql-code-prod/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.ts.de-DE.i18n.data.ts +19 -0
  3193. package/ts-source/websql-code-prod/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.ts.de-DE.po +5 -0
  3194. package/ts-source/websql-code-prod/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.ts.en-US.i18n.data.ts +19 -0
  3195. package/ts-source/websql-code-prod/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.ts.en-US.po +5 -0
  3196. package/ts-source/websql-code-prod/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.ts.pl-PL.i18n.data.ts +19 -0
  3197. package/ts-source/websql-code-prod/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.ts.pl-PL.po +5 -0
  3198. package/ts-source/websql-code-prod/taon-posts/taon-cms-post/i18n/taon-cms-post-thumbnail.component.ts.de-DE.i18n.data.ts +29 -0
  3199. package/ts-source/websql-code-prod/taon-posts/taon-cms-post/i18n/taon-cms-post-thumbnail.component.ts.de-DE.po +9 -0
  3200. package/ts-source/websql-code-prod/taon-posts/taon-cms-post/i18n/taon-cms-post-thumbnail.component.ts.en-US.i18n.data.ts +28 -0
  3201. package/ts-source/websql-code-prod/taon-posts/taon-cms-post/i18n/taon-cms-post-thumbnail.component.ts.en-US.po +9 -0
  3202. package/ts-source/websql-code-prod/taon-posts/taon-cms-post/i18n/taon-cms-post-thumbnail.component.ts.pl-PL.i18n.data.ts +29 -0
  3203. package/ts-source/websql-code-prod/taon-posts/taon-cms-post/i18n/taon-cms-post-thumbnail.component.ts.pl-PL.po +9 -0
  3204. package/ts-source/websql-code-prod/taon-posts/taon-cms-post/i18n/taon-cms-post.component.html.de-DE.i18n.data.ts +545 -94
  3205. package/ts-source/websql-code-prod/taon-posts/taon-cms-post/i18n/taon-cms-post.component.html.de-DE.po +318 -104
  3206. package/ts-source/websql-code-prod/taon-posts/taon-cms-post/i18n/taon-cms-post.component.html.en-US.i18n.data.ts +465 -92
  3207. package/ts-source/websql-code-prod/taon-posts/taon-cms-post/i18n/taon-cms-post.component.html.en-US.po +301 -87
  3208. package/ts-source/websql-code-prod/taon-posts/taon-cms-post/i18n/taon-cms-post.component.html.pl-PL.i18n.data.ts +546 -93
  3209. package/ts-source/websql-code-prod/taon-posts/taon-cms-post/i18n/taon-cms-post.component.html.pl-PL.po +317 -103
  3210. package/ts-source/websql-code-prod/taon-posts/taon-cms-post/i18n/taon-cms-post.component.ts.de-DE.i18n.data.ts +235 -40
  3211. package/ts-source/websql-code-prod/taon-posts/taon-cms-post/i18n/taon-cms-post.component.ts.de-DE.po +168 -43
  3212. package/ts-source/websql-code-prod/taon-posts/taon-cms-post/i18n/taon-cms-post.component.ts.en-US.i18n.data.ts +198 -40
  3213. package/ts-source/websql-code-prod/taon-posts/taon-cms-post/i18n/taon-cms-post.component.ts.en-US.po +164 -39
  3214. package/ts-source/websql-code-prod/taon-posts/taon-cms-post/i18n/taon-cms-post.component.ts.pl-PL.i18n.data.ts +238 -43
  3215. package/ts-source/websql-code-prod/taon-posts/taon-cms-post/i18n/taon-cms-post.component.ts.pl-PL.po +170 -45
  3216. package/ts-source/websql-code-prod/taon-posts/taon-cms-post/i18n/taon-cms-post.translation.ts +11 -2
  3217. package/ts-source/websql-code-prod/taon-posts/taon-cms-post/taon-cms-document-extractor.split-namespaces.json +4 -0
  3218. package/ts-source/websql-code-prod/taon-posts/taon-cms-post/taon-cms-document-extractor.ts +499 -0
  3219. package/ts-source/websql-code-prod/taon-posts/taon-cms-post/taon-cms-post-choice-dialog.component.html +31 -0
  3220. package/ts-source/websql-code-prod/taon-posts/taon-cms-post/taon-cms-post-choice-dialog.component.split-namespaces.json +4 -0
  3221. package/ts-source/websql-code-prod/taon-posts/taon-cms-post/taon-cms-post-choice-dialog.component.ts +46 -0
  3222. package/ts-source/websql-code-prod/taon-posts/taon-cms-post/taon-cms-post-thumbnail.component.split-namespaces.json +4 -0
  3223. package/ts-source/websql-code-prod/taon-posts/taon-cms-post/taon-cms-post-thumbnail.component.ts +71 -0
  3224. package/ts-source/websql-code-prod/taon-posts/taon-cms-post/taon-cms-post.component.html +1115 -603
  3225. package/ts-source/websql-code-prod/taon-posts/taon-cms-post/taon-cms-post.component.scss +115 -0
  3226. package/ts-source/websql-code-prod/taon-posts/taon-cms-post/taon-cms-post.component.ts +882 -53
  3227. package/ts-source/websql-code-prod/taon-posts/taon-cms-post-details-page/i18n/taon-cms-post-details-page.component.ts.de-DE.i18n.data.ts +2 -1
  3228. package/ts-source/websql-code-prod/taon-posts/taon-cms-post-details-page/i18n/taon-cms-post-details-page.component.ts.de-DE.po +1 -1
  3229. package/ts-source/websql-code-prod/taon-posts/taon-cms-post-details-page/i18n/taon-cms-post-details-page.component.ts.pl-PL.i18n.data.ts +2 -1
  3230. package/ts-source/websql-code-prod/taon-posts/taon-cms-post-details-page/i18n/taon-cms-post-details-page.component.ts.pl-PL.po +1 -1
  3231. package/ts-source/websql-code-prod/taon-posts/taon-cms-post-details-page/i18n/taon-cms-post-details-page.translation.ts +1 -1
  3232. package/ts-source/websql-code-prod/taon-posts/taon-cms-post-details-page/taon-cms-post-details-page.component.ts +1 -0
  3233. package/ts-source/websql-code-prod/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-post-table-actions.directive.ts.de-DE.i18n.data.ts +71 -15
  3234. package/ts-source/websql-code-prod/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-post-table-actions.directive.ts.de-DE.po +46 -23
  3235. package/ts-source/websql-code-prod/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-post-table-actions.directive.ts.en-US.i18n.data.ts +52 -15
  3236. package/ts-source/websql-code-prod/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-post-table-actions.directive.ts.en-US.po +36 -13
  3237. package/ts-source/websql-code-prod/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-post-table-actions.directive.ts.pl-PL.i18n.data.ts +71 -15
  3238. package/ts-source/websql-code-prod/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-post-table-actions.directive.ts.pl-PL.po +46 -23
  3239. package/ts-source/websql-code-prod/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.html.de-DE.i18n.data.ts +19 -12
  3240. package/ts-source/websql-code-prod/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.html.de-DE.po +11 -11
  3241. package/ts-source/websql-code-prod/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.html.en-US.i18n.data.ts +5 -5
  3242. package/ts-source/websql-code-prod/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.html.en-US.po +4 -4
  3243. package/ts-source/websql-code-prod/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.html.pl-PL.i18n.data.ts +19 -12
  3244. package/ts-source/websql-code-prod/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.html.pl-PL.po +11 -11
  3245. package/ts-source/websql-code-prod/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.ts.de-DE.i18n.data.ts +2 -1
  3246. package/ts-source/websql-code-prod/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.ts.de-DE.po +1 -1
  3247. package/ts-source/websql-code-prod/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.ts.pl-PL.i18n.data.ts +2 -1
  3248. package/ts-source/websql-code-prod/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.ts.pl-PL.po +1 -1
  3249. package/ts-source/websql-code-prod/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.translation.ts +1 -1
  3250. package/ts-source/websql-code-prod/taon-posts/taon-cms-posts-backoffice/taon-cms-post-table-actions.directive.ts +86 -18
  3251. package/ts-source/websql-code-prod/taon-posts/taon-cms-revision-chooser/i18n/taon-cms-revision-chooser.component.html.de-DE.i18n.data.ts +24 -9
  3252. package/ts-source/websql-code-prod/taon-posts/taon-cms-revision-chooser/i18n/taon-cms-revision-chooser.component.html.de-DE.po +14 -8
  3253. package/ts-source/websql-code-prod/taon-posts/taon-cms-revision-chooser/i18n/taon-cms-revision-chooser.component.html.en-US.i18n.data.ts +24 -9
  3254. package/ts-source/websql-code-prod/taon-posts/taon-cms-revision-chooser/i18n/taon-cms-revision-chooser.component.html.en-US.po +14 -8
  3255. package/ts-source/websql-code-prod/taon-posts/taon-cms-revision-chooser/i18n/taon-cms-revision-chooser.component.html.pl-PL.i18n.data.ts +24 -9
  3256. package/ts-source/websql-code-prod/taon-posts/taon-cms-revision-chooser/i18n/taon-cms-revision-chooser.component.html.pl-PL.po +14 -8
  3257. package/ts-source/websql-code-prod/taon-posts/taon-cms-revision-chooser/i18n/taon-cms-revision-chooser.translation.ts +1 -1
  3258. package/ts-source/websql-code-prod/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.html.de-DE.i18n.data.ts +11 -5
  3259. package/ts-source/websql-code-prod/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.html.de-DE.po +8 -4
  3260. package/ts-source/websql-code-prod/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.html.en-US.i18n.data.ts +10 -5
  3261. package/ts-source/websql-code-prod/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.html.en-US.po +8 -4
  3262. package/ts-source/websql-code-prod/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.html.pl-PL.i18n.data.ts +11 -5
  3263. package/ts-source/websql-code-prod/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.html.pl-PL.po +8 -4
  3264. package/ts-source/websql-code-prod/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.ts.de-DE.i18n.data.ts +2 -2
  3265. package/ts-source/websql-code-prod/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.ts.de-DE.po +2 -2
  3266. package/ts-source/websql-code-prod/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.ts.en-US.i18n.data.ts +2 -2
  3267. package/ts-source/websql-code-prod/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.ts.en-US.po +2 -2
  3268. package/ts-source/websql-code-prod/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.ts.pl-PL.i18n.data.ts +2 -2
  3269. package/ts-source/websql-code-prod/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.ts.pl-PL.po +2 -2
  3270. package/ts-source/websql-code-prod/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.translation.ts +1 -1
  3271. package/ts-source/websql-code-prod/taon-posts/taon-related-post-chooser/taon-related-post-chooser.component.html +3 -3
  3272. package/ts-source/websql-code-prod/taon-posts/taon-related-post-chooser/taon-related-post-chooser.component.ts +8 -1
  3273. package/websql/fesm2022/cms-websql-taon-cms-backoffice.component.html.de-DE.i18n.data-D8tHxCgy.mjs +21 -0
  3274. package/websql/fesm2022/cms-websql-taon-cms-backoffice.component.html.de-DE.i18n.data-D8tHxCgy.mjs.map +1 -0
  3275. package/websql/fesm2022/cms-websql-taon-cms-backoffice.component.html.en-US.i18n.data-CmwrxWX8.mjs +21 -0
  3276. package/websql/fesm2022/cms-websql-taon-cms-backoffice.component.html.en-US.i18n.data-CmwrxWX8.mjs.map +1 -0
  3277. package/websql/fesm2022/cms-websql-taon-cms-backoffice.component.html.pl-PL.i18n.data-tGusdlQf.mjs +21 -0
  3278. package/websql/fesm2022/cms-websql-taon-cms-backoffice.component.html.pl-PL.i18n.data-tGusdlQf.mjs.map +1 -0
  3279. package/websql/fesm2022/cms-websql-taon-cms-backoffice.routes.ts.de-DE.i18n.data-BfagP1V-.mjs +46 -0
  3280. package/websql/fesm2022/cms-websql-taon-cms-backoffice.routes.ts.de-DE.i18n.data-BfagP1V-.mjs.map +1 -0
  3281. package/websql/fesm2022/cms-websql-taon-cms-backoffice.routes.ts.en-US.i18n.data-DlrqGUe1.mjs +43 -0
  3282. package/websql/fesm2022/cms-websql-taon-cms-backoffice.routes.ts.en-US.i18n.data-DlrqGUe1.mjs.map +1 -0
  3283. package/websql/fesm2022/cms-websql-taon-cms-backoffice.routes.ts.pl-PL.i18n.data-YiDQh9iE.mjs +46 -0
  3284. package/websql/fesm2022/cms-websql-taon-cms-backoffice.routes.ts.pl-PL.i18n.data-YiDQh9iE.mjs.map +1 -0
  3285. package/websql/fesm2022/cms-websql-taon-cms-comment.controller.ts.de-DE.i18n.data-DfdKMA6Q.mjs +116 -0
  3286. package/websql/fesm2022/cms-websql-taon-cms-comment.controller.ts.de-DE.i18n.data-DfdKMA6Q.mjs.map +1 -0
  3287. package/websql/fesm2022/cms-websql-taon-cms-comment.controller.ts.en-US.i18n.data-CMr3vMuf.mjs +95 -0
  3288. package/websql/fesm2022/cms-websql-taon-cms-comment.controller.ts.en-US.i18n.data-CMr3vMuf.mjs.map +1 -0
  3289. package/websql/fesm2022/cms-websql-taon-cms-comment.controller.ts.pl-PL.i18n.data-alGje_2s.mjs +116 -0
  3290. package/websql/fesm2022/cms-websql-taon-cms-comment.controller.ts.pl-PL.i18n.data-alGje_2s.mjs.map +1 -0
  3291. package/websql/fesm2022/cms-websql-taon-cms-comments-all-preview-backoffice.component.html.de-DE.i18n.data-jlRvHpO-.mjs +91 -0
  3292. package/websql/fesm2022/cms-websql-taon-cms-comments-all-preview-backoffice.component.html.de-DE.i18n.data-jlRvHpO-.mjs.map +1 -0
  3293. package/websql/fesm2022/cms-websql-taon-cms-comments-all-preview-backoffice.component.html.en-US.i18n.data-BwdRoVlh.mjs +75 -0
  3294. package/websql/fesm2022/cms-websql-taon-cms-comments-all-preview-backoffice.component.html.en-US.i18n.data-BwdRoVlh.mjs.map +1 -0
  3295. package/websql/fesm2022/cms-websql-taon-cms-comments-all-preview-backoffice.component.html.pl-PL.i18n.data-BIaVJRRx.mjs +91 -0
  3296. package/websql/fesm2022/cms-websql-taon-cms-comments-all-preview-backoffice.component.html.pl-PL.i18n.data-BIaVJRRx.mjs.map +1 -0
  3297. package/websql/fesm2022/cms-websql-taon-cms-comments-all-preview-backoffice.component.ts.de-DE.i18n.data-D02CKD_B.mjs +56 -0
  3298. package/websql/fesm2022/cms-websql-taon-cms-comments-all-preview-backoffice.component.ts.de-DE.i18n.data-D02CKD_B.mjs.map +1 -0
  3299. package/websql/fesm2022/cms-websql-taon-cms-comments-all-preview-backoffice.component.ts.en-US.i18n.data-D_DNZ_4s.mjs +47 -0
  3300. package/websql/fesm2022/cms-websql-taon-cms-comments-all-preview-backoffice.component.ts.en-US.i18n.data-D_DNZ_4s.mjs.map +1 -0
  3301. package/websql/fesm2022/cms-websql-taon-cms-comments-all-preview-backoffice.component.ts.pl-PL.i18n.data-KScZlXpE.mjs +56 -0
  3302. package/websql/fesm2022/cms-websql-taon-cms-comments-all-preview-backoffice.component.ts.pl-PL.i18n.data-KScZlXpE.mjs.map +1 -0
  3303. package/websql/fesm2022/cms-websql-taon-cms-comments-backoffice.component.ts.de-DE.i18n.data-DKxoHRGn.mjs +10 -0
  3304. package/websql/fesm2022/cms-websql-taon-cms-comments-backoffice.component.ts.de-DE.i18n.data-DKxoHRGn.mjs.map +1 -0
  3305. package/websql/fesm2022/cms-websql-taon-cms-comments-backoffice.component.ts.en-US.i18n.data-BDz2v5u3.mjs +10 -0
  3306. package/websql/fesm2022/cms-websql-taon-cms-comments-backoffice.component.ts.en-US.i18n.data-BDz2v5u3.mjs.map +1 -0
  3307. package/websql/fesm2022/cms-websql-taon-cms-comments-backoffice.component.ts.pl-PL.i18n.data-DjTuh1Dt.mjs +10 -0
  3308. package/websql/fesm2022/cms-websql-taon-cms-comments-backoffice.component.ts.pl-PL.i18n.data-DjTuh1Dt.mjs.map +1 -0
  3309. package/websql/fesm2022/cms-websql-taon-cms-comments-backoffice.routes.ts.de-DE.i18n.data-VKAelP0F.mjs +26 -0
  3310. package/websql/fesm2022/cms-websql-taon-cms-comments-backoffice.routes.ts.de-DE.i18n.data-VKAelP0F.mjs.map +1 -0
  3311. package/websql/fesm2022/cms-websql-taon-cms-comments-backoffice.routes.ts.en-US.i18n.data-CPGJrpCf.mjs +23 -0
  3312. package/websql/fesm2022/cms-websql-taon-cms-comments-backoffice.routes.ts.en-US.i18n.data-CPGJrpCf.mjs.map +1 -0
  3313. package/websql/fesm2022/cms-websql-taon-cms-comments-backoffice.routes.ts.pl-PL.i18n.data-DorD3yQX.mjs +26 -0
  3314. package/websql/fesm2022/cms-websql-taon-cms-comments-backoffice.routes.ts.pl-PL.i18n.data-DorD3yQX.mjs.map +1 -0
  3315. package/websql/fesm2022/cms-websql-taon-cms-comments-blocked-users.component.html.de-DE.i18n.data-JsEk8S51.mjs +71 -0
  3316. package/websql/fesm2022/cms-websql-taon-cms-comments-blocked-users.component.html.de-DE.i18n.data-JsEk8S51.mjs.map +1 -0
  3317. package/websql/fesm2022/cms-websql-taon-cms-comments-blocked-users.component.html.en-US.i18n.data-CrtUBtvZ.mjs +59 -0
  3318. package/websql/fesm2022/cms-websql-taon-cms-comments-blocked-users.component.html.en-US.i18n.data-CrtUBtvZ.mjs.map +1 -0
  3319. package/websql/fesm2022/cms-websql-taon-cms-comments-blocked-users.component.html.pl-PL.i18n.data-CPMreyR2.mjs +71 -0
  3320. package/websql/fesm2022/cms-websql-taon-cms-comments-blocked-users.component.html.pl-PL.i18n.data-CPMreyR2.mjs.map +1 -0
  3321. package/websql/fesm2022/cms-websql-taon-cms-comments-blocked-users.component.ts.de-DE.i18n.data-D74Xg6Ev.mjs +26 -0
  3322. package/websql/fesm2022/cms-websql-taon-cms-comments-blocked-users.component.ts.de-DE.i18n.data-D74Xg6Ev.mjs.map +1 -0
  3323. package/websql/fesm2022/cms-websql-taon-cms-comments-blocked-users.component.ts.en-US.i18n.data-CVZAQr1t.mjs +23 -0
  3324. package/websql/fesm2022/cms-websql-taon-cms-comments-blocked-users.component.ts.en-US.i18n.data-CVZAQr1t.mjs.map +1 -0
  3325. package/websql/fesm2022/cms-websql-taon-cms-comments-blocked-users.component.ts.pl-PL.i18n.data-C8gk5Y1p.mjs +26 -0
  3326. package/websql/fesm2022/cms-websql-taon-cms-comments-blocked-users.component.ts.pl-PL.i18n.data-C8gk5Y1p.mjs.map +1 -0
  3327. package/websql/fesm2022/cms-websql-taon-cms-comments-filters-settings.component.html.de-DE.i18n.data-DKejO1pM.mjs +46 -0
  3328. package/websql/fesm2022/cms-websql-taon-cms-comments-filters-settings.component.html.de-DE.i18n.data-DKejO1pM.mjs.map +1 -0
  3329. package/websql/fesm2022/cms-websql-taon-cms-comments-filters-settings.component.html.en-US.i18n.data-CxqSwgFh.mjs +39 -0
  3330. package/websql/fesm2022/cms-websql-taon-cms-comments-filters-settings.component.html.en-US.i18n.data-CxqSwgFh.mjs.map +1 -0
  3331. package/websql/fesm2022/cms-websql-taon-cms-comments-filters-settings.component.html.pl-PL.i18n.data-ocB_2TIf.mjs +46 -0
  3332. package/websql/fesm2022/cms-websql-taon-cms-comments-filters-settings.component.html.pl-PL.i18n.data-ocB_2TIf.mjs.map +1 -0
  3333. package/websql/fesm2022/cms-websql-taon-cms-comments-filters-settings.component.ts.de-DE.i18n.data-BWv0OvuF.mjs +26 -0
  3334. package/websql/fesm2022/cms-websql-taon-cms-comments-filters-settings.component.ts.de-DE.i18n.data-BWv0OvuF.mjs.map +1 -0
  3335. package/websql/fesm2022/cms-websql-taon-cms-comments-filters-settings.component.ts.en-US.i18n.data-CqPrWRQ4.mjs +23 -0
  3336. package/websql/fesm2022/cms-websql-taon-cms-comments-filters-settings.component.ts.en-US.i18n.data-CqPrWRQ4.mjs.map +1 -0
  3337. package/websql/fesm2022/cms-websql-taon-cms-comments-filters-settings.component.ts.pl-PL.i18n.data-qb5Do2uU.mjs +26 -0
  3338. package/websql/fesm2022/cms-websql-taon-cms-comments-filters-settings.component.ts.pl-PL.i18n.data-qb5Do2uU.mjs.map +1 -0
  3339. package/websql/fesm2022/cms-websql-taon-cms-comments.component.html.de-DE.i18n.data-BDDL5Y2J.mjs +96 -0
  3340. package/websql/fesm2022/cms-websql-taon-cms-comments.component.html.de-DE.i18n.data-BDDL5Y2J.mjs.map +1 -0
  3341. package/websql/fesm2022/cms-websql-taon-cms-comments.component.html.en-US.i18n.data-CrJNJNfO.mjs +79 -0
  3342. package/websql/fesm2022/cms-websql-taon-cms-comments.component.html.en-US.i18n.data-CrJNJNfO.mjs.map +1 -0
  3343. package/websql/fesm2022/cms-websql-taon-cms-comments.component.html.pl-PL.i18n.data-BWybBBoe.mjs +96 -0
  3344. package/websql/fesm2022/cms-websql-taon-cms-comments.component.html.pl-PL.i18n.data-BWybBBoe.mjs.map +1 -0
  3345. package/websql/fesm2022/cms-websql-taon-cms-comments.component.ts.de-DE.i18n.data-BAuwTjLi.mjs +36 -0
  3346. package/websql/fesm2022/cms-websql-taon-cms-comments.component.ts.de-DE.i18n.data-BAuwTjLi.mjs.map +1 -0
  3347. package/websql/fesm2022/cms-websql-taon-cms-comments.component.ts.en-US.i18n.data-DwBpeV3m.mjs +31 -0
  3348. package/websql/fesm2022/cms-websql-taon-cms-comments.component.ts.en-US.i18n.data-DwBpeV3m.mjs.map +1 -0
  3349. package/websql/fesm2022/cms-websql-taon-cms-comments.component.ts.pl-PL.i18n.data-BD0Ah0Sf.mjs +36 -0
  3350. package/websql/fesm2022/cms-websql-taon-cms-comments.component.ts.pl-PL.i18n.data-BD0Ah0Sf.mjs.map +1 -0
  3351. package/websql/fesm2022/cms-websql-taon-cms-course-backoffice.component.html.de-DE.i18n.data-DeDggUO9.mjs +66 -0
  3352. package/websql/fesm2022/cms-websql-taon-cms-course-backoffice.component.html.de-DE.i18n.data-DeDggUO9.mjs.map +1 -0
  3353. package/websql/fesm2022/cms-websql-taon-cms-course-backoffice.component.html.en-US.i18n.data-uoEEVO8a.mjs +55 -0
  3354. package/websql/fesm2022/cms-websql-taon-cms-course-backoffice.component.html.en-US.i18n.data-uoEEVO8a.mjs.map +1 -0
  3355. package/websql/fesm2022/cms-websql-taon-cms-course-backoffice.component.html.pl-PL.i18n.data-M7AKGYpX.mjs +66 -0
  3356. package/websql/fesm2022/cms-websql-taon-cms-course-backoffice.component.html.pl-PL.i18n.data-M7AKGYpX.mjs.map +1 -0
  3357. package/websql/fesm2022/cms-websql-taon-cms-course-backoffice.component.ts.de-DE.i18n.data-BpgbKgY3.mjs +31 -0
  3358. package/websql/fesm2022/cms-websql-taon-cms-course-backoffice.component.ts.de-DE.i18n.data-BpgbKgY3.mjs.map +1 -0
  3359. package/websql/fesm2022/cms-websql-taon-cms-course-backoffice.component.ts.pl-PL.i18n.data-DkjNIJbK.mjs +31 -0
  3360. package/websql/fesm2022/cms-websql-taon-cms-course-backoffice.component.ts.pl-PL.i18n.data-DkjNIJbK.mjs.map +1 -0
  3361. package/websql/fesm2022/cms-websql-taon-cms-course-contents.component.html.de-DE.i18n.data-Bzo5KfeC.mjs +46 -0
  3362. package/websql/fesm2022/cms-websql-taon-cms-course-contents.component.html.de-DE.i18n.data-Bzo5KfeC.mjs.map +1 -0
  3363. package/websql/fesm2022/cms-websql-taon-cms-course-contents.component.html.en-US.i18n.data-BLADFF0I.mjs +39 -0
  3364. package/websql/fesm2022/cms-websql-taon-cms-course-contents.component.html.en-US.i18n.data-BLADFF0I.mjs.map +1 -0
  3365. package/websql/fesm2022/cms-websql-taon-cms-course-contents.component.html.pl-PL.i18n.data-DPK6Mhyf.mjs +46 -0
  3366. package/websql/fesm2022/cms-websql-taon-cms-course-contents.component.html.pl-PL.i18n.data-DPK6Mhyf.mjs.map +1 -0
  3367. package/websql/fesm2022/cms-websql-taon-cms-course-contents.component.ts.de-DE.i18n.data-CBzgWOR0.mjs +41 -0
  3368. package/websql/fesm2022/cms-websql-taon-cms-course-contents.component.ts.de-DE.i18n.data-CBzgWOR0.mjs.map +1 -0
  3369. package/websql/fesm2022/cms-websql-taon-cms-course-contents.component.ts.en-US.i18n.data-DpCnGeXs.mjs +35 -0
  3370. package/websql/fesm2022/cms-websql-taon-cms-course-contents.component.ts.en-US.i18n.data-DpCnGeXs.mjs.map +1 -0
  3371. package/websql/fesm2022/cms-websql-taon-cms-course-contents.component.ts.pl-PL.i18n.data-B7h8nQIi.mjs +41 -0
  3372. package/websql/fesm2022/cms-websql-taon-cms-course-contents.component.ts.pl-PL.i18n.data-B7h8nQIi.mjs.map +1 -0
  3373. package/websql/fesm2022/cms-websql-taon-cms-course-cover.component.ts.de-DE.i18n.data-CBohwLyL.mjs +16 -0
  3374. package/websql/fesm2022/cms-websql-taon-cms-course-cover.component.ts.de-DE.i18n.data-CBohwLyL.mjs.map +1 -0
  3375. package/websql/fesm2022/cms-websql-taon-cms-course-cover.component.ts.pl-PL.i18n.data-CZDYAXcE.mjs +16 -0
  3376. package/websql/fesm2022/cms-websql-taon-cms-course-cover.component.ts.pl-PL.i18n.data-CZDYAXcE.mjs.map +1 -0
  3377. package/websql/fesm2022/cms-websql-taon-cms-post-choice-dialog.component.html.de-DE.i18n.data-s2dXTIUw.mjs +21 -0
  3378. package/websql/fesm2022/cms-websql-taon-cms-post-choice-dialog.component.html.de-DE.i18n.data-s2dXTIUw.mjs.map +1 -0
  3379. package/websql/fesm2022/cms-websql-taon-cms-post-choice-dialog.component.html.en-US.i18n.data-NG3-0ZeO.mjs +19 -0
  3380. package/websql/fesm2022/cms-websql-taon-cms-post-choice-dialog.component.html.en-US.i18n.data-NG3-0ZeO.mjs.map +1 -0
  3381. package/websql/fesm2022/cms-websql-taon-cms-post-choice-dialog.component.html.pl-PL.i18n.data-DncFM6D3.mjs +21 -0
  3382. package/websql/fesm2022/cms-websql-taon-cms-post-choice-dialog.component.html.pl-PL.i18n.data-DncFM6D3.mjs.map +1 -0
  3383. package/websql/fesm2022/cms-websql-taon-cms-post-choice-dialog.component.ts.de-DE.i18n.data-DgAHAzJM.mjs +10 -0
  3384. package/websql/fesm2022/cms-websql-taon-cms-post-choice-dialog.component.ts.de-DE.i18n.data-DgAHAzJM.mjs.map +1 -0
  3385. package/websql/fesm2022/cms-websql-taon-cms-post-choice-dialog.component.ts.en-US.i18n.data-DAA5R9fI.mjs +10 -0
  3386. package/websql/fesm2022/cms-websql-taon-cms-post-choice-dialog.component.ts.en-US.i18n.data-DAA5R9fI.mjs.map +1 -0
  3387. package/websql/fesm2022/cms-websql-taon-cms-post-choice-dialog.component.ts.pl-PL.i18n.data-CyKmux96.mjs +10 -0
  3388. package/websql/fesm2022/cms-websql-taon-cms-post-choice-dialog.component.ts.pl-PL.i18n.data-CyKmux96.mjs.map +1 -0
  3389. package/websql/fesm2022/cms-websql-taon-cms-post-details-page.component.ts.de-DE.i18n.data-BjeCidkf.mjs +21 -0
  3390. package/websql/fesm2022/cms-websql-taon-cms-post-details-page.component.ts.de-DE.i18n.data-BjeCidkf.mjs.map +1 -0
  3391. package/websql/fesm2022/cms-websql-taon-cms-post-details-page.component.ts.pl-PL.i18n.data-SgEE6oFs.mjs +21 -0
  3392. package/websql/fesm2022/cms-websql-taon-cms-post-details-page.component.ts.pl-PL.i18n.data-SgEE6oFs.mjs.map +1 -0
  3393. package/websql/fesm2022/cms-websql-taon-cms-post-table-actions.directive.ts.de-DE.i18n.data-D2WBOl0S.mjs +106 -0
  3394. package/websql/fesm2022/cms-websql-taon-cms-post-table-actions.directive.ts.de-DE.i18n.data-D2WBOl0S.mjs.map +1 -0
  3395. package/websql/fesm2022/cms-websql-taon-cms-post-table-actions.directive.ts.en-US.i18n.data-BONUISS3.mjs +87 -0
  3396. package/websql/fesm2022/cms-websql-taon-cms-post-table-actions.directive.ts.en-US.i18n.data-BONUISS3.mjs.map +1 -0
  3397. package/websql/fesm2022/cms-websql-taon-cms-post-table-actions.directive.ts.pl-PL.i18n.data-COdeP-kl.mjs +106 -0
  3398. package/websql/fesm2022/cms-websql-taon-cms-post-table-actions.directive.ts.pl-PL.i18n.data-COdeP-kl.mjs.map +1 -0
  3399. package/websql/fesm2022/cms-websql-taon-cms-post-thumbnail.component.ts.de-DE.i18n.data-B5JcoASn.mjs +16 -0
  3400. package/websql/fesm2022/cms-websql-taon-cms-post-thumbnail.component.ts.de-DE.i18n.data-B5JcoASn.mjs.map +1 -0
  3401. package/websql/fesm2022/cms-websql-taon-cms-post-thumbnail.component.ts.en-US.i18n.data-BTv1ecMg.mjs +15 -0
  3402. package/websql/fesm2022/cms-websql-taon-cms-post-thumbnail.component.ts.en-US.i18n.data-BTv1ecMg.mjs.map +1 -0
  3403. package/websql/fesm2022/cms-websql-taon-cms-post-thumbnail.component.ts.pl-PL.i18n.data-CNPdfcRa.mjs +16 -0
  3404. package/websql/fesm2022/cms-websql-taon-cms-post-thumbnail.component.ts.pl-PL.i18n.data-CNPdfcRa.mjs.map +1 -0
  3405. package/websql/fesm2022/cms-websql-taon-cms-post.component.html.de-DE.i18n.data-C5Nxovtl.mjs +782 -0
  3406. package/websql/fesm2022/cms-websql-taon-cms-post.component.html.de-DE.i18n.data-C5Nxovtl.mjs.map +1 -0
  3407. package/websql/fesm2022/cms-websql-taon-cms-post.component.html.en-US.i18n.data-BTWsCDp3.mjs +703 -0
  3408. package/websql/fesm2022/cms-websql-taon-cms-post.component.html.en-US.i18n.data-BTWsCDp3.mjs.map +1 -0
  3409. package/websql/fesm2022/cms-websql-taon-cms-post.component.html.pl-PL.i18n.data-CZhAYAQh.mjs +784 -0
  3410. package/websql/fesm2022/cms-websql-taon-cms-post.component.html.pl-PL.i18n.data-CZhAYAQh.mjs.map +1 -0
  3411. package/websql/fesm2022/cms-websql-taon-cms-post.component.ts.de-DE.i18n.data-D10xOAxh.mjs +356 -0
  3412. package/websql/fesm2022/cms-websql-taon-cms-post.component.ts.de-DE.i18n.data-D10xOAxh.mjs.map +1 -0
  3413. package/websql/fesm2022/cms-websql-taon-cms-post.component.ts.en-US.i18n.data-D1Fh0Nd6.mjs +315 -0
  3414. package/websql/fesm2022/cms-websql-taon-cms-post.component.ts.en-US.i18n.data-D1Fh0Nd6.mjs.map +1 -0
  3415. package/websql/fesm2022/cms-websql-taon-cms-post.component.ts.pl-PL.i18n.data-C-sVs8_U.mjs +356 -0
  3416. package/websql/fesm2022/cms-websql-taon-cms-post.component.ts.pl-PL.i18n.data-C-sVs8_U.mjs.map +1 -0
  3417. package/websql/fesm2022/cms-websql-taon-cms-posts-backoffice.component.html.de-DE.i18n.data-DSmr29ff.mjs +56 -0
  3418. package/websql/fesm2022/cms-websql-taon-cms-posts-backoffice.component.html.de-DE.i18n.data-DSmr29ff.mjs.map +1 -0
  3419. package/websql/fesm2022/cms-websql-taon-cms-posts-backoffice.component.html.en-US.i18n.data-BdmAOpiv.mjs +49 -0
  3420. package/websql/fesm2022/cms-websql-taon-cms-posts-backoffice.component.html.en-US.i18n.data-BdmAOpiv.mjs.map +1 -0
  3421. package/websql/fesm2022/cms-websql-taon-cms-posts-backoffice.component.html.pl-PL.i18n.data-_PdbwRPQ.mjs +56 -0
  3422. package/websql/fesm2022/cms-websql-taon-cms-posts-backoffice.component.html.pl-PL.i18n.data-_PdbwRPQ.mjs.map +1 -0
  3423. package/websql/fesm2022/cms-websql-taon-cms-posts-backoffice.component.ts.de-DE.i18n.data-DWdrbrWh.mjs +26 -0
  3424. package/websql/fesm2022/cms-websql-taon-cms-posts-backoffice.component.ts.de-DE.i18n.data-DWdrbrWh.mjs.map +1 -0
  3425. package/websql/fesm2022/cms-websql-taon-cms-posts-backoffice.component.ts.pl-PL.i18n.data-Bzw-JYHR.mjs +26 -0
  3426. package/websql/fesm2022/cms-websql-taon-cms-posts-backoffice.component.ts.pl-PL.i18n.data-Bzw-JYHR.mjs.map +1 -0
  3427. package/websql/fesm2022/cms-websql-taon-cms-revision-chooser.component.html.de-DE.i18n.data-BzxwJAOV.mjs +85 -0
  3428. package/websql/fesm2022/cms-websql-taon-cms-revision-chooser.component.html.de-DE.i18n.data-BzxwJAOV.mjs.map +1 -0
  3429. package/websql/fesm2022/cms-websql-taon-cms-revision-chooser.component.html.en-US.i18n.data-BPW-SQof.mjs +85 -0
  3430. package/websql/fesm2022/cms-websql-taon-cms-revision-chooser.component.html.en-US.i18n.data-BPW-SQof.mjs.map +1 -0
  3431. package/websql/fesm2022/cms-websql-taon-cms-revision-chooser.component.html.pl-PL.i18n.data-oZDddcYy.mjs +85 -0
  3432. package/websql/fesm2022/cms-websql-taon-cms-revision-chooser.component.html.pl-PL.i18n.data-oZDddcYy.mjs.map +1 -0
  3433. package/websql/fesm2022/cms-websql-taon-cms-taxonomy-quick-create-dialog.component.ts.de-DE.i18n.data-DzXbIr4W.mjs +46 -0
  3434. package/websql/fesm2022/cms-websql-taon-cms-taxonomy-quick-create-dialog.component.ts.de-DE.i18n.data-DzXbIr4W.mjs.map +1 -0
  3435. package/websql/fesm2022/cms-websql-taon-cms-taxonomy-quick-create-dialog.component.ts.pl-PL.i18n.data-O8gOaUbZ.mjs +46 -0
  3436. package/websql/fesm2022/cms-websql-taon-cms-taxonomy-quick-create-dialog.component.ts.pl-PL.i18n.data-O8gOaUbZ.mjs.map +1 -0
  3437. package/websql/fesm2022/cms-websql-taon-cms-website-feature.constants.ts.de-DE.i18n.data-7KWUHv80.mjs +15 -0
  3438. package/websql/fesm2022/cms-websql-taon-cms-website-feature.constants.ts.de-DE.i18n.data-7KWUHv80.mjs.map +1 -0
  3439. package/websql/fesm2022/cms-websql-taon-cms-website-feature.constants.ts.en-US.i18n.data-CEZNKxnS.mjs +15 -0
  3440. package/websql/fesm2022/cms-websql-taon-cms-website-feature.constants.ts.en-US.i18n.data-CEZNKxnS.mjs.map +1 -0
  3441. package/websql/fesm2022/cms-websql-taon-cms-website-feature.constants.ts.pl-PL.i18n.data-C1Pg6u05.mjs +15 -0
  3442. package/websql/fesm2022/cms-websql-taon-cms-website-feature.constants.ts.pl-PL.i18n.data-C1Pg6u05.mjs.map +1 -0
  3443. package/websql/fesm2022/cms-websql-taon-cms-website-feature.controller.ts.de-DE.i18n.data-B833IXhG.mjs +16 -0
  3444. package/websql/fesm2022/cms-websql-taon-cms-website-feature.controller.ts.de-DE.i18n.data-B833IXhG.mjs.map +1 -0
  3445. package/websql/fesm2022/cms-websql-taon-cms-website-feature.controller.ts.en-US.i18n.data-BXCVLjol.mjs +15 -0
  3446. package/websql/fesm2022/cms-websql-taon-cms-website-feature.controller.ts.en-US.i18n.data-BXCVLjol.mjs.map +1 -0
  3447. package/websql/fesm2022/cms-websql-taon-cms-website-feature.controller.ts.pl-PL.i18n.data-cvAe8tlO.mjs +16 -0
  3448. package/websql/fesm2022/cms-websql-taon-cms-website-feature.controller.ts.pl-PL.i18n.data-cvAe8tlO.mjs.map +1 -0
  3449. package/websql/fesm2022/cms-websql-taon-cms-website-features.component.html.de-DE.i18n.data-DG8MgAsi.mjs +46 -0
  3450. package/websql/fesm2022/cms-websql-taon-cms-website-features.component.html.de-DE.i18n.data-DG8MgAsi.mjs.map +1 -0
  3451. package/websql/fesm2022/cms-websql-taon-cms-website-features.component.html.en-US.i18n.data-D9DUdN2h.mjs +39 -0
  3452. package/websql/fesm2022/cms-websql-taon-cms-website-features.component.html.en-US.i18n.data-D9DUdN2h.mjs.map +1 -0
  3453. package/websql/fesm2022/cms-websql-taon-cms-website-features.component.html.pl-PL.i18n.data-CTKpSoCT.mjs +46 -0
  3454. package/websql/fesm2022/cms-websql-taon-cms-website-features.component.html.pl-PL.i18n.data-CTKpSoCT.mjs.map +1 -0
  3455. package/websql/fesm2022/cms-websql-taon-cms-website-features.component.ts.de-DE.i18n.data-DbY1ZXTp.mjs +56 -0
  3456. package/websql/fesm2022/cms-websql-taon-cms-website-features.component.ts.de-DE.i18n.data-DbY1ZXTp.mjs.map +1 -0
  3457. package/websql/fesm2022/cms-websql-taon-cms-website-features.component.ts.en-US.i18n.data-DkS9fy2p.mjs +47 -0
  3458. package/websql/fesm2022/cms-websql-taon-cms-website-features.component.ts.en-US.i18n.data-DkS9fy2p.mjs.map +1 -0
  3459. package/websql/fesm2022/cms-websql-taon-cms-website-features.component.ts.pl-PL.i18n.data-BMtWbepK.mjs +56 -0
  3460. package/websql/fesm2022/cms-websql-taon-cms-website-features.component.ts.pl-PL.i18n.data-BMtWbepK.mjs.map +1 -0
  3461. package/websql/fesm2022/cms-websql-taon-related-post-chooser.component.html.de-DE.i18n.data-CvP188BM.mjs +56 -0
  3462. package/websql/fesm2022/cms-websql-taon-related-post-chooser.component.html.de-DE.i18n.data-CvP188BM.mjs.map +1 -0
  3463. package/websql/fesm2022/cms-websql-taon-related-post-chooser.component.html.en-US.i18n.data-CWlzbxd9.mjs +54 -0
  3464. package/websql/fesm2022/cms-websql-taon-related-post-chooser.component.html.en-US.i18n.data-CWlzbxd9.mjs.map +1 -0
  3465. package/websql/fesm2022/cms-websql-taon-related-post-chooser.component.html.pl-PL.i18n.data-6QX6kPEU.mjs +56 -0
  3466. package/websql/fesm2022/cms-websql-taon-related-post-chooser.component.html.pl-PL.i18n.data-6QX6kPEU.mjs.map +1 -0
  3467. package/websql/fesm2022/cms-websql-taon-related-post-chooser.component.ts.de-DE.i18n.data-qsAd2fKC.mjs +21 -0
  3468. package/websql/fesm2022/cms-websql-taon-related-post-chooser.component.ts.de-DE.i18n.data-qsAd2fKC.mjs.map +1 -0
  3469. package/websql/fesm2022/cms-websql-taon-related-post-chooser.component.ts.en-US.i18n.data-DPxzZXI5.mjs +21 -0
  3470. package/websql/fesm2022/cms-websql-taon-related-post-chooser.component.ts.en-US.i18n.data-DPxzZXI5.mjs.map +1 -0
  3471. package/websql/fesm2022/cms-websql-taon-related-post-chooser.component.ts.pl-PL.i18n.data-CKsWMfVJ.mjs +21 -0
  3472. package/websql/fesm2022/cms-websql-taon-related-post-chooser.component.ts.pl-PL.i18n.data-CKsWMfVJ.mjs.map +1 -0
  3473. package/websql/fesm2022/cms-websql.mjs +5632 -1073
  3474. package/websql/fesm2022/cms-websql.mjs.map +1 -1
  3475. package/websql/package.json +1 -1
  3476. package/websql/types/cms-websql.d.ts +590 -29
  3477. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-backoffice.component.html.de-DE.i18n.data-D88hdbKZ.mjs +21 -0
  3478. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-backoffice.component.html.de-DE.i18n.data-D88hdbKZ.mjs.map +1 -0
  3479. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-backoffice.component.html.en-US.i18n.data-BBfY22em.mjs +21 -0
  3480. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-backoffice.component.html.en-US.i18n.data-BBfY22em.mjs.map +1 -0
  3481. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-backoffice.component.html.pl-PL.i18n.data-CLDeQzbU.mjs +21 -0
  3482. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-backoffice.component.html.pl-PL.i18n.data-CLDeQzbU.mjs.map +1 -0
  3483. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-backoffice.routes.ts.de-DE.i18n.data-DJhjJIO8.mjs +46 -0
  3484. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-backoffice.routes.ts.de-DE.i18n.data-DJhjJIO8.mjs.map +1 -0
  3485. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-backoffice.routes.ts.en-US.i18n.data-auxfl-H0.mjs +43 -0
  3486. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-backoffice.routes.ts.en-US.i18n.data-auxfl-H0.mjs.map +1 -0
  3487. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-backoffice.routes.ts.pl-PL.i18n.data-ankQVnq7.mjs +46 -0
  3488. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-backoffice.routes.ts.pl-PL.i18n.data-ankQVnq7.mjs.map +1 -0
  3489. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comment.controller.ts.de-DE.i18n.data-CFvuWRZk.mjs +116 -0
  3490. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comment.controller.ts.de-DE.i18n.data-CFvuWRZk.mjs.map +1 -0
  3491. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comment.controller.ts.en-US.i18n.data-C3jR5ih9.mjs +95 -0
  3492. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comment.controller.ts.en-US.i18n.data-C3jR5ih9.mjs.map +1 -0
  3493. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comment.controller.ts.pl-PL.i18n.data-CMer0PWE.mjs +116 -0
  3494. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comment.controller.ts.pl-PL.i18n.data-CMer0PWE.mjs.map +1 -0
  3495. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments-all-preview-backoffice.component.html.de-DE.i18n.data-BgFuIvX3.mjs +91 -0
  3496. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments-all-preview-backoffice.component.html.de-DE.i18n.data-BgFuIvX3.mjs.map +1 -0
  3497. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments-all-preview-backoffice.component.html.en-US.i18n.data-CxAmwZV5.mjs +75 -0
  3498. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments-all-preview-backoffice.component.html.en-US.i18n.data-CxAmwZV5.mjs.map +1 -0
  3499. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments-all-preview-backoffice.component.html.pl-PL.i18n.data-4jIMpYLl.mjs +91 -0
  3500. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments-all-preview-backoffice.component.html.pl-PL.i18n.data-4jIMpYLl.mjs.map +1 -0
  3501. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments-all-preview-backoffice.component.ts.de-DE.i18n.data-Dhs5rr6i.mjs +56 -0
  3502. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments-all-preview-backoffice.component.ts.de-DE.i18n.data-Dhs5rr6i.mjs.map +1 -0
  3503. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments-all-preview-backoffice.component.ts.en-US.i18n.data-JTvff5GQ.mjs +47 -0
  3504. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments-all-preview-backoffice.component.ts.en-US.i18n.data-JTvff5GQ.mjs.map +1 -0
  3505. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments-all-preview-backoffice.component.ts.pl-PL.i18n.data-BGTxiqaA.mjs +56 -0
  3506. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments-all-preview-backoffice.component.ts.pl-PL.i18n.data-BGTxiqaA.mjs.map +1 -0
  3507. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments-backoffice.component.ts.de-DE.i18n.data-EaW1CIne.mjs +10 -0
  3508. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments-backoffice.component.ts.de-DE.i18n.data-EaW1CIne.mjs.map +1 -0
  3509. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments-backoffice.component.ts.en-US.i18n.data-BA8jyiT9.mjs +10 -0
  3510. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments-backoffice.component.ts.en-US.i18n.data-BA8jyiT9.mjs.map +1 -0
  3511. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments-backoffice.component.ts.pl-PL.i18n.data-CXA9V8dv.mjs +10 -0
  3512. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments-backoffice.component.ts.pl-PL.i18n.data-CXA9V8dv.mjs.map +1 -0
  3513. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments-backoffice.routes.ts.de-DE.i18n.data-DN_A_6t0.mjs +26 -0
  3514. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments-backoffice.routes.ts.de-DE.i18n.data-DN_A_6t0.mjs.map +1 -0
  3515. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments-backoffice.routes.ts.en-US.i18n.data-DcZclhbF.mjs +23 -0
  3516. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments-backoffice.routes.ts.en-US.i18n.data-DcZclhbF.mjs.map +1 -0
  3517. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments-backoffice.routes.ts.pl-PL.i18n.data-BAlMmlVF.mjs +26 -0
  3518. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments-backoffice.routes.ts.pl-PL.i18n.data-BAlMmlVF.mjs.map +1 -0
  3519. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments-blocked-users.component.html.de-DE.i18n.data-BnnKaW7d.mjs +71 -0
  3520. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments-blocked-users.component.html.de-DE.i18n.data-BnnKaW7d.mjs.map +1 -0
  3521. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments-blocked-users.component.html.en-US.i18n.data-CgeNHhyp.mjs +59 -0
  3522. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments-blocked-users.component.html.en-US.i18n.data-CgeNHhyp.mjs.map +1 -0
  3523. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments-blocked-users.component.html.pl-PL.i18n.data-S9CzZuXo.mjs +71 -0
  3524. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments-blocked-users.component.html.pl-PL.i18n.data-S9CzZuXo.mjs.map +1 -0
  3525. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments-blocked-users.component.ts.de-DE.i18n.data-DQ7Y0yrN.mjs +26 -0
  3526. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments-blocked-users.component.ts.de-DE.i18n.data-DQ7Y0yrN.mjs.map +1 -0
  3527. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments-blocked-users.component.ts.en-US.i18n.data-lPrTXsQ3.mjs +23 -0
  3528. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments-blocked-users.component.ts.en-US.i18n.data-lPrTXsQ3.mjs.map +1 -0
  3529. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments-blocked-users.component.ts.pl-PL.i18n.data-D6hIXQUU.mjs +26 -0
  3530. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments-blocked-users.component.ts.pl-PL.i18n.data-D6hIXQUU.mjs.map +1 -0
  3531. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments-filters-settings.component.html.de-DE.i18n.data-DiqTdGHS.mjs +46 -0
  3532. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments-filters-settings.component.html.de-DE.i18n.data-DiqTdGHS.mjs.map +1 -0
  3533. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments-filters-settings.component.html.en-US.i18n.data-wUWmiP5d.mjs +39 -0
  3534. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments-filters-settings.component.html.en-US.i18n.data-wUWmiP5d.mjs.map +1 -0
  3535. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments-filters-settings.component.html.pl-PL.i18n.data-DMGv6gRh.mjs +46 -0
  3536. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments-filters-settings.component.html.pl-PL.i18n.data-DMGv6gRh.mjs.map +1 -0
  3537. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments-filters-settings.component.ts.de-DE.i18n.data-D-1JyW27.mjs +26 -0
  3538. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments-filters-settings.component.ts.de-DE.i18n.data-D-1JyW27.mjs.map +1 -0
  3539. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments-filters-settings.component.ts.en-US.i18n.data-w3VkHulX.mjs +23 -0
  3540. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments-filters-settings.component.ts.en-US.i18n.data-w3VkHulX.mjs.map +1 -0
  3541. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments-filters-settings.component.ts.pl-PL.i18n.data-Bc1vkvaG.mjs +26 -0
  3542. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments-filters-settings.component.ts.pl-PL.i18n.data-Bc1vkvaG.mjs.map +1 -0
  3543. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments.component.html.de-DE.i18n.data-B0wiDu57.mjs +96 -0
  3544. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments.component.html.de-DE.i18n.data-B0wiDu57.mjs.map +1 -0
  3545. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments.component.html.en-US.i18n.data-DQZzKuDg.mjs +79 -0
  3546. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments.component.html.en-US.i18n.data-DQZzKuDg.mjs.map +1 -0
  3547. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments.component.html.pl-PL.i18n.data-DunXhFxG.mjs +96 -0
  3548. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments.component.html.pl-PL.i18n.data-DunXhFxG.mjs.map +1 -0
  3549. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments.component.ts.de-DE.i18n.data-DDOrKE7G.mjs +36 -0
  3550. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments.component.ts.de-DE.i18n.data-DDOrKE7G.mjs.map +1 -0
  3551. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments.component.ts.en-US.i18n.data-DTewS-E2.mjs +31 -0
  3552. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments.component.ts.en-US.i18n.data-DTewS-E2.mjs.map +1 -0
  3553. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments.component.ts.pl-PL.i18n.data-DIxTOu6m.mjs +36 -0
  3554. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments.component.ts.pl-PL.i18n.data-DIxTOu6m.mjs.map +1 -0
  3555. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-course-backoffice.component.html.de-DE.i18n.data-B_iK45FT.mjs +66 -0
  3556. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-course-backoffice.component.html.de-DE.i18n.data-B_iK45FT.mjs.map +1 -0
  3557. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-course-backoffice.component.html.en-US.i18n.data-_mzVXju6.mjs +55 -0
  3558. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-course-backoffice.component.html.en-US.i18n.data-_mzVXju6.mjs.map +1 -0
  3559. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-course-backoffice.component.html.pl-PL.i18n.data-rm6mnp87.mjs +66 -0
  3560. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-course-backoffice.component.html.pl-PL.i18n.data-rm6mnp87.mjs.map +1 -0
  3561. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-course-backoffice.component.ts.de-DE.i18n.data-CXUYhyiy.mjs +31 -0
  3562. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-course-backoffice.component.ts.de-DE.i18n.data-CXUYhyiy.mjs.map +1 -0
  3563. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-course-backoffice.component.ts.pl-PL.i18n.data-D_WXs4xC.mjs +31 -0
  3564. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-course-backoffice.component.ts.pl-PL.i18n.data-D_WXs4xC.mjs.map +1 -0
  3565. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-course-contents.component.html.de-DE.i18n.data-DgheAMw0.mjs +46 -0
  3566. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-course-contents.component.html.de-DE.i18n.data-DgheAMw0.mjs.map +1 -0
  3567. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-course-contents.component.html.en-US.i18n.data-D_PCgxaU.mjs +39 -0
  3568. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-course-contents.component.html.en-US.i18n.data-D_PCgxaU.mjs.map +1 -0
  3569. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-course-contents.component.html.pl-PL.i18n.data-DIgNFeGb.mjs +46 -0
  3570. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-course-contents.component.html.pl-PL.i18n.data-DIgNFeGb.mjs.map +1 -0
  3571. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-course-contents.component.ts.de-DE.i18n.data-BhW3_5XP.mjs +41 -0
  3572. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-course-contents.component.ts.de-DE.i18n.data-BhW3_5XP.mjs.map +1 -0
  3573. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-course-contents.component.ts.en-US.i18n.data-D6Qst9Xc.mjs +35 -0
  3574. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-course-contents.component.ts.en-US.i18n.data-D6Qst9Xc.mjs.map +1 -0
  3575. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-course-contents.component.ts.pl-PL.i18n.data-DxaQZeE8.mjs +41 -0
  3576. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-course-contents.component.ts.pl-PL.i18n.data-DxaQZeE8.mjs.map +1 -0
  3577. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-course-cover.component.ts.de-DE.i18n.data-ClJlH4iC.mjs +16 -0
  3578. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-course-cover.component.ts.de-DE.i18n.data-ClJlH4iC.mjs.map +1 -0
  3579. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-course-cover.component.ts.pl-PL.i18n.data-CgkCx2zO.mjs +16 -0
  3580. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-course-cover.component.ts.pl-PL.i18n.data-CgkCx2zO.mjs.map +1 -0
  3581. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post-choice-dialog.component.html.de-DE.i18n.data-BngVW1ST.mjs +21 -0
  3582. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post-choice-dialog.component.html.de-DE.i18n.data-BngVW1ST.mjs.map +1 -0
  3583. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post-choice-dialog.component.html.en-US.i18n.data-BmZmONdL.mjs +19 -0
  3584. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post-choice-dialog.component.html.en-US.i18n.data-BmZmONdL.mjs.map +1 -0
  3585. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post-choice-dialog.component.html.pl-PL.i18n.data-CUcC-r1T.mjs +21 -0
  3586. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post-choice-dialog.component.html.pl-PL.i18n.data-CUcC-r1T.mjs.map +1 -0
  3587. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post-choice-dialog.component.ts.de-DE.i18n.data-DdQZA_Pt.mjs +10 -0
  3588. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post-choice-dialog.component.ts.de-DE.i18n.data-DdQZA_Pt.mjs.map +1 -0
  3589. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post-choice-dialog.component.ts.en-US.i18n.data-Ccy7Dcvv.mjs +10 -0
  3590. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post-choice-dialog.component.ts.en-US.i18n.data-Ccy7Dcvv.mjs.map +1 -0
  3591. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post-choice-dialog.component.ts.pl-PL.i18n.data-CjnsarRp.mjs +10 -0
  3592. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post-choice-dialog.component.ts.pl-PL.i18n.data-CjnsarRp.mjs.map +1 -0
  3593. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post-details-page.component.ts.de-DE.i18n.data-CcdsaHai.mjs +21 -0
  3594. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post-details-page.component.ts.de-DE.i18n.data-CcdsaHai.mjs.map +1 -0
  3595. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post-details-page.component.ts.pl-PL.i18n.data-DpJ4HWjJ.mjs +21 -0
  3596. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post-details-page.component.ts.pl-PL.i18n.data-DpJ4HWjJ.mjs.map +1 -0
  3597. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post-table-actions.directive.ts.de-DE.i18n.data-Bb5SdKYV.mjs +106 -0
  3598. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post-table-actions.directive.ts.de-DE.i18n.data-Bb5SdKYV.mjs.map +1 -0
  3599. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post-table-actions.directive.ts.en-US.i18n.data-6hitV3EB.mjs +87 -0
  3600. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post-table-actions.directive.ts.en-US.i18n.data-6hitV3EB.mjs.map +1 -0
  3601. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post-table-actions.directive.ts.pl-PL.i18n.data-A45S-VFi.mjs +106 -0
  3602. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post-table-actions.directive.ts.pl-PL.i18n.data-A45S-VFi.mjs.map +1 -0
  3603. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post-thumbnail.component.ts.de-DE.i18n.data-CBcBZFVK.mjs +16 -0
  3604. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post-thumbnail.component.ts.de-DE.i18n.data-CBcBZFVK.mjs.map +1 -0
  3605. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post-thumbnail.component.ts.en-US.i18n.data-CuYgfCFH.mjs +15 -0
  3606. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post-thumbnail.component.ts.en-US.i18n.data-CuYgfCFH.mjs.map +1 -0
  3607. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post-thumbnail.component.ts.pl-PL.i18n.data-BWTN9DLn.mjs +16 -0
  3608. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post-thumbnail.component.ts.pl-PL.i18n.data-BWTN9DLn.mjs.map +1 -0
  3609. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post.component.html.de-DE.i18n.data-C8qKRpYs.mjs +782 -0
  3610. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post.component.html.de-DE.i18n.data-C8qKRpYs.mjs.map +1 -0
  3611. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post.component.html.en-US.i18n.data-ClarunPV.mjs +703 -0
  3612. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post.component.html.en-US.i18n.data-ClarunPV.mjs.map +1 -0
  3613. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post.component.html.pl-PL.i18n.data-YtHY1P_8.mjs +784 -0
  3614. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post.component.html.pl-PL.i18n.data-YtHY1P_8.mjs.map +1 -0
  3615. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post.component.ts.de-DE.i18n.data-Dv-cf9Kp.mjs +356 -0
  3616. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post.component.ts.de-DE.i18n.data-Dv-cf9Kp.mjs.map +1 -0
  3617. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post.component.ts.en-US.i18n.data-CHBqahB1.mjs +315 -0
  3618. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post.component.ts.en-US.i18n.data-CHBqahB1.mjs.map +1 -0
  3619. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post.component.ts.pl-PL.i18n.data-btgJU4-b.mjs +356 -0
  3620. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post.component.ts.pl-PL.i18n.data-btgJU4-b.mjs.map +1 -0
  3621. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-posts-backoffice.component.html.de-DE.i18n.data-Dn3C-NeF.mjs +56 -0
  3622. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-posts-backoffice.component.html.de-DE.i18n.data-Dn3C-NeF.mjs.map +1 -0
  3623. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-posts-backoffice.component.html.en-US.i18n.data-DhJYk42h.mjs +49 -0
  3624. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-posts-backoffice.component.html.en-US.i18n.data-DhJYk42h.mjs.map +1 -0
  3625. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-posts-backoffice.component.html.pl-PL.i18n.data-BtDLyX1Z.mjs +56 -0
  3626. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-posts-backoffice.component.html.pl-PL.i18n.data-BtDLyX1Z.mjs.map +1 -0
  3627. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-posts-backoffice.component.ts.de-DE.i18n.data-J--vMr2r.mjs +26 -0
  3628. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-posts-backoffice.component.ts.de-DE.i18n.data-J--vMr2r.mjs.map +1 -0
  3629. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-posts-backoffice.component.ts.pl-PL.i18n.data-SKutIf3a.mjs +26 -0
  3630. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-posts-backoffice.component.ts.pl-PL.i18n.data-SKutIf3a.mjs.map +1 -0
  3631. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-revision-chooser.component.html.de-DE.i18n.data-DeyMYGTO.mjs +85 -0
  3632. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-revision-chooser.component.html.de-DE.i18n.data-DeyMYGTO.mjs.map +1 -0
  3633. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-revision-chooser.component.html.en-US.i18n.data-EwQjW7Gv.mjs +85 -0
  3634. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-revision-chooser.component.html.en-US.i18n.data-EwQjW7Gv.mjs.map +1 -0
  3635. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-revision-chooser.component.html.pl-PL.i18n.data-Dj1fpWsE.mjs +85 -0
  3636. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-revision-chooser.component.html.pl-PL.i18n.data-Dj1fpWsE.mjs.map +1 -0
  3637. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-taxonomy-quick-create-dialog.component.ts.de-DE.i18n.data-BUTv60Ob.mjs +46 -0
  3638. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-taxonomy-quick-create-dialog.component.ts.de-DE.i18n.data-BUTv60Ob.mjs.map +1 -0
  3639. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-taxonomy-quick-create-dialog.component.ts.pl-PL.i18n.data-DQqjaSbj.mjs +46 -0
  3640. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-taxonomy-quick-create-dialog.component.ts.pl-PL.i18n.data-DQqjaSbj.mjs.map +1 -0
  3641. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-website-feature.constants.ts.de-DE.i18n.data-DWDITwha.mjs +15 -0
  3642. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-website-feature.constants.ts.de-DE.i18n.data-DWDITwha.mjs.map +1 -0
  3643. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-website-feature.constants.ts.en-US.i18n.data-Cn6elCXC.mjs +15 -0
  3644. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-website-feature.constants.ts.en-US.i18n.data-Cn6elCXC.mjs.map +1 -0
  3645. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-website-feature.constants.ts.pl-PL.i18n.data-DFY1frsV.mjs +15 -0
  3646. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-website-feature.constants.ts.pl-PL.i18n.data-DFY1frsV.mjs.map +1 -0
  3647. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-website-feature.controller.ts.de-DE.i18n.data-B0nQAYRS.mjs +16 -0
  3648. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-website-feature.controller.ts.de-DE.i18n.data-B0nQAYRS.mjs.map +1 -0
  3649. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-website-feature.controller.ts.en-US.i18n.data-DrS0Pc1K.mjs +15 -0
  3650. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-website-feature.controller.ts.en-US.i18n.data-DrS0Pc1K.mjs.map +1 -0
  3651. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-website-feature.controller.ts.pl-PL.i18n.data-5uc1NLU6.mjs +16 -0
  3652. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-website-feature.controller.ts.pl-PL.i18n.data-5uc1NLU6.mjs.map +1 -0
  3653. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-website-features.component.html.de-DE.i18n.data-B70MqP2z.mjs +46 -0
  3654. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-website-features.component.html.de-DE.i18n.data-B70MqP2z.mjs.map +1 -0
  3655. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-website-features.component.html.en-US.i18n.data-DNwWa56f.mjs +39 -0
  3656. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-website-features.component.html.en-US.i18n.data-DNwWa56f.mjs.map +1 -0
  3657. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-website-features.component.html.pl-PL.i18n.data-NeggLOfC.mjs +46 -0
  3658. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-website-features.component.html.pl-PL.i18n.data-NeggLOfC.mjs.map +1 -0
  3659. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-website-features.component.ts.de-DE.i18n.data-FJg8QI9k.mjs +56 -0
  3660. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-website-features.component.ts.de-DE.i18n.data-FJg8QI9k.mjs.map +1 -0
  3661. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-website-features.component.ts.en-US.i18n.data-CRKftwwO.mjs +47 -0
  3662. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-website-features.component.ts.en-US.i18n.data-CRKftwwO.mjs.map +1 -0
  3663. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-website-features.component.ts.pl-PL.i18n.data-BNwAdN2f.mjs +56 -0
  3664. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-website-features.component.ts.pl-PL.i18n.data-BNwAdN2f.mjs.map +1 -0
  3665. package/websql-prod/fesm2022/cms-websql-prod-taon-related-post-chooser.component.html.de-DE.i18n.data-CIbic1jQ.mjs +56 -0
  3666. package/websql-prod/fesm2022/cms-websql-prod-taon-related-post-chooser.component.html.de-DE.i18n.data-CIbic1jQ.mjs.map +1 -0
  3667. package/websql-prod/fesm2022/cms-websql-prod-taon-related-post-chooser.component.html.en-US.i18n.data-D0CdXkp1.mjs +54 -0
  3668. package/websql-prod/fesm2022/cms-websql-prod-taon-related-post-chooser.component.html.en-US.i18n.data-D0CdXkp1.mjs.map +1 -0
  3669. package/websql-prod/fesm2022/cms-websql-prod-taon-related-post-chooser.component.html.pl-PL.i18n.data-BY9-_4qc.mjs +56 -0
  3670. package/websql-prod/fesm2022/cms-websql-prod-taon-related-post-chooser.component.html.pl-PL.i18n.data-BY9-_4qc.mjs.map +1 -0
  3671. package/websql-prod/fesm2022/cms-websql-prod-taon-related-post-chooser.component.ts.de-DE.i18n.data-DctcEHBr.mjs +21 -0
  3672. package/websql-prod/fesm2022/cms-websql-prod-taon-related-post-chooser.component.ts.de-DE.i18n.data-DctcEHBr.mjs.map +1 -0
  3673. package/websql-prod/fesm2022/cms-websql-prod-taon-related-post-chooser.component.ts.en-US.i18n.data-D9rMB3a3.mjs +21 -0
  3674. package/websql-prod/fesm2022/cms-websql-prod-taon-related-post-chooser.component.ts.en-US.i18n.data-D9rMB3a3.mjs.map +1 -0
  3675. package/websql-prod/fesm2022/cms-websql-prod-taon-related-post-chooser.component.ts.pl-PL.i18n.data-CDUc0Uv7.mjs +21 -0
  3676. package/websql-prod/fesm2022/cms-websql-prod-taon-related-post-chooser.component.ts.pl-PL.i18n.data-CDUc0Uv7.mjs.map +1 -0
  3677. package/websql-prod/fesm2022/cms-websql-prod.mjs +5747 -1177
  3678. package/websql-prod/fesm2022/cms-websql-prod.mjs.map +1 -1
  3679. package/websql-prod/package.json +1 -1
  3680. package/websql-prod/types/cms-websql-prod.d.ts +574 -29
  3681. package/websql-prod.split-namespaces.json +19 -1
  3682. package/browser/fesm2022/cms-browser-taon-cms-backoffice.component.html.de-DE.i18n.data-B5x4stX6.mjs +0 -16
  3683. package/browser/fesm2022/cms-browser-taon-cms-backoffice.component.html.de-DE.i18n.data-B5x4stX6.mjs.map +0 -1
  3684. package/browser/fesm2022/cms-browser-taon-cms-backoffice.component.html.en-US.i18n.data-DthWh8nt.mjs +0 -16
  3685. package/browser/fesm2022/cms-browser-taon-cms-backoffice.component.html.en-US.i18n.data-DthWh8nt.mjs.map +0 -1
  3686. package/browser/fesm2022/cms-browser-taon-cms-backoffice.component.html.pl-PL.i18n.data-iT7Urr8M.mjs +0 -16
  3687. package/browser/fesm2022/cms-browser-taon-cms-backoffice.component.html.pl-PL.i18n.data-iT7Urr8M.mjs.map +0 -1
  3688. package/browser/fesm2022/cms-browser-taon-cms-backoffice.routes.ts.de-DE.i18n.data-Dt6NX2ov.mjs +0 -35
  3689. package/browser/fesm2022/cms-browser-taon-cms-backoffice.routes.ts.de-DE.i18n.data-Dt6NX2ov.mjs.map +0 -1
  3690. package/browser/fesm2022/cms-browser-taon-cms-backoffice.routes.ts.en-US.i18n.data-seNJiHRQ.mjs +0 -35
  3691. package/browser/fesm2022/cms-browser-taon-cms-backoffice.routes.ts.en-US.i18n.data-seNJiHRQ.mjs.map +0 -1
  3692. package/browser/fesm2022/cms-browser-taon-cms-backoffice.routes.ts.pl-PL.i18n.data-C-K2Y0GF.mjs +0 -36
  3693. package/browser/fesm2022/cms-browser-taon-cms-backoffice.routes.ts.pl-PL.i18n.data-C-K2Y0GF.mjs.map +0 -1
  3694. package/browser/fesm2022/cms-browser-taon-cms-course-backoffice.component.html.de-DE.i18n.data-CLwoKssp.mjs +0 -55
  3695. package/browser/fesm2022/cms-browser-taon-cms-course-backoffice.component.html.de-DE.i18n.data-CLwoKssp.mjs.map +0 -1
  3696. package/browser/fesm2022/cms-browser-taon-cms-course-backoffice.component.html.en-US.i18n.data-Dff_IALd.mjs +0 -55
  3697. package/browser/fesm2022/cms-browser-taon-cms-course-backoffice.component.html.en-US.i18n.data-Dff_IALd.mjs.map +0 -1
  3698. package/browser/fesm2022/cms-browser-taon-cms-course-backoffice.component.html.pl-PL.i18n.data-_LndUfcD.mjs +0 -55
  3699. package/browser/fesm2022/cms-browser-taon-cms-course-backoffice.component.html.pl-PL.i18n.data-_LndUfcD.mjs.map +0 -1
  3700. package/browser/fesm2022/cms-browser-taon-cms-course-backoffice.component.ts.de-DE.i18n.data-DBAY8-77.mjs +0 -27
  3701. package/browser/fesm2022/cms-browser-taon-cms-course-backoffice.component.ts.de-DE.i18n.data-DBAY8-77.mjs.map +0 -1
  3702. package/browser/fesm2022/cms-browser-taon-cms-course-backoffice.component.ts.pl-PL.i18n.data-NqAcrhjt.mjs +0 -27
  3703. package/browser/fesm2022/cms-browser-taon-cms-course-backoffice.component.ts.pl-PL.i18n.data-NqAcrhjt.mjs.map +0 -1
  3704. package/browser/fesm2022/cms-browser-taon-cms-course-contents.component.html.de-DE.i18n.data-i1jNC8Bi.mjs +0 -31
  3705. package/browser/fesm2022/cms-browser-taon-cms-course-contents.component.html.de-DE.i18n.data-i1jNC8Bi.mjs.map +0 -1
  3706. package/browser/fesm2022/cms-browser-taon-cms-course-contents.component.html.en-US.i18n.data-Cf_yEr_6.mjs +0 -31
  3707. package/browser/fesm2022/cms-browser-taon-cms-course-contents.component.html.en-US.i18n.data-Cf_yEr_6.mjs.map +0 -1
  3708. package/browser/fesm2022/cms-browser-taon-cms-course-contents.component.html.pl-PL.i18n.data-DG2zoUK9.mjs +0 -31
  3709. package/browser/fesm2022/cms-browser-taon-cms-course-contents.component.html.pl-PL.i18n.data-DG2zoUK9.mjs.map +0 -1
  3710. package/browser/fesm2022/cms-browser-taon-cms-course-contents.component.ts.de-DE.i18n.data-CUm1WaRd.mjs +0 -31
  3711. package/browser/fesm2022/cms-browser-taon-cms-course-contents.component.ts.de-DE.i18n.data-CUm1WaRd.mjs.map +0 -1
  3712. package/browser/fesm2022/cms-browser-taon-cms-course-contents.component.ts.en-US.i18n.data-C8J0c1Zz.mjs +0 -31
  3713. package/browser/fesm2022/cms-browser-taon-cms-course-contents.component.ts.en-US.i18n.data-C8J0c1Zz.mjs.map +0 -1
  3714. package/browser/fesm2022/cms-browser-taon-cms-course-contents.component.ts.pl-PL.i18n.data-DttC-CgL.mjs +0 -31
  3715. package/browser/fesm2022/cms-browser-taon-cms-course-contents.component.ts.pl-PL.i18n.data-DttC-CgL.mjs.map +0 -1
  3716. package/browser/fesm2022/cms-browser-taon-cms-course-cover.component.ts.de-DE.i18n.data-DDN8R3M-.mjs +0 -15
  3717. package/browser/fesm2022/cms-browser-taon-cms-course-cover.component.ts.de-DE.i18n.data-DDN8R3M-.mjs.map +0 -1
  3718. package/browser/fesm2022/cms-browser-taon-cms-course-cover.component.ts.pl-PL.i18n.data-U89qKqAj.mjs +0 -15
  3719. package/browser/fesm2022/cms-browser-taon-cms-course-cover.component.ts.pl-PL.i18n.data-U89qKqAj.mjs.map +0 -1
  3720. package/browser/fesm2022/cms-browser-taon-cms-post-details-page.component.ts.de-DE.i18n.data-CUPt6JuN.mjs +0 -20
  3721. package/browser/fesm2022/cms-browser-taon-cms-post-details-page.component.ts.de-DE.i18n.data-CUPt6JuN.mjs.map +0 -1
  3722. package/browser/fesm2022/cms-browser-taon-cms-post-details-page.component.ts.pl-PL.i18n.data-DYSUl0we.mjs +0 -20
  3723. package/browser/fesm2022/cms-browser-taon-cms-post-details-page.component.ts.pl-PL.i18n.data-DYSUl0we.mjs.map +0 -1
  3724. package/browser/fesm2022/cms-browser-taon-cms-post-table-actions.directive.ts.de-DE.i18n.data-BJyXHMqp.mjs +0 -55
  3725. package/browser/fesm2022/cms-browser-taon-cms-post-table-actions.directive.ts.de-DE.i18n.data-BJyXHMqp.mjs.map +0 -1
  3726. package/browser/fesm2022/cms-browser-taon-cms-post-table-actions.directive.ts.en-US.i18n.data-BVFE-lu5.mjs +0 -55
  3727. package/browser/fesm2022/cms-browser-taon-cms-post-table-actions.directive.ts.en-US.i18n.data-BVFE-lu5.mjs.map +0 -1
  3728. package/browser/fesm2022/cms-browser-taon-cms-post-table-actions.directive.ts.pl-PL.i18n.data-CEyIUnLc.mjs +0 -55
  3729. package/browser/fesm2022/cms-browser-taon-cms-post-table-actions.directive.ts.pl-PL.i18n.data-CEyIUnLc.mjs.map +0 -1
  3730. package/browser/fesm2022/cms-browser-taon-cms-post.component.html.de-DE.i18n.data-CapQLQ5d.mjs +0 -376
  3731. package/browser/fesm2022/cms-browser-taon-cms-post.component.html.de-DE.i18n.data-CapQLQ5d.mjs.map +0 -1
  3732. package/browser/fesm2022/cms-browser-taon-cms-post.component.html.en-US.i18n.data-BUE8MsLX.mjs +0 -375
  3733. package/browser/fesm2022/cms-browser-taon-cms-post.component.html.en-US.i18n.data-BUE8MsLX.mjs.map +0 -1
  3734. package/browser/fesm2022/cms-browser-taon-cms-post.component.html.pl-PL.i18n.data-BCTWaUca.mjs +0 -376
  3735. package/browser/fesm2022/cms-browser-taon-cms-post.component.html.pl-PL.i18n.data-BCTWaUca.mjs.map +0 -1
  3736. package/browser/fesm2022/cms-browser-taon-cms-post.component.ts.de-DE.i18n.data-BYxiUf8C.mjs +0 -192
  3737. package/browser/fesm2022/cms-browser-taon-cms-post.component.ts.de-DE.i18n.data-BYxiUf8C.mjs.map +0 -1
  3738. package/browser/fesm2022/cms-browser-taon-cms-post.component.ts.en-US.i18n.data-lruEnzKH.mjs +0 -188
  3739. package/browser/fesm2022/cms-browser-taon-cms-post.component.ts.en-US.i18n.data-lruEnzKH.mjs.map +0 -1
  3740. package/browser/fesm2022/cms-browser-taon-cms-post.component.ts.pl-PL.i18n.data-CNsT81Pt.mjs +0 -192
  3741. package/browser/fesm2022/cms-browser-taon-cms-post.component.ts.pl-PL.i18n.data-CNsT81Pt.mjs.map +0 -1
  3742. package/browser/fesm2022/cms-browser-taon-cms-posts-backoffice.component.html.de-DE.i18n.data-BDH-9r3S.mjs +0 -49
  3743. package/browser/fesm2022/cms-browser-taon-cms-posts-backoffice.component.html.de-DE.i18n.data-BDH-9r3S.mjs.map +0 -1
  3744. package/browser/fesm2022/cms-browser-taon-cms-posts-backoffice.component.html.en-US.i18n.data-Bz5Qa6eJ.mjs +0 -49
  3745. package/browser/fesm2022/cms-browser-taon-cms-posts-backoffice.component.html.en-US.i18n.data-Bz5Qa6eJ.mjs.map +0 -1
  3746. package/browser/fesm2022/cms-browser-taon-cms-posts-backoffice.component.html.pl-PL.i18n.data-BEtQS-0C.mjs +0 -49
  3747. package/browser/fesm2022/cms-browser-taon-cms-posts-backoffice.component.html.pl-PL.i18n.data-BEtQS-0C.mjs.map +0 -1
  3748. package/browser/fesm2022/cms-browser-taon-cms-posts-backoffice.component.ts.de-DE.i18n.data-aMqPM6ev.mjs +0 -25
  3749. package/browser/fesm2022/cms-browser-taon-cms-posts-backoffice.component.ts.de-DE.i18n.data-aMqPM6ev.mjs.map +0 -1
  3750. package/browser/fesm2022/cms-browser-taon-cms-posts-backoffice.component.ts.pl-PL.i18n.data-D1D80yR3.mjs +0 -25
  3751. package/browser/fesm2022/cms-browser-taon-cms-posts-backoffice.component.ts.pl-PL.i18n.data-D1D80yR3.mjs.map +0 -1
  3752. package/browser/fesm2022/cms-browser-taon-cms-revision-chooser.component.html.de-DE.i18n.data-DjiWTtYe.mjs +0 -71
  3753. package/browser/fesm2022/cms-browser-taon-cms-revision-chooser.component.html.de-DE.i18n.data-DjiWTtYe.mjs.map +0 -1
  3754. package/browser/fesm2022/cms-browser-taon-cms-revision-chooser.component.html.en-US.i18n.data-CdG7f6f1.mjs +0 -71
  3755. package/browser/fesm2022/cms-browser-taon-cms-revision-chooser.component.html.en-US.i18n.data-CdG7f6f1.mjs.map +0 -1
  3756. package/browser/fesm2022/cms-browser-taon-cms-revision-chooser.component.html.pl-PL.i18n.data-Do3uVXlb.mjs +0 -71
  3757. package/browser/fesm2022/cms-browser-taon-cms-revision-chooser.component.html.pl-PL.i18n.data-Do3uVXlb.mjs.map +0 -1
  3758. package/browser/fesm2022/cms-browser-taon-cms-taxonomy-quick-create-dialog.component.ts.de-DE.i18n.data-C-9JBJz0.mjs +0 -39
  3759. package/browser/fesm2022/cms-browser-taon-cms-taxonomy-quick-create-dialog.component.ts.de-DE.i18n.data-C-9JBJz0.mjs.map +0 -1
  3760. package/browser/fesm2022/cms-browser-taon-cms-taxonomy-quick-create-dialog.component.ts.pl-PL.i18n.data-DWw-l8cK.mjs +0 -39
  3761. package/browser/fesm2022/cms-browser-taon-cms-taxonomy-quick-create-dialog.component.ts.pl-PL.i18n.data-DWw-l8cK.mjs.map +0 -1
  3762. package/browser/fesm2022/cms-browser-taon-related-post-chooser.component.html.de-DE.i18n.data-BsNPk0cG.mjs +0 -51
  3763. package/browser/fesm2022/cms-browser-taon-related-post-chooser.component.html.de-DE.i18n.data-BsNPk0cG.mjs.map +0 -1
  3764. package/browser/fesm2022/cms-browser-taon-related-post-chooser.component.html.en-US.i18n.data-BV9AnDid.mjs +0 -50
  3765. package/browser/fesm2022/cms-browser-taon-related-post-chooser.component.html.en-US.i18n.data-BV9AnDid.mjs.map +0 -1
  3766. package/browser/fesm2022/cms-browser-taon-related-post-chooser.component.html.pl-PL.i18n.data-VTZbP69l.mjs +0 -51
  3767. package/browser/fesm2022/cms-browser-taon-related-post-chooser.component.html.pl-PL.i18n.data-VTZbP69l.mjs.map +0 -1
  3768. package/browser/fesm2022/cms-browser-taon-related-post-chooser.component.ts.de-DE.i18n.data-DLWhi5lI.mjs +0 -21
  3769. package/browser/fesm2022/cms-browser-taon-related-post-chooser.component.ts.de-DE.i18n.data-DLWhi5lI.mjs.map +0 -1
  3770. package/browser/fesm2022/cms-browser-taon-related-post-chooser.component.ts.en-US.i18n.data-B5vaympv.mjs +0 -21
  3771. package/browser/fesm2022/cms-browser-taon-related-post-chooser.component.ts.en-US.i18n.data-B5vaympv.mjs.map +0 -1
  3772. package/browser/fesm2022/cms-browser-taon-related-post-chooser.component.ts.pl-PL.i18n.data-eSpfHb7u.mjs +0 -21
  3773. package/browser/fesm2022/cms-browser-taon-related-post-chooser.component.ts.pl-PL.i18n.data-eSpfHb7u.mjs.map +0 -1
  3774. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-backoffice.component.html.de-DE.i18n.data-CqIu3bBE.mjs +0 -16
  3775. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-backoffice.component.html.de-DE.i18n.data-CqIu3bBE.mjs.map +0 -1
  3776. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-backoffice.component.html.en-US.i18n.data-q7WqXEJw.mjs +0 -16
  3777. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-backoffice.component.html.en-US.i18n.data-q7WqXEJw.mjs.map +0 -1
  3778. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-backoffice.component.html.pl-PL.i18n.data-BSwBNQpH.mjs +0 -16
  3779. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-backoffice.component.html.pl-PL.i18n.data-BSwBNQpH.mjs.map +0 -1
  3780. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-backoffice.routes.ts.de-DE.i18n.data-4S1imZUX.mjs +0 -35
  3781. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-backoffice.routes.ts.de-DE.i18n.data-4S1imZUX.mjs.map +0 -1
  3782. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-backoffice.routes.ts.en-US.i18n.data-bIYJXCtW.mjs +0 -35
  3783. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-backoffice.routes.ts.en-US.i18n.data-bIYJXCtW.mjs.map +0 -1
  3784. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-backoffice.routes.ts.pl-PL.i18n.data-Do9n0Gxn.mjs +0 -36
  3785. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-backoffice.routes.ts.pl-PL.i18n.data-Do9n0Gxn.mjs.map +0 -1
  3786. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-course-backoffice.component.html.de-DE.i18n.data-DMxbsPFR.mjs +0 -55
  3787. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-course-backoffice.component.html.de-DE.i18n.data-DMxbsPFR.mjs.map +0 -1
  3788. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-course-backoffice.component.html.en-US.i18n.data-DU5zG1X1.mjs +0 -55
  3789. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-course-backoffice.component.html.en-US.i18n.data-DU5zG1X1.mjs.map +0 -1
  3790. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-course-backoffice.component.html.pl-PL.i18n.data-C6nS0We7.mjs +0 -55
  3791. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-course-backoffice.component.html.pl-PL.i18n.data-C6nS0We7.mjs.map +0 -1
  3792. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-course-backoffice.component.ts.de-DE.i18n.data-D9XyARny.mjs +0 -27
  3793. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-course-backoffice.component.ts.de-DE.i18n.data-D9XyARny.mjs.map +0 -1
  3794. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-course-backoffice.component.ts.pl-PL.i18n.data-7YCuFbeg.mjs +0 -27
  3795. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-course-backoffice.component.ts.pl-PL.i18n.data-7YCuFbeg.mjs.map +0 -1
  3796. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-course-contents.component.html.de-DE.i18n.data-CqciMyPt.mjs +0 -31
  3797. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-course-contents.component.html.de-DE.i18n.data-CqciMyPt.mjs.map +0 -1
  3798. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-course-contents.component.html.en-US.i18n.data-CZpsjVOU.mjs +0 -31
  3799. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-course-contents.component.html.en-US.i18n.data-CZpsjVOU.mjs.map +0 -1
  3800. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-course-contents.component.html.pl-PL.i18n.data-bcDy_z0-.mjs +0 -31
  3801. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-course-contents.component.html.pl-PL.i18n.data-bcDy_z0-.mjs.map +0 -1
  3802. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-course-contents.component.ts.de-DE.i18n.data-C2LoW3lN.mjs +0 -31
  3803. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-course-contents.component.ts.de-DE.i18n.data-C2LoW3lN.mjs.map +0 -1
  3804. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-course-contents.component.ts.en-US.i18n.data-DP1mJztz.mjs +0 -31
  3805. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-course-contents.component.ts.en-US.i18n.data-DP1mJztz.mjs.map +0 -1
  3806. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-course-contents.component.ts.pl-PL.i18n.data-CKgBITdj.mjs +0 -31
  3807. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-course-contents.component.ts.pl-PL.i18n.data-CKgBITdj.mjs.map +0 -1
  3808. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-course-cover.component.ts.de-DE.i18n.data-CFPsdwHm.mjs +0 -15
  3809. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-course-cover.component.ts.de-DE.i18n.data-CFPsdwHm.mjs.map +0 -1
  3810. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-course-cover.component.ts.pl-PL.i18n.data-DxvRSDVu.mjs +0 -15
  3811. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-course-cover.component.ts.pl-PL.i18n.data-DxvRSDVu.mjs.map +0 -1
  3812. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post-details-page.component.ts.de-DE.i18n.data-DNJ9LJlX.mjs +0 -20
  3813. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post-details-page.component.ts.de-DE.i18n.data-DNJ9LJlX.mjs.map +0 -1
  3814. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post-details-page.component.ts.pl-PL.i18n.data-MhpcULsJ.mjs +0 -20
  3815. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post-details-page.component.ts.pl-PL.i18n.data-MhpcULsJ.mjs.map +0 -1
  3816. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post-table-actions.directive.ts.de-DE.i18n.data-90yrFKjF.mjs +0 -55
  3817. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post-table-actions.directive.ts.de-DE.i18n.data-90yrFKjF.mjs.map +0 -1
  3818. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post-table-actions.directive.ts.en-US.i18n.data-CH71xm4B.mjs +0 -55
  3819. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post-table-actions.directive.ts.en-US.i18n.data-CH71xm4B.mjs.map +0 -1
  3820. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post-table-actions.directive.ts.pl-PL.i18n.data-Df2DdA5N.mjs +0 -55
  3821. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post-table-actions.directive.ts.pl-PL.i18n.data-Df2DdA5N.mjs.map +0 -1
  3822. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post.component.html.de-DE.i18n.data-CAFFTK-X.mjs +0 -376
  3823. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post.component.html.de-DE.i18n.data-CAFFTK-X.mjs.map +0 -1
  3824. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post.component.html.en-US.i18n.data-mH65cs_6.mjs +0 -375
  3825. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post.component.html.en-US.i18n.data-mH65cs_6.mjs.map +0 -1
  3826. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post.component.html.pl-PL.i18n.data-BU3G_LCm.mjs +0 -376
  3827. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post.component.html.pl-PL.i18n.data-BU3G_LCm.mjs.map +0 -1
  3828. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post.component.ts.de-DE.i18n.data-cQQWKnwI.mjs +0 -192
  3829. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post.component.ts.de-DE.i18n.data-cQQWKnwI.mjs.map +0 -1
  3830. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post.component.ts.en-US.i18n.data-CZ3219rw.mjs +0 -188
  3831. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post.component.ts.en-US.i18n.data-CZ3219rw.mjs.map +0 -1
  3832. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post.component.ts.pl-PL.i18n.data-3odfuhvt.mjs +0 -192
  3833. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post.component.ts.pl-PL.i18n.data-3odfuhvt.mjs.map +0 -1
  3834. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-posts-backoffice.component.html.de-DE.i18n.data-D9Z519ap.mjs +0 -49
  3835. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-posts-backoffice.component.html.de-DE.i18n.data-D9Z519ap.mjs.map +0 -1
  3836. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-posts-backoffice.component.html.en-US.i18n.data-BXpgykHy.mjs +0 -49
  3837. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-posts-backoffice.component.html.en-US.i18n.data-BXpgykHy.mjs.map +0 -1
  3838. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-posts-backoffice.component.html.pl-PL.i18n.data-f1LMnypn.mjs +0 -49
  3839. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-posts-backoffice.component.html.pl-PL.i18n.data-f1LMnypn.mjs.map +0 -1
  3840. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-posts-backoffice.component.ts.de-DE.i18n.data-t4gu8Pak.mjs +0 -25
  3841. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-posts-backoffice.component.ts.de-DE.i18n.data-t4gu8Pak.mjs.map +0 -1
  3842. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-posts-backoffice.component.ts.pl-PL.i18n.data-JlG6ZQo_.mjs +0 -25
  3843. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-posts-backoffice.component.ts.pl-PL.i18n.data-JlG6ZQo_.mjs.map +0 -1
  3844. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-revision-chooser.component.html.de-DE.i18n.data-DfxiewM_.mjs +0 -71
  3845. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-revision-chooser.component.html.de-DE.i18n.data-DfxiewM_.mjs.map +0 -1
  3846. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-revision-chooser.component.html.en-US.i18n.data-NF4fmGLN.mjs +0 -71
  3847. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-revision-chooser.component.html.en-US.i18n.data-NF4fmGLN.mjs.map +0 -1
  3848. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-revision-chooser.component.html.pl-PL.i18n.data-D30oRrBr.mjs +0 -71
  3849. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-revision-chooser.component.html.pl-PL.i18n.data-D30oRrBr.mjs.map +0 -1
  3850. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-taxonomy-quick-create-dialog.component.ts.de-DE.i18n.data-1p0JNGR5.mjs +0 -39
  3851. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-taxonomy-quick-create-dialog.component.ts.de-DE.i18n.data-1p0JNGR5.mjs.map +0 -1
  3852. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-taxonomy-quick-create-dialog.component.ts.pl-PL.i18n.data-VGsOSuPT.mjs +0 -39
  3853. package/browser-prod/fesm2022/cms-browser-prod-taon-cms-taxonomy-quick-create-dialog.component.ts.pl-PL.i18n.data-VGsOSuPT.mjs.map +0 -1
  3854. package/browser-prod/fesm2022/cms-browser-prod-taon-related-post-chooser.component.html.de-DE.i18n.data-Dv2W9o7g.mjs +0 -51
  3855. package/browser-prod/fesm2022/cms-browser-prod-taon-related-post-chooser.component.html.de-DE.i18n.data-Dv2W9o7g.mjs.map +0 -1
  3856. package/browser-prod/fesm2022/cms-browser-prod-taon-related-post-chooser.component.html.en-US.i18n.data-dk9lHW62.mjs +0 -50
  3857. package/browser-prod/fesm2022/cms-browser-prod-taon-related-post-chooser.component.html.en-US.i18n.data-dk9lHW62.mjs.map +0 -1
  3858. package/browser-prod/fesm2022/cms-browser-prod-taon-related-post-chooser.component.html.pl-PL.i18n.data-BHGjfdPv.mjs +0 -51
  3859. package/browser-prod/fesm2022/cms-browser-prod-taon-related-post-chooser.component.html.pl-PL.i18n.data-BHGjfdPv.mjs.map +0 -1
  3860. package/browser-prod/fesm2022/cms-browser-prod-taon-related-post-chooser.component.ts.de-DE.i18n.data-Cs-byi87.mjs +0 -21
  3861. package/browser-prod/fesm2022/cms-browser-prod-taon-related-post-chooser.component.ts.de-DE.i18n.data-Cs-byi87.mjs.map +0 -1
  3862. package/browser-prod/fesm2022/cms-browser-prod-taon-related-post-chooser.component.ts.en-US.i18n.data-CNpn80st.mjs +0 -21
  3863. package/browser-prod/fesm2022/cms-browser-prod-taon-related-post-chooser.component.ts.en-US.i18n.data-CNpn80st.mjs.map +0 -1
  3864. package/browser-prod/fesm2022/cms-browser-prod-taon-related-post-chooser.component.ts.pl-PL.i18n.data-BQ-wAONd.mjs +0 -21
  3865. package/browser-prod/fesm2022/cms-browser-prod-taon-related-post-chooser.component.ts.pl-PL.i18n.data-BQ-wAONd.mjs.map +0 -1
  3866. package/websql/fesm2022/cms-websql-taon-cms-backoffice.component.html.de-DE.i18n.data-D8iRvIyP.mjs +0 -16
  3867. package/websql/fesm2022/cms-websql-taon-cms-backoffice.component.html.de-DE.i18n.data-D8iRvIyP.mjs.map +0 -1
  3868. package/websql/fesm2022/cms-websql-taon-cms-backoffice.component.html.en-US.i18n.data-BcXsjPgL.mjs +0 -16
  3869. package/websql/fesm2022/cms-websql-taon-cms-backoffice.component.html.en-US.i18n.data-BcXsjPgL.mjs.map +0 -1
  3870. package/websql/fesm2022/cms-websql-taon-cms-backoffice.component.html.pl-PL.i18n.data-AgLZxi-R.mjs +0 -16
  3871. package/websql/fesm2022/cms-websql-taon-cms-backoffice.component.html.pl-PL.i18n.data-AgLZxi-R.mjs.map +0 -1
  3872. package/websql/fesm2022/cms-websql-taon-cms-backoffice.routes.ts.de-DE.i18n.data-D2bKsNoS.mjs +0 -35
  3873. package/websql/fesm2022/cms-websql-taon-cms-backoffice.routes.ts.de-DE.i18n.data-D2bKsNoS.mjs.map +0 -1
  3874. package/websql/fesm2022/cms-websql-taon-cms-backoffice.routes.ts.en-US.i18n.data-nw5h-4Th.mjs +0 -35
  3875. package/websql/fesm2022/cms-websql-taon-cms-backoffice.routes.ts.en-US.i18n.data-nw5h-4Th.mjs.map +0 -1
  3876. package/websql/fesm2022/cms-websql-taon-cms-backoffice.routes.ts.pl-PL.i18n.data-DWPxduFo.mjs +0 -36
  3877. package/websql/fesm2022/cms-websql-taon-cms-backoffice.routes.ts.pl-PL.i18n.data-DWPxduFo.mjs.map +0 -1
  3878. package/websql/fesm2022/cms-websql-taon-cms-course-backoffice.component.html.de-DE.i18n.data-DkSppX5j.mjs +0 -55
  3879. package/websql/fesm2022/cms-websql-taon-cms-course-backoffice.component.html.de-DE.i18n.data-DkSppX5j.mjs.map +0 -1
  3880. package/websql/fesm2022/cms-websql-taon-cms-course-backoffice.component.html.en-US.i18n.data-DaYr8I_Z.mjs +0 -55
  3881. package/websql/fesm2022/cms-websql-taon-cms-course-backoffice.component.html.en-US.i18n.data-DaYr8I_Z.mjs.map +0 -1
  3882. package/websql/fesm2022/cms-websql-taon-cms-course-backoffice.component.html.pl-PL.i18n.data-C6_Aqc3M.mjs +0 -55
  3883. package/websql/fesm2022/cms-websql-taon-cms-course-backoffice.component.html.pl-PL.i18n.data-C6_Aqc3M.mjs.map +0 -1
  3884. package/websql/fesm2022/cms-websql-taon-cms-course-backoffice.component.ts.de-DE.i18n.data-DvIyIfqQ.mjs +0 -27
  3885. package/websql/fesm2022/cms-websql-taon-cms-course-backoffice.component.ts.de-DE.i18n.data-DvIyIfqQ.mjs.map +0 -1
  3886. package/websql/fesm2022/cms-websql-taon-cms-course-backoffice.component.ts.pl-PL.i18n.data-CeW02Lcj.mjs +0 -27
  3887. package/websql/fesm2022/cms-websql-taon-cms-course-backoffice.component.ts.pl-PL.i18n.data-CeW02Lcj.mjs.map +0 -1
  3888. package/websql/fesm2022/cms-websql-taon-cms-course-contents.component.html.de-DE.i18n.data-C7w7bI4c.mjs +0 -31
  3889. package/websql/fesm2022/cms-websql-taon-cms-course-contents.component.html.de-DE.i18n.data-C7w7bI4c.mjs.map +0 -1
  3890. package/websql/fesm2022/cms-websql-taon-cms-course-contents.component.html.en-US.i18n.data-B0x36jpK.mjs +0 -31
  3891. package/websql/fesm2022/cms-websql-taon-cms-course-contents.component.html.en-US.i18n.data-B0x36jpK.mjs.map +0 -1
  3892. package/websql/fesm2022/cms-websql-taon-cms-course-contents.component.html.pl-PL.i18n.data-2drjM21N.mjs +0 -31
  3893. package/websql/fesm2022/cms-websql-taon-cms-course-contents.component.html.pl-PL.i18n.data-2drjM21N.mjs.map +0 -1
  3894. package/websql/fesm2022/cms-websql-taon-cms-course-contents.component.ts.de-DE.i18n.data-CL2w5q-S.mjs +0 -31
  3895. package/websql/fesm2022/cms-websql-taon-cms-course-contents.component.ts.de-DE.i18n.data-CL2w5q-S.mjs.map +0 -1
  3896. package/websql/fesm2022/cms-websql-taon-cms-course-contents.component.ts.en-US.i18n.data-DleMuJeD.mjs +0 -31
  3897. package/websql/fesm2022/cms-websql-taon-cms-course-contents.component.ts.en-US.i18n.data-DleMuJeD.mjs.map +0 -1
  3898. package/websql/fesm2022/cms-websql-taon-cms-course-contents.component.ts.pl-PL.i18n.data-DgkzL0Vq.mjs +0 -31
  3899. package/websql/fesm2022/cms-websql-taon-cms-course-contents.component.ts.pl-PL.i18n.data-DgkzL0Vq.mjs.map +0 -1
  3900. package/websql/fesm2022/cms-websql-taon-cms-course-cover.component.ts.de-DE.i18n.data-CPpw6mEf.mjs +0 -15
  3901. package/websql/fesm2022/cms-websql-taon-cms-course-cover.component.ts.de-DE.i18n.data-CPpw6mEf.mjs.map +0 -1
  3902. package/websql/fesm2022/cms-websql-taon-cms-course-cover.component.ts.pl-PL.i18n.data-DZsvqr38.mjs +0 -15
  3903. package/websql/fesm2022/cms-websql-taon-cms-course-cover.component.ts.pl-PL.i18n.data-DZsvqr38.mjs.map +0 -1
  3904. package/websql/fesm2022/cms-websql-taon-cms-post-details-page.component.ts.de-DE.i18n.data-ClIYIAz7.mjs +0 -20
  3905. package/websql/fesm2022/cms-websql-taon-cms-post-details-page.component.ts.de-DE.i18n.data-ClIYIAz7.mjs.map +0 -1
  3906. package/websql/fesm2022/cms-websql-taon-cms-post-details-page.component.ts.pl-PL.i18n.data-86Izoe2O.mjs +0 -20
  3907. package/websql/fesm2022/cms-websql-taon-cms-post-details-page.component.ts.pl-PL.i18n.data-86Izoe2O.mjs.map +0 -1
  3908. package/websql/fesm2022/cms-websql-taon-cms-post-table-actions.directive.ts.de-DE.i18n.data-CKCKZi29.mjs +0 -55
  3909. package/websql/fesm2022/cms-websql-taon-cms-post-table-actions.directive.ts.de-DE.i18n.data-CKCKZi29.mjs.map +0 -1
  3910. package/websql/fesm2022/cms-websql-taon-cms-post-table-actions.directive.ts.en-US.i18n.data-DUh-u4-P.mjs +0 -55
  3911. package/websql/fesm2022/cms-websql-taon-cms-post-table-actions.directive.ts.en-US.i18n.data-DUh-u4-P.mjs.map +0 -1
  3912. package/websql/fesm2022/cms-websql-taon-cms-post-table-actions.directive.ts.pl-PL.i18n.data-juzvMnde.mjs +0 -55
  3913. package/websql/fesm2022/cms-websql-taon-cms-post-table-actions.directive.ts.pl-PL.i18n.data-juzvMnde.mjs.map +0 -1
  3914. package/websql/fesm2022/cms-websql-taon-cms-post.component.html.de-DE.i18n.data-DJcuFwI4.mjs +0 -376
  3915. package/websql/fesm2022/cms-websql-taon-cms-post.component.html.de-DE.i18n.data-DJcuFwI4.mjs.map +0 -1
  3916. package/websql/fesm2022/cms-websql-taon-cms-post.component.html.en-US.i18n.data-DqG-6paf.mjs +0 -375
  3917. package/websql/fesm2022/cms-websql-taon-cms-post.component.html.en-US.i18n.data-DqG-6paf.mjs.map +0 -1
  3918. package/websql/fesm2022/cms-websql-taon-cms-post.component.html.pl-PL.i18n.data-okZz6YGc.mjs +0 -376
  3919. package/websql/fesm2022/cms-websql-taon-cms-post.component.html.pl-PL.i18n.data-okZz6YGc.mjs.map +0 -1
  3920. package/websql/fesm2022/cms-websql-taon-cms-post.component.ts.de-DE.i18n.data-KbNFIOV8.mjs +0 -192
  3921. package/websql/fesm2022/cms-websql-taon-cms-post.component.ts.de-DE.i18n.data-KbNFIOV8.mjs.map +0 -1
  3922. package/websql/fesm2022/cms-websql-taon-cms-post.component.ts.en-US.i18n.data-CIeHDfiP.mjs +0 -188
  3923. package/websql/fesm2022/cms-websql-taon-cms-post.component.ts.en-US.i18n.data-CIeHDfiP.mjs.map +0 -1
  3924. package/websql/fesm2022/cms-websql-taon-cms-post.component.ts.pl-PL.i18n.data-bze_EsKd.mjs +0 -192
  3925. package/websql/fesm2022/cms-websql-taon-cms-post.component.ts.pl-PL.i18n.data-bze_EsKd.mjs.map +0 -1
  3926. package/websql/fesm2022/cms-websql-taon-cms-posts-backoffice.component.html.de-DE.i18n.data-UXy-sMFK.mjs +0 -49
  3927. package/websql/fesm2022/cms-websql-taon-cms-posts-backoffice.component.html.de-DE.i18n.data-UXy-sMFK.mjs.map +0 -1
  3928. package/websql/fesm2022/cms-websql-taon-cms-posts-backoffice.component.html.en-US.i18n.data-DCBhrRtK.mjs +0 -49
  3929. package/websql/fesm2022/cms-websql-taon-cms-posts-backoffice.component.html.en-US.i18n.data-DCBhrRtK.mjs.map +0 -1
  3930. package/websql/fesm2022/cms-websql-taon-cms-posts-backoffice.component.html.pl-PL.i18n.data-B5lnW5fC.mjs +0 -49
  3931. package/websql/fesm2022/cms-websql-taon-cms-posts-backoffice.component.html.pl-PL.i18n.data-B5lnW5fC.mjs.map +0 -1
  3932. package/websql/fesm2022/cms-websql-taon-cms-posts-backoffice.component.ts.de-DE.i18n.data-B7blUYSz.mjs +0 -25
  3933. package/websql/fesm2022/cms-websql-taon-cms-posts-backoffice.component.ts.de-DE.i18n.data-B7blUYSz.mjs.map +0 -1
  3934. package/websql/fesm2022/cms-websql-taon-cms-posts-backoffice.component.ts.pl-PL.i18n.data-DusaGJ-_.mjs +0 -25
  3935. package/websql/fesm2022/cms-websql-taon-cms-posts-backoffice.component.ts.pl-PL.i18n.data-DusaGJ-_.mjs.map +0 -1
  3936. package/websql/fesm2022/cms-websql-taon-cms-revision-chooser.component.html.de-DE.i18n.data-DxlQZtXm.mjs +0 -71
  3937. package/websql/fesm2022/cms-websql-taon-cms-revision-chooser.component.html.de-DE.i18n.data-DxlQZtXm.mjs.map +0 -1
  3938. package/websql/fesm2022/cms-websql-taon-cms-revision-chooser.component.html.en-US.i18n.data-DJ0utYrm.mjs +0 -71
  3939. package/websql/fesm2022/cms-websql-taon-cms-revision-chooser.component.html.en-US.i18n.data-DJ0utYrm.mjs.map +0 -1
  3940. package/websql/fesm2022/cms-websql-taon-cms-revision-chooser.component.html.pl-PL.i18n.data-CXGF086L.mjs +0 -71
  3941. package/websql/fesm2022/cms-websql-taon-cms-revision-chooser.component.html.pl-PL.i18n.data-CXGF086L.mjs.map +0 -1
  3942. package/websql/fesm2022/cms-websql-taon-cms-taxonomy-quick-create-dialog.component.ts.de-DE.i18n.data-BBgvZEjP.mjs +0 -39
  3943. package/websql/fesm2022/cms-websql-taon-cms-taxonomy-quick-create-dialog.component.ts.de-DE.i18n.data-BBgvZEjP.mjs.map +0 -1
  3944. package/websql/fesm2022/cms-websql-taon-cms-taxonomy-quick-create-dialog.component.ts.pl-PL.i18n.data-DqlFgTmr.mjs +0 -39
  3945. package/websql/fesm2022/cms-websql-taon-cms-taxonomy-quick-create-dialog.component.ts.pl-PL.i18n.data-DqlFgTmr.mjs.map +0 -1
  3946. package/websql/fesm2022/cms-websql-taon-related-post-chooser.component.html.de-DE.i18n.data-B8kwe4XH.mjs +0 -51
  3947. package/websql/fesm2022/cms-websql-taon-related-post-chooser.component.html.de-DE.i18n.data-B8kwe4XH.mjs.map +0 -1
  3948. package/websql/fesm2022/cms-websql-taon-related-post-chooser.component.html.en-US.i18n.data-DsxIoc3-.mjs +0 -50
  3949. package/websql/fesm2022/cms-websql-taon-related-post-chooser.component.html.en-US.i18n.data-DsxIoc3-.mjs.map +0 -1
  3950. package/websql/fesm2022/cms-websql-taon-related-post-chooser.component.html.pl-PL.i18n.data-KGkZHK6U.mjs +0 -51
  3951. package/websql/fesm2022/cms-websql-taon-related-post-chooser.component.html.pl-PL.i18n.data-KGkZHK6U.mjs.map +0 -1
  3952. package/websql/fesm2022/cms-websql-taon-related-post-chooser.component.ts.de-DE.i18n.data-B-AefZ-Q.mjs +0 -21
  3953. package/websql/fesm2022/cms-websql-taon-related-post-chooser.component.ts.de-DE.i18n.data-B-AefZ-Q.mjs.map +0 -1
  3954. package/websql/fesm2022/cms-websql-taon-related-post-chooser.component.ts.en-US.i18n.data-D5CUfAg0.mjs +0 -21
  3955. package/websql/fesm2022/cms-websql-taon-related-post-chooser.component.ts.en-US.i18n.data-D5CUfAg0.mjs.map +0 -1
  3956. package/websql/fesm2022/cms-websql-taon-related-post-chooser.component.ts.pl-PL.i18n.data-DlY8NCht.mjs +0 -21
  3957. package/websql/fesm2022/cms-websql-taon-related-post-chooser.component.ts.pl-PL.i18n.data-DlY8NCht.mjs.map +0 -1
  3958. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-backoffice.component.html.de-DE.i18n.data-C9czRdlm.mjs +0 -16
  3959. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-backoffice.component.html.de-DE.i18n.data-C9czRdlm.mjs.map +0 -1
  3960. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-backoffice.component.html.en-US.i18n.data-C64eFnqr.mjs +0 -16
  3961. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-backoffice.component.html.en-US.i18n.data-C64eFnqr.mjs.map +0 -1
  3962. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-backoffice.component.html.pl-PL.i18n.data-Cm-otof5.mjs +0 -16
  3963. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-backoffice.component.html.pl-PL.i18n.data-Cm-otof5.mjs.map +0 -1
  3964. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-backoffice.routes.ts.de-DE.i18n.data-MIIrwTKe.mjs +0 -35
  3965. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-backoffice.routes.ts.de-DE.i18n.data-MIIrwTKe.mjs.map +0 -1
  3966. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-backoffice.routes.ts.en-US.i18n.data-CAzMj6mG.mjs +0 -35
  3967. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-backoffice.routes.ts.en-US.i18n.data-CAzMj6mG.mjs.map +0 -1
  3968. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-backoffice.routes.ts.pl-PL.i18n.data-9SU8SXqe.mjs +0 -36
  3969. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-backoffice.routes.ts.pl-PL.i18n.data-9SU8SXqe.mjs.map +0 -1
  3970. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-course-backoffice.component.html.de-DE.i18n.data-pBodiDom.mjs +0 -55
  3971. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-course-backoffice.component.html.de-DE.i18n.data-pBodiDom.mjs.map +0 -1
  3972. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-course-backoffice.component.html.en-US.i18n.data-C-KaCnmB.mjs +0 -55
  3973. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-course-backoffice.component.html.en-US.i18n.data-C-KaCnmB.mjs.map +0 -1
  3974. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-course-backoffice.component.html.pl-PL.i18n.data-DVvCS_w8.mjs +0 -55
  3975. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-course-backoffice.component.html.pl-PL.i18n.data-DVvCS_w8.mjs.map +0 -1
  3976. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-course-backoffice.component.ts.de-DE.i18n.data-D9ccMkjQ.mjs +0 -27
  3977. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-course-backoffice.component.ts.de-DE.i18n.data-D9ccMkjQ.mjs.map +0 -1
  3978. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-course-backoffice.component.ts.pl-PL.i18n.data-DOVFInPW.mjs +0 -27
  3979. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-course-backoffice.component.ts.pl-PL.i18n.data-DOVFInPW.mjs.map +0 -1
  3980. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-course-contents.component.html.de-DE.i18n.data-DwXg_q7j.mjs +0 -31
  3981. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-course-contents.component.html.de-DE.i18n.data-DwXg_q7j.mjs.map +0 -1
  3982. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-course-contents.component.html.en-US.i18n.data-BPUBq0Bt.mjs +0 -31
  3983. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-course-contents.component.html.en-US.i18n.data-BPUBq0Bt.mjs.map +0 -1
  3984. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-course-contents.component.html.pl-PL.i18n.data-8KVZPVJ1.mjs +0 -31
  3985. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-course-contents.component.html.pl-PL.i18n.data-8KVZPVJ1.mjs.map +0 -1
  3986. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-course-contents.component.ts.de-DE.i18n.data-CjwirhHF.mjs +0 -31
  3987. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-course-contents.component.ts.de-DE.i18n.data-CjwirhHF.mjs.map +0 -1
  3988. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-course-contents.component.ts.en-US.i18n.data-B3xqVTaa.mjs +0 -31
  3989. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-course-contents.component.ts.en-US.i18n.data-B3xqVTaa.mjs.map +0 -1
  3990. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-course-contents.component.ts.pl-PL.i18n.data-B9cHH0RN.mjs +0 -31
  3991. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-course-contents.component.ts.pl-PL.i18n.data-B9cHH0RN.mjs.map +0 -1
  3992. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-course-cover.component.ts.de-DE.i18n.data-KnWWyfxp.mjs +0 -15
  3993. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-course-cover.component.ts.de-DE.i18n.data-KnWWyfxp.mjs.map +0 -1
  3994. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-course-cover.component.ts.pl-PL.i18n.data-OV3rbs4e.mjs +0 -15
  3995. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-course-cover.component.ts.pl-PL.i18n.data-OV3rbs4e.mjs.map +0 -1
  3996. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post-details-page.component.ts.de-DE.i18n.data-BEKxqiPy.mjs +0 -20
  3997. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post-details-page.component.ts.de-DE.i18n.data-BEKxqiPy.mjs.map +0 -1
  3998. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post-details-page.component.ts.pl-PL.i18n.data-d7nx-NiV.mjs +0 -20
  3999. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post-details-page.component.ts.pl-PL.i18n.data-d7nx-NiV.mjs.map +0 -1
  4000. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post-table-actions.directive.ts.de-DE.i18n.data-Bd1YmeXl.mjs +0 -55
  4001. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post-table-actions.directive.ts.de-DE.i18n.data-Bd1YmeXl.mjs.map +0 -1
  4002. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post-table-actions.directive.ts.en-US.i18n.data-BTSFy-ow.mjs +0 -55
  4003. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post-table-actions.directive.ts.en-US.i18n.data-BTSFy-ow.mjs.map +0 -1
  4004. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post-table-actions.directive.ts.pl-PL.i18n.data-C2f14xE4.mjs +0 -55
  4005. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post-table-actions.directive.ts.pl-PL.i18n.data-C2f14xE4.mjs.map +0 -1
  4006. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post.component.html.de-DE.i18n.data-BFSHH9Im.mjs +0 -376
  4007. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post.component.html.de-DE.i18n.data-BFSHH9Im.mjs.map +0 -1
  4008. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post.component.html.en-US.i18n.data-BiMl_Fi4.mjs +0 -375
  4009. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post.component.html.en-US.i18n.data-BiMl_Fi4.mjs.map +0 -1
  4010. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post.component.html.pl-PL.i18n.data-x-2YNBm3.mjs +0 -376
  4011. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post.component.html.pl-PL.i18n.data-x-2YNBm3.mjs.map +0 -1
  4012. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post.component.ts.de-DE.i18n.data-BqvaPHXJ.mjs +0 -192
  4013. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post.component.ts.de-DE.i18n.data-BqvaPHXJ.mjs.map +0 -1
  4014. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post.component.ts.en-US.i18n.data-CyzBbAcG.mjs +0 -188
  4015. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post.component.ts.en-US.i18n.data-CyzBbAcG.mjs.map +0 -1
  4016. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post.component.ts.pl-PL.i18n.data-C8bVvJ1M.mjs +0 -192
  4017. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post.component.ts.pl-PL.i18n.data-C8bVvJ1M.mjs.map +0 -1
  4018. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-posts-backoffice.component.html.de-DE.i18n.data-DYJ4Tqv5.mjs +0 -49
  4019. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-posts-backoffice.component.html.de-DE.i18n.data-DYJ4Tqv5.mjs.map +0 -1
  4020. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-posts-backoffice.component.html.en-US.i18n.data-DVoHSv7o.mjs +0 -49
  4021. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-posts-backoffice.component.html.en-US.i18n.data-DVoHSv7o.mjs.map +0 -1
  4022. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-posts-backoffice.component.html.pl-PL.i18n.data-8omoF6EK.mjs +0 -49
  4023. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-posts-backoffice.component.html.pl-PL.i18n.data-8omoF6EK.mjs.map +0 -1
  4024. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-posts-backoffice.component.ts.de-DE.i18n.data-BdztQJJr.mjs +0 -25
  4025. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-posts-backoffice.component.ts.de-DE.i18n.data-BdztQJJr.mjs.map +0 -1
  4026. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-posts-backoffice.component.ts.pl-PL.i18n.data-DHQaIyy0.mjs +0 -25
  4027. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-posts-backoffice.component.ts.pl-PL.i18n.data-DHQaIyy0.mjs.map +0 -1
  4028. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-revision-chooser.component.html.de-DE.i18n.data-Dt4NoqCt.mjs +0 -71
  4029. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-revision-chooser.component.html.de-DE.i18n.data-Dt4NoqCt.mjs.map +0 -1
  4030. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-revision-chooser.component.html.en-US.i18n.data-yxnI4hZm.mjs +0 -71
  4031. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-revision-chooser.component.html.en-US.i18n.data-yxnI4hZm.mjs.map +0 -1
  4032. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-revision-chooser.component.html.pl-PL.i18n.data-BIt1Tr4D.mjs +0 -71
  4033. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-revision-chooser.component.html.pl-PL.i18n.data-BIt1Tr4D.mjs.map +0 -1
  4034. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-taxonomy-quick-create-dialog.component.ts.de-DE.i18n.data-a1wShLjX.mjs +0 -39
  4035. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-taxonomy-quick-create-dialog.component.ts.de-DE.i18n.data-a1wShLjX.mjs.map +0 -1
  4036. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-taxonomy-quick-create-dialog.component.ts.pl-PL.i18n.data-CBZHORXe.mjs +0 -39
  4037. package/websql-prod/fesm2022/cms-websql-prod-taon-cms-taxonomy-quick-create-dialog.component.ts.pl-PL.i18n.data-CBZHORXe.mjs.map +0 -1
  4038. package/websql-prod/fesm2022/cms-websql-prod-taon-related-post-chooser.component.html.de-DE.i18n.data-BnUmcqxu.mjs +0 -51
  4039. package/websql-prod/fesm2022/cms-websql-prod-taon-related-post-chooser.component.html.de-DE.i18n.data-BnUmcqxu.mjs.map +0 -1
  4040. package/websql-prod/fesm2022/cms-websql-prod-taon-related-post-chooser.component.html.en-US.i18n.data-BI5d-l_9.mjs +0 -50
  4041. package/websql-prod/fesm2022/cms-websql-prod-taon-related-post-chooser.component.html.en-US.i18n.data-BI5d-l_9.mjs.map +0 -1
  4042. package/websql-prod/fesm2022/cms-websql-prod-taon-related-post-chooser.component.html.pl-PL.i18n.data-HkdHjxON.mjs +0 -51
  4043. package/websql-prod/fesm2022/cms-websql-prod-taon-related-post-chooser.component.html.pl-PL.i18n.data-HkdHjxON.mjs.map +0 -1
  4044. package/websql-prod/fesm2022/cms-websql-prod-taon-related-post-chooser.component.ts.de-DE.i18n.data-C0OgfgMU.mjs +0 -21
  4045. package/websql-prod/fesm2022/cms-websql-prod-taon-related-post-chooser.component.ts.de-DE.i18n.data-C0OgfgMU.mjs.map +0 -1
  4046. package/websql-prod/fesm2022/cms-websql-prod-taon-related-post-chooser.component.ts.en-US.i18n.data-Bq84gw3j.mjs +0 -21
  4047. package/websql-prod/fesm2022/cms-websql-prod-taon-related-post-chooser.component.ts.en-US.i18n.data-Bq84gw3j.mjs.map +0 -1
  4048. package/websql-prod/fesm2022/cms-websql-prod-taon-related-post-chooser.component.ts.pl-PL.i18n.data-BZu7gvGb.mjs +0 -21
  4049. package/websql-prod/fesm2022/cms-websql-prod-taon-related-post-chooser.component.ts.pl-PL.i18n.data-BZu7gvGb.mjs.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"cms-browser-prod.mjs","sources":["../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content/taon-cms-content.models.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content/taon-cms-content.entity.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-application-hook/taon-cms-application-hook.entity.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-application-hooks.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/migrations/1792506757808_applicaitonHooks.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/migrations/migrations_index._auto-generated_.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/migrations/index.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/build-info._auto-generated_.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/start-cli.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-category/taon-cms-category.entity.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-category/taon-cms-category.repository.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-category/taon-cms-category.controller.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-category/taon-cms-category.provider.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-category/taon-cms-category.middleware.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-category/taon-cms-category.subscriber.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-category/taon-cms-category.abstract.context.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-comment/taon-cms-comment.entity.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-comment/taon-cms-comment.repository.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-comment/taon-cms-comment.controller.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-comment/taon-cms-comment.provider.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-comment/taon-cms-comment.middleware.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-comment/taon-cms-comment.subscriber.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-comment/taon-cms-comment.abstract.context.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content-revision/taon-cms-content-revision.entity.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content-revision/taon-cms-content-revision.repository.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content-revision/taon-cms-content-revision.controller.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content-revision/taon-cms-content-revision.provider.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content-revision/taon-cms-content-revision.middleware.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content-revision/taon-cms-content-revision.subscriber.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content-revision/taon-cms-content-revision.abstract.context.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content-tag/taon-cms-content-tag.entity.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content-tag/taon-cms-content-tag.repository.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content-tag/taon-cms-content-tag.controller.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content-tag/taon-cms-content-tag.provider.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content-tag/taon-cms-content-tag.middleware.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content-tag/taon-cms-content-tag.subscriber.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content-tag/taon-cms-content-tag.abstract.context.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-tag/taon-cms-tag.entity.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-tag/taon-cms-tag.repository.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-tag/taon-cms-tag.controller.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-tag/taon-cms-tag.provider.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-tag/taon-cms-tag.middleware.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-tag/taon-cms-tag.subscriber.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-tag/taon-cms-tag.abstract.context.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content/taon-cms-content.validation.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content/taon-cms-content.repository.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content/taon-cms-content-storage.controller.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content/taon-cms-content.controller.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content/taon-cms-content.middleware.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content/taon-cms-content.provider.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content/taon-cms-content.subscriber.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content/taon-cms-content.abstract.context.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content-asset/taon-cms-content-asset.entity.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content-asset/taon-cms-content-asset.repository.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content-asset/taon-cms-content-asset.controller.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content-asset/taon-cms-content-asset.provider.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content-asset/taon-cms-content-asset.middleware.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content-asset/taon-cms-content-asset.subscriber.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content-asset/taon-cms-content-asset.abstract.context.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content-permission/taon-cms-content-permission.entity.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content-permission/taon-cms-content-permission.repository.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content-permission/taon-cms-content-permission.controller.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content-permission/taon-cms-content-permission.provider.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content-permission/taon-cms-content-permission.middleware.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content-permission/taon-cms-content-permission.subscriber.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content-permission/taon-cms-content-permission.abstract.context.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms.abstract.context.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content/taon-cms-upload-progress.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content/taon-cms-content-api.service.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-assets-backoffice/taon-cms-asset-preview.component.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-assets-backoffice/taon-cms-asset-preview.component.html","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-assets-backoffice/taon-cms-assets-backoffice.component.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-assets-backoffice/taon-cms-assets-backoffice.component.html","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-assets-backoffice/taon-cms-assets-backoffice.routes.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-backoffice/taon-cms-backoffice.component.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-backoffice/taon-cms-backoffice.component.html","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-backoffice/taon-cms-backoffice.models.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-backoffice/taon-cms-backoffice.routes.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-category/taon-cms-category-api.service.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-category/taon-cms-category.constants.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-category/taon-cms-category.models.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-category/taon-cms-category.utils.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-category/taon-cms-taxonomy.validation.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-comment/taon-cms-comment-api.service.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-comment/taon-cms-comment.constants.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-comment/taon-cms-comment.models.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-comment/taon-cms-comment.utils.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content/taon-cms-content.config.service.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content/taon-cms-content.constants.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content/taon-cms-content.utils.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content/taon-cms-template-variables.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content-asset/taon-cms-content-asset-api.service.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content-asset/taon-cms-content-asset.constants.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content-asset/taon-cms-content-asset.models.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content-asset/taon-cms-content-asset.utils.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content-permission/taon-cms-content-permission-api.service.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content-permission/taon-cms-content-permission.constants.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content-permission/taon-cms-content-permission.models.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content-permission/taon-cms-content-permission.utils.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content-revision/taon-cms-content-revision-api.service.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content-revision/taon-cms-content-revision.constants.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content-revision/taon-cms-content-revision.models.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content-revision/taon-cms-content-revision.utils.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content-tag/taon-cms-content-tag-api.service.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content-tag/taon-cms-content-tag.constants.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content-tag/taon-cms-content-tag.models.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content-tag/taon-cms-content-tag.utils.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-tag/taon-cms-tag-api.service.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-tag/taon-cms-tag.constants.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-tag/taon-cms-tag.models.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-tag/taon-cms-tag.utils.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-taxonomy-backoffice/taon-cms-taxonomy-backoffice.component.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-taxonomy-backoffice/taon-cms-taxonomy-backoffice.component.html","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-taxonomy-backoffice/taon-cms-taxonomy-backoffice.routes.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-taxonomy-backoffice/taon-cms-taxonomy-quick-create-dialog.component.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-posts/taon-cms-posts-backoffice/taon-cms-post-table-actions.directive.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-posts/taon-cms-course-backoffice/taon-cms-course-contents.component.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-posts/taon-cms-course-backoffice/taon-cms-course-contents.component.html","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-posts/taon-cms-post/taon-cms-thumbnail.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-posts/taon-cms-course-backoffice/taon-cms-course-cover.component.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-posts/taon-cms-course-backoffice/taon-cms-course-cover.component.html","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-posts/taon-cms-course-backoffice/taon-cms-course-backoffice.component.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-posts/taon-cms-course-backoffice/taon-cms-course-backoffice.component.html","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-posts/taon-cms-course-backoffice/taon-cms-course-backoffice.models.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-posts/taon-cms-course-backoffice/taon-cms-course-backoffice.routes.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-posts/taon-cms-post/taon-cms-editable.directive.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-posts/taon-cms-revision-chooser/taon-cms-revision-chooser.component.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-posts/taon-cms-revision-chooser/taon-cms-revision-chooser.component.html","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-posts/taon-related-post-chooser/taon-related-post-chooser.component.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-posts/taon-related-post-chooser/taon-related-post-chooser.component.html","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-posts/taon-cms-post/taon-cms-post.component.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-posts/taon-cms-post/taon-cms-post.component.html","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-posts/taon-cms-post/taon-cms-post.routes.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-posts/taon-cms-post-details-page/taon-cms-post-details-page.component.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-posts/taon-cms-posts-backoffice/taon-cms-posts-backoffice.component.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-posts/taon-cms-posts-backoffice/taon-cms-posts-backoffice.component.html","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-posts/taon-cms-posts-backoffice/taon-cms-posts-backoffice.models.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-posts/taon-cms-posts-backoffice/taon-cms-posts-backoffice.routes.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/index._auto-generated_.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/index.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/cms-browser-prod.ts"],"sourcesContent":["import { TaonPermissionEntity } from '@taon-dev/session/browser-prod';\n\nexport enum TaonCmsContentType {\n Normal = 'normal',\n Video = 'video',\n Audio = 'audio',\n Attachment = 'attachment',\n}\n\nexport enum TaonCmsContentState {\n Active = 'active',\n Inactive = 'inactive',\n}\n\nexport interface TaonCmsContentFields {\n type: TaonCmsContentType;\n title: string;\n slug: string;\n body: string | null;\n videoKey: string | null;\n audioKey: string | null;\n attachmentKey: string | null;\n thumbnailKey: string | null;\n excerpt: string | null;\n categoryId: number | null;\n authorUserId: number | null;\n status: 'draft' | 'published' | 'archived';\n publishedAt: Date | null;\n applyPermissionsToRelatedPosts: boolean;\n}\n\nexport interface TaonCmsPermissionConfiguration {\n permissions: TaonPermissionEntity[];\n source: { id: number; title: string } | null;\n}\n\nexport interface TaonCmsCreateContent\n extends\n Pick<TaonCmsContentFields, 'title' | 'slug'>,\n Partial<Omit<TaonCmsContentFields, 'title' | 'slug'>> {\n tagIds?: number[];\n relatedPostIds?: number[];\n permissionIds?: number[];\n applicationHook?: TaonCmsApplicationHook | null;\n}\n\nexport interface TaonCmsUpdateContent extends Partial<TaonCmsContentFields> {\n tagIds?: number[];\n relatedPostIds?: number[];\n permissionIds?: number[];\n applicationHook?: TaonCmsApplicationHook | null;\n expectedVersion: number;\n}\n\nexport interface TaonCmsRestoreContent {\n revisionNumber: number;\n expectedVersion: number;\n}\n\nexport interface TaonCmsContentSnapshot extends TaonCmsContentFields {\n tagIds: number[];\n relatedPostIds?: number[];\n permissionIds: number[];\n}\nimport type { TaonCmsApplicationHook } from '../taon-cms-application-hooks';\n","//#region imports\nimport { Column, JoinTable, ManyToMany, OneToOne, CustomColumn, PrimaryGeneratedColumn, TaonBaseAbstractEntity, TaonBaseEntity, TaonEntity, Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\nimport { ___NS__add, ___NS__after, ___NS__ary, ___NS__assign, ___NS__assignIn, ___NS__assignInWith, ___NS__assignWith, ___NS__at, ___NS__attempt, ___NS__before, ___NS__bind, ___NS__bindAll, ___NS__bindKey, ___NS__camelCase, ___NS__capitalize, ___NS__castArray, ___NS__ceil, ___NS__chain, ___NS__chunk, ___NS__clamp, ___NS__clone, ___NS__cloneDeep, ___NS__cloneDeepWith, ___NS__cloneWith, ___NS__compact, ___NS__concat, ___NS__cond, ___NS__conforms, ___NS__conformsTo, ___NS__constant, ___NS__countBy, ___NS__create, ___NS__curry, ___NS__curryRight, ___NS__debounce, ___NS__deburr, ___NS__defaults, ___NS__defaultsDeep, ___NS__defaultTo, ___NS__defer, ___NS__delay, ___NS__difference, ___NS__differenceBy, ___NS__differenceWith, ___NS__divide, ___NS__drop, ___NS__dropRight, ___NS__dropRightWhile, ___NS__dropWhile, ___NS__each, ___NS__eachRight, ___NS__endsWith, ___NS__entries, ___NS__entriesIn, ___NS__eq, ___NS__escape, ___NS__escapeRegExp, ___NS__every, ___NS__extend, ___NS__extendWith, ___NS__fill, ___NS__filter, ___NS__find, ___NS__findIndex, ___NS__findKey, ___NS__findLast, ___NS__findLastIndex, ___NS__findLastKey, ___NS__first, ___NS__flatMap, ___NS__flatMapDeep, ___NS__flatMapDepth, ___NS__flatten, ___NS__flattenDeep, ___NS__flattenDepth, ___NS__flip, ___NS__floor, ___NS__flow, ___NS__flowRight, ___NS__forEach, ___NS__forEachRight, ___NS__forIn, ___NS__forInRight, ___NS__forOwn, ___NS__forOwnRight, ___NS__fromPairs, ___NS__functions, ___NS__functionsIn, ___NS__get, ___NS__groupBy, ___NS__gt, ___NS__gte, ___NS__has, ___NS__hasIn, ___NS__head, ___NS__identity, ___NS__includes, ___NS__indexOf, ___NS__initial, ___NS__inRange, ___NS__intersection, ___NS__intersectionBy, ___NS__intersectionWith, ___NS__invert, ___NS__invertBy, ___NS__invoke, ___NS__invokeMap, ___NS__isArguments, ___NS__isArray, ___NS__isArrayBuffer, ___NS__isArrayLike, ___NS__isArrayLikeObject, ___NS__isBoolean, ___NS__isBuffer, ___NS__isDate, ___NS__isElement, ___NS__isEmpty, ___NS__isEqual, ___NS__isEqualWith, ___NS__isError, ___NS__isFinite, ___NS__isFunction, ___NS__isInteger, ___NS__isLeafObject, ___NS__isLength, ___NS__isMap, ___NS__isMatch, ___NS__isMatchWith, ___NS__isNaN, ___NS__isNative, ___NS__isNil, ___NS__isNull, ___NS__isNumber, ___NS__isObject, ___NS__isObjectLike, ___NS__isPlainObject, ___NS__isRegExp, ___NS__isSafeInteger, ___NS__isSet, ___NS__isString, ___NS__isSymbol, ___NS__isTypedArray, ___NS__isUndefined, ___NS__isWeakMap, ___NS__isWeakSet, ___NS__iteratee, ___NS__join, ___NS__kebabCase, ___NS__keyBy, ___NS__keys, ___NS__keysIn, ___NS__last, ___NS__lastIndexOf, ___NS__lowerCase, ___NS__lowerFirst, ___NS__lt, ___NS__lte, ___NS__map, ___NS__mapKeys, ___NS__mapValues, ___NS__matches, ___NS__matchesProperty, ___NS__max, ___NS__maxBy, ___NS__mean, ___NS__meanBy, ___NS__memoize, ___NS__merge, ___NS__mergeWith, ___NS__method, ___NS__methodOf, ___NS__min, ___NS__minBy, ___NS__mixin, ___NS__multiply, ___NS__negate, ___NS__noop, ___NS__now, ___NS__nth, ___NS__nthArg, ___NS__omit, ___NS__omitBy, ___NS__once, ___NS__orderBy, ___NS__over, ___NS__overArgs, ___NS__overEvery, ___NS__overSome, ___NS__pad, ___NS__padEnd, ___NS__padStart, ___NS__parseInt, ___NS__partial, ___NS__partialRight, ___NS__partition, ___NS__pick, ___NS__pickBy, ___NS__property, ___NS__propertyOf, ___NS__pull, ___NS__pullAll, ___NS__pullAllBy, ___NS__pullAllWith, ___NS__pullAt, ___NS__random, ___NS__range, ___NS__rangeRight, ___NS__rearg, ___NS__reduce, ___NS__reduceRight, ___NS__reject, ___NS__remove, ___NS__repeat, ___NS__replace, ___NS__rest, ___NS__result, ___NS__reverse, ___NS__round, ___NS__sample, ___NS__sampleSize, ___NS__set, ___NS__setWith, ___NS__shuffle, ___NS__size, ___NS__slice, ___NS__snakeCase, ___NS__some, ___NS__sortBy, ___NS__sortedIndex, ___NS__sortedIndexBy, ___NS__sortedIndexOf, ___NS__sortedLastIndex, ___NS__sortedLastIndexBy, ___NS__sortedLastIndexOf, ___NS__sortedUniq, ___NS__sortedUniqBy, ___NS__split, ___NS__spread, ___NS__startCase, ___NS__startsWith, ___NS__stubArray, ___NS__stubFalse, ___NS__stubObject, ___NS__stubString, ___NS__stubTrue, ___NS__subtract, ___NS__sum, ___NS__sumBy, ___NS__tail, ___NS__take, ___NS__takeRight, ___NS__takeRightWhile, ___NS__takeWhile, ___NS__tap, ___NS__template, ___NS__templateSettings, ___NS__throttle, ___NS__thru, ___NS__times, ___NS__toArray, ___NS__toFinite, ___NS__toInteger, ___NS__toLength, ___NS__toLower, ___NS__toNumber, ___NS__toPairs, ___NS__toPairsIn, ___NS__toPath, ___NS__toPlainObject, ___NS__toSafeInteger, ___NS__toString, ___NS__toUpper, ___NS__transform, ___NS__trim, ___NS__trimEnd, ___NS__trimStart, ___NS__truncate, ___NS__unary, ___NS__unescape, ___NS__union, ___NS__unionBy, ___NS__unionWith, ___NS__uniq, ___NS__uniqBy, ___NS__uniqueId, ___NS__uniqWith, ___NS__unset, ___NS__unzip, ___NS__unzipWith, ___NS__update, ___NS__updateWith, ___NS__upperCase, ___NS__upperFirst, ___NS__values, ___NS__valuesIn, ___NS__without, ___NS__words, ___NS__wrap, ___NS__xor, ___NS__xorBy, ___NS__xorWith, ___NS__zip, ___NS__zipObject, ___NS__zipObjectDeep, ___NS__zipWith } from 'tnp-core/browser-prod';\nimport { TaonPermissionEntity } from '@taon-dev/session/browser-prod';\n\nimport { TaonCmsApplicationHookEntity } from '../taon-cms-application-hook/taon-cms-application-hook.entity';\n\nimport { TaonCmsContentDefaultsValues } from './taon-cms-content.constants';\nimport { TaonCmsContentType } from './taon-cms-content.models';\n//#endregion\n\n@TaonEntity({\n className: 'TaonCmsContentEntity',\n createTable: true,\n})\nexport class TaonCmsContentEntity extends TaonBaseEntity<TaonCmsContentEntity> {\n/* */\n/* */\n \n id: number;\n\n/* */\n/* */\n \n version: number;\n\n/* */\n/* */\n \n type: TaonCmsContentType = TaonCmsContentType.Normal;\n\n/* */\n/* */\n \n title: string;\n\n/* */\n/* */\n \n slug: string;\n\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n \n relatedPosts: TaonCmsContentEntity[];\n\n/* */\n/* */\n/* */\n/* */\n/* */\n \n applicationHook: TaonCmsApplicationHookEntity | null;\n\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n \n permissions: TaonPermissionEntity[];\n\n/* */\n/* */\n \n applyPermissionsToRelatedPosts: boolean = false;\n\n/* */\n/* */\n \n excerpt: string | null;\n\n/* */\n/* */\n \n body: string | null;\n\n/* */\n/* */\n \n videoKey: string | null = null;\n\n/* */\n/* */\n \n audioKey: string | null = null;\n\n/* */\n/* */\n \n attachmentKey: string | null = null;\n\n/* */\n/* */\n \n thumbnailKey: string | null = null;\n\n/* */\n/* */\n \n categoryId: number | null;\n\n/* */\n/* */\n \n authorUserId: number | null;\n\n/* */\n/* */\n \n status: string;\n // draft | published | archived\n\n/* */\n/* */\n \n publishedAt: Date | null;\n\n/* */\n/* */\n \n createdAt: Date;\n\n/* */\n/* */\n \n updatedAt: Date;\n}","import {\n Column,\n JoinColumn,\n OneToOne,\n PrimaryGeneratedColumn,\n TaonBaseEntity,\n TaonEntity,\n} from 'taon/browser-prod';\n\nimport type { TaonCmsApplicationHook } from '../taon-cms-application-hooks';\nimport { TaonCmsContentEntity } from '../taon-cms-content/taon-cms-content.entity';\n\n@TaonEntity({\n className: 'TaonCmsApplicationHookEntity',\n createTable: true,\n})\nexport class TaonCmsApplicationHookEntity extends TaonBaseEntity<TaonCmsApplicationHookEntity> {\n @PrimaryGeneratedColumn()\n id: number;\n\n @Column({ type: 'varchar', unique: true })\n hook: TaonCmsApplicationHook;\n\n @Column({ type: 'integer', nullable: true, unique: true })\n contentId: number | null;\n\n @OneToOne(\n () => TaonCmsContentEntity,\n content => content.applicationHook,\n { nullable: true, onDelete: 'SET NULL' },\n )\n @JoinColumn({ name: 'contentId', referencedColumnName: 'id' })\n content: TaonCmsContentEntity | null;\n}\n","export const TaonCmsApplicationHook = {\n HOME_HERO: 'home-hero',\n HOME_FEATURED_POST: 'home-featured-post',\n SHOP_PROMOTION: 'shop-promotion',\n LOGIN_INFO: 'login-info',\n FOOTER_ABOUT: 'footer-about',\n} as const;\n\nexport type TaonCmsApplicationHook =\n (typeof TaonCmsApplicationHook)[keyof typeof TaonCmsApplicationHook];\n","import { TaonCmsContentEntity } from '../taon-cms-content/taon-cms-content.entity';\nimport { TaonBaseMigration, TaonMigration, ClassHelpers__NS__asyncHandler, ClassHelpers__NS__ensureClassConfig, ClassHelpers__NS__ensureMethodConfig, ClassHelpers__NS__getClassConfig, ClassHelpers__NS__getClassFnFromObject, ClassHelpers__NS__getControllerConfigs, ClassHelpers__NS__getFullInternalName, ClassHelpers__NS__getMethodsNames, ClassHelpers__NS__getName, ClassHelpers__NS__getOrginalClass, ClassHelpers__NS__getUniqueKey, ClassHelpers__NS__hasParentClassWithName, ClassHelpers__NS__isContextClassObject, ClassHelpers__NS__mapFnError, ClassHelpers__NS__setName } from 'taon/browser-prod';\nimport { QueryRunner, Table } from 'taon-typeorm/browser-prod';\n\nimport { TaonCmsApplicationHookEntity } from '../taon-cms-application-hook/taon-cms-application-hook.entity';\nimport { TaonCmsApplicationHook } from '../taon-cms-application-hooks';\n\n//#region Migration class for context \"CmsContext\"\n@TaonMigration({\n className: 'CmsContext_1792506757808_applicaitonHooks',\n})\nexport class CmsContext_1792506757808_applicaitonHooks extends TaonBaseMigration {\n APPLICATION_HOOK_TABLE = ClassHelpers__NS__getName(TaonCmsApplicationHookEntity);\n\n CONTENT_TABLE = ClassHelpers__NS__getName(TaonCmsContentEntity);\n\n //#region up\n async up(queryRunner: QueryRunner): Promise<any> {\n await queryRunner.startTransaction();\n try {\n if (!(await queryRunner.hasTable(this.APPLICATION_HOOK_TABLE))) {\n await queryRunner.createTable(\n new Table({\n name: this.APPLICATION_HOOK_TABLE,\n columns: [\n {\n name: 'id',\n type: 'integer',\n isPrimary: true,\n isGenerated: true,\n generationStrategy: 'increment',\n },\n { name: 'hook', type: 'varchar', isUnique: true },\n {\n name: 'contentId',\n type: 'integer',\n isNullable: true,\n isUnique: true,\n },\n ],\n foreignKeys: [\n {\n columnNames: ['contentId'],\n referencedTableName: this.CONTENT_TABLE,\n referencedColumnNames: ['id'],\n onDelete: 'SET NULL',\n },\n ],\n }),\n true,\n );\n }\n\n await this.persistApplicationHooks(queryRunner);\n await queryRunner.commitTransaction();\n } catch (error) {\n console.error('Error in migration:', error);\n await queryRunner.rollbackTransaction();\n throw error;\n }\n }\n //#endregion\n\n //#region down\n async down(queryRunner: QueryRunner): Promise<any> {\n if (await queryRunner.hasTable(this.APPLICATION_HOOK_TABLE)) {\n await queryRunner.dropTable(this.APPLICATION_HOOK_TABLE, true);\n }\n }\n //#endregion\n\n protected getApplicationHooks(): Record<string, string> {\n return TaonCmsApplicationHook;\n }\n\n private async persistApplicationHooks(\n queryRunner: QueryRunner,\n ): Promise<void> {\n const repository = queryRunner.manager.getRepository(\n TaonCmsApplicationHookEntity,\n );\n for (const hook of Object.values(this.getApplicationHooks())) {\n if (!(await repository.findOneBy({ hook: hook as any }))) {\n await repository.save(\n repository.create({ hook: hook as any, contentId: null }),\n );\n }\n }\n }\n}\n//#endregion","// THIS FILE IS GENERATED - DO NOT MODIFY\nimport { CmsContext_1792506757808_applicaitonHooks } from './1792506757808_applicaitonHooks';\nexport { CmsContext_1792506757808_applicaitonHooks } from './1792506757808_applicaitonHooks';\n// THIS FILE IS GENERATED - DO NOT MODIFY\nexport const MIGRATIONS_CLASSES_FOR_CmsContext = {\n /* 20-10-2026 16:32:37 */ CmsContext_1792506757808_applicaitonHooks,\n};\n// THIS FILE IS GENERATED - DO NOT MODIFY\n","//@ts-nocheck\nexport * from './migrations_index._auto-generated_';\n","// THIS FILE IS GENERATED - DO NOT MODIFY\n/**\n * Autogenerated by current cli tool\n */\nexport const BUILD_FRAMEWORK_CLI_NAME = 'tnp';\n/**\n * This value can be change in taon.jsonc (appId)\n */\nexport const APP_ID = 'com.domain.example.cms';\n/**\n * Autogenerated by current cli tool\n */\nexport const BUILD_BASE_HREF = '';\n/**\n * This value can be change in taon.jsonc (overrideNpmName)\n */\nexport const PROJECT_NPM_NAME = '@taon-dev/cms';\n/**\n * Taon version from you project taon.json\n */\nexport const CURRENT_PACKAGE_TAON_VERSION = 'v21';\n/**\n * Autogenerated by current cli tool. Use *tnp release* to bump version.\n */\nexport const CURRENT_PACKAGE_VERSION = '21.0.23';\n\n\n\n\n\n// THIS FILE IS GENERATED - DO NOT MODIFY\n ","//#region tnp-helpers cli template\nimport { UtilsJson__NS__AttrJsoncProp, UtilsJson__NS__getAtrributiesFromJsonWithComments, UtilsJson__NS__getAttributiesFromComment, UtilsJson__NS__getValue, UtilsJson__NS__readJson, UtilsJson__NS__readJsonWithComments, UtilsJson__NS__setValue, UtilsJson__NS__validateLodashPath } from 'tnp-core/browser-prod';\nimport { BaseCommandLineFeature, Helpers__NS___fixCommand, Helpers__NS__ActionInstance, Helpers__NS__actionStarted, Helpers__NS__bigMaxBuffer, Helpers__NS__checkProcess, Helpers__NS__cleanExit, Helpers__NS__clearConsole, Helpers__NS__command, Helpers__NS__commandOutputAsString, Helpers__NS__commandOutputAsStringAsync, Helpers__NS__contain, Helpers__NS__createFolder, Helpers__NS__createSymLink, Helpers__NS__error, Helpers__NS__execute, Helpers__NS__exists, Helpers__NS__filesFrom, Helpers__NS__foldersFrom, Helpers__NS__getFilesFrom, Helpers__NS__getFoldersFrom, Helpers__NS__getIsBrowser, Helpers__NS__getIsElectron, Helpers__NS__getIsNode, Helpers__NS__getIsRunningInGitBash, Helpers__NS__getIsSupportedTaonTerminal, Helpers__NS__getIsVerboseMode, Helpers__NS__getIsVerboseModeOrTnp, Helpers__NS__getIsWebSQL, Helpers__NS__getIsWsl, Helpers__NS__getStdio, Helpers__NS__hideNodeWarnings, Helpers__NS__info, Helpers__NS__isBlob, Helpers__NS__isBuffer, Helpers__NS__isClass, Helpers__NS__isExistedSymlink, Helpers__NS__isFile, Helpers__NS__isFolder, Helpers__NS__isRunningInDocker, Helpers__NS__isRunningInLinuxGraphicsCapableEnvironment, Helpers__NS__isSymlinkFileExitedOrUnexisted, Helpers__NS__isSymlinkThatMatchesUrl, Helpers__NS__isUnexistedLink, Helpers__NS__killOnPort, Helpers__NS__killProcess, Helpers__NS__killProcessByPort, Helpers__NS__linksToFolderFrom, Helpers__NS__linksToFoldersFrom, Helpers__NS__log, Helpers__NS__logError, Helpers__NS__logInfo, Helpers__NS__logProc, Helpers__NS__logSuccess, Helpers__NS__logTaskDone, Helpers__NS__logTaskStarted, Helpers__NS__logWarn, Helpers__NS__mediaTypeFromSrc, Helpers__NS__mkdirp, Helpers__NS__modifyLineByLine, Helpers__NS__msgCacheClear, Helpers__NS__openFolderInFileExplorer, Helpers__NS__parse, Helpers__NS__pathContainLink, Helpers__NS__questionYesNo, Helpers__NS__readFile, Helpers__NS__readJson, Helpers__NS__readJson5, Helpers__NS__readJsonC, Helpers__NS__relative, Helpers__NS__remove, Helpers__NS__removeEmptyLineFromString, Helpers__NS__removeFileIfExists, Helpers__NS__removeFolderIfExists, Helpers__NS__removeIfExists, Helpers__NS__removeSlashAtBegin, Helpers__NS__removeSlashAtEnd, Helpers__NS__removeSymlinks, Helpers__NS__renderError, Helpers__NS__replaceLinesInFile, Helpers__NS__run, Helpers__NS__runAsyncIn, Helpers__NS__runSyncIn, Helpers__NS__runSyncOrAsync, Helpers__NS__sleep, Helpers__NS__stopApplication, Helpers__NS__stringify, Helpers__NS__success, Helpers__NS__taskDone, Helpers__NS__taskStarted, Helpers__NS__throwError, Helpers__NS__timeout, Helpers__NS__tryCatchError, Helpers__NS__tryReadFile, Helpers__NS__tryRemoveDir, Helpers__NS__values, Helpers__NS__wait, Helpers__NS__warn, Helpers__NS__writeFile, Helpers__NS__writeJson, Helpers__NS__writeJson5, Helpers__NS__writeJsonC } from 'tnp-helpers/browser-prod';\n/* */ \n//#endregion\n\n//#region CLI / global scope\n/**\n * This class is for handling global arguments. *\n * Cli engine will parse: hello:world:from:global:arg to helloWorldFromGlobalArg\n * (lower case, camel case) .. so you don't need to worry about misspelling\n * arguments\n */\nclass $Global extends BaseCommandLineFeature<{}> {\n /**\n * When you execute cli without arguments:`$ cli`\n */\n public _() {\n console.log(`Hello world from cli`);\n this._exit();\n }\n\n /**\n * When you execute: `$ cli hello:world:from:global:arg`\n * (or `$ cli helloWorldFromGlobalArg`)\n */\n helloWorldFromGlobalArg() {\n console.log('hello world from global argument!');\n this._exit(0);\n }\n}\n//#endregion\n\n//#region CLI / Version Scope\n/**\n *\n */\nclass $Version extends BaseCommandLineFeature<{\n anyCLIparamsHere: string;\n}> {\n /**\n * When you execute: `$ cli version`\n */\n public _() {\n console.log(`Hello world from version argument`);\n this._exit();\n }\n\n /**\n * When you execute: `$ cli version:getFromPackageJson`\n */\n public getFromPackageJson() {\n const ver = UtilsJson__NS__getValue(\n this.project.pathFor('package.json'),\n 'version',\n {\n defaultValue: '<not defined>',\n },\n );\n console.log(`Version from packageJson ${ver}`);\n this._exit(0);\n }\n}\n//#endregion\n\n/**\n *\n * @param argsv process.argsv\n * @param filename needed if you want ipc communicaiton\n */\nexport async function startCli(\n argsv: string[],\n filename: string,\n): Promise<void> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n}\n\nexport default startCli;","//#region imports\nimport { Column, CustomColumn, TaonBaseAbstractEntity, TaonEntity, Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\nimport { ___NS__add, ___NS__after, ___NS__ary, ___NS__assign, ___NS__assignIn, ___NS__assignInWith, ___NS__assignWith, ___NS__at, ___NS__attempt, ___NS__before, ___NS__bind, ___NS__bindAll, ___NS__bindKey, ___NS__camelCase, ___NS__capitalize, ___NS__castArray, ___NS__ceil, ___NS__chain, ___NS__chunk, ___NS__clamp, ___NS__clone, ___NS__cloneDeep, ___NS__cloneDeepWith, ___NS__cloneWith, ___NS__compact, ___NS__concat, ___NS__cond, ___NS__conforms, ___NS__conformsTo, ___NS__constant, ___NS__countBy, ___NS__create, ___NS__curry, ___NS__curryRight, ___NS__debounce, ___NS__deburr, ___NS__defaults, ___NS__defaultsDeep, ___NS__defaultTo, ___NS__defer, ___NS__delay, ___NS__difference, ___NS__differenceBy, ___NS__differenceWith, ___NS__divide, ___NS__drop, ___NS__dropRight, ___NS__dropRightWhile, ___NS__dropWhile, ___NS__each, ___NS__eachRight, ___NS__endsWith, ___NS__entries, ___NS__entriesIn, ___NS__eq, ___NS__escape, ___NS__escapeRegExp, ___NS__every, ___NS__extend, ___NS__extendWith, ___NS__fill, ___NS__filter, ___NS__find, ___NS__findIndex, ___NS__findKey, ___NS__findLast, ___NS__findLastIndex, ___NS__findLastKey, ___NS__first, ___NS__flatMap, ___NS__flatMapDeep, ___NS__flatMapDepth, ___NS__flatten, ___NS__flattenDeep, ___NS__flattenDepth, ___NS__flip, ___NS__floor, ___NS__flow, ___NS__flowRight, ___NS__forEach, ___NS__forEachRight, ___NS__forIn, ___NS__forInRight, ___NS__forOwn, ___NS__forOwnRight, ___NS__fromPairs, ___NS__functions, ___NS__functionsIn, ___NS__get, ___NS__groupBy, ___NS__gt, ___NS__gte, ___NS__has, ___NS__hasIn, ___NS__head, ___NS__identity, ___NS__includes, ___NS__indexOf, ___NS__initial, ___NS__inRange, ___NS__intersection, ___NS__intersectionBy, ___NS__intersectionWith, ___NS__invert, ___NS__invertBy, ___NS__invoke, ___NS__invokeMap, ___NS__isArguments, ___NS__isArray, ___NS__isArrayBuffer, ___NS__isArrayLike, ___NS__isArrayLikeObject, ___NS__isBoolean, ___NS__isBuffer, ___NS__isDate, ___NS__isElement, ___NS__isEmpty, ___NS__isEqual, ___NS__isEqualWith, ___NS__isError, ___NS__isFinite, ___NS__isFunction, ___NS__isInteger, ___NS__isLeafObject, ___NS__isLength, ___NS__isMap, ___NS__isMatch, ___NS__isMatchWith, ___NS__isNaN, ___NS__isNative, ___NS__isNil, ___NS__isNull, ___NS__isNumber, ___NS__isObject, ___NS__isObjectLike, ___NS__isPlainObject, ___NS__isRegExp, ___NS__isSafeInteger, ___NS__isSet, ___NS__isString, ___NS__isSymbol, ___NS__isTypedArray, ___NS__isUndefined, ___NS__isWeakMap, ___NS__isWeakSet, ___NS__iteratee, ___NS__join, ___NS__kebabCase, ___NS__keyBy, ___NS__keys, ___NS__keysIn, ___NS__last, ___NS__lastIndexOf, ___NS__lowerCase, ___NS__lowerFirst, ___NS__lt, ___NS__lte, ___NS__map, ___NS__mapKeys, ___NS__mapValues, ___NS__matches, ___NS__matchesProperty, ___NS__max, ___NS__maxBy, ___NS__mean, ___NS__meanBy, ___NS__memoize, ___NS__merge, ___NS__mergeWith, ___NS__method, ___NS__methodOf, ___NS__min, ___NS__minBy, ___NS__mixin, ___NS__multiply, ___NS__negate, ___NS__noop, ___NS__now, ___NS__nth, ___NS__nthArg, ___NS__omit, ___NS__omitBy, ___NS__once, ___NS__orderBy, ___NS__over, ___NS__overArgs, ___NS__overEvery, ___NS__overSome, ___NS__pad, ___NS__padEnd, ___NS__padStart, ___NS__parseInt, ___NS__partial, ___NS__partialRight, ___NS__partition, ___NS__pick, ___NS__pickBy, ___NS__property, ___NS__propertyOf, ___NS__pull, ___NS__pullAll, ___NS__pullAllBy, ___NS__pullAllWith, ___NS__pullAt, ___NS__random, ___NS__range, ___NS__rangeRight, ___NS__rearg, ___NS__reduce, ___NS__reduceRight, ___NS__reject, ___NS__remove, ___NS__repeat, ___NS__replace, ___NS__rest, ___NS__result, ___NS__reverse, ___NS__round, ___NS__sample, ___NS__sampleSize, ___NS__set, ___NS__setWith, ___NS__shuffle, ___NS__size, ___NS__slice, ___NS__snakeCase, ___NS__some, ___NS__sortBy, ___NS__sortedIndex, ___NS__sortedIndexBy, ___NS__sortedIndexOf, ___NS__sortedLastIndex, ___NS__sortedLastIndexBy, ___NS__sortedLastIndexOf, ___NS__sortedUniq, ___NS__sortedUniqBy, ___NS__split, ___NS__spread, ___NS__startCase, ___NS__startsWith, ___NS__stubArray, ___NS__stubFalse, ___NS__stubObject, ___NS__stubString, ___NS__stubTrue, ___NS__subtract, ___NS__sum, ___NS__sumBy, ___NS__tail, ___NS__take, ___NS__takeRight, ___NS__takeRightWhile, ___NS__takeWhile, ___NS__tap, ___NS__template, ___NS__templateSettings, ___NS__throttle, ___NS__thru, ___NS__times, ___NS__toArray, ___NS__toFinite, ___NS__toInteger, ___NS__toLength, ___NS__toLower, ___NS__toNumber, ___NS__toPairs, ___NS__toPairsIn, ___NS__toPath, ___NS__toPlainObject, ___NS__toSafeInteger, ___NS__toString, ___NS__toUpper, ___NS__transform, ___NS__trim, ___NS__trimEnd, ___NS__trimStart, ___NS__truncate, ___NS__unary, ___NS__unescape, ___NS__union, ___NS__unionBy, ___NS__unionWith, ___NS__uniq, ___NS__uniqBy, ___NS__uniqueId, ___NS__uniqWith, ___NS__unset, ___NS__unzip, ___NS__unzipWith, ___NS__update, ___NS__updateWith, ___NS__upperCase, ___NS__upperFirst, ___NS__values, ___NS__valuesIn, ___NS__without, ___NS__words, ___NS__wrap, ___NS__xor, ___NS__xorBy, ___NS__xorWith, ___NS__zip, ___NS__zipObject, ___NS__zipObjectDeep, ___NS__zipWith } from 'tnp-core/browser-prod';\n\nimport { TaonCmsCategoryDefaultsValues } from './taon-cms-category.constants';\n//#endregion\n\n@TaonEntity({\n className: 'TaonCmsCategoryEntity',\n createTable: true,\n})\nexport class TaonCmsCategoryEntity extends TaonBaseAbstractEntity<TaonCmsCategoryEntity> {\n/* */\n/* */\n \n parentCategoryId: number | null;\n\n/* */\n/* */\n \n name: string;\n\n/* */\n/* */\n \n slug: string;\n\n/* */\n/* */\n \n description: string | null;\n\n/* */\n/* */\n \n sortOrder: number;\n}","//#region imports\nimport { TaonBaseRepository, TaonRepository } from 'taon/browser-prod';\nimport { Raw } from 'taon-typeorm/browser-prod';\nimport { Translation } from '@taon-dev/i18n/browser-prod';\nimport { Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\nimport type { EntityManager } from 'taon-typeorm/browser-prod';\nimport { contentError } from '../taon-cms-content/taon-cms-content.validation';\n\nimport { TaonCmsCategoryEntity } from './taon-cms-category.entity';\nimport { TaonCmsContentEntity } from '../taon-cms-content/taon-cms-content.entity';\nimport { requireContentId } from '../taon-cms-content/taon-cms-content.validation';\nimport {\n TaonCmsCategoryFields,\n validateCategoryHierarchy,\n validateTaxonomy,\n} from './taon-cms-taxonomy.validation';\n//#endregion\n\nconst t = Translation.for('src/lib/taon-cms-category/taon-cms-category.repository.ts', {\"src/lib/taon-cms-category/taon-cms-category.controller.ts\":{\"en-US\":async () => (await import('./i18n/taon-cms-category.controller.ts.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-category.controller.ts.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-category.controller.ts.de-DE.i18n.data')).default},\"src/lib/taon-cms-category/taon-cms-category.repository.ts\":{\"en-US\":async () => (await import('./i18n/taon-cms-category.repository.ts.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-category.repository.ts.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-category.repository.ts.de-DE.i18n.data')).default},\"src/lib/taon-cms-category/taon-cms-taxonomy.validation.ts\":{\"en-US\":async () => (await import('./i18n/taon-cms-taxonomy.validation.ts.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-taxonomy.validation.ts.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-taxonomy.validation.ts.de-DE.i18n.data')).default}} as any);\n\n@TaonRepository({\n className: 'TaonCmsCategoryRepository',\n})\nexport class TaonCmsCategoryRepository extends TaonBaseRepository<TaonCmsCategoryEntity> {\n entityClassResolveFn: () => typeof TaonCmsCategoryEntity = () =>\n TaonCmsCategoryEntity;\n\n async saveCategory(\n id: number | null,\n input: TaonCmsCategoryFields,\n ): Promise<TaonCmsCategoryEntity> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n async deleteCategory(id: number): Promise<void> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n async requireCategory(id: number, manager: EntityManager): Promise<void> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n}","//#region imports\nimport { TaonSessionRepository } from '@taon-dev/session/browser-prod';\nimport { TaonAuthContextRepository } from '@taon-dev/session/browser-prod';\nimport { TaonController, TaonBaseCrudController, Query, GET, POST, DELETE, Body, ClassHelpers__NS__asyncHandler, ClassHelpers__NS__ensureClassConfig, ClassHelpers__NS__ensureMethodConfig, ClassHelpers__NS__getClassConfig, ClassHelpers__NS__getClassFnFromObject, ClassHelpers__NS__getControllerConfigs, ClassHelpers__NS__getFullInternalName, ClassHelpers__NS__getMethodsNames, ClassHelpers__NS__getName, ClassHelpers__NS__getOrginalClass, ClassHelpers__NS__getUniqueKey, ClassHelpers__NS__hasParentClassWithName, ClassHelpers__NS__isContextClassObject, ClassHelpers__NS__mapFnError, ClassHelpers__NS__setName, Models__NS__ClassType, Models__NS__ClassTypeKey, Models__NS__ConnectionOptionsLogs, Models__NS__ContextOptions, Models__NS__DatabaseConfig, Models__NS__DatabaseConfigTypeOrm, Models__NS__DatabasesFolder, Models__NS__DBRecreateMode, Models__NS__DBRecreateModeType, Models__NS__FrameworkMode, Models__NS__Http__NS__AsyncResponse, Models__NS__Http__NS__ClientAction, Models__NS__Http__NS__ContextENDPOINT, Models__NS__Http__NS__ExpressContext, Models__NS__Http__NS__FormlyFromType, Models__NS__Http__NS__MixResponse, Models__NS__Http__NS__PromiseObservableMix, Models__NS__Http__NS__RequestResults, Models__NS__Http__NS__Response, Models__NS__Http__NS__ResponseFuncOpt, Models__NS__Http__NS__SyncResponse, Models__NS__Http__NS__SyncResponseFunc, Models__NS__Http__NS__TaonStreamResponseOptions, Models__NS__KVDatabaseConfig, Models__NS__MiddlewareType, Models__NS__StartParams, Models__NS__TaonCtrlBeforeEachRequestParams, Models__NS__TaonCtxCloneParams, Models__NS__TaonInitializeParams, Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\nimport { ___NS__add, ___NS__after, ___NS__ary, ___NS__assign, ___NS__assignIn, ___NS__assignInWith, ___NS__assignWith, ___NS__at, ___NS__attempt, ___NS__before, ___NS__bind, ___NS__bindAll, ___NS__bindKey, ___NS__camelCase, ___NS__capitalize, ___NS__castArray, ___NS__ceil, ___NS__chain, ___NS__chunk, ___NS__clamp, ___NS__clone, ___NS__cloneDeep, ___NS__cloneDeepWith, ___NS__cloneWith, ___NS__compact, ___NS__concat, ___NS__cond, ___NS__conforms, ___NS__conformsTo, ___NS__constant, ___NS__countBy, ___NS__create, ___NS__curry, ___NS__curryRight, ___NS__debounce, ___NS__deburr, ___NS__defaults, ___NS__defaultsDeep, ___NS__defaultTo, ___NS__defer, ___NS__delay, ___NS__difference, ___NS__differenceBy, ___NS__differenceWith, ___NS__divide, ___NS__drop, ___NS__dropRight, ___NS__dropRightWhile, ___NS__dropWhile, ___NS__each, ___NS__eachRight, ___NS__endsWith, ___NS__entries, ___NS__entriesIn, ___NS__eq, ___NS__escape, ___NS__escapeRegExp, ___NS__every, ___NS__extend, ___NS__extendWith, ___NS__fill, ___NS__filter, ___NS__find, ___NS__findIndex, ___NS__findKey, ___NS__findLast, ___NS__findLastIndex, ___NS__findLastKey, ___NS__first, ___NS__flatMap, ___NS__flatMapDeep, ___NS__flatMapDepth, ___NS__flatten, ___NS__flattenDeep, ___NS__flattenDepth, ___NS__flip, ___NS__floor, ___NS__flow, ___NS__flowRight, ___NS__forEach, ___NS__forEachRight, ___NS__forIn, ___NS__forInRight, ___NS__forOwn, ___NS__forOwnRight, ___NS__fromPairs, ___NS__functions, ___NS__functionsIn, ___NS__get, ___NS__groupBy, ___NS__gt, ___NS__gte, ___NS__has, ___NS__hasIn, ___NS__head, ___NS__identity, ___NS__includes, ___NS__indexOf, ___NS__initial, ___NS__inRange, ___NS__intersection, ___NS__intersectionBy, ___NS__intersectionWith, ___NS__invert, ___NS__invertBy, ___NS__invoke, ___NS__invokeMap, ___NS__isArguments, ___NS__isArray, ___NS__isArrayBuffer, ___NS__isArrayLike, ___NS__isArrayLikeObject, ___NS__isBoolean, ___NS__isBuffer, ___NS__isDate, ___NS__isElement, ___NS__isEmpty, ___NS__isEqual, ___NS__isEqualWith, ___NS__isError, ___NS__isFinite, ___NS__isFunction, ___NS__isInteger, ___NS__isLeafObject, ___NS__isLength, ___NS__isMap, ___NS__isMatch, ___NS__isMatchWith, ___NS__isNaN, ___NS__isNative, ___NS__isNil, ___NS__isNull, ___NS__isNumber, ___NS__isObject, ___NS__isObjectLike, ___NS__isPlainObject, ___NS__isRegExp, ___NS__isSafeInteger, ___NS__isSet, ___NS__isString, ___NS__isSymbol, ___NS__isTypedArray, ___NS__isUndefined, ___NS__isWeakMap, ___NS__isWeakSet, ___NS__iteratee, ___NS__join, ___NS__kebabCase, ___NS__keyBy, ___NS__keys, ___NS__keysIn, ___NS__last, ___NS__lastIndexOf, ___NS__lowerCase, ___NS__lowerFirst, ___NS__lt, ___NS__lte, ___NS__map, ___NS__mapKeys, ___NS__mapValues, ___NS__matches, ___NS__matchesProperty, ___NS__max, ___NS__maxBy, ___NS__mean, ___NS__meanBy, ___NS__memoize, ___NS__merge, ___NS__mergeWith, ___NS__method, ___NS__methodOf, ___NS__min, ___NS__minBy, ___NS__mixin, ___NS__multiply, ___NS__negate, ___NS__noop, ___NS__now, ___NS__nth, ___NS__nthArg, ___NS__omit, ___NS__omitBy, ___NS__once, ___NS__orderBy, ___NS__over, ___NS__overArgs, ___NS__overEvery, ___NS__overSome, ___NS__pad, ___NS__padEnd, ___NS__padStart, ___NS__parseInt, ___NS__partial, ___NS__partialRight, ___NS__partition, ___NS__pick, ___NS__pickBy, ___NS__property, ___NS__propertyOf, ___NS__pull, ___NS__pullAll, ___NS__pullAllBy, ___NS__pullAllWith, ___NS__pullAt, ___NS__random, ___NS__range, ___NS__rangeRight, ___NS__rearg, ___NS__reduce, ___NS__reduceRight, ___NS__reject, ___NS__remove, ___NS__repeat, ___NS__replace, ___NS__rest, ___NS__result, ___NS__reverse, ___NS__round, ___NS__sample, ___NS__sampleSize, ___NS__set, ___NS__setWith, ___NS__shuffle, ___NS__size, ___NS__slice, ___NS__snakeCase, ___NS__some, ___NS__sortBy, ___NS__sortedIndex, ___NS__sortedIndexBy, ___NS__sortedIndexOf, ___NS__sortedLastIndex, ___NS__sortedLastIndexBy, ___NS__sortedLastIndexOf, ___NS__sortedUniq, ___NS__sortedUniqBy, ___NS__split, ___NS__spread, ___NS__startCase, ___NS__startsWith, ___NS__stubArray, ___NS__stubFalse, ___NS__stubObject, ___NS__stubString, ___NS__stubTrue, ___NS__subtract, ___NS__sum, ___NS__sumBy, ___NS__tail, ___NS__take, ___NS__takeRight, ___NS__takeRightWhile, ___NS__takeWhile, ___NS__tap, ___NS__template, ___NS__templateSettings, ___NS__throttle, ___NS__thru, ___NS__times, ___NS__toArray, ___NS__toFinite, ___NS__toInteger, ___NS__toLength, ___NS__toLower, ___NS__toNumber, ___NS__toPairs, ___NS__toPairsIn, ___NS__toPath, ___NS__toPlainObject, ___NS__toSafeInteger, ___NS__toString, ___NS__toUpper, ___NS__transform, ___NS__trim, ___NS__trimEnd, ___NS__trimStart, ___NS__truncate, ___NS__unary, ___NS__unescape, ___NS__union, ___NS__unionBy, ___NS__unionWith, ___NS__uniq, ___NS__uniqBy, ___NS__uniqueId, ___NS__uniqWith, ___NS__unset, ___NS__unzip, ___NS__unzipWith, ___NS__update, ___NS__updateWith, ___NS__upperCase, ___NS__upperFirst, ___NS__values, ___NS__valuesIn, ___NS__without, ___NS__words, ___NS__wrap, ___NS__xor, ___NS__xorBy, ___NS__xorWith, ___NS__zip, ___NS__zipObject, ___NS__zipObjectDeep, ___NS__zipWith } from 'tnp-core/browser-prod';\n\nimport { contentError } from '../taon-cms-content/taon-cms-content.validation';\n\nimport { TaonCmsCategoryEntity } from './taon-cms-category.entity';\nimport { TaonCmsCategoryRepository } from './taon-cms-category.repository';\nimport type { TaonCmsCategoryFields } from './taon-cms-taxonomy.validation';\n//#endregion\n\n@TaonController<TaonCmsCategoryController>({\n className: 'TaonCmsCategoryController',\n allowedMethods: ['getAll', 'saveCategory', 'deleteCategory'],\n})\nexport class TaonCmsCategoryController extends TaonBaseCrudController<TaonCmsCategoryEntity> {\n entityClassResolveFn: () => typeof TaonCmsCategoryEntity = () =>\n TaonCmsCategoryEntity;\n\n taonCmsCategoryRepository = this.injectCustomRepo(TaonCmsCategoryRepository);\n\n private readonly sessions = this.injectCustomRepo(TaonSessionRepository);\n\n private readonly auth = this.injectCustomRepo(TaonAuthContextRepository);\n\n protected async beforeEachRequest({\n req,\n res,\n t,\n }: Models__NS__TaonCtrlBeforeEachRequestParams<TaonCmsCategoryController>): Promise<void> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n @POST()\n saveCategory(\n @Query('id') id: number | null,\n @Body() input: TaonCmsCategoryFields,\n ): Taon__NS__Response<TaonCmsCategoryEntity> {\n/* */\n/* */\n return (void 0);\n }\n\n @DELETE()\n deleteCategory(@Query('id') id: number): Taon__NS__Response<void> {\n/* */\n/* */\n return (void 0);\n }\n}","//#region imports\nimport { TaonBaseProvider, TaonProvider, Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\nimport { ___NS__add, ___NS__after, ___NS__ary, ___NS__assign, ___NS__assignIn, ___NS__assignInWith, ___NS__assignWith, ___NS__at, ___NS__attempt, ___NS__before, ___NS__bind, ___NS__bindAll, ___NS__bindKey, ___NS__camelCase, ___NS__capitalize, ___NS__castArray, ___NS__ceil, ___NS__chain, ___NS__chunk, ___NS__clamp, ___NS__clone, ___NS__cloneDeep, ___NS__cloneDeepWith, ___NS__cloneWith, ___NS__compact, ___NS__concat, ___NS__cond, ___NS__conforms, ___NS__conformsTo, ___NS__constant, ___NS__countBy, ___NS__create, ___NS__curry, ___NS__curryRight, ___NS__debounce, ___NS__deburr, ___NS__defaults, ___NS__defaultsDeep, ___NS__defaultTo, ___NS__defer, ___NS__delay, ___NS__difference, ___NS__differenceBy, ___NS__differenceWith, ___NS__divide, ___NS__drop, ___NS__dropRight, ___NS__dropRightWhile, ___NS__dropWhile, ___NS__each, ___NS__eachRight, ___NS__endsWith, ___NS__entries, ___NS__entriesIn, ___NS__eq, ___NS__escape, ___NS__escapeRegExp, ___NS__every, ___NS__extend, ___NS__extendWith, ___NS__fill, ___NS__filter, ___NS__find, ___NS__findIndex, ___NS__findKey, ___NS__findLast, ___NS__findLastIndex, ___NS__findLastKey, ___NS__first, ___NS__flatMap, ___NS__flatMapDeep, ___NS__flatMapDepth, ___NS__flatten, ___NS__flattenDeep, ___NS__flattenDepth, ___NS__flip, ___NS__floor, ___NS__flow, ___NS__flowRight, ___NS__forEach, ___NS__forEachRight, ___NS__forIn, ___NS__forInRight, ___NS__forOwn, ___NS__forOwnRight, ___NS__fromPairs, ___NS__functions, ___NS__functionsIn, ___NS__get, ___NS__groupBy, ___NS__gt, ___NS__gte, ___NS__has, ___NS__hasIn, ___NS__head, ___NS__identity, ___NS__includes, ___NS__indexOf, ___NS__initial, ___NS__inRange, ___NS__intersection, ___NS__intersectionBy, ___NS__intersectionWith, ___NS__invert, ___NS__invertBy, ___NS__invoke, ___NS__invokeMap, ___NS__isArguments, ___NS__isArray, ___NS__isArrayBuffer, ___NS__isArrayLike, ___NS__isArrayLikeObject, ___NS__isBoolean, ___NS__isBuffer, ___NS__isDate, ___NS__isElement, ___NS__isEmpty, ___NS__isEqual, ___NS__isEqualWith, ___NS__isError, ___NS__isFinite, ___NS__isFunction, ___NS__isInteger, ___NS__isLeafObject, ___NS__isLength, ___NS__isMap, ___NS__isMatch, ___NS__isMatchWith, ___NS__isNaN, ___NS__isNative, ___NS__isNil, ___NS__isNull, ___NS__isNumber, ___NS__isObject, ___NS__isObjectLike, ___NS__isPlainObject, ___NS__isRegExp, ___NS__isSafeInteger, ___NS__isSet, ___NS__isString, ___NS__isSymbol, ___NS__isTypedArray, ___NS__isUndefined, ___NS__isWeakMap, ___NS__isWeakSet, ___NS__iteratee, ___NS__join, ___NS__kebabCase, ___NS__keyBy, ___NS__keys, ___NS__keysIn, ___NS__last, ___NS__lastIndexOf, ___NS__lowerCase, ___NS__lowerFirst, ___NS__lt, ___NS__lte, ___NS__map, ___NS__mapKeys, ___NS__mapValues, ___NS__matches, ___NS__matchesProperty, ___NS__max, ___NS__maxBy, ___NS__mean, ___NS__meanBy, ___NS__memoize, ___NS__merge, ___NS__mergeWith, ___NS__method, ___NS__methodOf, ___NS__min, ___NS__minBy, ___NS__mixin, ___NS__multiply, ___NS__negate, ___NS__noop, ___NS__now, ___NS__nth, ___NS__nthArg, ___NS__omit, ___NS__omitBy, ___NS__once, ___NS__orderBy, ___NS__over, ___NS__overArgs, ___NS__overEvery, ___NS__overSome, ___NS__pad, ___NS__padEnd, ___NS__padStart, ___NS__parseInt, ___NS__partial, ___NS__partialRight, ___NS__partition, ___NS__pick, ___NS__pickBy, ___NS__property, ___NS__propertyOf, ___NS__pull, ___NS__pullAll, ___NS__pullAllBy, ___NS__pullAllWith, ___NS__pullAt, ___NS__random, ___NS__range, ___NS__rangeRight, ___NS__rearg, ___NS__reduce, ___NS__reduceRight, ___NS__reject, ___NS__remove, ___NS__repeat, ___NS__replace, ___NS__rest, ___NS__result, ___NS__reverse, ___NS__round, ___NS__sample, ___NS__sampleSize, ___NS__set, ___NS__setWith, ___NS__shuffle, ___NS__size, ___NS__slice, ___NS__snakeCase, ___NS__some, ___NS__sortBy, ___NS__sortedIndex, ___NS__sortedIndexBy, ___NS__sortedIndexOf, ___NS__sortedLastIndex, ___NS__sortedLastIndexBy, ___NS__sortedLastIndexOf, ___NS__sortedUniq, ___NS__sortedUniqBy, ___NS__split, ___NS__spread, ___NS__startCase, ___NS__startsWith, ___NS__stubArray, ___NS__stubFalse, ___NS__stubObject, ___NS__stubString, ___NS__stubTrue, ___NS__subtract, ___NS__sum, ___NS__sumBy, ___NS__tail, ___NS__take, ___NS__takeRight, ___NS__takeRightWhile, ___NS__takeWhile, ___NS__tap, ___NS__template, ___NS__templateSettings, ___NS__throttle, ___NS__thru, ___NS__times, ___NS__toArray, ___NS__toFinite, ___NS__toInteger, ___NS__toLength, ___NS__toLower, ___NS__toNumber, ___NS__toPairs, ___NS__toPairsIn, ___NS__toPath, ___NS__toPlainObject, ___NS__toSafeInteger, ___NS__toString, ___NS__toUpper, ___NS__transform, ___NS__trim, ___NS__trimEnd, ___NS__trimStart, ___NS__truncate, ___NS__unary, ___NS__unescape, ___NS__union, ___NS__unionBy, ___NS__unionWith, ___NS__uniq, ___NS__uniqBy, ___NS__uniqueId, ___NS__uniqWith, ___NS__unset, ___NS__unzip, ___NS__unzipWith, ___NS__update, ___NS__updateWith, ___NS__upperCase, ___NS__upperFirst, ___NS__values, ___NS__valuesIn, ___NS__without, ___NS__words, ___NS__wrap, ___NS__xor, ___NS__xorBy, ___NS__xorWith, ___NS__zip, ___NS__zipObject, ___NS__zipObjectDeep, ___NS__zipWith } from 'tnp-core/browser-prod';\nimport { Injectable } from '@angular/core';\n//#endregion\n\n@TaonProvider({\n className: 'TaonCmsCategoryProvider',\n})\n//#region @browser\n@Injectable()\n//#endregion\nexport class TaonCmsCategoryProvider extends TaonBaseProvider {\n\n\n\n}","//#region imports\nimport { TaonBaseMiddleware, TaonMiddleware, Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\nimport { ___NS__add, ___NS__after, ___NS__ary, ___NS__assign, ___NS__assignIn, ___NS__assignInWith, ___NS__assignWith, ___NS__at, ___NS__attempt, ___NS__before, ___NS__bind, ___NS__bindAll, ___NS__bindKey, ___NS__camelCase, ___NS__capitalize, ___NS__castArray, ___NS__ceil, ___NS__chain, ___NS__chunk, ___NS__clamp, ___NS__clone, ___NS__cloneDeep, ___NS__cloneDeepWith, ___NS__cloneWith, ___NS__compact, ___NS__concat, ___NS__cond, ___NS__conforms, ___NS__conformsTo, ___NS__constant, ___NS__countBy, ___NS__create, ___NS__curry, ___NS__curryRight, ___NS__debounce, ___NS__deburr, ___NS__defaults, ___NS__defaultsDeep, ___NS__defaultTo, ___NS__defer, ___NS__delay, ___NS__difference, ___NS__differenceBy, ___NS__differenceWith, ___NS__divide, ___NS__drop, ___NS__dropRight, ___NS__dropRightWhile, ___NS__dropWhile, ___NS__each, ___NS__eachRight, ___NS__endsWith, ___NS__entries, ___NS__entriesIn, ___NS__eq, ___NS__escape, ___NS__escapeRegExp, ___NS__every, ___NS__extend, ___NS__extendWith, ___NS__fill, ___NS__filter, ___NS__find, ___NS__findIndex, ___NS__findKey, ___NS__findLast, ___NS__findLastIndex, ___NS__findLastKey, ___NS__first, ___NS__flatMap, ___NS__flatMapDeep, ___NS__flatMapDepth, ___NS__flatten, ___NS__flattenDeep, ___NS__flattenDepth, ___NS__flip, ___NS__floor, ___NS__flow, ___NS__flowRight, ___NS__forEach, ___NS__forEachRight, ___NS__forIn, ___NS__forInRight, ___NS__forOwn, ___NS__forOwnRight, ___NS__fromPairs, ___NS__functions, ___NS__functionsIn, ___NS__get, ___NS__groupBy, ___NS__gt, ___NS__gte, ___NS__has, ___NS__hasIn, ___NS__head, ___NS__identity, ___NS__includes, ___NS__indexOf, ___NS__initial, ___NS__inRange, ___NS__intersection, ___NS__intersectionBy, ___NS__intersectionWith, ___NS__invert, ___NS__invertBy, ___NS__invoke, ___NS__invokeMap, ___NS__isArguments, ___NS__isArray, ___NS__isArrayBuffer, ___NS__isArrayLike, ___NS__isArrayLikeObject, ___NS__isBoolean, ___NS__isBuffer, ___NS__isDate, ___NS__isElement, ___NS__isEmpty, ___NS__isEqual, ___NS__isEqualWith, ___NS__isError, ___NS__isFinite, ___NS__isFunction, ___NS__isInteger, ___NS__isLeafObject, ___NS__isLength, ___NS__isMap, ___NS__isMatch, ___NS__isMatchWith, ___NS__isNaN, ___NS__isNative, ___NS__isNil, ___NS__isNull, ___NS__isNumber, ___NS__isObject, ___NS__isObjectLike, ___NS__isPlainObject, ___NS__isRegExp, ___NS__isSafeInteger, ___NS__isSet, ___NS__isString, ___NS__isSymbol, ___NS__isTypedArray, ___NS__isUndefined, ___NS__isWeakMap, ___NS__isWeakSet, ___NS__iteratee, ___NS__join, ___NS__kebabCase, ___NS__keyBy, ___NS__keys, ___NS__keysIn, ___NS__last, ___NS__lastIndexOf, ___NS__lowerCase, ___NS__lowerFirst, ___NS__lt, ___NS__lte, ___NS__map, ___NS__mapKeys, ___NS__mapValues, ___NS__matches, ___NS__matchesProperty, ___NS__max, ___NS__maxBy, ___NS__mean, ___NS__meanBy, ___NS__memoize, ___NS__merge, ___NS__mergeWith, ___NS__method, ___NS__methodOf, ___NS__min, ___NS__minBy, ___NS__mixin, ___NS__multiply, ___NS__negate, ___NS__noop, ___NS__now, ___NS__nth, ___NS__nthArg, ___NS__omit, ___NS__omitBy, ___NS__once, ___NS__orderBy, ___NS__over, ___NS__overArgs, ___NS__overEvery, ___NS__overSome, ___NS__pad, ___NS__padEnd, ___NS__padStart, ___NS__parseInt, ___NS__partial, ___NS__partialRight, ___NS__partition, ___NS__pick, ___NS__pickBy, ___NS__property, ___NS__propertyOf, ___NS__pull, ___NS__pullAll, ___NS__pullAllBy, ___NS__pullAllWith, ___NS__pullAt, ___NS__random, ___NS__range, ___NS__rangeRight, ___NS__rearg, ___NS__reduce, ___NS__reduceRight, ___NS__reject, ___NS__remove, ___NS__repeat, ___NS__replace, ___NS__rest, ___NS__result, ___NS__reverse, ___NS__round, ___NS__sample, ___NS__sampleSize, ___NS__set, ___NS__setWith, ___NS__shuffle, ___NS__size, ___NS__slice, ___NS__snakeCase, ___NS__some, ___NS__sortBy, ___NS__sortedIndex, ___NS__sortedIndexBy, ___NS__sortedIndexOf, ___NS__sortedLastIndex, ___NS__sortedLastIndexBy, ___NS__sortedLastIndexOf, ___NS__sortedUniq, ___NS__sortedUniqBy, ___NS__split, ___NS__spread, ___NS__startCase, ___NS__startsWith, ___NS__stubArray, ___NS__stubFalse, ___NS__stubObject, ___NS__stubString, ___NS__stubTrue, ___NS__subtract, ___NS__sum, ___NS__sumBy, ___NS__tail, ___NS__take, ___NS__takeRight, ___NS__takeRightWhile, ___NS__takeWhile, ___NS__tap, ___NS__template, ___NS__templateSettings, ___NS__throttle, ___NS__thru, ___NS__times, ___NS__toArray, ___NS__toFinite, ___NS__toInteger, ___NS__toLength, ___NS__toLower, ___NS__toNumber, ___NS__toPairs, ___NS__toPairsIn, ___NS__toPath, ___NS__toPlainObject, ___NS__toSafeInteger, ___NS__toString, ___NS__toUpper, ___NS__transform, ___NS__trim, ___NS__trimEnd, ___NS__trimStart, ___NS__truncate, ___NS__unary, ___NS__unescape, ___NS__union, ___NS__unionBy, ___NS__unionWith, ___NS__uniq, ___NS__uniqBy, ___NS__uniqueId, ___NS__uniqWith, ___NS__unset, ___NS__unzip, ___NS__unzipWith, ___NS__update, ___NS__updateWith, ___NS__upperCase, ___NS__upperFirst, ___NS__values, ___NS__valuesIn, ___NS__without, ___NS__words, ___NS__wrap, ___NS__xor, ___NS__xorBy, ___NS__xorWith, ___NS__zip, ___NS__zipObject, ___NS__zipObjectDeep, ___NS__zipWith } from 'tnp-core/browser-prod';\n//#endregion\n\n@TaonMiddleware({\n className: 'TaonCmsCategoryMiddleware',\n})\nexport class TaonCmsCategoryMiddleware extends TaonBaseMiddleware {}","//#region imports\nimport { TaonBaseSubscriberForEntity, TaonSubscriber } from 'taon/browser-prod';\nimport { TaonCmsCategoryEntity } from './taon-cms-category.entity';\nimport { TaonCmsCategoryProvider } from './taon-cms-category.provider';\n//#endregion\n\n@TaonSubscriber<TaonCmsCategorySubscriber>({\n className: 'TaonCmsCategorySubscriber',\n // allowedEvents: ['afterUpdate'],\n})\nexport class TaonCmsCategorySubscriber extends TaonBaseSubscriberForEntity {\n taonCmsCategoryProvider = this.injectProvider(TaonCmsCategoryProvider);\n listenTo(): typeof TaonCmsCategoryEntity {\n return TaonCmsCategoryEntity;\n }\n}","//#region imports\nimport { createContext, TaonBaseContext } from 'taon/browser-prod';\n\nimport { TaonCmsCategoryEntity } from './taon-cms-category.entity';\nimport { TaonCmsCategoryController } from './taon-cms-category.controller';\nimport { TaonCmsCategoryRepository } from './taon-cms-category.repository';\nimport { TaonCmsCategoryProvider } from './taon-cms-category.provider';\nimport { TaonCmsCategoryMiddleware } from './taon-cms-category.middleware';\nimport { TaonCmsCategorySubscriber } from './taon-cms-category.subscriber';\n//#endregion\n\nexport const TaonCmsCategoryAbstractContext = createContext(() => ({\n contextName: 'TaonCmsCategoryAbstractContext',\n abstract: true,\n contexts: { TaonBaseContext },\n entities: { TaonCmsCategoryEntity },\n controllers: { TaonCmsCategoryController },\n repositories: { TaonCmsCategoryRepository },\n providers: { TaonCmsCategoryProvider },\n middlewares: { TaonCmsCategoryMiddleware },\n subscribers: { TaonCmsCategorySubscriber },\n}));\n","//#region imports\nimport { Column, CustomColumn, PrimaryGeneratedColumn, TaonBaseAbstractEntity, TaonBaseEntity, TaonEntity, Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\nimport { ___NS__add, ___NS__after, ___NS__ary, ___NS__assign, ___NS__assignIn, ___NS__assignInWith, ___NS__assignWith, ___NS__at, ___NS__attempt, ___NS__before, ___NS__bind, ___NS__bindAll, ___NS__bindKey, ___NS__camelCase, ___NS__capitalize, ___NS__castArray, ___NS__ceil, ___NS__chain, ___NS__chunk, ___NS__clamp, ___NS__clone, ___NS__cloneDeep, ___NS__cloneDeepWith, ___NS__cloneWith, ___NS__compact, ___NS__concat, ___NS__cond, ___NS__conforms, ___NS__conformsTo, ___NS__constant, ___NS__countBy, ___NS__create, ___NS__curry, ___NS__curryRight, ___NS__debounce, ___NS__deburr, ___NS__defaults, ___NS__defaultsDeep, ___NS__defaultTo, ___NS__defer, ___NS__delay, ___NS__difference, ___NS__differenceBy, ___NS__differenceWith, ___NS__divide, ___NS__drop, ___NS__dropRight, ___NS__dropRightWhile, ___NS__dropWhile, ___NS__each, ___NS__eachRight, ___NS__endsWith, ___NS__entries, ___NS__entriesIn, ___NS__eq, ___NS__escape, ___NS__escapeRegExp, ___NS__every, ___NS__extend, ___NS__extendWith, ___NS__fill, ___NS__filter, ___NS__find, ___NS__findIndex, ___NS__findKey, ___NS__findLast, ___NS__findLastIndex, ___NS__findLastKey, ___NS__first, ___NS__flatMap, ___NS__flatMapDeep, ___NS__flatMapDepth, ___NS__flatten, ___NS__flattenDeep, ___NS__flattenDepth, ___NS__flip, ___NS__floor, ___NS__flow, ___NS__flowRight, ___NS__forEach, ___NS__forEachRight, ___NS__forIn, ___NS__forInRight, ___NS__forOwn, ___NS__forOwnRight, ___NS__fromPairs, ___NS__functions, ___NS__functionsIn, ___NS__get, ___NS__groupBy, ___NS__gt, ___NS__gte, ___NS__has, ___NS__hasIn, ___NS__head, ___NS__identity, ___NS__includes, ___NS__indexOf, ___NS__initial, ___NS__inRange, ___NS__intersection, ___NS__intersectionBy, ___NS__intersectionWith, ___NS__invert, ___NS__invertBy, ___NS__invoke, ___NS__invokeMap, ___NS__isArguments, ___NS__isArray, ___NS__isArrayBuffer, ___NS__isArrayLike, ___NS__isArrayLikeObject, ___NS__isBoolean, ___NS__isBuffer, ___NS__isDate, ___NS__isElement, ___NS__isEmpty, ___NS__isEqual, ___NS__isEqualWith, ___NS__isError, ___NS__isFinite, ___NS__isFunction, ___NS__isInteger, ___NS__isLeafObject, ___NS__isLength, ___NS__isMap, ___NS__isMatch, ___NS__isMatchWith, ___NS__isNaN, ___NS__isNative, ___NS__isNil, ___NS__isNull, ___NS__isNumber, ___NS__isObject, ___NS__isObjectLike, ___NS__isPlainObject, ___NS__isRegExp, ___NS__isSafeInteger, ___NS__isSet, ___NS__isString, ___NS__isSymbol, ___NS__isTypedArray, ___NS__isUndefined, ___NS__isWeakMap, ___NS__isWeakSet, ___NS__iteratee, ___NS__join, ___NS__kebabCase, ___NS__keyBy, ___NS__keys, ___NS__keysIn, ___NS__last, ___NS__lastIndexOf, ___NS__lowerCase, ___NS__lowerFirst, ___NS__lt, ___NS__lte, ___NS__map, ___NS__mapKeys, ___NS__mapValues, ___NS__matches, ___NS__matchesProperty, ___NS__max, ___NS__maxBy, ___NS__mean, ___NS__meanBy, ___NS__memoize, ___NS__merge, ___NS__mergeWith, ___NS__method, ___NS__methodOf, ___NS__min, ___NS__minBy, ___NS__mixin, ___NS__multiply, ___NS__negate, ___NS__noop, ___NS__now, ___NS__nth, ___NS__nthArg, ___NS__omit, ___NS__omitBy, ___NS__once, ___NS__orderBy, ___NS__over, ___NS__overArgs, ___NS__overEvery, ___NS__overSome, ___NS__pad, ___NS__padEnd, ___NS__padStart, ___NS__parseInt, ___NS__partial, ___NS__partialRight, ___NS__partition, ___NS__pick, ___NS__pickBy, ___NS__property, ___NS__propertyOf, ___NS__pull, ___NS__pullAll, ___NS__pullAllBy, ___NS__pullAllWith, ___NS__pullAt, ___NS__random, ___NS__range, ___NS__rangeRight, ___NS__rearg, ___NS__reduce, ___NS__reduceRight, ___NS__reject, ___NS__remove, ___NS__repeat, ___NS__replace, ___NS__rest, ___NS__result, ___NS__reverse, ___NS__round, ___NS__sample, ___NS__sampleSize, ___NS__set, ___NS__setWith, ___NS__shuffle, ___NS__size, ___NS__slice, ___NS__snakeCase, ___NS__some, ___NS__sortBy, ___NS__sortedIndex, ___NS__sortedIndexBy, ___NS__sortedIndexOf, ___NS__sortedLastIndex, ___NS__sortedLastIndexBy, ___NS__sortedLastIndexOf, ___NS__sortedUniq, ___NS__sortedUniqBy, ___NS__split, ___NS__spread, ___NS__startCase, ___NS__startsWith, ___NS__stubArray, ___NS__stubFalse, ___NS__stubObject, ___NS__stubString, ___NS__stubTrue, ___NS__subtract, ___NS__sum, ___NS__sumBy, ___NS__tail, ___NS__take, ___NS__takeRight, ___NS__takeRightWhile, ___NS__takeWhile, ___NS__tap, ___NS__template, ___NS__templateSettings, ___NS__throttle, ___NS__thru, ___NS__times, ___NS__toArray, ___NS__toFinite, ___NS__toInteger, ___NS__toLength, ___NS__toLower, ___NS__toNumber, ___NS__toPairs, ___NS__toPairsIn, ___NS__toPath, ___NS__toPlainObject, ___NS__toSafeInteger, ___NS__toString, ___NS__toUpper, ___NS__transform, ___NS__trim, ___NS__trimEnd, ___NS__trimStart, ___NS__truncate, ___NS__unary, ___NS__unescape, ___NS__union, ___NS__unionBy, ___NS__unionWith, ___NS__uniq, ___NS__uniqBy, ___NS__uniqueId, ___NS__uniqWith, ___NS__unset, ___NS__unzip, ___NS__unzipWith, ___NS__update, ___NS__updateWith, ___NS__upperCase, ___NS__upperFirst, ___NS__values, ___NS__valuesIn, ___NS__without, ___NS__words, ___NS__wrap, ___NS__xor, ___NS__xorBy, ___NS__xorWith, ___NS__zip, ___NS__zipObject, ___NS__zipObjectDeep, ___NS__zipWith } from 'tnp-core/browser-prod';\n\nimport { TaonCmsCommentDefaultsValues } from './taon-cms-comment.constants';\n//#endregion\n\n@TaonEntity({\n className: 'TaonCmsCommentEntity',\n createTable: true,\n})\nexport class TaonCmsCommentEntity extends TaonBaseEntity<TaonCmsCommentEntity> {\n/* */\n/* */\n \n id: number;\n\n/* */\n/* */\n \n version: number;\n\n/* */\n/* */\n \n contentId: number;\n\n/* */\n/* */\n \n parentCommentId: number | null;\n\n/* */\n/* */\n \n userId: number | null;\n\n/* */\n/* */\n \n body: string;\n\n/* */\n/* */\n \n status: string;\n\n/* */\n/* */\n \n createdAt: Date;\n\n/* */\n/* */\n \n updatedAt: Date;\n}","//#region imports\nimport { TaonBaseRepository, TaonRepository } from 'taon/browser-prod';\nimport { Raw } from 'taon-typeorm/browser-prod';\n\nimport { TaonCmsCommentEntity } from './taon-cms-comment.entity';\n//#endregion\n\n@TaonRepository({\n className: 'TaonCmsCommentRepository',\n})\nexport class TaonCmsCommentRepository extends TaonBaseRepository<TaonCmsCommentEntity> {\n entityClassResolveFn: () => typeof TaonCmsCommentEntity = () => TaonCmsCommentEntity;\n\n /**\n * TODO remove this demo example method\n */\n async countEntitesWithEvenId(): Promise<number> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n}","//#region imports\nimport { TaonController, TaonBaseCrudController, Query, GET, ClassHelpers__NS__asyncHandler, ClassHelpers__NS__ensureClassConfig, ClassHelpers__NS__ensureMethodConfig, ClassHelpers__NS__getClassConfig, ClassHelpers__NS__getClassFnFromObject, ClassHelpers__NS__getControllerConfigs, ClassHelpers__NS__getFullInternalName, ClassHelpers__NS__getMethodsNames, ClassHelpers__NS__getName, ClassHelpers__NS__getOrginalClass, ClassHelpers__NS__getUniqueKey, ClassHelpers__NS__hasParentClassWithName, ClassHelpers__NS__isContextClassObject, ClassHelpers__NS__mapFnError, ClassHelpers__NS__setName, Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\nimport { ___NS__add, ___NS__after, ___NS__ary, ___NS__assign, ___NS__assignIn, ___NS__assignInWith, ___NS__assignWith, ___NS__at, ___NS__attempt, ___NS__before, ___NS__bind, ___NS__bindAll, ___NS__bindKey, ___NS__camelCase, ___NS__capitalize, ___NS__castArray, ___NS__ceil, ___NS__chain, ___NS__chunk, ___NS__clamp, ___NS__clone, ___NS__cloneDeep, ___NS__cloneDeepWith, ___NS__cloneWith, ___NS__compact, ___NS__concat, ___NS__cond, ___NS__conforms, ___NS__conformsTo, ___NS__constant, ___NS__countBy, ___NS__create, ___NS__curry, ___NS__curryRight, ___NS__debounce, ___NS__deburr, ___NS__defaults, ___NS__defaultsDeep, ___NS__defaultTo, ___NS__defer, ___NS__delay, ___NS__difference, ___NS__differenceBy, ___NS__differenceWith, ___NS__divide, ___NS__drop, ___NS__dropRight, ___NS__dropRightWhile, ___NS__dropWhile, ___NS__each, ___NS__eachRight, ___NS__endsWith, ___NS__entries, ___NS__entriesIn, ___NS__eq, ___NS__escape, ___NS__escapeRegExp, ___NS__every, ___NS__extend, ___NS__extendWith, ___NS__fill, ___NS__filter, ___NS__find, ___NS__findIndex, ___NS__findKey, ___NS__findLast, ___NS__findLastIndex, ___NS__findLastKey, ___NS__first, ___NS__flatMap, ___NS__flatMapDeep, ___NS__flatMapDepth, ___NS__flatten, ___NS__flattenDeep, ___NS__flattenDepth, ___NS__flip, ___NS__floor, ___NS__flow, ___NS__flowRight, ___NS__forEach, ___NS__forEachRight, ___NS__forIn, ___NS__forInRight, ___NS__forOwn, ___NS__forOwnRight, ___NS__fromPairs, ___NS__functions, ___NS__functionsIn, ___NS__get, ___NS__groupBy, ___NS__gt, ___NS__gte, ___NS__has, ___NS__hasIn, ___NS__head, ___NS__identity, ___NS__includes, ___NS__indexOf, ___NS__initial, ___NS__inRange, ___NS__intersection, ___NS__intersectionBy, ___NS__intersectionWith, ___NS__invert, ___NS__invertBy, ___NS__invoke, ___NS__invokeMap, ___NS__isArguments, ___NS__isArray, ___NS__isArrayBuffer, ___NS__isArrayLike, ___NS__isArrayLikeObject, ___NS__isBoolean, ___NS__isBuffer, ___NS__isDate, ___NS__isElement, ___NS__isEmpty, ___NS__isEqual, ___NS__isEqualWith, ___NS__isError, ___NS__isFinite, ___NS__isFunction, ___NS__isInteger, ___NS__isLeafObject, ___NS__isLength, ___NS__isMap, ___NS__isMatch, ___NS__isMatchWith, ___NS__isNaN, ___NS__isNative, ___NS__isNil, ___NS__isNull, ___NS__isNumber, ___NS__isObject, ___NS__isObjectLike, ___NS__isPlainObject, ___NS__isRegExp, ___NS__isSafeInteger, ___NS__isSet, ___NS__isString, ___NS__isSymbol, ___NS__isTypedArray, ___NS__isUndefined, ___NS__isWeakMap, ___NS__isWeakSet, ___NS__iteratee, ___NS__join, ___NS__kebabCase, ___NS__keyBy, ___NS__keys, ___NS__keysIn, ___NS__last, ___NS__lastIndexOf, ___NS__lowerCase, ___NS__lowerFirst, ___NS__lt, ___NS__lte, ___NS__map, ___NS__mapKeys, ___NS__mapValues, ___NS__matches, ___NS__matchesProperty, ___NS__max, ___NS__maxBy, ___NS__mean, ___NS__meanBy, ___NS__memoize, ___NS__merge, ___NS__mergeWith, ___NS__method, ___NS__methodOf, ___NS__min, ___NS__minBy, ___NS__mixin, ___NS__multiply, ___NS__negate, ___NS__noop, ___NS__now, ___NS__nth, ___NS__nthArg, ___NS__omit, ___NS__omitBy, ___NS__once, ___NS__orderBy, ___NS__over, ___NS__overArgs, ___NS__overEvery, ___NS__overSome, ___NS__pad, ___NS__padEnd, ___NS__padStart, ___NS__parseInt, ___NS__partial, ___NS__partialRight, ___NS__partition, ___NS__pick, ___NS__pickBy, ___NS__property, ___NS__propertyOf, ___NS__pull, ___NS__pullAll, ___NS__pullAllBy, ___NS__pullAllWith, ___NS__pullAt, ___NS__random, ___NS__range, ___NS__rangeRight, ___NS__rearg, ___NS__reduce, ___NS__reduceRight, ___NS__reject, ___NS__remove, ___NS__repeat, ___NS__replace, ___NS__rest, ___NS__result, ___NS__reverse, ___NS__round, ___NS__sample, ___NS__sampleSize, ___NS__set, ___NS__setWith, ___NS__shuffle, ___NS__size, ___NS__slice, ___NS__snakeCase, ___NS__some, ___NS__sortBy, ___NS__sortedIndex, ___NS__sortedIndexBy, ___NS__sortedIndexOf, ___NS__sortedLastIndex, ___NS__sortedLastIndexBy, ___NS__sortedLastIndexOf, ___NS__sortedUniq, ___NS__sortedUniqBy, ___NS__split, ___NS__spread, ___NS__startCase, ___NS__startsWith, ___NS__stubArray, ___NS__stubFalse, ___NS__stubObject, ___NS__stubString, ___NS__stubTrue, ___NS__subtract, ___NS__sum, ___NS__sumBy, ___NS__tail, ___NS__take, ___NS__takeRight, ___NS__takeRightWhile, ___NS__takeWhile, ___NS__tap, ___NS__template, ___NS__templateSettings, ___NS__throttle, ___NS__thru, ___NS__times, ___NS__toArray, ___NS__toFinite, ___NS__toInteger, ___NS__toLength, ___NS__toLower, ___NS__toNumber, ___NS__toPairs, ___NS__toPairsIn, ___NS__toPath, ___NS__toPlainObject, ___NS__toSafeInteger, ___NS__toString, ___NS__toUpper, ___NS__transform, ___NS__trim, ___NS__trimEnd, ___NS__trimStart, ___NS__truncate, ___NS__unary, ___NS__unescape, ___NS__union, ___NS__unionBy, ___NS__unionWith, ___NS__uniq, ___NS__uniqBy, ___NS__uniqueId, ___NS__uniqWith, ___NS__unset, ___NS__unzip, ___NS__unzipWith, ___NS__update, ___NS__updateWith, ___NS__upperCase, ___NS__upperFirst, ___NS__values, ___NS__valuesIn, ___NS__without, ___NS__words, ___NS__wrap, ___NS__xor, ___NS__xorBy, ___NS__xorWith, ___NS__zip, ___NS__zipObject, ___NS__zipObjectDeep, ___NS__zipWith } from 'tnp-core/browser-prod';\n\nimport { TaonCmsCommentEntity } from './taon-cms-comment.entity';\nimport { TaonCmsCommentRepository } from './taon-cms-comment.repository';\n//#endregion\n\n@TaonController<TaonCmsCommentController>({\n className: 'TaonCmsCommentController',\n allowedMethods: []\n})\nexport class TaonCmsCommentController extends TaonBaseCrudController<TaonCmsCommentEntity> {\n entityClassResolveFn: () => typeof TaonCmsCommentEntity = () => TaonCmsCommentEntity;\n\n taonCmsCommentRepository = this.injectCustomRepo(TaonCmsCommentRepository);\n\n //#region methods & getters / hello world\n /**\n * TODO remove this demo example method\n */\n @GET()\n helloWord(@Query('yourName') yourName: string): Taon__NS__Response<string> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n //#endregion\n}","//#region imports\nimport { TaonBaseProvider, TaonProvider, Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\nimport { ___NS__add, ___NS__after, ___NS__ary, ___NS__assign, ___NS__assignIn, ___NS__assignInWith, ___NS__assignWith, ___NS__at, ___NS__attempt, ___NS__before, ___NS__bind, ___NS__bindAll, ___NS__bindKey, ___NS__camelCase, ___NS__capitalize, ___NS__castArray, ___NS__ceil, ___NS__chain, ___NS__chunk, ___NS__clamp, ___NS__clone, ___NS__cloneDeep, ___NS__cloneDeepWith, ___NS__cloneWith, ___NS__compact, ___NS__concat, ___NS__cond, ___NS__conforms, ___NS__conformsTo, ___NS__constant, ___NS__countBy, ___NS__create, ___NS__curry, ___NS__curryRight, ___NS__debounce, ___NS__deburr, ___NS__defaults, ___NS__defaultsDeep, ___NS__defaultTo, ___NS__defer, ___NS__delay, ___NS__difference, ___NS__differenceBy, ___NS__differenceWith, ___NS__divide, ___NS__drop, ___NS__dropRight, ___NS__dropRightWhile, ___NS__dropWhile, ___NS__each, ___NS__eachRight, ___NS__endsWith, ___NS__entries, ___NS__entriesIn, ___NS__eq, ___NS__escape, ___NS__escapeRegExp, ___NS__every, ___NS__extend, ___NS__extendWith, ___NS__fill, ___NS__filter, ___NS__find, ___NS__findIndex, ___NS__findKey, ___NS__findLast, ___NS__findLastIndex, ___NS__findLastKey, ___NS__first, ___NS__flatMap, ___NS__flatMapDeep, ___NS__flatMapDepth, ___NS__flatten, ___NS__flattenDeep, ___NS__flattenDepth, ___NS__flip, ___NS__floor, ___NS__flow, ___NS__flowRight, ___NS__forEach, ___NS__forEachRight, ___NS__forIn, ___NS__forInRight, ___NS__forOwn, ___NS__forOwnRight, ___NS__fromPairs, ___NS__functions, ___NS__functionsIn, ___NS__get, ___NS__groupBy, ___NS__gt, ___NS__gte, ___NS__has, ___NS__hasIn, ___NS__head, ___NS__identity, ___NS__includes, ___NS__indexOf, ___NS__initial, ___NS__inRange, ___NS__intersection, ___NS__intersectionBy, ___NS__intersectionWith, ___NS__invert, ___NS__invertBy, ___NS__invoke, ___NS__invokeMap, ___NS__isArguments, ___NS__isArray, ___NS__isArrayBuffer, ___NS__isArrayLike, ___NS__isArrayLikeObject, ___NS__isBoolean, ___NS__isBuffer, ___NS__isDate, ___NS__isElement, ___NS__isEmpty, ___NS__isEqual, ___NS__isEqualWith, ___NS__isError, ___NS__isFinite, ___NS__isFunction, ___NS__isInteger, ___NS__isLeafObject, ___NS__isLength, ___NS__isMap, ___NS__isMatch, ___NS__isMatchWith, ___NS__isNaN, ___NS__isNative, ___NS__isNil, ___NS__isNull, ___NS__isNumber, ___NS__isObject, ___NS__isObjectLike, ___NS__isPlainObject, ___NS__isRegExp, ___NS__isSafeInteger, ___NS__isSet, ___NS__isString, ___NS__isSymbol, ___NS__isTypedArray, ___NS__isUndefined, ___NS__isWeakMap, ___NS__isWeakSet, ___NS__iteratee, ___NS__join, ___NS__kebabCase, ___NS__keyBy, ___NS__keys, ___NS__keysIn, ___NS__last, ___NS__lastIndexOf, ___NS__lowerCase, ___NS__lowerFirst, ___NS__lt, ___NS__lte, ___NS__map, ___NS__mapKeys, ___NS__mapValues, ___NS__matches, ___NS__matchesProperty, ___NS__max, ___NS__maxBy, ___NS__mean, ___NS__meanBy, ___NS__memoize, ___NS__merge, ___NS__mergeWith, ___NS__method, ___NS__methodOf, ___NS__min, ___NS__minBy, ___NS__mixin, ___NS__multiply, ___NS__negate, ___NS__noop, ___NS__now, ___NS__nth, ___NS__nthArg, ___NS__omit, ___NS__omitBy, ___NS__once, ___NS__orderBy, ___NS__over, ___NS__overArgs, ___NS__overEvery, ___NS__overSome, ___NS__pad, ___NS__padEnd, ___NS__padStart, ___NS__parseInt, ___NS__partial, ___NS__partialRight, ___NS__partition, ___NS__pick, ___NS__pickBy, ___NS__property, ___NS__propertyOf, ___NS__pull, ___NS__pullAll, ___NS__pullAllBy, ___NS__pullAllWith, ___NS__pullAt, ___NS__random, ___NS__range, ___NS__rangeRight, ___NS__rearg, ___NS__reduce, ___NS__reduceRight, ___NS__reject, ___NS__remove, ___NS__repeat, ___NS__replace, ___NS__rest, ___NS__result, ___NS__reverse, ___NS__round, ___NS__sample, ___NS__sampleSize, ___NS__set, ___NS__setWith, ___NS__shuffle, ___NS__size, ___NS__slice, ___NS__snakeCase, ___NS__some, ___NS__sortBy, ___NS__sortedIndex, ___NS__sortedIndexBy, ___NS__sortedIndexOf, ___NS__sortedLastIndex, ___NS__sortedLastIndexBy, ___NS__sortedLastIndexOf, ___NS__sortedUniq, ___NS__sortedUniqBy, ___NS__split, ___NS__spread, ___NS__startCase, ___NS__startsWith, ___NS__stubArray, ___NS__stubFalse, ___NS__stubObject, ___NS__stubString, ___NS__stubTrue, ___NS__subtract, ___NS__sum, ___NS__sumBy, ___NS__tail, ___NS__take, ___NS__takeRight, ___NS__takeRightWhile, ___NS__takeWhile, ___NS__tap, ___NS__template, ___NS__templateSettings, ___NS__throttle, ___NS__thru, ___NS__times, ___NS__toArray, ___NS__toFinite, ___NS__toInteger, ___NS__toLength, ___NS__toLower, ___NS__toNumber, ___NS__toPairs, ___NS__toPairsIn, ___NS__toPath, ___NS__toPlainObject, ___NS__toSafeInteger, ___NS__toString, ___NS__toUpper, ___NS__transform, ___NS__trim, ___NS__trimEnd, ___NS__trimStart, ___NS__truncate, ___NS__unary, ___NS__unescape, ___NS__union, ___NS__unionBy, ___NS__unionWith, ___NS__uniq, ___NS__uniqBy, ___NS__uniqueId, ___NS__uniqWith, ___NS__unset, ___NS__unzip, ___NS__unzipWith, ___NS__update, ___NS__updateWith, ___NS__upperCase, ___NS__upperFirst, ___NS__values, ___NS__valuesIn, ___NS__without, ___NS__words, ___NS__wrap, ___NS__xor, ___NS__xorBy, ___NS__xorWith, ___NS__zip, ___NS__zipObject, ___NS__zipObjectDeep, ___NS__zipWith } from 'tnp-core/browser-prod';\nimport { Injectable } from '@angular/core';\n//#endregion\n\n@TaonProvider({\n className: 'TaonCmsCommentProvider',\n})\n//#region @browser\n@Injectable()\n//#endregion\nexport class TaonCmsCommentProvider extends TaonBaseProvider {\n\n\n\n}","//#region imports\nimport { TaonBaseMiddleware, TaonMiddleware, Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\nimport { ___NS__add, ___NS__after, ___NS__ary, ___NS__assign, ___NS__assignIn, ___NS__assignInWith, ___NS__assignWith, ___NS__at, ___NS__attempt, ___NS__before, ___NS__bind, ___NS__bindAll, ___NS__bindKey, ___NS__camelCase, ___NS__capitalize, ___NS__castArray, ___NS__ceil, ___NS__chain, ___NS__chunk, ___NS__clamp, ___NS__clone, ___NS__cloneDeep, ___NS__cloneDeepWith, ___NS__cloneWith, ___NS__compact, ___NS__concat, ___NS__cond, ___NS__conforms, ___NS__conformsTo, ___NS__constant, ___NS__countBy, ___NS__create, ___NS__curry, ___NS__curryRight, ___NS__debounce, ___NS__deburr, ___NS__defaults, ___NS__defaultsDeep, ___NS__defaultTo, ___NS__defer, ___NS__delay, ___NS__difference, ___NS__differenceBy, ___NS__differenceWith, ___NS__divide, ___NS__drop, ___NS__dropRight, ___NS__dropRightWhile, ___NS__dropWhile, ___NS__each, ___NS__eachRight, ___NS__endsWith, ___NS__entries, ___NS__entriesIn, ___NS__eq, ___NS__escape, ___NS__escapeRegExp, ___NS__every, ___NS__extend, ___NS__extendWith, ___NS__fill, ___NS__filter, ___NS__find, ___NS__findIndex, ___NS__findKey, ___NS__findLast, ___NS__findLastIndex, ___NS__findLastKey, ___NS__first, ___NS__flatMap, ___NS__flatMapDeep, ___NS__flatMapDepth, ___NS__flatten, ___NS__flattenDeep, ___NS__flattenDepth, ___NS__flip, ___NS__floor, ___NS__flow, ___NS__flowRight, ___NS__forEach, ___NS__forEachRight, ___NS__forIn, ___NS__forInRight, ___NS__forOwn, ___NS__forOwnRight, ___NS__fromPairs, ___NS__functions, ___NS__functionsIn, ___NS__get, ___NS__groupBy, ___NS__gt, ___NS__gte, ___NS__has, ___NS__hasIn, ___NS__head, ___NS__identity, ___NS__includes, ___NS__indexOf, ___NS__initial, ___NS__inRange, ___NS__intersection, ___NS__intersectionBy, ___NS__intersectionWith, ___NS__invert, ___NS__invertBy, ___NS__invoke, ___NS__invokeMap, ___NS__isArguments, ___NS__isArray, ___NS__isArrayBuffer, ___NS__isArrayLike, ___NS__isArrayLikeObject, ___NS__isBoolean, ___NS__isBuffer, ___NS__isDate, ___NS__isElement, ___NS__isEmpty, ___NS__isEqual, ___NS__isEqualWith, ___NS__isError, ___NS__isFinite, ___NS__isFunction, ___NS__isInteger, ___NS__isLeafObject, ___NS__isLength, ___NS__isMap, ___NS__isMatch, ___NS__isMatchWith, ___NS__isNaN, ___NS__isNative, ___NS__isNil, ___NS__isNull, ___NS__isNumber, ___NS__isObject, ___NS__isObjectLike, ___NS__isPlainObject, ___NS__isRegExp, ___NS__isSafeInteger, ___NS__isSet, ___NS__isString, ___NS__isSymbol, ___NS__isTypedArray, ___NS__isUndefined, ___NS__isWeakMap, ___NS__isWeakSet, ___NS__iteratee, ___NS__join, ___NS__kebabCase, ___NS__keyBy, ___NS__keys, ___NS__keysIn, ___NS__last, ___NS__lastIndexOf, ___NS__lowerCase, ___NS__lowerFirst, ___NS__lt, ___NS__lte, ___NS__map, ___NS__mapKeys, ___NS__mapValues, ___NS__matches, ___NS__matchesProperty, ___NS__max, ___NS__maxBy, ___NS__mean, ___NS__meanBy, ___NS__memoize, ___NS__merge, ___NS__mergeWith, ___NS__method, ___NS__methodOf, ___NS__min, ___NS__minBy, ___NS__mixin, ___NS__multiply, ___NS__negate, ___NS__noop, ___NS__now, ___NS__nth, ___NS__nthArg, ___NS__omit, ___NS__omitBy, ___NS__once, ___NS__orderBy, ___NS__over, ___NS__overArgs, ___NS__overEvery, ___NS__overSome, ___NS__pad, ___NS__padEnd, ___NS__padStart, ___NS__parseInt, ___NS__partial, ___NS__partialRight, ___NS__partition, ___NS__pick, ___NS__pickBy, ___NS__property, ___NS__propertyOf, ___NS__pull, ___NS__pullAll, ___NS__pullAllBy, ___NS__pullAllWith, ___NS__pullAt, ___NS__random, ___NS__range, ___NS__rangeRight, ___NS__rearg, ___NS__reduce, ___NS__reduceRight, ___NS__reject, ___NS__remove, ___NS__repeat, ___NS__replace, ___NS__rest, ___NS__result, ___NS__reverse, ___NS__round, ___NS__sample, ___NS__sampleSize, ___NS__set, ___NS__setWith, ___NS__shuffle, ___NS__size, ___NS__slice, ___NS__snakeCase, ___NS__some, ___NS__sortBy, ___NS__sortedIndex, ___NS__sortedIndexBy, ___NS__sortedIndexOf, ___NS__sortedLastIndex, ___NS__sortedLastIndexBy, ___NS__sortedLastIndexOf, ___NS__sortedUniq, ___NS__sortedUniqBy, ___NS__split, ___NS__spread, ___NS__startCase, ___NS__startsWith, ___NS__stubArray, ___NS__stubFalse, ___NS__stubObject, ___NS__stubString, ___NS__stubTrue, ___NS__subtract, ___NS__sum, ___NS__sumBy, ___NS__tail, ___NS__take, ___NS__takeRight, ___NS__takeRightWhile, ___NS__takeWhile, ___NS__tap, ___NS__template, ___NS__templateSettings, ___NS__throttle, ___NS__thru, ___NS__times, ___NS__toArray, ___NS__toFinite, ___NS__toInteger, ___NS__toLength, ___NS__toLower, ___NS__toNumber, ___NS__toPairs, ___NS__toPairsIn, ___NS__toPath, ___NS__toPlainObject, ___NS__toSafeInteger, ___NS__toString, ___NS__toUpper, ___NS__transform, ___NS__trim, ___NS__trimEnd, ___NS__trimStart, ___NS__truncate, ___NS__unary, ___NS__unescape, ___NS__union, ___NS__unionBy, ___NS__unionWith, ___NS__uniq, ___NS__uniqBy, ___NS__uniqueId, ___NS__uniqWith, ___NS__unset, ___NS__unzip, ___NS__unzipWith, ___NS__update, ___NS__updateWith, ___NS__upperCase, ___NS__upperFirst, ___NS__values, ___NS__valuesIn, ___NS__without, ___NS__words, ___NS__wrap, ___NS__xor, ___NS__xorBy, ___NS__xorWith, ___NS__zip, ___NS__zipObject, ___NS__zipObjectDeep, ___NS__zipWith } from 'tnp-core/browser-prod';\n//#endregion\n\n@TaonMiddleware({\n className: 'TaonCmsCommentMiddleware',\n})\nexport class TaonCmsCommentMiddleware extends TaonBaseMiddleware {}","//#region imports\nimport { TaonBaseSubscriberForEntity, TaonSubscriber } from 'taon/browser-prod';\nimport { TaonCmsCommentEntity } from './taon-cms-comment.entity';\nimport { TaonCmsCommentProvider } from './taon-cms-comment.provider';\n//#endregion\n\n@TaonSubscriber<TaonCmsCommentSubscriber>({\n className: 'TaonCmsCommentSubscriber',\n // allowedEvents: ['afterUpdate'],\n})\nexport class TaonCmsCommentSubscriber extends TaonBaseSubscriberForEntity {\n taonCmsCommentProvider = this.injectProvider(TaonCmsCommentProvider);\n listenTo(): typeof TaonCmsCommentEntity {\n return TaonCmsCommentEntity;\n }\n}","//#region imports\nimport { createContext, TaonBaseContext } from 'taon/browser-prod';\n\nimport { TaonCmsCommentEntity } from './taon-cms-comment.entity';\nimport { TaonCmsCommentController } from './taon-cms-comment.controller';\nimport { TaonCmsCommentRepository } from './taon-cms-comment.repository';\nimport { TaonCmsCommentProvider } from './taon-cms-comment.provider';\nimport { TaonCmsCommentMiddleware } from './taon-cms-comment.middleware';\nimport { TaonCmsCommentSubscriber } from './taon-cms-comment.subscriber';\n//#endregion\n\nexport const TaonCmsCommentAbstractContext = createContext(() => ({\n contextName: 'TaonCmsCommentAbstractContext',\n abstract: true,\n contexts: { TaonBaseContext },\n entities: { TaonCmsCommentEntity },\n controllers: { TaonCmsCommentController },\n repositories: { TaonCmsCommentRepository },\n providers: { TaonCmsCommentProvider },\n middlewares: { TaonCmsCommentMiddleware },\n subscribers: { TaonCmsCommentSubscriber },\n}));\n","//#region imports\nimport { Column, CustomColumn, PrimaryGeneratedColumn, TaonBaseAbstractEntity, TaonBaseEntity, TaonEntity, Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\nimport { ___NS__add, ___NS__after, ___NS__ary, ___NS__assign, ___NS__assignIn, ___NS__assignInWith, ___NS__assignWith, ___NS__at, ___NS__attempt, ___NS__before, ___NS__bind, ___NS__bindAll, ___NS__bindKey, ___NS__camelCase, ___NS__capitalize, ___NS__castArray, ___NS__ceil, ___NS__chain, ___NS__chunk, ___NS__clamp, ___NS__clone, ___NS__cloneDeep, ___NS__cloneDeepWith, ___NS__cloneWith, ___NS__compact, ___NS__concat, ___NS__cond, ___NS__conforms, ___NS__conformsTo, ___NS__constant, ___NS__countBy, ___NS__create, ___NS__curry, ___NS__curryRight, ___NS__debounce, ___NS__deburr, ___NS__defaults, ___NS__defaultsDeep, ___NS__defaultTo, ___NS__defer, ___NS__delay, ___NS__difference, ___NS__differenceBy, ___NS__differenceWith, ___NS__divide, ___NS__drop, ___NS__dropRight, ___NS__dropRightWhile, ___NS__dropWhile, ___NS__each, ___NS__eachRight, ___NS__endsWith, ___NS__entries, ___NS__entriesIn, ___NS__eq, ___NS__escape, ___NS__escapeRegExp, ___NS__every, ___NS__extend, ___NS__extendWith, ___NS__fill, ___NS__filter, ___NS__find, ___NS__findIndex, ___NS__findKey, ___NS__findLast, ___NS__findLastIndex, ___NS__findLastKey, ___NS__first, ___NS__flatMap, ___NS__flatMapDeep, ___NS__flatMapDepth, ___NS__flatten, ___NS__flattenDeep, ___NS__flattenDepth, ___NS__flip, ___NS__floor, ___NS__flow, ___NS__flowRight, ___NS__forEach, ___NS__forEachRight, ___NS__forIn, ___NS__forInRight, ___NS__forOwn, ___NS__forOwnRight, ___NS__fromPairs, ___NS__functions, ___NS__functionsIn, ___NS__get, ___NS__groupBy, ___NS__gt, ___NS__gte, ___NS__has, ___NS__hasIn, ___NS__head, ___NS__identity, ___NS__includes, ___NS__indexOf, ___NS__initial, ___NS__inRange, ___NS__intersection, ___NS__intersectionBy, ___NS__intersectionWith, ___NS__invert, ___NS__invertBy, ___NS__invoke, ___NS__invokeMap, ___NS__isArguments, ___NS__isArray, ___NS__isArrayBuffer, ___NS__isArrayLike, ___NS__isArrayLikeObject, ___NS__isBoolean, ___NS__isBuffer, ___NS__isDate, ___NS__isElement, ___NS__isEmpty, ___NS__isEqual, ___NS__isEqualWith, ___NS__isError, ___NS__isFinite, ___NS__isFunction, ___NS__isInteger, ___NS__isLeafObject, ___NS__isLength, ___NS__isMap, ___NS__isMatch, ___NS__isMatchWith, ___NS__isNaN, ___NS__isNative, ___NS__isNil, ___NS__isNull, ___NS__isNumber, ___NS__isObject, ___NS__isObjectLike, ___NS__isPlainObject, ___NS__isRegExp, ___NS__isSafeInteger, ___NS__isSet, ___NS__isString, ___NS__isSymbol, ___NS__isTypedArray, ___NS__isUndefined, ___NS__isWeakMap, ___NS__isWeakSet, ___NS__iteratee, ___NS__join, ___NS__kebabCase, ___NS__keyBy, ___NS__keys, ___NS__keysIn, ___NS__last, ___NS__lastIndexOf, ___NS__lowerCase, ___NS__lowerFirst, ___NS__lt, ___NS__lte, ___NS__map, ___NS__mapKeys, ___NS__mapValues, ___NS__matches, ___NS__matchesProperty, ___NS__max, ___NS__maxBy, ___NS__mean, ___NS__meanBy, ___NS__memoize, ___NS__merge, ___NS__mergeWith, ___NS__method, ___NS__methodOf, ___NS__min, ___NS__minBy, ___NS__mixin, ___NS__multiply, ___NS__negate, ___NS__noop, ___NS__now, ___NS__nth, ___NS__nthArg, ___NS__omit, ___NS__omitBy, ___NS__once, ___NS__orderBy, ___NS__over, ___NS__overArgs, ___NS__overEvery, ___NS__overSome, ___NS__pad, ___NS__padEnd, ___NS__padStart, ___NS__parseInt, ___NS__partial, ___NS__partialRight, ___NS__partition, ___NS__pick, ___NS__pickBy, ___NS__property, ___NS__propertyOf, ___NS__pull, ___NS__pullAll, ___NS__pullAllBy, ___NS__pullAllWith, ___NS__pullAt, ___NS__random, ___NS__range, ___NS__rangeRight, ___NS__rearg, ___NS__reduce, ___NS__reduceRight, ___NS__reject, ___NS__remove, ___NS__repeat, ___NS__replace, ___NS__rest, ___NS__result, ___NS__reverse, ___NS__round, ___NS__sample, ___NS__sampleSize, ___NS__set, ___NS__setWith, ___NS__shuffle, ___NS__size, ___NS__slice, ___NS__snakeCase, ___NS__some, ___NS__sortBy, ___NS__sortedIndex, ___NS__sortedIndexBy, ___NS__sortedIndexOf, ___NS__sortedLastIndex, ___NS__sortedLastIndexBy, ___NS__sortedLastIndexOf, ___NS__sortedUniq, ___NS__sortedUniqBy, ___NS__split, ___NS__spread, ___NS__startCase, ___NS__startsWith, ___NS__stubArray, ___NS__stubFalse, ___NS__stubObject, ___NS__stubString, ___NS__stubTrue, ___NS__subtract, ___NS__sum, ___NS__sumBy, ___NS__tail, ___NS__take, ___NS__takeRight, ___NS__takeRightWhile, ___NS__takeWhile, ___NS__tap, ___NS__template, ___NS__templateSettings, ___NS__throttle, ___NS__thru, ___NS__times, ___NS__toArray, ___NS__toFinite, ___NS__toInteger, ___NS__toLength, ___NS__toLower, ___NS__toNumber, ___NS__toPairs, ___NS__toPairsIn, ___NS__toPath, ___NS__toPlainObject, ___NS__toSafeInteger, ___NS__toString, ___NS__toUpper, ___NS__transform, ___NS__trim, ___NS__trimEnd, ___NS__trimStart, ___NS__truncate, ___NS__unary, ___NS__unescape, ___NS__union, ___NS__unionBy, ___NS__unionWith, ___NS__uniq, ___NS__uniqBy, ___NS__uniqueId, ___NS__uniqWith, ___NS__unset, ___NS__unzip, ___NS__unzipWith, ___NS__update, ___NS__updateWith, ___NS__upperCase, ___NS__upperFirst, ___NS__values, ___NS__valuesIn, ___NS__without, ___NS__words, ___NS__wrap, ___NS__xor, ___NS__xorBy, ___NS__xorWith, ___NS__zip, ___NS__zipObject, ___NS__zipObjectDeep, ___NS__zipWith } from 'tnp-core/browser-prod';\n\nimport type { TaonCmsContentSnapshot } from '../taon-cms-content/taon-cms-content.models';\n\nimport { TaonCmsContentRevisionDefaultsValues } from './taon-cms-content-revision.constants';\n//#endregion\n\n@TaonEntity({\n className: 'TaonCmsContentRevisionEntity',\n createTable: true,\n})\nexport class TaonCmsContentRevisionEntity extends TaonBaseEntity<TaonCmsContentRevisionEntity> {\n/* */\n/* */\n \n id: number;\n\n/* */\n/* */\n \n version: number;\n\n/* */\n/* */\n \n contentId: number;\n\n/* */\n/* */\n \n revisionNumber: number;\n\n/* */\n/* */\n \n title: string;\n\n/* */\n/* */\n \n body: string | null;\n\n/* */\n/* */\n \n snapshot: TaonCmsContentSnapshot | null;\n\n/* */\n/* */\n \n createdByUserId: number | null;\n\n/* */\n/* */\n \n createdAt: Date;\n}","//#region imports\nimport { TaonBaseRepository, TaonRepository } from 'taon/browser-prod';\nimport { Raw } from 'taon-typeorm/browser-prod';\nimport type { EntityManager } from 'taon-typeorm/browser-prod';\n\nimport type { TaonCmsContentEntity } from '../taon-cms-content/taon-cms-content.entity';\nimport type { TaonCmsContentSnapshot } from '../taon-cms-content/taon-cms-content.models';\nimport { contentError } from '../taon-cms-content/taon-cms-content.validation';\n\nimport { TaonCmsContentRevisionEntity } from './taon-cms-content-revision.entity';\n//#endregion\n\n@TaonRepository({\n className: 'TaonCmsContentRevisionRepository',\n})\nexport class TaonCmsContentRevisionRepository extends TaonBaseRepository<TaonCmsContentRevisionEntity> {\n entityClassResolveFn: () => typeof TaonCmsContentRevisionEntity = () =>\n TaonCmsContentRevisionEntity;\n\n async listForContent(\n contentId: number,\n manager: EntityManager,\n ): Promise<TaonCmsContentRevisionEntity[]> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n async requireRevision(\n contentId: number,\n revisionNumber: number,\n manager: EntityManager,\n ): Promise<TaonCmsContentRevisionEntity> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n async recordContent(\n content: TaonCmsContentEntity,\n snapshot: TaonCmsContentSnapshot,\n manager: EntityManager,\n ): Promise<TaonCmsContentRevisionEntity> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n}\n","//#region imports\nimport { TaonController, TaonBaseCrudController, Query, GET, ClassHelpers__NS__asyncHandler, ClassHelpers__NS__ensureClassConfig, ClassHelpers__NS__ensureMethodConfig, ClassHelpers__NS__getClassConfig, ClassHelpers__NS__getClassFnFromObject, ClassHelpers__NS__getControllerConfigs, ClassHelpers__NS__getFullInternalName, ClassHelpers__NS__getMethodsNames, ClassHelpers__NS__getName, ClassHelpers__NS__getOrginalClass, ClassHelpers__NS__getUniqueKey, ClassHelpers__NS__hasParentClassWithName, ClassHelpers__NS__isContextClassObject, ClassHelpers__NS__mapFnError, ClassHelpers__NS__setName, Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\nimport { ___NS__add, ___NS__after, ___NS__ary, ___NS__assign, ___NS__assignIn, ___NS__assignInWith, ___NS__assignWith, ___NS__at, ___NS__attempt, ___NS__before, ___NS__bind, ___NS__bindAll, ___NS__bindKey, ___NS__camelCase, ___NS__capitalize, ___NS__castArray, ___NS__ceil, ___NS__chain, ___NS__chunk, ___NS__clamp, ___NS__clone, ___NS__cloneDeep, ___NS__cloneDeepWith, ___NS__cloneWith, ___NS__compact, ___NS__concat, ___NS__cond, ___NS__conforms, ___NS__conformsTo, ___NS__constant, ___NS__countBy, ___NS__create, ___NS__curry, ___NS__curryRight, ___NS__debounce, ___NS__deburr, ___NS__defaults, ___NS__defaultsDeep, ___NS__defaultTo, ___NS__defer, ___NS__delay, ___NS__difference, ___NS__differenceBy, ___NS__differenceWith, ___NS__divide, ___NS__drop, ___NS__dropRight, ___NS__dropRightWhile, ___NS__dropWhile, ___NS__each, ___NS__eachRight, ___NS__endsWith, ___NS__entries, ___NS__entriesIn, ___NS__eq, ___NS__escape, ___NS__escapeRegExp, ___NS__every, ___NS__extend, ___NS__extendWith, ___NS__fill, ___NS__filter, ___NS__find, ___NS__findIndex, ___NS__findKey, ___NS__findLast, ___NS__findLastIndex, ___NS__findLastKey, ___NS__first, ___NS__flatMap, ___NS__flatMapDeep, ___NS__flatMapDepth, ___NS__flatten, ___NS__flattenDeep, ___NS__flattenDepth, ___NS__flip, ___NS__floor, ___NS__flow, ___NS__flowRight, ___NS__forEach, ___NS__forEachRight, ___NS__forIn, ___NS__forInRight, ___NS__forOwn, ___NS__forOwnRight, ___NS__fromPairs, ___NS__functions, ___NS__functionsIn, ___NS__get, ___NS__groupBy, ___NS__gt, ___NS__gte, ___NS__has, ___NS__hasIn, ___NS__head, ___NS__identity, ___NS__includes, ___NS__indexOf, ___NS__initial, ___NS__inRange, ___NS__intersection, ___NS__intersectionBy, ___NS__intersectionWith, ___NS__invert, ___NS__invertBy, ___NS__invoke, ___NS__invokeMap, ___NS__isArguments, ___NS__isArray, ___NS__isArrayBuffer, ___NS__isArrayLike, ___NS__isArrayLikeObject, ___NS__isBoolean, ___NS__isBuffer, ___NS__isDate, ___NS__isElement, ___NS__isEmpty, ___NS__isEqual, ___NS__isEqualWith, ___NS__isError, ___NS__isFinite, ___NS__isFunction, ___NS__isInteger, ___NS__isLeafObject, ___NS__isLength, ___NS__isMap, ___NS__isMatch, ___NS__isMatchWith, ___NS__isNaN, ___NS__isNative, ___NS__isNil, ___NS__isNull, ___NS__isNumber, ___NS__isObject, ___NS__isObjectLike, ___NS__isPlainObject, ___NS__isRegExp, ___NS__isSafeInteger, ___NS__isSet, ___NS__isString, ___NS__isSymbol, ___NS__isTypedArray, ___NS__isUndefined, ___NS__isWeakMap, ___NS__isWeakSet, ___NS__iteratee, ___NS__join, ___NS__kebabCase, ___NS__keyBy, ___NS__keys, ___NS__keysIn, ___NS__last, ___NS__lastIndexOf, ___NS__lowerCase, ___NS__lowerFirst, ___NS__lt, ___NS__lte, ___NS__map, ___NS__mapKeys, ___NS__mapValues, ___NS__matches, ___NS__matchesProperty, ___NS__max, ___NS__maxBy, ___NS__mean, ___NS__meanBy, ___NS__memoize, ___NS__merge, ___NS__mergeWith, ___NS__method, ___NS__methodOf, ___NS__min, ___NS__minBy, ___NS__mixin, ___NS__multiply, ___NS__negate, ___NS__noop, ___NS__now, ___NS__nth, ___NS__nthArg, ___NS__omit, ___NS__omitBy, ___NS__once, ___NS__orderBy, ___NS__over, ___NS__overArgs, ___NS__overEvery, ___NS__overSome, ___NS__pad, ___NS__padEnd, ___NS__padStart, ___NS__parseInt, ___NS__partial, ___NS__partialRight, ___NS__partition, ___NS__pick, ___NS__pickBy, ___NS__property, ___NS__propertyOf, ___NS__pull, ___NS__pullAll, ___NS__pullAllBy, ___NS__pullAllWith, ___NS__pullAt, ___NS__random, ___NS__range, ___NS__rangeRight, ___NS__rearg, ___NS__reduce, ___NS__reduceRight, ___NS__reject, ___NS__remove, ___NS__repeat, ___NS__replace, ___NS__rest, ___NS__result, ___NS__reverse, ___NS__round, ___NS__sample, ___NS__sampleSize, ___NS__set, ___NS__setWith, ___NS__shuffle, ___NS__size, ___NS__slice, ___NS__snakeCase, ___NS__some, ___NS__sortBy, ___NS__sortedIndex, ___NS__sortedIndexBy, ___NS__sortedIndexOf, ___NS__sortedLastIndex, ___NS__sortedLastIndexBy, ___NS__sortedLastIndexOf, ___NS__sortedUniq, ___NS__sortedUniqBy, ___NS__split, ___NS__spread, ___NS__startCase, ___NS__startsWith, ___NS__stubArray, ___NS__stubFalse, ___NS__stubObject, ___NS__stubString, ___NS__stubTrue, ___NS__subtract, ___NS__sum, ___NS__sumBy, ___NS__tail, ___NS__take, ___NS__takeRight, ___NS__takeRightWhile, ___NS__takeWhile, ___NS__tap, ___NS__template, ___NS__templateSettings, ___NS__throttle, ___NS__thru, ___NS__times, ___NS__toArray, ___NS__toFinite, ___NS__toInteger, ___NS__toLength, ___NS__toLower, ___NS__toNumber, ___NS__toPairs, ___NS__toPairsIn, ___NS__toPath, ___NS__toPlainObject, ___NS__toSafeInteger, ___NS__toString, ___NS__toUpper, ___NS__transform, ___NS__trim, ___NS__trimEnd, ___NS__trimStart, ___NS__truncate, ___NS__unary, ___NS__unescape, ___NS__union, ___NS__unionBy, ___NS__unionWith, ___NS__uniq, ___NS__uniqBy, ___NS__uniqueId, ___NS__uniqWith, ___NS__unset, ___NS__unzip, ___NS__unzipWith, ___NS__update, ___NS__updateWith, ___NS__upperCase, ___NS__upperFirst, ___NS__values, ___NS__valuesIn, ___NS__without, ___NS__words, ___NS__wrap, ___NS__xor, ___NS__xorBy, ___NS__xorWith, ___NS__zip, ___NS__zipObject, ___NS__zipObjectDeep, ___NS__zipWith } from 'tnp-core/browser-prod';\n\nimport { TaonCmsContentRevisionEntity } from './taon-cms-content-revision.entity';\nimport { TaonCmsContentRevisionRepository } from './taon-cms-content-revision.repository';\n//#endregion\n\n@TaonController<TaonCmsContentRevisionController>({\n className: 'TaonCmsContentRevisionController',\n allowedMethods: [],\n})\nexport class TaonCmsContentRevisionController extends TaonBaseCrudController<TaonCmsContentRevisionEntity> {\n entityClassResolveFn: () => typeof TaonCmsContentRevisionEntity = () =>\n TaonCmsContentRevisionEntity;\n\n taonCmsContentRevisionRepository = this.injectCustomRepo(\n TaonCmsContentRevisionRepository,\n );\n}","//#region imports\nimport { TaonBaseProvider, TaonProvider, Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\nimport { ___NS__add, ___NS__after, ___NS__ary, ___NS__assign, ___NS__assignIn, ___NS__assignInWith, ___NS__assignWith, ___NS__at, ___NS__attempt, ___NS__before, ___NS__bind, ___NS__bindAll, ___NS__bindKey, ___NS__camelCase, ___NS__capitalize, ___NS__castArray, ___NS__ceil, ___NS__chain, ___NS__chunk, ___NS__clamp, ___NS__clone, ___NS__cloneDeep, ___NS__cloneDeepWith, ___NS__cloneWith, ___NS__compact, ___NS__concat, ___NS__cond, ___NS__conforms, ___NS__conformsTo, ___NS__constant, ___NS__countBy, ___NS__create, ___NS__curry, ___NS__curryRight, ___NS__debounce, ___NS__deburr, ___NS__defaults, ___NS__defaultsDeep, ___NS__defaultTo, ___NS__defer, ___NS__delay, ___NS__difference, ___NS__differenceBy, ___NS__differenceWith, ___NS__divide, ___NS__drop, ___NS__dropRight, ___NS__dropRightWhile, ___NS__dropWhile, ___NS__each, ___NS__eachRight, ___NS__endsWith, ___NS__entries, ___NS__entriesIn, ___NS__eq, ___NS__escape, ___NS__escapeRegExp, ___NS__every, ___NS__extend, ___NS__extendWith, ___NS__fill, ___NS__filter, ___NS__find, ___NS__findIndex, ___NS__findKey, ___NS__findLast, ___NS__findLastIndex, ___NS__findLastKey, ___NS__first, ___NS__flatMap, ___NS__flatMapDeep, ___NS__flatMapDepth, ___NS__flatten, ___NS__flattenDeep, ___NS__flattenDepth, ___NS__flip, ___NS__floor, ___NS__flow, ___NS__flowRight, ___NS__forEach, ___NS__forEachRight, ___NS__forIn, ___NS__forInRight, ___NS__forOwn, ___NS__forOwnRight, ___NS__fromPairs, ___NS__functions, ___NS__functionsIn, ___NS__get, ___NS__groupBy, ___NS__gt, ___NS__gte, ___NS__has, ___NS__hasIn, ___NS__head, ___NS__identity, ___NS__includes, ___NS__indexOf, ___NS__initial, ___NS__inRange, ___NS__intersection, ___NS__intersectionBy, ___NS__intersectionWith, ___NS__invert, ___NS__invertBy, ___NS__invoke, ___NS__invokeMap, ___NS__isArguments, ___NS__isArray, ___NS__isArrayBuffer, ___NS__isArrayLike, ___NS__isArrayLikeObject, ___NS__isBoolean, ___NS__isBuffer, ___NS__isDate, ___NS__isElement, ___NS__isEmpty, ___NS__isEqual, ___NS__isEqualWith, ___NS__isError, ___NS__isFinite, ___NS__isFunction, ___NS__isInteger, ___NS__isLeafObject, ___NS__isLength, ___NS__isMap, ___NS__isMatch, ___NS__isMatchWith, ___NS__isNaN, ___NS__isNative, ___NS__isNil, ___NS__isNull, ___NS__isNumber, ___NS__isObject, ___NS__isObjectLike, ___NS__isPlainObject, ___NS__isRegExp, ___NS__isSafeInteger, ___NS__isSet, ___NS__isString, ___NS__isSymbol, ___NS__isTypedArray, ___NS__isUndefined, ___NS__isWeakMap, ___NS__isWeakSet, ___NS__iteratee, ___NS__join, ___NS__kebabCase, ___NS__keyBy, ___NS__keys, ___NS__keysIn, ___NS__last, ___NS__lastIndexOf, ___NS__lowerCase, ___NS__lowerFirst, ___NS__lt, ___NS__lte, ___NS__map, ___NS__mapKeys, ___NS__mapValues, ___NS__matches, ___NS__matchesProperty, ___NS__max, ___NS__maxBy, ___NS__mean, ___NS__meanBy, ___NS__memoize, ___NS__merge, ___NS__mergeWith, ___NS__method, ___NS__methodOf, ___NS__min, ___NS__minBy, ___NS__mixin, ___NS__multiply, ___NS__negate, ___NS__noop, ___NS__now, ___NS__nth, ___NS__nthArg, ___NS__omit, ___NS__omitBy, ___NS__once, ___NS__orderBy, ___NS__over, ___NS__overArgs, ___NS__overEvery, ___NS__overSome, ___NS__pad, ___NS__padEnd, ___NS__padStart, ___NS__parseInt, ___NS__partial, ___NS__partialRight, ___NS__partition, ___NS__pick, ___NS__pickBy, ___NS__property, ___NS__propertyOf, ___NS__pull, ___NS__pullAll, ___NS__pullAllBy, ___NS__pullAllWith, ___NS__pullAt, ___NS__random, ___NS__range, ___NS__rangeRight, ___NS__rearg, ___NS__reduce, ___NS__reduceRight, ___NS__reject, ___NS__remove, ___NS__repeat, ___NS__replace, ___NS__rest, ___NS__result, ___NS__reverse, ___NS__round, ___NS__sample, ___NS__sampleSize, ___NS__set, ___NS__setWith, ___NS__shuffle, ___NS__size, ___NS__slice, ___NS__snakeCase, ___NS__some, ___NS__sortBy, ___NS__sortedIndex, ___NS__sortedIndexBy, ___NS__sortedIndexOf, ___NS__sortedLastIndex, ___NS__sortedLastIndexBy, ___NS__sortedLastIndexOf, ___NS__sortedUniq, ___NS__sortedUniqBy, ___NS__split, ___NS__spread, ___NS__startCase, ___NS__startsWith, ___NS__stubArray, ___NS__stubFalse, ___NS__stubObject, ___NS__stubString, ___NS__stubTrue, ___NS__subtract, ___NS__sum, ___NS__sumBy, ___NS__tail, ___NS__take, ___NS__takeRight, ___NS__takeRightWhile, ___NS__takeWhile, ___NS__tap, ___NS__template, ___NS__templateSettings, ___NS__throttle, ___NS__thru, ___NS__times, ___NS__toArray, ___NS__toFinite, ___NS__toInteger, ___NS__toLength, ___NS__toLower, ___NS__toNumber, ___NS__toPairs, ___NS__toPairsIn, ___NS__toPath, ___NS__toPlainObject, ___NS__toSafeInteger, ___NS__toString, ___NS__toUpper, ___NS__transform, ___NS__trim, ___NS__trimEnd, ___NS__trimStart, ___NS__truncate, ___NS__unary, ___NS__unescape, ___NS__union, ___NS__unionBy, ___NS__unionWith, ___NS__uniq, ___NS__uniqBy, ___NS__uniqueId, ___NS__uniqWith, ___NS__unset, ___NS__unzip, ___NS__unzipWith, ___NS__update, ___NS__updateWith, ___NS__upperCase, ___NS__upperFirst, ___NS__values, ___NS__valuesIn, ___NS__without, ___NS__words, ___NS__wrap, ___NS__xor, ___NS__xorBy, ___NS__xorWith, ___NS__zip, ___NS__zipObject, ___NS__zipObjectDeep, ___NS__zipWith } from 'tnp-core/browser-prod';\nimport { Injectable } from '@angular/core';\n//#endregion\n\n@TaonProvider({\n className: 'TaonCmsContentRevisionProvider',\n})\n//#region @browser\n@Injectable()\n//#endregion\nexport class TaonCmsContentRevisionProvider extends TaonBaseProvider {\n\n\n\n}","//#region imports\nimport { TaonBaseMiddleware, TaonMiddleware, Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\nimport { ___NS__add, ___NS__after, ___NS__ary, ___NS__assign, ___NS__assignIn, ___NS__assignInWith, ___NS__assignWith, ___NS__at, ___NS__attempt, ___NS__before, ___NS__bind, ___NS__bindAll, ___NS__bindKey, ___NS__camelCase, ___NS__capitalize, ___NS__castArray, ___NS__ceil, ___NS__chain, ___NS__chunk, ___NS__clamp, ___NS__clone, ___NS__cloneDeep, ___NS__cloneDeepWith, ___NS__cloneWith, ___NS__compact, ___NS__concat, ___NS__cond, ___NS__conforms, ___NS__conformsTo, ___NS__constant, ___NS__countBy, ___NS__create, ___NS__curry, ___NS__curryRight, ___NS__debounce, ___NS__deburr, ___NS__defaults, ___NS__defaultsDeep, ___NS__defaultTo, ___NS__defer, ___NS__delay, ___NS__difference, ___NS__differenceBy, ___NS__differenceWith, ___NS__divide, ___NS__drop, ___NS__dropRight, ___NS__dropRightWhile, ___NS__dropWhile, ___NS__each, ___NS__eachRight, ___NS__endsWith, ___NS__entries, ___NS__entriesIn, ___NS__eq, ___NS__escape, ___NS__escapeRegExp, ___NS__every, ___NS__extend, ___NS__extendWith, ___NS__fill, ___NS__filter, ___NS__find, ___NS__findIndex, ___NS__findKey, ___NS__findLast, ___NS__findLastIndex, ___NS__findLastKey, ___NS__first, ___NS__flatMap, ___NS__flatMapDeep, ___NS__flatMapDepth, ___NS__flatten, ___NS__flattenDeep, ___NS__flattenDepth, ___NS__flip, ___NS__floor, ___NS__flow, ___NS__flowRight, ___NS__forEach, ___NS__forEachRight, ___NS__forIn, ___NS__forInRight, ___NS__forOwn, ___NS__forOwnRight, ___NS__fromPairs, ___NS__functions, ___NS__functionsIn, ___NS__get, ___NS__groupBy, ___NS__gt, ___NS__gte, ___NS__has, ___NS__hasIn, ___NS__head, ___NS__identity, ___NS__includes, ___NS__indexOf, ___NS__initial, ___NS__inRange, ___NS__intersection, ___NS__intersectionBy, ___NS__intersectionWith, ___NS__invert, ___NS__invertBy, ___NS__invoke, ___NS__invokeMap, ___NS__isArguments, ___NS__isArray, ___NS__isArrayBuffer, ___NS__isArrayLike, ___NS__isArrayLikeObject, ___NS__isBoolean, ___NS__isBuffer, ___NS__isDate, ___NS__isElement, ___NS__isEmpty, ___NS__isEqual, ___NS__isEqualWith, ___NS__isError, ___NS__isFinite, ___NS__isFunction, ___NS__isInteger, ___NS__isLeafObject, ___NS__isLength, ___NS__isMap, ___NS__isMatch, ___NS__isMatchWith, ___NS__isNaN, ___NS__isNative, ___NS__isNil, ___NS__isNull, ___NS__isNumber, ___NS__isObject, ___NS__isObjectLike, ___NS__isPlainObject, ___NS__isRegExp, ___NS__isSafeInteger, ___NS__isSet, ___NS__isString, ___NS__isSymbol, ___NS__isTypedArray, ___NS__isUndefined, ___NS__isWeakMap, ___NS__isWeakSet, ___NS__iteratee, ___NS__join, ___NS__kebabCase, ___NS__keyBy, ___NS__keys, ___NS__keysIn, ___NS__last, ___NS__lastIndexOf, ___NS__lowerCase, ___NS__lowerFirst, ___NS__lt, ___NS__lte, ___NS__map, ___NS__mapKeys, ___NS__mapValues, ___NS__matches, ___NS__matchesProperty, ___NS__max, ___NS__maxBy, ___NS__mean, ___NS__meanBy, ___NS__memoize, ___NS__merge, ___NS__mergeWith, ___NS__method, ___NS__methodOf, ___NS__min, ___NS__minBy, ___NS__mixin, ___NS__multiply, ___NS__negate, ___NS__noop, ___NS__now, ___NS__nth, ___NS__nthArg, ___NS__omit, ___NS__omitBy, ___NS__once, ___NS__orderBy, ___NS__over, ___NS__overArgs, ___NS__overEvery, ___NS__overSome, ___NS__pad, ___NS__padEnd, ___NS__padStart, ___NS__parseInt, ___NS__partial, ___NS__partialRight, ___NS__partition, ___NS__pick, ___NS__pickBy, ___NS__property, ___NS__propertyOf, ___NS__pull, ___NS__pullAll, ___NS__pullAllBy, ___NS__pullAllWith, ___NS__pullAt, ___NS__random, ___NS__range, ___NS__rangeRight, ___NS__rearg, ___NS__reduce, ___NS__reduceRight, ___NS__reject, ___NS__remove, ___NS__repeat, ___NS__replace, ___NS__rest, ___NS__result, ___NS__reverse, ___NS__round, ___NS__sample, ___NS__sampleSize, ___NS__set, ___NS__setWith, ___NS__shuffle, ___NS__size, ___NS__slice, ___NS__snakeCase, ___NS__some, ___NS__sortBy, ___NS__sortedIndex, ___NS__sortedIndexBy, ___NS__sortedIndexOf, ___NS__sortedLastIndex, ___NS__sortedLastIndexBy, ___NS__sortedLastIndexOf, ___NS__sortedUniq, ___NS__sortedUniqBy, ___NS__split, ___NS__spread, ___NS__startCase, ___NS__startsWith, ___NS__stubArray, ___NS__stubFalse, ___NS__stubObject, ___NS__stubString, ___NS__stubTrue, ___NS__subtract, ___NS__sum, ___NS__sumBy, ___NS__tail, ___NS__take, ___NS__takeRight, ___NS__takeRightWhile, ___NS__takeWhile, ___NS__tap, ___NS__template, ___NS__templateSettings, ___NS__throttle, ___NS__thru, ___NS__times, ___NS__toArray, ___NS__toFinite, ___NS__toInteger, ___NS__toLength, ___NS__toLower, ___NS__toNumber, ___NS__toPairs, ___NS__toPairsIn, ___NS__toPath, ___NS__toPlainObject, ___NS__toSafeInteger, ___NS__toString, ___NS__toUpper, ___NS__transform, ___NS__trim, ___NS__trimEnd, ___NS__trimStart, ___NS__truncate, ___NS__unary, ___NS__unescape, ___NS__union, ___NS__unionBy, ___NS__unionWith, ___NS__uniq, ___NS__uniqBy, ___NS__uniqueId, ___NS__uniqWith, ___NS__unset, ___NS__unzip, ___NS__unzipWith, ___NS__update, ___NS__updateWith, ___NS__upperCase, ___NS__upperFirst, ___NS__values, ___NS__valuesIn, ___NS__without, ___NS__words, ___NS__wrap, ___NS__xor, ___NS__xorBy, ___NS__xorWith, ___NS__zip, ___NS__zipObject, ___NS__zipObjectDeep, ___NS__zipWith } from 'tnp-core/browser-prod';\n//#endregion\n\n@TaonMiddleware({\n className: 'TaonCmsContentRevisionMiddleware',\n})\nexport class TaonCmsContentRevisionMiddleware extends TaonBaseMiddleware {}","//#region imports\nimport { TaonBaseSubscriberForEntity, TaonSubscriber } from 'taon/browser-prod';\nimport { TaonCmsContentRevisionEntity } from './taon-cms-content-revision.entity';\nimport { TaonCmsContentRevisionProvider } from './taon-cms-content-revision.provider';\n//#endregion\n\n@TaonSubscriber<TaonCmsContentRevisionSubscriber>({\n className: 'TaonCmsContentRevisionSubscriber',\n // allowedEvents: ['afterUpdate'],\n})\nexport class TaonCmsContentRevisionSubscriber extends TaonBaseSubscriberForEntity {\n taonCmsContentRevisionProvider = this.injectProvider(TaonCmsContentRevisionProvider);\n listenTo(): typeof TaonCmsContentRevisionEntity {\n return TaonCmsContentRevisionEntity;\n }\n}","//#region imports\nimport { createContext, TaonBaseContext } from 'taon/browser-prod';\n\nimport { TaonCmsContentRevisionEntity } from './taon-cms-content-revision.entity';\nimport { TaonCmsContentRevisionController } from './taon-cms-content-revision.controller';\nimport { TaonCmsContentRevisionRepository } from './taon-cms-content-revision.repository';\nimport { TaonCmsContentRevisionProvider } from './taon-cms-content-revision.provider';\nimport { TaonCmsContentRevisionMiddleware } from './taon-cms-content-revision.middleware';\nimport { TaonCmsContentRevisionSubscriber } from './taon-cms-content-revision.subscriber';\n//#endregion\n\nexport const TaonCmsContentRevisionAbstractContext = createContext(() => ({\n contextName: 'TaonCmsContentRevisionAbstractContext',\n abstract: true,\n contexts: { TaonBaseContext },\n entities: { TaonCmsContentRevisionEntity },\n controllers: { TaonCmsContentRevisionController },\n repositories: { TaonCmsContentRevisionRepository },\n providers: { TaonCmsContentRevisionProvider },\n middlewares: { TaonCmsContentRevisionMiddleware },\n subscribers: { TaonCmsContentRevisionSubscriber },\n}));\n","//#region imports\nimport { Column, CustomColumn, TaonBaseAbstractEntity, TaonEntity, Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\nimport { ___NS__add, ___NS__after, ___NS__ary, ___NS__assign, ___NS__assignIn, ___NS__assignInWith, ___NS__assignWith, ___NS__at, ___NS__attempt, ___NS__before, ___NS__bind, ___NS__bindAll, ___NS__bindKey, ___NS__camelCase, ___NS__capitalize, ___NS__castArray, ___NS__ceil, ___NS__chain, ___NS__chunk, ___NS__clamp, ___NS__clone, ___NS__cloneDeep, ___NS__cloneDeepWith, ___NS__cloneWith, ___NS__compact, ___NS__concat, ___NS__cond, ___NS__conforms, ___NS__conformsTo, ___NS__constant, ___NS__countBy, ___NS__create, ___NS__curry, ___NS__curryRight, ___NS__debounce, ___NS__deburr, ___NS__defaults, ___NS__defaultsDeep, ___NS__defaultTo, ___NS__defer, ___NS__delay, ___NS__difference, ___NS__differenceBy, ___NS__differenceWith, ___NS__divide, ___NS__drop, ___NS__dropRight, ___NS__dropRightWhile, ___NS__dropWhile, ___NS__each, ___NS__eachRight, ___NS__endsWith, ___NS__entries, ___NS__entriesIn, ___NS__eq, ___NS__escape, ___NS__escapeRegExp, ___NS__every, ___NS__extend, ___NS__extendWith, ___NS__fill, ___NS__filter, ___NS__find, ___NS__findIndex, ___NS__findKey, ___NS__findLast, ___NS__findLastIndex, ___NS__findLastKey, ___NS__first, ___NS__flatMap, ___NS__flatMapDeep, ___NS__flatMapDepth, ___NS__flatten, ___NS__flattenDeep, ___NS__flattenDepth, ___NS__flip, ___NS__floor, ___NS__flow, ___NS__flowRight, ___NS__forEach, ___NS__forEachRight, ___NS__forIn, ___NS__forInRight, ___NS__forOwn, ___NS__forOwnRight, ___NS__fromPairs, ___NS__functions, ___NS__functionsIn, ___NS__get, ___NS__groupBy, ___NS__gt, ___NS__gte, ___NS__has, ___NS__hasIn, ___NS__head, ___NS__identity, ___NS__includes, ___NS__indexOf, ___NS__initial, ___NS__inRange, ___NS__intersection, ___NS__intersectionBy, ___NS__intersectionWith, ___NS__invert, ___NS__invertBy, ___NS__invoke, ___NS__invokeMap, ___NS__isArguments, ___NS__isArray, ___NS__isArrayBuffer, ___NS__isArrayLike, ___NS__isArrayLikeObject, ___NS__isBoolean, ___NS__isBuffer, ___NS__isDate, ___NS__isElement, ___NS__isEmpty, ___NS__isEqual, ___NS__isEqualWith, ___NS__isError, ___NS__isFinite, ___NS__isFunction, ___NS__isInteger, ___NS__isLeafObject, ___NS__isLength, ___NS__isMap, ___NS__isMatch, ___NS__isMatchWith, ___NS__isNaN, ___NS__isNative, ___NS__isNil, ___NS__isNull, ___NS__isNumber, ___NS__isObject, ___NS__isObjectLike, ___NS__isPlainObject, ___NS__isRegExp, ___NS__isSafeInteger, ___NS__isSet, ___NS__isString, ___NS__isSymbol, ___NS__isTypedArray, ___NS__isUndefined, ___NS__isWeakMap, ___NS__isWeakSet, ___NS__iteratee, ___NS__join, ___NS__kebabCase, ___NS__keyBy, ___NS__keys, ___NS__keysIn, ___NS__last, ___NS__lastIndexOf, ___NS__lowerCase, ___NS__lowerFirst, ___NS__lt, ___NS__lte, ___NS__map, ___NS__mapKeys, ___NS__mapValues, ___NS__matches, ___NS__matchesProperty, ___NS__max, ___NS__maxBy, ___NS__mean, ___NS__meanBy, ___NS__memoize, ___NS__merge, ___NS__mergeWith, ___NS__method, ___NS__methodOf, ___NS__min, ___NS__minBy, ___NS__mixin, ___NS__multiply, ___NS__negate, ___NS__noop, ___NS__now, ___NS__nth, ___NS__nthArg, ___NS__omit, ___NS__omitBy, ___NS__once, ___NS__orderBy, ___NS__over, ___NS__overArgs, ___NS__overEvery, ___NS__overSome, ___NS__pad, ___NS__padEnd, ___NS__padStart, ___NS__parseInt, ___NS__partial, ___NS__partialRight, ___NS__partition, ___NS__pick, ___NS__pickBy, ___NS__property, ___NS__propertyOf, ___NS__pull, ___NS__pullAll, ___NS__pullAllBy, ___NS__pullAllWith, ___NS__pullAt, ___NS__random, ___NS__range, ___NS__rangeRight, ___NS__rearg, ___NS__reduce, ___NS__reduceRight, ___NS__reject, ___NS__remove, ___NS__repeat, ___NS__replace, ___NS__rest, ___NS__result, ___NS__reverse, ___NS__round, ___NS__sample, ___NS__sampleSize, ___NS__set, ___NS__setWith, ___NS__shuffle, ___NS__size, ___NS__slice, ___NS__snakeCase, ___NS__some, ___NS__sortBy, ___NS__sortedIndex, ___NS__sortedIndexBy, ___NS__sortedIndexOf, ___NS__sortedLastIndex, ___NS__sortedLastIndexBy, ___NS__sortedLastIndexOf, ___NS__sortedUniq, ___NS__sortedUniqBy, ___NS__split, ___NS__spread, ___NS__startCase, ___NS__startsWith, ___NS__stubArray, ___NS__stubFalse, ___NS__stubObject, ___NS__stubString, ___NS__stubTrue, ___NS__subtract, ___NS__sum, ___NS__sumBy, ___NS__tail, ___NS__take, ___NS__takeRight, ___NS__takeRightWhile, ___NS__takeWhile, ___NS__tap, ___NS__template, ___NS__templateSettings, ___NS__throttle, ___NS__thru, ___NS__times, ___NS__toArray, ___NS__toFinite, ___NS__toInteger, ___NS__toLength, ___NS__toLower, ___NS__toNumber, ___NS__toPairs, ___NS__toPairsIn, ___NS__toPath, ___NS__toPlainObject, ___NS__toSafeInteger, ___NS__toString, ___NS__toUpper, ___NS__transform, ___NS__trim, ___NS__trimEnd, ___NS__trimStart, ___NS__truncate, ___NS__unary, ___NS__unescape, ___NS__union, ___NS__unionBy, ___NS__unionWith, ___NS__uniq, ___NS__uniqBy, ___NS__uniqueId, ___NS__uniqWith, ___NS__unset, ___NS__unzip, ___NS__unzipWith, ___NS__update, ___NS__updateWith, ___NS__upperCase, ___NS__upperFirst, ___NS__values, ___NS__valuesIn, ___NS__without, ___NS__words, ___NS__wrap, ___NS__xor, ___NS__xorBy, ___NS__xorWith, ___NS__zip, ___NS__zipObject, ___NS__zipObjectDeep, ___NS__zipWith } from 'tnp-core/browser-prod';\n\nimport { TaonCmsContentTagDefaultsValues } from './taon-cms-content-tag.constants';\n//#endregion\n\n@TaonEntity({\n className: 'TaonCmsContentTagEntity',\n createTable: true,\n})\nexport class TaonCmsContentTagEntity extends TaonBaseAbstractEntity<TaonCmsContentTagEntity> {\n/* */\n/* */\n \n contentId: number;\n\n/* */\n/* */\n \n tagId: number;\n}","//#region imports\nimport { TaonBaseRepository, TaonRepository } from 'taon/browser-prod';\nimport { Raw } from 'taon-typeorm/browser-prod';\nimport type { EntityManager } from 'taon-typeorm/browser-prod';\n\nimport { TaonCmsContentTagEntity } from './taon-cms-content-tag.entity';\n//#endregion\n\n@TaonRepository({\n className: 'TaonCmsContentTagRepository',\n})\nexport class TaonCmsContentTagRepository extends TaonBaseRepository<TaonCmsContentTagEntity> {\n entityClassResolveFn: () => typeof TaonCmsContentTagEntity = () =>\n TaonCmsContentTagEntity;\n\n async findTagIds(\n contentId: number,\n manager: EntityManager,\n ): Promise<number[]> {\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n async replaceTags(\n contentId: number,\n tagIds: number[],\n manager: EntityManager,\n ): Promise<void> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n}\n","//#region imports\nimport { TaonController, TaonBaseCrudController, Query, GET, ClassHelpers__NS__asyncHandler, ClassHelpers__NS__ensureClassConfig, ClassHelpers__NS__ensureMethodConfig, ClassHelpers__NS__getClassConfig, ClassHelpers__NS__getClassFnFromObject, ClassHelpers__NS__getControllerConfigs, ClassHelpers__NS__getFullInternalName, ClassHelpers__NS__getMethodsNames, ClassHelpers__NS__getName, ClassHelpers__NS__getOrginalClass, ClassHelpers__NS__getUniqueKey, ClassHelpers__NS__hasParentClassWithName, ClassHelpers__NS__isContextClassObject, ClassHelpers__NS__mapFnError, ClassHelpers__NS__setName, Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\nimport { ___NS__add, ___NS__after, ___NS__ary, ___NS__assign, ___NS__assignIn, ___NS__assignInWith, ___NS__assignWith, ___NS__at, ___NS__attempt, ___NS__before, ___NS__bind, ___NS__bindAll, ___NS__bindKey, ___NS__camelCase, ___NS__capitalize, ___NS__castArray, ___NS__ceil, ___NS__chain, ___NS__chunk, ___NS__clamp, ___NS__clone, ___NS__cloneDeep, ___NS__cloneDeepWith, ___NS__cloneWith, ___NS__compact, ___NS__concat, ___NS__cond, ___NS__conforms, ___NS__conformsTo, ___NS__constant, ___NS__countBy, ___NS__create, ___NS__curry, ___NS__curryRight, ___NS__debounce, ___NS__deburr, ___NS__defaults, ___NS__defaultsDeep, ___NS__defaultTo, ___NS__defer, ___NS__delay, ___NS__difference, ___NS__differenceBy, ___NS__differenceWith, ___NS__divide, ___NS__drop, ___NS__dropRight, ___NS__dropRightWhile, ___NS__dropWhile, ___NS__each, ___NS__eachRight, ___NS__endsWith, ___NS__entries, ___NS__entriesIn, ___NS__eq, ___NS__escape, ___NS__escapeRegExp, ___NS__every, ___NS__extend, ___NS__extendWith, ___NS__fill, ___NS__filter, ___NS__find, ___NS__findIndex, ___NS__findKey, ___NS__findLast, ___NS__findLastIndex, ___NS__findLastKey, ___NS__first, ___NS__flatMap, ___NS__flatMapDeep, ___NS__flatMapDepth, ___NS__flatten, ___NS__flattenDeep, ___NS__flattenDepth, ___NS__flip, ___NS__floor, ___NS__flow, ___NS__flowRight, ___NS__forEach, ___NS__forEachRight, ___NS__forIn, ___NS__forInRight, ___NS__forOwn, ___NS__forOwnRight, ___NS__fromPairs, ___NS__functions, ___NS__functionsIn, ___NS__get, ___NS__groupBy, ___NS__gt, ___NS__gte, ___NS__has, ___NS__hasIn, ___NS__head, ___NS__identity, ___NS__includes, ___NS__indexOf, ___NS__initial, ___NS__inRange, ___NS__intersection, ___NS__intersectionBy, ___NS__intersectionWith, ___NS__invert, ___NS__invertBy, ___NS__invoke, ___NS__invokeMap, ___NS__isArguments, ___NS__isArray, ___NS__isArrayBuffer, ___NS__isArrayLike, ___NS__isArrayLikeObject, ___NS__isBoolean, ___NS__isBuffer, ___NS__isDate, ___NS__isElement, ___NS__isEmpty, ___NS__isEqual, ___NS__isEqualWith, ___NS__isError, ___NS__isFinite, ___NS__isFunction, ___NS__isInteger, ___NS__isLeafObject, ___NS__isLength, ___NS__isMap, ___NS__isMatch, ___NS__isMatchWith, ___NS__isNaN, ___NS__isNative, ___NS__isNil, ___NS__isNull, ___NS__isNumber, ___NS__isObject, ___NS__isObjectLike, ___NS__isPlainObject, ___NS__isRegExp, ___NS__isSafeInteger, ___NS__isSet, ___NS__isString, ___NS__isSymbol, ___NS__isTypedArray, ___NS__isUndefined, ___NS__isWeakMap, ___NS__isWeakSet, ___NS__iteratee, ___NS__join, ___NS__kebabCase, ___NS__keyBy, ___NS__keys, ___NS__keysIn, ___NS__last, ___NS__lastIndexOf, ___NS__lowerCase, ___NS__lowerFirst, ___NS__lt, ___NS__lte, ___NS__map, ___NS__mapKeys, ___NS__mapValues, ___NS__matches, ___NS__matchesProperty, ___NS__max, ___NS__maxBy, ___NS__mean, ___NS__meanBy, ___NS__memoize, ___NS__merge, ___NS__mergeWith, ___NS__method, ___NS__methodOf, ___NS__min, ___NS__minBy, ___NS__mixin, ___NS__multiply, ___NS__negate, ___NS__noop, ___NS__now, ___NS__nth, ___NS__nthArg, ___NS__omit, ___NS__omitBy, ___NS__once, ___NS__orderBy, ___NS__over, ___NS__overArgs, ___NS__overEvery, ___NS__overSome, ___NS__pad, ___NS__padEnd, ___NS__padStart, ___NS__parseInt, ___NS__partial, ___NS__partialRight, ___NS__partition, ___NS__pick, ___NS__pickBy, ___NS__property, ___NS__propertyOf, ___NS__pull, ___NS__pullAll, ___NS__pullAllBy, ___NS__pullAllWith, ___NS__pullAt, ___NS__random, ___NS__range, ___NS__rangeRight, ___NS__rearg, ___NS__reduce, ___NS__reduceRight, ___NS__reject, ___NS__remove, ___NS__repeat, ___NS__replace, ___NS__rest, ___NS__result, ___NS__reverse, ___NS__round, ___NS__sample, ___NS__sampleSize, ___NS__set, ___NS__setWith, ___NS__shuffle, ___NS__size, ___NS__slice, ___NS__snakeCase, ___NS__some, ___NS__sortBy, ___NS__sortedIndex, ___NS__sortedIndexBy, ___NS__sortedIndexOf, ___NS__sortedLastIndex, ___NS__sortedLastIndexBy, ___NS__sortedLastIndexOf, ___NS__sortedUniq, ___NS__sortedUniqBy, ___NS__split, ___NS__spread, ___NS__startCase, ___NS__startsWith, ___NS__stubArray, ___NS__stubFalse, ___NS__stubObject, ___NS__stubString, ___NS__stubTrue, ___NS__subtract, ___NS__sum, ___NS__sumBy, ___NS__tail, ___NS__take, ___NS__takeRight, ___NS__takeRightWhile, ___NS__takeWhile, ___NS__tap, ___NS__template, ___NS__templateSettings, ___NS__throttle, ___NS__thru, ___NS__times, ___NS__toArray, ___NS__toFinite, ___NS__toInteger, ___NS__toLength, ___NS__toLower, ___NS__toNumber, ___NS__toPairs, ___NS__toPairsIn, ___NS__toPath, ___NS__toPlainObject, ___NS__toSafeInteger, ___NS__toString, ___NS__toUpper, ___NS__transform, ___NS__trim, ___NS__trimEnd, ___NS__trimStart, ___NS__truncate, ___NS__unary, ___NS__unescape, ___NS__union, ___NS__unionBy, ___NS__unionWith, ___NS__uniq, ___NS__uniqBy, ___NS__uniqueId, ___NS__uniqWith, ___NS__unset, ___NS__unzip, ___NS__unzipWith, ___NS__update, ___NS__updateWith, ___NS__upperCase, ___NS__upperFirst, ___NS__values, ___NS__valuesIn, ___NS__without, ___NS__words, ___NS__wrap, ___NS__xor, ___NS__xorBy, ___NS__xorWith, ___NS__zip, ___NS__zipObject, ___NS__zipObjectDeep, ___NS__zipWith } from 'tnp-core/browser-prod';\n\nimport { TaonCmsContentTagEntity } from './taon-cms-content-tag.entity';\nimport { TaonCmsContentTagRepository } from './taon-cms-content-tag.repository';\n//#endregion\n\n@TaonController<TaonCmsContentTagController>({\n className: 'TaonCmsContentTagController',\n allowedMethods: [],\n})\nexport class TaonCmsContentTagController extends TaonBaseCrudController<TaonCmsContentTagEntity> {\n entityClassResolveFn: () => typeof TaonCmsContentTagEntity = () =>\n TaonCmsContentTagEntity;\n\n taonCmsContentTagRepository = this.injectCustomRepo(\n TaonCmsContentTagRepository,\n );\n}","//#region imports\nimport { TaonBaseProvider, TaonProvider, Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\nimport { ___NS__add, ___NS__after, ___NS__ary, ___NS__assign, ___NS__assignIn, ___NS__assignInWith, ___NS__assignWith, ___NS__at, ___NS__attempt, ___NS__before, ___NS__bind, ___NS__bindAll, ___NS__bindKey, ___NS__camelCase, ___NS__capitalize, ___NS__castArray, ___NS__ceil, ___NS__chain, ___NS__chunk, ___NS__clamp, ___NS__clone, ___NS__cloneDeep, ___NS__cloneDeepWith, ___NS__cloneWith, ___NS__compact, ___NS__concat, ___NS__cond, ___NS__conforms, ___NS__conformsTo, ___NS__constant, ___NS__countBy, ___NS__create, ___NS__curry, ___NS__curryRight, ___NS__debounce, ___NS__deburr, ___NS__defaults, ___NS__defaultsDeep, ___NS__defaultTo, ___NS__defer, ___NS__delay, ___NS__difference, ___NS__differenceBy, ___NS__differenceWith, ___NS__divide, ___NS__drop, ___NS__dropRight, ___NS__dropRightWhile, ___NS__dropWhile, ___NS__each, ___NS__eachRight, ___NS__endsWith, ___NS__entries, ___NS__entriesIn, ___NS__eq, ___NS__escape, ___NS__escapeRegExp, ___NS__every, ___NS__extend, ___NS__extendWith, ___NS__fill, ___NS__filter, ___NS__find, ___NS__findIndex, ___NS__findKey, ___NS__findLast, ___NS__findLastIndex, ___NS__findLastKey, ___NS__first, ___NS__flatMap, ___NS__flatMapDeep, ___NS__flatMapDepth, ___NS__flatten, ___NS__flattenDeep, ___NS__flattenDepth, ___NS__flip, ___NS__floor, ___NS__flow, ___NS__flowRight, ___NS__forEach, ___NS__forEachRight, ___NS__forIn, ___NS__forInRight, ___NS__forOwn, ___NS__forOwnRight, ___NS__fromPairs, ___NS__functions, ___NS__functionsIn, ___NS__get, ___NS__groupBy, ___NS__gt, ___NS__gte, ___NS__has, ___NS__hasIn, ___NS__head, ___NS__identity, ___NS__includes, ___NS__indexOf, ___NS__initial, ___NS__inRange, ___NS__intersection, ___NS__intersectionBy, ___NS__intersectionWith, ___NS__invert, ___NS__invertBy, ___NS__invoke, ___NS__invokeMap, ___NS__isArguments, ___NS__isArray, ___NS__isArrayBuffer, ___NS__isArrayLike, ___NS__isArrayLikeObject, ___NS__isBoolean, ___NS__isBuffer, ___NS__isDate, ___NS__isElement, ___NS__isEmpty, ___NS__isEqual, ___NS__isEqualWith, ___NS__isError, ___NS__isFinite, ___NS__isFunction, ___NS__isInteger, ___NS__isLeafObject, ___NS__isLength, ___NS__isMap, ___NS__isMatch, ___NS__isMatchWith, ___NS__isNaN, ___NS__isNative, ___NS__isNil, ___NS__isNull, ___NS__isNumber, ___NS__isObject, ___NS__isObjectLike, ___NS__isPlainObject, ___NS__isRegExp, ___NS__isSafeInteger, ___NS__isSet, ___NS__isString, ___NS__isSymbol, ___NS__isTypedArray, ___NS__isUndefined, ___NS__isWeakMap, ___NS__isWeakSet, ___NS__iteratee, ___NS__join, ___NS__kebabCase, ___NS__keyBy, ___NS__keys, ___NS__keysIn, ___NS__last, ___NS__lastIndexOf, ___NS__lowerCase, ___NS__lowerFirst, ___NS__lt, ___NS__lte, ___NS__map, ___NS__mapKeys, ___NS__mapValues, ___NS__matches, ___NS__matchesProperty, ___NS__max, ___NS__maxBy, ___NS__mean, ___NS__meanBy, ___NS__memoize, ___NS__merge, ___NS__mergeWith, ___NS__method, ___NS__methodOf, ___NS__min, ___NS__minBy, ___NS__mixin, ___NS__multiply, ___NS__negate, ___NS__noop, ___NS__now, ___NS__nth, ___NS__nthArg, ___NS__omit, ___NS__omitBy, ___NS__once, ___NS__orderBy, ___NS__over, ___NS__overArgs, ___NS__overEvery, ___NS__overSome, ___NS__pad, ___NS__padEnd, ___NS__padStart, ___NS__parseInt, ___NS__partial, ___NS__partialRight, ___NS__partition, ___NS__pick, ___NS__pickBy, ___NS__property, ___NS__propertyOf, ___NS__pull, ___NS__pullAll, ___NS__pullAllBy, ___NS__pullAllWith, ___NS__pullAt, ___NS__random, ___NS__range, ___NS__rangeRight, ___NS__rearg, ___NS__reduce, ___NS__reduceRight, ___NS__reject, ___NS__remove, ___NS__repeat, ___NS__replace, ___NS__rest, ___NS__result, ___NS__reverse, ___NS__round, ___NS__sample, ___NS__sampleSize, ___NS__set, ___NS__setWith, ___NS__shuffle, ___NS__size, ___NS__slice, ___NS__snakeCase, ___NS__some, ___NS__sortBy, ___NS__sortedIndex, ___NS__sortedIndexBy, ___NS__sortedIndexOf, ___NS__sortedLastIndex, ___NS__sortedLastIndexBy, ___NS__sortedLastIndexOf, ___NS__sortedUniq, ___NS__sortedUniqBy, ___NS__split, ___NS__spread, ___NS__startCase, ___NS__startsWith, ___NS__stubArray, ___NS__stubFalse, ___NS__stubObject, ___NS__stubString, ___NS__stubTrue, ___NS__subtract, ___NS__sum, ___NS__sumBy, ___NS__tail, ___NS__take, ___NS__takeRight, ___NS__takeRightWhile, ___NS__takeWhile, ___NS__tap, ___NS__template, ___NS__templateSettings, ___NS__throttle, ___NS__thru, ___NS__times, ___NS__toArray, ___NS__toFinite, ___NS__toInteger, ___NS__toLength, ___NS__toLower, ___NS__toNumber, ___NS__toPairs, ___NS__toPairsIn, ___NS__toPath, ___NS__toPlainObject, ___NS__toSafeInteger, ___NS__toString, ___NS__toUpper, ___NS__transform, ___NS__trim, ___NS__trimEnd, ___NS__trimStart, ___NS__truncate, ___NS__unary, ___NS__unescape, ___NS__union, ___NS__unionBy, ___NS__unionWith, ___NS__uniq, ___NS__uniqBy, ___NS__uniqueId, ___NS__uniqWith, ___NS__unset, ___NS__unzip, ___NS__unzipWith, ___NS__update, ___NS__updateWith, ___NS__upperCase, ___NS__upperFirst, ___NS__values, ___NS__valuesIn, ___NS__without, ___NS__words, ___NS__wrap, ___NS__xor, ___NS__xorBy, ___NS__xorWith, ___NS__zip, ___NS__zipObject, ___NS__zipObjectDeep, ___NS__zipWith } from 'tnp-core/browser-prod';\nimport { Injectable } from '@angular/core';\n//#endregion\n\n@TaonProvider({\n className: 'TaonCmsContentTagProvider',\n})\n//#region @browser\n@Injectable()\n//#endregion\nexport class TaonCmsContentTagProvider extends TaonBaseProvider {\n\n\n\n}","//#region imports\nimport { TaonBaseMiddleware, TaonMiddleware, Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\nimport { ___NS__add, ___NS__after, ___NS__ary, ___NS__assign, ___NS__assignIn, ___NS__assignInWith, ___NS__assignWith, ___NS__at, ___NS__attempt, ___NS__before, ___NS__bind, ___NS__bindAll, ___NS__bindKey, ___NS__camelCase, ___NS__capitalize, ___NS__castArray, ___NS__ceil, ___NS__chain, ___NS__chunk, ___NS__clamp, ___NS__clone, ___NS__cloneDeep, ___NS__cloneDeepWith, ___NS__cloneWith, ___NS__compact, ___NS__concat, ___NS__cond, ___NS__conforms, ___NS__conformsTo, ___NS__constant, ___NS__countBy, ___NS__create, ___NS__curry, ___NS__curryRight, ___NS__debounce, ___NS__deburr, ___NS__defaults, ___NS__defaultsDeep, ___NS__defaultTo, ___NS__defer, ___NS__delay, ___NS__difference, ___NS__differenceBy, ___NS__differenceWith, ___NS__divide, ___NS__drop, ___NS__dropRight, ___NS__dropRightWhile, ___NS__dropWhile, ___NS__each, ___NS__eachRight, ___NS__endsWith, ___NS__entries, ___NS__entriesIn, ___NS__eq, ___NS__escape, ___NS__escapeRegExp, ___NS__every, ___NS__extend, ___NS__extendWith, ___NS__fill, ___NS__filter, ___NS__find, ___NS__findIndex, ___NS__findKey, ___NS__findLast, ___NS__findLastIndex, ___NS__findLastKey, ___NS__first, ___NS__flatMap, ___NS__flatMapDeep, ___NS__flatMapDepth, ___NS__flatten, ___NS__flattenDeep, ___NS__flattenDepth, ___NS__flip, ___NS__floor, ___NS__flow, ___NS__flowRight, ___NS__forEach, ___NS__forEachRight, ___NS__forIn, ___NS__forInRight, ___NS__forOwn, ___NS__forOwnRight, ___NS__fromPairs, ___NS__functions, ___NS__functionsIn, ___NS__get, ___NS__groupBy, ___NS__gt, ___NS__gte, ___NS__has, ___NS__hasIn, ___NS__head, ___NS__identity, ___NS__includes, ___NS__indexOf, ___NS__initial, ___NS__inRange, ___NS__intersection, ___NS__intersectionBy, ___NS__intersectionWith, ___NS__invert, ___NS__invertBy, ___NS__invoke, ___NS__invokeMap, ___NS__isArguments, ___NS__isArray, ___NS__isArrayBuffer, ___NS__isArrayLike, ___NS__isArrayLikeObject, ___NS__isBoolean, ___NS__isBuffer, ___NS__isDate, ___NS__isElement, ___NS__isEmpty, ___NS__isEqual, ___NS__isEqualWith, ___NS__isError, ___NS__isFinite, ___NS__isFunction, ___NS__isInteger, ___NS__isLeafObject, ___NS__isLength, ___NS__isMap, ___NS__isMatch, ___NS__isMatchWith, ___NS__isNaN, ___NS__isNative, ___NS__isNil, ___NS__isNull, ___NS__isNumber, ___NS__isObject, ___NS__isObjectLike, ___NS__isPlainObject, ___NS__isRegExp, ___NS__isSafeInteger, ___NS__isSet, ___NS__isString, ___NS__isSymbol, ___NS__isTypedArray, ___NS__isUndefined, ___NS__isWeakMap, ___NS__isWeakSet, ___NS__iteratee, ___NS__join, ___NS__kebabCase, ___NS__keyBy, ___NS__keys, ___NS__keysIn, ___NS__last, ___NS__lastIndexOf, ___NS__lowerCase, ___NS__lowerFirst, ___NS__lt, ___NS__lte, ___NS__map, ___NS__mapKeys, ___NS__mapValues, ___NS__matches, ___NS__matchesProperty, ___NS__max, ___NS__maxBy, ___NS__mean, ___NS__meanBy, ___NS__memoize, ___NS__merge, ___NS__mergeWith, ___NS__method, ___NS__methodOf, ___NS__min, ___NS__minBy, ___NS__mixin, ___NS__multiply, ___NS__negate, ___NS__noop, ___NS__now, ___NS__nth, ___NS__nthArg, ___NS__omit, ___NS__omitBy, ___NS__once, ___NS__orderBy, ___NS__over, ___NS__overArgs, ___NS__overEvery, ___NS__overSome, ___NS__pad, ___NS__padEnd, ___NS__padStart, ___NS__parseInt, ___NS__partial, ___NS__partialRight, ___NS__partition, ___NS__pick, ___NS__pickBy, ___NS__property, ___NS__propertyOf, ___NS__pull, ___NS__pullAll, ___NS__pullAllBy, ___NS__pullAllWith, ___NS__pullAt, ___NS__random, ___NS__range, ___NS__rangeRight, ___NS__rearg, ___NS__reduce, ___NS__reduceRight, ___NS__reject, ___NS__remove, ___NS__repeat, ___NS__replace, ___NS__rest, ___NS__result, ___NS__reverse, ___NS__round, ___NS__sample, ___NS__sampleSize, ___NS__set, ___NS__setWith, ___NS__shuffle, ___NS__size, ___NS__slice, ___NS__snakeCase, ___NS__some, ___NS__sortBy, ___NS__sortedIndex, ___NS__sortedIndexBy, ___NS__sortedIndexOf, ___NS__sortedLastIndex, ___NS__sortedLastIndexBy, ___NS__sortedLastIndexOf, ___NS__sortedUniq, ___NS__sortedUniqBy, ___NS__split, ___NS__spread, ___NS__startCase, ___NS__startsWith, ___NS__stubArray, ___NS__stubFalse, ___NS__stubObject, ___NS__stubString, ___NS__stubTrue, ___NS__subtract, ___NS__sum, ___NS__sumBy, ___NS__tail, ___NS__take, ___NS__takeRight, ___NS__takeRightWhile, ___NS__takeWhile, ___NS__tap, ___NS__template, ___NS__templateSettings, ___NS__throttle, ___NS__thru, ___NS__times, ___NS__toArray, ___NS__toFinite, ___NS__toInteger, ___NS__toLength, ___NS__toLower, ___NS__toNumber, ___NS__toPairs, ___NS__toPairsIn, ___NS__toPath, ___NS__toPlainObject, ___NS__toSafeInteger, ___NS__toString, ___NS__toUpper, ___NS__transform, ___NS__trim, ___NS__trimEnd, ___NS__trimStart, ___NS__truncate, ___NS__unary, ___NS__unescape, ___NS__union, ___NS__unionBy, ___NS__unionWith, ___NS__uniq, ___NS__uniqBy, ___NS__uniqueId, ___NS__uniqWith, ___NS__unset, ___NS__unzip, ___NS__unzipWith, ___NS__update, ___NS__updateWith, ___NS__upperCase, ___NS__upperFirst, ___NS__values, ___NS__valuesIn, ___NS__without, ___NS__words, ___NS__wrap, ___NS__xor, ___NS__xorBy, ___NS__xorWith, ___NS__zip, ___NS__zipObject, ___NS__zipObjectDeep, ___NS__zipWith } from 'tnp-core/browser-prod';\n//#endregion\n\n@TaonMiddleware({\n className: 'TaonCmsContentTagMiddleware',\n})\nexport class TaonCmsContentTagMiddleware extends TaonBaseMiddleware {}","//#region imports\nimport { TaonBaseSubscriberForEntity, TaonSubscriber } from 'taon/browser-prod';\nimport { TaonCmsContentTagEntity } from './taon-cms-content-tag.entity';\nimport { TaonCmsContentTagProvider } from './taon-cms-content-tag.provider';\n//#endregion\n\n@TaonSubscriber<TaonCmsContentTagSubscriber>({\n className: 'TaonCmsContentTagSubscriber',\n // allowedEvents: ['afterUpdate'],\n})\nexport class TaonCmsContentTagSubscriber extends TaonBaseSubscriberForEntity {\n taonCmsContentTagProvider = this.injectProvider(TaonCmsContentTagProvider);\n listenTo(): typeof TaonCmsContentTagEntity {\n return TaonCmsContentTagEntity;\n }\n}","//#region imports\nimport { createContext, TaonBaseContext } from 'taon/browser-prod';\n\nimport { TaonCmsContentTagEntity } from './taon-cms-content-tag.entity';\nimport { TaonCmsContentTagController } from './taon-cms-content-tag.controller';\nimport { TaonCmsContentTagRepository } from './taon-cms-content-tag.repository';\nimport { TaonCmsContentTagProvider } from './taon-cms-content-tag.provider';\nimport { TaonCmsContentTagMiddleware } from './taon-cms-content-tag.middleware';\nimport { TaonCmsContentTagSubscriber } from './taon-cms-content-tag.subscriber';\n//#endregion\n\nexport const TaonCmsContentTagAbstractContext = createContext(() => ({\n contextName: 'TaonCmsContentTagAbstractContext',\n abstract: true,\n contexts: { TaonBaseContext },\n entities: { TaonCmsContentTagEntity },\n controllers: { TaonCmsContentTagController },\n repositories: { TaonCmsContentTagRepository },\n providers: { TaonCmsContentTagProvider },\n middlewares: { TaonCmsContentTagMiddleware },\n subscribers: { TaonCmsContentTagSubscriber },\n}));\n","//#region imports\nimport { Column, CustomColumn, TaonBaseAbstractEntity, TaonEntity, Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\nimport { ___NS__add, ___NS__after, ___NS__ary, ___NS__assign, ___NS__assignIn, ___NS__assignInWith, ___NS__assignWith, ___NS__at, ___NS__attempt, ___NS__before, ___NS__bind, ___NS__bindAll, ___NS__bindKey, ___NS__camelCase, ___NS__capitalize, ___NS__castArray, ___NS__ceil, ___NS__chain, ___NS__chunk, ___NS__clamp, ___NS__clone, ___NS__cloneDeep, ___NS__cloneDeepWith, ___NS__cloneWith, ___NS__compact, ___NS__concat, ___NS__cond, ___NS__conforms, ___NS__conformsTo, ___NS__constant, ___NS__countBy, ___NS__create, ___NS__curry, ___NS__curryRight, ___NS__debounce, ___NS__deburr, ___NS__defaults, ___NS__defaultsDeep, ___NS__defaultTo, ___NS__defer, ___NS__delay, ___NS__difference, ___NS__differenceBy, ___NS__differenceWith, ___NS__divide, ___NS__drop, ___NS__dropRight, ___NS__dropRightWhile, ___NS__dropWhile, ___NS__each, ___NS__eachRight, ___NS__endsWith, ___NS__entries, ___NS__entriesIn, ___NS__eq, ___NS__escape, ___NS__escapeRegExp, ___NS__every, ___NS__extend, ___NS__extendWith, ___NS__fill, ___NS__filter, ___NS__find, ___NS__findIndex, ___NS__findKey, ___NS__findLast, ___NS__findLastIndex, ___NS__findLastKey, ___NS__first, ___NS__flatMap, ___NS__flatMapDeep, ___NS__flatMapDepth, ___NS__flatten, ___NS__flattenDeep, ___NS__flattenDepth, ___NS__flip, ___NS__floor, ___NS__flow, ___NS__flowRight, ___NS__forEach, ___NS__forEachRight, ___NS__forIn, ___NS__forInRight, ___NS__forOwn, ___NS__forOwnRight, ___NS__fromPairs, ___NS__functions, ___NS__functionsIn, ___NS__get, ___NS__groupBy, ___NS__gt, ___NS__gte, ___NS__has, ___NS__hasIn, ___NS__head, ___NS__identity, ___NS__includes, ___NS__indexOf, ___NS__initial, ___NS__inRange, ___NS__intersection, ___NS__intersectionBy, ___NS__intersectionWith, ___NS__invert, ___NS__invertBy, ___NS__invoke, ___NS__invokeMap, ___NS__isArguments, ___NS__isArray, ___NS__isArrayBuffer, ___NS__isArrayLike, ___NS__isArrayLikeObject, ___NS__isBoolean, ___NS__isBuffer, ___NS__isDate, ___NS__isElement, ___NS__isEmpty, ___NS__isEqual, ___NS__isEqualWith, ___NS__isError, ___NS__isFinite, ___NS__isFunction, ___NS__isInteger, ___NS__isLeafObject, ___NS__isLength, ___NS__isMap, ___NS__isMatch, ___NS__isMatchWith, ___NS__isNaN, ___NS__isNative, ___NS__isNil, ___NS__isNull, ___NS__isNumber, ___NS__isObject, ___NS__isObjectLike, ___NS__isPlainObject, ___NS__isRegExp, ___NS__isSafeInteger, ___NS__isSet, ___NS__isString, ___NS__isSymbol, ___NS__isTypedArray, ___NS__isUndefined, ___NS__isWeakMap, ___NS__isWeakSet, ___NS__iteratee, ___NS__join, ___NS__kebabCase, ___NS__keyBy, ___NS__keys, ___NS__keysIn, ___NS__last, ___NS__lastIndexOf, ___NS__lowerCase, ___NS__lowerFirst, ___NS__lt, ___NS__lte, ___NS__map, ___NS__mapKeys, ___NS__mapValues, ___NS__matches, ___NS__matchesProperty, ___NS__max, ___NS__maxBy, ___NS__mean, ___NS__meanBy, ___NS__memoize, ___NS__merge, ___NS__mergeWith, ___NS__method, ___NS__methodOf, ___NS__min, ___NS__minBy, ___NS__mixin, ___NS__multiply, ___NS__negate, ___NS__noop, ___NS__now, ___NS__nth, ___NS__nthArg, ___NS__omit, ___NS__omitBy, ___NS__once, ___NS__orderBy, ___NS__over, ___NS__overArgs, ___NS__overEvery, ___NS__overSome, ___NS__pad, ___NS__padEnd, ___NS__padStart, ___NS__parseInt, ___NS__partial, ___NS__partialRight, ___NS__partition, ___NS__pick, ___NS__pickBy, ___NS__property, ___NS__propertyOf, ___NS__pull, ___NS__pullAll, ___NS__pullAllBy, ___NS__pullAllWith, ___NS__pullAt, ___NS__random, ___NS__range, ___NS__rangeRight, ___NS__rearg, ___NS__reduce, ___NS__reduceRight, ___NS__reject, ___NS__remove, ___NS__repeat, ___NS__replace, ___NS__rest, ___NS__result, ___NS__reverse, ___NS__round, ___NS__sample, ___NS__sampleSize, ___NS__set, ___NS__setWith, ___NS__shuffle, ___NS__size, ___NS__slice, ___NS__snakeCase, ___NS__some, ___NS__sortBy, ___NS__sortedIndex, ___NS__sortedIndexBy, ___NS__sortedIndexOf, ___NS__sortedLastIndex, ___NS__sortedLastIndexBy, ___NS__sortedLastIndexOf, ___NS__sortedUniq, ___NS__sortedUniqBy, ___NS__split, ___NS__spread, ___NS__startCase, ___NS__startsWith, ___NS__stubArray, ___NS__stubFalse, ___NS__stubObject, ___NS__stubString, ___NS__stubTrue, ___NS__subtract, ___NS__sum, ___NS__sumBy, ___NS__tail, ___NS__take, ___NS__takeRight, ___NS__takeRightWhile, ___NS__takeWhile, ___NS__tap, ___NS__template, ___NS__templateSettings, ___NS__throttle, ___NS__thru, ___NS__times, ___NS__toArray, ___NS__toFinite, ___NS__toInteger, ___NS__toLength, ___NS__toLower, ___NS__toNumber, ___NS__toPairs, ___NS__toPairsIn, ___NS__toPath, ___NS__toPlainObject, ___NS__toSafeInteger, ___NS__toString, ___NS__toUpper, ___NS__transform, ___NS__trim, ___NS__trimEnd, ___NS__trimStart, ___NS__truncate, ___NS__unary, ___NS__unescape, ___NS__union, ___NS__unionBy, ___NS__unionWith, ___NS__uniq, ___NS__uniqBy, ___NS__uniqueId, ___NS__uniqWith, ___NS__unset, ___NS__unzip, ___NS__unzipWith, ___NS__update, ___NS__updateWith, ___NS__upperCase, ___NS__upperFirst, ___NS__values, ___NS__valuesIn, ___NS__without, ___NS__words, ___NS__wrap, ___NS__xor, ___NS__xorBy, ___NS__xorWith, ___NS__zip, ___NS__zipObject, ___NS__zipObjectDeep, ___NS__zipWith } from 'tnp-core/browser-prod';\n\nimport { TaonCmsTagDefaultsValues } from './taon-cms-tag.constants';\n//#endregion\n\n@TaonEntity({\n className: 'TaonCmsTagEntity',\n createTable: true,\n})\nexport class TaonCmsTagEntity extends TaonBaseAbstractEntity<TaonCmsTagEntity> {\n/* */\n/* */\n \n name: string;\n\n/* */\n/* */\n \n slug: string;\n\n/* */\n/* */\n \n description: string | null;\n}","//#region imports\nimport { TaonBaseRepository, TaonRepository } from 'taon/browser-prod';\nimport { Raw } from 'taon-typeorm/browser-prod';\nimport type { EntityManager } from 'taon-typeorm/browser-prod';\nimport { Translation } from '@taon-dev/i18n/browser-prod';\nimport { Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\nimport { contentError } from '../taon-cms-content/taon-cms-content.validation';\nimport { requireContentId } from '../taon-cms-content/taon-cms-content.validation';\nimport { TaonCmsContentTagEntity } from '../taon-cms-content-tag/taon-cms-content-tag.entity';\nimport {\n TaonCmsTaxonomyFields,\n validateTaxonomy,\n} from '../taon-cms-category/taon-cms-taxonomy.validation';\n\nimport { TaonCmsTagEntity } from './taon-cms-tag.entity';\n//#endregion\n\nconst t = Translation.for('src/lib/taon-cms-tag/taon-cms-tag.repository.ts', {\"src/lib/taon-cms-tag/taon-cms-tag.controller.ts\":{\"en-US\":async () => (await import('./i18n/taon-cms-tag.controller.ts.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-tag.controller.ts.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-tag.controller.ts.de-DE.i18n.data')).default},\"src/lib/taon-cms-tag/taon-cms-tag.repository.ts\":{\"en-US\":async () => (await import('./i18n/taon-cms-tag.repository.ts.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-tag.repository.ts.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-tag.repository.ts.de-DE.i18n.data')).default}} as any);\n\n@TaonRepository({\n className: 'TaonCmsTagRepository',\n})\nexport class TaonCmsTagRepository extends TaonBaseRepository<TaonCmsTagEntity> {\n entityClassResolveFn: () => typeof TaonCmsTagEntity = () => TaonCmsTagEntity;\n\n async saveTag(\n id: number | null,\n input: TaonCmsTaxonomyFields,\n ): Promise<TaonCmsTagEntity> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n async deleteTag(id: number): Promise<void> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n async requireTags(ids: number[], manager: EntityManager): Promise<void> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n /**\n * TODO remove this demo example method\n */\n async countEntitesWithEvenId(): Promise<number> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n}","//#region imports\nimport { TaonSessionRepository } from '@taon-dev/session/browser-prod';\nimport { TaonAuthContextRepository } from '@taon-dev/session/browser-prod';\nimport { TaonController, TaonBaseCrudController, Query, GET, POST, DELETE, Body, ClassHelpers__NS__asyncHandler, ClassHelpers__NS__ensureClassConfig, ClassHelpers__NS__ensureMethodConfig, ClassHelpers__NS__getClassConfig, ClassHelpers__NS__getClassFnFromObject, ClassHelpers__NS__getControllerConfigs, ClassHelpers__NS__getFullInternalName, ClassHelpers__NS__getMethodsNames, ClassHelpers__NS__getName, ClassHelpers__NS__getOrginalClass, ClassHelpers__NS__getUniqueKey, ClassHelpers__NS__hasParentClassWithName, ClassHelpers__NS__isContextClassObject, ClassHelpers__NS__mapFnError, ClassHelpers__NS__setName, Models__NS__ClassType, Models__NS__ClassTypeKey, Models__NS__ConnectionOptionsLogs, Models__NS__ContextOptions, Models__NS__DatabaseConfig, Models__NS__DatabaseConfigTypeOrm, Models__NS__DatabasesFolder, Models__NS__DBRecreateMode, Models__NS__DBRecreateModeType, Models__NS__FrameworkMode, Models__NS__Http__NS__AsyncResponse, Models__NS__Http__NS__ClientAction, Models__NS__Http__NS__ContextENDPOINT, Models__NS__Http__NS__ExpressContext, Models__NS__Http__NS__FormlyFromType, Models__NS__Http__NS__MixResponse, Models__NS__Http__NS__PromiseObservableMix, Models__NS__Http__NS__RequestResults, Models__NS__Http__NS__Response, Models__NS__Http__NS__ResponseFuncOpt, Models__NS__Http__NS__SyncResponse, Models__NS__Http__NS__SyncResponseFunc, Models__NS__Http__NS__TaonStreamResponseOptions, Models__NS__KVDatabaseConfig, Models__NS__MiddlewareType, Models__NS__StartParams, Models__NS__TaonCtrlBeforeEachRequestParams, Models__NS__TaonCtxCloneParams, Models__NS__TaonInitializeParams, Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\nimport { ___NS__add, ___NS__after, ___NS__ary, ___NS__assign, ___NS__assignIn, ___NS__assignInWith, ___NS__assignWith, ___NS__at, ___NS__attempt, ___NS__before, ___NS__bind, ___NS__bindAll, ___NS__bindKey, ___NS__camelCase, ___NS__capitalize, ___NS__castArray, ___NS__ceil, ___NS__chain, ___NS__chunk, ___NS__clamp, ___NS__clone, ___NS__cloneDeep, ___NS__cloneDeepWith, ___NS__cloneWith, ___NS__compact, ___NS__concat, ___NS__cond, ___NS__conforms, ___NS__conformsTo, ___NS__constant, ___NS__countBy, ___NS__create, ___NS__curry, ___NS__curryRight, ___NS__debounce, ___NS__deburr, ___NS__defaults, ___NS__defaultsDeep, ___NS__defaultTo, ___NS__defer, ___NS__delay, ___NS__difference, ___NS__differenceBy, ___NS__differenceWith, ___NS__divide, ___NS__drop, ___NS__dropRight, ___NS__dropRightWhile, ___NS__dropWhile, ___NS__each, ___NS__eachRight, ___NS__endsWith, ___NS__entries, ___NS__entriesIn, ___NS__eq, ___NS__escape, ___NS__escapeRegExp, ___NS__every, ___NS__extend, ___NS__extendWith, ___NS__fill, ___NS__filter, ___NS__find, ___NS__findIndex, ___NS__findKey, ___NS__findLast, ___NS__findLastIndex, ___NS__findLastKey, ___NS__first, ___NS__flatMap, ___NS__flatMapDeep, ___NS__flatMapDepth, ___NS__flatten, ___NS__flattenDeep, ___NS__flattenDepth, ___NS__flip, ___NS__floor, ___NS__flow, ___NS__flowRight, ___NS__forEach, ___NS__forEachRight, ___NS__forIn, ___NS__forInRight, ___NS__forOwn, ___NS__forOwnRight, ___NS__fromPairs, ___NS__functions, ___NS__functionsIn, ___NS__get, ___NS__groupBy, ___NS__gt, ___NS__gte, ___NS__has, ___NS__hasIn, ___NS__head, ___NS__identity, ___NS__includes, ___NS__indexOf, ___NS__initial, ___NS__inRange, ___NS__intersection, ___NS__intersectionBy, ___NS__intersectionWith, ___NS__invert, ___NS__invertBy, ___NS__invoke, ___NS__invokeMap, ___NS__isArguments, ___NS__isArray, ___NS__isArrayBuffer, ___NS__isArrayLike, ___NS__isArrayLikeObject, ___NS__isBoolean, ___NS__isBuffer, ___NS__isDate, ___NS__isElement, ___NS__isEmpty, ___NS__isEqual, ___NS__isEqualWith, ___NS__isError, ___NS__isFinite, ___NS__isFunction, ___NS__isInteger, ___NS__isLeafObject, ___NS__isLength, ___NS__isMap, ___NS__isMatch, ___NS__isMatchWith, ___NS__isNaN, ___NS__isNative, ___NS__isNil, ___NS__isNull, ___NS__isNumber, ___NS__isObject, ___NS__isObjectLike, ___NS__isPlainObject, ___NS__isRegExp, ___NS__isSafeInteger, ___NS__isSet, ___NS__isString, ___NS__isSymbol, ___NS__isTypedArray, ___NS__isUndefined, ___NS__isWeakMap, ___NS__isWeakSet, ___NS__iteratee, ___NS__join, ___NS__kebabCase, ___NS__keyBy, ___NS__keys, ___NS__keysIn, ___NS__last, ___NS__lastIndexOf, ___NS__lowerCase, ___NS__lowerFirst, ___NS__lt, ___NS__lte, ___NS__map, ___NS__mapKeys, ___NS__mapValues, ___NS__matches, ___NS__matchesProperty, ___NS__max, ___NS__maxBy, ___NS__mean, ___NS__meanBy, ___NS__memoize, ___NS__merge, ___NS__mergeWith, ___NS__method, ___NS__methodOf, ___NS__min, ___NS__minBy, ___NS__mixin, ___NS__multiply, ___NS__negate, ___NS__noop, ___NS__now, ___NS__nth, ___NS__nthArg, ___NS__omit, ___NS__omitBy, ___NS__once, ___NS__orderBy, ___NS__over, ___NS__overArgs, ___NS__overEvery, ___NS__overSome, ___NS__pad, ___NS__padEnd, ___NS__padStart, ___NS__parseInt, ___NS__partial, ___NS__partialRight, ___NS__partition, ___NS__pick, ___NS__pickBy, ___NS__property, ___NS__propertyOf, ___NS__pull, ___NS__pullAll, ___NS__pullAllBy, ___NS__pullAllWith, ___NS__pullAt, ___NS__random, ___NS__range, ___NS__rangeRight, ___NS__rearg, ___NS__reduce, ___NS__reduceRight, ___NS__reject, ___NS__remove, ___NS__repeat, ___NS__replace, ___NS__rest, ___NS__result, ___NS__reverse, ___NS__round, ___NS__sample, ___NS__sampleSize, ___NS__set, ___NS__setWith, ___NS__shuffle, ___NS__size, ___NS__slice, ___NS__snakeCase, ___NS__some, ___NS__sortBy, ___NS__sortedIndex, ___NS__sortedIndexBy, ___NS__sortedIndexOf, ___NS__sortedLastIndex, ___NS__sortedLastIndexBy, ___NS__sortedLastIndexOf, ___NS__sortedUniq, ___NS__sortedUniqBy, ___NS__split, ___NS__spread, ___NS__startCase, ___NS__startsWith, ___NS__stubArray, ___NS__stubFalse, ___NS__stubObject, ___NS__stubString, ___NS__stubTrue, ___NS__subtract, ___NS__sum, ___NS__sumBy, ___NS__tail, ___NS__take, ___NS__takeRight, ___NS__takeRightWhile, ___NS__takeWhile, ___NS__tap, ___NS__template, ___NS__templateSettings, ___NS__throttle, ___NS__thru, ___NS__times, ___NS__toArray, ___NS__toFinite, ___NS__toInteger, ___NS__toLength, ___NS__toLower, ___NS__toNumber, ___NS__toPairs, ___NS__toPairsIn, ___NS__toPath, ___NS__toPlainObject, ___NS__toSafeInteger, ___NS__toString, ___NS__toUpper, ___NS__transform, ___NS__trim, ___NS__trimEnd, ___NS__trimStart, ___NS__truncate, ___NS__unary, ___NS__unescape, ___NS__union, ___NS__unionBy, ___NS__unionWith, ___NS__uniq, ___NS__uniqBy, ___NS__uniqueId, ___NS__uniqWith, ___NS__unset, ___NS__unzip, ___NS__unzipWith, ___NS__update, ___NS__updateWith, ___NS__upperCase, ___NS__upperFirst, ___NS__values, ___NS__valuesIn, ___NS__without, ___NS__words, ___NS__wrap, ___NS__xor, ___NS__xorBy, ___NS__xorWith, ___NS__zip, ___NS__zipObject, ___NS__zipObjectDeep, ___NS__zipWith } from 'tnp-core/browser-prod';\n\nimport type { TaonCmsTaxonomyFields } from '../taon-cms-category/taon-cms-taxonomy.validation';\nimport { contentError } from '../taon-cms-content/taon-cms-content.validation';\n\nimport { TaonCmsTagEntity } from './taon-cms-tag.entity';\nimport { TaonCmsTagRepository } from './taon-cms-tag.repository';\n//#endregion\n\n@TaonController<TaonCmsTagController>({\n className: 'TaonCmsTagController',\n allowedMethods: ['getAll', 'saveTag', 'deleteTag'],\n})\nexport class TaonCmsTagController extends TaonBaseCrudController<TaonCmsTagEntity> {\n entityClassResolveFn: () => typeof TaonCmsTagEntity = () => TaonCmsTagEntity;\n\n taonCmsTagRepository = this.injectCustomRepo(TaonCmsTagRepository);\n\n private readonly sessions = this.injectCustomRepo(TaonSessionRepository);\n\n private readonly auth = this.injectCustomRepo(TaonAuthContextRepository);\n\n protected async beforeEachRequest({\n req,\n res,\n t,\n }: Models__NS__TaonCtrlBeforeEachRequestParams<TaonCmsTagController>): Promise<void> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n @POST()\n saveTag(\n @Query('id') id: number | null,\n @Body() input: TaonCmsTaxonomyFields,\n ): Taon__NS__Response<TaonCmsTagEntity> {\n/* */\n/* */\n return (void 0);\n }\n\n @DELETE()\n deleteTag(@Query('id') id: number): Taon__NS__Response<void> {\n/* */\n/* */\n return (void 0);\n }\n\n //#region methods & getters / hello world\n /**\n * TODO remove this demo example method\n */\n @GET()\n helloWord(@Query('yourName') yourName: string): Taon__NS__Response<string> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n //#endregion\n}","//#region imports\nimport { TaonBaseProvider, TaonProvider, Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\nimport { ___NS__add, ___NS__after, ___NS__ary, ___NS__assign, ___NS__assignIn, ___NS__assignInWith, ___NS__assignWith, ___NS__at, ___NS__attempt, ___NS__before, ___NS__bind, ___NS__bindAll, ___NS__bindKey, ___NS__camelCase, ___NS__capitalize, ___NS__castArray, ___NS__ceil, ___NS__chain, ___NS__chunk, ___NS__clamp, ___NS__clone, ___NS__cloneDeep, ___NS__cloneDeepWith, ___NS__cloneWith, ___NS__compact, ___NS__concat, ___NS__cond, ___NS__conforms, ___NS__conformsTo, ___NS__constant, ___NS__countBy, ___NS__create, ___NS__curry, ___NS__curryRight, ___NS__debounce, ___NS__deburr, ___NS__defaults, ___NS__defaultsDeep, ___NS__defaultTo, ___NS__defer, ___NS__delay, ___NS__difference, ___NS__differenceBy, ___NS__differenceWith, ___NS__divide, ___NS__drop, ___NS__dropRight, ___NS__dropRightWhile, ___NS__dropWhile, ___NS__each, ___NS__eachRight, ___NS__endsWith, ___NS__entries, ___NS__entriesIn, ___NS__eq, ___NS__escape, ___NS__escapeRegExp, ___NS__every, ___NS__extend, ___NS__extendWith, ___NS__fill, ___NS__filter, ___NS__find, ___NS__findIndex, ___NS__findKey, ___NS__findLast, ___NS__findLastIndex, ___NS__findLastKey, ___NS__first, ___NS__flatMap, ___NS__flatMapDeep, ___NS__flatMapDepth, ___NS__flatten, ___NS__flattenDeep, ___NS__flattenDepth, ___NS__flip, ___NS__floor, ___NS__flow, ___NS__flowRight, ___NS__forEach, ___NS__forEachRight, ___NS__forIn, ___NS__forInRight, ___NS__forOwn, ___NS__forOwnRight, ___NS__fromPairs, ___NS__functions, ___NS__functionsIn, ___NS__get, ___NS__groupBy, ___NS__gt, ___NS__gte, ___NS__has, ___NS__hasIn, ___NS__head, ___NS__identity, ___NS__includes, ___NS__indexOf, ___NS__initial, ___NS__inRange, ___NS__intersection, ___NS__intersectionBy, ___NS__intersectionWith, ___NS__invert, ___NS__invertBy, ___NS__invoke, ___NS__invokeMap, ___NS__isArguments, ___NS__isArray, ___NS__isArrayBuffer, ___NS__isArrayLike, ___NS__isArrayLikeObject, ___NS__isBoolean, ___NS__isBuffer, ___NS__isDate, ___NS__isElement, ___NS__isEmpty, ___NS__isEqual, ___NS__isEqualWith, ___NS__isError, ___NS__isFinite, ___NS__isFunction, ___NS__isInteger, ___NS__isLeafObject, ___NS__isLength, ___NS__isMap, ___NS__isMatch, ___NS__isMatchWith, ___NS__isNaN, ___NS__isNative, ___NS__isNil, ___NS__isNull, ___NS__isNumber, ___NS__isObject, ___NS__isObjectLike, ___NS__isPlainObject, ___NS__isRegExp, ___NS__isSafeInteger, ___NS__isSet, ___NS__isString, ___NS__isSymbol, ___NS__isTypedArray, ___NS__isUndefined, ___NS__isWeakMap, ___NS__isWeakSet, ___NS__iteratee, ___NS__join, ___NS__kebabCase, ___NS__keyBy, ___NS__keys, ___NS__keysIn, ___NS__last, ___NS__lastIndexOf, ___NS__lowerCase, ___NS__lowerFirst, ___NS__lt, ___NS__lte, ___NS__map, ___NS__mapKeys, ___NS__mapValues, ___NS__matches, ___NS__matchesProperty, ___NS__max, ___NS__maxBy, ___NS__mean, ___NS__meanBy, ___NS__memoize, ___NS__merge, ___NS__mergeWith, ___NS__method, ___NS__methodOf, ___NS__min, ___NS__minBy, ___NS__mixin, ___NS__multiply, ___NS__negate, ___NS__noop, ___NS__now, ___NS__nth, ___NS__nthArg, ___NS__omit, ___NS__omitBy, ___NS__once, ___NS__orderBy, ___NS__over, ___NS__overArgs, ___NS__overEvery, ___NS__overSome, ___NS__pad, ___NS__padEnd, ___NS__padStart, ___NS__parseInt, ___NS__partial, ___NS__partialRight, ___NS__partition, ___NS__pick, ___NS__pickBy, ___NS__property, ___NS__propertyOf, ___NS__pull, ___NS__pullAll, ___NS__pullAllBy, ___NS__pullAllWith, ___NS__pullAt, ___NS__random, ___NS__range, ___NS__rangeRight, ___NS__rearg, ___NS__reduce, ___NS__reduceRight, ___NS__reject, ___NS__remove, ___NS__repeat, ___NS__replace, ___NS__rest, ___NS__result, ___NS__reverse, ___NS__round, ___NS__sample, ___NS__sampleSize, ___NS__set, ___NS__setWith, ___NS__shuffle, ___NS__size, ___NS__slice, ___NS__snakeCase, ___NS__some, ___NS__sortBy, ___NS__sortedIndex, ___NS__sortedIndexBy, ___NS__sortedIndexOf, ___NS__sortedLastIndex, ___NS__sortedLastIndexBy, ___NS__sortedLastIndexOf, ___NS__sortedUniq, ___NS__sortedUniqBy, ___NS__split, ___NS__spread, ___NS__startCase, ___NS__startsWith, ___NS__stubArray, ___NS__stubFalse, ___NS__stubObject, ___NS__stubString, ___NS__stubTrue, ___NS__subtract, ___NS__sum, ___NS__sumBy, ___NS__tail, ___NS__take, ___NS__takeRight, ___NS__takeRightWhile, ___NS__takeWhile, ___NS__tap, ___NS__template, ___NS__templateSettings, ___NS__throttle, ___NS__thru, ___NS__times, ___NS__toArray, ___NS__toFinite, ___NS__toInteger, ___NS__toLength, ___NS__toLower, ___NS__toNumber, ___NS__toPairs, ___NS__toPairsIn, ___NS__toPath, ___NS__toPlainObject, ___NS__toSafeInteger, ___NS__toString, ___NS__toUpper, ___NS__transform, ___NS__trim, ___NS__trimEnd, ___NS__trimStart, ___NS__truncate, ___NS__unary, ___NS__unescape, ___NS__union, ___NS__unionBy, ___NS__unionWith, ___NS__uniq, ___NS__uniqBy, ___NS__uniqueId, ___NS__uniqWith, ___NS__unset, ___NS__unzip, ___NS__unzipWith, ___NS__update, ___NS__updateWith, ___NS__upperCase, ___NS__upperFirst, ___NS__values, ___NS__valuesIn, ___NS__without, ___NS__words, ___NS__wrap, ___NS__xor, ___NS__xorBy, ___NS__xorWith, ___NS__zip, ___NS__zipObject, ___NS__zipObjectDeep, ___NS__zipWith } from 'tnp-core/browser-prod';\nimport { Injectable } from '@angular/core';\n//#endregion\n\n@TaonProvider({\n className: 'TaonCmsTagProvider',\n})\n//#region @browser\n@Injectable()\n//#endregion\nexport class TaonCmsTagProvider extends TaonBaseProvider {\n\n\n\n}","//#region imports\nimport { TaonBaseMiddleware, TaonMiddleware, Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\nimport { ___NS__add, ___NS__after, ___NS__ary, ___NS__assign, ___NS__assignIn, ___NS__assignInWith, ___NS__assignWith, ___NS__at, ___NS__attempt, ___NS__before, ___NS__bind, ___NS__bindAll, ___NS__bindKey, ___NS__camelCase, ___NS__capitalize, ___NS__castArray, ___NS__ceil, ___NS__chain, ___NS__chunk, ___NS__clamp, ___NS__clone, ___NS__cloneDeep, ___NS__cloneDeepWith, ___NS__cloneWith, ___NS__compact, ___NS__concat, ___NS__cond, ___NS__conforms, ___NS__conformsTo, ___NS__constant, ___NS__countBy, ___NS__create, ___NS__curry, ___NS__curryRight, ___NS__debounce, ___NS__deburr, ___NS__defaults, ___NS__defaultsDeep, ___NS__defaultTo, ___NS__defer, ___NS__delay, ___NS__difference, ___NS__differenceBy, ___NS__differenceWith, ___NS__divide, ___NS__drop, ___NS__dropRight, ___NS__dropRightWhile, ___NS__dropWhile, ___NS__each, ___NS__eachRight, ___NS__endsWith, ___NS__entries, ___NS__entriesIn, ___NS__eq, ___NS__escape, ___NS__escapeRegExp, ___NS__every, ___NS__extend, ___NS__extendWith, ___NS__fill, ___NS__filter, ___NS__find, ___NS__findIndex, ___NS__findKey, ___NS__findLast, ___NS__findLastIndex, ___NS__findLastKey, ___NS__first, ___NS__flatMap, ___NS__flatMapDeep, ___NS__flatMapDepth, ___NS__flatten, ___NS__flattenDeep, ___NS__flattenDepth, ___NS__flip, ___NS__floor, ___NS__flow, ___NS__flowRight, ___NS__forEach, ___NS__forEachRight, ___NS__forIn, ___NS__forInRight, ___NS__forOwn, ___NS__forOwnRight, ___NS__fromPairs, ___NS__functions, ___NS__functionsIn, ___NS__get, ___NS__groupBy, ___NS__gt, ___NS__gte, ___NS__has, ___NS__hasIn, ___NS__head, ___NS__identity, ___NS__includes, ___NS__indexOf, ___NS__initial, ___NS__inRange, ___NS__intersection, ___NS__intersectionBy, ___NS__intersectionWith, ___NS__invert, ___NS__invertBy, ___NS__invoke, ___NS__invokeMap, ___NS__isArguments, ___NS__isArray, ___NS__isArrayBuffer, ___NS__isArrayLike, ___NS__isArrayLikeObject, ___NS__isBoolean, ___NS__isBuffer, ___NS__isDate, ___NS__isElement, ___NS__isEmpty, ___NS__isEqual, ___NS__isEqualWith, ___NS__isError, ___NS__isFinite, ___NS__isFunction, ___NS__isInteger, ___NS__isLeafObject, ___NS__isLength, ___NS__isMap, ___NS__isMatch, ___NS__isMatchWith, ___NS__isNaN, ___NS__isNative, ___NS__isNil, ___NS__isNull, ___NS__isNumber, ___NS__isObject, ___NS__isObjectLike, ___NS__isPlainObject, ___NS__isRegExp, ___NS__isSafeInteger, ___NS__isSet, ___NS__isString, ___NS__isSymbol, ___NS__isTypedArray, ___NS__isUndefined, ___NS__isWeakMap, ___NS__isWeakSet, ___NS__iteratee, ___NS__join, ___NS__kebabCase, ___NS__keyBy, ___NS__keys, ___NS__keysIn, ___NS__last, ___NS__lastIndexOf, ___NS__lowerCase, ___NS__lowerFirst, ___NS__lt, ___NS__lte, ___NS__map, ___NS__mapKeys, ___NS__mapValues, ___NS__matches, ___NS__matchesProperty, ___NS__max, ___NS__maxBy, ___NS__mean, ___NS__meanBy, ___NS__memoize, ___NS__merge, ___NS__mergeWith, ___NS__method, ___NS__methodOf, ___NS__min, ___NS__minBy, ___NS__mixin, ___NS__multiply, ___NS__negate, ___NS__noop, ___NS__now, ___NS__nth, ___NS__nthArg, ___NS__omit, ___NS__omitBy, ___NS__once, ___NS__orderBy, ___NS__over, ___NS__overArgs, ___NS__overEvery, ___NS__overSome, ___NS__pad, ___NS__padEnd, ___NS__padStart, ___NS__parseInt, ___NS__partial, ___NS__partialRight, ___NS__partition, ___NS__pick, ___NS__pickBy, ___NS__property, ___NS__propertyOf, ___NS__pull, ___NS__pullAll, ___NS__pullAllBy, ___NS__pullAllWith, ___NS__pullAt, ___NS__random, ___NS__range, ___NS__rangeRight, ___NS__rearg, ___NS__reduce, ___NS__reduceRight, ___NS__reject, ___NS__remove, ___NS__repeat, ___NS__replace, ___NS__rest, ___NS__result, ___NS__reverse, ___NS__round, ___NS__sample, ___NS__sampleSize, ___NS__set, ___NS__setWith, ___NS__shuffle, ___NS__size, ___NS__slice, ___NS__snakeCase, ___NS__some, ___NS__sortBy, ___NS__sortedIndex, ___NS__sortedIndexBy, ___NS__sortedIndexOf, ___NS__sortedLastIndex, ___NS__sortedLastIndexBy, ___NS__sortedLastIndexOf, ___NS__sortedUniq, ___NS__sortedUniqBy, ___NS__split, ___NS__spread, ___NS__startCase, ___NS__startsWith, ___NS__stubArray, ___NS__stubFalse, ___NS__stubObject, ___NS__stubString, ___NS__stubTrue, ___NS__subtract, ___NS__sum, ___NS__sumBy, ___NS__tail, ___NS__take, ___NS__takeRight, ___NS__takeRightWhile, ___NS__takeWhile, ___NS__tap, ___NS__template, ___NS__templateSettings, ___NS__throttle, ___NS__thru, ___NS__times, ___NS__toArray, ___NS__toFinite, ___NS__toInteger, ___NS__toLength, ___NS__toLower, ___NS__toNumber, ___NS__toPairs, ___NS__toPairsIn, ___NS__toPath, ___NS__toPlainObject, ___NS__toSafeInteger, ___NS__toString, ___NS__toUpper, ___NS__transform, ___NS__trim, ___NS__trimEnd, ___NS__trimStart, ___NS__truncate, ___NS__unary, ___NS__unescape, ___NS__union, ___NS__unionBy, ___NS__unionWith, ___NS__uniq, ___NS__uniqBy, ___NS__uniqueId, ___NS__uniqWith, ___NS__unset, ___NS__unzip, ___NS__unzipWith, ___NS__update, ___NS__updateWith, ___NS__upperCase, ___NS__upperFirst, ___NS__values, ___NS__valuesIn, ___NS__without, ___NS__words, ___NS__wrap, ___NS__xor, ___NS__xorBy, ___NS__xorWith, ___NS__zip, ___NS__zipObject, ___NS__zipObjectDeep, ___NS__zipWith } from 'tnp-core/browser-prod';\n//#endregion\n\n@TaonMiddleware({\n className: 'TaonCmsTagMiddleware',\n})\nexport class TaonCmsTagMiddleware extends TaonBaseMiddleware {}","//#region imports\nimport { TaonBaseSubscriberForEntity, TaonSubscriber } from 'taon/browser-prod';\nimport { TaonCmsTagEntity } from './taon-cms-tag.entity';\nimport { TaonCmsTagProvider } from './taon-cms-tag.provider';\n//#endregion\n\n@TaonSubscriber<TaonCmsTagSubscriber>({\n className: 'TaonCmsTagSubscriber',\n // allowedEvents: ['afterUpdate'],\n})\nexport class TaonCmsTagSubscriber extends TaonBaseSubscriberForEntity {\n taonCmsTagProvider = this.injectProvider(TaonCmsTagProvider);\n listenTo(): typeof TaonCmsTagEntity {\n return TaonCmsTagEntity;\n }\n}","//#region imports\nimport { createContext, TaonBaseContext } from 'taon/browser-prod';\n\nimport { TaonCmsTagEntity } from './taon-cms-tag.entity';\nimport { TaonCmsTagController } from './taon-cms-tag.controller';\nimport { TaonCmsTagRepository } from './taon-cms-tag.repository';\nimport { TaonCmsTagProvider } from './taon-cms-tag.provider';\nimport { TaonCmsTagMiddleware } from './taon-cms-tag.middleware';\nimport { TaonCmsTagSubscriber } from './taon-cms-tag.subscriber';\n//#endregion\n\nexport const TaonCmsTagAbstractContext = createContext(() => ({\n contextName: 'TaonCmsTagAbstractContext',\n abstract: true,\n contexts: { TaonBaseContext },\n entities: { TaonCmsTagEntity },\n controllers: { TaonCmsTagController },\n repositories: { TaonCmsTagRepository },\n providers: { TaonCmsTagProvider },\n middlewares: { TaonCmsTagMiddleware },\n subscribers: { TaonCmsTagSubscriber },\n}));\n","import { Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\n\nimport type { TaonCmsContentFields } from './taon-cms-content.models';\nimport { TaonCmsContentType } from './taon-cms-content.models';\n\nexport function contentError(message: string, status = 400): never {\n Taon__NS__error({ message, status });\n throw new Error(message);\n}\n\nexport function requireContentId(value: number, name = 'contentId'): void {\n if (!Number.isSafeInteger(value) || value <= 0) {\n contentError(`${name} must be a positive integer.`);\n }\n}\n\nexport function requireContentVersion(\n value: number,\n name = 'expectedVersion',\n): void {\n if (!Number.isSafeInteger(value) || value < 0) {\n contentError(`${name} must be a non-negative integer.`);\n }\n}\n\nexport function validateContentInput(\n input: Partial<TaonCmsContentFields> & {\n tagIds?: number[];\n relatedPostIds?: number[];\n permissionIds?: number[];\n },\n creating = false,\n): void {\n if (!input || typeof input !== 'object' || Array.isArray(input)) {\n contentError('Content must be an object.');\n }\n if (\n input.type !== undefined &&\n !Object.values(TaonCmsContentType).includes(input.type)\n ) {\n contentError('type must be normal, video, audio, or attachment.');\n }\n for (const field of ['title', 'slug'] as const) {\n if (creating || input[field] !== undefined) {\n if (typeof input[field] !== 'string' || !input[field].trim()) {\n contentError(`${field} must be a non-empty string.`);\n }\n }\n }\n for (const field of [\n 'body',\n 'excerpt',\n 'videoKey',\n 'audioKey',\n 'attachmentKey',\n 'thumbnailKey',\n ] as const) {\n if (\n input[field] !== undefined &&\n input[field] !== null &&\n typeof input[field] !== 'string'\n ) {\n contentError(`${field} must be a string or null.`);\n }\n }\n for (const field of ['categoryId', 'authorUserId'] as const) {\n if (input[field] !== undefined && input[field] !== null) {\n requireContentId(input[field], field);\n }\n }\n if (\n input.applyPermissionsToRelatedPosts !== undefined &&\n typeof input.applyPermissionsToRelatedPosts !== 'boolean'\n ) {\n contentError('applyPermissionsToRelatedPosts must be a boolean.');\n }\n if (\n input.status !== undefined &&\n !['draft', 'published', 'archived'].includes(input.status)\n ) {\n contentError('status must be draft, published, or archived.');\n }\n if (input.publishedAt !== undefined && input.publishedAt !== null) {\n if (\n !(\n input.publishedAt instanceof Date ||\n typeof input.publishedAt === 'string'\n ) ||\n Number.isNaN(new Date(input.publishedAt).getTime())\n ) {\n contentError('publishedAt must be a valid date or null.');\n }\n }\n for (const field of ['tagIds', 'relatedPostIds', 'permissionIds'] as const) {\n const ids = input[field];\n if (ids !== undefined) {\n if (!Array.isArray(ids)) {\n contentError(`${field} must be an array.`);\n }\n for (const id of ids) {\n requireContentId(\n id,\n field === 'tagIds'\n ? 'tagId'\n : field === 'relatedPostIds'\n ? 'relatedPostId'\n : 'permissionId',\n );\n }\n }\n }\n}","//#region imports\nimport { TaonBaseRepository, TaonRepository } from 'taon/browser-prod';\nimport { In, Raw } from 'taon-typeorm/browser-prod';\nimport type { EntityManager } from 'taon-typeorm/browser-prod';\nimport { TaonPermissionEntity } from '@taon-dev/session/browser-prod';\n\nimport { TaonCmsApplicationHookEntity } from '../taon-cms-application-hook/taon-cms-application-hook.entity';\nimport type { TaonCmsApplicationHook } from '../taon-cms-application-hooks';\nimport { TaonCmsCategoryRepository } from '../taon-cms-category/taon-cms-category.repository';\nimport type { TaonCmsContentRevisionEntity } from '../taon-cms-content-revision/taon-cms-content-revision.entity';\nimport { TaonCmsContentRevisionRepository } from '../taon-cms-content-revision/taon-cms-content-revision.repository';\nimport { TaonCmsContentTagRepository } from '../taon-cms-content-tag/taon-cms-content-tag.repository';\nimport { TaonCmsTagRepository } from '../taon-cms-tag/taon-cms-tag.repository';\n\nimport { TaonCmsContentEntity } from './taon-cms-content.entity';\nimport { TaonCmsContentType } from './taon-cms-content.models';\nimport type {\n TaonCmsContentFields,\n TaonCmsContentSnapshot,\n TaonCmsCreateContent,\n TaonCmsRestoreContent,\n TaonCmsUpdateContent,\n TaonCmsPermissionConfiguration,\n} from './taon-cms-content.models';\nimport {\n contentError,\n requireContentId,\n requireContentVersion,\n validateContentInput,\n} from './taon-cms-content.validation';\n//#endregion\n\n@TaonRepository({\n className: 'TaonCmsContentRepository',\n})\nexport class TaonCmsContentRepository extends TaonBaseRepository<TaonCmsContentEntity> {\n entityClassResolveFn: () => typeof TaonCmsContentEntity = () =>\n TaonCmsContentEntity;\n\n private readonly taonCmsContentRevisionRepository = this.injectCustomRepo(\n TaonCmsContentRevisionRepository,\n );\n\n private readonly taonCmsContentTagRepository = this.injectCustomRepo(\n TaonCmsContentTagRepository,\n );\n\n private readonly taonCmsCategoryRepository = this.injectCustomRepo(\n TaonCmsCategoryRepository,\n );\n\n private readonly tags = this.injectCustomRepo(TaonCmsTagRepository);\n\n async listTagIds(id: number): Promise<number[]> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n async createContent(\n input: TaonCmsCreateContent,\n ): Promise<TaonCmsContentEntity> {\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n async duplicateContent(id: number): Promise<TaonCmsContentEntity> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n private async createContentWithManager(\n input: TaonCmsCreateContent,\n manager: EntityManager,\n ): Promise<TaonCmsContentEntity> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n async updateContent(\n id: number,\n input: TaonCmsUpdateContent,\n ): Promise<TaonCmsContentEntity> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n async archiveContent(\n id: number,\n expectedVersion: number,\n ): Promise<TaonCmsContentEntity> {\n/* */\n/* */\n return (void 0);\n }\n\n async restoreContent(\n id: number,\n input: TaonCmsRestoreContent,\n ): Promise<TaonCmsContentEntity> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n async listRevisions(id: number): Promise<TaonCmsContentRevisionEntity[]> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n async listCourses(): Promise<TaonCmsContentEntity[]> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n async listRelatedPosts(id: number): Promise<TaonCmsContentEntity[]> {\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n async listPermissions(id: number): Promise<TaonPermissionEntity[]> {\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n async getPermissionConfiguration(\n id: number,\n skipTransaction = false,\n ): Promise<TaonCmsPermissionConfiguration> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n private async resolvePermissionConfiguration(\n post: TaonCmsContentEntity,\n manager: EntityManager,\n ): Promise<TaonCmsPermissionConfiguration> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n private async validatePermissionInheritance(\n manager: EntityManager,\n ): Promise<void> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n private async requireOwnPermissionEdit(\n id: number,\n permissionIds: number[],\n current: TaonCmsContentEntity,\n manager: EntityManager,\n ): Promise<void> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n async listApplicationHooks(): Promise<TaonCmsApplicationHookEntity[]> {\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n async getContentByHook(hook: string): Promise<string> {\n/* */\n/* */\n return (void 0);\n }\n\n async getContentForHook(hook: string): Promise<TaonCmsContentEntity | null> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n //#region methods / media access\n async getContentBySlugForMedia(\n slug: string,\n ): Promise<TaonCmsContentEntity | null> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n async isPublicMediaKey(key: string): Promise<boolean> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n //#endregion\n\n async addRelatedPost(\n id: number,\n relatedPostId: number,\n expectedVersion: number,\n ): Promise<TaonCmsContentEntity> {\n/* */\n/* */\n return (void 0);\n }\n\n async deleteRelatedPost(\n id: number,\n relatedPostId: number,\n expectedVersion: number,\n ): Promise<TaonCmsContentEntity> {\n/* */\n/* */\n return (void 0);\n }\n\n private async changeRelatedPost(\n id: number,\n relatedPostId: number,\n expectedVersion: number,\n adding: boolean,\n ): Promise<TaonCmsContentEntity> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n private async requireContent(\n id: number,\n manager: EntityManager,\n ): Promise<TaonCmsContentEntity> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n private contentFields(\n input: Partial<TaonCmsContentFields>,\n current?: TaonCmsContentFields,\n ): TaonCmsContentFields {\n const type = input.type ?? current?.type ?? TaonCmsContentType.Normal;\n const title = input.title ?? current?.title;\n const slug = input.slug ?? current?.slug;\n if (title === undefined || slug === undefined) {\n contentError('title and slug are required.');\n }\n const publishedAt =\n input.publishedAt === undefined\n ? (current?.publishedAt ?? null)\n : input.publishedAt;\n return {\n type,\n title,\n slug,\n body: input.body === undefined ? (current?.body ?? null) : input.body,\n videoKey:\n input.videoKey === undefined\n ? (current?.videoKey ?? null)\n : input.videoKey,\n audioKey:\n input.audioKey === undefined\n ? (current?.audioKey ?? null)\n : input.audioKey,\n attachmentKey:\n input.attachmentKey === undefined\n ? (current?.attachmentKey ?? null)\n : input.attachmentKey,\n thumbnailKey:\n input.thumbnailKey === undefined\n ? (current?.thumbnailKey ?? null)\n : input.thumbnailKey,\n excerpt:\n input.excerpt === undefined\n ? (current?.excerpt ?? null)\n : input.excerpt,\n categoryId:\n input.categoryId === undefined\n ? (current?.categoryId ?? null)\n : input.categoryId,\n authorUserId:\n input.authorUserId === undefined\n ? (current?.authorUserId ?? null)\n : input.authorUserId,\n status: input.status ?? current?.status ?? 'draft',\n publishedAt: publishedAt === null ? null : new Date(publishedAt),\n applyPermissionsToRelatedPosts:\n input.applyPermissionsToRelatedPosts ??\n current?.applyPermissionsToRelatedPosts ??\n false,\n };\n }\n\n private async snapshotOf(\n content: TaonCmsContentEntity,\n manager: EntityManager,\n ): Promise<TaonCmsContentSnapshot> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n private contentStatus(status: string): TaonCmsContentFields['status'] {\n if (status !== 'draft' && status !== 'published' && status !== 'archived') {\n contentError(`Unsupported stored content status: ${status}.`, 409);\n }\n return status;\n }\n\n private async validateReferences(\n fields: TaonCmsContentFields,\n tagIds: number[],\n permissionIds: number[],\n manager: EntityManager,\n ): Promise<void> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n private async requirePermissions(\n permissionIds: number[],\n manager: EntityManager,\n ): Promise<void> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n private async requireAvailableSlug(\n slug: string,\n manager: EntityManager,\n contentId?: number,\n ): Promise<void> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n private async replaceRelatedPosts(\n id: number,\n relatedPostIds: number[],\n previousIds: number[],\n manager: EntityManager,\n ): Promise<void> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n private async replacePermissions(\n id: number,\n permissionIds: number[],\n previousIds: number[],\n manager: EntityManager,\n ): Promise<void> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n private async replaceApplicationHook(\n contentId: number,\n hook: TaonCmsApplicationHook | null,\n manager: EntityManager,\n ): Promise<void> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n private async commitUpdate(\n current: TaonCmsContentEntity,\n expectedVersion: number,\n snapshot: TaonCmsContentSnapshot,\n manager: EntityManager,\n applicationHook?: TaonCmsApplicationHook | null,\n ): Promise<TaonCmsContentEntity> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n /**\n * TODO remove this demo example method\n */\n async countEntitesWithEvenId(): Promise<number> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n}\n","//#region imports\nimport {\n TaonSessionProvider,\n TaonSessionRepository,\n} from '@taon-dev/session/browser-prod';\nimport { TaonAuthContextRepository } from '@taon-dev/session/browser-prod';\nimport { ExpressRequest, ExpressResponse, TaonBaseStorageController, TaonController, TaonStorageObject, TaonUploadedFile, apiPrefix, ClassHelpers__NS__asyncHandler, ClassHelpers__NS__ensureClassConfig, ClassHelpers__NS__ensureMethodConfig, ClassHelpers__NS__getClassConfig, ClassHelpers__NS__getClassFnFromObject, ClassHelpers__NS__getControllerConfigs, ClassHelpers__NS__getFullInternalName, ClassHelpers__NS__getMethodsNames, ClassHelpers__NS__getName, ClassHelpers__NS__getOrginalClass, ClassHelpers__NS__getUniqueKey, ClassHelpers__NS__hasParentClassWithName, ClassHelpers__NS__isContextClassObject, ClassHelpers__NS__mapFnError, ClassHelpers__NS__setName, Models__NS__ClassType, Models__NS__ClassTypeKey, Models__NS__ConnectionOptionsLogs, Models__NS__ContextOptions, Models__NS__DatabaseConfig, Models__NS__DatabaseConfigTypeOrm, Models__NS__DatabasesFolder, Models__NS__DBRecreateMode, Models__NS__DBRecreateModeType, Models__NS__FrameworkMode, Models__NS__Http__NS__AsyncResponse, Models__NS__Http__NS__ClientAction, Models__NS__Http__NS__ContextENDPOINT, Models__NS__Http__NS__ExpressContext, Models__NS__Http__NS__FormlyFromType, Models__NS__Http__NS__MixResponse, Models__NS__Http__NS__PromiseObservableMix, Models__NS__Http__NS__RequestResults, Models__NS__Http__NS__Response, Models__NS__Http__NS__ResponseFuncOpt, Models__NS__Http__NS__SyncResponse, Models__NS__Http__NS__SyncResponseFunc, Models__NS__Http__NS__TaonStreamResponseOptions, Models__NS__KVDatabaseConfig, Models__NS__MiddlewareType, Models__NS__StartParams, Models__NS__TaonCtrlBeforeEachRequestParams, Models__NS__TaonCtxCloneParams, Models__NS__TaonInitializeParams } from 'taon/browser-prod';\nimport { UtilsJwt__NS__decode, UtilsJwt__NS__JwtPayload, UtilsJwt__NS__sign, UtilsJwt__NS__verify } from 'tnp-core/browser-prod';\n\nimport { TaonCmsContentRepository } from './taon-cms-content.repository';\nimport { contentError } from './taon-cms-content.validation';\n//#endregion\n\n@TaonController<TaonCmsContentStorageController>({\n className: 'TaonCmsContentStorageController',\n // allowedMethods: ['download', 'uploadFormDataToServer'],\n})\nexport class TaonCmsContentStorageController extends TaonBaseStorageController<\n {},\n TaonCmsContentStorageController\n> {\n private readonly taonSessionRepository = this.injectCustomRepo(\n TaonSessionRepository,\n );\n\n private readonly taonAuthContextRepository = this.injectCustomRepo(\n TaonAuthContextRepository,\n );\n\n private readonly taonCmsContentRepository = this.injectCustomRepo(\n TaonCmsContentRepository,\n );\n\n private readonly taonSessionProvider =\n this.injectProvider(TaonSessionProvider);\n\n protected async beforeEachRequest({\n req,\n res,\n methodConfig,\n t,\n }: Models__NS__TaonCtrlBeforeEachRequestParams<TaonCmsContentStorageController>): Promise<void> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n protected async handleUploadFiles(\n files: TaonUploadedFile[],\n queryParams?: {},\n req?: ExpressRequest,\n res?: ExpressResponse,\n ): Promise<TaonStorageObject[]> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n afterFileUploadHook(): void {}\n\n async isMediaObjectAvailable(key: string): Promise<boolean> {\n/* */\n/* */\n return (void 0);\n }\n\n buildStorageDownloadUrl(options: {\n req: ExpressRequest;\n key: string;\n private: boolean;\n token?: string;\n download?: boolean;\n }): string {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n async createStorageDownloadToken(options: {\n key: string;\n expiresAt: number;\n }): Promise<string> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n protected async verifyStorageDownloadToken(options: {\n key: string;\n token: string;\n }): Promise<boolean> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n protected async isPublicStorageKey(key: string): Promise<boolean> {\n/* */\n/* */\n return (void 0);\n }\n}","//#region imports\nimport {\n TaonSessionRepository,\n type TaonPermissionEntity,\n} from '@taon-dev/session/browser-prod';\nimport {\n TaonAuthContextRepository,\n TaonSessionCoreAuthorization,\n} from '@taon-dev/session/browser-prod';\nimport { TaonController, TaonBaseCrudController, Query, GET, POST, PUT, DELETE, Body, ExpressRequest, getStatusCode, HttpStatusEnum, ExpressResponse, ClassHelpers__NS__asyncHandler, ClassHelpers__NS__ensureClassConfig, ClassHelpers__NS__ensureMethodConfig, ClassHelpers__NS__getClassConfig, ClassHelpers__NS__getClassFnFromObject, ClassHelpers__NS__getControllerConfigs, ClassHelpers__NS__getFullInternalName, ClassHelpers__NS__getMethodsNames, ClassHelpers__NS__getName, ClassHelpers__NS__getOrginalClass, ClassHelpers__NS__getUniqueKey, ClassHelpers__NS__hasParentClassWithName, ClassHelpers__NS__isContextClassObject, ClassHelpers__NS__mapFnError, ClassHelpers__NS__setName, Models__NS__ClassType, Models__NS__ClassTypeKey, Models__NS__ConnectionOptionsLogs, Models__NS__ContextOptions, Models__NS__DatabaseConfig, Models__NS__DatabaseConfigTypeOrm, Models__NS__DatabasesFolder, Models__NS__DBRecreateMode, Models__NS__DBRecreateModeType, Models__NS__FrameworkMode, Models__NS__Http__NS__AsyncResponse, Models__NS__Http__NS__ClientAction, Models__NS__Http__NS__ContextENDPOINT, Models__NS__Http__NS__ExpressContext, Models__NS__Http__NS__FormlyFromType, Models__NS__Http__NS__MixResponse, Models__NS__Http__NS__PromiseObservableMix, Models__NS__Http__NS__RequestResults, Models__NS__Http__NS__Response, Models__NS__Http__NS__ResponseFuncOpt, Models__NS__Http__NS__SyncResponse, Models__NS__Http__NS__SyncResponseFunc, Models__NS__Http__NS__TaonStreamResponseOptions, Models__NS__KVDatabaseConfig, Models__NS__MiddlewareType, Models__NS__StartParams, Models__NS__TaonCtrlBeforeEachRequestParams, Models__NS__TaonCtxCloneParams, Models__NS__TaonInitializeParams, Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\nimport { ___NS__add, ___NS__after, ___NS__ary, ___NS__assign, ___NS__assignIn, ___NS__assignInWith, ___NS__assignWith, ___NS__at, ___NS__attempt, ___NS__before, ___NS__bind, ___NS__bindAll, ___NS__bindKey, ___NS__camelCase, ___NS__capitalize, ___NS__castArray, ___NS__ceil, ___NS__chain, ___NS__chunk, ___NS__clamp, ___NS__clone, ___NS__cloneDeep, ___NS__cloneDeepWith, ___NS__cloneWith, ___NS__compact, ___NS__concat, ___NS__cond, ___NS__conforms, ___NS__conformsTo, ___NS__constant, ___NS__countBy, ___NS__create, ___NS__curry, ___NS__curryRight, ___NS__debounce, ___NS__deburr, ___NS__defaults, ___NS__defaultsDeep, ___NS__defaultTo, ___NS__defer, ___NS__delay, ___NS__difference, ___NS__differenceBy, ___NS__differenceWith, ___NS__divide, ___NS__drop, ___NS__dropRight, ___NS__dropRightWhile, ___NS__dropWhile, ___NS__each, ___NS__eachRight, ___NS__endsWith, ___NS__entries, ___NS__entriesIn, ___NS__eq, ___NS__escape, ___NS__escapeRegExp, ___NS__every, ___NS__extend, ___NS__extendWith, ___NS__fill, ___NS__filter, ___NS__find, ___NS__findIndex, ___NS__findKey, ___NS__findLast, ___NS__findLastIndex, ___NS__findLastKey, ___NS__first, ___NS__flatMap, ___NS__flatMapDeep, ___NS__flatMapDepth, ___NS__flatten, ___NS__flattenDeep, ___NS__flattenDepth, ___NS__flip, ___NS__floor, ___NS__flow, ___NS__flowRight, ___NS__forEach, ___NS__forEachRight, ___NS__forIn, ___NS__forInRight, ___NS__forOwn, ___NS__forOwnRight, ___NS__fromPairs, ___NS__functions, ___NS__functionsIn, ___NS__get, ___NS__groupBy, ___NS__gt, ___NS__gte, ___NS__has, ___NS__hasIn, ___NS__head, ___NS__identity, ___NS__includes, ___NS__indexOf, ___NS__initial, ___NS__inRange, ___NS__intersection, ___NS__intersectionBy, ___NS__intersectionWith, ___NS__invert, ___NS__invertBy, ___NS__invoke, ___NS__invokeMap, ___NS__isArguments, ___NS__isArray, ___NS__isArrayBuffer, ___NS__isArrayLike, ___NS__isArrayLikeObject, ___NS__isBoolean, ___NS__isBuffer, ___NS__isDate, ___NS__isElement, ___NS__isEmpty, ___NS__isEqual, ___NS__isEqualWith, ___NS__isError, ___NS__isFinite, ___NS__isFunction, ___NS__isInteger, ___NS__isLeafObject, ___NS__isLength, ___NS__isMap, ___NS__isMatch, ___NS__isMatchWith, ___NS__isNaN, ___NS__isNative, ___NS__isNil, ___NS__isNull, ___NS__isNumber, ___NS__isObject, ___NS__isObjectLike, ___NS__isPlainObject, ___NS__isRegExp, ___NS__isSafeInteger, ___NS__isSet, ___NS__isString, ___NS__isSymbol, ___NS__isTypedArray, ___NS__isUndefined, ___NS__isWeakMap, ___NS__isWeakSet, ___NS__iteratee, ___NS__join, ___NS__kebabCase, ___NS__keyBy, ___NS__keys, ___NS__keysIn, ___NS__last, ___NS__lastIndexOf, ___NS__lowerCase, ___NS__lowerFirst, ___NS__lt, ___NS__lte, ___NS__map, ___NS__mapKeys, ___NS__mapValues, ___NS__matches, ___NS__matchesProperty, ___NS__max, ___NS__maxBy, ___NS__mean, ___NS__meanBy, ___NS__memoize, ___NS__merge, ___NS__mergeWith, ___NS__method, ___NS__methodOf, ___NS__min, ___NS__minBy, ___NS__mixin, ___NS__multiply, ___NS__negate, ___NS__noop, ___NS__now, ___NS__nth, ___NS__nthArg, ___NS__omit, ___NS__omitBy, ___NS__once, ___NS__orderBy, ___NS__over, ___NS__overArgs, ___NS__overEvery, ___NS__overSome, ___NS__pad, ___NS__padEnd, ___NS__padStart, ___NS__parseInt, ___NS__partial, ___NS__partialRight, ___NS__partition, ___NS__pick, ___NS__pickBy, ___NS__property, ___NS__propertyOf, ___NS__pull, ___NS__pullAll, ___NS__pullAllBy, ___NS__pullAllWith, ___NS__pullAt, ___NS__random, ___NS__range, ___NS__rangeRight, ___NS__rearg, ___NS__reduce, ___NS__reduceRight, ___NS__reject, ___NS__remove, ___NS__repeat, ___NS__replace, ___NS__rest, ___NS__result, ___NS__reverse, ___NS__round, ___NS__sample, ___NS__sampleSize, ___NS__set, ___NS__setWith, ___NS__shuffle, ___NS__size, ___NS__slice, ___NS__snakeCase, ___NS__some, ___NS__sortBy, ___NS__sortedIndex, ___NS__sortedIndexBy, ___NS__sortedIndexOf, ___NS__sortedLastIndex, ___NS__sortedLastIndexBy, ___NS__sortedLastIndexOf, ___NS__sortedUniq, ___NS__sortedUniqBy, ___NS__split, ___NS__spread, ___NS__startCase, ___NS__startsWith, ___NS__stubArray, ___NS__stubFalse, ___NS__stubObject, ___NS__stubString, ___NS__stubTrue, ___NS__subtract, ___NS__sum, ___NS__sumBy, ___NS__tail, ___NS__take, ___NS__takeRight, ___NS__takeRightWhile, ___NS__takeWhile, ___NS__tap, ___NS__template, ___NS__templateSettings, ___NS__throttle, ___NS__thru, ___NS__times, ___NS__toArray, ___NS__toFinite, ___NS__toInteger, ___NS__toLength, ___NS__toLower, ___NS__toNumber, ___NS__toPairs, ___NS__toPairsIn, ___NS__toPath, ___NS__toPlainObject, ___NS__toSafeInteger, ___NS__toString, ___NS__toUpper, ___NS__transform, ___NS__trim, ___NS__trimEnd, ___NS__trimStart, ___NS__truncate, ___NS__unary, ___NS__unescape, ___NS__union, ___NS__unionBy, ___NS__unionWith, ___NS__uniq, ___NS__uniqBy, ___NS__uniqueId, ___NS__uniqWith, ___NS__unset, ___NS__unzip, ___NS__unzipWith, ___NS__update, ___NS__updateWith, ___NS__upperCase, ___NS__upperFirst, ___NS__values, ___NS__valuesIn, ___NS__without, ___NS__words, ___NS__wrap, ___NS__xor, ___NS__xorBy, ___NS__xorWith, ___NS__zip, ___NS__zipObject, ___NS__zipObjectDeep, ___NS__zipWith } from 'tnp-core/browser-prod';\n\nimport type { TaonCmsApplicationHookEntity } from '../taon-cms-application-hook/taon-cms-application-hook.entity';\nimport type { TaonCmsContentRevisionEntity } from '../taon-cms-content-revision/taon-cms-content-revision.entity';\n\nimport { TaonCmsContentStorageController } from './taon-cms-content-storage.controller';\nimport { TaonCmsContentEntity } from './taon-cms-content.entity';\nimport type {\n TaonCmsCreateContent,\n TaonCmsRestoreContent,\n TaonCmsUpdateContent,\n TaonCmsPermissionConfiguration,\n} from './taon-cms-content.models';\nimport { TaonCmsContentRepository } from './taon-cms-content.repository';\nimport { contentError } from './taon-cms-content.validation';\n//#endregion\n\n@TaonController<TaonCmsContentController>({\n //#region controller options\n className: 'TaonCmsContentController',\n allowedMethods: [\n 'getAll',\n 'getBy',\n 'createContent',\n 'duplicateContent',\n 'updateContent',\n 'deleteContent',\n 'restoreContent',\n 'listRevisions',\n 'listRelatedPosts',\n 'listCourses',\n 'listPermissions',\n 'getPermissionConfiguration',\n 'listApplicationHooks',\n 'getContentByHook',\n 'getPublicContentByHook',\n 'getVideoLinkBySlug',\n 'getPublicVideoLinkBySlug',\n 'getAudioLinkBySlug',\n 'getPublicAudioLinkBySlug',\n 'getAttachmentLinkBySlug',\n 'getPublicAttachmentLinkBySlug',\n 'getThumbnailLinkBySlug',\n 'getPublicThumbnailLinkBySlug',\n 'listTagIds',\n 'addRelatedPost',\n 'deleteRelatedPost',\n 'paginationQuery',\n ],\n //#endregion\n})\nexport class TaonCmsContentController extends TaonBaseCrudController<TaonCmsContentEntity> {\n //#region fields & getters\n entityClassResolveFn: () => typeof TaonCmsContentEntity = () =>\n TaonCmsContentEntity;\n\n private readonly taonCmsContentRepository = this.injectCustomRepo(\n TaonCmsContentRepository,\n );\n\n private readonly taonSessionRepository = this.injectCustomRepo(\n TaonSessionRepository,\n );\n\n private readonly taonAuthContextRepository = this.injectCustomRepo(\n TaonAuthContextRepository,\n );\n\n private readonly taonCmsContentStorageController = this.injectController(\n TaonCmsContentStorageController,\n );\n //#endregion\n\n //#region methods / before each request\n protected async beforeEachRequest({\n req,\n res,\n methodConfig,\n t,\n }: Models__NS__TaonCtrlBeforeEachRequestParams<TaonCmsContentController>): Promise<void> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n //#endregion\n\n //#region methods / get video link by slug\n @GET()\n getVideoLinkBySlug(@Query('slug') slug: string): Taon__NS__Response<string> {\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n //#region methods / get public video link by slug\n @GET()\n getPublicVideoLinkBySlug(@Query('slug') slug: string): Taon__NS__Response<string> {\n/* */\n/* */\n/* */\n return (void 0);\n }\n //#endregion\n\n //#region methods / get audio link by slug\n @GET()\n getAudioLinkBySlug(@Query('slug') slug: string): Taon__NS__Response<string> {\n/* */\n/* */\n/* */\n return (void 0);\n }\n //#endregion\n\n //#region methods / get public audio link by slug\n @GET()\n getPublicAudioLinkBySlug(@Query('slug') slug: string): Taon__NS__Response<string> {\n/* */\n/* */\n/* */\n return (void 0);\n }\n //#endregion\n\n //#region methods / get attachment link by slug\n @GET()\n getAttachmentLinkBySlug(@Query('slug') slug: string): Taon__NS__Response<string> {\n/* */\n/* */\n/* */\n return (void 0);\n }\n //#endregion\n\n //#region methods / get public attachment link by slug\n @GET()\n getPublicAttachmentLinkBySlug(\n @Query('slug') slug: string,\n ): Taon__NS__Response<string> {\n/* */\n/* */\n/* */\n return (void 0);\n }\n //#endregion\n //#endregion\n\n //#region methods / get media link\n @GET()\n getThumbnailLinkBySlug(@Query('slug') slug: string): Taon__NS__Response<string> {\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n @GET()\n getPublicThumbnailLinkBySlug(\n @Query('slug') slug: string,\n ): Taon__NS__Response<string> {\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n @GET()\n listCourses(): Taon__NS__Response<TaonCmsContentEntity[]> {\n/* */\n/* */\n return (void 0);\n }\n\n @GET()\n listTagIds(@Query('id') id: number): Taon__NS__Response<number[]> {\n/* */\n/* */\n return (void 0);\n }\n\n private async getMediaLinkBySlug(\n slug: string,\n type: 'video' | 'audio' | 'attachment' | 'thumbnail',\n publicOnly: boolean,\n req: ExpressRequest,\n t: Models__NS__TaonCtrlBeforeEachRequestParams<TaonCmsContentController>['t'],\n ): Promise<string> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n //#region methods / require read access\n private async requireReadAccess(\n content: TaonCmsContentEntity,\n publicOnly: boolean,\n req: ExpressRequest,\n t: Models__NS__TaonCtrlBeforeEachRequestParams<TaonCmsContentController>['t'],\n ): Promise<void> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n //#endregion\n //#endregion\n\n //#region methods / get by id\n @GET()\n getBySlug(@Query(`slug`) slug: string): Taon__NS__Response<TaonCmsContentEntity> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n //#endregion\n\n //#region methods / create content\n @POST()\n createContent(\n @Body() input: TaonCmsCreateContent,\n ): Taon__NS__Response<TaonCmsContentEntity> {\n/* */\n/* */\n return (void 0);\n }\n //#endregion\n\n //#region methods / update content\n @PUT()\n updateContent(\n @Query('id') id: number,\n @Body() input: TaonCmsUpdateContent,\n ): Taon__NS__Response<TaonCmsContentEntity> {\n/* */\n/* */\n return (void 0);\n }\n //#endregion\n\n @POST()\n duplicateContent(\n @Query('id') id: number,\n ): Taon__NS__Response<TaonCmsContentEntity> {\n/* */\n/* */\n return (void 0);\n }\n\n //#region methods / delete content\n @DELETE()\n deleteContent(\n @Query('id') id: number,\n @Query('expectedVersion') expectedVersion: number,\n ): Taon__NS__Response<TaonCmsContentEntity> {\n/* */\n/* */\n/* */\n return (void 0);\n }\n //#endregion\n\n //#region methods / restore content\n @POST()\n restoreContent(\n @Query('id') id: number,\n @Body() input: TaonCmsRestoreContent,\n ): Taon__NS__Response<TaonCmsContentEntity> {\n/* */\n/* */\n return (void 0);\n }\n //#endregion\n\n //#region methods / list related posts\n @GET()\n listRelatedPosts(\n @Query('id') id: number,\n ): Taon__NS__Response<TaonCmsContentEntity[]> {\n/* */\n/* */\n return (void 0);\n }\n //#endregion\n\n //#region methods / list permissions\n @GET()\n listPermissions(\n @Query('id') id: number,\n ): Taon__NS__Response<TaonPermissionEntity[]> {\n/* */\n/* */\n return (void 0);\n }\n //#endregion\n\n //#region methods / get permission configuration\n @GET()\n getPermissionConfiguration(\n @Query('id') id: number,\n ): Taon__NS__Response<TaonCmsPermissionConfiguration> {\n/* */\n/* */\n/* */\n return (void 0);\n }\n //#endregion\n\n //#region methods / list application hooks\n @GET()\n listApplicationHooks(): Taon__NS__Response<TaonCmsApplicationHookEntity[]> {\n/* */\n/* */\n return (void 0);\n }\n //#endregion\n\n //#region methods / get content by hook\n @GET()\n getContentByHook(@Query('hook') hook: string): Taon__NS__Response<string> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n //#endregion\n\n //#region methods / get public content by hook\n @GET()\n getPublicContentByHook(@Query('hook') hook: string): Taon__NS__Response<string> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n //#endregion\n\n //#region methods / add related post\n @POST()\n addRelatedPost(\n @Query('id') id: number,\n @Query('relatedPostId') relatedPostId: number,\n @Query('expectedVersion') expectedVersion: number,\n ): Taon__NS__Response<TaonCmsContentEntity> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n //#endregion\n\n //#region methods / delete related post\n @DELETE()\n deleteRelatedPost(\n @Query('id') id: number,\n @Query('relatedPostId') relatedPostId: number,\n @Query('expectedVersion') expectedVersion: number,\n ): Taon__NS__Response<TaonCmsContentEntity> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n //#endregion\n\n //#region methods / list revisions\n @GET()\n listRevisions(\n @Query('id') id: number,\n ): Taon__NS__Response<TaonCmsContentRevisionEntity[]> {\n/* */\n/* */\n return (void 0);\n }\n //#endregion\n}","//#region imports\nimport { TaonBaseMiddleware, TaonMiddleware, Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\nimport { ___NS__add, ___NS__after, ___NS__ary, ___NS__assign, ___NS__assignIn, ___NS__assignInWith, ___NS__assignWith, ___NS__at, ___NS__attempt, ___NS__before, ___NS__bind, ___NS__bindAll, ___NS__bindKey, ___NS__camelCase, ___NS__capitalize, ___NS__castArray, ___NS__ceil, ___NS__chain, ___NS__chunk, ___NS__clamp, ___NS__clone, ___NS__cloneDeep, ___NS__cloneDeepWith, ___NS__cloneWith, ___NS__compact, ___NS__concat, ___NS__cond, ___NS__conforms, ___NS__conformsTo, ___NS__constant, ___NS__countBy, ___NS__create, ___NS__curry, ___NS__curryRight, ___NS__debounce, ___NS__deburr, ___NS__defaults, ___NS__defaultsDeep, ___NS__defaultTo, ___NS__defer, ___NS__delay, ___NS__difference, ___NS__differenceBy, ___NS__differenceWith, ___NS__divide, ___NS__drop, ___NS__dropRight, ___NS__dropRightWhile, ___NS__dropWhile, ___NS__each, ___NS__eachRight, ___NS__endsWith, ___NS__entries, ___NS__entriesIn, ___NS__eq, ___NS__escape, ___NS__escapeRegExp, ___NS__every, ___NS__extend, ___NS__extendWith, ___NS__fill, ___NS__filter, ___NS__find, ___NS__findIndex, ___NS__findKey, ___NS__findLast, ___NS__findLastIndex, ___NS__findLastKey, ___NS__first, ___NS__flatMap, ___NS__flatMapDeep, ___NS__flatMapDepth, ___NS__flatten, ___NS__flattenDeep, ___NS__flattenDepth, ___NS__flip, ___NS__floor, ___NS__flow, ___NS__flowRight, ___NS__forEach, ___NS__forEachRight, ___NS__forIn, ___NS__forInRight, ___NS__forOwn, ___NS__forOwnRight, ___NS__fromPairs, ___NS__functions, ___NS__functionsIn, ___NS__get, ___NS__groupBy, ___NS__gt, ___NS__gte, ___NS__has, ___NS__hasIn, ___NS__head, ___NS__identity, ___NS__includes, ___NS__indexOf, ___NS__initial, ___NS__inRange, ___NS__intersection, ___NS__intersectionBy, ___NS__intersectionWith, ___NS__invert, ___NS__invertBy, ___NS__invoke, ___NS__invokeMap, ___NS__isArguments, ___NS__isArray, ___NS__isArrayBuffer, ___NS__isArrayLike, ___NS__isArrayLikeObject, ___NS__isBoolean, ___NS__isBuffer, ___NS__isDate, ___NS__isElement, ___NS__isEmpty, ___NS__isEqual, ___NS__isEqualWith, ___NS__isError, ___NS__isFinite, ___NS__isFunction, ___NS__isInteger, ___NS__isLeafObject, ___NS__isLength, ___NS__isMap, ___NS__isMatch, ___NS__isMatchWith, ___NS__isNaN, ___NS__isNative, ___NS__isNil, ___NS__isNull, ___NS__isNumber, ___NS__isObject, ___NS__isObjectLike, ___NS__isPlainObject, ___NS__isRegExp, ___NS__isSafeInteger, ___NS__isSet, ___NS__isString, ___NS__isSymbol, ___NS__isTypedArray, ___NS__isUndefined, ___NS__isWeakMap, ___NS__isWeakSet, ___NS__iteratee, ___NS__join, ___NS__kebabCase, ___NS__keyBy, ___NS__keys, ___NS__keysIn, ___NS__last, ___NS__lastIndexOf, ___NS__lowerCase, ___NS__lowerFirst, ___NS__lt, ___NS__lte, ___NS__map, ___NS__mapKeys, ___NS__mapValues, ___NS__matches, ___NS__matchesProperty, ___NS__max, ___NS__maxBy, ___NS__mean, ___NS__meanBy, ___NS__memoize, ___NS__merge, ___NS__mergeWith, ___NS__method, ___NS__methodOf, ___NS__min, ___NS__minBy, ___NS__mixin, ___NS__multiply, ___NS__negate, ___NS__noop, ___NS__now, ___NS__nth, ___NS__nthArg, ___NS__omit, ___NS__omitBy, ___NS__once, ___NS__orderBy, ___NS__over, ___NS__overArgs, ___NS__overEvery, ___NS__overSome, ___NS__pad, ___NS__padEnd, ___NS__padStart, ___NS__parseInt, ___NS__partial, ___NS__partialRight, ___NS__partition, ___NS__pick, ___NS__pickBy, ___NS__property, ___NS__propertyOf, ___NS__pull, ___NS__pullAll, ___NS__pullAllBy, ___NS__pullAllWith, ___NS__pullAt, ___NS__random, ___NS__range, ___NS__rangeRight, ___NS__rearg, ___NS__reduce, ___NS__reduceRight, ___NS__reject, ___NS__remove, ___NS__repeat, ___NS__replace, ___NS__rest, ___NS__result, ___NS__reverse, ___NS__round, ___NS__sample, ___NS__sampleSize, ___NS__set, ___NS__setWith, ___NS__shuffle, ___NS__size, ___NS__slice, ___NS__snakeCase, ___NS__some, ___NS__sortBy, ___NS__sortedIndex, ___NS__sortedIndexBy, ___NS__sortedIndexOf, ___NS__sortedLastIndex, ___NS__sortedLastIndexBy, ___NS__sortedLastIndexOf, ___NS__sortedUniq, ___NS__sortedUniqBy, ___NS__split, ___NS__spread, ___NS__startCase, ___NS__startsWith, ___NS__stubArray, ___NS__stubFalse, ___NS__stubObject, ___NS__stubString, ___NS__stubTrue, ___NS__subtract, ___NS__sum, ___NS__sumBy, ___NS__tail, ___NS__take, ___NS__takeRight, ___NS__takeRightWhile, ___NS__takeWhile, ___NS__tap, ___NS__template, ___NS__templateSettings, ___NS__throttle, ___NS__thru, ___NS__times, ___NS__toArray, ___NS__toFinite, ___NS__toInteger, ___NS__toLength, ___NS__toLower, ___NS__toNumber, ___NS__toPairs, ___NS__toPairsIn, ___NS__toPath, ___NS__toPlainObject, ___NS__toSafeInteger, ___NS__toString, ___NS__toUpper, ___NS__transform, ___NS__trim, ___NS__trimEnd, ___NS__trimStart, ___NS__truncate, ___NS__unary, ___NS__unescape, ___NS__union, ___NS__unionBy, ___NS__unionWith, ___NS__uniq, ___NS__uniqBy, ___NS__uniqueId, ___NS__uniqWith, ___NS__unset, ___NS__unzip, ___NS__unzipWith, ___NS__update, ___NS__updateWith, ___NS__upperCase, ___NS__upperFirst, ___NS__values, ___NS__valuesIn, ___NS__without, ___NS__words, ___NS__wrap, ___NS__xor, ___NS__xorBy, ___NS__xorWith, ___NS__zip, ___NS__zipObject, ___NS__zipObjectDeep, ___NS__zipWith } from 'tnp-core/browser-prod';\n//#endregion\n\n@TaonMiddleware({\n className: 'TaonCmsContentMiddleware',\n})\nexport class TaonCmsContentMiddleware extends TaonBaseMiddleware {}","//#region imports\nimport { TaonBaseProvider, TaonProvider, Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\nimport { ___NS__add, ___NS__after, ___NS__ary, ___NS__assign, ___NS__assignIn, ___NS__assignInWith, ___NS__assignWith, ___NS__at, ___NS__attempt, ___NS__before, ___NS__bind, ___NS__bindAll, ___NS__bindKey, ___NS__camelCase, ___NS__capitalize, ___NS__castArray, ___NS__ceil, ___NS__chain, ___NS__chunk, ___NS__clamp, ___NS__clone, ___NS__cloneDeep, ___NS__cloneDeepWith, ___NS__cloneWith, ___NS__compact, ___NS__concat, ___NS__cond, ___NS__conforms, ___NS__conformsTo, ___NS__constant, ___NS__countBy, ___NS__create, ___NS__curry, ___NS__curryRight, ___NS__debounce, ___NS__deburr, ___NS__defaults, ___NS__defaultsDeep, ___NS__defaultTo, ___NS__defer, ___NS__delay, ___NS__difference, ___NS__differenceBy, ___NS__differenceWith, ___NS__divide, ___NS__drop, ___NS__dropRight, ___NS__dropRightWhile, ___NS__dropWhile, ___NS__each, ___NS__eachRight, ___NS__endsWith, ___NS__entries, ___NS__entriesIn, ___NS__eq, ___NS__escape, ___NS__escapeRegExp, ___NS__every, ___NS__extend, ___NS__extendWith, ___NS__fill, ___NS__filter, ___NS__find, ___NS__findIndex, ___NS__findKey, ___NS__findLast, ___NS__findLastIndex, ___NS__findLastKey, ___NS__first, ___NS__flatMap, ___NS__flatMapDeep, ___NS__flatMapDepth, ___NS__flatten, ___NS__flattenDeep, ___NS__flattenDepth, ___NS__flip, ___NS__floor, ___NS__flow, ___NS__flowRight, ___NS__forEach, ___NS__forEachRight, ___NS__forIn, ___NS__forInRight, ___NS__forOwn, ___NS__forOwnRight, ___NS__fromPairs, ___NS__functions, ___NS__functionsIn, ___NS__get, ___NS__groupBy, ___NS__gt, ___NS__gte, ___NS__has, ___NS__hasIn, ___NS__head, ___NS__identity, ___NS__includes, ___NS__indexOf, ___NS__initial, ___NS__inRange, ___NS__intersection, ___NS__intersectionBy, ___NS__intersectionWith, ___NS__invert, ___NS__invertBy, ___NS__invoke, ___NS__invokeMap, ___NS__isArguments, ___NS__isArray, ___NS__isArrayBuffer, ___NS__isArrayLike, ___NS__isArrayLikeObject, ___NS__isBoolean, ___NS__isBuffer, ___NS__isDate, ___NS__isElement, ___NS__isEmpty, ___NS__isEqual, ___NS__isEqualWith, ___NS__isError, ___NS__isFinite, ___NS__isFunction, ___NS__isInteger, ___NS__isLeafObject, ___NS__isLength, ___NS__isMap, ___NS__isMatch, ___NS__isMatchWith, ___NS__isNaN, ___NS__isNative, ___NS__isNil, ___NS__isNull, ___NS__isNumber, ___NS__isObject, ___NS__isObjectLike, ___NS__isPlainObject, ___NS__isRegExp, ___NS__isSafeInteger, ___NS__isSet, ___NS__isString, ___NS__isSymbol, ___NS__isTypedArray, ___NS__isUndefined, ___NS__isWeakMap, ___NS__isWeakSet, ___NS__iteratee, ___NS__join, ___NS__kebabCase, ___NS__keyBy, ___NS__keys, ___NS__keysIn, ___NS__last, ___NS__lastIndexOf, ___NS__lowerCase, ___NS__lowerFirst, ___NS__lt, ___NS__lte, ___NS__map, ___NS__mapKeys, ___NS__mapValues, ___NS__matches, ___NS__matchesProperty, ___NS__max, ___NS__maxBy, ___NS__mean, ___NS__meanBy, ___NS__memoize, ___NS__merge, ___NS__mergeWith, ___NS__method, ___NS__methodOf, ___NS__min, ___NS__minBy, ___NS__mixin, ___NS__multiply, ___NS__negate, ___NS__noop, ___NS__now, ___NS__nth, ___NS__nthArg, ___NS__omit, ___NS__omitBy, ___NS__once, ___NS__orderBy, ___NS__over, ___NS__overArgs, ___NS__overEvery, ___NS__overSome, ___NS__pad, ___NS__padEnd, ___NS__padStart, ___NS__parseInt, ___NS__partial, ___NS__partialRight, ___NS__partition, ___NS__pick, ___NS__pickBy, ___NS__property, ___NS__propertyOf, ___NS__pull, ___NS__pullAll, ___NS__pullAllBy, ___NS__pullAllWith, ___NS__pullAt, ___NS__random, ___NS__range, ___NS__rangeRight, ___NS__rearg, ___NS__reduce, ___NS__reduceRight, ___NS__reject, ___NS__remove, ___NS__repeat, ___NS__replace, ___NS__rest, ___NS__result, ___NS__reverse, ___NS__round, ___NS__sample, ___NS__sampleSize, ___NS__set, ___NS__setWith, ___NS__shuffle, ___NS__size, ___NS__slice, ___NS__snakeCase, ___NS__some, ___NS__sortBy, ___NS__sortedIndex, ___NS__sortedIndexBy, ___NS__sortedIndexOf, ___NS__sortedLastIndex, ___NS__sortedLastIndexBy, ___NS__sortedLastIndexOf, ___NS__sortedUniq, ___NS__sortedUniqBy, ___NS__split, ___NS__spread, ___NS__startCase, ___NS__startsWith, ___NS__stubArray, ___NS__stubFalse, ___NS__stubObject, ___NS__stubString, ___NS__stubTrue, ___NS__subtract, ___NS__sum, ___NS__sumBy, ___NS__tail, ___NS__take, ___NS__takeRight, ___NS__takeRightWhile, ___NS__takeWhile, ___NS__tap, ___NS__template, ___NS__templateSettings, ___NS__throttle, ___NS__thru, ___NS__times, ___NS__toArray, ___NS__toFinite, ___NS__toInteger, ___NS__toLength, ___NS__toLower, ___NS__toNumber, ___NS__toPairs, ___NS__toPairsIn, ___NS__toPath, ___NS__toPlainObject, ___NS__toSafeInteger, ___NS__toString, ___NS__toUpper, ___NS__transform, ___NS__trim, ___NS__trimEnd, ___NS__trimStart, ___NS__truncate, ___NS__unary, ___NS__unescape, ___NS__union, ___NS__unionBy, ___NS__unionWith, ___NS__uniq, ___NS__uniqBy, ___NS__uniqueId, ___NS__uniqWith, ___NS__unset, ___NS__unzip, ___NS__unzipWith, ___NS__update, ___NS__updateWith, ___NS__upperCase, ___NS__upperFirst, ___NS__values, ___NS__valuesIn, ___NS__without, ___NS__words, ___NS__wrap, ___NS__xor, ___NS__xorBy, ___NS__xorWith, ___NS__zip, ___NS__zipObject, ___NS__zipObjectDeep, ___NS__zipWith } from 'tnp-core/browser-prod';\nimport { Injectable } from '@angular/core';\n\n//#endregion\n\n@TaonProvider({\n className: 'TaonCmsContentProvider',\n})\nexport class TaonCmsContentProvider extends TaonBaseProvider {\n public siteName: string;\n\n async _(): Promise<void> {\n if (!this.siteName) {\n throw new Error(`Please provide siteName in TaonCmsContentProvider`);\n }\n }\n}","//#region imports\nimport { TaonBaseSubscriberForEntity, TaonSubscriber } from 'taon/browser-prod';\nimport { TaonCmsContentEntity } from './taon-cms-content.entity';\nimport { TaonCmsContentProvider } from './taon-cms-content.provider';\n//#endregion\n\n@TaonSubscriber<TaonCmsContentSubscriber>({\n className: 'TaonCmsContentSubscriber',\n // allowedEvents: ['afterUpdate'],\n})\nexport class TaonCmsContentSubscriber extends TaonBaseSubscriberForEntity {\n taonCmsContentProvider = this.injectProvider(TaonCmsContentProvider);\n listenTo(): typeof TaonCmsContentEntity {\n return TaonCmsContentEntity;\n }\n}","//#region imports\nimport { createContext, TaonBaseContext } from 'taon/browser-prod';\n\nimport { TaonCmsCategoryAbstractContext } from '../taon-cms-category/taon-cms-category.abstract.context';\nimport { TaonCmsContentRevisionAbstractContext } from '../taon-cms-content-revision/taon-cms-content-revision.abstract.context';\nimport { TaonCmsContentTagAbstractContext } from '../taon-cms-content-tag/taon-cms-content-tag.abstract.context';\nimport { TaonCmsTagAbstractContext } from '../taon-cms-tag/taon-cms-tag.abstract.context';\nimport { TaonCmsApplicationHookEntity } from '../taon-cms-application-hook/taon-cms-application-hook.entity';\n\nimport { TaonCmsContentController } from './taon-cms-content.controller';\nimport { TaonCmsContentEntity } from './taon-cms-content.entity';\nimport { TaonCmsContentMiddleware } from './taon-cms-content.middleware';\nimport { TaonCmsContentProvider } from './taon-cms-content.provider';\nimport { TaonCmsContentRepository } from './taon-cms-content.repository';\nimport { TaonCmsContentSubscriber } from './taon-cms-content.subscriber';\nimport { TaonCmsContentStorageController } from './taon-cms-content-storage.controller';\n\n//#endregion\n\nexport const TaonCmsContentAbstractContext = createContext(() => ({\n contextName: 'TaonCmsContentAbstractContext',\n abstract: true,\n contexts: {\n TaonBaseContext,\n TaonCmsCategoryAbstractContext,\n TaonCmsTagAbstractContext,\n TaonCmsContentTagAbstractContext,\n TaonCmsContentRevisionAbstractContext,\n },\n entities: { TaonCmsApplicationHookEntity, TaonCmsContentEntity },\n controllers: { TaonCmsContentController, TaonCmsContentStorageController },\n repositories: { TaonCmsContentRepository },\n providers: { TaonCmsContentProvider },\n middlewares: { TaonCmsContentMiddleware },\n subscribers: { TaonCmsContentSubscriber },\n}));\n","//#region imports\nimport { Column, CustomColumn, PrimaryGeneratedColumn, TaonBaseAbstractEntity, TaonBaseEntity, TaonEntity, Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\nimport { ___NS__add, ___NS__after, ___NS__ary, ___NS__assign, ___NS__assignIn, ___NS__assignInWith, ___NS__assignWith, ___NS__at, ___NS__attempt, ___NS__before, ___NS__bind, ___NS__bindAll, ___NS__bindKey, ___NS__camelCase, ___NS__capitalize, ___NS__castArray, ___NS__ceil, ___NS__chain, ___NS__chunk, ___NS__clamp, ___NS__clone, ___NS__cloneDeep, ___NS__cloneDeepWith, ___NS__cloneWith, ___NS__compact, ___NS__concat, ___NS__cond, ___NS__conforms, ___NS__conformsTo, ___NS__constant, ___NS__countBy, ___NS__create, ___NS__curry, ___NS__curryRight, ___NS__debounce, ___NS__deburr, ___NS__defaults, ___NS__defaultsDeep, ___NS__defaultTo, ___NS__defer, ___NS__delay, ___NS__difference, ___NS__differenceBy, ___NS__differenceWith, ___NS__divide, ___NS__drop, ___NS__dropRight, ___NS__dropRightWhile, ___NS__dropWhile, ___NS__each, ___NS__eachRight, ___NS__endsWith, ___NS__entries, ___NS__entriesIn, ___NS__eq, ___NS__escape, ___NS__escapeRegExp, ___NS__every, ___NS__extend, ___NS__extendWith, ___NS__fill, ___NS__filter, ___NS__find, ___NS__findIndex, ___NS__findKey, ___NS__findLast, ___NS__findLastIndex, ___NS__findLastKey, ___NS__first, ___NS__flatMap, ___NS__flatMapDeep, ___NS__flatMapDepth, ___NS__flatten, ___NS__flattenDeep, ___NS__flattenDepth, ___NS__flip, ___NS__floor, ___NS__flow, ___NS__flowRight, ___NS__forEach, ___NS__forEachRight, ___NS__forIn, ___NS__forInRight, ___NS__forOwn, ___NS__forOwnRight, ___NS__fromPairs, ___NS__functions, ___NS__functionsIn, ___NS__get, ___NS__groupBy, ___NS__gt, ___NS__gte, ___NS__has, ___NS__hasIn, ___NS__head, ___NS__identity, ___NS__includes, ___NS__indexOf, ___NS__initial, ___NS__inRange, ___NS__intersection, ___NS__intersectionBy, ___NS__intersectionWith, ___NS__invert, ___NS__invertBy, ___NS__invoke, ___NS__invokeMap, ___NS__isArguments, ___NS__isArray, ___NS__isArrayBuffer, ___NS__isArrayLike, ___NS__isArrayLikeObject, ___NS__isBoolean, ___NS__isBuffer, ___NS__isDate, ___NS__isElement, ___NS__isEmpty, ___NS__isEqual, ___NS__isEqualWith, ___NS__isError, ___NS__isFinite, ___NS__isFunction, ___NS__isInteger, ___NS__isLeafObject, ___NS__isLength, ___NS__isMap, ___NS__isMatch, ___NS__isMatchWith, ___NS__isNaN, ___NS__isNative, ___NS__isNil, ___NS__isNull, ___NS__isNumber, ___NS__isObject, ___NS__isObjectLike, ___NS__isPlainObject, ___NS__isRegExp, ___NS__isSafeInteger, ___NS__isSet, ___NS__isString, ___NS__isSymbol, ___NS__isTypedArray, ___NS__isUndefined, ___NS__isWeakMap, ___NS__isWeakSet, ___NS__iteratee, ___NS__join, ___NS__kebabCase, ___NS__keyBy, ___NS__keys, ___NS__keysIn, ___NS__last, ___NS__lastIndexOf, ___NS__lowerCase, ___NS__lowerFirst, ___NS__lt, ___NS__lte, ___NS__map, ___NS__mapKeys, ___NS__mapValues, ___NS__matches, ___NS__matchesProperty, ___NS__max, ___NS__maxBy, ___NS__mean, ___NS__meanBy, ___NS__memoize, ___NS__merge, ___NS__mergeWith, ___NS__method, ___NS__methodOf, ___NS__min, ___NS__minBy, ___NS__mixin, ___NS__multiply, ___NS__negate, ___NS__noop, ___NS__now, ___NS__nth, ___NS__nthArg, ___NS__omit, ___NS__omitBy, ___NS__once, ___NS__orderBy, ___NS__over, ___NS__overArgs, ___NS__overEvery, ___NS__overSome, ___NS__pad, ___NS__padEnd, ___NS__padStart, ___NS__parseInt, ___NS__partial, ___NS__partialRight, ___NS__partition, ___NS__pick, ___NS__pickBy, ___NS__property, ___NS__propertyOf, ___NS__pull, ___NS__pullAll, ___NS__pullAllBy, ___NS__pullAllWith, ___NS__pullAt, ___NS__random, ___NS__range, ___NS__rangeRight, ___NS__rearg, ___NS__reduce, ___NS__reduceRight, ___NS__reject, ___NS__remove, ___NS__repeat, ___NS__replace, ___NS__rest, ___NS__result, ___NS__reverse, ___NS__round, ___NS__sample, ___NS__sampleSize, ___NS__set, ___NS__setWith, ___NS__shuffle, ___NS__size, ___NS__slice, ___NS__snakeCase, ___NS__some, ___NS__sortBy, ___NS__sortedIndex, ___NS__sortedIndexBy, ___NS__sortedIndexOf, ___NS__sortedLastIndex, ___NS__sortedLastIndexBy, ___NS__sortedLastIndexOf, ___NS__sortedUniq, ___NS__sortedUniqBy, ___NS__split, ___NS__spread, ___NS__startCase, ___NS__startsWith, ___NS__stubArray, ___NS__stubFalse, ___NS__stubObject, ___NS__stubString, ___NS__stubTrue, ___NS__subtract, ___NS__sum, ___NS__sumBy, ___NS__tail, ___NS__take, ___NS__takeRight, ___NS__takeRightWhile, ___NS__takeWhile, ___NS__tap, ___NS__template, ___NS__templateSettings, ___NS__throttle, ___NS__thru, ___NS__times, ___NS__toArray, ___NS__toFinite, ___NS__toInteger, ___NS__toLength, ___NS__toLower, ___NS__toNumber, ___NS__toPairs, ___NS__toPairsIn, ___NS__toPath, ___NS__toPlainObject, ___NS__toSafeInteger, ___NS__toString, ___NS__toUpper, ___NS__transform, ___NS__trim, ___NS__trimEnd, ___NS__trimStart, ___NS__truncate, ___NS__unary, ___NS__unescape, ___NS__union, ___NS__unionBy, ___NS__unionWith, ___NS__uniq, ___NS__uniqBy, ___NS__uniqueId, ___NS__uniqWith, ___NS__unset, ___NS__unzip, ___NS__unzipWith, ___NS__update, ___NS__updateWith, ___NS__upperCase, ___NS__upperFirst, ___NS__values, ___NS__valuesIn, ___NS__without, ___NS__words, ___NS__wrap, ___NS__xor, ___NS__xorBy, ___NS__xorWith, ___NS__zip, ___NS__zipObject, ___NS__zipObjectDeep, ___NS__zipWith } from 'tnp-core/browser-prod';\n\nimport { TaonCmsContentAssetDefaultsValues } from './taon-cms-content-asset.constants';\n//#endregion\n\n@TaonEntity({\n className: 'TaonCmsContentAssetEntity',\n createTable: true,\n})\nexport class TaonCmsContentAssetEntity extends TaonBaseEntity<TaonCmsContentAssetEntity> {\n/* */\n/* */\n \n id: number;\n\n/* */\n/* */\n \n version: number;\n\n/* */\n/* */\n \n contentId: number | null;\n\n/* */\n/* */\n \n type: string;\n // image | video | audio | file\n\n/* */\n/* */\n \n storageProvider: string;\n // r2 | filesystem | s3\n\n/* */\n/* */\n \n bucket: string | null;\n\n/* */\n/* */\n \n key: string;\n\n/* */\n/* */\n \n originalFilename: string | null;\n\n/* */\n/* */\n \n mimeType: string | null;\n\n/* */\n/* */\n \n size: number | null;\n\n/* */\n/* */\n \n durationSeconds: number | null;\n\n/* */\n/* */\n \n metadata: Record<string, any> | null;\n\n/* */\n/* */\n \n createdAt: Date;\n}","//#region imports\nimport { TaonBaseRepository, TaonRepository } from 'taon/browser-prod';\nimport { Raw } from 'taon-typeorm/browser-prod';\n\nimport { TaonCmsContentAssetEntity } from './taon-cms-content-asset.entity';\n//#endregion\n\n@TaonRepository({\n className: 'TaonCmsContentAssetRepository',\n})\nexport class TaonCmsContentAssetRepository extends TaonBaseRepository<TaonCmsContentAssetEntity> {\n entityClassResolveFn: () => typeof TaonCmsContentAssetEntity = () => TaonCmsContentAssetEntity;\n\n /**\n * TODO remove this demo example method\n */\n async countEntitesWithEvenId(): Promise<number> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n}","//#region imports\nimport { TaonController, TaonBaseCrudController, Query, GET, ClassHelpers__NS__asyncHandler, ClassHelpers__NS__ensureClassConfig, ClassHelpers__NS__ensureMethodConfig, ClassHelpers__NS__getClassConfig, ClassHelpers__NS__getClassFnFromObject, ClassHelpers__NS__getControllerConfigs, ClassHelpers__NS__getFullInternalName, ClassHelpers__NS__getMethodsNames, ClassHelpers__NS__getName, ClassHelpers__NS__getOrginalClass, ClassHelpers__NS__getUniqueKey, ClassHelpers__NS__hasParentClassWithName, ClassHelpers__NS__isContextClassObject, ClassHelpers__NS__mapFnError, ClassHelpers__NS__setName, Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\nimport { ___NS__add, ___NS__after, ___NS__ary, ___NS__assign, ___NS__assignIn, ___NS__assignInWith, ___NS__assignWith, ___NS__at, ___NS__attempt, ___NS__before, ___NS__bind, ___NS__bindAll, ___NS__bindKey, ___NS__camelCase, ___NS__capitalize, ___NS__castArray, ___NS__ceil, ___NS__chain, ___NS__chunk, ___NS__clamp, ___NS__clone, ___NS__cloneDeep, ___NS__cloneDeepWith, ___NS__cloneWith, ___NS__compact, ___NS__concat, ___NS__cond, ___NS__conforms, ___NS__conformsTo, ___NS__constant, ___NS__countBy, ___NS__create, ___NS__curry, ___NS__curryRight, ___NS__debounce, ___NS__deburr, ___NS__defaults, ___NS__defaultsDeep, ___NS__defaultTo, ___NS__defer, ___NS__delay, ___NS__difference, ___NS__differenceBy, ___NS__differenceWith, ___NS__divide, ___NS__drop, ___NS__dropRight, ___NS__dropRightWhile, ___NS__dropWhile, ___NS__each, ___NS__eachRight, ___NS__endsWith, ___NS__entries, ___NS__entriesIn, ___NS__eq, ___NS__escape, ___NS__escapeRegExp, ___NS__every, ___NS__extend, ___NS__extendWith, ___NS__fill, ___NS__filter, ___NS__find, ___NS__findIndex, ___NS__findKey, ___NS__findLast, ___NS__findLastIndex, ___NS__findLastKey, ___NS__first, ___NS__flatMap, ___NS__flatMapDeep, ___NS__flatMapDepth, ___NS__flatten, ___NS__flattenDeep, ___NS__flattenDepth, ___NS__flip, ___NS__floor, ___NS__flow, ___NS__flowRight, ___NS__forEach, ___NS__forEachRight, ___NS__forIn, ___NS__forInRight, ___NS__forOwn, ___NS__forOwnRight, ___NS__fromPairs, ___NS__functions, ___NS__functionsIn, ___NS__get, ___NS__groupBy, ___NS__gt, ___NS__gte, ___NS__has, ___NS__hasIn, ___NS__head, ___NS__identity, ___NS__includes, ___NS__indexOf, ___NS__initial, ___NS__inRange, ___NS__intersection, ___NS__intersectionBy, ___NS__intersectionWith, ___NS__invert, ___NS__invertBy, ___NS__invoke, ___NS__invokeMap, ___NS__isArguments, ___NS__isArray, ___NS__isArrayBuffer, ___NS__isArrayLike, ___NS__isArrayLikeObject, ___NS__isBoolean, ___NS__isBuffer, ___NS__isDate, ___NS__isElement, ___NS__isEmpty, ___NS__isEqual, ___NS__isEqualWith, ___NS__isError, ___NS__isFinite, ___NS__isFunction, ___NS__isInteger, ___NS__isLeafObject, ___NS__isLength, ___NS__isMap, ___NS__isMatch, ___NS__isMatchWith, ___NS__isNaN, ___NS__isNative, ___NS__isNil, ___NS__isNull, ___NS__isNumber, ___NS__isObject, ___NS__isObjectLike, ___NS__isPlainObject, ___NS__isRegExp, ___NS__isSafeInteger, ___NS__isSet, ___NS__isString, ___NS__isSymbol, ___NS__isTypedArray, ___NS__isUndefined, ___NS__isWeakMap, ___NS__isWeakSet, ___NS__iteratee, ___NS__join, ___NS__kebabCase, ___NS__keyBy, ___NS__keys, ___NS__keysIn, ___NS__last, ___NS__lastIndexOf, ___NS__lowerCase, ___NS__lowerFirst, ___NS__lt, ___NS__lte, ___NS__map, ___NS__mapKeys, ___NS__mapValues, ___NS__matches, ___NS__matchesProperty, ___NS__max, ___NS__maxBy, ___NS__mean, ___NS__meanBy, ___NS__memoize, ___NS__merge, ___NS__mergeWith, ___NS__method, ___NS__methodOf, ___NS__min, ___NS__minBy, ___NS__mixin, ___NS__multiply, ___NS__negate, ___NS__noop, ___NS__now, ___NS__nth, ___NS__nthArg, ___NS__omit, ___NS__omitBy, ___NS__once, ___NS__orderBy, ___NS__over, ___NS__overArgs, ___NS__overEvery, ___NS__overSome, ___NS__pad, ___NS__padEnd, ___NS__padStart, ___NS__parseInt, ___NS__partial, ___NS__partialRight, ___NS__partition, ___NS__pick, ___NS__pickBy, ___NS__property, ___NS__propertyOf, ___NS__pull, ___NS__pullAll, ___NS__pullAllBy, ___NS__pullAllWith, ___NS__pullAt, ___NS__random, ___NS__range, ___NS__rangeRight, ___NS__rearg, ___NS__reduce, ___NS__reduceRight, ___NS__reject, ___NS__remove, ___NS__repeat, ___NS__replace, ___NS__rest, ___NS__result, ___NS__reverse, ___NS__round, ___NS__sample, ___NS__sampleSize, ___NS__set, ___NS__setWith, ___NS__shuffle, ___NS__size, ___NS__slice, ___NS__snakeCase, ___NS__some, ___NS__sortBy, ___NS__sortedIndex, ___NS__sortedIndexBy, ___NS__sortedIndexOf, ___NS__sortedLastIndex, ___NS__sortedLastIndexBy, ___NS__sortedLastIndexOf, ___NS__sortedUniq, ___NS__sortedUniqBy, ___NS__split, ___NS__spread, ___NS__startCase, ___NS__startsWith, ___NS__stubArray, ___NS__stubFalse, ___NS__stubObject, ___NS__stubString, ___NS__stubTrue, ___NS__subtract, ___NS__sum, ___NS__sumBy, ___NS__tail, ___NS__take, ___NS__takeRight, ___NS__takeRightWhile, ___NS__takeWhile, ___NS__tap, ___NS__template, ___NS__templateSettings, ___NS__throttle, ___NS__thru, ___NS__times, ___NS__toArray, ___NS__toFinite, ___NS__toInteger, ___NS__toLength, ___NS__toLower, ___NS__toNumber, ___NS__toPairs, ___NS__toPairsIn, ___NS__toPath, ___NS__toPlainObject, ___NS__toSafeInteger, ___NS__toString, ___NS__toUpper, ___NS__transform, ___NS__trim, ___NS__trimEnd, ___NS__trimStart, ___NS__truncate, ___NS__unary, ___NS__unescape, ___NS__union, ___NS__unionBy, ___NS__unionWith, ___NS__uniq, ___NS__uniqBy, ___NS__uniqueId, ___NS__uniqWith, ___NS__unset, ___NS__unzip, ___NS__unzipWith, ___NS__update, ___NS__updateWith, ___NS__upperCase, ___NS__upperFirst, ___NS__values, ___NS__valuesIn, ___NS__without, ___NS__words, ___NS__wrap, ___NS__xor, ___NS__xorBy, ___NS__xorWith, ___NS__zip, ___NS__zipObject, ___NS__zipObjectDeep, ___NS__zipWith } from 'tnp-core/browser-prod';\n\nimport { TaonCmsContentAssetEntity } from './taon-cms-content-asset.entity';\nimport { TaonCmsContentAssetRepository } from './taon-cms-content-asset.repository';\n//#endregion\n\n@TaonController<TaonCmsContentAssetController>({\n className: 'TaonCmsContentAssetController',\n allowedMethods: []\n})\nexport class TaonCmsContentAssetController extends TaonBaseCrudController<TaonCmsContentAssetEntity> {\n entityClassResolveFn: () => typeof TaonCmsContentAssetEntity = () => TaonCmsContentAssetEntity;\n\n taonCmsContentAssetRepository = this.injectCustomRepo(TaonCmsContentAssetRepository);\n\n //#region methods & getters / hello world\n /**\n * TODO remove this demo example method\n */\n @GET()\n helloWord(@Query('yourName') yourName: string): Taon__NS__Response<string> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n //#endregion\n}","//#region imports\nimport { TaonBaseProvider, TaonProvider, Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\nimport { ___NS__add, ___NS__after, ___NS__ary, ___NS__assign, ___NS__assignIn, ___NS__assignInWith, ___NS__assignWith, ___NS__at, ___NS__attempt, ___NS__before, ___NS__bind, ___NS__bindAll, ___NS__bindKey, ___NS__camelCase, ___NS__capitalize, ___NS__castArray, ___NS__ceil, ___NS__chain, ___NS__chunk, ___NS__clamp, ___NS__clone, ___NS__cloneDeep, ___NS__cloneDeepWith, ___NS__cloneWith, ___NS__compact, ___NS__concat, ___NS__cond, ___NS__conforms, ___NS__conformsTo, ___NS__constant, ___NS__countBy, ___NS__create, ___NS__curry, ___NS__curryRight, ___NS__debounce, ___NS__deburr, ___NS__defaults, ___NS__defaultsDeep, ___NS__defaultTo, ___NS__defer, ___NS__delay, ___NS__difference, ___NS__differenceBy, ___NS__differenceWith, ___NS__divide, ___NS__drop, ___NS__dropRight, ___NS__dropRightWhile, ___NS__dropWhile, ___NS__each, ___NS__eachRight, ___NS__endsWith, ___NS__entries, ___NS__entriesIn, ___NS__eq, ___NS__escape, ___NS__escapeRegExp, ___NS__every, ___NS__extend, ___NS__extendWith, ___NS__fill, ___NS__filter, ___NS__find, ___NS__findIndex, ___NS__findKey, ___NS__findLast, ___NS__findLastIndex, ___NS__findLastKey, ___NS__first, ___NS__flatMap, ___NS__flatMapDeep, ___NS__flatMapDepth, ___NS__flatten, ___NS__flattenDeep, ___NS__flattenDepth, ___NS__flip, ___NS__floor, ___NS__flow, ___NS__flowRight, ___NS__forEach, ___NS__forEachRight, ___NS__forIn, ___NS__forInRight, ___NS__forOwn, ___NS__forOwnRight, ___NS__fromPairs, ___NS__functions, ___NS__functionsIn, ___NS__get, ___NS__groupBy, ___NS__gt, ___NS__gte, ___NS__has, ___NS__hasIn, ___NS__head, ___NS__identity, ___NS__includes, ___NS__indexOf, ___NS__initial, ___NS__inRange, ___NS__intersection, ___NS__intersectionBy, ___NS__intersectionWith, ___NS__invert, ___NS__invertBy, ___NS__invoke, ___NS__invokeMap, ___NS__isArguments, ___NS__isArray, ___NS__isArrayBuffer, ___NS__isArrayLike, ___NS__isArrayLikeObject, ___NS__isBoolean, ___NS__isBuffer, ___NS__isDate, ___NS__isElement, ___NS__isEmpty, ___NS__isEqual, ___NS__isEqualWith, ___NS__isError, ___NS__isFinite, ___NS__isFunction, ___NS__isInteger, ___NS__isLeafObject, ___NS__isLength, ___NS__isMap, ___NS__isMatch, ___NS__isMatchWith, ___NS__isNaN, ___NS__isNative, ___NS__isNil, ___NS__isNull, ___NS__isNumber, ___NS__isObject, ___NS__isObjectLike, ___NS__isPlainObject, ___NS__isRegExp, ___NS__isSafeInteger, ___NS__isSet, ___NS__isString, ___NS__isSymbol, ___NS__isTypedArray, ___NS__isUndefined, ___NS__isWeakMap, ___NS__isWeakSet, ___NS__iteratee, ___NS__join, ___NS__kebabCase, ___NS__keyBy, ___NS__keys, ___NS__keysIn, ___NS__last, ___NS__lastIndexOf, ___NS__lowerCase, ___NS__lowerFirst, ___NS__lt, ___NS__lte, ___NS__map, ___NS__mapKeys, ___NS__mapValues, ___NS__matches, ___NS__matchesProperty, ___NS__max, ___NS__maxBy, ___NS__mean, ___NS__meanBy, ___NS__memoize, ___NS__merge, ___NS__mergeWith, ___NS__method, ___NS__methodOf, ___NS__min, ___NS__minBy, ___NS__mixin, ___NS__multiply, ___NS__negate, ___NS__noop, ___NS__now, ___NS__nth, ___NS__nthArg, ___NS__omit, ___NS__omitBy, ___NS__once, ___NS__orderBy, ___NS__over, ___NS__overArgs, ___NS__overEvery, ___NS__overSome, ___NS__pad, ___NS__padEnd, ___NS__padStart, ___NS__parseInt, ___NS__partial, ___NS__partialRight, ___NS__partition, ___NS__pick, ___NS__pickBy, ___NS__property, ___NS__propertyOf, ___NS__pull, ___NS__pullAll, ___NS__pullAllBy, ___NS__pullAllWith, ___NS__pullAt, ___NS__random, ___NS__range, ___NS__rangeRight, ___NS__rearg, ___NS__reduce, ___NS__reduceRight, ___NS__reject, ___NS__remove, ___NS__repeat, ___NS__replace, ___NS__rest, ___NS__result, ___NS__reverse, ___NS__round, ___NS__sample, ___NS__sampleSize, ___NS__set, ___NS__setWith, ___NS__shuffle, ___NS__size, ___NS__slice, ___NS__snakeCase, ___NS__some, ___NS__sortBy, ___NS__sortedIndex, ___NS__sortedIndexBy, ___NS__sortedIndexOf, ___NS__sortedLastIndex, ___NS__sortedLastIndexBy, ___NS__sortedLastIndexOf, ___NS__sortedUniq, ___NS__sortedUniqBy, ___NS__split, ___NS__spread, ___NS__startCase, ___NS__startsWith, ___NS__stubArray, ___NS__stubFalse, ___NS__stubObject, ___NS__stubString, ___NS__stubTrue, ___NS__subtract, ___NS__sum, ___NS__sumBy, ___NS__tail, ___NS__take, ___NS__takeRight, ___NS__takeRightWhile, ___NS__takeWhile, ___NS__tap, ___NS__template, ___NS__templateSettings, ___NS__throttle, ___NS__thru, ___NS__times, ___NS__toArray, ___NS__toFinite, ___NS__toInteger, ___NS__toLength, ___NS__toLower, ___NS__toNumber, ___NS__toPairs, ___NS__toPairsIn, ___NS__toPath, ___NS__toPlainObject, ___NS__toSafeInteger, ___NS__toString, ___NS__toUpper, ___NS__transform, ___NS__trim, ___NS__trimEnd, ___NS__trimStart, ___NS__truncate, ___NS__unary, ___NS__unescape, ___NS__union, ___NS__unionBy, ___NS__unionWith, ___NS__uniq, ___NS__uniqBy, ___NS__uniqueId, ___NS__uniqWith, ___NS__unset, ___NS__unzip, ___NS__unzipWith, ___NS__update, ___NS__updateWith, ___NS__upperCase, ___NS__upperFirst, ___NS__values, ___NS__valuesIn, ___NS__without, ___NS__words, ___NS__wrap, ___NS__xor, ___NS__xorBy, ___NS__xorWith, ___NS__zip, ___NS__zipObject, ___NS__zipObjectDeep, ___NS__zipWith } from 'tnp-core/browser-prod';\nimport { Injectable } from '@angular/core';\n//#endregion\n\n@TaonProvider({\n className: 'TaonCmsContentAssetProvider',\n})\n//#region @browser\n@Injectable()\n//#endregion\nexport class TaonCmsContentAssetProvider extends TaonBaseProvider {\n\n\n\n}","//#region imports\nimport { TaonBaseMiddleware, TaonMiddleware, Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\nimport { ___NS__add, ___NS__after, ___NS__ary, ___NS__assign, ___NS__assignIn, ___NS__assignInWith, ___NS__assignWith, ___NS__at, ___NS__attempt, ___NS__before, ___NS__bind, ___NS__bindAll, ___NS__bindKey, ___NS__camelCase, ___NS__capitalize, ___NS__castArray, ___NS__ceil, ___NS__chain, ___NS__chunk, ___NS__clamp, ___NS__clone, ___NS__cloneDeep, ___NS__cloneDeepWith, ___NS__cloneWith, ___NS__compact, ___NS__concat, ___NS__cond, ___NS__conforms, ___NS__conformsTo, ___NS__constant, ___NS__countBy, ___NS__create, ___NS__curry, ___NS__curryRight, ___NS__debounce, ___NS__deburr, ___NS__defaults, ___NS__defaultsDeep, ___NS__defaultTo, ___NS__defer, ___NS__delay, ___NS__difference, ___NS__differenceBy, ___NS__differenceWith, ___NS__divide, ___NS__drop, ___NS__dropRight, ___NS__dropRightWhile, ___NS__dropWhile, ___NS__each, ___NS__eachRight, ___NS__endsWith, ___NS__entries, ___NS__entriesIn, ___NS__eq, ___NS__escape, ___NS__escapeRegExp, ___NS__every, ___NS__extend, ___NS__extendWith, ___NS__fill, ___NS__filter, ___NS__find, ___NS__findIndex, ___NS__findKey, ___NS__findLast, ___NS__findLastIndex, ___NS__findLastKey, ___NS__first, ___NS__flatMap, ___NS__flatMapDeep, ___NS__flatMapDepth, ___NS__flatten, ___NS__flattenDeep, ___NS__flattenDepth, ___NS__flip, ___NS__floor, ___NS__flow, ___NS__flowRight, ___NS__forEach, ___NS__forEachRight, ___NS__forIn, ___NS__forInRight, ___NS__forOwn, ___NS__forOwnRight, ___NS__fromPairs, ___NS__functions, ___NS__functionsIn, ___NS__get, ___NS__groupBy, ___NS__gt, ___NS__gte, ___NS__has, ___NS__hasIn, ___NS__head, ___NS__identity, ___NS__includes, ___NS__indexOf, ___NS__initial, ___NS__inRange, ___NS__intersection, ___NS__intersectionBy, ___NS__intersectionWith, ___NS__invert, ___NS__invertBy, ___NS__invoke, ___NS__invokeMap, ___NS__isArguments, ___NS__isArray, ___NS__isArrayBuffer, ___NS__isArrayLike, ___NS__isArrayLikeObject, ___NS__isBoolean, ___NS__isBuffer, ___NS__isDate, ___NS__isElement, ___NS__isEmpty, ___NS__isEqual, ___NS__isEqualWith, ___NS__isError, ___NS__isFinite, ___NS__isFunction, ___NS__isInteger, ___NS__isLeafObject, ___NS__isLength, ___NS__isMap, ___NS__isMatch, ___NS__isMatchWith, ___NS__isNaN, ___NS__isNative, ___NS__isNil, ___NS__isNull, ___NS__isNumber, ___NS__isObject, ___NS__isObjectLike, ___NS__isPlainObject, ___NS__isRegExp, ___NS__isSafeInteger, ___NS__isSet, ___NS__isString, ___NS__isSymbol, ___NS__isTypedArray, ___NS__isUndefined, ___NS__isWeakMap, ___NS__isWeakSet, ___NS__iteratee, ___NS__join, ___NS__kebabCase, ___NS__keyBy, ___NS__keys, ___NS__keysIn, ___NS__last, ___NS__lastIndexOf, ___NS__lowerCase, ___NS__lowerFirst, ___NS__lt, ___NS__lte, ___NS__map, ___NS__mapKeys, ___NS__mapValues, ___NS__matches, ___NS__matchesProperty, ___NS__max, ___NS__maxBy, ___NS__mean, ___NS__meanBy, ___NS__memoize, ___NS__merge, ___NS__mergeWith, ___NS__method, ___NS__methodOf, ___NS__min, ___NS__minBy, ___NS__mixin, ___NS__multiply, ___NS__negate, ___NS__noop, ___NS__now, ___NS__nth, ___NS__nthArg, ___NS__omit, ___NS__omitBy, ___NS__once, ___NS__orderBy, ___NS__over, ___NS__overArgs, ___NS__overEvery, ___NS__overSome, ___NS__pad, ___NS__padEnd, ___NS__padStart, ___NS__parseInt, ___NS__partial, ___NS__partialRight, ___NS__partition, ___NS__pick, ___NS__pickBy, ___NS__property, ___NS__propertyOf, ___NS__pull, ___NS__pullAll, ___NS__pullAllBy, ___NS__pullAllWith, ___NS__pullAt, ___NS__random, ___NS__range, ___NS__rangeRight, ___NS__rearg, ___NS__reduce, ___NS__reduceRight, ___NS__reject, ___NS__remove, ___NS__repeat, ___NS__replace, ___NS__rest, ___NS__result, ___NS__reverse, ___NS__round, ___NS__sample, ___NS__sampleSize, ___NS__set, ___NS__setWith, ___NS__shuffle, ___NS__size, ___NS__slice, ___NS__snakeCase, ___NS__some, ___NS__sortBy, ___NS__sortedIndex, ___NS__sortedIndexBy, ___NS__sortedIndexOf, ___NS__sortedLastIndex, ___NS__sortedLastIndexBy, ___NS__sortedLastIndexOf, ___NS__sortedUniq, ___NS__sortedUniqBy, ___NS__split, ___NS__spread, ___NS__startCase, ___NS__startsWith, ___NS__stubArray, ___NS__stubFalse, ___NS__stubObject, ___NS__stubString, ___NS__stubTrue, ___NS__subtract, ___NS__sum, ___NS__sumBy, ___NS__tail, ___NS__take, ___NS__takeRight, ___NS__takeRightWhile, ___NS__takeWhile, ___NS__tap, ___NS__template, ___NS__templateSettings, ___NS__throttle, ___NS__thru, ___NS__times, ___NS__toArray, ___NS__toFinite, ___NS__toInteger, ___NS__toLength, ___NS__toLower, ___NS__toNumber, ___NS__toPairs, ___NS__toPairsIn, ___NS__toPath, ___NS__toPlainObject, ___NS__toSafeInteger, ___NS__toString, ___NS__toUpper, ___NS__transform, ___NS__trim, ___NS__trimEnd, ___NS__trimStart, ___NS__truncate, ___NS__unary, ___NS__unescape, ___NS__union, ___NS__unionBy, ___NS__unionWith, ___NS__uniq, ___NS__uniqBy, ___NS__uniqueId, ___NS__uniqWith, ___NS__unset, ___NS__unzip, ___NS__unzipWith, ___NS__update, ___NS__updateWith, ___NS__upperCase, ___NS__upperFirst, ___NS__values, ___NS__valuesIn, ___NS__without, ___NS__words, ___NS__wrap, ___NS__xor, ___NS__xorBy, ___NS__xorWith, ___NS__zip, ___NS__zipObject, ___NS__zipObjectDeep, ___NS__zipWith } from 'tnp-core/browser-prod';\n//#endregion\n\n@TaonMiddleware({\n className: 'TaonCmsContentAssetMiddleware',\n})\nexport class TaonCmsContentAssetMiddleware extends TaonBaseMiddleware {}","//#region imports\nimport { TaonBaseSubscriberForEntity, TaonSubscriber } from 'taon/browser-prod';\nimport { TaonCmsContentAssetEntity } from './taon-cms-content-asset.entity';\nimport { TaonCmsContentAssetProvider } from './taon-cms-content-asset.provider';\n//#endregion\n\n@TaonSubscriber<TaonCmsContentAssetSubscriber>({\n className: 'TaonCmsContentAssetSubscriber',\n // allowedEvents: ['afterUpdate'],\n})\nexport class TaonCmsContentAssetSubscriber extends TaonBaseSubscriberForEntity {\n taonCmsContentAssetProvider = this.injectProvider(TaonCmsContentAssetProvider);\n listenTo(): typeof TaonCmsContentAssetEntity {\n return TaonCmsContentAssetEntity;\n }\n}","//#region imports\nimport { createContext, TaonBaseContext } from 'taon/browser-prod';\n\nimport { TaonCmsContentAssetEntity } from './taon-cms-content-asset.entity';\nimport { TaonCmsContentAssetController } from './taon-cms-content-asset.controller';\nimport { TaonCmsContentAssetRepository } from './taon-cms-content-asset.repository';\nimport { TaonCmsContentAssetProvider } from './taon-cms-content-asset.provider';\nimport { TaonCmsContentAssetMiddleware } from './taon-cms-content-asset.middleware';\nimport { TaonCmsContentAssetSubscriber } from './taon-cms-content-asset.subscriber';\n//#endregion\n\nexport const TaonCmsContentAssetAbstractContext = createContext(() => ({\n contextName: 'TaonCmsContentAssetAbstractContext',\n abstract: true,\n contexts: { TaonBaseContext },\n entities: { TaonCmsContentAssetEntity },\n controllers: { TaonCmsContentAssetController },\n repositories: { TaonCmsContentAssetRepository },\n providers: { TaonCmsContentAssetProvider },\n middlewares: { TaonCmsContentAssetMiddleware },\n subscribers: { TaonCmsContentAssetSubscriber },\n}));\n","//#region imports\nimport { Column, CustomColumn, PrimaryGeneratedColumn, TaonBaseAbstractEntity, TaonBaseEntity, TaonEntity, Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\nimport { ___NS__add, ___NS__after, ___NS__ary, ___NS__assign, ___NS__assignIn, ___NS__assignInWith, ___NS__assignWith, ___NS__at, ___NS__attempt, ___NS__before, ___NS__bind, ___NS__bindAll, ___NS__bindKey, ___NS__camelCase, ___NS__capitalize, ___NS__castArray, ___NS__ceil, ___NS__chain, ___NS__chunk, ___NS__clamp, ___NS__clone, ___NS__cloneDeep, ___NS__cloneDeepWith, ___NS__cloneWith, ___NS__compact, ___NS__concat, ___NS__cond, ___NS__conforms, ___NS__conformsTo, ___NS__constant, ___NS__countBy, ___NS__create, ___NS__curry, ___NS__curryRight, ___NS__debounce, ___NS__deburr, ___NS__defaults, ___NS__defaultsDeep, ___NS__defaultTo, ___NS__defer, ___NS__delay, ___NS__difference, ___NS__differenceBy, ___NS__differenceWith, ___NS__divide, ___NS__drop, ___NS__dropRight, ___NS__dropRightWhile, ___NS__dropWhile, ___NS__each, ___NS__eachRight, ___NS__endsWith, ___NS__entries, ___NS__entriesIn, ___NS__eq, ___NS__escape, ___NS__escapeRegExp, ___NS__every, ___NS__extend, ___NS__extendWith, ___NS__fill, ___NS__filter, ___NS__find, ___NS__findIndex, ___NS__findKey, ___NS__findLast, ___NS__findLastIndex, ___NS__findLastKey, ___NS__first, ___NS__flatMap, ___NS__flatMapDeep, ___NS__flatMapDepth, ___NS__flatten, ___NS__flattenDeep, ___NS__flattenDepth, ___NS__flip, ___NS__floor, ___NS__flow, ___NS__flowRight, ___NS__forEach, ___NS__forEachRight, ___NS__forIn, ___NS__forInRight, ___NS__forOwn, ___NS__forOwnRight, ___NS__fromPairs, ___NS__functions, ___NS__functionsIn, ___NS__get, ___NS__groupBy, ___NS__gt, ___NS__gte, ___NS__has, ___NS__hasIn, ___NS__head, ___NS__identity, ___NS__includes, ___NS__indexOf, ___NS__initial, ___NS__inRange, ___NS__intersection, ___NS__intersectionBy, ___NS__intersectionWith, ___NS__invert, ___NS__invertBy, ___NS__invoke, ___NS__invokeMap, ___NS__isArguments, ___NS__isArray, ___NS__isArrayBuffer, ___NS__isArrayLike, ___NS__isArrayLikeObject, ___NS__isBoolean, ___NS__isBuffer, ___NS__isDate, ___NS__isElement, ___NS__isEmpty, ___NS__isEqual, ___NS__isEqualWith, ___NS__isError, ___NS__isFinite, ___NS__isFunction, ___NS__isInteger, ___NS__isLeafObject, ___NS__isLength, ___NS__isMap, ___NS__isMatch, ___NS__isMatchWith, ___NS__isNaN, ___NS__isNative, ___NS__isNil, ___NS__isNull, ___NS__isNumber, ___NS__isObject, ___NS__isObjectLike, ___NS__isPlainObject, ___NS__isRegExp, ___NS__isSafeInteger, ___NS__isSet, ___NS__isString, ___NS__isSymbol, ___NS__isTypedArray, ___NS__isUndefined, ___NS__isWeakMap, ___NS__isWeakSet, ___NS__iteratee, ___NS__join, ___NS__kebabCase, ___NS__keyBy, ___NS__keys, ___NS__keysIn, ___NS__last, ___NS__lastIndexOf, ___NS__lowerCase, ___NS__lowerFirst, ___NS__lt, ___NS__lte, ___NS__map, ___NS__mapKeys, ___NS__mapValues, ___NS__matches, ___NS__matchesProperty, ___NS__max, ___NS__maxBy, ___NS__mean, ___NS__meanBy, ___NS__memoize, ___NS__merge, ___NS__mergeWith, ___NS__method, ___NS__methodOf, ___NS__min, ___NS__minBy, ___NS__mixin, ___NS__multiply, ___NS__negate, ___NS__noop, ___NS__now, ___NS__nth, ___NS__nthArg, ___NS__omit, ___NS__omitBy, ___NS__once, ___NS__orderBy, ___NS__over, ___NS__overArgs, ___NS__overEvery, ___NS__overSome, ___NS__pad, ___NS__padEnd, ___NS__padStart, ___NS__parseInt, ___NS__partial, ___NS__partialRight, ___NS__partition, ___NS__pick, ___NS__pickBy, ___NS__property, ___NS__propertyOf, ___NS__pull, ___NS__pullAll, ___NS__pullAllBy, ___NS__pullAllWith, ___NS__pullAt, ___NS__random, ___NS__range, ___NS__rangeRight, ___NS__rearg, ___NS__reduce, ___NS__reduceRight, ___NS__reject, ___NS__remove, ___NS__repeat, ___NS__replace, ___NS__rest, ___NS__result, ___NS__reverse, ___NS__round, ___NS__sample, ___NS__sampleSize, ___NS__set, ___NS__setWith, ___NS__shuffle, ___NS__size, ___NS__slice, ___NS__snakeCase, ___NS__some, ___NS__sortBy, ___NS__sortedIndex, ___NS__sortedIndexBy, ___NS__sortedIndexOf, ___NS__sortedLastIndex, ___NS__sortedLastIndexBy, ___NS__sortedLastIndexOf, ___NS__sortedUniq, ___NS__sortedUniqBy, ___NS__split, ___NS__spread, ___NS__startCase, ___NS__startsWith, ___NS__stubArray, ___NS__stubFalse, ___NS__stubObject, ___NS__stubString, ___NS__stubTrue, ___NS__subtract, ___NS__sum, ___NS__sumBy, ___NS__tail, ___NS__take, ___NS__takeRight, ___NS__takeRightWhile, ___NS__takeWhile, ___NS__tap, ___NS__template, ___NS__templateSettings, ___NS__throttle, ___NS__thru, ___NS__times, ___NS__toArray, ___NS__toFinite, ___NS__toInteger, ___NS__toLength, ___NS__toLower, ___NS__toNumber, ___NS__toPairs, ___NS__toPairsIn, ___NS__toPath, ___NS__toPlainObject, ___NS__toSafeInteger, ___NS__toString, ___NS__toUpper, ___NS__transform, ___NS__trim, ___NS__trimEnd, ___NS__trimStart, ___NS__truncate, ___NS__unary, ___NS__unescape, ___NS__union, ___NS__unionBy, ___NS__unionWith, ___NS__uniq, ___NS__uniqBy, ___NS__uniqueId, ___NS__uniqWith, ___NS__unset, ___NS__unzip, ___NS__unzipWith, ___NS__update, ___NS__updateWith, ___NS__upperCase, ___NS__upperFirst, ___NS__values, ___NS__valuesIn, ___NS__without, ___NS__words, ___NS__wrap, ___NS__xor, ___NS__xorBy, ___NS__xorWith, ___NS__zip, ___NS__zipObject, ___NS__zipObjectDeep, ___NS__zipWith } from 'tnp-core/browser-prod';\n\nimport { TaonCmsContentPermissionDefaultsValues } from './taon-cms-content-permission.constants';\n//#endregion\n\n@TaonEntity({\n className: 'TaonCmsContentPermissionEntity',\n createTable: true,\n})\nexport class TaonCmsContentPermissionEntity extends TaonBaseEntity<TaonCmsContentPermissionEntity> {\n @PrimaryGeneratedColumn()\n id: number;\n\n @Column({ type: 'integer', default: 0 })\n version: number;\n\n @Column({ type: 'integer' })\n contentId: number;\n\n @Column({ type: 'varchar' })\n type: string;\n // public | authenticated | permission | role |\n // purchase | subscription\n\n @Column({ type: 'integer', nullable: true })\n permissionId: number | null;\n\n @Column({ type: 'integer', nullable: true })\n roleId: number | null;\n\n @Column({ type: 'integer', nullable: true })\n productId: number | null;\n\n @Column({ type: 'varchar', nullable: true })\n stripePriceId: string | null;\n\n @Column({ type: 'simple-json', nullable: true })\n config: Record<string, any> | null;\n\n @Column({ type: 'datetime' })\n createdAt: Date;\n}","//#region imports\nimport { TaonBaseRepository, TaonRepository } from 'taon/browser-prod';\nimport { Raw } from 'taon-typeorm/browser-prod';\n\nimport { TaonCmsContentPermissionEntity } from './taon-cms-content-permission.entity';\n//#endregion\n\n@TaonRepository({\n className: 'TaonCmsContentPermissionRepository',\n})\nexport class TaonCmsContentPermissionRepository extends TaonBaseRepository<TaonCmsContentPermissionEntity> {\n entityClassResolveFn: () => typeof TaonCmsContentPermissionEntity = () => TaonCmsContentPermissionEntity;\n\n /**\n * TODO remove this demo example method\n */\n async countEntitesWithEvenId(): Promise<number> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n}","//#region imports\nimport { TaonController, TaonBaseCrudController, Query, GET, ClassHelpers__NS__asyncHandler, ClassHelpers__NS__ensureClassConfig, ClassHelpers__NS__ensureMethodConfig, ClassHelpers__NS__getClassConfig, ClassHelpers__NS__getClassFnFromObject, ClassHelpers__NS__getControllerConfigs, ClassHelpers__NS__getFullInternalName, ClassHelpers__NS__getMethodsNames, ClassHelpers__NS__getName, ClassHelpers__NS__getOrginalClass, ClassHelpers__NS__getUniqueKey, ClassHelpers__NS__hasParentClassWithName, ClassHelpers__NS__isContextClassObject, ClassHelpers__NS__mapFnError, ClassHelpers__NS__setName, Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\nimport { ___NS__add, ___NS__after, ___NS__ary, ___NS__assign, ___NS__assignIn, ___NS__assignInWith, ___NS__assignWith, ___NS__at, ___NS__attempt, ___NS__before, ___NS__bind, ___NS__bindAll, ___NS__bindKey, ___NS__camelCase, ___NS__capitalize, ___NS__castArray, ___NS__ceil, ___NS__chain, ___NS__chunk, ___NS__clamp, ___NS__clone, ___NS__cloneDeep, ___NS__cloneDeepWith, ___NS__cloneWith, ___NS__compact, ___NS__concat, ___NS__cond, ___NS__conforms, ___NS__conformsTo, ___NS__constant, ___NS__countBy, ___NS__create, ___NS__curry, ___NS__curryRight, ___NS__debounce, ___NS__deburr, ___NS__defaults, ___NS__defaultsDeep, ___NS__defaultTo, ___NS__defer, ___NS__delay, ___NS__difference, ___NS__differenceBy, ___NS__differenceWith, ___NS__divide, ___NS__drop, ___NS__dropRight, ___NS__dropRightWhile, ___NS__dropWhile, ___NS__each, ___NS__eachRight, ___NS__endsWith, ___NS__entries, ___NS__entriesIn, ___NS__eq, ___NS__escape, ___NS__escapeRegExp, ___NS__every, ___NS__extend, ___NS__extendWith, ___NS__fill, ___NS__filter, ___NS__find, ___NS__findIndex, ___NS__findKey, ___NS__findLast, ___NS__findLastIndex, ___NS__findLastKey, ___NS__first, ___NS__flatMap, ___NS__flatMapDeep, ___NS__flatMapDepth, ___NS__flatten, ___NS__flattenDeep, ___NS__flattenDepth, ___NS__flip, ___NS__floor, ___NS__flow, ___NS__flowRight, ___NS__forEach, ___NS__forEachRight, ___NS__forIn, ___NS__forInRight, ___NS__forOwn, ___NS__forOwnRight, ___NS__fromPairs, ___NS__functions, ___NS__functionsIn, ___NS__get, ___NS__groupBy, ___NS__gt, ___NS__gte, ___NS__has, ___NS__hasIn, ___NS__head, ___NS__identity, ___NS__includes, ___NS__indexOf, ___NS__initial, ___NS__inRange, ___NS__intersection, ___NS__intersectionBy, ___NS__intersectionWith, ___NS__invert, ___NS__invertBy, ___NS__invoke, ___NS__invokeMap, ___NS__isArguments, ___NS__isArray, ___NS__isArrayBuffer, ___NS__isArrayLike, ___NS__isArrayLikeObject, ___NS__isBoolean, ___NS__isBuffer, ___NS__isDate, ___NS__isElement, ___NS__isEmpty, ___NS__isEqual, ___NS__isEqualWith, ___NS__isError, ___NS__isFinite, ___NS__isFunction, ___NS__isInteger, ___NS__isLeafObject, ___NS__isLength, ___NS__isMap, ___NS__isMatch, ___NS__isMatchWith, ___NS__isNaN, ___NS__isNative, ___NS__isNil, ___NS__isNull, ___NS__isNumber, ___NS__isObject, ___NS__isObjectLike, ___NS__isPlainObject, ___NS__isRegExp, ___NS__isSafeInteger, ___NS__isSet, ___NS__isString, ___NS__isSymbol, ___NS__isTypedArray, ___NS__isUndefined, ___NS__isWeakMap, ___NS__isWeakSet, ___NS__iteratee, ___NS__join, ___NS__kebabCase, ___NS__keyBy, ___NS__keys, ___NS__keysIn, ___NS__last, ___NS__lastIndexOf, ___NS__lowerCase, ___NS__lowerFirst, ___NS__lt, ___NS__lte, ___NS__map, ___NS__mapKeys, ___NS__mapValues, ___NS__matches, ___NS__matchesProperty, ___NS__max, ___NS__maxBy, ___NS__mean, ___NS__meanBy, ___NS__memoize, ___NS__merge, ___NS__mergeWith, ___NS__method, ___NS__methodOf, ___NS__min, ___NS__minBy, ___NS__mixin, ___NS__multiply, ___NS__negate, ___NS__noop, ___NS__now, ___NS__nth, ___NS__nthArg, ___NS__omit, ___NS__omitBy, ___NS__once, ___NS__orderBy, ___NS__over, ___NS__overArgs, ___NS__overEvery, ___NS__overSome, ___NS__pad, ___NS__padEnd, ___NS__padStart, ___NS__parseInt, ___NS__partial, ___NS__partialRight, ___NS__partition, ___NS__pick, ___NS__pickBy, ___NS__property, ___NS__propertyOf, ___NS__pull, ___NS__pullAll, ___NS__pullAllBy, ___NS__pullAllWith, ___NS__pullAt, ___NS__random, ___NS__range, ___NS__rangeRight, ___NS__rearg, ___NS__reduce, ___NS__reduceRight, ___NS__reject, ___NS__remove, ___NS__repeat, ___NS__replace, ___NS__rest, ___NS__result, ___NS__reverse, ___NS__round, ___NS__sample, ___NS__sampleSize, ___NS__set, ___NS__setWith, ___NS__shuffle, ___NS__size, ___NS__slice, ___NS__snakeCase, ___NS__some, ___NS__sortBy, ___NS__sortedIndex, ___NS__sortedIndexBy, ___NS__sortedIndexOf, ___NS__sortedLastIndex, ___NS__sortedLastIndexBy, ___NS__sortedLastIndexOf, ___NS__sortedUniq, ___NS__sortedUniqBy, ___NS__split, ___NS__spread, ___NS__startCase, ___NS__startsWith, ___NS__stubArray, ___NS__stubFalse, ___NS__stubObject, ___NS__stubString, ___NS__stubTrue, ___NS__subtract, ___NS__sum, ___NS__sumBy, ___NS__tail, ___NS__take, ___NS__takeRight, ___NS__takeRightWhile, ___NS__takeWhile, ___NS__tap, ___NS__template, ___NS__templateSettings, ___NS__throttle, ___NS__thru, ___NS__times, ___NS__toArray, ___NS__toFinite, ___NS__toInteger, ___NS__toLength, ___NS__toLower, ___NS__toNumber, ___NS__toPairs, ___NS__toPairsIn, ___NS__toPath, ___NS__toPlainObject, ___NS__toSafeInteger, ___NS__toString, ___NS__toUpper, ___NS__transform, ___NS__trim, ___NS__trimEnd, ___NS__trimStart, ___NS__truncate, ___NS__unary, ___NS__unescape, ___NS__union, ___NS__unionBy, ___NS__unionWith, ___NS__uniq, ___NS__uniqBy, ___NS__uniqueId, ___NS__uniqWith, ___NS__unset, ___NS__unzip, ___NS__unzipWith, ___NS__update, ___NS__updateWith, ___NS__upperCase, ___NS__upperFirst, ___NS__values, ___NS__valuesIn, ___NS__without, ___NS__words, ___NS__wrap, ___NS__xor, ___NS__xorBy, ___NS__xorWith, ___NS__zip, ___NS__zipObject, ___NS__zipObjectDeep, ___NS__zipWith } from 'tnp-core/browser-prod';\n\nimport { TaonCmsContentPermissionEntity } from './taon-cms-content-permission.entity';\nimport { TaonCmsContentPermissionRepository } from './taon-cms-content-permission.repository';\n//#endregion\n\n@TaonController<TaonCmsContentPermissionController>({\n className: 'TaonCmsContentPermissionController',\n allowedMethods: []\n})\nexport class TaonCmsContentPermissionController extends TaonBaseCrudController<TaonCmsContentPermissionEntity> {\n entityClassResolveFn: () => typeof TaonCmsContentPermissionEntity = () => TaonCmsContentPermissionEntity;\n\n taonCmsContentPermissionRepository = this.injectCustomRepo(TaonCmsContentPermissionRepository);\n\n //#region methods & getters / hello world\n /**\n * TODO remove this demo example method\n */\n @GET()\n helloWord(@Query('yourName') yourName: string): Taon__NS__Response<string> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n //#endregion\n}","//#region imports\nimport { TaonBaseProvider, TaonProvider, Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\nimport { ___NS__add, ___NS__after, ___NS__ary, ___NS__assign, ___NS__assignIn, ___NS__assignInWith, ___NS__assignWith, ___NS__at, ___NS__attempt, ___NS__before, ___NS__bind, ___NS__bindAll, ___NS__bindKey, ___NS__camelCase, ___NS__capitalize, ___NS__castArray, ___NS__ceil, ___NS__chain, ___NS__chunk, ___NS__clamp, ___NS__clone, ___NS__cloneDeep, ___NS__cloneDeepWith, ___NS__cloneWith, ___NS__compact, ___NS__concat, ___NS__cond, ___NS__conforms, ___NS__conformsTo, ___NS__constant, ___NS__countBy, ___NS__create, ___NS__curry, ___NS__curryRight, ___NS__debounce, ___NS__deburr, ___NS__defaults, ___NS__defaultsDeep, ___NS__defaultTo, ___NS__defer, ___NS__delay, ___NS__difference, ___NS__differenceBy, ___NS__differenceWith, ___NS__divide, ___NS__drop, ___NS__dropRight, ___NS__dropRightWhile, ___NS__dropWhile, ___NS__each, ___NS__eachRight, ___NS__endsWith, ___NS__entries, ___NS__entriesIn, ___NS__eq, ___NS__escape, ___NS__escapeRegExp, ___NS__every, ___NS__extend, ___NS__extendWith, ___NS__fill, ___NS__filter, ___NS__find, ___NS__findIndex, ___NS__findKey, ___NS__findLast, ___NS__findLastIndex, ___NS__findLastKey, ___NS__first, ___NS__flatMap, ___NS__flatMapDeep, ___NS__flatMapDepth, ___NS__flatten, ___NS__flattenDeep, ___NS__flattenDepth, ___NS__flip, ___NS__floor, ___NS__flow, ___NS__flowRight, ___NS__forEach, ___NS__forEachRight, ___NS__forIn, ___NS__forInRight, ___NS__forOwn, ___NS__forOwnRight, ___NS__fromPairs, ___NS__functions, ___NS__functionsIn, ___NS__get, ___NS__groupBy, ___NS__gt, ___NS__gte, ___NS__has, ___NS__hasIn, ___NS__head, ___NS__identity, ___NS__includes, ___NS__indexOf, ___NS__initial, ___NS__inRange, ___NS__intersection, ___NS__intersectionBy, ___NS__intersectionWith, ___NS__invert, ___NS__invertBy, ___NS__invoke, ___NS__invokeMap, ___NS__isArguments, ___NS__isArray, ___NS__isArrayBuffer, ___NS__isArrayLike, ___NS__isArrayLikeObject, ___NS__isBoolean, ___NS__isBuffer, ___NS__isDate, ___NS__isElement, ___NS__isEmpty, ___NS__isEqual, ___NS__isEqualWith, ___NS__isError, ___NS__isFinite, ___NS__isFunction, ___NS__isInteger, ___NS__isLeafObject, ___NS__isLength, ___NS__isMap, ___NS__isMatch, ___NS__isMatchWith, ___NS__isNaN, ___NS__isNative, ___NS__isNil, ___NS__isNull, ___NS__isNumber, ___NS__isObject, ___NS__isObjectLike, ___NS__isPlainObject, ___NS__isRegExp, ___NS__isSafeInteger, ___NS__isSet, ___NS__isString, ___NS__isSymbol, ___NS__isTypedArray, ___NS__isUndefined, ___NS__isWeakMap, ___NS__isWeakSet, ___NS__iteratee, ___NS__join, ___NS__kebabCase, ___NS__keyBy, ___NS__keys, ___NS__keysIn, ___NS__last, ___NS__lastIndexOf, ___NS__lowerCase, ___NS__lowerFirst, ___NS__lt, ___NS__lte, ___NS__map, ___NS__mapKeys, ___NS__mapValues, ___NS__matches, ___NS__matchesProperty, ___NS__max, ___NS__maxBy, ___NS__mean, ___NS__meanBy, ___NS__memoize, ___NS__merge, ___NS__mergeWith, ___NS__method, ___NS__methodOf, ___NS__min, ___NS__minBy, ___NS__mixin, ___NS__multiply, ___NS__negate, ___NS__noop, ___NS__now, ___NS__nth, ___NS__nthArg, ___NS__omit, ___NS__omitBy, ___NS__once, ___NS__orderBy, ___NS__over, ___NS__overArgs, ___NS__overEvery, ___NS__overSome, ___NS__pad, ___NS__padEnd, ___NS__padStart, ___NS__parseInt, ___NS__partial, ___NS__partialRight, ___NS__partition, ___NS__pick, ___NS__pickBy, ___NS__property, ___NS__propertyOf, ___NS__pull, ___NS__pullAll, ___NS__pullAllBy, ___NS__pullAllWith, ___NS__pullAt, ___NS__random, ___NS__range, ___NS__rangeRight, ___NS__rearg, ___NS__reduce, ___NS__reduceRight, ___NS__reject, ___NS__remove, ___NS__repeat, ___NS__replace, ___NS__rest, ___NS__result, ___NS__reverse, ___NS__round, ___NS__sample, ___NS__sampleSize, ___NS__set, ___NS__setWith, ___NS__shuffle, ___NS__size, ___NS__slice, ___NS__snakeCase, ___NS__some, ___NS__sortBy, ___NS__sortedIndex, ___NS__sortedIndexBy, ___NS__sortedIndexOf, ___NS__sortedLastIndex, ___NS__sortedLastIndexBy, ___NS__sortedLastIndexOf, ___NS__sortedUniq, ___NS__sortedUniqBy, ___NS__split, ___NS__spread, ___NS__startCase, ___NS__startsWith, ___NS__stubArray, ___NS__stubFalse, ___NS__stubObject, ___NS__stubString, ___NS__stubTrue, ___NS__subtract, ___NS__sum, ___NS__sumBy, ___NS__tail, ___NS__take, ___NS__takeRight, ___NS__takeRightWhile, ___NS__takeWhile, ___NS__tap, ___NS__template, ___NS__templateSettings, ___NS__throttle, ___NS__thru, ___NS__times, ___NS__toArray, ___NS__toFinite, ___NS__toInteger, ___NS__toLength, ___NS__toLower, ___NS__toNumber, ___NS__toPairs, ___NS__toPairsIn, ___NS__toPath, ___NS__toPlainObject, ___NS__toSafeInteger, ___NS__toString, ___NS__toUpper, ___NS__transform, ___NS__trim, ___NS__trimEnd, ___NS__trimStart, ___NS__truncate, ___NS__unary, ___NS__unescape, ___NS__union, ___NS__unionBy, ___NS__unionWith, ___NS__uniq, ___NS__uniqBy, ___NS__uniqueId, ___NS__uniqWith, ___NS__unset, ___NS__unzip, ___NS__unzipWith, ___NS__update, ___NS__updateWith, ___NS__upperCase, ___NS__upperFirst, ___NS__values, ___NS__valuesIn, ___NS__without, ___NS__words, ___NS__wrap, ___NS__xor, ___NS__xorBy, ___NS__xorWith, ___NS__zip, ___NS__zipObject, ___NS__zipObjectDeep, ___NS__zipWith } from 'tnp-core/browser-prod';\nimport { Injectable } from '@angular/core';\n//#endregion\n\n@TaonProvider({\n className: 'TaonCmsContentPermissionProvider',\n})\n//#region @browser\n@Injectable()\n//#endregion\nexport class TaonCmsContentPermissionProvider extends TaonBaseProvider {\n\n\n\n}","//#region imports\nimport { TaonBaseMiddleware, TaonMiddleware, Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\nimport { ___NS__add, ___NS__after, ___NS__ary, ___NS__assign, ___NS__assignIn, ___NS__assignInWith, ___NS__assignWith, ___NS__at, ___NS__attempt, ___NS__before, ___NS__bind, ___NS__bindAll, ___NS__bindKey, ___NS__camelCase, ___NS__capitalize, ___NS__castArray, ___NS__ceil, ___NS__chain, ___NS__chunk, ___NS__clamp, ___NS__clone, ___NS__cloneDeep, ___NS__cloneDeepWith, ___NS__cloneWith, ___NS__compact, ___NS__concat, ___NS__cond, ___NS__conforms, ___NS__conformsTo, ___NS__constant, ___NS__countBy, ___NS__create, ___NS__curry, ___NS__curryRight, ___NS__debounce, ___NS__deburr, ___NS__defaults, ___NS__defaultsDeep, ___NS__defaultTo, ___NS__defer, ___NS__delay, ___NS__difference, ___NS__differenceBy, ___NS__differenceWith, ___NS__divide, ___NS__drop, ___NS__dropRight, ___NS__dropRightWhile, ___NS__dropWhile, ___NS__each, ___NS__eachRight, ___NS__endsWith, ___NS__entries, ___NS__entriesIn, ___NS__eq, ___NS__escape, ___NS__escapeRegExp, ___NS__every, ___NS__extend, ___NS__extendWith, ___NS__fill, ___NS__filter, ___NS__find, ___NS__findIndex, ___NS__findKey, ___NS__findLast, ___NS__findLastIndex, ___NS__findLastKey, ___NS__first, ___NS__flatMap, ___NS__flatMapDeep, ___NS__flatMapDepth, ___NS__flatten, ___NS__flattenDeep, ___NS__flattenDepth, ___NS__flip, ___NS__floor, ___NS__flow, ___NS__flowRight, ___NS__forEach, ___NS__forEachRight, ___NS__forIn, ___NS__forInRight, ___NS__forOwn, ___NS__forOwnRight, ___NS__fromPairs, ___NS__functions, ___NS__functionsIn, ___NS__get, ___NS__groupBy, ___NS__gt, ___NS__gte, ___NS__has, ___NS__hasIn, ___NS__head, ___NS__identity, ___NS__includes, ___NS__indexOf, ___NS__initial, ___NS__inRange, ___NS__intersection, ___NS__intersectionBy, ___NS__intersectionWith, ___NS__invert, ___NS__invertBy, ___NS__invoke, ___NS__invokeMap, ___NS__isArguments, ___NS__isArray, ___NS__isArrayBuffer, ___NS__isArrayLike, ___NS__isArrayLikeObject, ___NS__isBoolean, ___NS__isBuffer, ___NS__isDate, ___NS__isElement, ___NS__isEmpty, ___NS__isEqual, ___NS__isEqualWith, ___NS__isError, ___NS__isFinite, ___NS__isFunction, ___NS__isInteger, ___NS__isLeafObject, ___NS__isLength, ___NS__isMap, ___NS__isMatch, ___NS__isMatchWith, ___NS__isNaN, ___NS__isNative, ___NS__isNil, ___NS__isNull, ___NS__isNumber, ___NS__isObject, ___NS__isObjectLike, ___NS__isPlainObject, ___NS__isRegExp, ___NS__isSafeInteger, ___NS__isSet, ___NS__isString, ___NS__isSymbol, ___NS__isTypedArray, ___NS__isUndefined, ___NS__isWeakMap, ___NS__isWeakSet, ___NS__iteratee, ___NS__join, ___NS__kebabCase, ___NS__keyBy, ___NS__keys, ___NS__keysIn, ___NS__last, ___NS__lastIndexOf, ___NS__lowerCase, ___NS__lowerFirst, ___NS__lt, ___NS__lte, ___NS__map, ___NS__mapKeys, ___NS__mapValues, ___NS__matches, ___NS__matchesProperty, ___NS__max, ___NS__maxBy, ___NS__mean, ___NS__meanBy, ___NS__memoize, ___NS__merge, ___NS__mergeWith, ___NS__method, ___NS__methodOf, ___NS__min, ___NS__minBy, ___NS__mixin, ___NS__multiply, ___NS__negate, ___NS__noop, ___NS__now, ___NS__nth, ___NS__nthArg, ___NS__omit, ___NS__omitBy, ___NS__once, ___NS__orderBy, ___NS__over, ___NS__overArgs, ___NS__overEvery, ___NS__overSome, ___NS__pad, ___NS__padEnd, ___NS__padStart, ___NS__parseInt, ___NS__partial, ___NS__partialRight, ___NS__partition, ___NS__pick, ___NS__pickBy, ___NS__property, ___NS__propertyOf, ___NS__pull, ___NS__pullAll, ___NS__pullAllBy, ___NS__pullAllWith, ___NS__pullAt, ___NS__random, ___NS__range, ___NS__rangeRight, ___NS__rearg, ___NS__reduce, ___NS__reduceRight, ___NS__reject, ___NS__remove, ___NS__repeat, ___NS__replace, ___NS__rest, ___NS__result, ___NS__reverse, ___NS__round, ___NS__sample, ___NS__sampleSize, ___NS__set, ___NS__setWith, ___NS__shuffle, ___NS__size, ___NS__slice, ___NS__snakeCase, ___NS__some, ___NS__sortBy, ___NS__sortedIndex, ___NS__sortedIndexBy, ___NS__sortedIndexOf, ___NS__sortedLastIndex, ___NS__sortedLastIndexBy, ___NS__sortedLastIndexOf, ___NS__sortedUniq, ___NS__sortedUniqBy, ___NS__split, ___NS__spread, ___NS__startCase, ___NS__startsWith, ___NS__stubArray, ___NS__stubFalse, ___NS__stubObject, ___NS__stubString, ___NS__stubTrue, ___NS__subtract, ___NS__sum, ___NS__sumBy, ___NS__tail, ___NS__take, ___NS__takeRight, ___NS__takeRightWhile, ___NS__takeWhile, ___NS__tap, ___NS__template, ___NS__templateSettings, ___NS__throttle, ___NS__thru, ___NS__times, ___NS__toArray, ___NS__toFinite, ___NS__toInteger, ___NS__toLength, ___NS__toLower, ___NS__toNumber, ___NS__toPairs, ___NS__toPairsIn, ___NS__toPath, ___NS__toPlainObject, ___NS__toSafeInteger, ___NS__toString, ___NS__toUpper, ___NS__transform, ___NS__trim, ___NS__trimEnd, ___NS__trimStart, ___NS__truncate, ___NS__unary, ___NS__unescape, ___NS__union, ___NS__unionBy, ___NS__unionWith, ___NS__uniq, ___NS__uniqBy, ___NS__uniqueId, ___NS__uniqWith, ___NS__unset, ___NS__unzip, ___NS__unzipWith, ___NS__update, ___NS__updateWith, ___NS__upperCase, ___NS__upperFirst, ___NS__values, ___NS__valuesIn, ___NS__without, ___NS__words, ___NS__wrap, ___NS__xor, ___NS__xorBy, ___NS__xorWith, ___NS__zip, ___NS__zipObject, ___NS__zipObjectDeep, ___NS__zipWith } from 'tnp-core/browser-prod';\n//#endregion\n\n@TaonMiddleware({\n className: 'TaonCmsContentPermissionMiddleware',\n})\nexport class TaonCmsContentPermissionMiddleware extends TaonBaseMiddleware {}","//#region imports\nimport { TaonBaseSubscriberForEntity, TaonSubscriber } from 'taon/browser-prod';\nimport { TaonCmsContentPermissionEntity } from './taon-cms-content-permission.entity';\nimport { TaonCmsContentPermissionProvider } from './taon-cms-content-permission.provider';\n//#endregion\n\n@TaonSubscriber<TaonCmsContentPermissionSubscriber>({\n className: 'TaonCmsContentPermissionSubscriber',\n // allowedEvents: ['afterUpdate'],\n})\nexport class TaonCmsContentPermissionSubscriber extends TaonBaseSubscriberForEntity {\n taonCmsContentPermissionProvider = this.injectProvider(TaonCmsContentPermissionProvider);\n listenTo(): typeof TaonCmsContentPermissionEntity {\n return TaonCmsContentPermissionEntity;\n }\n}","//#region imports\nimport { createContext, TaonBaseContext } from 'taon/browser-prod';\n\nimport { TaonCmsContentPermissionEntity } from './taon-cms-content-permission.entity';\nimport { TaonCmsContentPermissionController } from './taon-cms-content-permission.controller';\nimport { TaonCmsContentPermissionRepository } from './taon-cms-content-permission.repository';\nimport { TaonCmsContentPermissionProvider } from './taon-cms-content-permission.provider';\nimport { TaonCmsContentPermissionMiddleware } from './taon-cms-content-permission.middleware';\nimport { TaonCmsContentPermissionSubscriber } from './taon-cms-content-permission.subscriber';\n//#endregion\n\nexport const TaonCmsContentPermissionAbstractContext = createContext(() => ({\n contextName: 'TaonCmsContentPermissionAbstractContext',\n abstract: true,\n contexts: { TaonBaseContext },\n entities: { TaonCmsContentPermissionEntity },\n controllers: { TaonCmsContentPermissionController },\n repositories: { TaonCmsContentPermissionRepository },\n providers: { TaonCmsContentPermissionProvider },\n middlewares: { TaonCmsContentPermissionMiddleware },\n subscribers: { TaonCmsContentPermissionSubscriber },\n}));\n","// THIS FILE IS GENERATED - DO NOT MODIFY\nimport { TaonSessionAbstractContext } from '@taon-dev/session/browser-prod';\nimport { createContext, TaonBaseContext } from 'taon/browser-prod';\n\nimport { TaonCmsCategoryAbstractContext } from './taon-cms-category/taon-cms-category.abstract.context';\nimport { TaonCmsCommentAbstractContext } from './taon-cms-comment/taon-cms-comment.abstract.context';\nimport { TaonCmsContentAbstractContext } from './taon-cms-content/taon-cms-content.abstract.context';\nimport { TaonCmsContentAssetAbstractContext } from './taon-cms-content-asset/taon-cms-content-asset.abstract.context';\nimport { TaonCmsContentPermissionAbstractContext } from './taon-cms-content-permission/taon-cms-content-permission.abstract.context';\nimport { TaonCmsContentRevisionAbstractContext } from './taon-cms-content-revision/taon-cms-content-revision.abstract.context';\nimport { TaonCmsContentTagAbstractContext } from './taon-cms-content-tag/taon-cms-content-tag.abstract.context';\nimport { TaonCmsTagAbstractContext } from './taon-cms-tag/taon-cms-tag.abstract.context';\n\nexport const TaonCmsAbstractContext = createContext(() => ({\n contextName: 'TaonCmsAbstractContext',\n abstract: true,\n contexts: {\n TaonCmsCategoryAbstractContext,\n TaonCmsCommentAbstractContext,\n TaonCmsContentAbstractContext,\n TaonCmsContentAssetAbstractContext,\n TaonCmsContentPermissionAbstractContext,\n TaonCmsContentRevisionAbstractContext,\n TaonCmsContentTagAbstractContext,\n TaonCmsTagAbstractContext,\n TaonSessionAbstractContext,\n },\n}));\n\n// THIS FILE IS GENERATED - DO NOT MODIFY\n","import { Resource__NS__Cookies, Resource__NS__create, Resource__NS__globalInterceptors, Resource__NS__listenErrors, Resource__NS__methodsInterceptors } from 'ng2-rest/browser-prod';\nimport { Observable } from 'rxjs';\n\nconst progressCallbacks = new WeakMap<FormData, (percentage: number) => void>();\n\n// Keep Taon's middleware, retries and response decoding; replace only the\n// final Fetch transport for uploads that request browser upload events.\nexport function trackCmsUpload(\n url: string,\n body: FormData,\n onProgress: (percentage: number) => void,\n): () => void {\n const key = `cms-upload-progress-POST-${new URL(url).pathname}`;\n if (!Resource__NS__methodsInterceptors.has(key)) {\n Resource__NS__methodsInterceptors.set(key, {\n intercept: ({ req, next }) => {\n if (!(req.body instanceof FormData)) {\n return next.handle(req);\n }\n const uploadBody = req.body;\n const callback = progressCallbacks.get(uploadBody);\n if (!callback) {\n return next.handle(req);\n }\n return new Observable<Response>(subscriber => {\n const xhr = new XMLHttpRequest();\n xhr.open(req.method || 'POST', req.url);\n xhr.withCredentials = req.credentials === 'include';\n new Headers(req.headers).forEach((value, name) => {\n // The browser must supply the multipart boundary.\n if (name.toLowerCase() !== 'content-type') {\n xhr.setRequestHeader(name, value);\n }\n });\n xhr.upload.onprogress = event => {\n if (event.lengthComputable && event.total > 0) {\n callback(\n Math.min(100, Math.floor((event.loaded * 100) / event.total)),\n );\n }\n };\n xhr.onload = () => {\n const headers = new Headers();\n for (const line of xhr\n .getAllResponseHeaders()\n .trim()\n .split(/[\\r\\n]+/)) {\n const separator = line.indexOf(':');\n if (separator > 0) {\n headers.append(\n line.slice(0, separator),\n line.slice(separator + 1).trim(),\n );\n }\n }\n subscriber.next(\n new Response(\n [204, 205, 304].includes(xhr.status) ? null : xhr.responseText,\n {\n status: xhr.status,\n statusText: xhr.statusText,\n headers,\n },\n ),\n );\n subscriber.complete();\n };\n xhr.onerror = () =>\n subscriber.error(new Error('Media upload network error.'));\n xhr.ontimeout = () =>\n subscriber.error(new Error('Media upload timed out.'));\n xhr.onabort = () =>\n subscriber.error(new Error('Media upload was cancelled.'));\n const abort = () => xhr.abort();\n req.signal?.addEventListener('abort', abort, { once: true });\n if (req.signal?.aborted) {\n subscriber.error(new Error('Media upload was cancelled.'));\n } else {\n callback(0);\n xhr.send(uploadBody);\n }\n return () => {\n req.signal?.removeEventListener('abort', abort);\n if (xhr.readyState !== XMLHttpRequest.DONE) {\n xhr.abort();\n }\n };\n });\n },\n });\n }\n progressCallbacks.set(body, onProgress);\n return () => progressCallbacks.delete(body);\n}","//#region imports\nimport { Injectable } from '@angular/core';\nimport type { TaonPermissionEntity } from '@taon-dev/session/browser-prod';\nimport { Observable, of } from 'rxjs';\nimport { catchError, map } from 'rxjs/operators';\nimport { TaonBaseAngularService, TaonStorageObject, Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\n\nimport type { TaonCmsApplicationHookEntity } from '../taon-cms-application-hook/taon-cms-application-hook.entity';\nimport { TaonCmsApplicationHook } from '../taon-cms-application-hooks';\nimport type { TaonCmsContentRevisionEntity } from '../taon-cms-content-revision/taon-cms-content-revision.entity';\n\nimport { TaonCmsContentStorageController } from './taon-cms-content-storage.controller';\nimport { TaonCmsContentController } from './taon-cms-content.controller';\nimport type { TaonCmsContentEntity } from './taon-cms-content.entity';\nimport type {\n TaonCmsCreateContent,\n TaonCmsRestoreContent,\n TaonCmsUpdateContent,\n TaonCmsPermissionConfiguration,\n} from './taon-cms-content.models';\nimport { trackCmsUpload } from './taon-cms-upload-progress';\n\n//#endregion\n\n@Injectable()\nexport class TaonCmsContentApiService<\n HOOKS extends TaonCmsApplicationHook = TaonCmsApplicationHook,\n> extends TaonBaseAngularService {\n //#region fields & getters\n protected readonly taonCmsContentController = this.injectController(\n TaonCmsContentController,\n );\n\n protected readonly taonCmsContentStorageController = this.injectController(\n TaonCmsContentStorageController,\n );\n\n public get crudController(): TaonCmsContentController {\n return this.taonCmsContentController;\n }\n\n public get frontendUrl(): string {\n return this.ctx.frontendHostUri.origin;\n }\n\n public getPostUrl(slug: string): string {\n return `${this.frontendUrl}/posts/${encodeURIComponent(slug)}`;\n }\n //#endregion\n\n //#region API / get by id\n public async getById(id: number): Promise<TaonCmsContentEntity> {\n return (await this.taonCmsContentController.getBy(id).request()).body.json;\n }\n //#endregion\n\n //#region API / get by slug\n public async getBySlug(slug: string): Promise<TaonCmsContentEntity> {\n return (await this.taonCmsContentController.getBySlug(slug).request()).body\n .json;\n }\n //#endregion\n\n //#region API / get video link by slug\n /**\n * Get link to private video\n */\n public getVideoLinkBySlug(slug: string): Observable<string> {\n return this.taonCmsContentController\n .getVideoLinkBySlug(slug)\n .request()\n .observable.pipe(\n map(res => res.body.text),\n catchError(err => {\n console.error(err);\n return of('');\n }),\n );\n }\n //#endregion\n\n //#region API / get public video link by slug\n public async getPublicVideoLinkBySlug(slug: string): Promise<string> {\n return (\n await this.taonCmsContentController\n .getPublicVideoLinkBySlug(slug)\n .request()\n ).body.text;\n }\n //#endregion\n\n //#region API / get audio link by slug\n public getAudioLinkBySlug(slug: string): Observable<string> {\n return this.taonCmsContentController\n .getAudioLinkBySlug(slug)\n .request()\n .observable.pipe(\n map(res => res.body.text),\n catchError(err => {\n console.error(err);\n return of('');\n }),\n );\n }\n //#endregion\n\n //#region API / get public audio link by slug\n public async getPublicAudioLinkBySlug(slug: string): Promise<string> {\n return (\n await this.taonCmsContentController\n .getPublicAudioLinkBySlug(slug)\n .request()\n ).body.text;\n }\n //#endregion\n\n //#region API / get attachment link by slug\n public async getAttachmentLinkBySlug(slug: string): Promise<string> {\n return (\n await this.taonCmsContentController\n .getAttachmentLinkBySlug(slug)\n .request()\n ).body.text;\n }\n //#endregion\n\n //#region API / get public attachment link by slug\n public async getPublicAttachmentLinkBySlug(slug: string): Promise<string> {\n return (\n await this.taonCmsContentController\n .getPublicAttachmentLinkBySlug(slug)\n .request()\n ).body.text;\n }\n //#endregion\n\n //#region API / get content by hook\n public getContentByHook(hook: HOOKS): Observable<string> {\n return this.taonCmsContentController.getContentByHook(hook)\n .request!().observable.pipe(map(res => res.body.text));\n }\n //#endregion\n\n //#region API / get public content by hook\n public getPublicContentByHook(hook: HOOKS): Observable<string> {\n return this.taonCmsContentController.getPublicContentByHook(hook)\n .request!().observable.pipe(\n map(res => res.body.text),\n catchError(() => of('---')),\n );\n }\n //#endregion\n\n //#region API / list application hooks\n public listApplicationHooks(): Observable<TaonCmsApplicationHookEntity[]> {\n return this.taonCmsContentController.listApplicationHooks()\n .request!().observable.pipe(map(res => res.body.json));\n }\n //#endregion\n\n //#region API / upload media\n public async uploadMedia(\n file: File,\n onProgress?: (percentage: number) => void,\n ): Promise<TaonStorageObject> {\n const formData = new FormData();\n formData.append('file', file);\n const stopTracking = onProgress\n ? trackCmsUpload(\n this.taonCmsContentStorageController.getThisControllerMethodFullUrl(\n 'uploadFormDataToServer',\n ),\n formData,\n onProgress,\n )\n : undefined;\n try {\n const response = await this.taonCmsContentStorageController\n .uploadFormDataToServer(formData)\n .request();\n const objects = response.body.json;\n if (!Array.isArray(objects) || objects.length !== 1 || !objects[0]?.key) {\n throw new Error('The upload did not return a media key.');\n }\n onProgress?.(100);\n return objects[0];\n } finally {\n stopTracking?.();\n }\n }\n //#endregion\n\n //#region API / list assets\n public listAssets(): Observable<TaonStorageObject[]> {\n return this.taonCmsContentStorageController\n .list({})\n .request()\n .observable.pipe(map(res => res.body.json));\n }\n //#endregion\n\n //#region API / get asset url\n public async getAssetUrl(key: string): Promise<string> {\n return (\n await this.taonCmsContentStorageController\n .getPrivateUrl(key, { expiresInSeconds: 5 * 60 })\n .request()\n ).body.text;\n }\n //#endregion\n\n //#region API / create content\n public listTagIds(id: number): Observable<number[]> {\n return this.taonCmsContentController\n .listTagIds(id)\n .request()\n .observable.pipe(map(res => res.body.json));\n }\n\n public async getThumbnailLinkBySlug(\n slug: string,\n publicOnly = false,\n ): Promise<string> {\n const response = publicOnly\n ? await this.taonCmsContentController\n .getPublicThumbnailLinkBySlug(slug)\n .request()\n : await this.taonCmsContentController\n .getThumbnailLinkBySlug(slug)\n .request();\n return response.body.text;\n }\n\n public createContent(\n input: TaonCmsCreateContent,\n ): Observable<TaonCmsContentEntity> {\n return this.taonCmsContentController.createContent(input)\n .request!().observable.pipe(map(res => res.body.json));\n }\n //#endregion\n\n //#region API / duplicate content\n public duplicateContent(id: number): Observable<TaonCmsContentEntity> {\n return this.taonCmsContentController.duplicateContent(id)\n .request!().observable.pipe(map(res => res.body.json));\n }\n //#endregion\n\n //#region API / update content\n public updateContent(\n id: number,\n input: TaonCmsUpdateContent,\n ): Observable<TaonCmsContentEntity> {\n return this.taonCmsContentController.updateContent(id, input)\n .request!().observable.pipe(map(res => res.body.json));\n }\n //#endregion\n\n //#region API / delete content\n public deleteContent(\n id: number,\n expectedVersion: number,\n ): Observable<TaonCmsContentEntity> {\n return this.taonCmsContentController.deleteContent(id, expectedVersion)\n .request!().observable.pipe(map(res => res.body.json));\n }\n //#endregion\n\n //#region API / restore content\n public restoreContent(\n id: number,\n input: TaonCmsRestoreContent,\n ): Observable<TaonCmsContentEntity> {\n return this.taonCmsContentController.restoreContent(id, input)\n .request!().observable.pipe(map(res => res.body.json));\n }\n //#endregion\n\n //#region API / list revisions\n public listRevisions(id: number): Observable<TaonCmsContentRevisionEntity[]> {\n return this.taonCmsContentController.listRevisions(id)\n .request!().observable.pipe(map(res => res.body.json));\n }\n //#endregion\n\n //#region API / list related posts\n public listCourses(): Observable<TaonCmsContentEntity[]> {\n return this.taonCmsContentController.listCourses()\n .request!().observable.pipe(map(res => res.body.json));\n }\n\n public listRelatedPosts(id: number): Observable<TaonCmsContentEntity[]> {\n return this.taonCmsContentController.listRelatedPosts(id)\n .request!().observable.pipe(map(res => res.body.json));\n }\n //#endregion\n\n //#region API / list permissions\n public listPermissions(id: number): Observable<TaonPermissionEntity[]> {\n return this.taonCmsContentController.listPermissions(id)\n .request!().observable.pipe(map(res => res.body.json));\n }\n //#endregion\n\n //#region API / get permission configuration\n public getPermissionConfiguration(\n id: number,\n ): Observable<TaonCmsPermissionConfiguration> {\n return this.taonCmsContentController.getPermissionConfiguration(id)\n .request!().observable.pipe(map(res => res.body.json));\n }\n //#endregion\n\n //#region API / add related post\n public addRelatedPost(\n id: number,\n relatedPostId: number,\n expectedVersion: number,\n ): Observable<TaonCmsContentEntity> {\n return this.taonCmsContentController.addRelatedPost(\n id,\n relatedPostId,\n expectedVersion,\n ).request!().observable.pipe(map(res => res.body.json));\n }\n //#endregion\n\n //#region API / delete related post\n public deleteRelatedPost(\n id: number,\n relatedPostId: number,\n expectedVersion: number,\n ): Observable<TaonCmsContentEntity> {\n return this.taonCmsContentController.deleteRelatedPost(\n id,\n relatedPostId,\n expectedVersion,\n ).request!().observable.pipe(map(res => res.body.json));\n }\n //#endregion\n\n //#region API / get all entites\n /**\n * TODO not good idea if manu posts - refactor later:\n * - add pagination for post selector\n */\n public get allMyEntities$(): Observable<TaonCmsContentEntity[]> {\n return this.taonCmsContentController.getAll().request!().observable.pipe(\n map(res => res.body?.json),\n );\n }\n //#endregion\n}","import {\n ChangeDetectionStrategy,\n Component,\n DestroyRef,\n Input,\n OnInit,\n inject,\n signal,\n} from '@angular/core';\nimport { MatButtonModule } from '@angular/material/button';\nimport { Translation } from '@taon-dev/i18n/browser-prod';\nimport { type TaonStorageObject, Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\n\nimport { TaonCmsContentApiService } from '../taon-cms-content/taon-cms-content-api.service';\n\nconst t = Translation.for('src/lib/taon-cms-assets-backoffice/taon-cms-asset-preview.component.ts', {\"src/lib/taon-cms-assets-backoffice/taon-cms-asset-preview.component.html\":{\"en-US\":async () => (await import('./i18n/taon-cms-asset-preview.component.html.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-asset-preview.component.html.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-asset-preview.component.html.de-DE.i18n.data')).default},\"src/lib/taon-cms-assets-backoffice/taon-cms-asset-preview.component.ts\":{\"en-US\":async () => (await import('./i18n/taon-cms-asset-preview.component.ts.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-asset-preview.component.ts.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-asset-preview.component.ts.de-DE.i18n.data')).default},\"src/lib/taon-cms-assets-backoffice/taon-cms-assets-backoffice.component.html\":{\"en-US\":async () => (await import('./i18n/taon-cms-assets-backoffice.component.html.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-assets-backoffice.component.html.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-assets-backoffice.component.html.de-DE.i18n.data')).default},\"src/lib/taon-cms-assets-backoffice/taon-cms-assets-backoffice.component.ts\":{\"en-US\":async () => (await import('./i18n/taon-cms-assets-backoffice.component.ts.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-assets-backoffice.component.ts.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-assets-backoffice.component.ts.de-DE.i18n.data')).default}} as any);\n\n@Component({\n selector: 'taon-cms-asset-preview',\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [MatButtonModule],\n styleUrl: './taon-cms-asset-preview.component.scss',\n templateUrl: './taon-cms-asset-preview.component.html',\n})\nexport class TaonCmsAssetPreviewComponent implements OnInit {\n readonly t = t.for(this);\n\n @Input({ required: true })\n asset!: TaonStorageObject;\n\n private readonly api = inject(TaonCmsContentApiService);\n\n private readonly destroyRef = inject(DestroyRef);\n\n readonly url = signal('');\n\n readonly loading = signal(false);\n\n readonly error = signal('');\n\n get previewKind(): 'video' | 'audio' | 'attachment' {\n const contentType = this.asset.contentType?.trim().toLowerCase();\n if (contentType?.startsWith('video/')) {\n return 'video';\n }\n if (contentType?.startsWith('audio/')) {\n return 'audio';\n }\n return 'attachment';\n }\n\n ngOnInit(): void {\n void this.reload();\n }\n\n async reload(): Promise<void> {\n if (this.loading()) {\n return;\n }\n this.loading.set(true);\n this.error.set('');\n this.url.set('');\n try {\n const url = new URL(await this.api.getAssetUrl(this.asset.key));\n if (this.previewKind === 'attachment') {\n url.searchParams.set('download', 'true');\n }\n if (!this.destroyRef.destroyed) {\n this.url.set(url.href);\n }\n } catch (error: unknown) {\n if (!this.destroyRef.destroyed) {\n console.error(\n '[taon-cms-asset-preview] Unable to load asset URL',\n error,\n );\n this.error.set(\n this.t.gettext('The asset could not be opened. Please retry.'),\n );\n }\n } finally {\n if (!this.destroyRef.destroyed) {\n this.loading.set(false);\n }\n }\n }\n\n playbackError(): void {\n this.error.set(\n this.t.gettext(\n 'Playback failed or the preview link expired. Please retry.',\n ),\n );\n }\n}","@if (loading()) {\n <p role=\"status\">{{ t.gettext('Loading asset preview...') }}</p>\n}\n@if (error()) {\n <p role=\"alert\">{{ error() }}</p>\n <button\n mat-button\n type=\"button\"\n [disabled]=\"loading()\"\n (click)=\"reload()\">\n {{ t.gettext('Retry preview') }}\n </button>\n}\n@if (url()) {\n @switch (previewKind) {\n @case ('video') {\n <video\n controls\n preload=\"none\"\n [src]=\"url()\"\n (error)=\"playbackError()\">\n {{ t.gettext('Your browser does not support video playback.') }}\n </video>\n }\n @case ('audio') {\n <audio\n controls\n preload=\"none\"\n [src]=\"url()\"\n (error)=\"playbackError()\">\n {{ t.gettext('Your browser does not support audio playback.') }}\n </audio>\n }\n @default {\n <a\n [href]=\"url()\"\n [attr.download]=\"asset.fileName\"\n target=\"_blank\"\n rel=\"noopener\">\n {{ asset.fileName || asset.key }}\n </a>\n }\n }\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n DestroyRef,\n OnInit,\n inject,\n signal,\n} from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MtxGridColumn } from '@ng-matero/extensions/grid';\nimport { TaonDatatableComponent } from '@taon-dev/ui/browser-prod';\nimport { Translation } from '@taon-dev/i18n/browser-prod';\nimport { finalize, map } from 'rxjs';\nimport { type TaonStorageObject as TaonStorageObjectBase, Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\nimport { ___NS__add, ___NS__after, ___NS__ary, ___NS__assign, ___NS__assignIn, ___NS__assignInWith, ___NS__assignWith, ___NS__at, ___NS__attempt, ___NS__before, ___NS__bind, ___NS__bindAll, ___NS__bindKey, ___NS__camelCase, ___NS__capitalize, ___NS__castArray, ___NS__ceil, ___NS__chain, ___NS__chunk, ___NS__clamp, ___NS__clone, ___NS__cloneDeep, ___NS__cloneDeepWith, ___NS__cloneWith, ___NS__compact, ___NS__concat, ___NS__cond, ___NS__conforms, ___NS__conformsTo, ___NS__constant, ___NS__countBy, ___NS__create, ___NS__curry, ___NS__curryRight, ___NS__debounce, ___NS__deburr, ___NS__defaults, ___NS__defaultsDeep, ___NS__defaultTo, ___NS__defer, ___NS__delay, ___NS__difference, ___NS__differenceBy, ___NS__differenceWith, ___NS__divide, ___NS__drop, ___NS__dropRight, ___NS__dropRightWhile, ___NS__dropWhile, ___NS__each, ___NS__eachRight, ___NS__endsWith, ___NS__entries, ___NS__entriesIn, ___NS__eq, ___NS__escape, ___NS__escapeRegExp, ___NS__every, ___NS__extend, ___NS__extendWith, ___NS__fill, ___NS__filter, ___NS__find, ___NS__findIndex, ___NS__findKey, ___NS__findLast, ___NS__findLastIndex, ___NS__findLastKey, ___NS__first, ___NS__flatMap, ___NS__flatMapDeep, ___NS__flatMapDepth, ___NS__flatten, ___NS__flattenDeep, ___NS__flattenDepth, ___NS__flip, ___NS__floor, ___NS__flow, ___NS__flowRight, ___NS__forEach, ___NS__forEachRight, ___NS__forIn, ___NS__forInRight, ___NS__forOwn, ___NS__forOwnRight, ___NS__fromPairs, ___NS__functions, ___NS__functionsIn, ___NS__get, ___NS__groupBy, ___NS__gt, ___NS__gte, ___NS__has, ___NS__hasIn, ___NS__head, ___NS__identity, ___NS__includes, ___NS__indexOf, ___NS__initial, ___NS__inRange, ___NS__intersection, ___NS__intersectionBy, ___NS__intersectionWith, ___NS__invert, ___NS__invertBy, ___NS__invoke, ___NS__invokeMap, ___NS__isArguments, ___NS__isArray, ___NS__isArrayBuffer, ___NS__isArrayLike, ___NS__isArrayLikeObject, ___NS__isBoolean, ___NS__isBuffer, ___NS__isDate, ___NS__isElement, ___NS__isEmpty, ___NS__isEqual, ___NS__isEqualWith, ___NS__isError, ___NS__isFinite, ___NS__isFunction, ___NS__isInteger, ___NS__isLeafObject, ___NS__isLength, ___NS__isMap, ___NS__isMatch, ___NS__isMatchWith, ___NS__isNaN, ___NS__isNative, ___NS__isNil, ___NS__isNull, ___NS__isNumber, ___NS__isObject, ___NS__isObjectLike, ___NS__isPlainObject, ___NS__isRegExp, ___NS__isSafeInteger, ___NS__isSet, ___NS__isString, ___NS__isSymbol, ___NS__isTypedArray, ___NS__isUndefined, ___NS__isWeakMap, ___NS__isWeakSet, ___NS__iteratee, ___NS__join, ___NS__kebabCase, ___NS__keyBy, ___NS__keys, ___NS__keysIn, ___NS__last, ___NS__lastIndexOf, ___NS__lowerCase, ___NS__lowerFirst, ___NS__lt, ___NS__lte, ___NS__map, ___NS__mapKeys, ___NS__mapValues, ___NS__matches, ___NS__matchesProperty, ___NS__max, ___NS__maxBy, ___NS__mean, ___NS__meanBy, ___NS__memoize, ___NS__merge, ___NS__mergeWith, ___NS__method, ___NS__methodOf, ___NS__min, ___NS__minBy, ___NS__mixin, ___NS__multiply, ___NS__negate, ___NS__noop, ___NS__now, ___NS__nth, ___NS__nthArg, ___NS__omit, ___NS__omitBy, ___NS__once, ___NS__orderBy, ___NS__over, ___NS__overArgs, ___NS__overEvery, ___NS__overSome, ___NS__pad, ___NS__padEnd, ___NS__padStart, ___NS__parseInt, ___NS__partial, ___NS__partialRight, ___NS__partition, ___NS__pick, ___NS__pickBy, ___NS__property, ___NS__propertyOf, ___NS__pull, ___NS__pullAll, ___NS__pullAllBy, ___NS__pullAllWith, ___NS__pullAt, ___NS__random, ___NS__range, ___NS__rangeRight, ___NS__rearg, ___NS__reduce, ___NS__reduceRight, ___NS__reject, ___NS__remove, ___NS__repeat, ___NS__replace, ___NS__rest, ___NS__result, ___NS__reverse, ___NS__round, ___NS__sample, ___NS__sampleSize, ___NS__set, ___NS__setWith, ___NS__shuffle, ___NS__size, ___NS__slice, ___NS__snakeCase, ___NS__some, ___NS__sortBy, ___NS__sortedIndex, ___NS__sortedIndexBy, ___NS__sortedIndexOf, ___NS__sortedLastIndex, ___NS__sortedLastIndexBy, ___NS__sortedLastIndexOf, ___NS__sortedUniq, ___NS__sortedUniqBy, ___NS__split, ___NS__spread, ___NS__startCase, ___NS__startsWith, ___NS__stubArray, ___NS__stubFalse, ___NS__stubObject, ___NS__stubString, ___NS__stubTrue, ___NS__subtract, ___NS__sum, ___NS__sumBy, ___NS__tail, ___NS__take, ___NS__takeRight, ___NS__takeRightWhile, ___NS__takeWhile, ___NS__tap, ___NS__template, ___NS__templateSettings, ___NS__throttle, ___NS__thru, ___NS__times, ___NS__toArray, ___NS__toFinite, ___NS__toInteger, ___NS__toLength, ___NS__toLower, ___NS__toNumber, ___NS__toPairs, ___NS__toPairsIn, ___NS__toPath, ___NS__toPlainObject, ___NS__toSafeInteger, ___NS__toString, ___NS__toUpper, ___NS__transform, ___NS__trim, ___NS__trimEnd, ___NS__trimStart, ___NS__truncate, ___NS__unary, ___NS__unescape, ___NS__union, ___NS__unionBy, ___NS__unionWith, ___NS__uniq, ___NS__uniqBy, ___NS__uniqueId, ___NS__uniqWith, ___NS__unset, ___NS__unzip, ___NS__unzipWith, ___NS__update, ___NS__updateWith, ___NS__upperCase, ___NS__upperFirst, ___NS__values, ___NS__valuesIn, ___NS__without, ___NS__words, ___NS__wrap, ___NS__xor, ___NS__xorBy, ___NS__xorWith, ___NS__zip, ___NS__zipObject, ___NS__zipObjectDeep, ___NS__zipWith } from 'tnp-core/browser-prod';\n\nimport { TaonCmsContentApiService } from '../taon-cms-content/taon-cms-content-api.service';\n\nimport { TaonCmsAssetPreviewComponent } from './taon-cms-asset-preview.component';\n\nconst t = Translation.for('src/lib/taon-cms-assets-backoffice/taon-cms-assets-backoffice.component.ts', {\"src/lib/taon-cms-assets-backoffice/taon-cms-asset-preview.component.html\":{\"en-US\":async () => (await import('./i18n/taon-cms-asset-preview.component.html.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-asset-preview.component.html.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-asset-preview.component.html.de-DE.i18n.data')).default},\"src/lib/taon-cms-assets-backoffice/taon-cms-asset-preview.component.ts\":{\"en-US\":async () => (await import('./i18n/taon-cms-asset-preview.component.ts.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-asset-preview.component.ts.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-asset-preview.component.ts.de-DE.i18n.data')).default},\"src/lib/taon-cms-assets-backoffice/taon-cms-assets-backoffice.component.html\":{\"en-US\":async () => (await import('./i18n/taon-cms-assets-backoffice.component.html.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-assets-backoffice.component.html.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-assets-backoffice.component.html.de-DE.i18n.data')).default},\"src/lib/taon-cms-assets-backoffice/taon-cms-assets-backoffice.component.ts\":{\"en-US\":async () => (await import('./i18n/taon-cms-assets-backoffice.component.ts.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-assets-backoffice.component.ts.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-assets-backoffice.component.ts.de-DE.i18n.data')).default}} as any);\n\ntype TaonStorageObject = TaonStorageObjectBase & { keyVisible?: string };\n\n@Component({\n selector: 'taon-cms-assets-backoffice',\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [\n MatButtonModule,\n TaonDatatableComponent,\n TaonCmsAssetPreviewComponent,\n ],\n providers: [TaonCmsContentApiService],\n templateUrl: './taon-cms-assets-backoffice.component.html',\n})\nexport class TaonCmsAssetsBackofficeComponent implements OnInit {\n readonly t = t.for(this);\n\n private readonly api = inject(TaonCmsContentApiService);\n\n private readonly destroyRef = inject(DestroyRef);\n\n readonly assets = signal<TaonStorageObject[]>([]);\n\n readonly loading = signal(false);\n\n readonly error = signal('');\n\n readonly columns: MtxGridColumn[] = [\n { header: 'ID', field: 'keyVisible', sortable: true, showExpand: true },\n { header: this.t.gettext('File Name'), field: 'fileName', sortable: true },\n {\n header: this.t.gettext('Content Type'),\n field: 'contentType',\n sortable: true,\n },\n ];\n\n ngOnInit(): void {\n this.reload();\n }\n\n reload(): void {\n if (this.loading()) {\n return;\n }\n this.loading.set(true);\n this.error.set('');\n this.api\n .listAssets()\n .pipe(\n map(c => c as TaonStorageObject[]),\n takeUntilDestroyed(this.destroyRef),\n finalize(() => this.loading.set(false)),\n )\n .subscribe({\n next: assets =>\n this.assets.set(\n assets.map(c => {\n c.keyVisible = ___NS__first(c.key.split('__'));\n return c;\n }),\n ),\n error: (error: unknown) => {\n console.error(\n '[taon-cms-assets-backoffice] Unable to load assets',\n error,\n );\n this.error.set(\n this.t.gettext('Assets could not be loaded. Please try reloading.'),\n );\n },\n });\n }\n}","<h1>{{ t.gettext('CMS assets') }}</h1>\n<button\n mat-button\n type=\"button\"\n [disabled]=\"loading()\"\n (click)=\"reload()\">\n {{ t.gettext('Reload assets') }}\n</button>\n@if (loading()) {\n <p role=\"status\">{{ t.gettext('Loading assets...') }}</p>\n}\n@if (error()) {\n <p role=\"alert\">{{ error() }}</p>\n}\n\n<ng-template\n #preview\n let-asset>\n <taon-cms-asset-preview [asset]=\"asset\" />\n</ng-template>\n\n<taon-datatable\n [data]=\"assets()\"\n [columns]=\"columns\"\n [allowedColumns]=\"['key', 'fileName', 'contentType']\"\n [hideAddButton]=\"true\"\n [expansionTemplate]=\"preview\"\n searchMode=\"advanced\">\n</taon-datatable>\n","import { Routes } from '@angular/router';\n\nexport const TaonCmsAssetsBackofficeRoutes: Routes = [\n {\n path: '',\n loadComponent: () =>\n import('./taon-cms-assets-backoffice.component').then(\n m => m.TaonCmsAssetsBackofficeComponent,\n ),\n },\n];\n","//#region imports\nimport { AsyncPipe } from '@angular/common';\nimport { ChangeDetectionStrategy, Component } from '@angular/core';\nimport { RouterOutlet } from '@angular/router';\nimport { Translation } from '@taon-dev/i18n/browser-prod';\nimport { Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\n//#endregion\n\nconst t = Translation.for('src/lib/taon-cms-backoffice/taon-cms-backoffice.component.ts', {\"src/lib/taon-cms-backoffice/taon-cms-backoffice.component.html\":{\"en-US\":async () => (await import('./i18n/taon-cms-backoffice.component.html.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-backoffice.component.html.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-backoffice.component.html.de-DE.i18n.data')).default},\"src/lib/taon-cms-backoffice/taon-cms-backoffice.component.ts\":{\"en-US\":async () => (await import('./i18n/taon-cms-backoffice.component.ts.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-backoffice.component.ts.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-backoffice.component.ts.de-DE.i18n.data')).default},\"src/lib/taon-cms-backoffice/taon-cms-backoffice.routes.ts\":{\"en-US\":async () => (await import('./i18n/taon-cms-backoffice.routes.ts.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-backoffice.routes.ts.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-backoffice.routes.ts.de-DE.i18n.data')).default}} as any);\n\n@Component({\n selector: 'app-taon-cms-backoffice',\n templateUrl: './taon-cms-backoffice.component.html',\n styleUrls: ['./taon-cms-backoffice.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [AsyncPipe, RouterOutlet],\n})\nexport class TaonCmsBackofficeComponent {\n readonly t = t.for(this);\n\n componentLoaded = false;\n\n onRouteActivate(component: any): void {\n this.componentLoaded = !!component;\n }\n\n onRouteDeactivate(component: any): void {\n this.componentLoaded = false;\n }\n}","@if (!componentLoaded) {\n <code>\n {{\n t.gettext('In CMS you can manage content and settings for your website.')\n }}\n </code>\n}\n\n<router-outlet\n (activate)=\"onRouteActivate($event)\"\n (deactivate)=\"onRouteDeactivate($event)\"></router-outlet>\n","//namespace TaonCmsBackofficeModels\n\n//end of namespace TaonCmsBackofficeModels\n","//#region imports\nimport { Routes } from '@angular/router';\nimport { Translation } from '@taon-dev/i18n/browser-prod';\nimport type { TaonAuthContextEntity } from '@taon-dev/session/browser-prod';\nimport { adminLazyRoute as adminLazyRouteBase } from '@taon-dev/ui/browser-prod';\nimport { Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\n\n//#endregion\n\nconst adminLazyRoute = adminLazyRouteBase<TaonAuthContextEntity>;\nconst t = Translation.for('src/lib/taon-cms-backoffice/taon-cms-backoffice.routes.ts', {\"src/lib/taon-cms-backoffice/taon-cms-backoffice.component.html\":{\"en-US\":async () => (await import('./i18n/taon-cms-backoffice.component.html.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-backoffice.component.html.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-backoffice.component.html.de-DE.i18n.data')).default},\"src/lib/taon-cms-backoffice/taon-cms-backoffice.component.ts\":{\"en-US\":async () => (await import('./i18n/taon-cms-backoffice.component.ts.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-backoffice.component.ts.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-backoffice.component.ts.de-DE.i18n.data')).default},\"src/lib/taon-cms-backoffice/taon-cms-backoffice.routes.ts\":{\"en-US\":async () => (await import('./i18n/taon-cms-backoffice.routes.ts.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-backoffice.routes.ts.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-backoffice.routes.ts.de-DE.i18n.data')).default}} as any);\n\nexport const TaonCmsBackofficeRoutes: Routes = [\n {\n path: '',\n loadComponent: () =>\n import('./taon-cms-backoffice.component').then(\n m => m.TaonCmsBackofficeComponent,\n ),\n\n children: [\n adminLazyRoute({\n isDisabled: ({ context }) => {\n // console.log('context', { context });\n return !context?.hasAccess.toManageCms;\n },\n path: 'posts',\n menuItem: t.signal.gettext('Posts'),\n expandable: true,\n icon: 'edit',\n loader: () =>\n import('../index').then(m => m.TaonCmsPostsBackofficeRoutes),\n }),\n adminLazyRoute({\n isDisabled: ({ context }) => {\n // console.log('context', { context });\n return !context?.hasAccess.toManageCms;\n },\n path: 'courses',\n menuItem: t.signal.gettext('Courses'),\n expandable: false,\n icon: 'school',\n loader: () =>\n import('../index').then(\n m => m.TaonCmsCourseBackofficeRoutes,\n ),\n }),\n adminLazyRoute({\n isDisabled: ({ context }) => !context?.hasAccess.toManageCms,\n path: 'assets',\n menuItem: t.signal.gettext('Assets'),\n expandable: false,\n icon: 'perm_media',\n loader: () =>\n import('../taon-cms-assets-backoffice/taon-cms-assets-backoffice.routes').then(\n m => m.TaonCmsAssetsBackofficeRoutes,\n ),\n }),\n adminLazyRoute({\n isDisabled: ({ context }) => !context?.hasAccess.toManageCms,\n path: 'categories',\n menuItem: t.signal.gettext('Categories'),\n expandable: false,\n icon: 'folder',\n loader: () =>\n import('../taon-cms-taxonomy-backoffice/taon-cms-taxonomy-backoffice.routes').then(\n m => m.TaonCmsCategoriesBackofficeRoutes,\n ),\n }),\n adminLazyRoute({\n isDisabled: ({ context }) => !context?.hasAccess.toManageCms,\n path: 'tags',\n menuItem: t.signal.gettext('Tags'),\n expandable: false,\n icon: 'label',\n loader: () =>\n import('../taon-cms-taxonomy-backoffice/taon-cms-taxonomy-backoffice.routes').then(\n m => m.TaonCmsTagsBackofficeRoutes,\n ),\n }),\n // adminLazyRoute({\n // path: 'dashboard',\n // menuItem: 'Dashboard',\n // icon: 'dashboard',\n // expandable: false,\n // loader: () =>\n // import('./anothermodule.routes').then(m => m.DashboardRoutes),\n // }),\n ],\n },\n];\n\n/**\n * By default exporting TaonCmsBackofficeRoutes,\n * the command `taon generate:app:routes`\n * will automatically add them to the root routes in ./src/app.ts.\n */\n// export default TaonCmsBackofficeRoutes;","import { Injectable } from '@angular/core';\nimport { Observable } from 'rxjs';\nimport { map } from 'rxjs/operators';\nimport { TaonBaseAngularService, Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\n\nimport type { TaonCmsCategoryEntity } from './taon-cms-category.entity';\nimport { TaonCmsCategoryController } from './taon-cms-category.controller';\nimport type { TaonCmsCategoryFields } from './taon-cms-taxonomy.validation';\n\n@Injectable()\nexport class TaonCmsCategoryApiService extends TaonBaseAngularService {\n protected readonly taonCmsCategoryController = this.injectController(\n TaonCmsCategoryController,\n );\n\n public get allMyEntities$(): Observable<TaonCmsCategoryEntity[]> {\n return this.taonCmsCategoryController.getAll().request!().observable.pipe(\n map(res => res.body?.json),\n );\n }\n\n save(\n id: number | null,\n input: TaonCmsCategoryFields,\n ): Observable<TaonCmsCategoryEntity> {\n return this.taonCmsCategoryController\n .saveCategory(id, input)\n .request()\n .observable.pipe(map(res => res.body.json));\n }\n\n delete(id: number): Observable<void> {\n return this.taonCmsCategoryController\n .deleteCategory(id)\n .request()\n .observable.pipe(map(() => undefined));\n }\n}","import type { TaonCmsCategoryEntity } from './taon-cms-category.entity';\n\nexport const TaonCmsCategoryDefaultsValues = {\n description: '',\n version: 0,\n id: void 0,\n} as Partial<TaonCmsCategoryEntity>;","export enum TaonCmsCategoryState {\n Active = 'active',\n Inactive = 'inactive',\n}","import { TaonCmsCategoryState } from './taon-cms-category.models';\n\n//namespace TaonCmsCategoryUtils\n\n export function TaonCmsCategoryUtils__NS__isActive(state: string): state is TaonCmsCategoryState {\n return state === 'active';\n }\n\n//end of namespace TaonCmsCategoryUtils\n","import { Translation } from '@taon-dev/i18n/browser-prod';\nimport { Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\n\nimport { contentError } from '../taon-cms-content/taon-cms-content.validation';\n\nconst t = Translation.for('src/lib/taon-cms-category/taon-cms-taxonomy.validation.ts', {\"src/lib/taon-cms-category/taon-cms-category.controller.ts\":{\"en-US\":async () => (await import('./i18n/taon-cms-category.controller.ts.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-category.controller.ts.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-category.controller.ts.de-DE.i18n.data')).default},\"src/lib/taon-cms-category/taon-cms-category.repository.ts\":{\"en-US\":async () => (await import('./i18n/taon-cms-category.repository.ts.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-category.repository.ts.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-category.repository.ts.de-DE.i18n.data')).default},\"src/lib/taon-cms-category/taon-cms-taxonomy.validation.ts\":{\"en-US\":async () => (await import('./i18n/taon-cms-taxonomy.validation.ts.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-taxonomy.validation.ts.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-taxonomy.validation.ts.de-DE.i18n.data')).default}} as any);\n\nexport interface TaonCmsTaxonomyFields {\n name: string;\n slug: string;\n description: string | null;\n}\n\nexport interface TaonCmsCategoryFields extends TaonCmsTaxonomyFields {\n parentCategoryId: number | null;\n sortOrder: number;\n}\n\nexport function validateTaxonomy(input: TaonCmsTaxonomyFields): void {\n if (\n !input ||\n typeof input.name !== 'string' ||\n !input.name.trim() ||\n typeof input.slug !== 'string' ||\n !input.slug.trim() ||\n (input.description !== null && typeof input.description !== 'string')\n ) {\n contentError(\n t.gettext('Name, slug, and a valid description are required.'),\n );\n }\n}\n\nexport function validateCategoryHierarchy(\n id: number | null,\n parentId: number | null,\n categories: { id: number; parentCategoryId: number | null }[],\n): void {\n const visited = new Set<number>();\n if (id !== null) {\n visited.add(id);\n }\n let current = parentId;\n while (current !== null) {\n if (visited.has(current)) {\n contentError(t.gettext('A category cannot be its own ancestor.'));\n }\n visited.add(current);\n const parent = categories.find(category => category.id === current);\n if (!parent) {\n contentError(t.gettext('The parent category does not exist.'));\n }\n current = parent.parentCategoryId;\n }\n}","import { Injectable } from '@angular/core';\nimport { Observable } from 'rxjs';\nimport { map } from 'rxjs/operators';\nimport { TaonBaseAngularService, Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\n\nimport type { TaonCmsCommentEntity } from './taon-cms-comment.entity';\nimport { TaonCmsCommentController } from './taon-cms-comment.controller';\n\n@Injectable()\nexport class TaonCmsCommentApiService extends TaonBaseAngularService {\n protected readonly taonCmsCommentController = this.injectController(TaonCmsCommentController);\n\n public get allMyEntities$(): Observable<TaonCmsCommentEntity[]> {\n return this.taonCmsCommentController.getAll().request!().observable.pipe(\n map(res => res.body?.json),\n );\n }\n\n public helloWorld(user:string): Observable<string> {\n return this.taonCmsCommentController.helloWord(user).request!().observable.pipe(\n map(res => res.responseText as string),\n );\n }\n}","import type { TaonCmsCommentEntity } from './taon-cms-comment.entity';\n\nexport const TaonCmsCommentDefaultsValues = {\n description: '',\n version: 0,\n id: void 0,\n} as Partial<TaonCmsCommentEntity>;","export enum TaonCmsCommentState {\n Active = 'active',\n Inactive = 'inactive',\n}","import { TaonCmsCommentState } from './taon-cms-comment.models';\n\n//namespace TaonCmsCommentUtils\n\n export function TaonCmsCommentUtils__NS__isActive(state: string): state is TaonCmsCommentState {\n return state === 'active';\n }\n\n//end of namespace TaonCmsCommentUtils\n","import { Injectable } from '@angular/core';\nimport { TaonBaseAngularService } from 'taon/browser-prod';\n\nimport { TaonCmsContentProvider } from './taon-cms-content.provider';\n\n@Injectable()\nexport class TaonCmsContentConfigService extends TaonBaseAngularService {\n taonCmsContentProvider = this.injectProvider(TaonCmsContentProvider);\n\n get siteName(): string {\n return this.taonCmsContentProvider.siteName;\n }\n}\n","import type { TaonCmsContentEntity } from './taon-cms-content.entity';\nimport { TaonCmsContentType } from './taon-cms-content.models';\n\nexport const TaonCmsContentDefaultsValues = {\n description: '',\n version: 0,\n id: void 0,\n type: TaonCmsContentType.Normal,\n videoKey: null,\n audioKey: null,\n attachmentKey: null,\n thumbnailKey: null,\n} as Partial<TaonCmsContentEntity>;\n","import { TaonCmsContentState } from './taon-cms-content.models';\n\n//namespace TaonCmsContentUtils\n\n export function TaonCmsContentUtils__NS__isActive(state: string): state is TaonCmsContentState {\n return state === 'active';\n }\n\n//end of namespace TaonCmsContentUtils\n","export interface TaonCmsTemplateContext {\n frontendUrl?: string | null;\n site?: { name?: string | null } | null;\n post?: {\n title?: string | null;\n url?: string | null;\n id?: number | null;\n thumbnailUrl?: string | null;\n } | null;\n}\n\nexport type TaonCmsTemplateVariable =\n | 'frontendUrl'\n | 'site.name'\n | 'currentYear'\n | 'post.title'\n | 'post.url'\n | 'post.id'\n | 'post.thumbnailUrl';\n\n/**\n * Resolves allowlisted values as HTML text/attribute data, not markup.\n * The returned HTML must still pass through the renderer's HTML sanitizer.\n */\nexport function resolveTemplateVariables(\n content: string | null | undefined,\n context: TaonCmsTemplateContext,\n): string {\n const values = new Map<string, string | number | null | undefined>([\n ['frontendUrl', context.frontendUrl],\n ['site.name', context.site?.name],\n ['currentYear', new Date().getFullYear()],\n ['post.title', context.post?.title],\n ['post.url', context.post?.url],\n ['post.id', context.post?.id],\n ['post.thumbnailUrl', context.post?.thumbnailUrl],\n ]);\n return (content ?? '').replace(\n /\\{\\{\\s*([a-zA-Z][a-zA-Z0-9]*(?:\\.[a-zA-Z][a-zA-Z0-9]*)*)\\s*\\}\\}/g,\n (placeholder: string, name: string) => {\n const value = values.get(name);\n if (value === null || value === undefined) {\n return placeholder;\n }\n return String(value)\n .replace(/&/g, '&amp;')\n .replace(/</g, '&lt;')\n .replace(/>/g, '&gt;')\n .replace(/\"/g, '&quot;')\n .replace(/'/g, '&#39;');\n },\n );\n}\n","import { Injectable } from '@angular/core';\nimport { Observable } from 'rxjs';\nimport { map } from 'rxjs/operators';\nimport { TaonBaseAngularService, Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\n\nimport type { TaonCmsContentAssetEntity } from './taon-cms-content-asset.entity';\nimport { TaonCmsContentAssetController } from './taon-cms-content-asset.controller';\n\n@Injectable()\nexport class TaonCmsContentAssetApiService extends TaonBaseAngularService {\n protected readonly taonCmsContentAssetController = this.injectController(\n TaonCmsContentAssetController,\n );\n\n public get allMyEntities$(): Observable<TaonCmsContentAssetEntity[]> {\n return this.taonCmsContentAssetController.getAll()\n .request!().observable.pipe(map(res => res.body?.json));\n }\n\n public helloWorld(user: string): Observable<string> {\n return this.taonCmsContentAssetController.helloWord(user)\n .request!().observable.pipe(map(res => res.responseText as string));\n }\n}","import type { TaonCmsContentAssetEntity } from './taon-cms-content-asset.entity';\n\nexport const TaonCmsContentAssetDefaultsValues = {\n description: '',\n version: 0,\n id: void 0,\n} as Partial<TaonCmsContentAssetEntity>;","export enum TaonCmsContentAssetState {\n Active = 'active',\n Inactive = 'inactive',\n}","import { TaonCmsContentAssetState } from './taon-cms-content-asset.models';\n\n//namespace TaonCmsContentAssetUtils\n\n export function TaonCmsContentAssetUtils__NS__isActive(state: string): state is TaonCmsContentAssetState {\n return state === 'active';\n }\n\n//end of namespace TaonCmsContentAssetUtils\n","import { Injectable } from '@angular/core';\nimport { Observable } from 'rxjs';\nimport { map } from 'rxjs/operators';\nimport { TaonBaseAngularService, Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\n\nimport type { TaonCmsContentPermissionEntity } from './taon-cms-content-permission.entity';\nimport { TaonCmsContentPermissionController } from './taon-cms-content-permission.controller';\n\n@Injectable()\nexport class TaonCmsContentPermissionApiService extends TaonBaseAngularService {\n protected readonly taonCmsContentPermissionController = this.injectController(\n TaonCmsContentPermissionController,\n );\n\n public get allMyEntities$(): Observable<TaonCmsContentPermissionEntity[]> {\n return this.taonCmsContentPermissionController.getAll()\n .request!().observable.pipe(map(res => res.body?.json));\n }\n\n public helloWorld(user: string): Observable<string> {\n return this.taonCmsContentPermissionController.helloWord(user)\n .request!().observable.pipe(map(res => res.responseText as string));\n }\n}","import type { TaonCmsContentPermissionEntity } from './taon-cms-content-permission.entity';\n\nexport const TaonCmsContentPermissionDefaultsValues = {\n description: '',\n version: 0,\n id: void 0,\n} as Partial<TaonCmsContentPermissionEntity>;","export enum TaonCmsContentPermissionState {\n Active = 'active',\n Inactive = 'inactive',\n}","import { TaonCmsContentPermissionState } from './taon-cms-content-permission.models';\n\n//namespace TaonCmsContentPermissionUtils\n\n export function TaonCmsContentPermissionUtils__NS__isActive(state: string): state is TaonCmsContentPermissionState {\n return state === 'active';\n }\n\n//end of namespace TaonCmsContentPermissionUtils\n","import { Injectable } from '@angular/core';\nimport { Observable } from 'rxjs';\nimport { map } from 'rxjs/operators';\nimport { TaonBaseAngularService, Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\n\nimport { TaonCmsContentController } from '../taon-cms-content/taon-cms-content.controller';\nimport type { TaonCmsContentEntity } from '../taon-cms-content/taon-cms-content.entity';\nimport type { TaonCmsRestoreContent } from '../taon-cms-content/taon-cms-content.models';\n\nimport type { TaonCmsContentRevisionEntity } from './taon-cms-content-revision.entity';\nimport { TaonCmsContentRevisionController } from './taon-cms-content-revision.controller';\n\n@Injectable()\nexport class TaonCmsContentRevisionApiService extends TaonBaseAngularService {\n protected readonly contentController = this.injectController(\n TaonCmsContentController,\n );\n\n protected readonly taonCmsContentRevisionController = this.injectController(\n TaonCmsContentRevisionController,\n );\n\n public listRevisions(id: number): Observable<TaonCmsContentRevisionEntity[]> {\n return this.contentController.listRevisions(id).request!().observable.pipe(\n map(res => res.body.json),\n );\n }\n\n public restoreContent(\n id: number,\n input: TaonCmsRestoreContent,\n ): Observable<TaonCmsContentEntity> {\n return this.contentController.restoreContent(id, input)\n .request!().observable.pipe(map(res => res.body.json));\n }\n\n public get allMyEntities$(): Observable<TaonCmsContentRevisionEntity[]> {\n return this.taonCmsContentRevisionController.getAll()\n .request!().observable.pipe(map(res => res.body?.json));\n }\n}","import type { TaonCmsContentRevisionEntity } from './taon-cms-content-revision.entity';\n\nexport const TaonCmsContentRevisionDefaultsValues = {\n description: '',\n version: 0,\n id: void 0,\n} as Partial<TaonCmsContentRevisionEntity>;","export enum TaonCmsContentRevisionState {\n Active = 'active',\n Inactive = 'inactive',\n}","import { TaonCmsContentRevisionState } from './taon-cms-content-revision.models';\n\n//namespace TaonCmsContentRevisionUtils\n\n export function TaonCmsContentRevisionUtils__NS__isActive(state: string): state is TaonCmsContentRevisionState {\n return state === 'active';\n }\n\n//end of namespace TaonCmsContentRevisionUtils\n","import { Injectable } from '@angular/core';\nimport { Observable } from 'rxjs';\nimport { map } from 'rxjs/operators';\nimport { TaonBaseAngularService, Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\n\nimport type { TaonCmsContentTagEntity } from './taon-cms-content-tag.entity';\nimport { TaonCmsContentTagController } from './taon-cms-content-tag.controller';\n\n@Injectable()\nexport class TaonCmsContentTagApiService extends TaonBaseAngularService {\n protected readonly taonCmsContentTagController = this.injectController(\n TaonCmsContentTagController,\n );\n\n public get allMyEntities$(): Observable<TaonCmsContentTagEntity[]> {\n return this.taonCmsContentTagController.getAll().request!().observable.pipe(\n map(res => res.body?.json),\n );\n }\n}","import type { TaonCmsContentTagEntity } from './taon-cms-content-tag.entity';\n\nexport const TaonCmsContentTagDefaultsValues = {\n description: '',\n version: 0,\n id: void 0,\n} as Partial<TaonCmsContentTagEntity>;","export enum TaonCmsContentTagState {\n Active = 'active',\n Inactive = 'inactive',\n}","import { TaonCmsContentTagState } from './taon-cms-content-tag.models';\n\n//namespace TaonCmsContentTagUtils\n\n export function TaonCmsContentTagUtils__NS__isActive(state: string): state is TaonCmsContentTagState {\n return state === 'active';\n }\n\n//end of namespace TaonCmsContentTagUtils\n","import { Injectable } from '@angular/core';\nimport { Observable } from 'rxjs';\nimport { map } from 'rxjs/operators';\nimport { TaonBaseAngularService, Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\n\nimport type { TaonCmsTagEntity } from './taon-cms-tag.entity';\nimport { TaonCmsTagController } from './taon-cms-tag.controller';\nimport type { TaonCmsTaxonomyFields } from '../taon-cms-category/taon-cms-taxonomy.validation';\n\n@Injectable()\nexport class TaonCmsTagApiService extends TaonBaseAngularService {\n private readonly taonCmsTagController =\n this.injectController(TaonCmsTagController);\n\n get allMyEntities$(): Observable<TaonCmsTagEntity[]> {\n return this.taonCmsTagController\n .getAll()\n .request()\n .observable.pipe(map(res => res.body.json));\n }\n\n save(\n id: number | null,\n input: TaonCmsTaxonomyFields,\n ): Observable<TaonCmsTagEntity> {\n return this.taonCmsTagController\n .saveTag(id, input)\n .request()\n .observable.pipe(map(res => res.body.json));\n }\n\n delete(id: number): Observable<void> {\n return this.taonCmsTagController\n .deleteTag(id)\n .request()\n .observable.pipe(map(() => undefined));\n }\n}","import type { TaonCmsTagEntity } from './taon-cms-tag.entity';\n\nexport const TaonCmsTagDefaultsValues = {\n description: '',\n version: 0,\n id: void 0,\n} as Partial<TaonCmsTagEntity>;","export enum TaonCmsTagState {\n Active = 'active',\n Inactive = 'inactive',\n}","import { TaonCmsTagState } from './taon-cms-tag.models';\n\n//namespace TaonCmsTagUtils\n\n export function TaonCmsTagUtils__NS__isActive(state: string): state is TaonCmsTagState {\n return state === 'active';\n }\n\n//end of namespace TaonCmsTagUtils\n","import {\n ChangeDetectionStrategy,\n Component,\n DestroyRef,\n inject,\n signal,\n} from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { FormsModule } from '@angular/forms';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatDialog } from '@angular/material/dialog';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { MatInputModule } from '@angular/material/input';\nimport { MatSelectModule } from '@angular/material/select';\nimport { ActivatedRoute } from '@angular/router';\nimport { MtxGridColumn } from '@ng-matero/extensions/grid';\nimport { Translation } from '@taon-dev/i18n/browser-prod';\nimport {\n TaonConfirmDialogComponent,\n TaonDatatableComponent,\n} from '@taon-dev/ui/browser-prod';\nimport { Observable, finalize } from 'rxjs';\nimport { Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\n\nimport { TaonCmsCategoryApiService } from '../taon-cms-category/taon-cms-category-api.service';\nimport type { TaonCmsCategoryEntity } from '../taon-cms-category/taon-cms-category.entity';\nimport type { TaonCmsCategoryFields } from '../taon-cms-category/taon-cms-taxonomy.validation';\nimport { TaonCmsTagApiService } from '../taon-cms-tag/taon-cms-tag-api.service';\nimport type { TaonCmsTagEntity } from '../taon-cms-tag/taon-cms-tag.entity';\n\nconst t = Translation.for('src/lib/taon-cms-taxonomy-backoffice/taon-cms-taxonomy-backoffice.component.ts', {\"src/lib/taon-cms-taxonomy-backoffice/taon-cms-taxonomy-backoffice.component.html\":{\"en-US\":async () => (await import('./i18n/taon-cms-taxonomy-backoffice.component.html.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-taxonomy-backoffice.component.html.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-taxonomy-backoffice.component.html.de-DE.i18n.data')).default},\"src/lib/taon-cms-taxonomy-backoffice/taon-cms-taxonomy-backoffice.component.ts\":{\"en-US\":async () => (await import('./i18n/taon-cms-taxonomy-backoffice.component.ts.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-taxonomy-backoffice.component.ts.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-taxonomy-backoffice.component.ts.de-DE.i18n.data')).default},\"src/lib/taon-cms-taxonomy-backoffice/taon-cms-taxonomy-quick-create-dialog.component.ts\":{\"en-US\":async () => (await import('./i18n/taon-cms-taxonomy-quick-create-dialog.component.ts.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-taxonomy-quick-create-dialog.component.ts.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-taxonomy-quick-create-dialog.component.ts.de-DE.i18n.data')).default}} as any);\ntype TaxonomyRow = TaonCmsCategoryEntity | TaonCmsTagEntity;\n\n@Component({\n selector: 'taon-cms-taxonomy-backoffice',\n templateUrl: './taon-cms-taxonomy-backoffice.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [\n FormsModule,\n MatButtonModule,\n MatFormFieldModule,\n MatInputModule,\n MatSelectModule,\n TaonDatatableComponent,\n ],\n providers: [TaonCmsCategoryApiService, TaonCmsTagApiService],\n styles: [\n `\n :host {\n display: block;\n }\n form {\n display: grid;\n gap: 1rem;\n max-width: 640px;\n margin-block: 1.5rem;\n }\n .actions {\n display: flex;\n flex-wrap: wrap;\n gap: 0.5rem;\n }\n `,\n ],\n})\nexport class TaonCmsTaxonomyBackofficeComponent {\n readonly t = t.for(this);\n readonly isCategory =\n inject(ActivatedRoute).snapshot.data['taxonomy'] === 'category';\n private readonly categories = inject(TaonCmsCategoryApiService);\n private readonly tags = inject(TaonCmsTagApiService);\n private readonly destroyRef = inject(DestroyRef);\n private readonly dialog = inject(MatDialog);\n readonly rows = signal<TaxonomyRow[]>([]);\n readonly busy = signal(false);\n readonly error = signal('');\n readonly editing = signal(false);\n editingId: number | null = null;\n draft: TaonCmsCategoryFields = this.emptyDraft();\n\n readonly columns: MtxGridColumn[] = [\n { header: this.t.gettext('Name'), field: 'name', sortable: true },\n { header: this.t.gettext('Slug'), field: 'slug', sortable: true },\n ...(this.isCategory\n ? [\n {\n header: this.t.gettext('Parent Category'),\n field: 'parentName',\n sortable: true,\n },\n {\n header: this.t.gettext('Sort Order'),\n field: 'sortOrder',\n sortable: true,\n },\n ]\n : [\n {\n header: this.t.gettext('Description'),\n field: 'description',\n sortable: true,\n },\n ]),\n {\n header: this.t.gettext('Actions'),\n field: 'actions',\n type: 'button',\n buttons: [\n {\n type: 'icon',\n icon: 'edit',\n tooltip: this.t.gettext('Edit'),\n disabled: () => this.busy(),\n click: (row: TaxonomyRow) => this.edit(row),\n },\n {\n type: 'icon',\n icon: 'delete',\n tooltip: this.t.gettext('Delete'),\n disabled: () => this.busy(),\n click: (row: TaxonomyRow) => this.delete(row),\n },\n ],\n },\n ];\n\n ngOnInit(): void {\n this.reload();\n }\n\n reload(): void {\n if (this.busy()) {\n return;\n }\n const request: Observable<TaxonomyRow[]> = this.isCategory\n ? this.categories.allMyEntities$\n : this.tags.allMyEntities$;\n this.run(request, rows => this.rows.set(rows));\n }\n\n tableRows() {\n return this.rows().map(row => ({\n ...row,\n parentName:\n 'parentCategoryId' in row\n ? (this.rows().find(parent => parent.id === row.parentCategoryId)\n ?.name ?? '')\n : '',\n }));\n }\n\n parentOptions(): TaonCmsCategoryEntity[] {\n const categories = this.rows().filter(\n (row): row is TaonCmsCategoryEntity => 'parentCategoryId' in row,\n );\n return categories.filter(category => {\n const visited = new Set<number>();\n let current: TaonCmsCategoryEntity | undefined = category;\n while (current) {\n if (current.id === this.editingId || visited.has(current.id)) {\n return false;\n }\n visited.add(current.id);\n current = categories.find(\n parent => parent.id === current?.parentCategoryId,\n );\n }\n return true;\n });\n }\n\n edit(row?: TaxonomyRow): void {\n if (this.busy()) {\n return;\n }\n this.editingId = row?.id ?? null;\n this.draft = row\n ? {\n name: row.name,\n slug: row.slug,\n description: row.description,\n parentCategoryId:\n 'parentCategoryId' in row ? row.parentCategoryId : null,\n sortOrder: 'sortOrder' in row ? row.sortOrder : 0,\n }\n : this.emptyDraft();\n this.error.set('');\n this.editing.set(true);\n }\n\n save(): void {\n if (this.busy()) {\n return;\n }\n const request: Observable<TaxonomyRow> = this.isCategory\n ? this.categories.save(this.editingId, this.draft)\n : this.tags.save(this.editingId, this.draft);\n this.run(request, saved => {\n this.editing.set(false);\n this.rows.update(rows => [\n ...rows.filter(row => row.id !== saved.id),\n saved,\n ]);\n });\n }\n\n delete(row: TaxonomyRow): void {\n if (this.busy()) {\n return;\n }\n this.dialog\n .open(TaonConfirmDialogComponent, {\n data: {\n title: this.isCategory\n ? this.t.gettext('Delete category?')\n : this.t.gettext('Delete tag?'),\n message: this.t.gettext(\n 'Only unused items can be deleted. This cannot be undone.',\n ),\n confirmText: this.t.gettext('Delete'),\n },\n })\n .afterClosed()\n .pipe(takeUntilDestroyed(this.destroyRef))\n .subscribe(confirmed => {\n if (confirmed) {\n this.run(\n this.isCategory\n ? this.categories.delete(row.id)\n : this.tags.delete(row.id),\n () => {\n if (this.editingId === row.id) {\n this.editing.set(false);\n }\n this.rows.update(rows => rows.filter(item => item.id !== row.id));\n },\n );\n }\n });\n }\n\n private run<T>(request: Observable<T>, next: (value: T) => void): void {\n if (this.busy()) {\n return;\n }\n this.busy.set(true);\n this.error.set('');\n request\n .pipe(\n takeUntilDestroyed(this.destroyRef),\n finalize(() => this.busy.set(false)),\n )\n .subscribe({\n next: value => {\n this.busy.set(false);\n next(value);\n },\n error: (error: unknown) => {\n console.error('[taon-cms-taxonomy] Operation failed', error);\n this.error.set(\n this.t.gettext(\n 'The operation failed. Check for duplicate names or slugs, invalid parents, or items still used by posts or child categories, then reload and try again.',\n ),\n );\n },\n });\n }\n\n private emptyDraft(): TaonCmsCategoryFields {\n return {\n name: '',\n slug: '',\n description: '',\n parentCategoryId: null,\n sortOrder: 0,\n };\n }\n}","<h1>{{ isCategory ? t.gettext('Categories') : t.gettext('Tags') }}</h1>\n<div class=\"actions\">\n <button\n mat-button\n type=\"button\"\n [disabled]=\"busy()\"\n (click)=\"edit()\">\n {{ isCategory ? t.gettext('Create category') : t.gettext('Create tag') }}\n </button>\n <button\n mat-button\n type=\"button\"\n [disabled]=\"busy()\"\n (click)=\"reload()\">\n {{ t.gettext('Reload') }}\n </button>\n</div>\n@if (error()) {\n <p role=\"alert\">{{ error() }}</p>\n}\n@if (busy()) {\n <p role=\"status\">{{ t.gettext('Loading...') }}</p>\n}\n@if (editing()) {\n <form\n #form=\"ngForm\"\n (ngSubmit)=\"save()\">\n <h2>{{ editingId === null ? t.gettext('Create') : t.gettext('Edit') }}</h2>\n <mat-form-field appearance=\"outline\">\n <mat-label>{{ t.gettext('Name') }}</mat-label>\n <input\n matInput\n name=\"name\"\n required\n [(ngModel)]=\"draft.name\"\n [disabled]=\"busy()\" />\n </mat-form-field>\n <mat-form-field appearance=\"outline\">\n <mat-label>{{ t.gettext('Slug') }}</mat-label>\n <input\n matInput\n name=\"slug\"\n required\n [(ngModel)]=\"draft.slug\"\n [disabled]=\"busy()\" />\n </mat-form-field>\n <mat-form-field appearance=\"outline\">\n <mat-label>{{ t.gettext('Description') }}</mat-label>\n <textarea\n matInput\n name=\"description\"\n [(ngModel)]=\"draft.description\"\n [disabled]=\"busy()\"></textarea>\n </mat-form-field>\n @if (isCategory) {\n <mat-form-field appearance=\"outline\">\n <mat-label>{{ t.gettext('Parent Category') }}</mat-label>\n <mat-select\n name=\"parentCategoryId\"\n [(ngModel)]=\"draft.parentCategoryId\"\n [disabled]=\"busy()\">\n <mat-option [value]=\"null\">{{ t.gettext('None') }}</mat-option>\n @for (category of parentOptions(); track category.id) {\n <mat-option [value]=\"category.id\">{{ category.name }}</mat-option>\n }\n </mat-select>\n </mat-form-field>\n <mat-form-field appearance=\"outline\">\n <mat-label>{{ t.gettext('Sort Order') }}</mat-label>\n <input\n matInput\n name=\"sortOrder\"\n type=\"number\"\n step=\"1\"\n required\n [(ngModel)]=\"draft.sortOrder\"\n [disabled]=\"busy()\" />\n </mat-form-field>\n }\n <div class=\"actions\">\n <button\n mat-flat-button\n type=\"submit\"\n [disabled]=\"\n busy() || form.invalid || !draft.name.trim() || !draft.slug.trim()\n \">\n {{ t.gettext('Save') }}\n </button>\n <button\n mat-button\n type=\"button\"\n [disabled]=\"busy()\"\n (click)=\"editing.set(false)\">\n {{ t.gettext('Cancel') }}\n </button>\n </div>\n </form>\n}\n<taon-datatable\n [data]=\"tableRows()\"\n [columns]=\"columns\"\n [hideAddButton]=\"true\"\n searchMode=\"advanced\">\n</taon-datatable>\n","import { Routes } from '@angular/router';\n\nexport const TaonCmsCategoriesBackofficeRoutes: Routes = [\n {\n path: '',\n data: { taxonomy: 'category' },\n loadComponent: () =>\n import('./taon-cms-taxonomy-backoffice.component').then(\n m => m.TaonCmsTaxonomyBackofficeComponent,\n ),\n },\n];\n\nexport const TaonCmsTagsBackofficeRoutes: Routes = [\n {\n path: '',\n data: { taxonomy: 'tag' },\n loadComponent: () =>\n import('./taon-cms-taxonomy-backoffice.component').then(\n m => m.TaonCmsTaxonomyBackofficeComponent,\n ),\n },\n];\n","import { ChangeDetectionStrategy, Component, inject } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { MatButtonModule } from '@angular/material/button';\nimport {\n MAT_DIALOG_DATA,\n MatDialogModule,\n MatDialogRef,\n} from '@angular/material/dialog';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { MatInputModule } from '@angular/material/input';\nimport { Translation } from '@taon-dev/i18n/browser-prod';\nimport { Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\nimport { ___NS__add, ___NS__after, ___NS__ary, ___NS__assign, ___NS__assignIn, ___NS__assignInWith, ___NS__assignWith, ___NS__at, ___NS__attempt, ___NS__before, ___NS__bind, ___NS__bindAll, ___NS__bindKey, ___NS__camelCase, ___NS__capitalize, ___NS__castArray, ___NS__ceil, ___NS__chain, ___NS__chunk, ___NS__clamp, ___NS__clone, ___NS__cloneDeep, ___NS__cloneDeepWith, ___NS__cloneWith, ___NS__compact, ___NS__concat, ___NS__cond, ___NS__conforms, ___NS__conformsTo, ___NS__constant, ___NS__countBy, ___NS__create, ___NS__curry, ___NS__curryRight, ___NS__debounce, ___NS__deburr, ___NS__defaults, ___NS__defaultsDeep, ___NS__defaultTo, ___NS__defer, ___NS__delay, ___NS__difference, ___NS__differenceBy, ___NS__differenceWith, ___NS__divide, ___NS__drop, ___NS__dropRight, ___NS__dropRightWhile, ___NS__dropWhile, ___NS__each, ___NS__eachRight, ___NS__endsWith, ___NS__entries, ___NS__entriesIn, ___NS__eq, ___NS__escape, ___NS__escapeRegExp, ___NS__every, ___NS__extend, ___NS__extendWith, ___NS__fill, ___NS__filter, ___NS__find, ___NS__findIndex, ___NS__findKey, ___NS__findLast, ___NS__findLastIndex, ___NS__findLastKey, ___NS__first, ___NS__flatMap, ___NS__flatMapDeep, ___NS__flatMapDepth, ___NS__flatten, ___NS__flattenDeep, ___NS__flattenDepth, ___NS__flip, ___NS__floor, ___NS__flow, ___NS__flowRight, ___NS__forEach, ___NS__forEachRight, ___NS__forIn, ___NS__forInRight, ___NS__forOwn, ___NS__forOwnRight, ___NS__fromPairs, ___NS__functions, ___NS__functionsIn, ___NS__get, ___NS__groupBy, ___NS__gt, ___NS__gte, ___NS__has, ___NS__hasIn, ___NS__head, ___NS__identity, ___NS__includes, ___NS__indexOf, ___NS__initial, ___NS__inRange, ___NS__intersection, ___NS__intersectionBy, ___NS__intersectionWith, ___NS__invert, ___NS__invertBy, ___NS__invoke, ___NS__invokeMap, ___NS__isArguments, ___NS__isArray, ___NS__isArrayBuffer, ___NS__isArrayLike, ___NS__isArrayLikeObject, ___NS__isBoolean, ___NS__isBuffer, ___NS__isDate, ___NS__isElement, ___NS__isEmpty, ___NS__isEqual, ___NS__isEqualWith, ___NS__isError, ___NS__isFinite, ___NS__isFunction, ___NS__isInteger, ___NS__isLeafObject, ___NS__isLength, ___NS__isMap, ___NS__isMatch, ___NS__isMatchWith, ___NS__isNaN, ___NS__isNative, ___NS__isNil, ___NS__isNull, ___NS__isNumber, ___NS__isObject, ___NS__isObjectLike, ___NS__isPlainObject, ___NS__isRegExp, ___NS__isSafeInteger, ___NS__isSet, ___NS__isString, ___NS__isSymbol, ___NS__isTypedArray, ___NS__isUndefined, ___NS__isWeakMap, ___NS__isWeakSet, ___NS__iteratee, ___NS__join, ___NS__kebabCase, ___NS__keyBy, ___NS__keys, ___NS__keysIn, ___NS__last, ___NS__lastIndexOf, ___NS__lowerCase, ___NS__lowerFirst, ___NS__lt, ___NS__lte, ___NS__map, ___NS__mapKeys, ___NS__mapValues, ___NS__matches, ___NS__matchesProperty, ___NS__max, ___NS__maxBy, ___NS__mean, ___NS__meanBy, ___NS__memoize, ___NS__merge, ___NS__mergeWith, ___NS__method, ___NS__methodOf, ___NS__min, ___NS__minBy, ___NS__mixin, ___NS__multiply, ___NS__negate, ___NS__noop, ___NS__now, ___NS__nth, ___NS__nthArg, ___NS__omit, ___NS__omitBy, ___NS__once, ___NS__orderBy, ___NS__over, ___NS__overArgs, ___NS__overEvery, ___NS__overSome, ___NS__pad, ___NS__padEnd, ___NS__padStart, ___NS__parseInt, ___NS__partial, ___NS__partialRight, ___NS__partition, ___NS__pick, ___NS__pickBy, ___NS__property, ___NS__propertyOf, ___NS__pull, ___NS__pullAll, ___NS__pullAllBy, ___NS__pullAllWith, ___NS__pullAt, ___NS__random, ___NS__range, ___NS__rangeRight, ___NS__rearg, ___NS__reduce, ___NS__reduceRight, ___NS__reject, ___NS__remove, ___NS__repeat, ___NS__replace, ___NS__rest, ___NS__result, ___NS__reverse, ___NS__round, ___NS__sample, ___NS__sampleSize, ___NS__set, ___NS__setWith, ___NS__shuffle, ___NS__size, ___NS__slice, ___NS__snakeCase, ___NS__some, ___NS__sortBy, ___NS__sortedIndex, ___NS__sortedIndexBy, ___NS__sortedIndexOf, ___NS__sortedLastIndex, ___NS__sortedLastIndexBy, ___NS__sortedLastIndexOf, ___NS__sortedUniq, ___NS__sortedUniqBy, ___NS__split, ___NS__spread, ___NS__startCase, ___NS__startsWith, ___NS__stubArray, ___NS__stubFalse, ___NS__stubObject, ___NS__stubString, ___NS__stubTrue, ___NS__subtract, ___NS__sum, ___NS__sumBy, ___NS__tail, ___NS__take, ___NS__takeRight, ___NS__takeRightWhile, ___NS__takeWhile, ___NS__tap, ___NS__template, ___NS__templateSettings, ___NS__throttle, ___NS__thru, ___NS__times, ___NS__toArray, ___NS__toFinite, ___NS__toInteger, ___NS__toLength, ___NS__toLower, ___NS__toNumber, ___NS__toPairs, ___NS__toPairsIn, ___NS__toPath, ___NS__toPlainObject, ___NS__toSafeInteger, ___NS__toString, ___NS__toUpper, ___NS__transform, ___NS__trim, ___NS__trimEnd, ___NS__trimStart, ___NS__truncate, ___NS__unary, ___NS__unescape, ___NS__union, ___NS__unionBy, ___NS__unionWith, ___NS__uniq, ___NS__uniqBy, ___NS__uniqueId, ___NS__uniqWith, ___NS__unset, ___NS__unzip, ___NS__unzipWith, ___NS__update, ___NS__updateWith, ___NS__upperCase, ___NS__upperFirst, ___NS__values, ___NS__valuesIn, ___NS__without, ___NS__words, ___NS__wrap, ___NS__xor, ___NS__xorBy, ___NS__xorWith, ___NS__zip, ___NS__zipObject, ___NS__zipObjectDeep, ___NS__zipWith } from 'tnp-core/browser-prod';\n\nconst t = Translation.for('src/lib/taon-cms-taxonomy-backoffice/taon-cms-taxonomy-quick-create-dialog.component.ts', {\"src/lib/taon-cms-taxonomy-backoffice/taon-cms-taxonomy-backoffice.component.html\":{\"en-US\":async () => (await import('./i18n/taon-cms-taxonomy-backoffice.component.html.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-taxonomy-backoffice.component.html.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-taxonomy-backoffice.component.html.de-DE.i18n.data')).default},\"src/lib/taon-cms-taxonomy-backoffice/taon-cms-taxonomy-backoffice.component.ts\":{\"en-US\":async () => (await import('./i18n/taon-cms-taxonomy-backoffice.component.ts.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-taxonomy-backoffice.component.ts.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-taxonomy-backoffice.component.ts.de-DE.i18n.data')).default},\"src/lib/taon-cms-taxonomy-backoffice/taon-cms-taxonomy-quick-create-dialog.component.ts\":{\"en-US\":async () => (await import('./i18n/taon-cms-taxonomy-quick-create-dialog.component.ts.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-taxonomy-quick-create-dialog.component.ts.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-taxonomy-quick-create-dialog.component.ts.de-DE.i18n.data')).default}} as any);\n\nexport interface TaonCmsTaxonomyQuickCreateData {\n taxonomy: 'category' | 'tag';\n}\n\nexport interface TaonCmsTaxonomyQuickCreateResult {\n name: string;\n slug: string;\n description: string | null;\n parentCategoryId: number | null;\n sortOrder: number;\n}\n\n@Component({\n selector: 'taon-cms-taxonomy-quick-create-dialog',\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [\n FormsModule,\n MatButtonModule,\n MatDialogModule,\n MatFormFieldModule,\n MatInputModule,\n ],\n template: `\n <h2 mat-dialog-title>\n {{\n data.taxonomy === 'category'\n ? t.gettext('Add category')\n : t.gettext('Add tag')\n }}\n </h2>\n <form (ngSubmit)=\"create()\">\n <mat-dialog-content>\n <mat-form-field appearance=\"outline\">\n <mat-label>{{ t.gettext('Name') }}</mat-label>\n <input\n matInput\n name=\"name\"\n required\n [ngModel]=\"name\"\n (ngModelChange)=\"updateName($event)\" />\n </mat-form-field>\n <mat-form-field appearance=\"outline\">\n <mat-label>{{ t.gettext('Slug') }}</mat-label>\n <input\n matInput\n name=\"slug\"\n required\n [(ngModel)]=\"slug\"\n (input)=\"slugManuallySet = true\" />\n </mat-form-field>\n <mat-form-field appearance=\"outline\">\n <mat-label>{{ t.gettext('Description') }}</mat-label>\n <textarea\n matInput\n name=\"description\"\n [(ngModel)]=\"description\"></textarea>\n </mat-form-field>\n </mat-dialog-content>\n <mat-dialog-actions align=\"end\">\n <button\n mat-button\n type=\"button\"\n (click)=\"dialogRef.close()\">\n {{ t.gettext('Cancel') }}\n </button>\n <button\n mat-flat-button\n color=\"primary\"\n type=\"submit\"\n [disabled]=\"!name.trim() || !slug.trim()\">\n {{ t.gettext('Create') }}\n </button>\n </mat-dialog-actions>\n </form>\n `,\n})\nexport class TaonCmsTaxonomyQuickCreateDialogComponent {\n readonly t = t.for(this);\n\n readonly data = inject<TaonCmsTaxonomyQuickCreateData>(MAT_DIALOG_DATA);\n\n readonly dialogRef = inject<\n MatDialogRef<\n TaonCmsTaxonomyQuickCreateDialogComponent,\n TaonCmsTaxonomyQuickCreateResult\n >\n >(MatDialogRef);\n\n name = '';\n\n slug = '';\n\n description = '';\n\n slugManuallySet = false;\n\n updateName(value: string): void {\n this.name = value;\n if (!this.slugManuallySet) {\n this.slug = ___NS__kebabCase(value);\n }\n }\n\n create(): void {\n if (!this.name.trim() || !this.slug.trim()) {\n return;\n }\n this.dialogRef.close({\n name: this.name.trim(),\n slug: this.slug.trim(),\n description: this.description.trim() || null,\n parentCategoryId: null,\n sortOrder: 0,\n });\n }\n}","import { DestroyRef, Directive, inject, signal } from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { MatDialog } from '@angular/material/dialog';\nimport { ActivatedRoute, Router } from '@angular/router';\nimport { MtxGridColumn } from '@ng-matero/extensions/grid';\nimport { Translation } from '@taon-dev/i18n/browser-prod';\nimport { TaonConfirmDialogComponent } from '@taon-dev/ui/browser-prod';\nimport { finalize } from 'rxjs';\nimport { Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\n\nimport { TaonCmsContentApiService } from '../../taon-cms-content/taon-cms-content-api.service';\nimport type { TaonCmsContentEntity } from '../../taon-cms-content/taon-cms-content.entity';\n\nconst t = Translation.for('src/lib/taon-posts/taon-cms-posts-backoffice/taon-cms-post-table-actions.directive.ts', {\"src/lib/taon-posts/taon-cms-posts-backoffice/taon-cms-post-table-actions.directive.ts\":{\"en-US\":async () => (await import('./i18n/taon-cms-post-table-actions.directive.ts.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-post-table-actions.directive.ts.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-post-table-actions.directive.ts.de-DE.i18n.data')).default},\"src/lib/taon-posts/taon-cms-posts-backoffice/taon-cms-posts-backoffice.component.html\":{\"en-US\":async () => (await import('./i18n/taon-cms-posts-backoffice.component.html.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-posts-backoffice.component.html.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-posts-backoffice.component.html.de-DE.i18n.data')).default},\"src/lib/taon-posts/taon-cms-posts-backoffice/taon-cms-posts-backoffice.component.ts\":{\"en-US\":async () => (await import('./i18n/taon-cms-posts-backoffice.component.ts.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-posts-backoffice.component.ts.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-posts-backoffice.component.ts.de-DE.i18n.data')).default},\"src/lib/taon-posts/taon-cms-posts-backoffice/taon-cms-posts-backoffice.routes.ts\":{\"en-US\":async () => (await import('./i18n/taon-cms-posts-backoffice.routes.ts.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-posts-backoffice.routes.ts.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-posts-backoffice.routes.ts.de-DE.i18n.data')).default}} as any);\n\n@Directive()\nexport abstract class TaonCmsPostTableActions {\n private readonly actionsTranslation = t.for(this);\n\n readonly taonCmsContentApiService = inject(TaonCmsContentApiService);\n\n readonly deleting = signal<number | null>(null);\n\n readonly duplicating = signal(false);\n\n readonly error = signal('');\n\n protected readonly destroyRef = inject(DestroyRef);\n\n protected readonly postPath: string[] = [];\n\n protected readonly backContext: 'posts' | 'courses' = 'posts';\n\n private readonly dialog = inject(MatDialog);\n\n private readonly route = inject(ActivatedRoute);\n\n private readonly router = inject(Router);\n\n readonly actionsColumn: MtxGridColumn = {\n header: this.actionsTranslation.gettext('Actions'),\n field: 'actions',\n type: 'button',\n buttons: [\n {\n type: 'icon',\n icon: 'content_copy',\n tooltip: this.actionsTranslation.gettext('Duplicate post'),\n disabled: () => this.duplicating(),\n click: (post: TaonCmsContentEntity) => this.duplicate(post),\n },\n {\n type: 'icon',\n icon: 'open_in_new',\n tooltip: this.actionsTranslation.gettext('Post details'),\n click: (post: TaonCmsContentEntity) => this.openDetails(post),\n },\n {\n type: 'icon',\n icon: 'delete',\n tooltip: this.actionsTranslation.gettext('Delete (archive) post'),\n disabled: (post: TaonCmsContentEntity) =>\n post.status === 'archived' || this.deleting() !== null,\n click: (post: TaonCmsContentEntity) => this.delete(post),\n },\n ],\n };\n\n abstract reload(): void;\n\n add(): void {\n this.openPost('new');\n }\n\n openDetails(post: TaonCmsContentEntity): void {\n this.openPost(post.id);\n }\n\n private openPost(id: number | 'new'): void {\n const postsRoute = this.route.parent;\n if (!postsRoute) {\n this.error.set(\n this.actionsTranslation.gettext('The Post details route is unavailable.'),\n );\n return;\n }\n void this.router\n .navigate([...this.postPath, id], {\n relativeTo: postsRoute,\n queryParams:\n this.backContext === 'courses'\n ? { postOrigin: 'courses' }\n : undefined,\n queryParamsHandling: 'preserve',\n })\n .catch(error => {\n console.error(\n '[taon-cms-posts-backoffice] Unable to open post',\n error,\n );\n this.error.set(\n this.actionsTranslation.gettext(\n 'The Post details route is unavailable.',\n ),\n );\n });\n }\n\n duplicate(post: TaonCmsContentEntity): void {\n if (this.duplicating()) {\n return;\n }\n this.duplicating.set(true);\n this.error.set('');\n this.taonCmsContentApiService\n .duplicateContent(post.id)\n .pipe(\n takeUntilDestroyed(this.destroyRef),\n finalize(() => this.duplicating.set(false)),\n )\n .subscribe({\n next: duplicate => this.openDetails(duplicate),\n error: (error: unknown) => {\n console.error(\n '[taon-cms-posts-backoffice] Unable to duplicate post',\n error,\n );\n this.error.set(\n this.actionsTranslation.gettext(\n 'The post could not be duplicated. Please try again.',\n ),\n );\n },\n });\n }\n\n delete(post: TaonCmsContentEntity): void {\n if (this.deleting() !== null || post.status === 'archived') {\n return;\n }\n this.deleting.set(post.id);\n const ref = this.dialog.open(TaonConfirmDialogComponent, {\n data: {\n title: this.actionsTranslation.gettext('Delete post?'),\n message: this.actionsTranslation.gettext(\n 'This archives the post. It can be restored from its revisions.',\n ),\n confirmText: this.actionsTranslation.gettext('Delete'),\n },\n });\n ref\n .afterClosed()\n .pipe(takeUntilDestroyed(this.destroyRef))\n .subscribe(confirmed => {\n if (!confirmed) {\n this.deleting.set(null);\n return;\n }\n this.error.set('');\n this.taonCmsContentApiService\n .deleteContent(post.id, post.version)\n .pipe(\n takeUntilDestroyed(this.destroyRef),\n finalize(() => this.deleting.set(null)),\n )\n .subscribe({\n next: () => this.reload(),\n error: (error: unknown) => {\n console.error(\n '[taon-cms-posts-backoffice] Unable to delete post',\n error,\n );\n this.error.set(\n this.actionsTranslation.gettext(\n 'The post could not be deleted. Refresh the table before retrying.',\n ),\n );\n },\n });\n });\n }\n}","import {\n ChangeDetectionStrategy,\n Component,\n DestroyRef,\n Input,\n OnInit,\n inject,\n signal,\n} from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MtxGridColumn } from '@ng-matero/extensions/grid';\nimport { Translation } from '@taon-dev/i18n/browser-prod';\nimport { TaonDatatableComponent } from '@taon-dev/ui/browser-prod';\nimport { finalize } from 'rxjs';\nimport { Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\n\nimport { TaonCmsContentApiService } from '../../taon-cms-content/taon-cms-content-api.service';\nimport type { TaonCmsContentEntity } from '../../taon-cms-content/taon-cms-content.entity';\n\nconst t = Translation.for('src/lib/taon-posts/taon-cms-course-backoffice/taon-cms-course-contents.component.ts', {\"src/lib/taon-posts/taon-cms-course-backoffice/taon-cms-course-backoffice.component.html\":{\"en-US\":async () => (await import('./i18n/taon-cms-course-backoffice.component.html.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-course-backoffice.component.html.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-course-backoffice.component.html.de-DE.i18n.data')).default},\"src/lib/taon-posts/taon-cms-course-backoffice/taon-cms-course-backoffice.component.ts\":{\"en-US\":async () => (await import('./i18n/taon-cms-course-backoffice.component.ts.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-course-backoffice.component.ts.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-course-backoffice.component.ts.de-DE.i18n.data')).default},\"src/lib/taon-posts/taon-cms-course-backoffice/taon-cms-course-contents.component.html\":{\"en-US\":async () => (await import('./i18n/taon-cms-course-contents.component.html.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-course-contents.component.html.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-course-contents.component.html.de-DE.i18n.data')).default},\"src/lib/taon-posts/taon-cms-course-backoffice/taon-cms-course-contents.component.ts\":{\"en-US\":async () => (await import('./i18n/taon-cms-course-contents.component.ts.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-course-contents.component.ts.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-course-contents.component.ts.de-DE.i18n.data')).default},\"src/lib/taon-posts/taon-cms-course-backoffice/taon-cms-course-cover.component.ts\":{\"en-US\":async () => (await import('./i18n/taon-cms-course-cover.component.ts.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-course-cover.component.ts.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-course-cover.component.ts.de-DE.i18n.data')).default}} as any);\n\n@Component({\n selector: 'taon-cms-course-contents',\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [MatButtonModule, TaonDatatableComponent],\n templateUrl: './taon-cms-course-contents.component.html',\n})\nexport class TaonCmsCourseContentsComponent implements OnInit {\n readonly t = t.for(this);\n\n @Input({ required: true })\n course!: TaonCmsContentEntity;\n\n @Input({ required: true })\n actionsColumn!: MtxGridColumn;\n\n private readonly api = inject(TaonCmsContentApiService);\n\n private readonly destroyRef = inject(DestroyRef);\n\n readonly posts = signal<TaonCmsContentEntity[]>([]);\n\n readonly loading = signal(false);\n\n readonly error = signal('');\n\n readonly copyFeedback = signal('');\n\n columns: MtxGridColumn[] = [];\n\n ngOnInit(): void {\n this.columns = [\n { header: 'ID', field: 'id', sortable: true },\n { header: this.t.gettext('Title'), field: 'title', sortable: true },\n { header: this.t.gettext('Status'), field: 'status', sortable: true },\n this.actionsColumn,\n ];\n this.reload();\n }\n\n reload(): void {\n if (this.loading()) {\n return;\n }\n this.loading.set(true);\n this.error.set('');\n this.api.listRelatedPosts(this.course.id)\n .pipe(\n takeUntilDestroyed(this.destroyRef),\n finalize(() => this.loading.set(false)),\n )\n .subscribe({\n next: posts =>\n this.posts.set(posts.filter(post => post.status !== 'archived')),\n error: (error: unknown) => {\n console.error(\n '[taon-cms-course-contents] Unable to load related posts',\n error,\n );\n this.error.set(\n this.t.gettext('Course contents could not be loaded. Please retry.'),\n );\n },\n });\n }\n\n async copyCourseSlug(): Promise<void> {\n this.copyFeedback.set('');\n try {\n if (!navigator.clipboard) {\n throw new Error('Clipboard access is unavailable.');\n }\n await navigator.clipboard.writeText(this.course.slug);\n this.copyFeedback.set(this.t.gettext('Course slug copied.'));\n } catch (error: unknown) {\n console.error('[taon-cms-course-contents] Unable to copy course slug', error);\n this.copyFeedback.set(\n this.t.gettext('The course slug could not be copied.'),\n );\n }\n }\n}","<section [attr.aria-label]=\"t.gettext('Course contents')\">\n <h2>{{ t.gettext('Course contents') }}: {{ course.title }}</h2>\n <button\n mat-button\n type=\"button\"\n (click)=\"copyCourseSlug()\">\n {{ t.gettext('Copy slug: [[ slug ]]', { slug: course.slug }) }}\n </button>\n @if (copyFeedback()) {\n <p role=\"status\">{{ copyFeedback() }}</p>\n }\n @if (loading()) {\n <p role=\"status\">{{ t.gettext('Loading course contents...') }}</p>\n }\n @if (error()) {\n <p role=\"alert\">{{ error() }}</p>\n <button mat-button type=\"button\" (click)=\"reload()\">\n {{ t.gettext('Retry') }}\n </button>\n }\n <taon-datatable\n [pageSize]=\"posts().length || 1\"\n [data]=\"posts()\"\n [columns]=\"columns\"\n [showPaginator]=\"false\"\n [hideSearch]=\"true\"\n [hideAddButton]=\"true\">\n </taon-datatable>\n</section>\n","import { TaonCmsContentType } from '../../taon-cms-content/taon-cms-content.models';\n\nexport function defaultThumbnailKey(type: TaonCmsContentType): string {\n return `cms-placeholder:${type}`;\n}\n\nexport function defaultThumbnailUrl(key: string): string | null {\n const type = Object.values(TaonCmsContentType).find(\n value => key === defaultThumbnailKey(value),\n );\n if (!type) {\n return null;\n }\n const shapes: Record<TaonCmsContentType, string> = {\n normal:\n '<path d=\"M260 126h120v112H260z M280 152h80m-80 20h80m-80 20h52\" />',\n video:\n '<rect x=\"248\" y=\"132\" width=\"144\" height=\"100\" rx=\"16\"/><path d=\"m308 158 40 24-40 24z\"/>',\n audio: '<path d=\"M280 164v40m20-60v80m20-98v116m20-98v80m20-60v40\"/>',\n attachment:\n '<path d=\"M276 124h60l32 32v84h-92z M336 124v36h32m-70 30h48m-48 22h36\"/>',\n };\n const svg = `<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"640\" height=\"360\" viewBox=\"0 0 640 360\"><defs><linearGradient id=\"bg\" x2=\"1\" y2=\"1\"><stop stop-color=\"#eaf0ff\"/><stop offset=\"1\" stop-color=\"#e4f5f0\"/></linearGradient></defs><rect width=\"640\" height=\"360\" rx=\"24\" fill=\"url(#bg)\"/><circle cx=\"320\" cy=\"180\" r=\"112\" fill=\"#fff\" opacity=\".65\"/><g fill=\"none\" stroke=\"#52669a\" stroke-width=\"7\" stroke-linecap=\"round\" stroke-linejoin=\"round\">${shapes[type]}</g></svg>`;\n return `data:image/svg+xml,${encodeURIComponent(svg)}`;\n}\n\nexport function visiblePixelRatio(pixels: Uint8ClampedArray): number {\n let visible = 0;\n for (let index = 0; index < pixels.length; index += 4) {\n const luminance =\n 0.2126 * pixels[index] +\n 0.7152 * pixels[index + 1] +\n 0.0722 * pixels[index + 2];\n if (luminance > 18) {\n visible += 1;\n }\n }\n return pixels.length ? visible / (pixels.length / 4) : 0;\n}\n\nfunction videoEvent(\n video: HTMLVideoElement,\n event: string,\n action: () => void,\n): Promise<void> {\n return new Promise((resolve, reject) => {\n const cleanup = () => {\n clearTimeout(timeout);\n video.removeEventListener(event, done);\n video.removeEventListener('error', failed);\n };\n const done = () => {\n cleanup();\n resolve();\n };\n const failed = () => {\n cleanup();\n reject(new Error(video.error?.message || 'Video decoding failed.'));\n };\n const timeout = setTimeout(() => {\n cleanup();\n reject(new Error('Video decoding timed out.'));\n }, 15000);\n video.addEventListener(event, done, { once: true });\n video.addEventListener('error', failed, { once: true });\n try {\n action();\n } catch (error: unknown) {\n cleanup();\n reject(error);\n }\n });\n}\n\nexport async function generateVideoThumbnail(file: Blob): Promise<Blob> {\n const video = document.createElement('video');\n const url = URL.createObjectURL(file);\n try {\n video.muted = true;\n video.playsInline = true;\n video.preload = 'auto';\n await videoEvent(video, 'loadeddata', () => {\n video.src = url;\n video.load();\n });\n if (!video.videoWidth || !video.videoHeight) {\n throw new Error('The video has no decodable dimensions.');\n }\n const analysis = document.createElement('canvas');\n analysis.width = 64;\n analysis.height = Math.max(\n 1,\n Math.round((64 * video.videoHeight) / video.videoWidth),\n );\n const context = analysis.getContext('2d', { willReadFrequently: true });\n if (!context) {\n throw new Error('Canvas is unavailable.');\n }\n const seek = async (time: number) => {\n if (Math.abs(video.currentTime - time) > 0.001) {\n await videoEvent(video, 'seeked', () => {\n video.currentTime = time;\n });\n }\n };\n const end = Number.isFinite(video.duration)\n ? Math.min(5, Math.max(0, video.duration - 0.01))\n : 5;\n let bestTime = 0;\n let bestRatio = -1;\n let found = false;\n for (let time = 0; time <= end; time += 0.25) {\n await seek(time);\n context.drawImage(video, 0, 0, analysis.width, analysis.height);\n const ratio = visiblePixelRatio(\n context.getImageData(0, 0, analysis.width, analysis.height).data,\n );\n if (ratio > bestRatio) {\n bestRatio = ratio;\n bestTime = time;\n }\n // Small highlights or a subject in a dark scene are enough.\n if (ratio >= 0.02) {\n found = true;\n break;\n }\n }\n if (!found) {\n await seek(bestTime);\n }\n const canvas = document.createElement('canvas');\n const scale = Math.min(1, 1280 / video.videoWidth, 720 / video.videoHeight);\n canvas.width = Math.max(1, Math.round(video.videoWidth * scale));\n canvas.height = Math.max(1, Math.round(video.videoHeight * scale));\n const output = canvas.getContext('2d');\n if (!output) {\n throw new Error('Canvas is unavailable.');\n }\n output.drawImage(video, 0, 0, canvas.width, canvas.height);\n return await new Promise<Blob>((resolve, reject) => {\n canvas.toBlob(\n blob =>\n blob\n ? resolve(blob)\n : reject(new Error('Thumbnail encoding failed.')),\n 'image/webp',\n 0.85,\n );\n });\n } finally {\n try {\n video.pause();\n video.removeAttribute('src');\n video.load();\n } finally {\n URL.revokeObjectURL(url);\n }\n }\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n DestroyRef,\n Input,\n OnInit,\n inject,\n signal,\n} from '@angular/core';\nimport { MatButtonModule } from '@angular/material/button';\nimport { Translation } from '@taon-dev/i18n/browser-prod';\nimport { Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\n\nimport { TaonCmsContentApiService } from '../../taon-cms-content/taon-cms-content-api.service';\nimport type { TaonCmsContentEntity } from '../../taon-cms-content/taon-cms-content.entity';\nimport { defaultThumbnailUrl } from '../taon-cms-post/taon-cms-thumbnail';\n\nconst t = Translation.for('src/lib/taon-posts/taon-cms-course-backoffice/taon-cms-course-cover.component.ts', {\"src/lib/taon-posts/taon-cms-course-backoffice/taon-cms-course-backoffice.component.html\":{\"en-US\":async () => (await import('./i18n/taon-cms-course-backoffice.component.html.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-course-backoffice.component.html.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-course-backoffice.component.html.de-DE.i18n.data')).default},\"src/lib/taon-posts/taon-cms-course-backoffice/taon-cms-course-backoffice.component.ts\":{\"en-US\":async () => (await import('./i18n/taon-cms-course-backoffice.component.ts.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-course-backoffice.component.ts.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-course-backoffice.component.ts.de-DE.i18n.data')).default},\"src/lib/taon-posts/taon-cms-course-backoffice/taon-cms-course-contents.component.html\":{\"en-US\":async () => (await import('./i18n/taon-cms-course-contents.component.html.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-course-contents.component.html.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-course-contents.component.html.de-DE.i18n.data')).default},\"src/lib/taon-posts/taon-cms-course-backoffice/taon-cms-course-contents.component.ts\":{\"en-US\":async () => (await import('./i18n/taon-cms-course-contents.component.ts.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-course-contents.component.ts.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-course-contents.component.ts.de-DE.i18n.data')).default},\"src/lib/taon-posts/taon-cms-course-backoffice/taon-cms-course-cover.component.ts\":{\"en-US\":async () => (await import('./i18n/taon-cms-course-cover.component.ts.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-course-cover.component.ts.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-course-cover.component.ts.de-DE.i18n.data')).default}} as any);\n\n@Component({\n selector: 'taon-cms-course-cover',\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [MatButtonModule],\n templateUrl: './taon-cms-course-cover.component.html',\n styles: [`\n :host {\n display: block;\n }\n img {\n display: block;\n max-height: 50px;\n max-width: 90px;\n width: auto;\n height: auto;\n object-fit: contain;\n }\n `],\n})\nexport class TaonCmsCourseCoverComponent implements OnInit {\n readonly t = t.for(this);\n\n @Input({ required: true })\n post!: TaonCmsContentEntity;\n\n private readonly api = inject(TaonCmsContentApiService);\n\n private readonly destroyRef = inject(DestroyRef);\n\n readonly url = signal('');\n\n readonly loading = signal(false);\n\n readonly error = signal('');\n\n ngOnInit(): void {\n void this.reload();\n }\n\n async reload(): Promise<void> {\n if (this.loading()) {\n return;\n }\n this.loading.set(true);\n this.url.set('');\n this.error.set('');\n try {\n const url =\n defaultThumbnailUrl(this.post.thumbnailKey ?? '') ??\n await this.api.getThumbnailLinkBySlug(this.post.slug);\n if (!url) {\n throw new Error('The thumbnail URL is empty.');\n }\n if (!this.destroyRef.destroyed) {\n this.url.set(url);\n }\n } catch (error: unknown) {\n console.error('[taon-cms-course-cover] Unable to load thumbnail', error);\n if (!this.destroyRef.destroyed) {\n this.failed();\n }\n } finally {\n if (!this.destroyRef.destroyed) {\n this.loading.set(false);\n }\n }\n }\n\n failed(): void {\n this.url.set('');\n this.error.set(this.t.gettext('Cover unavailable. Retry'));\n }\n}","@if (url()) {\n <img [src]=\"url()\" [alt]=\"post.title\" (error)=\"failed()\" />\n}\n@if (error()) {\n <button mat-button type=\"button\" (click)=\"reload()\">{{ error() }}</button>\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n OnInit,\n TemplateRef,\n ViewChild,\n signal,\n} from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { FormsModule } from '@angular/forms';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatInputModule } from '@angular/material/input';\nimport { MatSelectModule } from '@angular/material/select';\nimport { MtxGridColumn } from '@ng-matero/extensions/grid';\nimport { TaonDatatableComponent } from '@taon-dev/ui/browser-prod';\nimport { Translation } from '@taon-dev/i18n/browser-prod';\nimport { finalize } from 'rxjs';\nimport { Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\n\nimport { TaonCmsContentApiService } from '../../taon-cms-content/taon-cms-content-api.service';\nimport type { TaonCmsContentEntity } from '../../taon-cms-content/taon-cms-content.entity';\nimport { TaonCmsPostTableActions } from '../taon-cms-posts-backoffice/taon-cms-post-table-actions.directive';\n\nimport { TaonCmsCourseContentsComponent } from './taon-cms-course-contents.component';\nimport { TaonCmsCourseCoverComponent } from './taon-cms-course-cover.component';\n\nconst t = Translation.for('src/lib/taon-posts/taon-cms-course-backoffice/taon-cms-course-backoffice.component.ts', {\"src/lib/taon-posts/taon-cms-course-backoffice/taon-cms-course-backoffice.component.html\":{\"en-US\":async () => (await import('./i18n/taon-cms-course-backoffice.component.html.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-course-backoffice.component.html.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-course-backoffice.component.html.de-DE.i18n.data')).default},\"src/lib/taon-posts/taon-cms-course-backoffice/taon-cms-course-backoffice.component.ts\":{\"en-US\":async () => (await import('./i18n/taon-cms-course-backoffice.component.ts.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-course-backoffice.component.ts.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-course-backoffice.component.ts.de-DE.i18n.data')).default},\"src/lib/taon-posts/taon-cms-course-backoffice/taon-cms-course-contents.component.html\":{\"en-US\":async () => (await import('./i18n/taon-cms-course-contents.component.html.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-course-contents.component.html.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-course-contents.component.html.de-DE.i18n.data')).default},\"src/lib/taon-posts/taon-cms-course-backoffice/taon-cms-course-contents.component.ts\":{\"en-US\":async () => (await import('./i18n/taon-cms-course-contents.component.ts.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-course-contents.component.ts.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-course-contents.component.ts.de-DE.i18n.data')).default},\"src/lib/taon-posts/taon-cms-course-backoffice/taon-cms-course-cover.component.ts\":{\"en-US\":async () => (await import('./i18n/taon-cms-course-cover.component.ts.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-course-cover.component.ts.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-course-cover.component.ts.de-DE.i18n.data')).default}} as any);\n\n@Component({\n selector: 'taon-cms-course-backoffice',\n templateUrl: './taon-cms-course-backoffice.component.html',\n styleUrls: ['./taon-cms-course-backoffice.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [\n FormsModule,\n MatButtonModule,\n MatFormFieldModule,\n MatIconModule,\n MatInputModule,\n MatSelectModule,\n TaonDatatableComponent,\n TaonCmsCourseContentsComponent,\n TaonCmsCourseCoverComponent,\n ],\n providers: [TaonCmsContentApiService],\n})\nexport class TaonCmsCourseBackofficeComponent\n extends TaonCmsPostTableActions\n implements OnInit {\n readonly t = t.for(this);\n\n @ViewChild(TaonDatatableComponent)\n readonly datatable!: TaonDatatableComponent;\n\n @ViewChild('coverTemplate', { static: true })\n readonly coverTemplate!: TemplateRef<unknown>;\n\n @ViewChild('visibilityTemplate', { static: true })\n readonly visibilityTemplate!: TemplateRef<unknown>;\n\n protected override readonly postPath = ['../posts'];\n\n protected override readonly backContext = 'courses' as const;\n\n readonly courses = signal<TaonCmsContentEntity[]>([]);\n\n readonly loading = signal(false);\n\n columns: MtxGridColumn[] = [];\n\n ngOnInit(): void {\n this.columns = [\n { header: 'ID', field: 'id', sortable: true, showExpand: true },\n {\n header: this.t.gettext('Cover'),\n field: 'thumbnailKey',\n cellTemplate: this.coverTemplate,\n width: '110px',\n },\n { header: this.t.gettext('Title'), field: 'title', sortable: true },\n {\n header: this.t.gettext('Visibility'),\n field: 'status',\n sortable: true,\n cellTemplate: this.visibilityTemplate,\n },\n this.actionsColumn,\n ].map(column => ({\n ...column,\n class: (post: TaonCmsContentEntity) =>\n post?.status === 'published' ? 'cms-course-public' : 'cms-course-private',\n }));\n this.reload();\n }\n\n reload(): void {\n if (this.loading()) {\n return;\n }\n this.loading.set(true);\n this.error.set('');\n this.taonCmsContentApiService.listCourses()\n .pipe(\n takeUntilDestroyed(this.destroyRef),\n finalize(() => this.loading.set(false)),\n )\n .subscribe({\n next: courses => this.courses.set(courses),\n error: (error: unknown) => {\n console.error(\n '[taon-cms-course-backoffice] Unable to load courses',\n error,\n );\n this.error.set(\n this.t.gettext('Courses could not be loaded. Please try reloading.'),\n );\n },\n });\n }\n}","<h1>{{ t.gettext('Courses') }}</h1>\n<h2 style=\"color: goldenrod;\">{{ t.gettext('Course is just a post with related posts and thumbnail. Any non archived post can be course.') }}</h2>\n<button mat-button type=\"button\" [disabled]=\"loading()\" (click)=\"reload()\">\n {{ t.gettext('Reload courses') }}\n</button>\n@if (loading()) {\n <p role=\"status\">{{ t.gettext('Loading courses...') }}</p>\n}\n@if (error()) {\n <p role=\"alert\">{{ error() }}</p>\n}\n<taon-datatable\n [data]=\"courses()\"\n [columns]=\"columns\"\n [allowedColumns]=\"['id', 'title', 'status']\"\n tableId=\"cms-courses\"\n storeTableFilters=\"query-params\"\n [filtersTemplate]=\"filtersTemplate\"\n [hideAddButton]=\"true\"\n searchMode=\"advanced\"\n [expansionTemplate]=\"expansionTemplate\">\n</taon-datatable>\n<ng-template #coverTemplate let-post>\n <taon-cms-course-cover [post]=\"post\"></taon-cms-course-cover>\n</ng-template>\n<ng-template #visibilityTemplate let-post>\n <span class=\"visibility\">\n <mat-icon aria-hidden=\"true\">\n {{ post.status === 'published' ? 'lock_open' : 'lock' }}\n </mat-icon>\n {{ post.status === 'published' ? t.gettext('Public') : t.gettext('Private') }}\n </span>\n</ng-template>\n<ng-template #expansionTemplate let-course>\n <taon-cms-course-contents\n [course]=\"course\"\n [actionsColumn]=\"actionsColumn\">\n </taon-cms-course-contents>\n</ng-template>\n<ng-template\n #filtersTemplate\n let-filters=\"filters\">\n <mat-form-field appearance=\"outline\">\n <mat-label>{{ t.gettext('ID') }}</mat-label>\n <input\n matInput\n [(ngModel)]=\"filters.id\"\n (keyup.enter)=\"datatable.applyAdvancedFilters()\" />\n </mat-form-field>\n <mat-form-field appearance=\"outline\">\n <mat-label>{{ t.gettext('Title') }}</mat-label>\n <input\n matInput\n [(ngModel)]=\"filters.title\"\n (keyup.enter)=\"datatable.applyAdvancedFilters()\" />\n </mat-form-field>\n <mat-form-field appearance=\"outline\">\n <mat-label>{{ t.gettext('Visibility') }}</mat-label>\n <mat-select [(ngModel)]=\"filters.status\">\n <mat-option value=\"published\">{{ t.gettext('Public') }}</mat-option>\n <mat-option value=\"draft\">{{ t.gettext('Private') }}</mat-option>\n </mat-select>\n </mat-form-field>\n</ng-template>\n","//namespace TaonCmsCourseBackofficeModels\n\n//end of namespace TaonCmsCourseBackofficeModels\n","import { Routes } from '@angular/router';\n\nexport const TaonCmsCourseBackofficeRoutes: Routes = [\n {\n path: '',\n pathMatch: 'full',\n loadComponent: () =>\n import('./taon-cms-course-backoffice.component').then(\n m => m.TaonCmsCourseBackofficeComponent,\n ),\n },\n];\n","import {\n Directive,\n ElementRef,\n EventEmitter,\n HostListener,\n Input,\n Output,\n SecurityContext,\n inject,\n} from '@angular/core';\nimport { DomSanitizer } from '@angular/platform-browser';\n\n@Directive({\n selector: '[taonCmsEditable]',\n})\nexport class TaonCmsEditableDirective {\n private readonly element = inject<ElementRef<HTMLElement>>(ElementRef)\n .nativeElement;\n private readonly sanitizer = inject(DomSanitizer);\n private value = '';\n private composing = false;\n\n @Input() taonCmsEditableFormat: 'text' | 'html' = 'text';\n @Input() taonCmsEditableSingleLine = false;\n @Output() readonly taonCmsEditableChange = new EventEmitter<string>();\n\n @Input()\n set taonCmsEditable(value: string) {\n if (value === this.value) {\n return;\n }\n this.value = value;\n this.render();\n }\n\n @HostListener('compositionstart')\n compositionStart(): void {\n this.composing = true;\n }\n\n @HostListener('compositionend')\n compositionEnd(): void {\n this.composing = false;\n this.onInput();\n }\n\n @HostListener('input')\n onInput(): void {\n if (this.composing) {\n return;\n }\n const text = this.element.innerText;\n this.value =\n this.taonCmsEditableFormat === 'html'\n ? this.sanitize(this.element.innerHTML)\n : this.taonCmsEditableSingleLine\n ? text.replace(/\\s*\\n\\s*/g, ' ')\n : text;\n // Remember emitted values so Angular does not rewrite the DOM/caret on input.\n this.taonCmsEditableChange.emit(this.value);\n }\n\n @HostListener('blur')\n onBlur(): void {\n this.onInput();\n this.render();\n }\n\n @HostListener('keydown', ['$event'])\n onKeydown(event: KeyboardEvent): void {\n if (this.taonCmsEditableSingleLine && event.key === 'Enter') {\n event.preventDefault();\n }\n }\n\n @HostListener('paste', ['$event'])\n onPaste(event: ClipboardEvent): void {\n event.preventDefault();\n const selection = this.element.ownerDocument.getSelection();\n if (!selection?.rangeCount || !event.clipboardData) {\n return;\n }\n const range = selection.getRangeAt(0);\n if (!this.element.contains(range.commonAncestorContainer)) {\n return;\n }\n const pasted = event.clipboardData.getData('text/plain');\n const text = this.taonCmsEditableSingleLine\n ? pasted.replace(/\\s*\\n\\s*/g, ' ')\n : pasted;\n range.deleteContents();\n const node = this.element.ownerDocument.createTextNode(text);\n range.insertNode(node);\n range.setStartAfter(node);\n range.collapse(true);\n selection.removeAllRanges();\n selection.addRange(range);\n this.onInput();\n }\n\n private sanitize(value: string): string {\n return this.sanitizer.sanitize(SecurityContext.HTML, value) ?? '';\n }\n\n private render(): void {\n if (this.taonCmsEditableFormat === 'html') {\n this.element.innerHTML = this.sanitize(this.value);\n } else {\n this.element.textContent = this.value;\n }\n }\n}\n","import { DatePipe } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n DestroyRef,\n HostListener,\n inject,\n signal,\n} from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { MatButtonModule } from '@angular/material/button';\nimport {\n MAT_DIALOG_DATA,\n MatDialogModule,\n MatDialogRef,\n} from '@angular/material/dialog';\nimport { MatRadioModule } from '@angular/material/radio';\nimport { Translation } from '@taon-dev/i18n/browser-prod';\nimport { finalize } from 'rxjs';\nimport { Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\n\nimport type { TaonCmsContentEntity } from '../../taon-cms-content/taon-cms-content.entity';\nimport { TaonCmsContentRevisionApiService } from '../../taon-cms-content-revision/taon-cms-content-revision-api.service';\nimport type { TaonCmsContentRevisionEntity } from '../../taon-cms-content-revision/taon-cms-content-revision.entity';\n\nconst t = Translation.for('src/lib/taon-posts/taon-cms-revision-chooser/taon-cms-revision-chooser.component.ts', {\"src/lib/taon-posts/taon-cms-revision-chooser/taon-cms-revision-chooser.component.html\":{\"en-US\":async () => (await import('./i18n/taon-cms-revision-chooser.component.html.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-revision-chooser.component.html.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-revision-chooser.component.html.de-DE.i18n.data')).default},\"src/lib/taon-posts/taon-cms-revision-chooser/taon-cms-revision-chooser.component.ts\":{\"en-US\":async () => (await import('./i18n/taon-cms-revision-chooser.component.ts.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-revision-chooser.component.ts.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-revision-chooser.component.ts.de-DE.i18n.data')).default}} as any);\n\n@Component({\n selector: 'taon-cms-revision-chooser',\n templateUrl: './taon-cms-revision-chooser.component.html',\n styleUrls: ['./taon-cms-revision-chooser.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [DatePipe, MatButtonModule, MatDialogModule, MatRadioModule],\n providers: [TaonCmsContentRevisionApiService],\n})\nexport class TaonCmsRevisionChooserComponent {\n readonly t = t.for(this);\n\n readonly post = inject<TaonCmsContentEntity>(MAT_DIALOG_DATA);\n\n readonly revisions = signal<TaonCmsContentRevisionEntity[]>([]);\n\n readonly selected = signal<number | null>(null);\n\n readonly loading = signal(false);\n\n readonly applying = signal(false);\n\n readonly error = signal('');\n\n private readonly api = inject(TaonCmsContentRevisionApiService);\n\n private readonly ref = inject(\n MatDialogRef<TaonCmsRevisionChooserComponent, TaonCmsContentEntity>,\n );\n\n private readonly destroyRef = inject(DestroyRef);\n\n constructor() {\n this.load();\n }\n\n @HostListener('document:keydown.escape', ['$event'])\n onEscape(event: KeyboardEvent): void {\n event.stopPropagation();\n this.ref.close();\n }\n\n load(): void {\n if (this.loading() || this.applying()) {\n return;\n }\n this.selected.set(null);\n this.loading.set(true);\n this.error.set('');\n this.api\n .listRevisions(this.post.id)\n .pipe(\n takeUntilDestroyed(this.destroyRef),\n finalize(() => this.loading.set(false)),\n )\n .subscribe({\n next: revisions =>\n this.revisions.set(\n [...revisions].sort((a, b) => b.revisionNumber - a.revisionNumber),\n ),\n error: (error: unknown) => {\n console.error(\n '[taon-cms-revision-chooser] Unable to load revisions',\n error,\n );\n this.error.set(\n this.t.gettext('Revisions could not be loaded. Please try again.'),\n );\n },\n });\n }\n\n apply(): void {\n const revisionNumber = this.selected();\n if (this.loading() || this.applying()) {\n return;\n }\n if (revisionNumber === null) {\n this.error.set(this.t.gettext('Select a revision to restore.'));\n return;\n }\n this.applying.set(true);\n this.error.set('');\n this.api\n .restoreContent(this.post.id, {\n revisionNumber,\n expectedVersion: this.post.version,\n })\n .pipe(\n takeUntilDestroyed(this.destroyRef),\n finalize(() => this.applying.set(false)),\n )\n .subscribe({\n next: post => this.ref.close(post),\n error: (error: unknown) => {\n console.error(\n '[taon-cms-revision-chooser] Unable to restore revision',\n error,\n );\n this.error.set(\n this.t.gettext(\n 'The revision could not be restored. If the post changed, close and reopen it to load its latest version.',\n ),\n );\n },\n });\n }\n\n cancel(): void {\n if (!this.applying()) {\n this.ref.close();\n }\n }\n}","<h2 mat-dialog-title>{{ t.gettext('Restore a revision') }}</h2>\n<mat-dialog-content>\n <p>\n {{\n t.gettext(\n 'Restoring replaces the post, including its status, with the selected revision.'\n )\n }}\n </p>\n @if (loading()) {\n <p role=\"status\">{{ t.gettext('Loading revisions...') }}</p>\n } @else {\n <mat-radio-group\n [attr.aria-label]=\"t.gettext('Post revisions')\"\n [value]=\"selected()\"\n (change)=\"selected.set($event.value)\"\n [disabled]=\"applying()\">\n @for (revision of revisions(); track revision.id) {\n <mat-radio-button\n [value]=\"revision.revisionNumber\"\n [disabled]=\"!revision.snapshot\">\n <strong>{{\n t.gettext('Revision [[ revisionNumber ]]', {\n revisionNumber: revision.revisionNumber,\n })\n }}</strong>\n <span>{{ revision.createdAt | date: 'medium' }}</span>\n @if (\n revision.createdByUserId !== null &&\n revision.createdByUserId !== undefined\n ) {\n <span>{{\n t.gettext('User [[ userId ]]', {\n userId: revision.createdByUserId,\n })\n }}</span>\n }\n @if (!revision.snapshot) {\n <span>{{ t.gettext('Legacy revision - cannot be restored') }}</span>\n }\n </mat-radio-button>\n } @empty {\n <p>{{ t.gettext('No revisions are available.') }}</p>\n }\n </mat-radio-group>\n }\n @if (error()) {\n <p role=\"alert\">{{ error() }}</p>\n <button\n mat-button\n type=\"button\"\n [disabled]=\"loading() || applying()\"\n (click)=\"load()\">\n {{ t.gettext('Reload revisions') }}\n </button>\n }\n @if (applying()) {\n <p role=\"status\">{{ t.gettext('Restoring...') }}</p>\n }\n</mat-dialog-content>\n<mat-dialog-actions align=\"end\">\n <button\n mat-button\n type=\"button\"\n [disabled]=\"applying()\"\n (click)=\"cancel()\">\n {{ t.gettext('Cancel') }}\n </button>\n <button\n mat-flat-button\n type=\"button\"\n [disabled]=\"loading() || applying() || selected() === null\"\n (click)=\"apply()\">\n {{ t.gettext('Apply') }}\n </button>\n</mat-dialog-actions>\n","import {\n ChangeDetectionStrategy,\n Component,\n DestroyRef,\n computed,\n inject,\n signal,\n} from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { MatButtonModule } from '@angular/material/button';\nimport {\n MAT_DIALOG_DATA,\n MatDialogModule,\n MatDialogRef,\n} from '@angular/material/dialog';\nimport { MatRadioModule } from '@angular/material/radio';\nimport { Translation } from '@taon-dev/i18n/browser-prod';\nimport { finalize } from 'rxjs';\nimport { Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\n\nimport { TaonCmsContentApiService } from '../../taon-cms-content/taon-cms-content-api.service';\nimport type { TaonCmsContentEntity } from '../../taon-cms-content/taon-cms-content.entity';\n\nconst t = Translation.for('src/lib/taon-posts/taon-related-post-chooser/taon-related-post-chooser.component.ts', {\"src/lib/taon-posts/taon-related-post-chooser/taon-related-post-chooser.component.html\":{\"en-US\":async () => (await import('./i18n/taon-related-post-chooser.component.html.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-related-post-chooser.component.html.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-related-post-chooser.component.html.de-DE.i18n.data')).default},\"src/lib/taon-posts/taon-related-post-chooser/taon-related-post-chooser.component.ts\":{\"en-US\":async () => (await import('./i18n/taon-related-post-chooser.component.ts.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-related-post-chooser.component.ts.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-related-post-chooser.component.ts.de-DE.i18n.data')).default}} as any);\n\nexport interface TaonRelatedPostChooserData {\n postId?: number;\n excludedIds: number[];\n}\n\n@Component({\n selector: 'taon-related-post-chooser',\n templateUrl: './taon-related-post-chooser.component.html',\n styleUrls: ['./taon-related-post-chooser.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [MatButtonModule, MatDialogModule, MatRadioModule],\n providers: [TaonCmsContentApiService],\n})\nexport class TaonRelatedPostChooserComponent {\n readonly t = t.for(this);\n\n readonly data = inject<TaonRelatedPostChooserData>(MAT_DIALOG_DATA);\n readonly posts = signal<TaonCmsContentEntity[]>([]);\n readonly selected = signal<number | null>(null);\n readonly query = signal('');\n readonly loading = signal(false);\n readonly error = signal('');\n readonly filteredPosts = computed(() => {\n const query = this.query().trim().toLowerCase();\n return this.posts().filter(\n post =>\n post.id !== this.data.postId &&\n !this.data.excludedIds.includes(post.id) &&\n `${post.id} ${post.title} ${post.slug}`.toLowerCase().includes(query),\n );\n });\n\n private readonly api = inject(TaonCmsContentApiService);\n private readonly ref = inject(\n MatDialogRef<TaonRelatedPostChooserComponent, TaonCmsContentEntity>,\n );\n private readonly destroyRef = inject(DestroyRef);\n\n constructor() {\n this.load();\n }\n\n load(): void {\n if (this.loading()) {\n return;\n }\n this.loading.set(true);\n this.selected.set(null);\n this.error.set('');\n this.api.allMyEntities$\n .pipe(\n takeUntilDestroyed(this.destroyRef),\n finalize(() => this.loading.set(false)),\n )\n .subscribe({\n next: posts => this.posts.set(posts),\n error: (error: unknown) => {\n console.error(\n '[taon-related-post-chooser] Unable to load posts',\n error,\n );\n this.error.set(\n this.t.gettext('Posts could not be loaded. Please try again.'),\n );\n },\n });\n }\n\n search(event: Event): void {\n if (event.target instanceof HTMLInputElement) {\n this.query.set(event.target.value);\n this.selected.set(null);\n }\n }\n\n choose(): void {\n if (this.loading() || this.error()) {\n return;\n }\n const post = this.filteredPosts().find(post => post.id === this.selected());\n if (!post) {\n this.error.set(this.t.gettext('Select a related post.'));\n return;\n }\n this.ref.close(post);\n }\n\n cancel(): void {\n this.ref.close();\n }\n}","<h2 mat-dialog-title>{{ t.gettext('Add related post') }}</h2>\n<mat-dialog-content>\n <label class=\"search-field\">\n <span>{{ t.gettext('Search posts') }}</span>\n <input\n type=\"search\"\n [attr.aria-label]=\"t.gettext('Search posts by ID, title or slug')\"\n [value]=\"query()\"\n [disabled]=\"loading()\"\n (input)=\"search($event)\" />\n </label>\n @if (loading()) {\n <p role=\"status\">{{ t.gettext('Loading posts...') }}</p>\n } @else if (error()) {\n <p\n class=\"error\"\n role=\"alert\">\n {{ error() }}\n </p>\n <button\n mat-button\n type=\"button\"\n (click)=\"load()\">\n {{ t.gettext('Try again') }}\n </button>\n } @else {\n <mat-radio-group\n [attr.aria-label]=\"t.gettext('Related post')\"\n [value]=\"selected()\"\n (change)=\"selected.set($event.value)\">\n @for (post of filteredPosts(); track post.id) {\n <mat-radio-button [value]=\"post.id\">\n #{{ post.id }} - {{ post.title }}\n <span class=\"slug\">{{ post.slug }}</span>\n </mat-radio-button>\n } @empty {\n <p>{{ t.gettext('No matching posts available.') }}</p>\n }\n </mat-radio-group>\n }\n</mat-dialog-content>\n<mat-dialog-actions align=\"end\">\n <button\n mat-button\n type=\"button\"\n (click)=\"cancel()\">\n {{ t.gettext('Cancel') }}\n </button>\n <button\n mat-flat-button\n type=\"button\"\n [disabled]=\"loading() || !!error() || selected() === null\"\n (click)=\"choose()\">\n {{ t.gettext('Add related post') }}\n </button>\n</mat-dialog-actions>\n","//#region imports\nimport {\n AfterViewInit,\n ChangeDetectionStrategy,\n Component,\n DestroyRef,\n ElementRef,\n TemplateRef,\n ViewChild,\n computed,\n effect,\n inject,\n input,\n model,\n output,\n signal,\n untracked,\n viewChild,\n} from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatCheckboxModule } from '@angular/material/checkbox';\nimport { MatChipsModule } from '@angular/material/chips';\nimport { MatDialog } from '@angular/material/dialog';\nimport { MatCardModule } from '@angular/material/card';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatInputModule } from '@angular/material/input';\nimport { MatMenuModule } from '@angular/material/menu';\nimport { MatProgressBarModule } from '@angular/material/progress-bar';\nimport { MatRadioModule } from '@angular/material/radio';\nimport { MatSelectModule } from '@angular/material/select';\nimport { MatTabsModule } from '@angular/material/tabs';\nimport { Translation } from '@taon-dev/i18n/browser-prod';\nimport { TaonPermissionApiService } from '@taon-dev/session/browser-prod';\nimport type { TaonPermissionEntity } from '@taon-dev/session/browser-prod';\nimport { TaonConfirmDialogComponent } from '@taon-dev/ui/browser-prod';\nimport { Editor, NgxEditorModule, toHTML } from 'ngx-editor';\nimport type { Toolbar } from 'ngx-editor';\nimport {\n Observable,\n Subscription,\n finalize,\n firstValueFrom,\n forkJoin,\n from,\n of,\n switchMap,\n take,\n} from 'rxjs';\nimport { Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\nimport { ___NS__add, ___NS__after, ___NS__ary, ___NS__assign, ___NS__assignIn, ___NS__assignInWith, ___NS__assignWith, ___NS__at, ___NS__attempt, ___NS__before, ___NS__bind, ___NS__bindAll, ___NS__bindKey, ___NS__camelCase, ___NS__capitalize, ___NS__castArray, ___NS__ceil, ___NS__chain, ___NS__chunk, ___NS__clamp, ___NS__clone, ___NS__cloneDeep, ___NS__cloneDeepWith, ___NS__cloneWith, ___NS__compact, ___NS__concat, ___NS__cond, ___NS__conforms, ___NS__conformsTo, ___NS__constant, ___NS__countBy, ___NS__create, ___NS__curry, ___NS__curryRight, ___NS__debounce, ___NS__deburr, ___NS__defaults, ___NS__defaultsDeep, ___NS__defaultTo, ___NS__defer, ___NS__delay, ___NS__difference, ___NS__differenceBy, ___NS__differenceWith, ___NS__divide, ___NS__drop, ___NS__dropRight, ___NS__dropRightWhile, ___NS__dropWhile, ___NS__each, ___NS__eachRight, ___NS__endsWith, ___NS__entries, ___NS__entriesIn, ___NS__eq, ___NS__escape, ___NS__escapeRegExp, ___NS__every, ___NS__extend, ___NS__extendWith, ___NS__fill, ___NS__filter, ___NS__find, ___NS__findIndex, ___NS__findKey, ___NS__findLast, ___NS__findLastIndex, ___NS__findLastKey, ___NS__first, ___NS__flatMap, ___NS__flatMapDeep, ___NS__flatMapDepth, ___NS__flatten, ___NS__flattenDeep, ___NS__flattenDepth, ___NS__flip, ___NS__floor, ___NS__flow, ___NS__flowRight, ___NS__forEach, ___NS__forEachRight, ___NS__forIn, ___NS__forInRight, ___NS__forOwn, ___NS__forOwnRight, ___NS__fromPairs, ___NS__functions, ___NS__functionsIn, ___NS__get, ___NS__groupBy, ___NS__gt, ___NS__gte, ___NS__has, ___NS__hasIn, ___NS__head, ___NS__identity, ___NS__includes, ___NS__indexOf, ___NS__initial, ___NS__inRange, ___NS__intersection, ___NS__intersectionBy, ___NS__intersectionWith, ___NS__invert, ___NS__invertBy, ___NS__invoke, ___NS__invokeMap, ___NS__isArguments, ___NS__isArray, ___NS__isArrayBuffer, ___NS__isArrayLike, ___NS__isArrayLikeObject, ___NS__isBoolean, ___NS__isBuffer, ___NS__isDate, ___NS__isElement, ___NS__isEmpty, ___NS__isEqual, ___NS__isEqualWith, ___NS__isError, ___NS__isFinite, ___NS__isFunction, ___NS__isInteger, ___NS__isLeafObject, ___NS__isLength, ___NS__isMap, ___NS__isMatch, ___NS__isMatchWith, ___NS__isNaN, ___NS__isNative, ___NS__isNil, ___NS__isNull, ___NS__isNumber, ___NS__isObject, ___NS__isObjectLike, ___NS__isPlainObject, ___NS__isRegExp, ___NS__isSafeInteger, ___NS__isSet, ___NS__isString, ___NS__isSymbol, ___NS__isTypedArray, ___NS__isUndefined, ___NS__isWeakMap, ___NS__isWeakSet, ___NS__iteratee, ___NS__join, ___NS__kebabCase, ___NS__keyBy, ___NS__keys, ___NS__keysIn, ___NS__last, ___NS__lastIndexOf, ___NS__lowerCase, ___NS__lowerFirst, ___NS__lt, ___NS__lte, ___NS__map, ___NS__mapKeys, ___NS__mapValues, ___NS__matches, ___NS__matchesProperty, ___NS__max, ___NS__maxBy, ___NS__mean, ___NS__meanBy, ___NS__memoize, ___NS__merge, ___NS__mergeWith, ___NS__method, ___NS__methodOf, ___NS__min, ___NS__minBy, ___NS__mixin, ___NS__multiply, ___NS__negate, ___NS__noop, ___NS__now, ___NS__nth, ___NS__nthArg, ___NS__omit, ___NS__omitBy, ___NS__once, ___NS__orderBy, ___NS__over, ___NS__overArgs, ___NS__overEvery, ___NS__overSome, ___NS__pad, ___NS__padEnd, ___NS__padStart, ___NS__parseInt, ___NS__partial, ___NS__partialRight, ___NS__partition, ___NS__pick, ___NS__pickBy, ___NS__property, ___NS__propertyOf, ___NS__pull, ___NS__pullAll, ___NS__pullAllBy, ___NS__pullAllWith, ___NS__pullAt, ___NS__random, ___NS__range, ___NS__rangeRight, ___NS__rearg, ___NS__reduce, ___NS__reduceRight, ___NS__reject, ___NS__remove, ___NS__repeat, ___NS__replace, ___NS__rest, ___NS__result, ___NS__reverse, ___NS__round, ___NS__sample, ___NS__sampleSize, ___NS__set, ___NS__setWith, ___NS__shuffle, ___NS__size, ___NS__slice, ___NS__snakeCase, ___NS__some, ___NS__sortBy, ___NS__sortedIndex, ___NS__sortedIndexBy, ___NS__sortedIndexOf, ___NS__sortedLastIndex, ___NS__sortedLastIndexBy, ___NS__sortedLastIndexOf, ___NS__sortedUniq, ___NS__sortedUniqBy, ___NS__split, ___NS__spread, ___NS__startCase, ___NS__startsWith, ___NS__stubArray, ___NS__stubFalse, ___NS__stubObject, ___NS__stubString, ___NS__stubTrue, ___NS__subtract, ___NS__sum, ___NS__sumBy, ___NS__tail, ___NS__take, ___NS__takeRight, ___NS__takeRightWhile, ___NS__takeWhile, ___NS__tap, ___NS__template, ___NS__templateSettings, ___NS__throttle, ___NS__thru, ___NS__times, ___NS__toArray, ___NS__toFinite, ___NS__toInteger, ___NS__toLength, ___NS__toLower, ___NS__toNumber, ___NS__toPairs, ___NS__toPairsIn, ___NS__toPath, ___NS__toPlainObject, ___NS__toSafeInteger, ___NS__toString, ___NS__toUpper, ___NS__transform, ___NS__trim, ___NS__trimEnd, ___NS__trimStart, ___NS__truncate, ___NS__unary, ___NS__unescape, ___NS__union, ___NS__unionBy, ___NS__unionWith, ___NS__uniq, ___NS__uniqBy, ___NS__uniqueId, ___NS__uniqWith, ___NS__unset, ___NS__unzip, ___NS__unzipWith, ___NS__update, ___NS__updateWith, ___NS__upperCase, ___NS__upperFirst, ___NS__values, ___NS__valuesIn, ___NS__without, ___NS__words, ___NS__wrap, ___NS__xor, ___NS__xorBy, ___NS__xorWith, ___NS__zip, ___NS__zipObject, ___NS__zipObjectDeep, ___NS__zipWith } from 'tnp-core/browser-prod';\n\nimport type { TaonCmsApplicationHookEntity } from '../../taon-cms-application-hook/taon-cms-application-hook.entity';\nimport type { TaonCmsApplicationHook } from '../../taon-cms-application-hooks';\nimport { TaonCmsCategoryApiService } from '../../taon-cms-category/taon-cms-category-api.service';\nimport type { TaonCmsCategoryEntity } from '../../taon-cms-category/taon-cms-category.entity';\nimport { TaonCmsContentApiService } from '../../taon-cms-content/taon-cms-content-api.service';\nimport { TaonCmsContentConfigService } from '../../taon-cms-content/taon-cms-content.config.service';\nimport type { TaonCmsContentEntity } from '../../taon-cms-content/taon-cms-content.entity';\nimport type { TaonCmsUpdateContent } from '../../taon-cms-content/taon-cms-content.models';\nimport { TaonCmsContentType } from '../../taon-cms-content/taon-cms-content.models';\nimport { resolveTemplateVariables } from '../../taon-cms-content/taon-cms-template-variables';\nimport type { TaonCmsTemplateVariable } from '../../taon-cms-content/taon-cms-template-variables';\nimport { TaonCmsTagApiService } from '../../taon-cms-tag/taon-cms-tag-api.service';\nimport type { TaonCmsTagEntity } from '../../taon-cms-tag/taon-cms-tag.entity';\nimport { TaonCmsTaxonomyQuickCreateDialogComponent } from '../../taon-cms-taxonomy-backoffice/taon-cms-taxonomy-quick-create-dialog.component';\nimport { TaonCmsRevisionChooserComponent } from '../taon-cms-revision-chooser/taon-cms-revision-chooser.component';\nimport { TaonRelatedPostChooserComponent } from '../taon-related-post-chooser/taon-related-post-chooser.component';\nimport type { TaonRelatedPostChooserData } from '../taon-related-post-chooser/taon-related-post-chooser.component';\n\nimport { TaonCmsEditableDirective } from './taon-cms-editable.directive';\nimport type { TaonCmsPostDraft, TaonCmsPostMode } from './taon-cms-post.models';\nimport {\n defaultThumbnailKey,\n defaultThumbnailUrl,\n generateVideoThumbnail,\n} from './taon-cms-thumbnail';\nimport { NgTemplateOutlet } from '@angular/common';\n\n//#endregion\n\nconst t = Translation.for('src/lib/taon-posts/taon-cms-post/taon-cms-post.component.ts', {\"src/lib/taon-posts/taon-cms-post/taon-cms-post.component.html\":{\"en-US\":async () => (await import('./i18n/taon-cms-post.component.html.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-post.component.html.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-post.component.html.de-DE.i18n.data')).default},\"src/lib/taon-posts/taon-cms-post/taon-cms-post.component.ts\":{\"en-US\":async () => (await import('./i18n/taon-cms-post.component.ts.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-post.component.ts.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-post.component.ts.de-DE.i18n.data')).default}} as any);\n\n@Component({\n selector: 'taon-cms-post',\n templateUrl: './taon-cms-post.component.html',\n styleUrls: ['./taon-cms-post.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [\n MatButtonModule,\n MatCheckboxModule,\n MatCardModule,\n MatFormFieldModule,\n MatIconModule,\n MatInputModule,\n MatMenuModule,\n MatTabsModule,\n NgxEditorModule,\n MatChipsModule,\n MatProgressBarModule,\n MatRadioModule,\n MatSelectModule,\n TaonCmsEditableDirective,\n NgTemplateOutlet,\n ],\n providers: [\n TaonCmsContentApiService,\n TaonCmsContentConfigService,\n TaonPermissionApiService,\n TaonCmsCategoryApiService,\n TaonCmsTagApiService,\n ],\n})\nexport class TaonCmsPostComponent implements AfterViewInit {\n readonly t = t.for(this);\n\n //#region fields and getters\n readonly post = input<TaonCmsContentEntity | null>(null);\n\n readonly mode = model<TaonCmsPostMode>('view');\n\n readonly changed = output<TaonCmsContentEntity>();\n\n readonly deleted = output<TaonCmsContentEntity>();\n\n readonly duplicated = output<TaonCmsContentEntity>();\n\n readonly cancelled = output<void>();\n\n readonly actionButtonsTemplate = output<TemplateRef<unknown>>();\n\n @ViewChild('actionButtonsTemplate')\n private readonly actionButtonsTemplateRef?: TemplateRef<unknown>;\n\n readonly currentPost = signal<TaonCmsContentEntity | null>(null);\n\n readonly placeholderShortIntro = this.t.signal.gettext(\n 'A short introduction...',\n );\n\n readonly placeholderTitle = this.t.signal.gettext('Title');\n\n readonly placeholderTellYourStory =\n this.t.signal.gettext('Tell your story...');\n\n readonly draft = signal<TaonCmsPostDraft>({\n type: TaonCmsContentType.Normal,\n title: '',\n slug: '',\n excerpt: '',\n body: '',\n videoKey: null,\n audioKey: null,\n attachmentKey: null,\n thumbnailKey: null,\n categoryId: null,\n tagIds: [],\n });\n\n readonly postTypes = [\n {\n value: TaonCmsContentType.Normal,\n label: this.t.gettext('Normal post'),\n },\n { value: TaonCmsContentType.Video, label: this.t.gettext('Video post') },\n { value: TaonCmsContentType.Audio, label: this.t.gettext('Audio post') },\n {\n value: TaonCmsContentType.Attachment,\n label: this.t.gettext('Attachment post'),\n },\n ];\n\n private readonly mediaAttachments = [\n {\n type: TaonCmsContentType.Video,\n key: 'videoKey',\n heading: this.t.gettext('Video Attachment'),\n uploadLabel: this.t.gettext('Upload video'),\n accept: 'video/*',\n },\n {\n type: TaonCmsContentType.Audio,\n key: 'audioKey',\n heading: this.t.gettext('Audio Attachment'),\n uploadLabel: this.t.gettext('Upload audio'),\n accept: 'audio/*',\n },\n {\n type: TaonCmsContentType.Attachment,\n key: 'attachmentKey',\n heading: this.t.gettext('File Attachment'),\n uploadLabel: this.t.gettext('Upload file'),\n accept: '',\n },\n ] as const;\n\n readonly mediaAttachment = computed(() =>\n this.mediaAttachments.find(media => media.type === this.draft().type),\n );\n\n readonly busy = signal(false);\n\n readonly thumbnailPreviewUrl = signal('');\n\n readonly thumbnailError = signal('');\n\n private readonly thumbnailReference = computed(\n () => this.draft().thumbnailKey,\n );\n\n private readonly thumbnailSlug = computed(() => this.draft().slug);\n\n readonly taxonomyLoading = signal(false);\n\n readonly taxonomyError = signal('');\n\n readonly categories = signal<TaonCmsCategoryEntity[]>([]);\n\n readonly tags = signal<TaonCmsTagEntity[]>([]);\n\n readonly tagSearch = signal('');\n\n readonly filteredTags = computed(() => {\n const query = this.tagSearch().trim().toLowerCase();\n return this.tags().filter(\n tag =>\n !this.draft().tagIds.includes(tag.id) &&\n `${tag.name} ${tag.slug}`.toLowerCase().includes(query),\n );\n });\n\n readonly selectedTags = computed(() =>\n this.tags().filter(tag => this.draft().tagIds.includes(tag.id)),\n );\n\n private readonly categoryApi = inject(TaonCmsCategoryApiService);\n\n private readonly tagApi = inject(TaonCmsTagApiService);\n\n private taxonomyLoad?: Subscription;\n\n private editorSession = 0;\n\n private thumbnailObjectUrl = '';\n\n private readonly stagedThumbnail = signal<{\n key: string | null;\n url: string;\n } | null>(null);\n\n readonly uploading = signal(false);\n\n readonly uploadProgress = signal(0);\n\n readonly mediaPreviewUrl = signal('');\n\n readonly mediaPreviewLoading = signal(false);\n\n readonly mediaPreviewError = signal('');\n\n private readonly mediaFileNames = signal<Record<string, string>>({});\n\n private readonly uploadedMediaPreview = signal<{\n key: string;\n url: string;\n fileName: string;\n } | null>(null);\n\n private mediaPreviewRequest = 0;\n\n private mediaPreviewSignature = '';\n\n private slugManuallySet = false;\n\n readonly dialogOpen = signal(false);\n\n readonly error = signal('');\n\n readonly relatedPosts = signal<TaonCmsContentEntity[]>([]);\n\n readonly relatedPostsLoading = signal(false);\n\n readonly relatedPostsError = signal('');\n\n readonly applicationHooks = signal<TaonCmsApplicationHookEntity[]>([]);\n\n readonly applicationHooksLoading = signal(false);\n\n readonly applicationHooksError = signal('');\n\n readonly useAsApplicationHook = signal(false);\n\n readonly selectedApplicationHook = signal<TaonCmsApplicationHook | null>(\n null,\n );\n\n readonly permissions = signal<TaonPermissionEntity[]>([]);\n\n readonly applyPermissionsToRelatedPosts = signal(false);\n\n readonly permissionSource = signal<{ id: number; title: string } | null>(\n null,\n );\n\n readonly permissionsLoading = signal(false);\n\n readonly permissionsError = signal('');\n\n readonly permissionOptions = signal<TaonPermissionEntity[]>([]);\n\n readonly permissionOptionsLoading = signal(false);\n\n readonly permissionOptionsError = signal('');\n\n readonly selectedPermissionId = signal<number | null>(null);\n\n readonly availablePermissions = computed(() => {\n const assignedIds = new Set(\n this.permissions().map(permission => permission.id),\n );\n return this.permissionOptions().filter(\n permission => !assignedIds.has(permission.id),\n );\n });\n\n readonly editing = computed(\n () => this.mode() === 'edit' || this.mode() === 'add',\n );\n\n readonly canSave = computed(\n () =>\n !!this.draft().title.trim() &&\n !!this.draft().slug.trim() &&\n !this.relatedPostsLoading() &&\n !this.relatedPostsError() &&\n !this.applicationHooksLoading() &&\n !this.applicationHooksError() &&\n (!this.useAsApplicationHook() || !!this.selectedApplicationHook()) &&\n !this.permissionsLoading() &&\n !this.permissionsError() &&\n !this.taxonomyLoading() &&\n !this.taxonomyError(),\n );\n\n readonly canPublish = computed(() => {\n const post = this.currentPost();\n return !!post && post.status !== 'published';\n });\n\n private readonly api = inject(TaonCmsContentApiService);\n\n private readonly contentConfig = inject(TaonCmsContentConfigService);\n\n readonly contentTab = signal(0);\n\n readonly contentEditor = signal<Editor | null>(null);\n\n readonly rawContent =\n viewChild<ElementRef<HTMLTextAreaElement>>('rawContent');\n\n private loadingEditorContent = false;\n\n readonly contentToolbar: Toolbar = [\n [{ heading: ['h1', 'h2', 'h3', 'h4', 'h5', 'h6'] }],\n ['bold', 'italic', 'underline', 'strike'],\n ['ordered_list', 'bullet_list'],\n ['blockquote', 'code'],\n ['link', 'image'],\n ['text_color', 'background_color'],\n ['align_left', 'align_center', 'align_right', 'align_justify'],\n ['horizontal_rule', 'format_clear'],\n ['undo', 'redo'],\n ];\n\n readonly resolvedBody = computed(() => {\n const draft = this.draft();\n return resolveTemplateVariables(draft.body, {\n frontendUrl: this.api.frontendUrl,\n site: { name: this.contentConfig.siteName },\n post: {\n title: draft.title,\n url: draft.slug ? this.api.getPostUrl(draft.slug) : null,\n id: this.currentPost()?.id,\n thumbnailUrl: this.thumbnailPreviewUrl() || null,\n },\n });\n });\n\n private readonly permissionApi = inject(TaonPermissionApiService);\n\n private readonly dialog = inject(MatDialog);\n\n private readonly destroyRef = inject(DestroyRef);\n\n private relatedPostsLoad?: Subscription;\n\n private applicationHooksLoad?: Subscription;\n\n private permissionsLoad?: Subscription;\n //#endregion\n\n ngAfterViewInit(): void {\n if (this.actionButtonsTemplateRef) {\n this.actionButtonsTemplate.emit(this.actionButtonsTemplateRef);\n }\n }\n\n //#region constructor\n constructor() {\n const editor = new Editor({\n attributes: {\n 'aria-label': this.t.gettext('Post body'),\n style: 'min-height: 20rem',\n },\n });\n\n this.contentEditor.set(editor);\n\n const editorChanges = editor.valueChanges.subscribe(document => {\n if (!this.editing() || this.loadingEditorContent) {\n return;\n }\n\n this.updateDraft('body', toHTML(document, editor.schema));\n });\n\n // React to post input changes.\n effect(() => {\n const post = this.post();\n\n untracked(() => {\n this.setPost(post);\n\n // Synchronize editor only because the POST changed externally.\n this.loadingEditorContent = true;\n\n try {\n editor.setContent(this.draft().body);\n } finally {\n this.loadingEditorContent = false;\n }\n });\n });\n\n // Enable/disable editor without recreating it.\n effect(() => {\n const disabled = this.busy() || this.dialogOpen() || !this.editing();\n\n editor.view.setProps({\n editable: () => !disabled,\n });\n });\n\n // Load edit-mode dependencies.\n effect(() => {\n if (this.editing()) {\n untracked(() => {\n this.loadApplicationHooks();\n this.loadPermissionOptions();\n this.loadTaxonomy();\n });\n }\n });\n\n // Thumbnail preview handling.\n effect(onCleanup => {\n const key = this.thumbnailReference();\n const editing = this.editing();\n const slug = editing ? '' : this.thumbnailSlug();\n const staged = this.stagedThumbnail();\n\n let active = true;\n\n onCleanup(() => {\n active = false;\n });\n\n this.thumbnailError.set('');\n this.thumbnailPreviewUrl.set('');\n\n if (staged && staged.key === key) {\n this.thumbnailPreviewUrl.set(staged.url);\n return;\n }\n\n if (!key) {\n return;\n }\n\n const placeholder = defaultThumbnailUrl(key);\n\n if (placeholder) {\n this.thumbnailPreviewUrl.set(placeholder);\n return;\n }\n\n if (!editing && !slug) {\n return;\n }\n\n const load = async () => {\n if (editing) {\n return this.api.getAssetUrl(key);\n }\n\n try {\n return await this.api.getThumbnailLinkBySlug(slug, true);\n } catch {\n return this.api.getThumbnailLinkBySlug(slug);\n }\n };\n\n void load()\n .then(url => {\n if (active && !this.destroyRef.destroyed) {\n this.thumbnailPreviewUrl.set(url);\n }\n })\n .catch((error: unknown) => {\n console.error('[taon-cms-post] Unable to load thumbnail', error);\n\n if (active && !this.destroyRef.destroyed) {\n this.thumbnailError.set(\n this.t.gettext('The thumbnail could not be loaded.'),\n );\n }\n });\n });\n\n // Media preview handling.\n effect(() => {\n const media = this.mediaAttachment();\n const key = media ? this.draft()[media.key] : null;\n\n const slug = this.draft().slug;\n const editing = this.editing();\n\n const viewing = !!this.currentPost() && this.mode() !== 'add';\n\n const stagedPreview = this.uploadedMediaPreview();\n\n if ((!editing && !viewing) || !media || !key) {\n this.mediaPreviewSignature = '';\n this.mediaPreviewRequest += 1;\n this.mediaPreviewUrl.set('');\n this.mediaPreviewLoading.set(false);\n this.mediaPreviewError.set('');\n return;\n }\n\n if (stagedPreview?.key === key) {\n const signature = `upload:${key}:${stagedPreview.url}`;\n\n if (signature === this.mediaPreviewSignature) {\n return;\n }\n\n this.mediaPreviewSignature = signature;\n this.mediaPreviewRequest += 1;\n\n this.mediaPreviewUrl.set(stagedPreview.url);\n\n this.mediaPreviewLoading.set(false);\n this.mediaPreviewError.set('');\n\n return;\n }\n\n if (!slug) {\n this.mediaPreviewSignature = '';\n this.mediaPreviewRequest += 1;\n this.mediaPreviewUrl.set('');\n this.mediaPreviewLoading.set(false);\n this.mediaPreviewError.set('');\n return;\n }\n\n const signature = `${this.mode()}:${media.type}:${slug}:${key}`;\n\n if (signature === this.mediaPreviewSignature) {\n return;\n }\n\n this.mediaPreviewSignature = signature;\n\n const requestId = ++this.mediaPreviewRequest;\n\n this.mediaPreviewUrl.set('');\n this.mediaPreviewLoading.set(true);\n this.mediaPreviewError.set('');\n\n const getLink = editing\n ? this.getMediaLink(slug, media.type)\n : this.getMediaLinkForView(slug, media.type);\n\n void getLink\n .then(url => {\n if (\n requestId === this.mediaPreviewRequest &&\n !this.destroyRef.destroyed\n ) {\n this.mediaPreviewUrl.set(url);\n }\n })\n .catch((error: unknown) => {\n console.error('[taon-cms-post] Unable to load media preview', error);\n\n if (\n requestId === this.mediaPreviewRequest &&\n !this.destroyRef.destroyed\n ) {\n this.mediaPreviewError.set(\n this.t.gettext(\n 'Media preview could not be loaded. Please reopen the editor to try again.',\n ),\n );\n }\n })\n .finally(() => {\n if (\n requestId === this.mediaPreviewRequest &&\n !this.destroyRef.destroyed\n ) {\n this.mediaPreviewLoading.set(false);\n }\n });\n });\n\n // Destroy ngx-editor ONLY when this component is actually destroyed.\n this.destroyRef.onDestroy(() => {\n editorChanges.unsubscribe();\n editor.destroy();\n\n if (this.contentEditor() === editor) {\n this.contentEditor.set(null);\n }\n\n this.releaseThumbnailPreview();\n });\n }\n //#endregion\n\n //#region methods / load related posts\n loadTaxonomy(preserveSelectedTags = false): void {\n this.taxonomyLoad?.unsubscribe();\n const session = this.editorSession;\n const postId = this.currentPost()?.id;\n this.taxonomyLoading.set(true);\n this.taxonomyError.set('');\n this.taxonomyLoad = forkJoin({\n categories: this.categoryApi.allMyEntities$,\n tags: this.tagApi.allMyEntities$,\n tagIds: postId ? this.api.listTagIds(postId) : of([] as number[]),\n })\n .pipe(\n takeUntilDestroyed(this.destroyRef),\n finalize(() => this.taxonomyLoading.set(false)),\n )\n .subscribe({\n next: result => {\n if (session === this.editorSession) {\n this.categories.set(\n result.categories.sort(\n (a, b) =>\n a.sortOrder - b.sortOrder || a.name.localeCompare(b.name),\n ),\n );\n this.tags.set(result.tags);\n if (!preserveSelectedTags) {\n this.updateDraft('tagIds', result.tagIds);\n }\n }\n },\n error: (error: unknown) => {\n console.error(\n '[taon-cms-post] Unable to load categories and tags',\n error,\n );\n this.taxonomyError.set(\n this.t.gettext(\n 'Categories and tags could not be loaded. Please try again.',\n ),\n );\n },\n });\n }\n\n addTag(id: number): void {\n if (!this.draft().tagIds.includes(id)) {\n this.updateDraft('tagIds', [...this.draft().tagIds, id]);\n }\n }\n\n removeTag(id: number): void {\n this.updateDraft(\n 'tagIds',\n this.draft().tagIds.filter(selected => selected !== id),\n );\n }\n\n filterTags(event: Event): void {\n if (event.target instanceof HTMLInputElement) {\n this.tagSearch.set(event.target.value);\n }\n }\n\n createTaxonomy(taxonomy: 'category' | 'tag'): void {\n if (this.busy() || this.dialogOpen()) {\n return;\n }\n\n this.dialogOpen.set(true);\n this.taxonomyError.set('');\n const ref = this.dialog.open<\n TaonCmsTaxonomyQuickCreateDialogComponent,\n { taxonomy: 'category' | 'tag' },\n {\n name: string;\n slug: string;\n description: string | null;\n parentCategoryId: number | null;\n sortOrder: number;\n }\n >(TaonCmsTaxonomyQuickCreateDialogComponent, {\n data: { taxonomy },\n width: '560px',\n maxWidth: '95vw',\n disableClose: true,\n });\n\n ref\n .afterClosed()\n .pipe(takeUntilDestroyed(this.destroyRef))\n .subscribe(fields => {\n if (!fields) {\n this.dialogOpen.set(false);\n return;\n }\n\n const request =\n taxonomy === 'category'\n ? this.categoryApi.save(null, fields)\n : this.tagApi.save(null, fields);\n request\n .pipe(\n takeUntilDestroyed(this.destroyRef),\n finalize(() => this.dialogOpen.set(false)),\n )\n .subscribe({\n next: saved => {\n if (taxonomy === 'category') {\n this.updateDraft('categoryId', saved.id);\n } else {\n this.addTag(saved.id);\n }\n this.loadTaxonomy(true);\n },\n error: (error: unknown) => {\n console.error(\n `[taon-cms-post] Unable to create ${taxonomy}`,\n error,\n );\n this.taxonomyError.set(\n taxonomy === 'category'\n ? this.t.gettext(\n 'The category could not be created. Please try again.',\n )\n : this.t.gettext(\n 'The tag could not be created. Please try again.',\n ),\n );\n },\n });\n });\n }\n\n applyDefaultThumbnail(): void {\n if (!this.editing() || this.busy() || this.dialogOpen()) {\n return;\n }\n this.releaseThumbnailPreview();\n this.stagedThumbnail.set(null);\n this.updateDraft('thumbnailKey', defaultThumbnailKey(this.draft().type));\n }\n\n async thumbnailSelected(event: Event): Promise<void> {\n if (!(event.target instanceof HTMLInputElement)) {\n return;\n }\n const input = event.target;\n const file = input.files?.[0];\n input.value = '';\n if (!file || !this.editing() || this.busy() || this.dialogOpen()) {\n return;\n }\n if (!file.type.startsWith('image/')) {\n this.error.set(\n this.t.gettext('Please select an image for the thumbnail.'),\n );\n return;\n }\n this.busy.set(true);\n this.error.set('');\n try {\n await this.storeThumbnail(file, this.editorSession);\n } catch (error: unknown) {\n console.error('[taon-cms-post] Unable to upload thumbnail', error);\n this.error.set(\n this.t.gettext(\n 'The thumbnail could not be uploaded. Please try again.',\n ),\n );\n } finally {\n this.busy.set(false);\n }\n }\n\n private async storeThumbnail(file: File, session: number): Promise<void> {\n if (session !== this.editorSession || this.destroyRef.destroyed) {\n return;\n }\n const previousPreview = this.thumbnailPreviewUrl();\n const previousStaged = this.stagedThumbnail();\n const preview = URL.createObjectURL(file);\n this.stagedThumbnail.set({ key: this.draft().thumbnailKey, url: preview });\n this.thumbnailPreviewUrl.set(preview);\n try {\n const object = await this.api.uploadMedia(file);\n if (session === this.editorSession && !this.destroyRef.destroyed) {\n this.releaseThumbnailPreview();\n this.thumbnailObjectUrl = preview;\n this.stagedThumbnail.set({ key: object.key, url: preview });\n this.updateDraft('thumbnailKey', object.key);\n }\n } catch (error: unknown) {\n if (session === this.editorSession) {\n this.stagedThumbnail.set(previousStaged);\n this.thumbnailPreviewUrl.set(previousPreview);\n }\n throw error;\n } finally {\n if (this.thumbnailObjectUrl !== preview) {\n URL.revokeObjectURL(preview);\n }\n }\n }\n\n private releaseThumbnailPreview(): void {\n if (this.thumbnailObjectUrl) {\n URL.revokeObjectURL(this.thumbnailObjectUrl);\n this.thumbnailObjectUrl = '';\n }\n }\n\n loadRelatedPosts(): void {\n if (this.busy() || this.relatedPostsLoading()) {\n return;\n }\n const post = this.requirePost();\n if (!post) {\n return;\n }\n this.relatedPostsLoading.set(true);\n this.relatedPostsError.set('');\n this.relatedPostsLoad = this.api\n .listRelatedPosts(post.id)\n .pipe(\n takeUntilDestroyed(this.destroyRef),\n finalize(() => this.relatedPostsLoading.set(false)),\n )\n .subscribe({\n next: posts => this.relatedPosts.set(posts),\n error: (error: unknown) => {\n console.error('[taon-cms-post] Unable to load related posts', error);\n this.relatedPostsError.set(\n this.t.gettext(\n 'Related posts could not be loaded. Please try again.',\n ),\n );\n },\n });\n }\n //#endregion\n\n //#region methods / add related post\n addRelatedPost(): void {\n if (\n !this.editing() ||\n this.busy() ||\n this.dialogOpen() ||\n this.relatedPostsLoading() ||\n this.relatedPostsError()\n ) {\n return;\n }\n this.dialogOpen.set(true);\n const ref = this.dialog.open<\n TaonRelatedPostChooserComponent,\n TaonRelatedPostChooserData,\n TaonCmsContentEntity\n >(TaonRelatedPostChooserComponent, {\n data: {\n postId: this.currentPost()?.id,\n excludedIds: this.relatedPosts().map(post => post.id),\n },\n width: '560px',\n maxWidth: '95vw',\n disableClose: true,\n });\n ref\n .afterClosed()\n .pipe(takeUntilDestroyed(this.destroyRef))\n .subscribe(post => {\n this.dialogOpen.set(false);\n if (\n post &&\n post.id !== this.currentPost()?.id &&\n !this.relatedPosts().some(related => related.id === post.id)\n ) {\n this.relatedPosts.update(posts => [...posts, post]);\n }\n });\n }\n //#endregion\n\n //#region methods / add as child of\n addAsChildOf(): void {\n const post = this.currentPost();\n if (\n !this.editing() ||\n !post ||\n this.busy() ||\n this.dialogOpen() ||\n this.relatedPostsLoading()\n ) {\n return;\n }\n\n this.dialogOpen.set(true);\n const ref = this.dialog.open<\n TaonRelatedPostChooserComponent,\n TaonRelatedPostChooserData,\n TaonCmsContentEntity\n >(TaonRelatedPostChooserComponent, {\n data: { postId: post.id, excludedIds: [] },\n width: '560px',\n maxWidth: '95vw',\n disableClose: true,\n });\n ref\n .afterClosed()\n .pipe(takeUntilDestroyed(this.destroyRef))\n .subscribe(parent => {\n this.dialogOpen.set(false);\n if (!parent || !this.currentPost()) {\n return;\n }\n\n this.busy.set(true);\n this.error.set('');\n this.api\n .addRelatedPost(parent.id, post.id, parent.version)\n .pipe(\n switchMap(() => from(this.api.getById(post.id))),\n takeUntilDestroyed(this.destroyRef),\n finalize(() => this.busy.set(false)),\n )\n .subscribe({\n next: refreshedPost => {\n this.currentPost.set(refreshedPost);\n this.permissionsLoad?.unsubscribe();\n this.permissionsLoading.set(false);\n this.loadPermissions();\n },\n error: (error: unknown) => {\n console.error(\n '[taon-cms-post] Unable to make post a child',\n error,\n );\n this.error.set(\n this.t.gettext(\n 'The parent post could not be changed. Please try again.',\n ),\n );\n },\n });\n });\n }\n //#endregion\n\n //#region methods / remove related post\n removeRelatedPost(id: number): void {\n if (\n !this.editing() ||\n this.busy() ||\n this.dialogOpen() ||\n this.relatedPostsLoading() ||\n this.relatedPostsError()\n ) {\n return;\n }\n this.relatedPosts.update(posts => posts.filter(post => post.id !== id));\n }\n //#endregion\n\n //#region methods / application hooks\n loadApplicationHooks(): void {\n if (this.applicationHooksLoading()) {\n return;\n }\n this.applicationHooksLoading.set(true);\n this.applicationHooksError.set('');\n this.applicationHooksLoad = this.api\n .listApplicationHooks()\n .pipe(\n takeUntilDestroyed(this.destroyRef),\n finalize(() => this.applicationHooksLoading.set(false)),\n )\n .subscribe({\n next: hooks => {\n this.applicationHooks.set(hooks);\n this.setApplicationHookSelection(this.currentPost(), hooks);\n },\n error: (error: unknown) => {\n console.error(\n '[taon-cms-post] Unable to load application hooks',\n error,\n );\n this.applicationHooksError.set(\n this.t.gettext(\n 'Application hooks could not be loaded. Please try again.',\n ),\n );\n },\n });\n }\n\n setUseAsApplicationHook(enabled: boolean): void {\n this.useAsApplicationHook.set(enabled);\n }\n\n applicationHookInUseByAnotherPost(\n applicationHook: TaonCmsApplicationHookEntity,\n ): boolean {\n return (\n applicationHook.contentId !== null &&\n applicationHook.contentId !== this.currentPost()?.id\n );\n }\n\n applicationHookLabel(hook: TaonCmsApplicationHook): string {\n return hook.split('-').join('_').toUpperCase();\n }\n //#endregion\n\n //#region methods / load permissions\n loadPermissions(): void {\n if (this.permissionsLoading()) {\n return;\n }\n const post = this.requirePost();\n if (!post) {\n return;\n }\n this.permissionsLoading.set(true);\n this.permissionsError.set('');\n this.permissionsLoad = this.api\n .getPermissionConfiguration(post.id)\n .pipe(\n takeUntilDestroyed(this.destroyRef),\n finalize(() => this.permissionsLoading.set(false)),\n )\n .subscribe({\n next: configuration => {\n this.permissions.set(configuration.permissions);\n this.permissionSource.set(configuration.source);\n },\n error: (error: unknown) => {\n console.error('[taon-cms-post] Unable to load permissions', error);\n this.permissionsError.set(\n this.t.gettext(\n 'Permissions could not be loaded. Please try again.',\n ),\n );\n },\n });\n }\n //#endregion\n\n //#region methods / add permission\n addPermission(): void {\n if (\n !this.editing() ||\n this.busy() ||\n this.dialogOpen() ||\n this.permissionSource() ||\n this.permissionsLoading() ||\n this.permissionsError()\n ) {\n return;\n }\n const permissionId = this.selectedPermissionId();\n const permission = this.availablePermissions().find(\n item => item.id === permissionId,\n );\n if (permission) {\n this.permissions.update(permissions => [...permissions, permission]);\n this.selectedPermissionId.set(null);\n }\n }\n //#endregion\n\n //#region methods / remove permission\n removePermission(id: number): void {\n if (\n !this.editing() ||\n this.busy() ||\n this.dialogOpen() ||\n this.permissionSource() ||\n this.permissionsLoading() ||\n this.permissionsError()\n ) {\n return;\n }\n this.permissions.update(items =>\n items.filter(permission => permission.id !== id),\n );\n }\n //#endregion\n\n //#region methods / load permission options\n loadPermissionOptions(): void {\n if (\n this.permissionOptionsLoading() ||\n this.permissionOptions().length > 0\n ) {\n return;\n }\n this.permissionOptionsLoading.set(true);\n this.permissionOptionsError.set('');\n this.permissionApi.allMyEntities$\n .pipe(\n takeUntilDestroyed(this.destroyRef),\n finalize(() => this.permissionOptionsLoading.set(false)),\n )\n .subscribe({\n next: permissions => this.permissionOptions.set(permissions),\n error: (error: unknown) => {\n console.error(\n '[taon-cms-post] Unable to load permission options',\n error,\n );\n this.permissionOptionsError.set(\n this.t.gettext(\n 'Available permissions could not be loaded. Please try again.',\n ),\n );\n },\n });\n }\n //#endregion\n\n //#region methods / update draft\n updateRawContent(event: Event): void {\n if (event.target instanceof HTMLTextAreaElement) {\n this.updateDraft('body', event.target.value);\n }\n }\n\n insertVariable(variable: TaonCmsTemplateVariable): void {\n if (!this.editing() || this.busy() || this.dialogOpen()) {\n return;\n }\n const text = `{{${variable}}}`;\n if (this.contentTab() === 1) {\n const textarea = this.rawContent()?.nativeElement;\n if (textarea) {\n textarea.setRangeText(\n text,\n textarea.selectionStart,\n textarea.selectionEnd,\n 'end',\n );\n this.updateDraft('body', textarea.value);\n textarea.focus();\n }\n } else if (this.contentTab() === 0) {\n const editor = this.contentEditor();\n editor?.commands.insertText(text).exec();\n editor?.view.focus();\n }\n }\n\n updateDraft<K extends keyof TaonCmsPostDraft>(\n field: K,\n value: TaonCmsPostDraft[K],\n ): void {\n if (\n field === 'title' &&\n this.mode() === 'add' &&\n !this.slugManuallySet &&\n !this.draft().slug\n ) {\n const title = String(value);\n this.draft.update(draft => ({\n ...draft,\n title,\n slug: ___NS__kebabCase(title),\n }));\n return;\n }\n this.draft.update(draft => ({ ...draft, [field]: value }));\n }\n //#endregion\n\n //#region methods / file selected\n async fileSelected(event: Event): Promise<void> {\n if (!(event.target instanceof HTMLInputElement)) {\n this.error.set(this.t.gettext('Unable to read the selected media file.'));\n return;\n }\n const input = event.target;\n const file = input.files?.[0];\n if (!file) {\n return;\n }\n const media = this.mediaAttachment();\n if (!media || !this.editing() || this.busy() || this.dialogOpen()) {\n input.value = '';\n return;\n }\n const session = this.editorSession;\n this.busy.set(true);\n this.uploading.set(true);\n this.uploadProgress.set(0);\n this.error.set('');\n try {\n const object = await this.api.uploadMedia(file, percentage => {\n if (!this.destroyRef.destroyed) {\n this.uploadProgress.set(percentage);\n }\n });\n if (!this.destroyRef.destroyed && this.editorSession === session) {\n const fileName = object.fileName || file.name;\n this.mediaFileNames.update(names => ({\n ...names,\n [object.key]: fileName,\n }));\n if (object.downloadUrl) {\n this.uploadedMediaPreview.set({\n key: object.key,\n url: this.uploadedMediaUrl(object.downloadUrl, media.type),\n fileName,\n });\n }\n this.updateDraft(media.key, object.key);\n if (media.type === TaonCmsContentType.Video) {\n try {\n const blob = await generateVideoThumbnail(file);\n const extension = blob.type === 'image/webp' ? 'webp' : 'png';\n await this.storeThumbnail(\n new File([blob], `thumbnail.${extension}`, { type: blob.type }),\n session,\n );\n } catch (error: unknown) {\n console.error(\n '[taon-cms-post] Unable to generate thumbnail',\n error,\n );\n this.error.set(\n this.t.gettext(\n 'The video was uploaded, but its thumbnail could not be generated. Upload a thumbnail or apply a default placeholder.',\n ),\n );\n }\n }\n }\n } catch (error: unknown) {\n console.error('[taon-cms-post] Unable to upload media', error);\n this.error.set(\n this.t.gettext('The media could not be uploaded. Please try again.'),\n );\n } finally {\n this.busy.set(false);\n this.uploading.set(false);\n this.uploadProgress.set(0);\n input.value = '';\n }\n }\n //#endregion\n\n //#region methods / remove media\n removeMedia(): void {\n const media = this.mediaAttachment();\n if (!media || !this.editing() || this.busy() || this.dialogOpen()) {\n return;\n }\n this.uploadedMediaPreview.set(null);\n this.updateDraft(media.key, null);\n }\n //#endregion\n\n //#region methods / uploaded media URL\n private uploadedMediaUrl(url: string, type: TaonCmsContentType): string {\n if (type !== TaonCmsContentType.Attachment) {\n return url;\n }\n const parsedUrl = new URL(url);\n parsedUrl.searchParams.set('download', 'true');\n return parsedUrl.href;\n }\n //#endregion\n\n //#region methods / get media link\n private getMediaLink(\n slug: string,\n type: TaonCmsContentType,\n ): Promise<string> {\n switch (type) {\n case TaonCmsContentType.Video:\n return firstValueFrom(this.api.getVideoLinkBySlug(slug));\n case TaonCmsContentType.Audio:\n return firstValueFrom(this.api.getAudioLinkBySlug(slug));\n case TaonCmsContentType.Attachment:\n return this.api.getAttachmentLinkBySlug(slug);\n default:\n return Promise.reject(new Error('This post type has no media.'));\n }\n }\n //#endregion\n\n //#region methods / get media link for viewing\n private async getMediaLinkForView(\n slug: string,\n type: TaonCmsContentType,\n ): Promise<string> {\n try {\n switch (type) {\n case TaonCmsContentType.Video:\n return await this.api.getPublicVideoLinkBySlug(slug);\n case TaonCmsContentType.Audio:\n return await this.api.getPublicAudioLinkBySlug(slug);\n case TaonCmsContentType.Attachment:\n return await this.api.getPublicAttachmentLinkBySlug(slug);\n default:\n throw new Error('This post type has no media.');\n }\n } catch {\n return this.getMediaLink(slug, type);\n }\n }\n //#endregion\n\n //#region methods / media file name\n mediaFileName(key: string): string {\n const fileName = this.mediaFileNames()[key];\n if (fileName) {\n return fileName;\n }\n const uploaded = this.uploadedMediaPreview();\n if (uploaded?.key === key) {\n return uploaded.fileName;\n }\n const storedName = key.split('/').pop() || key;\n return storedName.replace(/^[0-9a-f-]{36}__/i, '');\n }\n //#endregion\n\n //#region methods / update slug\n updateSlug(event: Event): void {\n if (event.target instanceof HTMLInputElement) {\n this.slugManuallySet = true;\n this.updateDraft('slug', event.target.value);\n }\n }\n //#endregion\n\n //#region methods / edit\n edit(): void {\n if (this.mode() !== 'view' || this.busy() || this.dialogOpen()) {\n return;\n }\n if (!this.requirePost()) {\n return;\n }\n this.error.set('');\n this.mode.set('edit');\n }\n //#endregion\n\n //#region methods / cancel\n cancel(): void {\n if (this.busy() || this.dialogOpen()) {\n return;\n }\n this.setPost(this.currentPost());\n this.error.set('');\n if (this.editing()) {\n this.mode.set('view');\n }\n this.cancelled.emit();\n }\n //#endregion\n\n //#region methods / save\n save(): void {\n if (this.busy() || this.dialogOpen() || !this.editing()) {\n return;\n }\n if (!this.canSave()) {\n this.error.set(this.t.gettext('A title and slug are required.'));\n return;\n }\n if (this.mode() === 'add') {\n this.persist(\n this.api.createContent({\n ...this.draft(),\n relatedPostIds: this.relatedPosts().map(post => post.id),\n permissionIds: this.permissions().map(permission => permission.id),\n applyPermissionsToRelatedPosts: this.applyPermissionsToRelatedPosts(),\n applicationHook: this.useAsApplicationHook()\n ? this.selectedApplicationHook()\n : null,\n }),\n );\n } else {\n const post = this.requirePost();\n if (post) {\n this.persist(this.api.updateContent(post.id, this.updateInput(post)));\n }\n }\n }\n //#endregion\n\n //#region methods / publish\n publish(): void {\n if (\n this.busy() ||\n this.dialogOpen() ||\n !this.canPublish() ||\n this.mode() === 'view-clean' ||\n this.mode() === 'add'\n ) {\n return;\n }\n if (this.editing() && !this.canSave()) {\n this.error.set(this.t.gettext('A title and slug are required.'));\n return;\n }\n const post = this.requirePost();\n if (post) {\n this.persist(\n this.api.updateContent(post.id, {\n ...(this.editing()\n ? this.updateInput(post)\n : { expectedVersion: post.version }),\n status: 'published',\n publishedAt: new Date(),\n }),\n );\n }\n }\n //#endregion\n\n //#region methods / unpublish\n unpublish(): void {\n const post = this.currentPost();\n if (\n !post ||\n post.status !== 'published' ||\n this.busy() ||\n this.dialogOpen() ||\n this.mode() === 'view-clean' ||\n this.mode() === 'add'\n ) {\n return;\n }\n this.persist(\n this.api.updateContent(post.id, {\n expectedVersion: post.version,\n status: 'draft',\n }),\n );\n }\n //#endregion\n\n //#region methods / revert\n revert(): void {\n const post = this.requirePost();\n if (\n !post ||\n this.busy() ||\n this.dialogOpen() ||\n this.mode() === 'view-clean'\n ) {\n return;\n }\n this.dialogOpen.set(true);\n const ref = this.dialog.open<\n TaonCmsRevisionChooserComponent,\n TaonCmsContentEntity,\n TaonCmsContentEntity\n >(TaonCmsRevisionChooserComponent, {\n data: post,\n width: '560px',\n maxWidth: '95vw',\n disableClose: true,\n });\n ref\n .afterClosed()\n .pipe(takeUntilDestroyed(this.destroyRef))\n .subscribe(restored => {\n this.dialogOpen.set(false);\n if (restored) {\n this.acceptPost(restored);\n }\n });\n }\n //#endregion\n\n //#region methods / delete\n delete(): void {\n const post = this.requirePost();\n if (\n !post ||\n this.busy() ||\n this.dialogOpen() ||\n this.mode() === 'view-clean'\n ) {\n return;\n }\n this.dialogOpen.set(true);\n const ref = this.dialog.open(TaonConfirmDialogComponent, {\n data: {\n title: this.t.gettext('Delete post?'),\n message: this.t.gettext(\n 'This archives the post. It can be restored from its revisions.',\n ),\n confirmText: this.t.gettext('Delete'),\n },\n });\n ref\n .afterClosed()\n .pipe(takeUntilDestroyed(this.destroyRef))\n .subscribe(confirmed => {\n this.dialogOpen.set(false);\n if (confirmed) {\n this.persist(this.api.deleteContent(post.id, post.version), true);\n }\n });\n }\n //#endregion\n\n //#region methods / duplicate\n duplicate(): void {\n if (this.busy() || this.dialogOpen() || this.mode() === 'view-clean') {\n return;\n }\n const post = this.requirePost();\n if (!post) {\n return;\n }\n this.busy.set(true);\n this.error.set('');\n this.api\n .duplicateContent(post.id)\n .pipe(\n takeUntilDestroyed(this.destroyRef),\n finalize(() => this.busy.set(false)),\n )\n .subscribe({\n next: duplicate => this.duplicated.emit(duplicate),\n error: (error: unknown) => {\n console.error('[taon-cms-post] Unable to duplicate post', error);\n this.error.set(\n this.t.gettext(\n 'The post could not be duplicated. Please try again.',\n ),\n );\n },\n });\n }\n //#endregion\n\n //#region methods / update input\n private updateInput(post: TaonCmsContentEntity): TaonCmsUpdateContent {\n return {\n ...this.draft(),\n relatedPostIds: this.relatedPosts().map(related => related.id),\n ...(this.permissionSource()\n ? {}\n : {\n permissionIds: this.permissions().map(permission => permission.id),\n }),\n applyPermissionsToRelatedPosts: this.applyPermissionsToRelatedPosts(),\n applicationHook: this.useAsApplicationHook()\n ? this.selectedApplicationHook()\n : null,\n expectedVersion: post.version,\n };\n }\n //#endregion\n\n //#region methods / require post\n private requirePost(): TaonCmsContentEntity | null {\n const post = this.currentPost();\n if (!post) {\n this.error.set(this.t.gettext('No post is loaded.'));\n }\n return post;\n }\n //#endregion\n\n //#region methods / set post\n private setPost(post: TaonCmsContentEntity | null): void {\n this.editorSession += 1;\n this.taxonomyLoad?.unsubscribe();\n this.taxonomyLoading.set(false);\n this.taxonomyError.set('');\n this.releaseThumbnailPreview();\n this.stagedThumbnail.set(null);\n this.tagSearch.set('');\n this.relatedPostsLoad?.unsubscribe();\n this.applicationHooksLoad?.unsubscribe();\n this.permissionsLoad?.unsubscribe();\n this.relatedPostsLoading.set(false);\n this.relatedPostsError.set('');\n this.applicationHooksLoading.set(false);\n this.applicationHooksError.set('');\n this.permissionsLoading.set(false);\n this.permissionsError.set('');\n this.uploadedMediaPreview.set(null);\n this.mediaPreviewSignature = '';\n this.mediaPreviewRequest += 1;\n this.currentPost.set(post);\n this.slugManuallySet = Boolean(post);\n this.relatedPosts.set(post?.relatedPosts ?? []);\n this.permissions.set(post?.permissions ?? []);\n this.permissionSource.set(null);\n this.applyPermissionsToRelatedPosts.set(\n post?.applyPermissionsToRelatedPosts ?? false,\n );\n this.selectedPermissionId.set(null);\n this.setApplicationHookSelection(post, this.applicationHooks());\n this.draft.set({\n type: post?.type ?? TaonCmsContentType.Normal,\n title: post?.title ?? '',\n slug: post?.slug ?? '',\n excerpt: post?.excerpt ?? '',\n body: post?.body ?? '',\n videoKey: post?.videoKey ?? null,\n audioKey: post?.audioKey ?? null,\n attachmentKey: post?.attachmentKey ?? null,\n thumbnailKey: post?.thumbnailKey ?? null,\n categoryId: post?.categoryId ?? null,\n tagIds: [],\n });\n if (\n post &&\n post.relatedPosts === undefined &&\n this.mode() !== 'view-clean'\n ) {\n this.loadRelatedPosts();\n }\n if (post && this.mode() !== 'view-clean') {\n this.loadPermissions();\n }\n if (this.editing()) {\n this.loadTaxonomy();\n }\n }\n //#endregion\n\n private setApplicationHookSelection(\n post: TaonCmsContentEntity | null,\n hooks: TaonCmsApplicationHookEntity[],\n ): void {\n const assignedHook =\n post?.applicationHook !== undefined\n ? post.applicationHook?.hook\n : hooks.find(applicationHook => applicationHook.contentId === post?.id)\n ?.hook;\n this.useAsApplicationHook.set(!!assignedHook);\n this.selectedApplicationHook.set(assignedHook ?? null);\n }\n\n //#region methods / accept post\n private acceptPost(post: TaonCmsContentEntity): void {\n this.setPost(post);\n this.error.set('');\n this.mode.set('view');\n this.changed.emit(post);\n }\n //#endregion\n\n //#region methods / persist\n private persist(\n request: Observable<TaonCmsContentEntity>,\n deleting = false,\n ): void {\n if (this.busy() || this.dialogOpen() || this.mode() === 'view-clean') {\n return;\n }\n this.busy.set(true);\n this.error.set('');\n request\n .pipe(\n takeUntilDestroyed(this.destroyRef),\n finalize(() => this.busy.set(false)),\n )\n .subscribe({\n next: post => {\n this.acceptPost(post);\n if (deleting) {\n this.deleted.emit(post);\n }\n },\n error: (error: unknown) => {\n console.error('[taon-cms-post] Unable to save post', error);\n this.error.set(\n this.t.gettext(\n 'The post could not be saved. Check the slug and your connection. If another user changed it, close and reopen the post before retrying.',\n ),\n );\n },\n });\n }\n //#endregion\n}","@if (mode() !== 'view-clean') {\n <ng-template #actionButtonsTemplate>\n <div class=\"buttons\">\n @if (editing()) {\n <button\n mat-flat-button\n type=\"button\"\n [disabled]=\"busy() || dialogOpen() || !canSave()\"\n (click)=\"save()\">\n {{ mode() === 'add' ? t.gettext('Add') : t.gettext('Save') }}\n </button>\n <button\n mat-button\n type=\"button\"\n [disabled]=\"busy() || dialogOpen()\"\n (click)=\"cancel()\">\n {{ t.gettext('Cancel') }}\n </button>\n } @else if (currentPost()) {\n <button\n mat-button\n type=\"button\"\n [disabled]=\"busy() || dialogOpen()\"\n (click)=\"edit()\">\n <mat-icon>edit</mat-icon> {{ t.gettext('Edit') }}\n </button>\n }\n @if (mode() !== 'add' && currentPost()) {\n @if (canPublish()) {\n <button\n mat-flat-button\n type=\"button\"\n [disabled]=\"busy() || dialogOpen() || (editing() && !canSave())\"\n (click)=\"publish()\">\n {{ t.gettext('Publish') }}\n </button>\n } @else {\n <button\n mat-button\n type=\"button\"\n [disabled]=\"busy() || dialogOpen()\"\n (click)=\"unpublish()\">\n {{ t.gettext('Unpublish') }}\n </button>\n }\n <button\n mat-button\n type=\"button\"\n [disabled]=\"busy() || dialogOpen()\"\n (click)=\"revert()\">\n <mat-icon>history</mat-icon> {{ t.gettext('Revert') }}\n </button>\n @if (currentPost()?.status !== 'archived') {\n <button\n mat-button\n type=\"button\"\n [disabled]=\"busy() || dialogOpen()\"\n (click)=\"delete()\">\n <mat-icon>delete</mat-icon> {{ t.gettext('Delete') }}\n </button>\n }\n <button\n mat-button\n type=\"button\"\n [disabled]=\"busy() || dialogOpen()\"\n (click)=\"duplicate()\">\n <mat-icon>content_copy</mat-icon> {{ t.gettext('Duplicate') }}\n </button>\n }\n </div>\n </ng-template>\n <header class=\"post-actions\">\n <span class=\"post-status\">{{\n mode() === 'add' ? t.gettext('New draft') : currentPost()?.status\n }}</span>\n <ng-container [ngTemplateOutlet]=\"actionButtonsTemplate\" />\n @if (busy()) {\n <span role=\"status\">{{\n uploading()\n ? t.gettext('Uploading... ') + uploadProgress() + '%'\n : t.gettext('Saving...')\n }}</span>\n }\n </header>\n @if (error()) {\n <p\n class=\"error\"\n role=\"alert\">\n {{ error() }}\n </p>\n }\n}\n\n<article\n class=\"post-article\"\n [attr.aria-busy]=\"busy()\">\n @if (editing()) {\n <mat-tab-group animationDuration=\"0ms\">\n <mat-tab [label]=\"t.gettext('CONTENT')\">\n <mat-radio-group\n class=\"post-type-selector\"\n [attr.aria-label]=\"t.gettext('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\">{{\n type.label\n }}</mat-radio-button>\n }\n </mat-radio-group>\n <div\n class=\"post-title editable\"\n contenteditable=\"true\"\n role=\"textbox\"\n [attr.aria-label]=\"t.gettext('Post title')\"\n aria-required=\"true\"\n [attr.data-placeholder]=\"placeholderTitle()\"\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 [attr.aria-label]=\"t.gettext('Post excerpt')\"\n aria-multiline=\"true\"\n [attr.data-placeholder]=\"placeholderShortIntro()\"\n [attr.contenteditable]=\"!busy() && !dialogOpen()\"\n [taonCmsEditable]=\"draft().excerpt\"\n (taonCmsEditableChange)=\"updateDraft('excerpt', $event)\"></div>\n <section class=\"post-content-editor\">\n <mat-tab-group\n [selectedIndex]=\"contentTab()\"\n (selectedIndexChange)=\"contentTab.set($event)\"\n [preserveContent]=\"true\"\n animationDuration=\"0ms\">\n <mat-tab [label]=\"t.gettext('Editor')\">\n @if (contentEditor(); as editor) {\n <ngx-editor-menu\n [editor]=\"editor\"\n [toolbar]=\"contentToolbar\"\n [disabled]=\"busy() || dialogOpen()\" />\n <ngx-editor\n [editor]=\"editor\"\n [placeholder]=\"placeholderTellYourStory()\" />\n }\n </mat-tab>\n <mat-tab [label]=\"t.gettext('Raw')\">\n <textarea\n #rawContent\n class=\"raw-content\"\n [attr.aria-label]=\"t.gettext('Post body HTML')\"\n [value]=\"draft().body\"\n [disabled]=\"busy() || dialogOpen()\"\n (input)=\"updateRawContent($event)\"\n spellcheck=\"false\"></textarea>\n </mat-tab>\n <mat-tab [label]=\"t.gettext('Preview')\">\n <div\n class=\"post-body content-preview\"\n [innerHTML]=\"resolvedBody()\"></div>\n </mat-tab>\n </mat-tab-group>\n @if (contentTab() !== 2) {\n <button\n mat-button\n type=\"button\"\n [disabled]=\"busy() || dialogOpen() || !contentEditor()\"\n [matMenuTriggerFor]=\"variableMenu\"\n [matMenuTriggerRestoreFocus]=\"false\">\n {{ t.gettext('Insert variable') }}\n </button>\n }\n <mat-menu #variableMenu=\"matMenu\">\n <button mat-menu-item [matMenuTriggerFor]=\"siteVariableMenu\">\n {{ t.gettext('Site') }}\n </button>\n <button mat-menu-item [matMenuTriggerFor]=\"postVariableMenu\">\n {{ t.gettext('Post') }}\n </button>\n </mat-menu>\n <mat-menu #siteVariableMenu=\"matMenu\">\n <button mat-menu-item (click)=\"insertVariable('frontendUrl')\">\n {{ t.gettext('Frontend URL') }}\n </button>\n <button mat-menu-item (click)=\"insertVariable('site.name')\">\n {{ t.gettext('Site name') }}\n </button>\n <button mat-menu-item (click)=\"insertVariable('currentYear')\">\n {{ t.gettext('Current year') }}\n </button>\n </mat-menu>\n <mat-menu #postVariableMenu=\"matMenu\">\n <button mat-menu-item (click)=\"insertVariable('post.title')\">\n {{ t.gettext('Post title') }}\n </button>\n <button mat-menu-item (click)=\"insertVariable('post.url')\">\n {{ t.gettext('Post URL') }}\n </button>\n <button mat-menu-item (click)=\"insertVariable('post.id')\">\n {{ t.gettext('Post ID') }}\n </button>\n <button mat-menu-item (click)=\"insertVariable('post.thumbnailUrl')\">\n {{ t.gettext('Post Thumbnail URL') }}\n </button>\n </mat-menu>\n </section>\n <label class=\"slug-field\">\n <span>{{ t.gettext('URL slug') }}</span>\n <input\n [attr.aria-label]=\"t.gettext('URL slug')\"\n [value]=\"draft().slug\"\n [disabled]=\"busy() || dialogOpen()\"\n (input)=\"updateSlug($event)\"\n [placeholder]=\"t.gettext('my-post')\" />\n </label>\n </mat-tab>\n <mat-tab [label]=\"t.gettext('SETTINGS')\">\n <div class=\"post-settings\">\n @if (mediaAttachment(); as media) {\n <mat-card class=\"post-setting-card\">\n <section\n class=\"media-attachment\"\n aria-labelledby=\"media-attachment-heading\">\n <h2 id=\"media-attachment-heading\">{{ media.heading }}</h2>\n @if (uploading()) {\n <mat-progress-bar\n mode=\"determinate\"\n [value]=\"uploadProgress()\"\n [attr.aria-label]=\"t.gettext('Media upload progress')\" />\n }\n @if (draft()[media.key]; as key) {\n @if (mediaPreviewLoading()) {\n <p role=\"status\">{{ t.gettext('Loading media preview...') }}</p>\n }\n @if (mediaPreviewError()) {\n <p\n class=\"error\"\n role=\"alert\">\n {{ mediaPreviewError() }}\n </p>\n }\n @if (media.type === 'video' && mediaPreviewUrl()) {\n <video\n controls\n preload=\"none\"\n [src]=\"mediaPreviewUrl()\">\n {{ t.gettext('Your browser does not support video playback.') }}\n </video>\n } @else if (media.type === 'audio' && mediaPreviewUrl()) {\n <audio\n controls\n preload=\"none\"\n [src]=\"mediaPreviewUrl()\">\n {{ t.gettext('Your browser does not support audio playback.') }}\n </audio>\n } @else if (media.type === 'attachment' && mediaPreviewUrl()) {\n <p>\n {{\n t.gettext('Attached file: [[ fileName ]]', {\n fileName: mediaFileName(key),\n })\n }}\n <a\n [href]=\"mediaPreviewUrl()\"\n target=\"_blank\"\n rel=\"noopener\"\n >{{ t.gettext('Download or open') }}</a\n >\n </p>\n }\n <input\n #mediaInput\n hidden\n type=\"file\"\n [accept]=\"media.accept\"\n [disabled]=\"busy() || dialogOpen()\"\n (change)=\"fileSelected($event)\" />\n <button\n mat-button\n type=\"button\"\n [disabled]=\"busy() || dialogOpen()\"\n (click)=\"mediaInput.click()\">\n {{ t.gettext('Replace') }}\n </button>\n <button\n mat-button\n type=\"button\"\n [disabled]=\"busy() || dialogOpen()\"\n (click)=\"removeMedia()\">\n {{ t.gettext('Remove') }}\n </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\n mat-button\n type=\"button\"\n [disabled]=\"busy() || dialogOpen()\"\n (click)=\"mediaInput.click()\">\n {{ media.uploadLabel }}\n </button>\n }\n </section>\n </mat-card>\n }\n <mat-card class=\"post-setting-card\">\n <section\n class=\"post-thumbnail\"\n aria-labelledby=\"thumbnail-heading\">\n <h2 id=\"thumbnail-heading\">{{ t.gettext('Thumbnail') }}</h2>\n @if (thumbnailPreviewUrl()) {\n <img\n class=\"thumbnail-preview\"\n [src]=\"thumbnailPreviewUrl()\"\n [alt]=\"t.gettext('Post thumbnail')\" />\n } @else {\n <p>{{ t.gettext('No thumbnail selected.') }}</p>\n }\n @if (thumbnailError()) {\n <p role=\"alert\">{{ thumbnailError() }}</p>\n }\n <input\n #thumbnailInput\n hidden\n type=\"file\"\n accept=\"image/*\"\n [disabled]=\"busy() || dialogOpen()\"\n (change)=\"thumbnailSelected($event)\" />\n <div class=\"buttons\">\n <button\n mat-button\n type=\"button\"\n [disabled]=\"busy() || dialogOpen()\"\n (click)=\"thumbnailInput.click()\">\n {{ t.gettext('Upload Thumbnail') }}\n </button>\n <button\n mat-button\n type=\"button\"\n [disabled]=\"busy() || dialogOpen()\"\n (click)=\"applyDefaultThumbnail()\">\n {{ t.gettext('Apply Default Placeholder') }}\n </button>\n </div>\n </section>\n </mat-card>\n <mat-card class=\"post-setting-card\">\n <section\n class=\"post-taxonomy\"\n aria-labelledby=\"category-heading\">\n <h2 id=\"category-heading\">{{ t.gettext('Category / Tags') }}</h2>\n @if (taxonomyLoading()) {\n <p role=\"status\">{{ t.gettext('Loading categories and tags...') }}</p>\n }\n @if (taxonomyError()) {\n <p role=\"alert\">{{ taxonomyError() }}</p>\n <button\n mat-button\n type=\"button\"\n [disabled]=\"busy()\"\n (click)=\"loadTaxonomy()\">\n {{ t.gettext('Try again') }}\n </button>\n }\n <mat-form-field appearance=\"outline\">\n <mat-label>{{ t.gettext('Category') }}</mat-label>\n <mat-select\n [value]=\"draft().categoryId\"\n [disabled]=\"\n busy() || dialogOpen() || taxonomyLoading() || !!taxonomyError()\n \"\n (selectionChange)=\"updateDraft('categoryId', $event.value)\">\n <mat-option [value]=\"null\">{{ t.gettext('None') }}</mat-option>\n @for (category of categories(); track category.id) {\n <mat-option [value]=\"category.id\">{{ category.name }}</mat-option>\n }\n </mat-select>\n </mat-form-field>\n <h3>{{ t.gettext('Tags') }}</h3>\n <mat-chip-set [attr.aria-label]=\"t.gettext('Selected tags')\">\n @for (tag of selectedTags(); track tag.id) {\n <mat-chip\n [disabled]=\"busy() || dialogOpen() || taxonomyLoading()\"\n (removed)=\"removeTag(tag.id)\">\n {{ tag.name }}\n <button\n matChipRemove\n type=\"button\"\n [disabled]=\"busy() || dialogOpen() || taxonomyLoading()\"\n [attr.aria-label]=\"\n t.gettext('Remove tag [[ name ]]', { name: tag.name })\n \">\n <mat-icon>cancel</mat-icon>\n </button>\n </mat-chip>\n }\n </mat-chip-set>\n <mat-form-field appearance=\"outline\">\n <mat-label>{{ t.gettext('Search tags') }}</mat-label>\n <input\n matInput\n [value]=\"tagSearch()\"\n (input)=\"filterTags($event)\"\n [disabled]=\"busy() || dialogOpen() || taxonomyLoading()\" />\n </mat-form-field>\n <mat-form-field appearance=\"outline\">\n <mat-label>{{ t.gettext('Add tag') }}</mat-label>\n <mat-select\n [value]=\"null\"\n [disabled]=\"\n busy() || dialogOpen() || taxonomyLoading() || !!taxonomyError()\n \"\n (selectionChange)=\"addTag($event.value)\">\n @for (tag of filteredTags(); track tag.id) {\n <mat-option [value]=\"tag.id\">{{ tag.name }}</mat-option>\n }\n </mat-select>\n </mat-form-field>\n <div class=\"buttons\">\n <button\n mat-button\n type=\"button\"\n [disabled]=\"busy() || dialogOpen() || taxonomyLoading()\"\n (click)=\"createTaxonomy('category')\">\n <mat-icon>add</mat-icon> {{ t.gettext('Add category') }}\n </button>\n <button\n mat-button\n type=\"button\"\n [disabled]=\"busy() || dialogOpen() || taxonomyLoading()\"\n (click)=\"createTaxonomy('tag')\">\n <mat-icon>add</mat-icon> {{ t.gettext('Add tag') }}\n </button>\n </div>\n </section>\n </mat-card>\n <mat-card class=\"post-setting-card\">\n <section\n class=\"related-posts\"\n aria-labelledby=\"related-posts-heading\">\n <h2 id=\"related-posts-heading\">{{ t.gettext('Related posts') }}</h2>\n @if (relatedPostsLoading()) {\n <p role=\"status\">{{ t.gettext('Loading related posts...') }}</p>\n } @else if (relatedPostsError()) {\n <p\n class=\"error\"\n role=\"alert\">\n {{ relatedPostsError() }}\n </p>\n <button\n mat-button\n type=\"button\"\n [disabled]=\"busy() || dialogOpen()\"\n (click)=\"loadRelatedPosts()\">\n {{ t.gettext('Try again') }}\n </button>\n } @else {\n <ul>\n @for (post of relatedPosts(); track post.id) {\n <li>\n <span>#{{ post.id }} - {{ post.title }}</span>\n <button\n mat-icon-button\n type=\"button\"\n [attr.aria-label]=\"\n t.gettext('Remove related post [[ title ]]', {\n title: post.title,\n })\n \"\n [disabled]=\"busy() || dialogOpen()\"\n (click)=\"removeRelatedPost(post.id)\">\n <mat-icon>close</mat-icon>\n </button>\n </li>\n } @empty {\n <li>{{ t.gettext('No related posts yet.') }}</li>\n }\n </ul>\n <button\n mat-button\n type=\"button\"\n [disabled]=\"busy() || dialogOpen()\"\n (click)=\"addRelatedPost()\">\n <mat-icon>add</mat-icon> {{ t.gettext('Add related post') }}\n </button>\n @if (currentPost()) {\n <button\n mat-button\n type=\"button\"\n [disabled]=\"busy() || dialogOpen()\"\n (click)=\"addAsChildOf()\">\n <mat-icon>account_tree</mat-icon>\n {{ t.gettext('Add as child of') }}\n </button>\n }\n }\n </section>\n </mat-card>\n\n @if (!mediaAttachment()) {\n <mat-card class=\"post-setting-card\">\n <section\n class=\"application-hook\"\n aria-labelledby=\"application-hook-heading\">\n <h2 id=\"application-hook-heading\">\n {{ t.gettext('Hooks') }}\n </h2>\n @if (applicationHooksLoading()) {\n <p role=\"status\">{{ t.gettext('Loading application hooks...') }}</p>\n } @else if (applicationHooksError()) {\n <p\n class=\"error\"\n role=\"alert\">\n {{ applicationHooksError() }}\n </p>\n <button\n mat-button\n type=\"button\"\n [disabled]=\"busy() || dialogOpen()\"\n (click)=\"loadApplicationHooks()\">\n {{ t.gettext('Try again') }}\n </button>\n } @else {\n <mat-checkbox\n [checked]=\"useAsApplicationHook()\"\n [disabled]=\"busy() || dialogOpen()\"\n (change)=\"setUseAsApplicationHook($event.checked)\">\n {{ t.gettext('Use as application hook') }}\n </mat-checkbox>\n @if (useAsApplicationHook()) {\n <mat-form-field\n appearance=\"outline\"\n subscriptSizing=\"dynamic\">\n <mat-label>{{ t.gettext('Application Hook') }}</mat-label>\n <mat-select\n [value]=\"selectedApplicationHook()\"\n [disabled]=\"busy() || dialogOpen()\"\n (selectionChange)=\"selectedApplicationHook.set($event.value)\">\n @for (\n applicationHook of applicationHooks();\n track applicationHook.id\n ) {\n <mat-option\n [value]=\"applicationHook.hook\"\n [disabled]=\"\n applicationHookInUseByAnotherPost(applicationHook)\n \">\n {{ applicationHookLabel(applicationHook.hook) }}\n @if (applicationHookInUseByAnotherPost(applicationHook)) {\n {{\n t.gettext('(in use by post # [[ postId ]])', {\n postId: applicationHook.contentId,\n })\n }}\n }\n </mat-option>\n } @empty {\n <mat-option [disabled]=\"true\">{{\n t.gettext('No application hooks configured')\n }}</mat-option>\n }\n </mat-select>\n </mat-form-field>\n }\n }\n </section>\n </mat-card>\n }\n <mat-card class=\"post-setting-card\">\n <section\n class=\"post-permissions\"\n aria-labelledby=\"post-permissions-heading\">\n <h2 id=\"post-permissions-heading\">{{ t.gettext('Permissions') }}</h2>\n @if (permissionSource(); as source) {\n <p role=\"note\">\n {{\n t.gettext(\n 'Permissions are inherited from # [[ postId ]] - [[ title ]]. Edit the source post to change them.',\n { postId: source.id, title: source.title }\n )\n }}\n </p>\n }\n @if (permissionsLoading()) {\n <p role=\"status\">{{ t.gettext('Loading assigned permissions...') }}</p>\n } @else if (permissionsError()) {\n <p\n class=\"error\"\n role=\"alert\">\n {{ permissionsError() }}\n </p>\n <button\n mat-button\n type=\"button\"\n [disabled]=\"busy() || dialogOpen()\"\n (click)=\"loadPermissions()\">\n {{ t.gettext('Try again') }}\n </button>\n } @else {\n <ul>\n @for (permission of permissions(); track permission.id) {\n <li>\n <span>{{ permission.name }} ({{ permission.code }})</span>\n <button\n mat-icon-button\n type=\"button\"\n [attr.aria-label]=\"\n t.gettext('Remove permission [[ name ]]', {\n name: permission.name,\n })\n \"\n [disabled]=\"busy() || dialogOpen() || !!permissionSource()\"\n (click)=\"removePermission(permission.id)\">\n <mat-icon>close</mat-icon>\n </button>\n </li>\n } @empty {\n <li>{{ t.gettext('No permissions assigned.') }}</li>\n }\n </ul>\n @if (permissionOptionsError()) {\n <p\n class=\"error\"\n role=\"alert\">\n {{ permissionOptionsError() }}\n </p>\n <button\n mat-button\n type=\"button\"\n [disabled]=\"busy() || dialogOpen() || permissionOptionsLoading()\"\n (click)=\"loadPermissionOptions()\">\n {{ t.gettext('Try again') }}\n </button>\n } @else {\n <div class=\"permission-assignment\">\n <mat-form-field\n class=\"w-full\"\n appearance=\"outline\"\n subscriptSizing=\"dynamic\">\n <mat-label>{{ t.gettext('Permission') }}</mat-label>\n <mat-select\n [value]=\"selectedPermissionId()\"\n [disabled]=\"\n busy() ||\n dialogOpen() ||\n permissionOptionsLoading() ||\n !!permissionSource()\n \"\n (selectionChange)=\"selectedPermissionId.set($event.value)\">\n @for (\n permission of availablePermissions();\n track permission.id\n ) {\n <mat-option [value]=\"permission.id\"\n >{{ permission.name }} ({{ permission.code }})</mat-option\n >\n } @empty {\n <mat-option [disabled]=\"true\">{{\n t.gettext('No permissions available')\n }}</mat-option>\n }\n </mat-select>\n </mat-form-field>\n <button\n mat-button\n type=\"button\"\n [disabled]=\"\n busy() ||\n dialogOpen() ||\n !selectedPermissionId() ||\n !!permissionSource()\n \"\n (click)=\"addPermission()\">\n <mat-icon>add</mat-icon> {{ t.gettext('Assign permission') }}\n </button>\n </div>\n }\n }\n @if (!permissionSource()) {\n <mat-checkbox\n [checked]=\"applyPermissionsToRelatedPosts()\"\n [disabled]=\"busy() || dialogOpen()\"\n (change)=\"applyPermissionsToRelatedPosts.set($event.checked)\">\n {{ t.gettext('Apply permissions to related posts') }}\n </mat-checkbox>\n }\n </section>\n </mat-card>\n </div>\n </mat-tab>\n </mat-tab-group>\n } @else if (currentPost(); as post) {\n @if (thumbnailPreviewUrl()) {\n <img\n class=\"thumbnail-preview\"\n [src]=\"thumbnailPreviewUrl()\"\n [alt]=\"t.gettext('Post thumbnail')\" />\n }\n @if (thumbnailError()) {\n <p role=\"alert\">{{ thumbnailError() }}</p>\n }\n <h1 class=\"post-title\">{{ post.title }}</h1>\n @if (post.excerpt) {\n <p class=\"post-excerpt\">{{ post.excerpt }}</p>\n }\n <div\n class=\"post-body\"\n [innerHTML]=\"resolvedBody()\"></div>\n @if (mediaAttachment(); as media) {\n @if (draft()[media.key]; as key) {\n @if (mediaPreviewLoading()) {\n <p role=\"status\">{{ t.gettext('Loading media...') }}</p>\n } @else if (mediaPreviewError()) {\n <p\n class=\"error\"\n role=\"alert\">\n {{ mediaPreviewError() }}\n </p>\n } @else if (media.type === 'video' && mediaPreviewUrl()) {\n <video\n controls\n preload=\"none\"\n [poster]=\"thumbnailPreviewUrl() || null\"\n [src]=\"mediaPreviewUrl()\">\n {{ t.gettext('Your browser does not support video playback.') }}\n </video>\n } @else if (media.type === 'audio' && mediaPreviewUrl()) {\n <audio\n controls\n preload=\"none\"\n [poster]=\"thumbnailPreviewUrl() || null\"\n [src]=\"mediaPreviewUrl()\">\n {{ t.gettext('Your browser does not support audio playback.') }}\n </audio>\n } @else if (media.type === 'attachment' && mediaPreviewUrl()) {\n <p>\n {{\n t.gettext('Attached file: [[ fileName ]]', {\n fileName: mediaFileName(key),\n })\n }}\n <a\n [href]=\"mediaPreviewUrl()\"\n target=\"_blank\"\n rel=\"noopener\"\n >{{ t.gettext('Download or open') }}</a\n >\n </p>\n }\n }\n }\n } @else {\n <p role=\"status\">{{ t.gettext('No post is loaded.') }}</p>\n }\n</article>\n","//#region imports\nimport { Routes } from '@angular/router';\nimport { adminLazyRoute } from '@taon-dev/ui/browser-prod';\n//#endregion\n\nexport const TaonCmsPostRoutes: Routes = [\n {\n path: '',\n loadComponent: () =>\n import('./taon-cms-post.component').then(m => m.TaonCmsPostComponent),\n\n children: [\n // adminLazyRoute({\n // path: 'dashboard',\n // menuItem: 'Dashboard',\n // icon: 'dashboard',\n // expandable: false,\n // loader: () =>\n // import('./anothermodule.routes').then(m => m.DashboardRoutes),\n // }),\n ],\n },\n];\n\n/**\n * By default exporting TaonCmsPostRoutes,\n * the command `taon generate:app:routes`\n * will automatically add them to the root routes in ./src/app.ts.\n */\n// export default TaonCmsPostRoutes;","import { AsyncPipe } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n DestroyRef,\n TemplateRef,\n inject,\n} from '@angular/core';\nimport { MatButtonModule } from '@angular/material/button';\nimport { ActivatedRoute, Router } from '@angular/router';\nimport { combineLatest, map } from 'rxjs';\nimport { Translation } from '@taon-dev/i18n/browser-prod';\nimport { TaonAdminContentFooterService } from '@taon-dev/ui/browser-prod';\nimport { Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\n\nimport type { TaonCmsContentEntity } from '../../taon-cms-content/taon-cms-content.entity';\nimport { TaonCmsPostComponent } from '../taon-cms-post/taon-cms-post.component';\n\nconst t = Translation.for('src/lib/taon-posts/taon-cms-post-details-page/taon-cms-post-details-page.component.ts', {\"src/lib/taon-posts/taon-cms-post-details-page/taon-cms-post-details-page.component.ts\":{\"en-US\":async () => (await import('./i18n/taon-cms-post-details-page.component.ts.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-post-details-page.component.ts.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-post-details-page.component.ts.de-DE.i18n.data')).default}} as any);\n\n@Component({\n selector: 'taon-cms-post-details-page',\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [AsyncPipe, MatButtonModule, TaonCmsPostComponent],\n template: `\n @if (page$ | async; as page) {\n <a\n mat-button\n (click)=\"goBack(page.fromCourses)\"\n >{{\n page.fromCourses\n ? t.gettext('Back to Courses')\n : t.gettext('Back to Posts')\n }}</a\n >\n <taon-cms-post\n [post]=\"page.post\"\n [mode]=\"page.create ? 'add' : 'view'\"\n (changed)=\"onChanged($event, page.create)\"\n (duplicated)=\"openPost($event)\"\n (cancelled)=\"onCancelled(page.create)\"\n (actionButtonsTemplate)=\"setFooterTemplate($event)\" />\n }\n `,\n})\nexport class TaonCmsPostDetailsPageComponent {\n readonly t = t.for(this);\n\n private readonly route = inject(ActivatedRoute);\n\n private readonly router = inject(Router);\n\n private readonly contentFooterService = inject(\n TaonAdminContentFooterService,\n );\n\n private readonly destroyRef = inject(DestroyRef);\n\n readonly page$ = combineLatest([\n this.route.data,\n this.route.queryParamMap,\n ]).pipe(\n map(([data, queryParams]) => ({\n create: data['createPost'] === true,\n post: (data['post'] as TaonCmsContentEntity | undefined) ?? null,\n fromCourses: queryParams.get('postOrigin') === 'courses',\n })),\n );\n\n constructor() {\n this.destroyRef.onDestroy(() => this.contentFooterService.setTemplate());\n }\n\n setFooterTemplate(template: TemplateRef<unknown>): void {\n this.contentFooterService.setTemplate(template);\n }\n\n goBack(fromCourses: boolean): void {\n void this.router\n .navigate([fromCourses ? '../../courses' : '../'], {\n relativeTo: this.route,\n queryParams: { postOrigin: null },\n queryParamsHandling: 'merge',\n })\n .catch(error => {\n console.error('[taon-cms-post-details-page] Unable to navigate back', error);\n });\n }\n\n onChanged(post: TaonCmsContentEntity, create: boolean): void {\n if (create) {\n this.openPost(post);\n }\n }\n\n openPost(post: TaonCmsContentEntity): void {\n void this.router\n .navigate(['../', post.id], {\n relativeTo: this.route,\n queryParamsHandling: 'preserve',\n })\n .catch(error => {\n console.error('[taon-cms-post-details-page] Unable to open post', error);\n });\n }\n\n onCancelled(create: boolean): void {\n if (create) {\n void this.router\n .navigate(['../'], {\n relativeTo: this.route,\n queryParamsHandling: 'preserve',\n })\n .catch(error => {\n console.error(\n '[taon-cms-post-details-page] Unable to cancel post creation',\n error,\n );\n });\n }\n }\n}","//#region imports\nimport {\n ChangeDetectionStrategy,\n Component,\n ViewChild,\n signal,\n} from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { MatInputModule } from '@angular/material/input';\nimport { MatSelectModule } from '@angular/material/select';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MtxGridColumn } from '@ng-matero/extensions/grid';\nimport { TaonDatatableComponent } from '@taon-dev/ui/browser-prod';\nimport { Translation } from '@taon-dev/i18n/browser-prod';\nimport { Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\n\nimport { TaonCmsContentApiService } from '../../taon-cms-content/taon-cms-content-api.service';\nimport type { TaonCmsContentEntity } from '../../taon-cms-content/taon-cms-content.entity';\nimport { TaonCmsPostTableActions } from './taon-cms-post-table-actions.directive';\n//#endregion\n\nconst t = Translation.for('src/lib/taon-posts/taon-cms-posts-backoffice/taon-cms-posts-backoffice.component.ts', {\"src/lib/taon-posts/taon-cms-posts-backoffice/taon-cms-post-table-actions.directive.ts\":{\"en-US\":async () => (await import('./i18n/taon-cms-post-table-actions.directive.ts.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-post-table-actions.directive.ts.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-post-table-actions.directive.ts.de-DE.i18n.data')).default},\"src/lib/taon-posts/taon-cms-posts-backoffice/taon-cms-posts-backoffice.component.html\":{\"en-US\":async () => (await import('./i18n/taon-cms-posts-backoffice.component.html.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-posts-backoffice.component.html.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-posts-backoffice.component.html.de-DE.i18n.data')).default},\"src/lib/taon-posts/taon-cms-posts-backoffice/taon-cms-posts-backoffice.component.ts\":{\"en-US\":async () => (await import('./i18n/taon-cms-posts-backoffice.component.ts.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-posts-backoffice.component.ts.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-posts-backoffice.component.ts.de-DE.i18n.data')).default},\"src/lib/taon-posts/taon-cms-posts-backoffice/taon-cms-posts-backoffice.routes.ts\":{\"en-US\":async () => (await import('./i18n/taon-cms-posts-backoffice.routes.ts.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-posts-backoffice.routes.ts.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-posts-backoffice.routes.ts.de-DE.i18n.data')).default}} as any);\n\n@Component({\n selector: 'app-taon-cms-posts-backoffice',\n templateUrl: './taon-cms-posts-backoffice.component.html',\n styleUrls: ['./taon-cms-posts-backoffice.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [\n FormsModule,\n MatButtonModule,\n MatFormFieldModule,\n MatInputModule,\n MatSelectModule,\n TaonDatatableComponent,\n ],\n providers: [TaonCmsContentApiService],\n})\nexport class TaonCmsPostsBackofficeComponent extends TaonCmsPostTableActions {\n readonly t = t.for(this);\n\n @ViewChild(TaonDatatableComponent)\n readonly datatable!: TaonDatatableComponent;\n\n readonly posts = signal<TaonCmsContentEntity[]>([]);\n\n readonly loading = signal(false);\n\n public get crud() {\n return this.taonCmsContentApiService.crudController;\n }\n\n readonly columns: MtxGridColumn[] = [\n { header: 'ID', field: 'id', sortable: true },\n { header: this.t.gettext('Title'), field: 'title', sortable: true },\n { header: this.t.gettext('Slug'), field: 'slug', sortable: true },\n { header: this.t.gettext('Status'), field: 'status', sortable: true },\n this.actionsColumn,\n ];\n\n reload(): void {\n this.datatable.reload();\n }\n\n ngAfterViewInit(): void {\n this.reload();\n }\n}","<h1>{{ t.gettext('CMS posts') }}</h1>\n@if (loading()) {\n <p role=\"status\">{{ t.gettext('Loading posts...') }}</p>\n}\n@if (error()) {\n <p role=\"alert\">{{ error() }}</p>\n}\n<taon-datatable\n [entityCrudController]=\"crud\"\n [columns]=\"columns\"\n [allowedColumns]=\"['id', 'title', 'slug', 'status']\"\n tableId=\"cms-posts\"\n storeTableFilters=\"query-params\"\n [filtersTemplate]=\"filtersTemplate\"\n searchMode=\"advanced\"\n (addingItem)=\"add()\">\n</taon-datatable>\n<ng-template\n #filtersTemplate\n let-filters=\"filters\">\n <mat-form-field appearance=\"outline\">\n <mat-label>{{ t.gettext('ID') }}</mat-label>\n <input\n matInput\n [(ngModel)]=\"filters.id\"\n (keyup.enter)=\"datatable.applyAdvancedFilters()\" />\n </mat-form-field>\n <mat-form-field appearance=\"outline\">\n <mat-label>{{ t.gettext('Title') }}</mat-label>\n <input\n matInput\n [(ngModel)]=\"filters.title\"\n (keyup.enter)=\"datatable.applyAdvancedFilters()\" />\n </mat-form-field>\n <mat-form-field appearance=\"outline\">\n <mat-label>{{ t.gettext('Slug') }}</mat-label>\n <input\n matInput\n [(ngModel)]=\"filters.slug\"\n (keyup.enter)=\"datatable.applyAdvancedFilters()\" />\n </mat-form-field>\n <mat-form-field appearance=\"outline\">\n <mat-label>{{ t.gettext('Status') }}</mat-label>\n <mat-select [(ngModel)]=\"filters.status\">\n <mat-option value=\"published\">{{ t.gettext('Published') }}</mat-option>\n <mat-option value=\"draft\">{{ t.gettext('Draft') }}</mat-option>\n <mat-option value=\"archived\">{{ t.gettext('Archived') }}</mat-option>\n </mat-select>\n </mat-form-field>\n</ng-template>\n","//namespace TaonCmsPostsBackofficeModels\n\n//end of namespace TaonCmsPostsBackofficeModels\n","//#region imports\nimport { inject } from '@angular/core';\nimport { Routes } from '@angular/router';\nimport { ResolveFn } from '@angular/router';\nimport { Translation } from '@taon-dev/i18n/browser-prod';\nimport { Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\n\nimport { TaonCmsContentApiService } from '../../taon-cms-content/taon-cms-content-api.service';\nimport type { TaonCmsContentEntity } from '../../taon-cms-content/taon-cms-content.entity';\n//#endregion\n\nconst t = Translation.for('src/lib/taon-posts/taon-cms-posts-backoffice/taon-cms-posts-backoffice.routes.ts', {\"src/lib/taon-posts/taon-cms-posts-backoffice/taon-cms-post-table-actions.directive.ts\":{\"en-US\":async () => (await import('./i18n/taon-cms-post-table-actions.directive.ts.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-post-table-actions.directive.ts.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-post-table-actions.directive.ts.de-DE.i18n.data')).default},\"src/lib/taon-posts/taon-cms-posts-backoffice/taon-cms-posts-backoffice.component.html\":{\"en-US\":async () => (await import('./i18n/taon-cms-posts-backoffice.component.html.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-posts-backoffice.component.html.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-posts-backoffice.component.html.de-DE.i18n.data')).default},\"src/lib/taon-posts/taon-cms-posts-backoffice/taon-cms-posts-backoffice.component.ts\":{\"en-US\":async () => (await import('./i18n/taon-cms-posts-backoffice.component.ts.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-posts-backoffice.component.ts.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-posts-backoffice.component.ts.de-DE.i18n.data')).default},\"src/lib/taon-posts/taon-cms-posts-backoffice/taon-cms-posts-backoffice.routes.ts\":{\"en-US\":async () => (await import('./i18n/taon-cms-posts-backoffice.routes.ts.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-posts-backoffice.routes.ts.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-posts-backoffice.routes.ts.de-DE.i18n.data')).default}} as any);\n\nconst resolvePost: ResolveFn<TaonCmsContentEntity> = async route => {\n const id = Number(route.paramMap.get('id'));\n if (!Number.isSafeInteger(id) || id <= 0) {\n throw new Error(t.gettext('Invalid Post ID'));\n }\n const taonCmsContentApiService = inject(TaonCmsContentApiService);\n const post = await taonCmsContentApiService.getById(id);\n if (!post) {\n throw new Error(t.gettext('Post not found'));\n }\n return post;\n};\n\nexport const TaonCmsPostsBackofficeRoutes: Routes = [\n {\n path: '',\n pathMatch: 'full',\n loadComponent: () =>\n import('./taon-cms-posts-backoffice.component').then(\n m => m.TaonCmsPostsBackofficeComponent,\n ),\n },\n {\n path: 'new',\n data: { hideInNavigation: true, createPost: true },\n loadComponent: () =>\n import('../taon-cms-post-details-page/taon-cms-post-details-page.component').then(\n m => m.TaonCmsPostDetailsPageComponent,\n ),\n },\n {\n path: ':id',\n data: { hideInNavigation: true },\n providers: [TaonCmsContentApiService],\n resolve: { post: resolvePost },\n loadComponent: () =>\n import('../taon-cms-post-details-page/taon-cms-post-details-page.component').then(\n m => m.TaonCmsPostDetailsPageComponent,\n ),\n },\n];\n\n/**\n * By default exporting TaonCmsPostsBackofficeRoutes,\n * the command `taon generate:app:routes`\n * will automatically add them to the root routes in ./src/app.ts.\n */\n// export default TaonCmsPostsBackofficeRoutes;","// @ts-nocheck\n// This file is auto-generated during init process. Do not modify.\n// This disable this auto generate file.\n// set property \"shouldGenerateAutogenIndexFile: false\" \n// in taon.jsonc of your project. \nexport * from './build-info._auto-generated_'; \nexport * from './start-cli'; \nexport * from './taon-cms-application-hooks'; \nexport * from './taon-cms.abstract.context'; \nexport * from './taon-cms-application-hook/taon-cms-application-hook.entity'; \nexport * from './taon-cms-assets-backoffice/taon-cms-asset-preview.component'; // @browser\nexport * from './taon-cms-assets-backoffice/taon-cms-assets-backoffice.component'; // @browser\nexport * from './taon-cms-assets-backoffice/taon-cms-assets-backoffice.routes'; // @browser\nexport * from './taon-cms-backoffice/taon-cms-backoffice.component'; // @browser\nexport * from './taon-cms-backoffice/taon-cms-backoffice.models'; \nexport * from './taon-cms-backoffice/taon-cms-backoffice.routes'; // @browser\nexport * from './taon-cms-category/taon-cms-category-api.service'; // @browser\nexport * from './taon-cms-category/taon-cms-category.abstract.context'; \nexport * from './taon-cms-category/taon-cms-category.constants'; \nexport * from './taon-cms-category/taon-cms-category.controller'; \nexport * from './taon-cms-category/taon-cms-category.entity'; \nexport * from './taon-cms-category/taon-cms-category.middleware'; \nexport * from './taon-cms-category/taon-cms-category.models'; \nexport * from './taon-cms-category/taon-cms-category.provider'; \nexport * from './taon-cms-category/taon-cms-category.repository'; \nexport * from './taon-cms-category/taon-cms-category.subscriber'; \nexport * from './taon-cms-category/taon-cms-category.utils'; \nexport * from './taon-cms-category/taon-cms-taxonomy.validation'; \nexport * from './taon-cms-comment/taon-cms-comment-api.service'; // @browser\nexport * from './taon-cms-comment/taon-cms-comment.abstract.context'; \nexport * from './taon-cms-comment/taon-cms-comment.constants'; \nexport * from './taon-cms-comment/taon-cms-comment.controller'; \nexport * from './taon-cms-comment/taon-cms-comment.entity'; \nexport * from './taon-cms-comment/taon-cms-comment.middleware'; \nexport * from './taon-cms-comment/taon-cms-comment.models'; \nexport * from './taon-cms-comment/taon-cms-comment.provider'; \nexport * from './taon-cms-comment/taon-cms-comment.repository'; \nexport * from './taon-cms-comment/taon-cms-comment.subscriber'; \nexport * from './taon-cms-comment/taon-cms-comment.utils'; \nexport * from './taon-cms-content/taon-cms-content-api.service'; // @browser\nexport * from './taon-cms-content/taon-cms-content-storage.controller'; \nexport * from './taon-cms-content/taon-cms-content.abstract.context'; \nexport * from './taon-cms-content/taon-cms-content.config.service'; // @browser\nexport * from './taon-cms-content/taon-cms-content.constants'; \nexport * from './taon-cms-content/taon-cms-content.controller'; \nexport * from './taon-cms-content/taon-cms-content.entity'; \nexport * from './taon-cms-content/taon-cms-content.middleware'; \nexport * from './taon-cms-content/taon-cms-content.models'; \nexport * from './taon-cms-content/taon-cms-content.provider'; \nexport * from './taon-cms-content/taon-cms-content.repository'; \nexport * from './taon-cms-content/taon-cms-content.subscriber'; \nexport * from './taon-cms-content/taon-cms-content.utils'; \nexport * from './taon-cms-content/taon-cms-content.validation'; \nexport * from './taon-cms-content/taon-cms-template-variables'; \nexport * from './taon-cms-content/taon-cms-upload-progress'; \nexport * from './taon-cms-content-asset/taon-cms-content-asset-api.service'; // @browser\nexport * from './taon-cms-content-asset/taon-cms-content-asset.abstract.context'; \nexport * from './taon-cms-content-asset/taon-cms-content-asset.constants'; \nexport * from './taon-cms-content-asset/taon-cms-content-asset.controller'; \nexport * from './taon-cms-content-asset/taon-cms-content-asset.entity'; \nexport * from './taon-cms-content-asset/taon-cms-content-asset.middleware'; \nexport * from './taon-cms-content-asset/taon-cms-content-asset.models'; \nexport * from './taon-cms-content-asset/taon-cms-content-asset.provider'; \nexport * from './taon-cms-content-asset/taon-cms-content-asset.repository'; \nexport * from './taon-cms-content-asset/taon-cms-content-asset.subscriber'; \nexport * from './taon-cms-content-asset/taon-cms-content-asset.utils'; \nexport * from './taon-cms-content-permission/taon-cms-content-permission-api.service'; // @browser\nexport * from './taon-cms-content-permission/taon-cms-content-permission.abstract.context'; \nexport * from './taon-cms-content-permission/taon-cms-content-permission.constants'; \nexport * from './taon-cms-content-permission/taon-cms-content-permission.controller'; \nexport * from './taon-cms-content-permission/taon-cms-content-permission.entity'; \nexport * from './taon-cms-content-permission/taon-cms-content-permission.middleware'; \nexport * from './taon-cms-content-permission/taon-cms-content-permission.models'; \nexport * from './taon-cms-content-permission/taon-cms-content-permission.provider'; \nexport * from './taon-cms-content-permission/taon-cms-content-permission.repository'; \nexport * from './taon-cms-content-permission/taon-cms-content-permission.subscriber'; \nexport * from './taon-cms-content-permission/taon-cms-content-permission.utils'; \nexport * from './taon-cms-content-revision/taon-cms-content-revision-api.service'; // @browser\nexport * from './taon-cms-content-revision/taon-cms-content-revision.abstract.context'; \nexport * from './taon-cms-content-revision/taon-cms-content-revision.constants'; \nexport * from './taon-cms-content-revision/taon-cms-content-revision.controller'; \nexport * from './taon-cms-content-revision/taon-cms-content-revision.entity'; \nexport * from './taon-cms-content-revision/taon-cms-content-revision.middleware'; \nexport * from './taon-cms-content-revision/taon-cms-content-revision.models'; \nexport * from './taon-cms-content-revision/taon-cms-content-revision.provider'; \nexport * from './taon-cms-content-revision/taon-cms-content-revision.repository'; \nexport * from './taon-cms-content-revision/taon-cms-content-revision.subscriber'; \nexport * from './taon-cms-content-revision/taon-cms-content-revision.utils'; \nexport * from './taon-cms-content-tag/taon-cms-content-tag-api.service'; // @browser\nexport * from './taon-cms-content-tag/taon-cms-content-tag.abstract.context'; \nexport * from './taon-cms-content-tag/taon-cms-content-tag.constants'; \nexport * from './taon-cms-content-tag/taon-cms-content-tag.controller'; \nexport * from './taon-cms-content-tag/taon-cms-content-tag.entity'; \nexport * from './taon-cms-content-tag/taon-cms-content-tag.middleware'; \nexport * from './taon-cms-content-tag/taon-cms-content-tag.models'; \nexport * from './taon-cms-content-tag/taon-cms-content-tag.provider'; \nexport * from './taon-cms-content-tag/taon-cms-content-tag.repository'; \nexport * from './taon-cms-content-tag/taon-cms-content-tag.subscriber'; \nexport * from './taon-cms-content-tag/taon-cms-content-tag.utils'; \nexport * from './taon-cms-tag/taon-cms-tag-api.service'; // @browser\nexport * from './taon-cms-tag/taon-cms-tag.abstract.context'; \nexport * from './taon-cms-tag/taon-cms-tag.constants'; \nexport * from './taon-cms-tag/taon-cms-tag.controller'; \nexport * from './taon-cms-tag/taon-cms-tag.entity'; \nexport * from './taon-cms-tag/taon-cms-tag.middleware'; \nexport * from './taon-cms-tag/taon-cms-tag.models'; \nexport * from './taon-cms-tag/taon-cms-tag.provider'; \nexport * from './taon-cms-tag/taon-cms-tag.repository'; \nexport * from './taon-cms-tag/taon-cms-tag.subscriber'; \nexport * from './taon-cms-tag/taon-cms-tag.utils'; \nexport * from './taon-cms-taxonomy-backoffice/taon-cms-taxonomy-backoffice.component'; // @browser\nexport * from './taon-cms-taxonomy-backoffice/taon-cms-taxonomy-backoffice.routes'; // @browser\nexport * from './taon-cms-taxonomy-backoffice/taon-cms-taxonomy-quick-create-dialog.component'; // @browser\nexport * from './taon-posts/taon-cms-course-backoffice/taon-cms-course-backoffice.component'; // @browser\nexport * from './taon-posts/taon-cms-course-backoffice/taon-cms-course-backoffice.models'; \nexport * from './taon-posts/taon-cms-course-backoffice/taon-cms-course-backoffice.routes'; // @browser\nexport * from './taon-posts/taon-cms-course-backoffice/taon-cms-course-contents.component'; // @browser\nexport * from './taon-posts/taon-cms-course-backoffice/taon-cms-course-cover.component'; // @browser\nexport * from './taon-posts/taon-cms-post/taon-cms-editable.directive'; // @browser\nexport * from './taon-posts/taon-cms-post/taon-cms-post.component'; // @browser\nexport * from './taon-posts/taon-cms-post/taon-cms-post.models'; \nexport * from './taon-posts/taon-cms-post/taon-cms-post.routes'; // @browser\nexport * from './taon-posts/taon-cms-post/taon-cms-thumbnail'; \nexport * from './taon-posts/taon-cms-post-details-page/taon-cms-post-details-page.component'; // @browser\nexport * from './taon-posts/taon-cms-posts-backoffice/taon-cms-post-table-actions.directive'; // @browser\nexport * from './taon-posts/taon-cms-posts-backoffice/taon-cms-posts-backoffice.component'; // @browser\nexport * from './taon-posts/taon-cms-posts-backoffice/taon-cms-posts-backoffice.models'; \nexport * from './taon-posts/taon-cms-posts-backoffice/taon-cms-posts-backoffice.routes'; // @browser\nexport * from './taon-posts/taon-cms-revision-chooser/taon-cms-revision-chooser.component'; // @browser\nexport * from './taon-posts/taon-related-post-chooser/taon-related-post-chooser.component'; // @browser","export * from './migrations';\n/* */\nexport * from './index._auto-generated_';\nexport * from './taon-cms-application-hooks';\n/* */ \nexport default {};\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["t","map","adminLazyRouteBase","i1","i4","i2","i3","i6","i5","i12","i13"],"mappings":"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"}
1
+ {"version":3,"file":"cms-browser-prod.mjs","sources":["../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content/taon-cms-content.models.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content/taon-cms-content.entity.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-application-hook/taon-cms-application-hook.entity.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-application-hooks.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/migrations/1792506757808_applicaitonHooks.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/migrations/1793664000000_postVersionLinks.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/migrations/migrations_index._auto-generated_.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/migrations/index.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/build-info._auto-generated_.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/start-cli.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.kv.repository.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.controller.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.provider.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.abstract.context.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-category/taon-cms-category.entity.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-category/taon-cms-category.repository.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-category/taon-cms-category.controller.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-category/taon-cms-category.provider.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-category/taon-cms-category.middleware.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-category/taon-cms-category.subscriber.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-category/taon-cms-category.abstract.context.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-comment/taon-cms-comment.entity.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content-revision/taon-cms-content-revision.entity.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content-revision/taon-cms-content-revision.repository.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content-tag/taon-cms-content-tag.entity.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content-tag/taon-cms-content-tag.repository.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-tag/taon-cms-tag.entity.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-tag/taon-cms-tag.repository.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content/taon-cms-content.validation.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content/taon-cms-content.repository.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-comment/taon-cms-comment.controller.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-comment/taon-cms-comment.repository.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-comment/taon-cms-comment.provider.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-comment/taon-cms-comment.middleware.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-comment/taon-cms-comment.subscriber.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-comment/taon-cms-comment-vote.entity.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-comment/taon-cms-comment-spam-report.entity.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-comment/taon-cms-comment-blocked-user.entity.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-comment/taon-cms-comment-blocked-phrase.entity.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-comment/taon-cms-comment.abstract.context.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content-revision/taon-cms-content-revision.controller.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content-revision/taon-cms-content-revision.provider.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content-revision/taon-cms-content-revision.middleware.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content-revision/taon-cms-content-revision.subscriber.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content-revision/taon-cms-content-revision.abstract.context.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content-tag/taon-cms-content-tag.controller.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content-tag/taon-cms-content-tag.provider.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content-tag/taon-cms-content-tag.middleware.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content-tag/taon-cms-content-tag.subscriber.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content-tag/taon-cms-content-tag.abstract.context.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-tag/taon-cms-tag.controller.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-tag/taon-cms-tag.provider.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-tag/taon-cms-tag.middleware.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-tag/taon-cms-tag.subscriber.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-tag/taon-cms-tag.abstract.context.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content/taon-cms-content-storage.controller.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content/taon-cms-content.controller.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content/taon-cms-content.middleware.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content/taon-cms-content.provider.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content/taon-cms-content.subscriber.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content/taon-cms-content.abstract.context.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content-asset/taon-cms-content-asset.entity.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content-asset/taon-cms-content-asset.repository.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content-asset/taon-cms-content-asset.controller.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content-asset/taon-cms-content-asset.provider.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content-asset/taon-cms-content-asset.middleware.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content-asset/taon-cms-content-asset.subscriber.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content-asset/taon-cms-content-asset.abstract.context.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content-permission/taon-cms-content-permission.entity.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content-permission/taon-cms-content-permission.repository.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content-permission/taon-cms-content-permission.controller.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content-permission/taon-cms-content-permission.provider.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content-permission/taon-cms-content-permission.middleware.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content-permission/taon-cms-content-permission.subscriber.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content-permission/taon-cms-content-permission.abstract.context.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms.abstract.context.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content/taon-cms-upload-progress.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content/taon-cms-content-api.service.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-assets-backoffice/taon-cms-asset-preview.component.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-assets-backoffice/taon-cms-asset-preview.component.html","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-assets-backoffice/taon-cms-assets-backoffice.component.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-assets-backoffice/taon-cms-assets-backoffice.component.html","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-assets-backoffice/taon-cms-assets-backoffice.routes.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-backoffice/taon-cms-backoffice.component.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-backoffice/taon-cms-backoffice.component.html","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-backoffice/taon-cms-backoffice.models.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-backoffice/taon-cms-backoffice.routes.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-category/taon-cms-category-api.service.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-category/taon-cms-category.constants.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-category/taon-cms-category.models.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-category/taon-cms-category.utils.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-category/taon-cms-taxonomy.validation.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-comment/taon-cms-comment-api.service.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-comment/taon-cms-comment.constants.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-comment/taon-cms-comment.models.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-comment/taon-cms-comment.utils.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-comment/taon-cms-comments.component.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-comment/taon-cms-comments.component.html","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content/taon-cms-content.config.service.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content/taon-cms-content.constants.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content/taon-cms-content.utils.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content/taon-cms-template-variables.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content-asset/taon-cms-content-asset-api.service.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content-asset/taon-cms-content-asset.constants.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content-asset/taon-cms-content-asset.models.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content-asset/taon-cms-content-asset.utils.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content-permission/taon-cms-content-permission-api.service.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content-permission/taon-cms-content-permission.constants.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content-permission/taon-cms-content-permission.models.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content-permission/taon-cms-content-permission.utils.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content-revision/taon-cms-content-revision-api.service.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content-revision/taon-cms-content-revision.constants.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content-revision/taon-cms-content-revision.models.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content-revision/taon-cms-content-revision.utils.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content-tag/taon-cms-content-tag-api.service.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content-tag/taon-cms-content-tag.constants.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content-tag/taon-cms-content-tag.models.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-content-tag/taon-cms-content-tag.utils.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-tag/taon-cms-tag-api.service.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-tag/taon-cms-tag.constants.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-tag/taon-cms-tag.models.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-tag/taon-cms-tag.utils.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-taxonomy-backoffice/taon-cms-taxonomy-backoffice.component.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-taxonomy-backoffice/taon-cms-taxonomy-backoffice.component.html","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-taxonomy-backoffice/taon-cms-taxonomy-backoffice.routes.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-taxonomy-backoffice/taon-cms-taxonomy-quick-create-dialog.component.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.api.service.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.utils.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-features.component.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-features.component.html","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-features.models.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-features.routes.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-backoffice.component.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-backoffice.component.html","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-backoffice.models.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-backoffice.routes.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-posts/taon-cms-post/taon-cms-post-choice-dialog.component.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-posts/taon-cms-post/taon-cms-post-choice-dialog.component.html","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-posts/taon-cms-posts-backoffice/taon-cms-post-table-actions.directive.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-posts/taon-cms-course-backoffice/taon-cms-course-contents.component.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-posts/taon-cms-course-backoffice/taon-cms-course-contents.component.html","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-posts/taon-cms-post/taon-cms-thumbnail.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-posts/taon-cms-course-backoffice/taon-cms-course-cover.component.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-posts/taon-cms-course-backoffice/taon-cms-course-cover.component.html","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-posts/taon-cms-course-backoffice/taon-cms-course-backoffice.component.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-posts/taon-cms-course-backoffice/taon-cms-course-backoffice.component.html","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-posts/taon-cms-course-backoffice/taon-cms-course-backoffice.models.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-posts/taon-cms-course-backoffice/taon-cms-course-backoffice.routes.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-posts/taon-cms-post/taon-cms-document-extractor.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-posts/taon-cms-post/taon-cms-editable.directive.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-posts/taon-cms-post/taon-cms-post-thumbnail.component.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-posts/taon-cms-revision-chooser/taon-cms-revision-chooser.component.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-posts/taon-cms-revision-chooser/taon-cms-revision-chooser.component.html","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-posts/taon-related-post-chooser/taon-related-post-chooser.component.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-posts/taon-related-post-chooser/taon-related-post-chooser.component.html","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-posts/taon-cms-post/taon-cms-post.component.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-posts/taon-cms-post/taon-cms-post.component.html","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-posts/taon-cms-post/taon-cms-post.routes.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-posts/taon-cms-post-details-page/taon-cms-post-details-page.component.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-posts/taon-cms-posts-backoffice/taon-cms-posts-backoffice.component.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-posts/taon-cms-posts-backoffice/taon-cms-posts-backoffice.component.html","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-posts/taon-cms-posts-backoffice/taon-cms-posts-backoffice.models.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-posts/taon-cms-posts-backoffice/taon-cms-posts-backoffice.routes.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.config.service.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.constants.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.models.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.validators.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/taon-cms-comments-all-preview-backoffice.component.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/taon-cms-comments-all-preview-backoffice.component.html","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/taon-cms-comments-all-preview-backoffice.models.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/taon-cms-comments-all-preview-backoffice.routes.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/taon-cms-comments-blocked-users.component.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/taon-cms-comments-blocked-users.component.html","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/taon-cms-comments-blocked-users.models.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/taon-cms-comments-blocked-users.routes.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/taon-cms-comments-filters-settings.component.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/taon-cms-comments-filters-settings.component.html","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/taon-cms-comments-filters-settings.models.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/taon-cms-comments-filters-settings.routes.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/index._auto-generated_.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/lib/index.ts","../../../tmp-libs-for-dist-prod/cms/projects/cms/src/cms-browser-prod.ts"],"sourcesContent":["import { TaonPermissionEntity } from '@taon-dev/session/browser-prod';\nimport type { TaonCmsContentEntity } from './taon-cms-content.entity';\n\nexport enum TaonCmsContentType {\n Normal = 'normal',\n Video = 'video',\n Audio = 'audio',\n Attachment = 'attachment',\n}\n\nexport enum TaonCmsContentState {\n Active = 'active',\n Inactive = 'inactive',\n}\n\nexport interface TaonCmsContentFields {\n type: TaonCmsContentType;\n title: string;\n slug: string;\n body: string | null;\n videoKey: string | null;\n audioKey: string | null;\n attachmentKey: string | null;\n thumbnailKey: string | null;\n excerpt: string | null;\n categoryId: number | null;\n authorUserId: number | null;\n status: 'draft' | 'published' | 'archived';\n publishedAt: Date | null;\n applyPermissionsToRelatedPosts: boolean;\n applyVisibilityToRelatedPosts: boolean;\n}\n\nexport interface TaonCmsPermissionConfiguration {\n permissions: TaonPermissionEntity[];\n source: { id: number; title: string } | null;\n}\n\nexport interface TaonCmsVisibilityConfiguration {\n status: TaonCmsContentFields['status'];\n source: { id: number; title: string } | null;\n}\n\nexport type TaonCmsPostVersionKind = 'public' | 'private';\n\nexport interface TaonCmsPostVersionLinks {\n publicVersionPost: TaonCmsContentEntity | null;\n privateVersionPost: TaonCmsContentEntity | null;\n}\n\nexport interface TaonCmsCreateContent\n extends\n Pick<TaonCmsContentFields, 'title' | 'slug'>,\n Partial<Omit<TaonCmsContentFields, 'title' | 'slug'>> {\n tagIds?: number[];\n relatedPostIds?: number[];\n permissionIds?: number[];\n applicationHook?: TaonCmsApplicationHook | null;\n}\n\nexport interface TaonCmsCreateRelatedChildInput {\n titlePrefix: string;\n expectedTitle: string;\n fileName: string;\n mimeType: string;\n sourceKey: string;\n type: TaonCmsContentType;\n body: string | null;\n videoKey: string | null;\n audioKey: string | null;\n attachmentKey: string | null;\n thumbnailKey: string;\n}\n\nexport interface TaonCmsCreateRelatedChildResult {\n child: TaonCmsContentEntity;\n parentVersion: number;\n}\n\nexport interface TaonCmsPublicVideoChild {\n slug: string;\n title: string;\n excerpt: string | null;\n videoUrl: string;\n posterUrl: string;\n}\n\nexport interface TaonCmsUpdateContent extends Partial<TaonCmsContentFields> {\n tagIds?: number[];\n relatedPostIds?: number[];\n permissionIds?: number[];\n applicationHook?: TaonCmsApplicationHook | null;\n expectedVersion: number;\n}\n\nexport interface TaonCmsRestoreContent {\n revisionNumber: number;\n expectedVersion: number;\n}\n\nexport interface TaonCmsContentSnapshot extends TaonCmsContentFields {\n tagIds: number[];\n relatedPostIds?: number[];\n relatedPostOrderSaved?: boolean;\n permissionIds: number[];\n}\nimport type { TaonCmsApplicationHook } from '../taon-cms-application-hooks';\n","//#region imports\nimport { Column, JoinTable, ManyToMany, OneToOne, CustomColumn, PrimaryGeneratedColumn, TaonBaseAbstractEntity, TaonBaseEntity, TaonEntity, Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\nimport { ___NS__add, ___NS__after, ___NS__ary, ___NS__assign, ___NS__assignIn, ___NS__assignInWith, ___NS__assignWith, ___NS__at, ___NS__attempt, ___NS__before, ___NS__bind, ___NS__bindAll, ___NS__bindKey, ___NS__camelCase, ___NS__capitalize, ___NS__castArray, ___NS__ceil, ___NS__chain, ___NS__chunk, ___NS__clamp, ___NS__clone, ___NS__cloneDeep, ___NS__cloneDeepWith, ___NS__cloneWith, ___NS__compact, ___NS__concat, ___NS__cond, ___NS__conforms, ___NS__conformsTo, ___NS__constant, ___NS__countBy, ___NS__create, ___NS__curry, ___NS__curryRight, ___NS__debounce, ___NS__deburr, ___NS__defaults, ___NS__defaultsDeep, ___NS__defaultTo, ___NS__defer, ___NS__delay, ___NS__difference, ___NS__differenceBy, ___NS__differenceWith, ___NS__divide, ___NS__drop, ___NS__dropRight, ___NS__dropRightWhile, ___NS__dropWhile, ___NS__each, ___NS__eachRight, ___NS__endsWith, ___NS__entries, ___NS__entriesIn, ___NS__eq, ___NS__escape, ___NS__escapeRegExp, ___NS__every, ___NS__extend, ___NS__extendWith, ___NS__fill, ___NS__filter, ___NS__find, ___NS__findIndex, ___NS__findKey, ___NS__findLast, ___NS__findLastIndex, ___NS__findLastKey, ___NS__first, ___NS__flatMap, ___NS__flatMapDeep, ___NS__flatMapDepth, ___NS__flatten, ___NS__flattenDeep, ___NS__flattenDepth, ___NS__flip, ___NS__floor, ___NS__flow, ___NS__flowRight, ___NS__forEach, ___NS__forEachRight, ___NS__forIn, ___NS__forInRight, ___NS__forOwn, ___NS__forOwnRight, ___NS__fromPairs, ___NS__functions, ___NS__functionsIn, ___NS__get, ___NS__groupBy, ___NS__gt, ___NS__gte, ___NS__has, ___NS__hasIn, ___NS__head, ___NS__identity, ___NS__includes, ___NS__indexOf, ___NS__initial, ___NS__inRange, ___NS__intersection, ___NS__intersectionBy, ___NS__intersectionWith, ___NS__invert, ___NS__invertBy, ___NS__invoke, ___NS__invokeMap, ___NS__isArguments, ___NS__isArray, ___NS__isArrayBuffer, ___NS__isArrayLike, ___NS__isArrayLikeObject, ___NS__isBoolean, ___NS__isBuffer, ___NS__isDate, ___NS__isElement, ___NS__isEmpty, ___NS__isEqual, ___NS__isEqualWith, ___NS__isError, ___NS__isFinite, ___NS__isFunction, ___NS__isInteger, ___NS__isLeafObject, ___NS__isLength, ___NS__isMap, ___NS__isMatch, ___NS__isMatchWith, ___NS__isNaN, ___NS__isNative, ___NS__isNil, ___NS__isNull, ___NS__isNumber, ___NS__isObject, ___NS__isObjectLike, ___NS__isPlainObject, ___NS__isRegExp, ___NS__isSafeInteger, ___NS__isSet, ___NS__isString, ___NS__isSymbol, ___NS__isTypedArray, ___NS__isUndefined, ___NS__isWeakMap, ___NS__isWeakSet, ___NS__iteratee, ___NS__join, ___NS__kebabCase, ___NS__keyBy, ___NS__keys, ___NS__keysIn, ___NS__last, ___NS__lastIndexOf, ___NS__lowerCase, ___NS__lowerFirst, ___NS__lt, ___NS__lte, ___NS__map, ___NS__mapKeys, ___NS__mapValues, ___NS__matches, ___NS__matchesProperty, ___NS__max, ___NS__maxBy, ___NS__mean, ___NS__meanBy, ___NS__memoize, ___NS__merge, ___NS__mergeWith, ___NS__method, ___NS__methodOf, ___NS__min, ___NS__minBy, ___NS__mixin, ___NS__multiply, ___NS__negate, ___NS__noop, ___NS__now, ___NS__nth, ___NS__nthArg, ___NS__omit, ___NS__omitBy, ___NS__once, ___NS__orderBy, ___NS__over, ___NS__overArgs, ___NS__overEvery, ___NS__overSome, ___NS__pad, ___NS__padEnd, ___NS__padStart, ___NS__parseInt, ___NS__partial, ___NS__partialRight, ___NS__partition, ___NS__pick, ___NS__pickBy, ___NS__property, ___NS__propertyOf, ___NS__pull, ___NS__pullAll, ___NS__pullAllBy, ___NS__pullAllWith, ___NS__pullAt, ___NS__random, ___NS__range, ___NS__rangeRight, ___NS__rearg, ___NS__reduce, ___NS__reduceRight, ___NS__reject, ___NS__remove, ___NS__repeat, ___NS__replace, ___NS__rest, ___NS__result, ___NS__reverse, ___NS__round, ___NS__sample, ___NS__sampleSize, ___NS__set, ___NS__setWith, ___NS__shuffle, ___NS__size, ___NS__slice, ___NS__snakeCase, ___NS__some, ___NS__sortBy, ___NS__sortedIndex, ___NS__sortedIndexBy, ___NS__sortedIndexOf, ___NS__sortedLastIndex, ___NS__sortedLastIndexBy, ___NS__sortedLastIndexOf, ___NS__sortedUniq, ___NS__sortedUniqBy, ___NS__split, ___NS__spread, ___NS__startCase, ___NS__startsWith, ___NS__stubArray, ___NS__stubFalse, ___NS__stubObject, ___NS__stubString, ___NS__stubTrue, ___NS__subtract, ___NS__sum, ___NS__sumBy, ___NS__tail, ___NS__take, ___NS__takeRight, ___NS__takeRightWhile, ___NS__takeWhile, ___NS__tap, ___NS__template, ___NS__templateSettings, ___NS__throttle, ___NS__thru, ___NS__times, ___NS__toArray, ___NS__toFinite, ___NS__toInteger, ___NS__toLength, ___NS__toLower, ___NS__toNumber, ___NS__toPairs, ___NS__toPairsIn, ___NS__toPath, ___NS__toPlainObject, ___NS__toSafeInteger, ___NS__toString, ___NS__toUpper, ___NS__transform, ___NS__trim, ___NS__trimEnd, ___NS__trimStart, ___NS__truncate, ___NS__unary, ___NS__unescape, ___NS__union, ___NS__unionBy, ___NS__unionWith, ___NS__uniq, ___NS__uniqBy, ___NS__uniqueId, ___NS__uniqWith, ___NS__unset, ___NS__unzip, ___NS__unzipWith, ___NS__update, ___NS__updateWith, ___NS__upperCase, ___NS__upperFirst, ___NS__values, ___NS__valuesIn, ___NS__without, ___NS__words, ___NS__wrap, ___NS__xor, ___NS__xorBy, ___NS__xorWith, ___NS__zip, ___NS__zipObject, ___NS__zipObjectDeep, ___NS__zipWith } from 'tnp-core/browser-prod';\nimport { TaonPermissionEntity } from '@taon-dev/session/browser-prod';\n\nimport { TaonCmsApplicationHookEntity } from '../taon-cms-application-hook/taon-cms-application-hook.entity';\n\nimport { TaonCmsContentDefaultsValues } from './taon-cms-content.constants';\nimport { TaonCmsContentType } from './taon-cms-content.models';\n//#endregion\n\n@TaonEntity({\n className: 'TaonCmsContentEntity',\n createTable: true,\n})\nexport class TaonCmsContentEntity extends TaonBaseEntity<TaonCmsContentEntity> {\n/* */\n/* */\n \n id: number;\n\n/* */\n/* */\n \n version: number;\n\n/* */\n/* */\n \n type: TaonCmsContentType = TaonCmsContentType.Normal;\n\n/* */\n/* */\n \n title: string;\n\n/* */\n/* */\n \n slug: string;\n\n/* */\n/* */\n \n publicVersionPostId: number | null = null;\n\n/* */\n/* */\n \n privateVersionPostId: number | null = null;\n\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n \n relatedPosts: TaonCmsContentEntity[];\n\n/* */\n/* */\n/* */\n/* */\n/* */\n \n applicationHook: TaonCmsApplicationHookEntity | null;\n\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n \n permissions: TaonPermissionEntity[];\n\n/* */\n/* */\n \n applyPermissionsToRelatedPosts: boolean = false;\n\n/* */\n/* */\n \n applyVisibilityToRelatedPosts: boolean = false;\n\n/* */\n/* */\n \n excerpt: string | null;\n\n/* */\n/* */\n \n body: string | null;\n\n/* */\n/* */\n \n videoKey: string | null = null;\n\n/* */\n/* */\n \n audioKey: string | null = null;\n\n/* */\n/* */\n \n attachmentKey: string | null = null;\n\n/* */\n/* */\n \n thumbnailKey: string | null = null;\n\n/* */\n/* */\n \n categoryId: number | null;\n\n/* */\n/* */\n \n authorUserId: number | null;\n\n/* */\n/* */\n \n status: string;\n // draft | published | archived\n\n/* */\n/* */\n \n publishedAt: Date | null;\n\n/* */\n/* */\n \n createdAt: Date;\n\n/* */\n/* */\n \n updatedAt: Date;\n}","import {\n Column,\n JoinColumn,\n OneToOne,\n PrimaryGeneratedColumn,\n TaonBaseEntity,\n TaonEntity,\n} from 'taon/browser-prod';\n\nimport type { TaonCmsApplicationHook } from '../taon-cms-application-hooks';\nimport { TaonCmsContentEntity } from '../taon-cms-content/taon-cms-content.entity';\n\n@TaonEntity({\n className: 'TaonCmsApplicationHookEntity',\n createTable: true,\n})\nexport class TaonCmsApplicationHookEntity extends TaonBaseEntity<TaonCmsApplicationHookEntity> {\n @PrimaryGeneratedColumn()\n id: number;\n\n @Column({ type: 'varchar', unique: true })\n hook: TaonCmsApplicationHook;\n\n @Column({ type: 'integer', nullable: true, unique: true })\n contentId: number | null;\n\n @OneToOne(\n () => TaonCmsContentEntity,\n content => content.applicationHook,\n { nullable: true, onDelete: 'SET NULL' },\n )\n @JoinColumn({ name: 'contentId', referencedColumnName: 'id' })\n content: TaonCmsContentEntity | null;\n}\n","export const TaonCmsApplicationHook = {\n HOME_HERO: 'home-hero',\n HOME_FEATURED_POST: 'home-featured-post',\n SHOP_PROMOTION: 'shop-promotion',\n LOGIN_INFO: 'login-info',\n FOOTER_ABOUT: 'footer-about',\n} as const;\n\nexport type TaonCmsApplicationHook =\n (typeof TaonCmsApplicationHook)[keyof typeof TaonCmsApplicationHook];\n","import { TaonCmsContentEntity } from '../taon-cms-content/taon-cms-content.entity';\nimport { TaonBaseMigration, TaonMigration, ClassHelpers__NS__asyncHandler, ClassHelpers__NS__ensureClassConfig, ClassHelpers__NS__ensureMethodConfig, ClassHelpers__NS__getClassConfig, ClassHelpers__NS__getClassFnFromObject, ClassHelpers__NS__getControllerConfigs, ClassHelpers__NS__getFullInternalName, ClassHelpers__NS__getMethodsNames, ClassHelpers__NS__getName, ClassHelpers__NS__getOrginalClass, ClassHelpers__NS__getUniqueKey, ClassHelpers__NS__hasParentClassWithName, ClassHelpers__NS__isContextClassObject, ClassHelpers__NS__mapFnError, ClassHelpers__NS__setName } from 'taon/browser-prod';\nimport { QueryRunner, Table } from 'taon-typeorm/browser-prod';\n\nimport { TaonCmsApplicationHookEntity } from '../taon-cms-application-hook/taon-cms-application-hook.entity';\nimport { TaonCmsApplicationHook } from '../taon-cms-application-hooks';\n\n//#region Migration class for context \"CmsContext\"\n@TaonMigration({\n className: 'CmsContext_1792506757808_applicaitonHooks',\n})\nexport class CmsContext_1792506757808_applicaitonHooks extends TaonBaseMigration {\n APPLICATION_HOOK_TABLE = ClassHelpers__NS__getName(TaonCmsApplicationHookEntity);\n\n CONTENT_TABLE = ClassHelpers__NS__getName(TaonCmsContentEntity);\n\n //#region up\n async up(queryRunner: QueryRunner): Promise<any> {\n await queryRunner.startTransaction();\n try {\n if (!(await queryRunner.hasTable(this.APPLICATION_HOOK_TABLE))) {\n await queryRunner.createTable(\n new Table({\n name: this.APPLICATION_HOOK_TABLE,\n columns: [\n {\n name: 'id',\n type: 'integer',\n isPrimary: true,\n isGenerated: true,\n generationStrategy: 'increment',\n },\n { name: 'hook', type: 'varchar', isUnique: true },\n {\n name: 'contentId',\n type: 'integer',\n isNullable: true,\n isUnique: true,\n },\n ],\n foreignKeys: [\n {\n columnNames: ['contentId'],\n referencedTableName: this.CONTENT_TABLE,\n referencedColumnNames: ['id'],\n onDelete: 'SET NULL',\n },\n ],\n }),\n true,\n );\n }\n\n await this.persistApplicationHooks(queryRunner);\n await queryRunner.commitTransaction();\n } catch (error) {\n console.error('Error in migration:', error);\n await queryRunner.rollbackTransaction();\n throw error;\n }\n }\n //#endregion\n\n //#region down\n async down(queryRunner: QueryRunner): Promise<any> {\n if (await queryRunner.hasTable(this.APPLICATION_HOOK_TABLE)) {\n await queryRunner.dropTable(this.APPLICATION_HOOK_TABLE, true);\n }\n }\n //#endregion\n\n protected getApplicationHooks(): Record<string, string> {\n return TaonCmsApplicationHook;\n }\n\n private async persistApplicationHooks(\n queryRunner: QueryRunner,\n ): Promise<void> {\n const repository = queryRunner.manager.getRepository(\n TaonCmsApplicationHookEntity,\n );\n for (const hook of Object.values(this.getApplicationHooks())) {\n if (!(await repository.findOneBy({ hook: hook as any }))) {\n await repository.save(\n repository.create({ hook: hook as any, contentId: null }),\n );\n }\n }\n }\n}\n//#endregion","import { TaonCmsContentEntity } from '../taon-cms-content/taon-cms-content.entity';\nimport { TaonBaseMigration, TaonMigration, ClassHelpers__NS__asyncHandler, ClassHelpers__NS__ensureClassConfig, ClassHelpers__NS__ensureMethodConfig, ClassHelpers__NS__getClassConfig, ClassHelpers__NS__getClassFnFromObject, ClassHelpers__NS__getControllerConfigs, ClassHelpers__NS__getFullInternalName, ClassHelpers__NS__getMethodsNames, ClassHelpers__NS__getName, ClassHelpers__NS__getOrginalClass, ClassHelpers__NS__getUniqueKey, ClassHelpers__NS__hasParentClassWithName, ClassHelpers__NS__isContextClassObject, ClassHelpers__NS__mapFnError, ClassHelpers__NS__setName } from 'taon/browser-prod';\nimport { QueryRunner, TableColumn } from 'taon-typeorm/browser-prod';\n\n@TaonMigration({\n className: 'CmsContext_1793664000000_postVersionLinks',\n})\nexport class CmsContext_1793664000000_postVersionLinks extends TaonBaseMigration {\n async up(queryRunner: QueryRunner): Promise<void> {\n const table = ClassHelpers__NS__getName(TaonCmsContentEntity);\n for (const name of ['publicVersionPostId', 'privateVersionPostId']) {\n if (!(await queryRunner.hasColumn(table, name))) {\n await queryRunner.addColumn(\n table,\n new TableColumn({\n name,\n type: 'integer',\n isNullable: true,\n }),\n );\n }\n }\n }\n\n async down(queryRunner: QueryRunner): Promise<void> {\n const table = ClassHelpers__NS__getName(TaonCmsContentEntity);\n for (const name of ['privateVersionPostId', 'publicVersionPostId']) {\n if (await queryRunner.hasColumn(table, name)) {\n await queryRunner.dropColumn(table, name);\n }\n }\n }\n}","// THIS FILE IS GENERATED - DO NOT MODIFY\nimport { CmsContext_1792506757808_applicaitonHooks } from './1792506757808_applicaitonHooks';\nimport { CmsContext_1793664000000_postVersionLinks } from './1793664000000_postVersionLinks';\nexport { CmsContext_1792506757808_applicaitonHooks } from './1792506757808_applicaitonHooks';\nexport { CmsContext_1793664000000_postVersionLinks } from './1793664000000_postVersionLinks';\n// THIS FILE IS GENERATED - DO NOT MODIFY\nexport const MIGRATIONS_CLASSES_FOR_CmsContext = {\n /* 20-10-2026 16:32:37 */ CmsContext_1792506757808_applicaitonHooks,\n /* 03-11-2026 01:00:00 */ CmsContext_1793664000000_postVersionLinks,\n};\n// THIS FILE IS GENERATED - DO NOT MODIFY\n","//@ts-nocheck\nexport * from './migrations_index._auto-generated_';\n","// THIS FILE IS GENERATED - DO NOT MODIFY\n/**\n * Autogenerated by current cli tool\n */\nexport const BUILD_FRAMEWORK_CLI_NAME = 'tnp';\n/**\n * This value can be change in taon.jsonc (appId)\n */\nexport const APP_ID = 'com.domain.example.cms';\n/**\n * Autogenerated by current cli tool\n */\nexport const BUILD_BASE_HREF = '';\n/**\n * This value can be change in taon.jsonc (overrideNpmName)\n */\nexport const PROJECT_NPM_NAME = '@taon-dev/cms';\n/**\n * Taon version from you project taon.json\n */\nexport const CURRENT_PACKAGE_TAON_VERSION = 'v21';\n/**\n * Autogenerated by current cli tool. Use *tnp release* to bump version.\n */\nexport const CURRENT_PACKAGE_VERSION = '21.0.25';\n\n\n\n\n\n// THIS FILE IS GENERATED - DO NOT MODIFY\n ","//#region tnp-helpers cli template\nimport { UtilsJson__NS__AttrJsoncProp, UtilsJson__NS__getAtrributiesFromJsonWithComments, UtilsJson__NS__getAttributiesFromComment, UtilsJson__NS__getValue, UtilsJson__NS__readJson, UtilsJson__NS__readJsonWithComments, UtilsJson__NS__setValue, UtilsJson__NS__validateLodashPath } from 'tnp-core/browser-prod';\nimport { BaseCommandLineFeature, Helpers__NS___fixCommand, Helpers__NS__ActionInstance, Helpers__NS__actionStarted, Helpers__NS__bigMaxBuffer, Helpers__NS__checkProcess, Helpers__NS__cleanExit, Helpers__NS__clearConsole, Helpers__NS__command, Helpers__NS__commandOutputAsString, Helpers__NS__commandOutputAsStringAsync, Helpers__NS__contain, Helpers__NS__createFolder, Helpers__NS__createSymLink, Helpers__NS__error, Helpers__NS__execute, Helpers__NS__exists, Helpers__NS__filesFrom, Helpers__NS__foldersFrom, Helpers__NS__getFilesFrom, Helpers__NS__getFoldersFrom, Helpers__NS__getIsBrowser, Helpers__NS__getIsElectron, Helpers__NS__getIsNode, Helpers__NS__getIsRunningInGitBash, Helpers__NS__getIsSupportedTaonTerminal, Helpers__NS__getIsVerboseMode, Helpers__NS__getIsVerboseModeOrTnp, Helpers__NS__getIsWebSQL, Helpers__NS__getIsWsl, Helpers__NS__getStdio, Helpers__NS__hideNodeWarnings, Helpers__NS__info, Helpers__NS__isBlob, Helpers__NS__isBuffer, Helpers__NS__isClass, Helpers__NS__isExistedSymlink, Helpers__NS__isFile, Helpers__NS__isFolder, Helpers__NS__isRunningInDocker, Helpers__NS__isRunningInLinuxGraphicsCapableEnvironment, Helpers__NS__isSymlinkFileExitedOrUnexisted, Helpers__NS__isSymlinkThatMatchesUrl, Helpers__NS__isUnexistedLink, Helpers__NS__killOnPort, Helpers__NS__killProcess, Helpers__NS__killProcessByPort, Helpers__NS__linksToFolderFrom, Helpers__NS__linksToFoldersFrom, Helpers__NS__log, Helpers__NS__logError, Helpers__NS__logInfo, Helpers__NS__logProc, Helpers__NS__logSuccess, Helpers__NS__logTaskDone, Helpers__NS__logTaskStarted, Helpers__NS__logWarn, Helpers__NS__mediaTypeFromSrc, Helpers__NS__mkdirp, Helpers__NS__modifyLineByLine, Helpers__NS__msgCacheClear, Helpers__NS__openFolderInFileExplorer, Helpers__NS__parse, Helpers__NS__pathContainLink, Helpers__NS__questionYesNo, Helpers__NS__readFile, Helpers__NS__readJson, Helpers__NS__readJson5, Helpers__NS__readJsonC, Helpers__NS__relative, Helpers__NS__remove, Helpers__NS__removeEmptyLineFromString, Helpers__NS__removeFileIfExists, Helpers__NS__removeFolderIfExists, Helpers__NS__removeIfExists, Helpers__NS__removeSlashAtBegin, Helpers__NS__removeSlashAtEnd, Helpers__NS__removeSymlinks, Helpers__NS__renderError, Helpers__NS__replaceLinesInFile, Helpers__NS__run, Helpers__NS__runAsyncIn, Helpers__NS__runSyncIn, Helpers__NS__runSyncOrAsync, Helpers__NS__sleep, Helpers__NS__stopApplication, Helpers__NS__stringify, Helpers__NS__success, Helpers__NS__taskDone, Helpers__NS__taskStarted, Helpers__NS__throwError, Helpers__NS__timeout, Helpers__NS__tryCatchError, Helpers__NS__tryReadFile, Helpers__NS__tryRemoveDir, Helpers__NS__values, Helpers__NS__wait, Helpers__NS__warn, Helpers__NS__writeFile, Helpers__NS__writeJson, Helpers__NS__writeJson5, Helpers__NS__writeJsonC } from 'tnp-helpers/browser-prod';\n/* */ \n//#endregion\n\n//#region CLI / global scope\n/**\n * This class is for handling global arguments. *\n * Cli engine will parse: hello:world:from:global:arg to helloWorldFromGlobalArg\n * (lower case, camel case) .. so you don't need to worry about misspelling\n * arguments\n */\nclass $Global extends BaseCommandLineFeature<{}> {\n /**\n * When you execute cli without arguments:`$ cli`\n */\n public _() {\n console.log(`Hello world from cli`);\n this._exit();\n }\n\n /**\n * When you execute: `$ cli hello:world:from:global:arg`\n * (or `$ cli helloWorldFromGlobalArg`)\n */\n helloWorldFromGlobalArg() {\n console.log('hello world from global argument!');\n this._exit(0);\n }\n}\n//#endregion\n\n//#region CLI / Version Scope\n/**\n *\n */\nclass $Version extends BaseCommandLineFeature<{\n anyCLIparamsHere: string;\n}> {\n /**\n * When you execute: `$ cli version`\n */\n public _() {\n console.log(`Hello world from version argument`);\n this._exit();\n }\n\n /**\n * When you execute: `$ cli version:getFromPackageJson`\n */\n public getFromPackageJson() {\n const ver = UtilsJson__NS__getValue(\n this.project.pathFor('package.json'),\n 'version',\n {\n defaultValue: '<not defined>',\n },\n );\n console.log(`Version from packageJson ${ver}`);\n this._exit(0);\n }\n}\n//#endregion\n\n/**\n *\n * @param argsv process.argsv\n * @param filename needed if you want ipc communicaiton\n */\nexport async function startCli(\n argsv: string[],\n filename: string,\n): Promise<void> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n}\n\nexport default startCli;","//#region imports\nimport { TaonBaseKvRepository, TaonRepository } from 'taon/browser-prod';\n\nimport { contentError } from '../../../taon-cms-content/taon-cms-content.validation';\nimport type { TaonCmsWebsiteFeatureModels__NS__Feature, TaonCmsWebsiteFeatureModels__NS__TaonCmsWebsiteFeatureState } from './taon-cms-website-feature.models';\nimport { TaonCmsWebsiteFeatureUtils__NS__isActive, TaonCmsWebsiteFeatureUtils__NS__keyFromName } from './taon-cms-website-feature.utils';\n//#endregion\n\n@TaonRepository({\n className: 'TaonCmsWebsiteFeatureKvRepository',\n})\nexport class TaonCmsWebsiteFeatureKvRepository extends TaonBaseKvRepository<{\n features: TaonCmsWebsiteFeatureModels__NS__Feature[];\n}> {\n private mutation: Promise<void> = Promise.resolve();\n\n async listFeatures(): Promise<TaonCmsWebsiteFeatureModels__NS__Feature[]> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n async isEnabled(key: string): Promise<boolean> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n async addFeature(name: string): Promise<TaonCmsWebsiteFeatureModels__NS__Feature[]> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n async setEnabled(\n key: string,\n enabled: boolean,\n ): Promise<TaonCmsWebsiteFeatureModels__NS__Feature[]> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n async deleteFeature(key: string): Promise<TaonCmsWebsiteFeatureModels__NS__Feature[]> {\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n private requireFeature(\n features: TaonCmsWebsiteFeatureModels__NS__Feature[],\n key: string,\n ): void {\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n private async mutate(\n update: (\n features: TaonCmsWebsiteFeatureModels__NS__Feature[],\n ) => TaonCmsWebsiteFeatureModels__NS__Feature[],\n ): Promise<TaonCmsWebsiteFeatureModels__NS__Feature[]> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n}","//#region imports\nimport {\n TaonAuthContextRepository,\n TaonSessionRepository,\n} from '@taon-dev/session/browser-prod';\nimport { Body, DELETE, GET, POST, PUT, Query, TaonBaseController, TaonController, Models__NS__ClassType, Models__NS__ClassTypeKey, Models__NS__ConnectionOptionsLogs, Models__NS__ContextOptions, Models__NS__DatabaseConfig, Models__NS__DatabaseConfigTypeOrm, Models__NS__DatabasesFolder, Models__NS__DBRecreateMode, Models__NS__DBRecreateModeType, Models__NS__FrameworkMode, Models__NS__Http__NS__AsyncResponse, Models__NS__Http__NS__ClientAction, Models__NS__Http__NS__ContextENDPOINT, Models__NS__Http__NS__ExpressContext, Models__NS__Http__NS__FormlyFromType, Models__NS__Http__NS__MixResponse, Models__NS__Http__NS__PromiseObservableMix, Models__NS__Http__NS__RequestResults, Models__NS__Http__NS__Response, Models__NS__Http__NS__ResponseFuncOpt, Models__NS__Http__NS__SyncResponse, Models__NS__Http__NS__SyncResponseFunc, Models__NS__Http__NS__TaonStreamResponseOptions, Models__NS__KVDatabaseConfig, Models__NS__MiddlewareType, Models__NS__StartParams, Models__NS__TaonCtrlBeforeEachRequestParams, Models__NS__TaonCtxCloneParams, Models__NS__TaonInitializeParams, Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\n\nimport { contentError } from '../../../taon-cms-content/taon-cms-content.validation';\nimport { TaonCmsWebsiteFeatureKvRepository } from './taon-cms-website-feature.kv.repository';\nimport type { TaonCmsWebsiteFeatureModels__NS__Feature, TaonCmsWebsiteFeatureModels__NS__TaonCmsWebsiteFeatureState } from './taon-cms-website-feature.models';\n//#endregion\n\n@TaonController<TaonCmsWebsiteFeatureController>({\n className: 'TaonCmsWebsiteFeatureController',\n allowedMethods: ['isEnabled', 'listFeatures', 'addFeature', 'setEnabled', 'deleteFeature'],\n})\nexport class TaonCmsWebsiteFeatureController extends TaonBaseController {\n private readonly features = this.injectKvRepository(TaonCmsWebsiteFeatureKvRepository);\n\n private readonly sessions = this.injectCustomRepo(TaonSessionRepository);\n\n private readonly auth = this.injectCustomRepo(TaonAuthContextRepository);\n\n protected async beforeEachRequest({\n req,\n res,\n methodConfig,\n t,\n }: Models__NS__TaonCtrlBeforeEachRequestParams<TaonCmsWebsiteFeatureController>): Promise<void> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n @GET()\n isEnabled(@Query('key') key: string): Taon__NS__Response<boolean> {\n/* */\n/* */\n return (void 0);\n }\n\n @GET()\n listFeatures(): Taon__NS__Response<TaonCmsWebsiteFeatureModels__NS__Feature[]> {\n/* */\n/* */\n return (void 0);\n }\n\n @POST()\n addFeature(@Body('name') name: string): Taon__NS__Response<TaonCmsWebsiteFeatureModels__NS__Feature[]> {\n/* */\n/* */\n return (void 0);\n }\n\n @PUT()\n setEnabled(\n @Query('key') key: string,\n @Body('enabled') enabled: boolean,\n ): Taon__NS__Response<TaonCmsWebsiteFeatureModels__NS__Feature[]> {\n/* */\n/* */\n return (void 0);\n }\n\n @DELETE()\n deleteFeature(@Query('key') key: string): Taon__NS__Response<TaonCmsWebsiteFeatureModels__NS__Feature[]> {\n/* */\n/* */\n return (void 0);\n }\n}","//#region imports\nimport { TaonBaseClass, TaonBaseProvider, TaonProvider, Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\nimport { ___NS__add, ___NS__after, ___NS__ary, ___NS__assign, ___NS__assignIn, ___NS__assignInWith, ___NS__assignWith, ___NS__at, ___NS__attempt, ___NS__before, ___NS__bind, ___NS__bindAll, ___NS__bindKey, ___NS__camelCase, ___NS__capitalize, ___NS__castArray, ___NS__ceil, ___NS__chain, ___NS__chunk, ___NS__clamp, ___NS__clone, ___NS__cloneDeep, ___NS__cloneDeepWith, ___NS__cloneWith, ___NS__compact, ___NS__concat, ___NS__cond, ___NS__conforms, ___NS__conformsTo, ___NS__constant, ___NS__countBy, ___NS__create, ___NS__curry, ___NS__curryRight, ___NS__debounce, ___NS__deburr, ___NS__defaults, ___NS__defaultsDeep, ___NS__defaultTo, ___NS__defer, ___NS__delay, ___NS__difference, ___NS__differenceBy, ___NS__differenceWith, ___NS__divide, ___NS__drop, ___NS__dropRight, ___NS__dropRightWhile, ___NS__dropWhile, ___NS__each, ___NS__eachRight, ___NS__endsWith, ___NS__entries, ___NS__entriesIn, ___NS__eq, ___NS__escape, ___NS__escapeRegExp, ___NS__every, ___NS__extend, ___NS__extendWith, ___NS__fill, ___NS__filter, ___NS__find, ___NS__findIndex, ___NS__findKey, ___NS__findLast, ___NS__findLastIndex, ___NS__findLastKey, ___NS__first, ___NS__flatMap, ___NS__flatMapDeep, ___NS__flatMapDepth, ___NS__flatten, ___NS__flattenDeep, ___NS__flattenDepth, ___NS__flip, ___NS__floor, ___NS__flow, ___NS__flowRight, ___NS__forEach, ___NS__forEachRight, ___NS__forIn, ___NS__forInRight, ___NS__forOwn, ___NS__forOwnRight, ___NS__fromPairs, ___NS__functions, ___NS__functionsIn, ___NS__get, ___NS__groupBy, ___NS__gt, ___NS__gte, ___NS__has, ___NS__hasIn, ___NS__head, ___NS__identity, ___NS__includes, ___NS__indexOf, ___NS__initial, ___NS__inRange, ___NS__intersection, ___NS__intersectionBy, ___NS__intersectionWith, ___NS__invert, ___NS__invertBy, ___NS__invoke, ___NS__invokeMap, ___NS__isArguments, ___NS__isArray, ___NS__isArrayBuffer, ___NS__isArrayLike, ___NS__isArrayLikeObject, ___NS__isBoolean, ___NS__isBuffer, ___NS__isDate, ___NS__isElement, ___NS__isEmpty, ___NS__isEqual, ___NS__isEqualWith, ___NS__isError, ___NS__isFinite, ___NS__isFunction, ___NS__isInteger, ___NS__isLeafObject, ___NS__isLength, ___NS__isMap, ___NS__isMatch, ___NS__isMatchWith, ___NS__isNaN, ___NS__isNative, ___NS__isNil, ___NS__isNull, ___NS__isNumber, ___NS__isObject, ___NS__isObjectLike, ___NS__isPlainObject, ___NS__isRegExp, ___NS__isSafeInteger, ___NS__isSet, ___NS__isString, ___NS__isSymbol, ___NS__isTypedArray, ___NS__isUndefined, ___NS__isWeakMap, ___NS__isWeakSet, ___NS__iteratee, ___NS__join, ___NS__kebabCase, ___NS__keyBy, ___NS__keys, ___NS__keysIn, ___NS__last, ___NS__lastIndexOf, ___NS__lowerCase, ___NS__lowerFirst, ___NS__lt, ___NS__lte, ___NS__map, ___NS__mapKeys, ___NS__mapValues, ___NS__matches, ___NS__matchesProperty, ___NS__max, ___NS__maxBy, ___NS__mean, ___NS__meanBy, ___NS__memoize, ___NS__merge, ___NS__mergeWith, ___NS__method, ___NS__methodOf, ___NS__min, ___NS__minBy, ___NS__mixin, ___NS__multiply, ___NS__negate, ___NS__noop, ___NS__now, ___NS__nth, ___NS__nthArg, ___NS__omit, ___NS__omitBy, ___NS__once, ___NS__orderBy, ___NS__over, ___NS__overArgs, ___NS__overEvery, ___NS__overSome, ___NS__pad, ___NS__padEnd, ___NS__padStart, ___NS__parseInt, ___NS__partial, ___NS__partialRight, ___NS__partition, ___NS__pick, ___NS__pickBy, ___NS__property, ___NS__propertyOf, ___NS__pull, ___NS__pullAll, ___NS__pullAllBy, ___NS__pullAllWith, ___NS__pullAt, ___NS__random, ___NS__range, ___NS__rangeRight, ___NS__rearg, ___NS__reduce, ___NS__reduceRight, ___NS__reject, ___NS__remove, ___NS__repeat, ___NS__replace, ___NS__rest, ___NS__result, ___NS__reverse, ___NS__round, ___NS__sample, ___NS__sampleSize, ___NS__set, ___NS__setWith, ___NS__shuffle, ___NS__size, ___NS__slice, ___NS__snakeCase, ___NS__some, ___NS__sortBy, ___NS__sortedIndex, ___NS__sortedIndexBy, ___NS__sortedIndexOf, ___NS__sortedLastIndex, ___NS__sortedLastIndexBy, ___NS__sortedLastIndexOf, ___NS__sortedUniq, ___NS__sortedUniqBy, ___NS__split, ___NS__spread, ___NS__startCase, ___NS__startsWith, ___NS__stubArray, ___NS__stubFalse, ___NS__stubObject, ___NS__stubString, ___NS__stubTrue, ___NS__subtract, ___NS__sum, ___NS__sumBy, ___NS__tail, ___NS__take, ___NS__takeRight, ___NS__takeRightWhile, ___NS__takeWhile, ___NS__tap, ___NS__template, ___NS__templateSettings, ___NS__throttle, ___NS__thru, ___NS__times, ___NS__toArray, ___NS__toFinite, ___NS__toInteger, ___NS__toLength, ___NS__toLower, ___NS__toNumber, ___NS__toPairs, ___NS__toPairsIn, ___NS__toPath, ___NS__toPlainObject, ___NS__toSafeInteger, ___NS__toString, ___NS__toUpper, ___NS__transform, ___NS__trim, ___NS__trimEnd, ___NS__trimStart, ___NS__truncate, ___NS__unary, ___NS__unescape, ___NS__union, ___NS__unionBy, ___NS__unionWith, ___NS__uniq, ___NS__uniqBy, ___NS__uniqueId, ___NS__uniqWith, ___NS__unset, ___NS__unzip, ___NS__unzipWith, ___NS__update, ___NS__updateWith, ___NS__upperCase, ___NS__upperFirst, ___NS__values, ___NS__valuesIn, ___NS__without, ___NS__words, ___NS__wrap, ___NS__xor, ___NS__xorBy, ___NS__xorWith, ___NS__zip, ___NS__zipObject, ___NS__zipObjectDeep, ___NS__zipWith } from 'tnp-core/browser-prod';\n//#endregion\n\nexport class TaonTaonCmsWebsiteFeatureConfig extends TaonBaseClass {\n declare name: string;\n}\n\n@TaonProvider({\n className: 'TaonCmsWebsiteFeatureProvider',\n})\nexport class TaonCmsWebsiteFeatureProvider extends TaonBaseProvider {\n enabledTaonCmsWebsiteFeatureOption: boolean = true;\n config = new TaonTaonCmsWebsiteFeatureConfig();\n clone() {\n return {\n enabledTaonCmsWebsiteFeatureOption: this.enabledTaonCmsWebsiteFeatureOption,\n config: this.config.clone(),\n };\n }\n}","//#region imports\nimport { createContext, TaonBaseContext } from 'taon/browser-prod';\nimport { TaonSessionAbstractContext } from '@taon-dev/session/browser-prod';\n\nimport { TaonCmsWebsiteFeatureController } from './taon-cms-website-feature.controller';\nimport { TaonCmsWebsiteFeatureKvRepository } from './taon-cms-website-feature.kv.repository';\nimport { TaonCmsWebsiteFeatureProvider } from './taon-cms-website-feature.provider';\n//#endregion\n\nexport const TaonCmsWebsiteFeatureAbstractContext = createContext(() => ({\n contextName: 'TaonCmsWebsiteFeatureAbstractContext',\n abstract: true,\n contexts: { TaonBaseContext, TaonSessionAbstractContext },\n controllers: { TaonCmsWebsiteFeatureController },\n repositories: {\n TaonCmsWebsiteFeatureKvRepository,\n },\n providers: { TaonCmsWebsiteFeatureProvider },\n}));\n","//#region imports\nimport { Column, CustomColumn, TaonBaseAbstractEntity, TaonEntity, Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\nimport { ___NS__add, ___NS__after, ___NS__ary, ___NS__assign, ___NS__assignIn, ___NS__assignInWith, ___NS__assignWith, ___NS__at, ___NS__attempt, ___NS__before, ___NS__bind, ___NS__bindAll, ___NS__bindKey, ___NS__camelCase, ___NS__capitalize, ___NS__castArray, ___NS__ceil, ___NS__chain, ___NS__chunk, ___NS__clamp, ___NS__clone, ___NS__cloneDeep, ___NS__cloneDeepWith, ___NS__cloneWith, ___NS__compact, ___NS__concat, ___NS__cond, ___NS__conforms, ___NS__conformsTo, ___NS__constant, ___NS__countBy, ___NS__create, ___NS__curry, ___NS__curryRight, ___NS__debounce, ___NS__deburr, ___NS__defaults, ___NS__defaultsDeep, ___NS__defaultTo, ___NS__defer, ___NS__delay, ___NS__difference, ___NS__differenceBy, ___NS__differenceWith, ___NS__divide, ___NS__drop, ___NS__dropRight, ___NS__dropRightWhile, ___NS__dropWhile, ___NS__each, ___NS__eachRight, ___NS__endsWith, ___NS__entries, ___NS__entriesIn, ___NS__eq, ___NS__escape, ___NS__escapeRegExp, ___NS__every, ___NS__extend, ___NS__extendWith, ___NS__fill, ___NS__filter, ___NS__find, ___NS__findIndex, ___NS__findKey, ___NS__findLast, ___NS__findLastIndex, ___NS__findLastKey, ___NS__first, ___NS__flatMap, ___NS__flatMapDeep, ___NS__flatMapDepth, ___NS__flatten, ___NS__flattenDeep, ___NS__flattenDepth, ___NS__flip, ___NS__floor, ___NS__flow, ___NS__flowRight, ___NS__forEach, ___NS__forEachRight, ___NS__forIn, ___NS__forInRight, ___NS__forOwn, ___NS__forOwnRight, ___NS__fromPairs, ___NS__functions, ___NS__functionsIn, ___NS__get, ___NS__groupBy, ___NS__gt, ___NS__gte, ___NS__has, ___NS__hasIn, ___NS__head, ___NS__identity, ___NS__includes, ___NS__indexOf, ___NS__initial, ___NS__inRange, ___NS__intersection, ___NS__intersectionBy, ___NS__intersectionWith, ___NS__invert, ___NS__invertBy, ___NS__invoke, ___NS__invokeMap, ___NS__isArguments, ___NS__isArray, ___NS__isArrayBuffer, ___NS__isArrayLike, ___NS__isArrayLikeObject, ___NS__isBoolean, ___NS__isBuffer, ___NS__isDate, ___NS__isElement, ___NS__isEmpty, ___NS__isEqual, ___NS__isEqualWith, ___NS__isError, ___NS__isFinite, ___NS__isFunction, ___NS__isInteger, ___NS__isLeafObject, ___NS__isLength, ___NS__isMap, ___NS__isMatch, ___NS__isMatchWith, ___NS__isNaN, ___NS__isNative, ___NS__isNil, ___NS__isNull, ___NS__isNumber, ___NS__isObject, ___NS__isObjectLike, ___NS__isPlainObject, ___NS__isRegExp, ___NS__isSafeInteger, ___NS__isSet, ___NS__isString, ___NS__isSymbol, ___NS__isTypedArray, ___NS__isUndefined, ___NS__isWeakMap, ___NS__isWeakSet, ___NS__iteratee, ___NS__join, ___NS__kebabCase, ___NS__keyBy, ___NS__keys, ___NS__keysIn, ___NS__last, ___NS__lastIndexOf, ___NS__lowerCase, ___NS__lowerFirst, ___NS__lt, ___NS__lte, ___NS__map, ___NS__mapKeys, ___NS__mapValues, ___NS__matches, ___NS__matchesProperty, ___NS__max, ___NS__maxBy, ___NS__mean, ___NS__meanBy, ___NS__memoize, ___NS__merge, ___NS__mergeWith, ___NS__method, ___NS__methodOf, ___NS__min, ___NS__minBy, ___NS__mixin, ___NS__multiply, ___NS__negate, ___NS__noop, ___NS__now, ___NS__nth, ___NS__nthArg, ___NS__omit, ___NS__omitBy, ___NS__once, ___NS__orderBy, ___NS__over, ___NS__overArgs, ___NS__overEvery, ___NS__overSome, ___NS__pad, ___NS__padEnd, ___NS__padStart, ___NS__parseInt, ___NS__partial, ___NS__partialRight, ___NS__partition, ___NS__pick, ___NS__pickBy, ___NS__property, ___NS__propertyOf, ___NS__pull, ___NS__pullAll, ___NS__pullAllBy, ___NS__pullAllWith, ___NS__pullAt, ___NS__random, ___NS__range, ___NS__rangeRight, ___NS__rearg, ___NS__reduce, ___NS__reduceRight, ___NS__reject, ___NS__remove, ___NS__repeat, ___NS__replace, ___NS__rest, ___NS__result, ___NS__reverse, ___NS__round, ___NS__sample, ___NS__sampleSize, ___NS__set, ___NS__setWith, ___NS__shuffle, ___NS__size, ___NS__slice, ___NS__snakeCase, ___NS__some, ___NS__sortBy, ___NS__sortedIndex, ___NS__sortedIndexBy, ___NS__sortedIndexOf, ___NS__sortedLastIndex, ___NS__sortedLastIndexBy, ___NS__sortedLastIndexOf, ___NS__sortedUniq, ___NS__sortedUniqBy, ___NS__split, ___NS__spread, ___NS__startCase, ___NS__startsWith, ___NS__stubArray, ___NS__stubFalse, ___NS__stubObject, ___NS__stubString, ___NS__stubTrue, ___NS__subtract, ___NS__sum, ___NS__sumBy, ___NS__tail, ___NS__take, ___NS__takeRight, ___NS__takeRightWhile, ___NS__takeWhile, ___NS__tap, ___NS__template, ___NS__templateSettings, ___NS__throttle, ___NS__thru, ___NS__times, ___NS__toArray, ___NS__toFinite, ___NS__toInteger, ___NS__toLength, ___NS__toLower, ___NS__toNumber, ___NS__toPairs, ___NS__toPairsIn, ___NS__toPath, ___NS__toPlainObject, ___NS__toSafeInteger, ___NS__toString, ___NS__toUpper, ___NS__transform, ___NS__trim, ___NS__trimEnd, ___NS__trimStart, ___NS__truncate, ___NS__unary, ___NS__unescape, ___NS__union, ___NS__unionBy, ___NS__unionWith, ___NS__uniq, ___NS__uniqBy, ___NS__uniqueId, ___NS__uniqWith, ___NS__unset, ___NS__unzip, ___NS__unzipWith, ___NS__update, ___NS__updateWith, ___NS__upperCase, ___NS__upperFirst, ___NS__values, ___NS__valuesIn, ___NS__without, ___NS__words, ___NS__wrap, ___NS__xor, ___NS__xorBy, ___NS__xorWith, ___NS__zip, ___NS__zipObject, ___NS__zipObjectDeep, ___NS__zipWith } from 'tnp-core/browser-prod';\n\nimport { TaonCmsCategoryDefaultsValues } from './taon-cms-category.constants';\n//#endregion\n\n@TaonEntity({\n className: 'TaonCmsCategoryEntity',\n createTable: true,\n})\nexport class TaonCmsCategoryEntity extends TaonBaseAbstractEntity<TaonCmsCategoryEntity> {\n/* */\n/* */\n \n parentCategoryId: number | null;\n\n/* */\n/* */\n \n name: string;\n\n/* */\n/* */\n \n slug: string;\n\n/* */\n/* */\n \n description: string | null;\n\n/* */\n/* */\n \n sortOrder: number;\n}","//#region imports\nimport { TaonBaseRepository, TaonRepository } from 'taon/browser-prod';\nimport { Raw } from 'taon-typeorm/browser-prod';\nimport { Translation } from '@taon-dev/i18n/browser-prod';\nimport { Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\nimport type { EntityManager } from 'taon-typeorm/browser-prod';\nimport { contentError } from '../taon-cms-content/taon-cms-content.validation';\n\nimport { TaonCmsCategoryEntity } from './taon-cms-category.entity';\nimport { TaonCmsContentEntity } from '../taon-cms-content/taon-cms-content.entity';\nimport { requireContentId } from '../taon-cms-content/taon-cms-content.validation';\nimport {\n TaonCmsCategoryFields,\n validateCategoryHierarchy,\n validateTaxonomy,\n} from './taon-cms-taxonomy.validation';\n//#endregion\n\nconst t = Translation.for('src/lib/taon-cms-category/taon-cms-category.repository.ts', {\"src/lib/taon-cms-category/taon-cms-category.controller.ts\":{\"en-US\":async () => (await import('./i18n/taon-cms-category.controller.ts.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-category.controller.ts.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-category.controller.ts.de-DE.i18n.data')).default},\"src/lib/taon-cms-category/taon-cms-category.repository.ts\":{\"en-US\":async () => (await import('./i18n/taon-cms-category.repository.ts.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-category.repository.ts.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-category.repository.ts.de-DE.i18n.data')).default},\"src/lib/taon-cms-category/taon-cms-taxonomy.validation.ts\":{\"en-US\":async () => (await import('./i18n/taon-cms-taxonomy.validation.ts.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-taxonomy.validation.ts.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-taxonomy.validation.ts.de-DE.i18n.data')).default}} as any);\n\n@TaonRepository({\n className: 'TaonCmsCategoryRepository',\n})\nexport class TaonCmsCategoryRepository extends TaonBaseRepository<TaonCmsCategoryEntity> {\n entityClassResolveFn: () => typeof TaonCmsCategoryEntity = () =>\n TaonCmsCategoryEntity;\n\n async saveCategory(\n id: number | null,\n input: TaonCmsCategoryFields,\n ): Promise<TaonCmsCategoryEntity> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n async deleteCategory(id: number): Promise<void> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n async requireCategory(id: number, manager: EntityManager): Promise<void> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n}","//#region imports\nimport { TaonSessionRepository } from '@taon-dev/session/browser-prod';\nimport { TaonAuthContextRepository } from '@taon-dev/session/browser-prod';\nimport { TaonController, TaonBaseCrudController, Query, GET, POST, DELETE, Body, ClassHelpers__NS__asyncHandler, ClassHelpers__NS__ensureClassConfig, ClassHelpers__NS__ensureMethodConfig, ClassHelpers__NS__getClassConfig, ClassHelpers__NS__getClassFnFromObject, ClassHelpers__NS__getControllerConfigs, ClassHelpers__NS__getFullInternalName, ClassHelpers__NS__getMethodsNames, ClassHelpers__NS__getName, ClassHelpers__NS__getOrginalClass, ClassHelpers__NS__getUniqueKey, ClassHelpers__NS__hasParentClassWithName, ClassHelpers__NS__isContextClassObject, ClassHelpers__NS__mapFnError, ClassHelpers__NS__setName, Models__NS__ClassType, Models__NS__ClassTypeKey, Models__NS__ConnectionOptionsLogs, Models__NS__ContextOptions, Models__NS__DatabaseConfig, Models__NS__DatabaseConfigTypeOrm, Models__NS__DatabasesFolder, Models__NS__DBRecreateMode, Models__NS__DBRecreateModeType, Models__NS__FrameworkMode, Models__NS__Http__NS__AsyncResponse, Models__NS__Http__NS__ClientAction, Models__NS__Http__NS__ContextENDPOINT, Models__NS__Http__NS__ExpressContext, Models__NS__Http__NS__FormlyFromType, Models__NS__Http__NS__MixResponse, Models__NS__Http__NS__PromiseObservableMix, Models__NS__Http__NS__RequestResults, Models__NS__Http__NS__Response, Models__NS__Http__NS__ResponseFuncOpt, Models__NS__Http__NS__SyncResponse, Models__NS__Http__NS__SyncResponseFunc, Models__NS__Http__NS__TaonStreamResponseOptions, Models__NS__KVDatabaseConfig, Models__NS__MiddlewareType, Models__NS__StartParams, Models__NS__TaonCtrlBeforeEachRequestParams, Models__NS__TaonCtxCloneParams, Models__NS__TaonInitializeParams, Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\nimport { ___NS__add, ___NS__after, ___NS__ary, ___NS__assign, ___NS__assignIn, ___NS__assignInWith, ___NS__assignWith, ___NS__at, ___NS__attempt, ___NS__before, ___NS__bind, ___NS__bindAll, ___NS__bindKey, ___NS__camelCase, ___NS__capitalize, ___NS__castArray, ___NS__ceil, ___NS__chain, ___NS__chunk, ___NS__clamp, ___NS__clone, ___NS__cloneDeep, ___NS__cloneDeepWith, ___NS__cloneWith, ___NS__compact, ___NS__concat, ___NS__cond, ___NS__conforms, ___NS__conformsTo, ___NS__constant, ___NS__countBy, ___NS__create, ___NS__curry, ___NS__curryRight, ___NS__debounce, ___NS__deburr, ___NS__defaults, ___NS__defaultsDeep, ___NS__defaultTo, ___NS__defer, ___NS__delay, ___NS__difference, ___NS__differenceBy, ___NS__differenceWith, ___NS__divide, ___NS__drop, ___NS__dropRight, ___NS__dropRightWhile, ___NS__dropWhile, ___NS__each, ___NS__eachRight, ___NS__endsWith, ___NS__entries, ___NS__entriesIn, ___NS__eq, ___NS__escape, ___NS__escapeRegExp, ___NS__every, ___NS__extend, ___NS__extendWith, ___NS__fill, ___NS__filter, ___NS__find, ___NS__findIndex, ___NS__findKey, ___NS__findLast, ___NS__findLastIndex, ___NS__findLastKey, ___NS__first, ___NS__flatMap, ___NS__flatMapDeep, ___NS__flatMapDepth, ___NS__flatten, ___NS__flattenDeep, ___NS__flattenDepth, ___NS__flip, ___NS__floor, ___NS__flow, ___NS__flowRight, ___NS__forEach, ___NS__forEachRight, ___NS__forIn, ___NS__forInRight, ___NS__forOwn, ___NS__forOwnRight, ___NS__fromPairs, ___NS__functions, ___NS__functionsIn, ___NS__get, ___NS__groupBy, ___NS__gt, ___NS__gte, ___NS__has, ___NS__hasIn, ___NS__head, ___NS__identity, ___NS__includes, ___NS__indexOf, ___NS__initial, ___NS__inRange, ___NS__intersection, ___NS__intersectionBy, ___NS__intersectionWith, ___NS__invert, ___NS__invertBy, ___NS__invoke, ___NS__invokeMap, ___NS__isArguments, ___NS__isArray, ___NS__isArrayBuffer, ___NS__isArrayLike, ___NS__isArrayLikeObject, ___NS__isBoolean, ___NS__isBuffer, ___NS__isDate, ___NS__isElement, ___NS__isEmpty, ___NS__isEqual, ___NS__isEqualWith, ___NS__isError, ___NS__isFinite, ___NS__isFunction, ___NS__isInteger, ___NS__isLeafObject, ___NS__isLength, ___NS__isMap, ___NS__isMatch, ___NS__isMatchWith, ___NS__isNaN, ___NS__isNative, ___NS__isNil, ___NS__isNull, ___NS__isNumber, ___NS__isObject, ___NS__isObjectLike, ___NS__isPlainObject, ___NS__isRegExp, ___NS__isSafeInteger, ___NS__isSet, ___NS__isString, ___NS__isSymbol, ___NS__isTypedArray, ___NS__isUndefined, ___NS__isWeakMap, ___NS__isWeakSet, ___NS__iteratee, ___NS__join, ___NS__kebabCase, ___NS__keyBy, ___NS__keys, ___NS__keysIn, ___NS__last, ___NS__lastIndexOf, ___NS__lowerCase, ___NS__lowerFirst, ___NS__lt, ___NS__lte, ___NS__map, ___NS__mapKeys, ___NS__mapValues, ___NS__matches, ___NS__matchesProperty, ___NS__max, ___NS__maxBy, ___NS__mean, ___NS__meanBy, ___NS__memoize, ___NS__merge, ___NS__mergeWith, ___NS__method, ___NS__methodOf, ___NS__min, ___NS__minBy, ___NS__mixin, ___NS__multiply, ___NS__negate, ___NS__noop, ___NS__now, ___NS__nth, ___NS__nthArg, ___NS__omit, ___NS__omitBy, ___NS__once, ___NS__orderBy, ___NS__over, ___NS__overArgs, ___NS__overEvery, ___NS__overSome, ___NS__pad, ___NS__padEnd, ___NS__padStart, ___NS__parseInt, ___NS__partial, ___NS__partialRight, ___NS__partition, ___NS__pick, ___NS__pickBy, ___NS__property, ___NS__propertyOf, ___NS__pull, ___NS__pullAll, ___NS__pullAllBy, ___NS__pullAllWith, ___NS__pullAt, ___NS__random, ___NS__range, ___NS__rangeRight, ___NS__rearg, ___NS__reduce, ___NS__reduceRight, ___NS__reject, ___NS__remove, ___NS__repeat, ___NS__replace, ___NS__rest, ___NS__result, ___NS__reverse, ___NS__round, ___NS__sample, ___NS__sampleSize, ___NS__set, ___NS__setWith, ___NS__shuffle, ___NS__size, ___NS__slice, ___NS__snakeCase, ___NS__some, ___NS__sortBy, ___NS__sortedIndex, ___NS__sortedIndexBy, ___NS__sortedIndexOf, ___NS__sortedLastIndex, ___NS__sortedLastIndexBy, ___NS__sortedLastIndexOf, ___NS__sortedUniq, ___NS__sortedUniqBy, ___NS__split, ___NS__spread, ___NS__startCase, ___NS__startsWith, ___NS__stubArray, ___NS__stubFalse, ___NS__stubObject, ___NS__stubString, ___NS__stubTrue, ___NS__subtract, ___NS__sum, ___NS__sumBy, ___NS__tail, ___NS__take, ___NS__takeRight, ___NS__takeRightWhile, ___NS__takeWhile, ___NS__tap, ___NS__template, ___NS__templateSettings, ___NS__throttle, ___NS__thru, ___NS__times, ___NS__toArray, ___NS__toFinite, ___NS__toInteger, ___NS__toLength, ___NS__toLower, ___NS__toNumber, ___NS__toPairs, ___NS__toPairsIn, ___NS__toPath, ___NS__toPlainObject, ___NS__toSafeInteger, ___NS__toString, ___NS__toUpper, ___NS__transform, ___NS__trim, ___NS__trimEnd, ___NS__trimStart, ___NS__truncate, ___NS__unary, ___NS__unescape, ___NS__union, ___NS__unionBy, ___NS__unionWith, ___NS__uniq, ___NS__uniqBy, ___NS__uniqueId, ___NS__uniqWith, ___NS__unset, ___NS__unzip, ___NS__unzipWith, ___NS__update, ___NS__updateWith, ___NS__upperCase, ___NS__upperFirst, ___NS__values, ___NS__valuesIn, ___NS__without, ___NS__words, ___NS__wrap, ___NS__xor, ___NS__xorBy, ___NS__xorWith, ___NS__zip, ___NS__zipObject, ___NS__zipObjectDeep, ___NS__zipWith } from 'tnp-core/browser-prod';\n\nimport { contentError } from '../taon-cms-content/taon-cms-content.validation';\n\nimport { TaonCmsCategoryEntity } from './taon-cms-category.entity';\nimport { TaonCmsCategoryRepository } from './taon-cms-category.repository';\nimport type { TaonCmsCategoryFields } from './taon-cms-taxonomy.validation';\n//#endregion\n\n@TaonController<TaonCmsCategoryController>({\n className: 'TaonCmsCategoryController',\n allowedMethods: ['getAll', 'saveCategory', 'deleteCategory'],\n})\nexport class TaonCmsCategoryController extends TaonBaseCrudController<TaonCmsCategoryEntity> {\n entityClassResolveFn: () => typeof TaonCmsCategoryEntity = () =>\n TaonCmsCategoryEntity;\n\n taonCmsCategoryRepository = this.injectCustomRepo(TaonCmsCategoryRepository);\n\n private readonly sessions = this.injectCustomRepo(TaonSessionRepository);\n\n private readonly auth = this.injectCustomRepo(TaonAuthContextRepository);\n\n protected async beforeEachRequest({\n req,\n res,\n t,\n }: Models__NS__TaonCtrlBeforeEachRequestParams<TaonCmsCategoryController>): Promise<void> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n @POST()\n saveCategory(\n @Query('id') id: number | null,\n @Body() input: TaonCmsCategoryFields,\n ): Taon__NS__Response<TaonCmsCategoryEntity> {\n/* */\n/* */\n return (void 0);\n }\n\n @DELETE()\n deleteCategory(@Query('id') id: number): Taon__NS__Response<void> {\n/* */\n/* */\n return (void 0);\n }\n}","//#region imports\nimport { TaonBaseProvider, TaonProvider, Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\nimport { ___NS__add, ___NS__after, ___NS__ary, ___NS__assign, ___NS__assignIn, ___NS__assignInWith, ___NS__assignWith, ___NS__at, ___NS__attempt, ___NS__before, ___NS__bind, ___NS__bindAll, ___NS__bindKey, ___NS__camelCase, ___NS__capitalize, ___NS__castArray, ___NS__ceil, ___NS__chain, ___NS__chunk, ___NS__clamp, ___NS__clone, ___NS__cloneDeep, ___NS__cloneDeepWith, ___NS__cloneWith, ___NS__compact, ___NS__concat, ___NS__cond, ___NS__conforms, ___NS__conformsTo, ___NS__constant, ___NS__countBy, ___NS__create, ___NS__curry, ___NS__curryRight, ___NS__debounce, ___NS__deburr, ___NS__defaults, ___NS__defaultsDeep, ___NS__defaultTo, ___NS__defer, ___NS__delay, ___NS__difference, ___NS__differenceBy, ___NS__differenceWith, ___NS__divide, ___NS__drop, ___NS__dropRight, ___NS__dropRightWhile, ___NS__dropWhile, ___NS__each, ___NS__eachRight, ___NS__endsWith, ___NS__entries, ___NS__entriesIn, ___NS__eq, ___NS__escape, ___NS__escapeRegExp, ___NS__every, ___NS__extend, ___NS__extendWith, ___NS__fill, ___NS__filter, ___NS__find, ___NS__findIndex, ___NS__findKey, ___NS__findLast, ___NS__findLastIndex, ___NS__findLastKey, ___NS__first, ___NS__flatMap, ___NS__flatMapDeep, ___NS__flatMapDepth, ___NS__flatten, ___NS__flattenDeep, ___NS__flattenDepth, ___NS__flip, ___NS__floor, ___NS__flow, ___NS__flowRight, ___NS__forEach, ___NS__forEachRight, ___NS__forIn, ___NS__forInRight, ___NS__forOwn, ___NS__forOwnRight, ___NS__fromPairs, ___NS__functions, ___NS__functionsIn, ___NS__get, ___NS__groupBy, ___NS__gt, ___NS__gte, ___NS__has, ___NS__hasIn, ___NS__head, ___NS__identity, ___NS__includes, ___NS__indexOf, ___NS__initial, ___NS__inRange, ___NS__intersection, ___NS__intersectionBy, ___NS__intersectionWith, ___NS__invert, ___NS__invertBy, ___NS__invoke, ___NS__invokeMap, ___NS__isArguments, ___NS__isArray, ___NS__isArrayBuffer, ___NS__isArrayLike, ___NS__isArrayLikeObject, ___NS__isBoolean, ___NS__isBuffer, ___NS__isDate, ___NS__isElement, ___NS__isEmpty, ___NS__isEqual, ___NS__isEqualWith, ___NS__isError, ___NS__isFinite, ___NS__isFunction, ___NS__isInteger, ___NS__isLeafObject, ___NS__isLength, ___NS__isMap, ___NS__isMatch, ___NS__isMatchWith, ___NS__isNaN, ___NS__isNative, ___NS__isNil, ___NS__isNull, ___NS__isNumber, ___NS__isObject, ___NS__isObjectLike, ___NS__isPlainObject, ___NS__isRegExp, ___NS__isSafeInteger, ___NS__isSet, ___NS__isString, ___NS__isSymbol, ___NS__isTypedArray, ___NS__isUndefined, ___NS__isWeakMap, ___NS__isWeakSet, ___NS__iteratee, ___NS__join, ___NS__kebabCase, ___NS__keyBy, ___NS__keys, ___NS__keysIn, ___NS__last, ___NS__lastIndexOf, ___NS__lowerCase, ___NS__lowerFirst, ___NS__lt, ___NS__lte, ___NS__map, ___NS__mapKeys, ___NS__mapValues, ___NS__matches, ___NS__matchesProperty, ___NS__max, ___NS__maxBy, ___NS__mean, ___NS__meanBy, ___NS__memoize, ___NS__merge, ___NS__mergeWith, ___NS__method, ___NS__methodOf, ___NS__min, ___NS__minBy, ___NS__mixin, ___NS__multiply, ___NS__negate, ___NS__noop, ___NS__now, ___NS__nth, ___NS__nthArg, ___NS__omit, ___NS__omitBy, ___NS__once, ___NS__orderBy, ___NS__over, ___NS__overArgs, ___NS__overEvery, ___NS__overSome, ___NS__pad, ___NS__padEnd, ___NS__padStart, ___NS__parseInt, ___NS__partial, ___NS__partialRight, ___NS__partition, ___NS__pick, ___NS__pickBy, ___NS__property, ___NS__propertyOf, ___NS__pull, ___NS__pullAll, ___NS__pullAllBy, ___NS__pullAllWith, ___NS__pullAt, ___NS__random, ___NS__range, ___NS__rangeRight, ___NS__rearg, ___NS__reduce, ___NS__reduceRight, ___NS__reject, ___NS__remove, ___NS__repeat, ___NS__replace, ___NS__rest, ___NS__result, ___NS__reverse, ___NS__round, ___NS__sample, ___NS__sampleSize, ___NS__set, ___NS__setWith, ___NS__shuffle, ___NS__size, ___NS__slice, ___NS__snakeCase, ___NS__some, ___NS__sortBy, ___NS__sortedIndex, ___NS__sortedIndexBy, ___NS__sortedIndexOf, ___NS__sortedLastIndex, ___NS__sortedLastIndexBy, ___NS__sortedLastIndexOf, ___NS__sortedUniq, ___NS__sortedUniqBy, ___NS__split, ___NS__spread, ___NS__startCase, ___NS__startsWith, ___NS__stubArray, ___NS__stubFalse, ___NS__stubObject, ___NS__stubString, ___NS__stubTrue, ___NS__subtract, ___NS__sum, ___NS__sumBy, ___NS__tail, ___NS__take, ___NS__takeRight, ___NS__takeRightWhile, ___NS__takeWhile, ___NS__tap, ___NS__template, ___NS__templateSettings, ___NS__throttle, ___NS__thru, ___NS__times, ___NS__toArray, ___NS__toFinite, ___NS__toInteger, ___NS__toLength, ___NS__toLower, ___NS__toNumber, ___NS__toPairs, ___NS__toPairsIn, ___NS__toPath, ___NS__toPlainObject, ___NS__toSafeInteger, ___NS__toString, ___NS__toUpper, ___NS__transform, ___NS__trim, ___NS__trimEnd, ___NS__trimStart, ___NS__truncate, ___NS__unary, ___NS__unescape, ___NS__union, ___NS__unionBy, ___NS__unionWith, ___NS__uniq, ___NS__uniqBy, ___NS__uniqueId, ___NS__uniqWith, ___NS__unset, ___NS__unzip, ___NS__unzipWith, ___NS__update, ___NS__updateWith, ___NS__upperCase, ___NS__upperFirst, ___NS__values, ___NS__valuesIn, ___NS__without, ___NS__words, ___NS__wrap, ___NS__xor, ___NS__xorBy, ___NS__xorWith, ___NS__zip, ___NS__zipObject, ___NS__zipObjectDeep, ___NS__zipWith } from 'tnp-core/browser-prod';\nimport { Injectable } from '@angular/core';\n//#endregion\n\n@TaonProvider({\n className: 'TaonCmsCategoryProvider',\n})\n//#region @browser\n@Injectable()\n//#endregion\nexport class TaonCmsCategoryProvider extends TaonBaseProvider {\n\n\n\n}","//#region imports\nimport { TaonBaseMiddleware, TaonMiddleware, Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\nimport { ___NS__add, ___NS__after, ___NS__ary, ___NS__assign, ___NS__assignIn, ___NS__assignInWith, ___NS__assignWith, ___NS__at, ___NS__attempt, ___NS__before, ___NS__bind, ___NS__bindAll, ___NS__bindKey, ___NS__camelCase, ___NS__capitalize, ___NS__castArray, ___NS__ceil, ___NS__chain, ___NS__chunk, ___NS__clamp, ___NS__clone, ___NS__cloneDeep, ___NS__cloneDeepWith, ___NS__cloneWith, ___NS__compact, ___NS__concat, ___NS__cond, ___NS__conforms, ___NS__conformsTo, ___NS__constant, ___NS__countBy, ___NS__create, ___NS__curry, ___NS__curryRight, ___NS__debounce, ___NS__deburr, ___NS__defaults, ___NS__defaultsDeep, ___NS__defaultTo, ___NS__defer, ___NS__delay, ___NS__difference, ___NS__differenceBy, ___NS__differenceWith, ___NS__divide, ___NS__drop, ___NS__dropRight, ___NS__dropRightWhile, ___NS__dropWhile, ___NS__each, ___NS__eachRight, ___NS__endsWith, ___NS__entries, ___NS__entriesIn, ___NS__eq, ___NS__escape, ___NS__escapeRegExp, ___NS__every, ___NS__extend, ___NS__extendWith, ___NS__fill, ___NS__filter, ___NS__find, ___NS__findIndex, ___NS__findKey, ___NS__findLast, ___NS__findLastIndex, ___NS__findLastKey, ___NS__first, ___NS__flatMap, ___NS__flatMapDeep, ___NS__flatMapDepth, ___NS__flatten, ___NS__flattenDeep, ___NS__flattenDepth, ___NS__flip, ___NS__floor, ___NS__flow, ___NS__flowRight, ___NS__forEach, ___NS__forEachRight, ___NS__forIn, ___NS__forInRight, ___NS__forOwn, ___NS__forOwnRight, ___NS__fromPairs, ___NS__functions, ___NS__functionsIn, ___NS__get, ___NS__groupBy, ___NS__gt, ___NS__gte, ___NS__has, ___NS__hasIn, ___NS__head, ___NS__identity, ___NS__includes, ___NS__indexOf, ___NS__initial, ___NS__inRange, ___NS__intersection, ___NS__intersectionBy, ___NS__intersectionWith, ___NS__invert, ___NS__invertBy, ___NS__invoke, ___NS__invokeMap, ___NS__isArguments, ___NS__isArray, ___NS__isArrayBuffer, ___NS__isArrayLike, ___NS__isArrayLikeObject, ___NS__isBoolean, ___NS__isBuffer, ___NS__isDate, ___NS__isElement, ___NS__isEmpty, ___NS__isEqual, ___NS__isEqualWith, ___NS__isError, ___NS__isFinite, ___NS__isFunction, ___NS__isInteger, ___NS__isLeafObject, ___NS__isLength, ___NS__isMap, ___NS__isMatch, ___NS__isMatchWith, ___NS__isNaN, ___NS__isNative, ___NS__isNil, ___NS__isNull, ___NS__isNumber, ___NS__isObject, ___NS__isObjectLike, ___NS__isPlainObject, ___NS__isRegExp, ___NS__isSafeInteger, ___NS__isSet, ___NS__isString, ___NS__isSymbol, ___NS__isTypedArray, ___NS__isUndefined, ___NS__isWeakMap, ___NS__isWeakSet, ___NS__iteratee, ___NS__join, ___NS__kebabCase, ___NS__keyBy, ___NS__keys, ___NS__keysIn, ___NS__last, ___NS__lastIndexOf, ___NS__lowerCase, ___NS__lowerFirst, ___NS__lt, ___NS__lte, ___NS__map, ___NS__mapKeys, ___NS__mapValues, ___NS__matches, ___NS__matchesProperty, ___NS__max, ___NS__maxBy, ___NS__mean, ___NS__meanBy, ___NS__memoize, ___NS__merge, ___NS__mergeWith, ___NS__method, ___NS__methodOf, ___NS__min, ___NS__minBy, ___NS__mixin, ___NS__multiply, ___NS__negate, ___NS__noop, ___NS__now, ___NS__nth, ___NS__nthArg, ___NS__omit, ___NS__omitBy, ___NS__once, ___NS__orderBy, ___NS__over, ___NS__overArgs, ___NS__overEvery, ___NS__overSome, ___NS__pad, ___NS__padEnd, ___NS__padStart, ___NS__parseInt, ___NS__partial, ___NS__partialRight, ___NS__partition, ___NS__pick, ___NS__pickBy, ___NS__property, ___NS__propertyOf, ___NS__pull, ___NS__pullAll, ___NS__pullAllBy, ___NS__pullAllWith, ___NS__pullAt, ___NS__random, ___NS__range, ___NS__rangeRight, ___NS__rearg, ___NS__reduce, ___NS__reduceRight, ___NS__reject, ___NS__remove, ___NS__repeat, ___NS__replace, ___NS__rest, ___NS__result, ___NS__reverse, ___NS__round, ___NS__sample, ___NS__sampleSize, ___NS__set, ___NS__setWith, ___NS__shuffle, ___NS__size, ___NS__slice, ___NS__snakeCase, ___NS__some, ___NS__sortBy, ___NS__sortedIndex, ___NS__sortedIndexBy, ___NS__sortedIndexOf, ___NS__sortedLastIndex, ___NS__sortedLastIndexBy, ___NS__sortedLastIndexOf, ___NS__sortedUniq, ___NS__sortedUniqBy, ___NS__split, ___NS__spread, ___NS__startCase, ___NS__startsWith, ___NS__stubArray, ___NS__stubFalse, ___NS__stubObject, ___NS__stubString, ___NS__stubTrue, ___NS__subtract, ___NS__sum, ___NS__sumBy, ___NS__tail, ___NS__take, ___NS__takeRight, ___NS__takeRightWhile, ___NS__takeWhile, ___NS__tap, ___NS__template, ___NS__templateSettings, ___NS__throttle, ___NS__thru, ___NS__times, ___NS__toArray, ___NS__toFinite, ___NS__toInteger, ___NS__toLength, ___NS__toLower, ___NS__toNumber, ___NS__toPairs, ___NS__toPairsIn, ___NS__toPath, ___NS__toPlainObject, ___NS__toSafeInteger, ___NS__toString, ___NS__toUpper, ___NS__transform, ___NS__trim, ___NS__trimEnd, ___NS__trimStart, ___NS__truncate, ___NS__unary, ___NS__unescape, ___NS__union, ___NS__unionBy, ___NS__unionWith, ___NS__uniq, ___NS__uniqBy, ___NS__uniqueId, ___NS__uniqWith, ___NS__unset, ___NS__unzip, ___NS__unzipWith, ___NS__update, ___NS__updateWith, ___NS__upperCase, ___NS__upperFirst, ___NS__values, ___NS__valuesIn, ___NS__without, ___NS__words, ___NS__wrap, ___NS__xor, ___NS__xorBy, ___NS__xorWith, ___NS__zip, ___NS__zipObject, ___NS__zipObjectDeep, ___NS__zipWith } from 'tnp-core/browser-prod';\n//#endregion\n\n@TaonMiddleware({\n className: 'TaonCmsCategoryMiddleware',\n})\nexport class TaonCmsCategoryMiddleware extends TaonBaseMiddleware {}","//#region imports\nimport { TaonBaseSubscriberForEntity, TaonSubscriber } from 'taon/browser-prod';\nimport { TaonCmsCategoryEntity } from './taon-cms-category.entity';\nimport { TaonCmsCategoryProvider } from './taon-cms-category.provider';\n//#endregion\n\n@TaonSubscriber<TaonCmsCategorySubscriber>({\n className: 'TaonCmsCategorySubscriber',\n // allowedEvents: ['afterUpdate'],\n})\nexport class TaonCmsCategorySubscriber extends TaonBaseSubscriberForEntity {\n taonCmsCategoryProvider = this.injectProvider(TaonCmsCategoryProvider);\n listenTo(): typeof TaonCmsCategoryEntity {\n return TaonCmsCategoryEntity;\n }\n}","//#region imports\nimport { createContext, TaonBaseContext } from 'taon/browser-prod';\n\nimport { TaonCmsCategoryEntity } from './taon-cms-category.entity';\nimport { TaonCmsCategoryController } from './taon-cms-category.controller';\nimport { TaonCmsCategoryRepository } from './taon-cms-category.repository';\nimport { TaonCmsCategoryProvider } from './taon-cms-category.provider';\nimport { TaonCmsCategoryMiddleware } from './taon-cms-category.middleware';\nimport { TaonCmsCategorySubscriber } from './taon-cms-category.subscriber';\n//#endregion\n\nexport const TaonCmsCategoryAbstractContext = createContext(() => ({\n contextName: 'TaonCmsCategoryAbstractContext',\n abstract: true,\n contexts: { TaonBaseContext },\n entities: { TaonCmsCategoryEntity },\n controllers: { TaonCmsCategoryController },\n repositories: { TaonCmsCategoryRepository },\n providers: { TaonCmsCategoryProvider },\n middlewares: { TaonCmsCategoryMiddleware },\n subscribers: { TaonCmsCategorySubscriber },\n}));\n","//#region imports\nimport { Column, CreateDateColumn, CustomColumn, PrimaryGeneratedColumn, TaonBaseAbstractEntity, TaonBaseEntity, TaonEntity, UpdateDateColumn, Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\nimport { ___NS__add, ___NS__after, ___NS__ary, ___NS__assign, ___NS__assignIn, ___NS__assignInWith, ___NS__assignWith, ___NS__at, ___NS__attempt, ___NS__before, ___NS__bind, ___NS__bindAll, ___NS__bindKey, ___NS__camelCase, ___NS__capitalize, ___NS__castArray, ___NS__ceil, ___NS__chain, ___NS__chunk, ___NS__clamp, ___NS__clone, ___NS__cloneDeep, ___NS__cloneDeepWith, ___NS__cloneWith, ___NS__compact, ___NS__concat, ___NS__cond, ___NS__conforms, ___NS__conformsTo, ___NS__constant, ___NS__countBy, ___NS__create, ___NS__curry, ___NS__curryRight, ___NS__debounce, ___NS__deburr, ___NS__defaults, ___NS__defaultsDeep, ___NS__defaultTo, ___NS__defer, ___NS__delay, ___NS__difference, ___NS__differenceBy, ___NS__differenceWith, ___NS__divide, ___NS__drop, ___NS__dropRight, ___NS__dropRightWhile, ___NS__dropWhile, ___NS__each, ___NS__eachRight, ___NS__endsWith, ___NS__entries, ___NS__entriesIn, ___NS__eq, ___NS__escape, ___NS__escapeRegExp, ___NS__every, ___NS__extend, ___NS__extendWith, ___NS__fill, ___NS__filter, ___NS__find, ___NS__findIndex, ___NS__findKey, ___NS__findLast, ___NS__findLastIndex, ___NS__findLastKey, ___NS__first, ___NS__flatMap, ___NS__flatMapDeep, ___NS__flatMapDepth, ___NS__flatten, ___NS__flattenDeep, ___NS__flattenDepth, ___NS__flip, ___NS__floor, ___NS__flow, ___NS__flowRight, ___NS__forEach, ___NS__forEachRight, ___NS__forIn, ___NS__forInRight, ___NS__forOwn, ___NS__forOwnRight, ___NS__fromPairs, ___NS__functions, ___NS__functionsIn, ___NS__get, ___NS__groupBy, ___NS__gt, ___NS__gte, ___NS__has, ___NS__hasIn, ___NS__head, ___NS__identity, ___NS__includes, ___NS__indexOf, ___NS__initial, ___NS__inRange, ___NS__intersection, ___NS__intersectionBy, ___NS__intersectionWith, ___NS__invert, ___NS__invertBy, ___NS__invoke, ___NS__invokeMap, ___NS__isArguments, ___NS__isArray, ___NS__isArrayBuffer, ___NS__isArrayLike, ___NS__isArrayLikeObject, ___NS__isBoolean, ___NS__isBuffer, ___NS__isDate, ___NS__isElement, ___NS__isEmpty, ___NS__isEqual, ___NS__isEqualWith, ___NS__isError, ___NS__isFinite, ___NS__isFunction, ___NS__isInteger, ___NS__isLeafObject, ___NS__isLength, ___NS__isMap, ___NS__isMatch, ___NS__isMatchWith, ___NS__isNaN, ___NS__isNative, ___NS__isNil, ___NS__isNull, ___NS__isNumber, ___NS__isObject, ___NS__isObjectLike, ___NS__isPlainObject, ___NS__isRegExp, ___NS__isSafeInteger, ___NS__isSet, ___NS__isString, ___NS__isSymbol, ___NS__isTypedArray, ___NS__isUndefined, ___NS__isWeakMap, ___NS__isWeakSet, ___NS__iteratee, ___NS__join, ___NS__kebabCase, ___NS__keyBy, ___NS__keys, ___NS__keysIn, ___NS__last, ___NS__lastIndexOf, ___NS__lowerCase, ___NS__lowerFirst, ___NS__lt, ___NS__lte, ___NS__map, ___NS__mapKeys, ___NS__mapValues, ___NS__matches, ___NS__matchesProperty, ___NS__max, ___NS__maxBy, ___NS__mean, ___NS__meanBy, ___NS__memoize, ___NS__merge, ___NS__mergeWith, ___NS__method, ___NS__methodOf, ___NS__min, ___NS__minBy, ___NS__mixin, ___NS__multiply, ___NS__negate, ___NS__noop, ___NS__now, ___NS__nth, ___NS__nthArg, ___NS__omit, ___NS__omitBy, ___NS__once, ___NS__orderBy, ___NS__over, ___NS__overArgs, ___NS__overEvery, ___NS__overSome, ___NS__pad, ___NS__padEnd, ___NS__padStart, ___NS__parseInt, ___NS__partial, ___NS__partialRight, ___NS__partition, ___NS__pick, ___NS__pickBy, ___NS__property, ___NS__propertyOf, ___NS__pull, ___NS__pullAll, ___NS__pullAllBy, ___NS__pullAllWith, ___NS__pullAt, ___NS__random, ___NS__range, ___NS__rangeRight, ___NS__rearg, ___NS__reduce, ___NS__reduceRight, ___NS__reject, ___NS__remove, ___NS__repeat, ___NS__replace, ___NS__rest, ___NS__result, ___NS__reverse, ___NS__round, ___NS__sample, ___NS__sampleSize, ___NS__set, ___NS__setWith, ___NS__shuffle, ___NS__size, ___NS__slice, ___NS__snakeCase, ___NS__some, ___NS__sortBy, ___NS__sortedIndex, ___NS__sortedIndexBy, ___NS__sortedIndexOf, ___NS__sortedLastIndex, ___NS__sortedLastIndexBy, ___NS__sortedLastIndexOf, ___NS__sortedUniq, ___NS__sortedUniqBy, ___NS__split, ___NS__spread, ___NS__startCase, ___NS__startsWith, ___NS__stubArray, ___NS__stubFalse, ___NS__stubObject, ___NS__stubString, ___NS__stubTrue, ___NS__subtract, ___NS__sum, ___NS__sumBy, ___NS__tail, ___NS__take, ___NS__takeRight, ___NS__takeRightWhile, ___NS__takeWhile, ___NS__tap, ___NS__template, ___NS__templateSettings, ___NS__throttle, ___NS__thru, ___NS__times, ___NS__toArray, ___NS__toFinite, ___NS__toInteger, ___NS__toLength, ___NS__toLower, ___NS__toNumber, ___NS__toPairs, ___NS__toPairsIn, ___NS__toPath, ___NS__toPlainObject, ___NS__toSafeInteger, ___NS__toString, ___NS__toUpper, ___NS__transform, ___NS__trim, ___NS__trimEnd, ___NS__trimStart, ___NS__truncate, ___NS__unary, ___NS__unescape, ___NS__union, ___NS__unionBy, ___NS__unionWith, ___NS__uniq, ___NS__uniqBy, ___NS__uniqueId, ___NS__uniqWith, ___NS__unset, ___NS__unzip, ___NS__unzipWith, ___NS__update, ___NS__updateWith, ___NS__upperCase, ___NS__upperFirst, ___NS__values, ___NS__valuesIn, ___NS__without, ___NS__words, ___NS__wrap, ___NS__xor, ___NS__xorBy, ___NS__xorWith, ___NS__zip, ___NS__zipObject, ___NS__zipObjectDeep, ___NS__zipWith } from 'tnp-core/browser-prod';\n\nimport { TaonCmsCommentDefaultsValues } from './taon-cms-comment.constants';\n//#endregion\n\n@TaonEntity({\n className: 'TaonCmsCommentEntity',\n createTable: true,\n})\nexport class TaonCmsCommentEntity extends TaonBaseEntity<TaonCmsCommentEntity> {\n/* */\n/* */\n \n id: number;\n\n/* */\n/* */\n \n version: number;\n\n/* */\n/* */\n \n contentId: number;\n\n/* */\n/* */\n \n parentCommentId: number | null;\n\n/* */\n/* */\n \n userId: number | null;\n\n/* */\n/* */\n \n body: string;\n\n/* */\n/* */\n \n status: string;\n\n/* */\n/* */\n \n createdAt: Date;\n\n/* */\n/* */\n \n updatedAt: Date;\n}","//#region imports\nimport { Column, CustomColumn, PrimaryGeneratedColumn, TaonBaseAbstractEntity, TaonBaseEntity, TaonEntity, Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\nimport { ___NS__add, ___NS__after, ___NS__ary, ___NS__assign, ___NS__assignIn, ___NS__assignInWith, ___NS__assignWith, ___NS__at, ___NS__attempt, ___NS__before, ___NS__bind, ___NS__bindAll, ___NS__bindKey, ___NS__camelCase, ___NS__capitalize, ___NS__castArray, ___NS__ceil, ___NS__chain, ___NS__chunk, ___NS__clamp, ___NS__clone, ___NS__cloneDeep, ___NS__cloneDeepWith, ___NS__cloneWith, ___NS__compact, ___NS__concat, ___NS__cond, ___NS__conforms, ___NS__conformsTo, ___NS__constant, ___NS__countBy, ___NS__create, ___NS__curry, ___NS__curryRight, ___NS__debounce, ___NS__deburr, ___NS__defaults, ___NS__defaultsDeep, ___NS__defaultTo, ___NS__defer, ___NS__delay, ___NS__difference, ___NS__differenceBy, ___NS__differenceWith, ___NS__divide, ___NS__drop, ___NS__dropRight, ___NS__dropRightWhile, ___NS__dropWhile, ___NS__each, ___NS__eachRight, ___NS__endsWith, ___NS__entries, ___NS__entriesIn, ___NS__eq, ___NS__escape, ___NS__escapeRegExp, ___NS__every, ___NS__extend, ___NS__extendWith, ___NS__fill, ___NS__filter, ___NS__find, ___NS__findIndex, ___NS__findKey, ___NS__findLast, ___NS__findLastIndex, ___NS__findLastKey, ___NS__first, ___NS__flatMap, ___NS__flatMapDeep, ___NS__flatMapDepth, ___NS__flatten, ___NS__flattenDeep, ___NS__flattenDepth, ___NS__flip, ___NS__floor, ___NS__flow, ___NS__flowRight, ___NS__forEach, ___NS__forEachRight, ___NS__forIn, ___NS__forInRight, ___NS__forOwn, ___NS__forOwnRight, ___NS__fromPairs, ___NS__functions, ___NS__functionsIn, ___NS__get, ___NS__groupBy, ___NS__gt, ___NS__gte, ___NS__has, ___NS__hasIn, ___NS__head, ___NS__identity, ___NS__includes, ___NS__indexOf, ___NS__initial, ___NS__inRange, ___NS__intersection, ___NS__intersectionBy, ___NS__intersectionWith, ___NS__invert, ___NS__invertBy, ___NS__invoke, ___NS__invokeMap, ___NS__isArguments, ___NS__isArray, ___NS__isArrayBuffer, ___NS__isArrayLike, ___NS__isArrayLikeObject, ___NS__isBoolean, ___NS__isBuffer, ___NS__isDate, ___NS__isElement, ___NS__isEmpty, ___NS__isEqual, ___NS__isEqualWith, ___NS__isError, ___NS__isFinite, ___NS__isFunction, ___NS__isInteger, ___NS__isLeafObject, ___NS__isLength, ___NS__isMap, ___NS__isMatch, ___NS__isMatchWith, ___NS__isNaN, ___NS__isNative, ___NS__isNil, ___NS__isNull, ___NS__isNumber, ___NS__isObject, ___NS__isObjectLike, ___NS__isPlainObject, ___NS__isRegExp, ___NS__isSafeInteger, ___NS__isSet, ___NS__isString, ___NS__isSymbol, ___NS__isTypedArray, ___NS__isUndefined, ___NS__isWeakMap, ___NS__isWeakSet, ___NS__iteratee, ___NS__join, ___NS__kebabCase, ___NS__keyBy, ___NS__keys, ___NS__keysIn, ___NS__last, ___NS__lastIndexOf, ___NS__lowerCase, ___NS__lowerFirst, ___NS__lt, ___NS__lte, ___NS__map, ___NS__mapKeys, ___NS__mapValues, ___NS__matches, ___NS__matchesProperty, ___NS__max, ___NS__maxBy, ___NS__mean, ___NS__meanBy, ___NS__memoize, ___NS__merge, ___NS__mergeWith, ___NS__method, ___NS__methodOf, ___NS__min, ___NS__minBy, ___NS__mixin, ___NS__multiply, ___NS__negate, ___NS__noop, ___NS__now, ___NS__nth, ___NS__nthArg, ___NS__omit, ___NS__omitBy, ___NS__once, ___NS__orderBy, ___NS__over, ___NS__overArgs, ___NS__overEvery, ___NS__overSome, ___NS__pad, ___NS__padEnd, ___NS__padStart, ___NS__parseInt, ___NS__partial, ___NS__partialRight, ___NS__partition, ___NS__pick, ___NS__pickBy, ___NS__property, ___NS__propertyOf, ___NS__pull, ___NS__pullAll, ___NS__pullAllBy, ___NS__pullAllWith, ___NS__pullAt, ___NS__random, ___NS__range, ___NS__rangeRight, ___NS__rearg, ___NS__reduce, ___NS__reduceRight, ___NS__reject, ___NS__remove, ___NS__repeat, ___NS__replace, ___NS__rest, ___NS__result, ___NS__reverse, ___NS__round, ___NS__sample, ___NS__sampleSize, ___NS__set, ___NS__setWith, ___NS__shuffle, ___NS__size, ___NS__slice, ___NS__snakeCase, ___NS__some, ___NS__sortBy, ___NS__sortedIndex, ___NS__sortedIndexBy, ___NS__sortedIndexOf, ___NS__sortedLastIndex, ___NS__sortedLastIndexBy, ___NS__sortedLastIndexOf, ___NS__sortedUniq, ___NS__sortedUniqBy, ___NS__split, ___NS__spread, ___NS__startCase, ___NS__startsWith, ___NS__stubArray, ___NS__stubFalse, ___NS__stubObject, ___NS__stubString, ___NS__stubTrue, ___NS__subtract, ___NS__sum, ___NS__sumBy, ___NS__tail, ___NS__take, ___NS__takeRight, ___NS__takeRightWhile, ___NS__takeWhile, ___NS__tap, ___NS__template, ___NS__templateSettings, ___NS__throttle, ___NS__thru, ___NS__times, ___NS__toArray, ___NS__toFinite, ___NS__toInteger, ___NS__toLength, ___NS__toLower, ___NS__toNumber, ___NS__toPairs, ___NS__toPairsIn, ___NS__toPath, ___NS__toPlainObject, ___NS__toSafeInteger, ___NS__toString, ___NS__toUpper, ___NS__transform, ___NS__trim, ___NS__trimEnd, ___NS__trimStart, ___NS__truncate, ___NS__unary, ___NS__unescape, ___NS__union, ___NS__unionBy, ___NS__unionWith, ___NS__uniq, ___NS__uniqBy, ___NS__uniqueId, ___NS__uniqWith, ___NS__unset, ___NS__unzip, ___NS__unzipWith, ___NS__update, ___NS__updateWith, ___NS__upperCase, ___NS__upperFirst, ___NS__values, ___NS__valuesIn, ___NS__without, ___NS__words, ___NS__wrap, ___NS__xor, ___NS__xorBy, ___NS__xorWith, ___NS__zip, ___NS__zipObject, ___NS__zipObjectDeep, ___NS__zipWith } from 'tnp-core/browser-prod';\n\nimport type { TaonCmsContentSnapshot } from '../taon-cms-content/taon-cms-content.models';\n\nimport { TaonCmsContentRevisionDefaultsValues } from './taon-cms-content-revision.constants';\n//#endregion\n\n@TaonEntity({\n className: 'TaonCmsContentRevisionEntity',\n createTable: true,\n})\nexport class TaonCmsContentRevisionEntity extends TaonBaseEntity<TaonCmsContentRevisionEntity> {\n/* */\n/* */\n \n id: number;\n\n/* */\n/* */\n \n version: number;\n\n/* */\n/* */\n \n contentId: number;\n\n/* */\n/* */\n \n revisionNumber: number;\n\n/* */\n/* */\n \n title: string;\n\n/* */\n/* */\n \n body: string | null;\n\n/* */\n/* */\n \n snapshot: TaonCmsContentSnapshot | null;\n\n/* */\n/* */\n \n createdByUserId: number | null;\n\n/* */\n/* */\n \n createdAt: Date;\n}","//#region imports\nimport { TaonBaseRepository, TaonRepository } from 'taon/browser-prod';\nimport { Raw } from 'taon-typeorm/browser-prod';\nimport type { EntityManager } from 'taon-typeorm/browser-prod';\n\nimport type { TaonCmsContentEntity } from '../taon-cms-content/taon-cms-content.entity';\nimport type { TaonCmsContentSnapshot } from '../taon-cms-content/taon-cms-content.models';\nimport { contentError } from '../taon-cms-content/taon-cms-content.validation';\nimport { TaonCmsContentUtils__NS__isActive, TaonCmsContentUtils__NS__orderRelatedPosts } from '../taon-cms-content/taon-cms-content.utils';\n\nimport { TaonCmsContentRevisionEntity } from './taon-cms-content-revision.entity';\n//#endregion\n\n@TaonRepository({\n className: 'TaonCmsContentRevisionRepository',\n})\nexport class TaonCmsContentRevisionRepository extends TaonBaseRepository<TaonCmsContentRevisionEntity> {\n entityClassResolveFn: () => typeof TaonCmsContentRevisionEntity = () =>\n TaonCmsContentRevisionEntity;\n\n async applyRelatedPostOrder(\n content: TaonCmsContentEntity,\n manager: EntityManager,\n ): Promise<void> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n async listForContent(\n contentId: number,\n manager: EntityManager,\n ): Promise<TaonCmsContentRevisionEntity[]> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n async requireRevision(\n contentId: number,\n revisionNumber: number,\n manager: EntityManager,\n ): Promise<TaonCmsContentRevisionEntity> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n async recordContent(\n content: TaonCmsContentEntity,\n snapshot: TaonCmsContentSnapshot,\n manager: EntityManager,\n ): Promise<TaonCmsContentRevisionEntity> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n}","//#region imports\nimport { Column, CustomColumn, TaonBaseAbstractEntity, TaonEntity, Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\nimport { ___NS__add, ___NS__after, ___NS__ary, ___NS__assign, ___NS__assignIn, ___NS__assignInWith, ___NS__assignWith, ___NS__at, ___NS__attempt, ___NS__before, ___NS__bind, ___NS__bindAll, ___NS__bindKey, ___NS__camelCase, ___NS__capitalize, ___NS__castArray, ___NS__ceil, ___NS__chain, ___NS__chunk, ___NS__clamp, ___NS__clone, ___NS__cloneDeep, ___NS__cloneDeepWith, ___NS__cloneWith, ___NS__compact, ___NS__concat, ___NS__cond, ___NS__conforms, ___NS__conformsTo, ___NS__constant, ___NS__countBy, ___NS__create, ___NS__curry, ___NS__curryRight, ___NS__debounce, ___NS__deburr, ___NS__defaults, ___NS__defaultsDeep, ___NS__defaultTo, ___NS__defer, ___NS__delay, ___NS__difference, ___NS__differenceBy, ___NS__differenceWith, ___NS__divide, ___NS__drop, ___NS__dropRight, ___NS__dropRightWhile, ___NS__dropWhile, ___NS__each, ___NS__eachRight, ___NS__endsWith, ___NS__entries, ___NS__entriesIn, ___NS__eq, ___NS__escape, ___NS__escapeRegExp, ___NS__every, ___NS__extend, ___NS__extendWith, ___NS__fill, ___NS__filter, ___NS__find, ___NS__findIndex, ___NS__findKey, ___NS__findLast, ___NS__findLastIndex, ___NS__findLastKey, ___NS__first, ___NS__flatMap, ___NS__flatMapDeep, ___NS__flatMapDepth, ___NS__flatten, ___NS__flattenDeep, ___NS__flattenDepth, ___NS__flip, ___NS__floor, ___NS__flow, ___NS__flowRight, ___NS__forEach, ___NS__forEachRight, ___NS__forIn, ___NS__forInRight, ___NS__forOwn, ___NS__forOwnRight, ___NS__fromPairs, ___NS__functions, ___NS__functionsIn, ___NS__get, ___NS__groupBy, ___NS__gt, ___NS__gte, ___NS__has, ___NS__hasIn, ___NS__head, ___NS__identity, ___NS__includes, ___NS__indexOf, ___NS__initial, ___NS__inRange, ___NS__intersection, ___NS__intersectionBy, ___NS__intersectionWith, ___NS__invert, ___NS__invertBy, ___NS__invoke, ___NS__invokeMap, ___NS__isArguments, ___NS__isArray, ___NS__isArrayBuffer, ___NS__isArrayLike, ___NS__isArrayLikeObject, ___NS__isBoolean, ___NS__isBuffer, ___NS__isDate, ___NS__isElement, ___NS__isEmpty, ___NS__isEqual, ___NS__isEqualWith, ___NS__isError, ___NS__isFinite, ___NS__isFunction, ___NS__isInteger, ___NS__isLeafObject, ___NS__isLength, ___NS__isMap, ___NS__isMatch, ___NS__isMatchWith, ___NS__isNaN, ___NS__isNative, ___NS__isNil, ___NS__isNull, ___NS__isNumber, ___NS__isObject, ___NS__isObjectLike, ___NS__isPlainObject, ___NS__isRegExp, ___NS__isSafeInteger, ___NS__isSet, ___NS__isString, ___NS__isSymbol, ___NS__isTypedArray, ___NS__isUndefined, ___NS__isWeakMap, ___NS__isWeakSet, ___NS__iteratee, ___NS__join, ___NS__kebabCase, ___NS__keyBy, ___NS__keys, ___NS__keysIn, ___NS__last, ___NS__lastIndexOf, ___NS__lowerCase, ___NS__lowerFirst, ___NS__lt, ___NS__lte, ___NS__map, ___NS__mapKeys, ___NS__mapValues, ___NS__matches, ___NS__matchesProperty, ___NS__max, ___NS__maxBy, ___NS__mean, ___NS__meanBy, ___NS__memoize, ___NS__merge, ___NS__mergeWith, ___NS__method, ___NS__methodOf, ___NS__min, ___NS__minBy, ___NS__mixin, ___NS__multiply, ___NS__negate, ___NS__noop, ___NS__now, ___NS__nth, ___NS__nthArg, ___NS__omit, ___NS__omitBy, ___NS__once, ___NS__orderBy, ___NS__over, ___NS__overArgs, ___NS__overEvery, ___NS__overSome, ___NS__pad, ___NS__padEnd, ___NS__padStart, ___NS__parseInt, ___NS__partial, ___NS__partialRight, ___NS__partition, ___NS__pick, ___NS__pickBy, ___NS__property, ___NS__propertyOf, ___NS__pull, ___NS__pullAll, ___NS__pullAllBy, ___NS__pullAllWith, ___NS__pullAt, ___NS__random, ___NS__range, ___NS__rangeRight, ___NS__rearg, ___NS__reduce, ___NS__reduceRight, ___NS__reject, ___NS__remove, ___NS__repeat, ___NS__replace, ___NS__rest, ___NS__result, ___NS__reverse, ___NS__round, ___NS__sample, ___NS__sampleSize, ___NS__set, ___NS__setWith, ___NS__shuffle, ___NS__size, ___NS__slice, ___NS__snakeCase, ___NS__some, ___NS__sortBy, ___NS__sortedIndex, ___NS__sortedIndexBy, ___NS__sortedIndexOf, ___NS__sortedLastIndex, ___NS__sortedLastIndexBy, ___NS__sortedLastIndexOf, ___NS__sortedUniq, ___NS__sortedUniqBy, ___NS__split, ___NS__spread, ___NS__startCase, ___NS__startsWith, ___NS__stubArray, ___NS__stubFalse, ___NS__stubObject, ___NS__stubString, ___NS__stubTrue, ___NS__subtract, ___NS__sum, ___NS__sumBy, ___NS__tail, ___NS__take, ___NS__takeRight, ___NS__takeRightWhile, ___NS__takeWhile, ___NS__tap, ___NS__template, ___NS__templateSettings, ___NS__throttle, ___NS__thru, ___NS__times, ___NS__toArray, ___NS__toFinite, ___NS__toInteger, ___NS__toLength, ___NS__toLower, ___NS__toNumber, ___NS__toPairs, ___NS__toPairsIn, ___NS__toPath, ___NS__toPlainObject, ___NS__toSafeInteger, ___NS__toString, ___NS__toUpper, ___NS__transform, ___NS__trim, ___NS__trimEnd, ___NS__trimStart, ___NS__truncate, ___NS__unary, ___NS__unescape, ___NS__union, ___NS__unionBy, ___NS__unionWith, ___NS__uniq, ___NS__uniqBy, ___NS__uniqueId, ___NS__uniqWith, ___NS__unset, ___NS__unzip, ___NS__unzipWith, ___NS__update, ___NS__updateWith, ___NS__upperCase, ___NS__upperFirst, ___NS__values, ___NS__valuesIn, ___NS__without, ___NS__words, ___NS__wrap, ___NS__xor, ___NS__xorBy, ___NS__xorWith, ___NS__zip, ___NS__zipObject, ___NS__zipObjectDeep, ___NS__zipWith } from 'tnp-core/browser-prod';\n\nimport { TaonCmsContentTagDefaultsValues } from './taon-cms-content-tag.constants';\n//#endregion\n\n@TaonEntity({\n className: 'TaonCmsContentTagEntity',\n createTable: true,\n})\nexport class TaonCmsContentTagEntity extends TaonBaseAbstractEntity<TaonCmsContentTagEntity> {\n/* */\n/* */\n \n contentId: number;\n\n/* */\n/* */\n \n tagId: number;\n}","//#region imports\nimport { TaonBaseRepository, TaonRepository } from 'taon/browser-prod';\nimport { Raw } from 'taon-typeorm/browser-prod';\nimport type { EntityManager } from 'taon-typeorm/browser-prod';\n\nimport { TaonCmsContentTagEntity } from './taon-cms-content-tag.entity';\n//#endregion\n\n@TaonRepository({\n className: 'TaonCmsContentTagRepository',\n})\nexport class TaonCmsContentTagRepository extends TaonBaseRepository<TaonCmsContentTagEntity> {\n entityClassResolveFn: () => typeof TaonCmsContentTagEntity = () =>\n TaonCmsContentTagEntity;\n\n async findTagIds(\n contentId: number,\n manager: EntityManager,\n ): Promise<number[]> {\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n async replaceTags(\n contentId: number,\n tagIds: number[],\n manager: EntityManager,\n ): Promise<void> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n}\n","//#region imports\nimport { Column, CustomColumn, TaonBaseAbstractEntity, TaonEntity, Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\nimport { ___NS__add, ___NS__after, ___NS__ary, ___NS__assign, ___NS__assignIn, ___NS__assignInWith, ___NS__assignWith, ___NS__at, ___NS__attempt, ___NS__before, ___NS__bind, ___NS__bindAll, ___NS__bindKey, ___NS__camelCase, ___NS__capitalize, ___NS__castArray, ___NS__ceil, ___NS__chain, ___NS__chunk, ___NS__clamp, ___NS__clone, ___NS__cloneDeep, ___NS__cloneDeepWith, ___NS__cloneWith, ___NS__compact, ___NS__concat, ___NS__cond, ___NS__conforms, ___NS__conformsTo, ___NS__constant, ___NS__countBy, ___NS__create, ___NS__curry, ___NS__curryRight, ___NS__debounce, ___NS__deburr, ___NS__defaults, ___NS__defaultsDeep, ___NS__defaultTo, ___NS__defer, ___NS__delay, ___NS__difference, ___NS__differenceBy, ___NS__differenceWith, ___NS__divide, ___NS__drop, ___NS__dropRight, ___NS__dropRightWhile, ___NS__dropWhile, ___NS__each, ___NS__eachRight, ___NS__endsWith, ___NS__entries, ___NS__entriesIn, ___NS__eq, ___NS__escape, ___NS__escapeRegExp, ___NS__every, ___NS__extend, ___NS__extendWith, ___NS__fill, ___NS__filter, ___NS__find, ___NS__findIndex, ___NS__findKey, ___NS__findLast, ___NS__findLastIndex, ___NS__findLastKey, ___NS__first, ___NS__flatMap, ___NS__flatMapDeep, ___NS__flatMapDepth, ___NS__flatten, ___NS__flattenDeep, ___NS__flattenDepth, ___NS__flip, ___NS__floor, ___NS__flow, ___NS__flowRight, ___NS__forEach, ___NS__forEachRight, ___NS__forIn, ___NS__forInRight, ___NS__forOwn, ___NS__forOwnRight, ___NS__fromPairs, ___NS__functions, ___NS__functionsIn, ___NS__get, ___NS__groupBy, ___NS__gt, ___NS__gte, ___NS__has, ___NS__hasIn, ___NS__head, ___NS__identity, ___NS__includes, ___NS__indexOf, ___NS__initial, ___NS__inRange, ___NS__intersection, ___NS__intersectionBy, ___NS__intersectionWith, ___NS__invert, ___NS__invertBy, ___NS__invoke, ___NS__invokeMap, ___NS__isArguments, ___NS__isArray, ___NS__isArrayBuffer, ___NS__isArrayLike, ___NS__isArrayLikeObject, ___NS__isBoolean, ___NS__isBuffer, ___NS__isDate, ___NS__isElement, ___NS__isEmpty, ___NS__isEqual, ___NS__isEqualWith, ___NS__isError, ___NS__isFinite, ___NS__isFunction, ___NS__isInteger, ___NS__isLeafObject, ___NS__isLength, ___NS__isMap, ___NS__isMatch, ___NS__isMatchWith, ___NS__isNaN, ___NS__isNative, ___NS__isNil, ___NS__isNull, ___NS__isNumber, ___NS__isObject, ___NS__isObjectLike, ___NS__isPlainObject, ___NS__isRegExp, ___NS__isSafeInteger, ___NS__isSet, ___NS__isString, ___NS__isSymbol, ___NS__isTypedArray, ___NS__isUndefined, ___NS__isWeakMap, ___NS__isWeakSet, ___NS__iteratee, ___NS__join, ___NS__kebabCase, ___NS__keyBy, ___NS__keys, ___NS__keysIn, ___NS__last, ___NS__lastIndexOf, ___NS__lowerCase, ___NS__lowerFirst, ___NS__lt, ___NS__lte, ___NS__map, ___NS__mapKeys, ___NS__mapValues, ___NS__matches, ___NS__matchesProperty, ___NS__max, ___NS__maxBy, ___NS__mean, ___NS__meanBy, ___NS__memoize, ___NS__merge, ___NS__mergeWith, ___NS__method, ___NS__methodOf, ___NS__min, ___NS__minBy, ___NS__mixin, ___NS__multiply, ___NS__negate, ___NS__noop, ___NS__now, ___NS__nth, ___NS__nthArg, ___NS__omit, ___NS__omitBy, ___NS__once, ___NS__orderBy, ___NS__over, ___NS__overArgs, ___NS__overEvery, ___NS__overSome, ___NS__pad, ___NS__padEnd, ___NS__padStart, ___NS__parseInt, ___NS__partial, ___NS__partialRight, ___NS__partition, ___NS__pick, ___NS__pickBy, ___NS__property, ___NS__propertyOf, ___NS__pull, ___NS__pullAll, ___NS__pullAllBy, ___NS__pullAllWith, ___NS__pullAt, ___NS__random, ___NS__range, ___NS__rangeRight, ___NS__rearg, ___NS__reduce, ___NS__reduceRight, ___NS__reject, ___NS__remove, ___NS__repeat, ___NS__replace, ___NS__rest, ___NS__result, ___NS__reverse, ___NS__round, ___NS__sample, ___NS__sampleSize, ___NS__set, ___NS__setWith, ___NS__shuffle, ___NS__size, ___NS__slice, ___NS__snakeCase, ___NS__some, ___NS__sortBy, ___NS__sortedIndex, ___NS__sortedIndexBy, ___NS__sortedIndexOf, ___NS__sortedLastIndex, ___NS__sortedLastIndexBy, ___NS__sortedLastIndexOf, ___NS__sortedUniq, ___NS__sortedUniqBy, ___NS__split, ___NS__spread, ___NS__startCase, ___NS__startsWith, ___NS__stubArray, ___NS__stubFalse, ___NS__stubObject, ___NS__stubString, ___NS__stubTrue, ___NS__subtract, ___NS__sum, ___NS__sumBy, ___NS__tail, ___NS__take, ___NS__takeRight, ___NS__takeRightWhile, ___NS__takeWhile, ___NS__tap, ___NS__template, ___NS__templateSettings, ___NS__throttle, ___NS__thru, ___NS__times, ___NS__toArray, ___NS__toFinite, ___NS__toInteger, ___NS__toLength, ___NS__toLower, ___NS__toNumber, ___NS__toPairs, ___NS__toPairsIn, ___NS__toPath, ___NS__toPlainObject, ___NS__toSafeInteger, ___NS__toString, ___NS__toUpper, ___NS__transform, ___NS__trim, ___NS__trimEnd, ___NS__trimStart, ___NS__truncate, ___NS__unary, ___NS__unescape, ___NS__union, ___NS__unionBy, ___NS__unionWith, ___NS__uniq, ___NS__uniqBy, ___NS__uniqueId, ___NS__uniqWith, ___NS__unset, ___NS__unzip, ___NS__unzipWith, ___NS__update, ___NS__updateWith, ___NS__upperCase, ___NS__upperFirst, ___NS__values, ___NS__valuesIn, ___NS__without, ___NS__words, ___NS__wrap, ___NS__xor, ___NS__xorBy, ___NS__xorWith, ___NS__zip, ___NS__zipObject, ___NS__zipObjectDeep, ___NS__zipWith } from 'tnp-core/browser-prod';\n\nimport { TaonCmsTagDefaultsValues } from './taon-cms-tag.constants';\n//#endregion\n\n@TaonEntity({\n className: 'TaonCmsTagEntity',\n createTable: true,\n})\nexport class TaonCmsTagEntity extends TaonBaseAbstractEntity<TaonCmsTagEntity> {\n/* */\n/* */\n \n name: string;\n\n/* */\n/* */\n \n slug: string;\n\n/* */\n/* */\n \n description: string | null;\n}","//#region imports\nimport { TaonBaseRepository, TaonRepository } from 'taon/browser-prod';\nimport { Raw } from 'taon-typeorm/browser-prod';\nimport type { EntityManager } from 'taon-typeorm/browser-prod';\nimport { Translation } from '@taon-dev/i18n/browser-prod';\nimport { Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\nimport { contentError } from '../taon-cms-content/taon-cms-content.validation';\nimport { requireContentId } from '../taon-cms-content/taon-cms-content.validation';\nimport { TaonCmsContentTagEntity } from '../taon-cms-content-tag/taon-cms-content-tag.entity';\nimport {\n TaonCmsTaxonomyFields,\n validateTaxonomy,\n} from '../taon-cms-category/taon-cms-taxonomy.validation';\n\nimport { TaonCmsTagEntity } from './taon-cms-tag.entity';\n//#endregion\n\nconst t = Translation.for('src/lib/taon-cms-tag/taon-cms-tag.repository.ts', {\"src/lib/taon-cms-tag/taon-cms-tag.controller.ts\":{\"en-US\":async () => (await import('./i18n/taon-cms-tag.controller.ts.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-tag.controller.ts.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-tag.controller.ts.de-DE.i18n.data')).default},\"src/lib/taon-cms-tag/taon-cms-tag.repository.ts\":{\"en-US\":async () => (await import('./i18n/taon-cms-tag.repository.ts.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-tag.repository.ts.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-tag.repository.ts.de-DE.i18n.data')).default}} as any);\n\n@TaonRepository({\n className: 'TaonCmsTagRepository',\n})\nexport class TaonCmsTagRepository extends TaonBaseRepository<TaonCmsTagEntity> {\n entityClassResolveFn: () => typeof TaonCmsTagEntity = () => TaonCmsTagEntity;\n\n async saveTag(\n id: number | null,\n input: TaonCmsTaxonomyFields,\n ): Promise<TaonCmsTagEntity> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n async deleteTag(id: number): Promise<void> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n async requireTags(ids: number[], manager: EntityManager): Promise<void> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n /**\n * TODO remove this demo example method\n */\n async countEntitesWithEvenId(): Promise<number> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n}","import { Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\n\nimport type { TaonCmsContentFields } from './taon-cms-content.models';\nimport { TaonCmsContentType } from './taon-cms-content.models';\n\nexport function contentError(message: string, status = 400): never {\n Taon__NS__error({ message, status });\n throw new Error(message);\n}\n\nexport function requireContentId(value: number, name = 'contentId'): void {\n if (!Number.isSafeInteger(value) || value <= 0) {\n contentError(`${name} must be a positive integer.`);\n }\n}\n\nexport function requireContentVersion(\n value: number,\n name = 'expectedVersion',\n): void {\n if (!Number.isSafeInteger(value) || value < 0) {\n contentError(`${name} must be a non-negative integer.`);\n }\n}\n\nexport function validateContentInput(\n input: Partial<TaonCmsContentFields> & {\n tagIds?: number[];\n relatedPostIds?: number[];\n permissionIds?: number[];\n },\n creating = false,\n): void {\n if (!input || typeof input !== 'object' || Array.isArray(input)) {\n contentError('Content must be an object.');\n }\n if (\n input.type !== undefined &&\n !Object.values(TaonCmsContentType).includes(input.type)\n ) {\n contentError('type must be normal, video, audio, or attachment.');\n }\n for (const field of ['title', 'slug'] as const) {\n if (creating || input[field] !== undefined) {\n if (typeof input[field] !== 'string' || !input[field].trim()) {\n contentError(`${field} must be a non-empty string.`);\n }\n }\n }\n for (const field of [\n 'body',\n 'excerpt',\n 'videoKey',\n 'audioKey',\n 'attachmentKey',\n 'thumbnailKey',\n ] as const) {\n if (\n input[field] !== undefined &&\n input[field] !== null &&\n typeof input[field] !== 'string'\n ) {\n contentError(`${field} must be a string or null.`);\n }\n }\n for (const field of ['categoryId', 'authorUserId'] as const) {\n if (input[field] !== undefined && input[field] !== null) {\n requireContentId(input[field], field);\n }\n }\n if (\n input.applyPermissionsToRelatedPosts !== undefined &&\n typeof input.applyPermissionsToRelatedPosts !== 'boolean'\n ) {\n contentError('applyPermissionsToRelatedPosts must be a boolean.');\n }\n if (\n input.applyVisibilityToRelatedPosts !== undefined &&\n typeof input.applyVisibilityToRelatedPosts !== 'boolean'\n ) {\n contentError('applyVisibilityToRelatedPosts must be a boolean.');\n }\n if (\n input.status !== undefined &&\n !['draft', 'published', 'archived'].includes(input.status)\n ) {\n contentError('status must be draft, published, or archived.');\n }\n if (input.publishedAt !== undefined && input.publishedAt !== null) {\n if (\n !(\n input.publishedAt instanceof Date ||\n typeof input.publishedAt === 'string'\n ) ||\n Number.isNaN(new Date(input.publishedAt).getTime())\n ) {\n contentError('publishedAt must be a valid date or null.');\n }\n }\n for (const field of ['tagIds', 'relatedPostIds', 'permissionIds'] as const) {\n const ids = input[field];\n if (ids !== undefined) {\n if (!Array.isArray(ids)) {\n contentError(`${field} must be an array.`);\n }\n for (const id of ids) {\n requireContentId(\n id,\n field === 'tagIds'\n ? 'tagId'\n : field === 'relatedPostIds'\n ? 'relatedPostId'\n : 'permissionId',\n );\n }\n }\n }\n}","//#region imports\nimport { TaonBaseRepository, TaonRepository } from 'taon/browser-prod';\nimport { In, Raw } from 'taon-typeorm/browser-prod';\nimport type { EntityManager } from 'taon-typeorm/browser-prod';\nimport { TaonPermissionEntity } from '@taon-dev/session/browser-prod';\n\nimport { TaonCmsApplicationHookEntity } from '../taon-cms-application-hook/taon-cms-application-hook.entity';\nimport type { TaonCmsApplicationHook } from '../taon-cms-application-hooks';\nimport { TaonCmsCategoryRepository } from '../taon-cms-category/taon-cms-category.repository';\nimport type { TaonCmsContentRevisionEntity } from '../taon-cms-content-revision/taon-cms-content-revision.entity';\nimport { TaonCmsContentRevisionRepository } from '../taon-cms-content-revision/taon-cms-content-revision.repository';\nimport { TaonCmsContentTagRepository } from '../taon-cms-content-tag/taon-cms-content-tag.repository';\nimport { TaonCmsTagRepository } from '../taon-cms-tag/taon-cms-tag.repository';\nimport { TaonCmsContentAssetEntity } from '../taon-cms-content-asset/taon-cms-content-asset.entity';\nimport { ___NS__add, ___NS__after, ___NS__ary, ___NS__assign, ___NS__assignIn, ___NS__assignInWith, ___NS__assignWith, ___NS__at, ___NS__attempt, ___NS__before, ___NS__bind, ___NS__bindAll, ___NS__bindKey, ___NS__camelCase, ___NS__capitalize, ___NS__castArray, ___NS__ceil, ___NS__chain, ___NS__chunk, ___NS__clamp, ___NS__clone, ___NS__cloneDeep, ___NS__cloneDeepWith, ___NS__cloneWith, ___NS__compact, ___NS__concat, ___NS__cond, ___NS__conforms, ___NS__conformsTo, ___NS__constant, ___NS__countBy, ___NS__create, ___NS__curry, ___NS__curryRight, ___NS__debounce, ___NS__deburr, ___NS__defaults, ___NS__defaultsDeep, ___NS__defaultTo, ___NS__defer, ___NS__delay, ___NS__difference, ___NS__differenceBy, ___NS__differenceWith, ___NS__divide, ___NS__drop, ___NS__dropRight, ___NS__dropRightWhile, ___NS__dropWhile, ___NS__each, ___NS__eachRight, ___NS__endsWith, ___NS__entries, ___NS__entriesIn, ___NS__eq, ___NS__escape, ___NS__escapeRegExp, ___NS__every, ___NS__extend, ___NS__extendWith, ___NS__fill, ___NS__filter, ___NS__find, ___NS__findIndex, ___NS__findKey, ___NS__findLast, ___NS__findLastIndex, ___NS__findLastKey, ___NS__first, ___NS__flatMap, ___NS__flatMapDeep, ___NS__flatMapDepth, ___NS__flatten, ___NS__flattenDeep, ___NS__flattenDepth, ___NS__flip, ___NS__floor, ___NS__flow, ___NS__flowRight, ___NS__forEach, ___NS__forEachRight, ___NS__forIn, ___NS__forInRight, ___NS__forOwn, ___NS__forOwnRight, ___NS__fromPairs, ___NS__functions, ___NS__functionsIn, ___NS__get, ___NS__groupBy, ___NS__gt, ___NS__gte, ___NS__has, ___NS__hasIn, ___NS__head, ___NS__identity, ___NS__includes, ___NS__indexOf, ___NS__initial, ___NS__inRange, ___NS__intersection, ___NS__intersectionBy, ___NS__intersectionWith, ___NS__invert, ___NS__invertBy, ___NS__invoke, ___NS__invokeMap, ___NS__isArguments, ___NS__isArray, ___NS__isArrayBuffer, ___NS__isArrayLike, ___NS__isArrayLikeObject, ___NS__isBoolean, ___NS__isBuffer, ___NS__isDate, ___NS__isElement, ___NS__isEmpty, ___NS__isEqual, ___NS__isEqualWith, ___NS__isError, ___NS__isFinite, ___NS__isFunction, ___NS__isInteger, ___NS__isLeafObject, ___NS__isLength, ___NS__isMap, ___NS__isMatch, ___NS__isMatchWith, ___NS__isNaN, ___NS__isNative, ___NS__isNil, ___NS__isNull, ___NS__isNumber, ___NS__isObject, ___NS__isObjectLike, ___NS__isPlainObject, ___NS__isRegExp, ___NS__isSafeInteger, ___NS__isSet, ___NS__isString, ___NS__isSymbol, ___NS__isTypedArray, ___NS__isUndefined, ___NS__isWeakMap, ___NS__isWeakSet, ___NS__iteratee, ___NS__join, ___NS__kebabCase, ___NS__keyBy, ___NS__keys, ___NS__keysIn, ___NS__last, ___NS__lastIndexOf, ___NS__lowerCase, ___NS__lowerFirst, ___NS__lt, ___NS__lte, ___NS__map, ___NS__mapKeys, ___NS__mapValues, ___NS__matches, ___NS__matchesProperty, ___NS__max, ___NS__maxBy, ___NS__mean, ___NS__meanBy, ___NS__memoize, ___NS__merge, ___NS__mergeWith, ___NS__method, ___NS__methodOf, ___NS__min, ___NS__minBy, ___NS__mixin, ___NS__multiply, ___NS__negate, ___NS__noop, ___NS__now, ___NS__nth, ___NS__nthArg, ___NS__omit, ___NS__omitBy, ___NS__once, ___NS__orderBy, ___NS__over, ___NS__overArgs, ___NS__overEvery, ___NS__overSome, ___NS__pad, ___NS__padEnd, ___NS__padStart, ___NS__parseInt, ___NS__partial, ___NS__partialRight, ___NS__partition, ___NS__pick, ___NS__pickBy, ___NS__property, ___NS__propertyOf, ___NS__pull, ___NS__pullAll, ___NS__pullAllBy, ___NS__pullAllWith, ___NS__pullAt, ___NS__random, ___NS__range, ___NS__rangeRight, ___NS__rearg, ___NS__reduce, ___NS__reduceRight, ___NS__reject, ___NS__remove, ___NS__repeat, ___NS__replace, ___NS__rest, ___NS__result, ___NS__reverse, ___NS__round, ___NS__sample, ___NS__sampleSize, ___NS__set, ___NS__setWith, ___NS__shuffle, ___NS__size, ___NS__slice, ___NS__snakeCase, ___NS__some, ___NS__sortBy, ___NS__sortedIndex, ___NS__sortedIndexBy, ___NS__sortedIndexOf, ___NS__sortedLastIndex, ___NS__sortedLastIndexBy, ___NS__sortedLastIndexOf, ___NS__sortedUniq, ___NS__sortedUniqBy, ___NS__split, ___NS__spread, ___NS__startCase, ___NS__startsWith, ___NS__stubArray, ___NS__stubFalse, ___NS__stubObject, ___NS__stubString, ___NS__stubTrue, ___NS__subtract, ___NS__sum, ___NS__sumBy, ___NS__tail, ___NS__take, ___NS__takeRight, ___NS__takeRightWhile, ___NS__takeWhile, ___NS__tap, ___NS__template, ___NS__templateSettings, ___NS__throttle, ___NS__thru, ___NS__times, ___NS__toArray, ___NS__toFinite, ___NS__toInteger, ___NS__toLength, ___NS__toLower, ___NS__toNumber, ___NS__toPairs, ___NS__toPairsIn, ___NS__toPath, ___NS__toPlainObject, ___NS__toSafeInteger, ___NS__toString, ___NS__toUpper, ___NS__transform, ___NS__trim, ___NS__trimEnd, ___NS__trimStart, ___NS__truncate, ___NS__unary, ___NS__unescape, ___NS__union, ___NS__unionBy, ___NS__unionWith, ___NS__uniq, ___NS__uniqBy, ___NS__uniqueId, ___NS__uniqWith, ___NS__unset, ___NS__unzip, ___NS__unzipWith, ___NS__update, ___NS__updateWith, ___NS__upperCase, ___NS__upperFirst, ___NS__values, ___NS__valuesIn, ___NS__without, ___NS__words, ___NS__wrap, ___NS__xor, ___NS__xorBy, ___NS__xorWith, ___NS__zip, ___NS__zipObject, ___NS__zipObjectDeep, ___NS__zipWith } from 'tnp-core/browser-prod';\n\nimport { TaonCmsContentEntity } from './taon-cms-content.entity';\nimport { TaonCmsContentType } from './taon-cms-content.models';\nimport { TaonCmsContentUtils__NS__isActive, TaonCmsContentUtils__NS__orderRelatedPosts } from './taon-cms-content.utils';\nimport type {\n TaonCmsContentFields,\n TaonCmsContentSnapshot,\n TaonCmsCreateContent,\n TaonCmsCreateRelatedChildInput,\n TaonCmsCreateRelatedChildResult,\n TaonCmsRestoreContent,\n TaonCmsUpdateContent,\n TaonCmsPermissionConfiguration,\n TaonCmsPostVersionKind,\n TaonCmsPostVersionLinks,\n TaonCmsVisibilityConfiguration,\n} from './taon-cms-content.models';\nimport {\n contentError,\n requireContentId,\n requireContentVersion,\n validateContentInput,\n} from './taon-cms-content.validation';\n//#endregion\n\n@TaonRepository({\n className: 'TaonCmsContentRepository',\n})\nexport class TaonCmsContentRepository extends TaonBaseRepository<TaonCmsContentEntity> {\n entityClassResolveFn: () => typeof TaonCmsContentEntity = () =>\n TaonCmsContentEntity;\n\n private readonly taonCmsContentRevisionRepository = this.injectCustomRepo(\n TaonCmsContentRevisionRepository,\n );\n\n private readonly taonCmsContentTagRepository = this.injectCustomRepo(\n TaonCmsContentTagRepository,\n );\n\n private readonly taonCmsCategoryRepository = this.injectCustomRepo(\n TaonCmsCategoryRepository,\n );\n\n private readonly tags = this.injectCustomRepo(TaonCmsTagRepository);\n\n async listTagIds(id: number): Promise<number[]> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n async getVisibilityConfiguration(\n id: number,\n ): Promise<TaonCmsVisibilityConfiguration> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n async createContent(\n input: TaonCmsCreateContent,\n ): Promise<TaonCmsContentEntity> {\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n async createRelatedChild(\n parentId: number,\n input: TaonCmsCreateRelatedChildInput,\n ): Promise<TaonCmsCreateRelatedChildResult> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n private validateRelatedChildInput(\n input: TaonCmsCreateRelatedChildInput,\n ): void {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n private relatedChildMatchesInput(\n child: TaonCmsContentEntity,\n input: TaonCmsCreateRelatedChildInput,\n ): boolean {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n private nextRelatedChildTitle(\n prefix: string,\n children: TaonCmsContentEntity[],\n ): string {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n private async isMediaKeyInUseWithinManager(\n key: string,\n manager: EntityManager,\n ): Promise<boolean> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n private async resolveVisibilityConfiguration(\n post: TaonCmsContentEntity,\n manager: EntityManager,\n ): Promise<TaonCmsVisibilityConfiguration> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n async duplicateContent(\n id: number,\n includeChildren: boolean,\n copyStorageObject: (key: string) => Promise<string>,\n deleteStorageObject: (key: string) => Promise<void>,\n ): Promise<TaonCmsContentEntity> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n private async nextCopyTitleAndSlug(\n title: string,\n slug: string,\n manager: EntityManager,\n ): Promise<{ title: string; slug: string }> {\n const titleSuffix = title.match(/\\s+COPY(\\d+)$/i);\n const slugSuffix = slug.match(/-copy(\\d+)$/i);\n const baseTitle = title.replace(/(?:\\s+COPY\\d+)+$/i, '');\n const baseSlug = slug.replace(/(?:-copy\\d+)+$/i, '');\n let number =\n Math.max(Number(titleSuffix?.[1] ?? 0), Number(slugSuffix?.[1] ?? 0)) +\n 1;\n const repository = manager.getRepository<TaonCmsContentEntity>(this.target);\n while (Number.isSafeInteger(number)) {\n const copyTitle = `${baseTitle} COPY${number}`;\n const copySlug = `${baseSlug}-copy${number}`;\n const existing = await repository.findOne({\n where: [{ title: copyTitle }, { slug: copySlug }],\n });\n if (!existing) {\n return { title: copyTitle, slug: copySlug };\n }\n number += 1;\n }\n contentError('No available copy number could be generated.', 409);\n }\n\n private async createContentWithManager(\n input: TaonCmsCreateContent,\n manager: EntityManager,\n ): Promise<TaonCmsContentEntity> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n async updateContent(\n id: number,\n input: TaonCmsUpdateContent,\n ): Promise<TaonCmsContentEntity> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n async archiveContent(\n id: number,\n expectedVersion: number,\n ): Promise<TaonCmsContentEntity> {\n/* */\n/* */\n return (void 0);\n }\n\n async permanentlyDeleteContent(\n id: number,\n expectedVersion: number,\n deleteStorageObject: (key: string) => Promise<void>,\n ): Promise<void> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n async restoreContent(\n id: number,\n input: TaonCmsRestoreContent,\n ): Promise<TaonCmsContentEntity> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n async listRevisions(id: number): Promise<TaonCmsContentRevisionEntity[]> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n async listCourses(): Promise<TaonCmsContentEntity[]> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n async listRelatedPosts(id: number): Promise<TaonCmsContentEntity[]> {\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n async listPublicVideoChildren(\n parentId: number,\n ): Promise<TaonCmsContentEntity[]> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n async getParentPost(id: number): Promise<TaonCmsContentEntity | null> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n async getPostVersions(id: number): Promise<TaonCmsPostVersionLinks> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n async listPermissions(id: number): Promise<TaonPermissionEntity[]> {\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n async getPermissionConfiguration(\n id: number,\n skipTransaction = false,\n ): Promise<TaonCmsPermissionConfiguration> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n private async resolvePermissionConfiguration(\n post: TaonCmsContentEntity,\n manager: EntityManager,\n ): Promise<TaonCmsPermissionConfiguration> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n private async validatePermissionInheritance(\n manager: EntityManager,\n ): Promise<void> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n private async requireOwnPermissionEdit(\n id: number,\n permissionIds: number[],\n current: TaonCmsContentEntity,\n manager: EntityManager,\n ): Promise<void> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n async listApplicationHooks(): Promise<TaonCmsApplicationHookEntity[]> {\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n async getContentByHook(hook: string): Promise<string> {\n/* */\n/* */\n return (void 0);\n }\n\n async getContentForHook(hook: string): Promise<TaonCmsContentEntity | null> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n //#region methods / media access\n async getContentBySlugForMedia(\n slug: string,\n ): Promise<TaonCmsContentEntity | null> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n async isPublicMediaKey(key: string): Promise<boolean> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n //#endregion\n\n async isMediaKeyInUse(key: string): Promise<boolean> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n async addRelatedPost(\n id: number,\n relatedPostId: number,\n expectedVersion: number,\n ): Promise<TaonCmsContentEntity> {\n/* */\n/* */\n return (void 0);\n }\n\n async deleteRelatedPost(\n id: number,\n relatedPostId: number,\n expectedVersion: number,\n ): Promise<TaonCmsContentEntity> {\n/* */\n/* */\n return (void 0);\n }\n\n async linkVersionPost(\n id: number,\n versionPostId: number,\n kind: TaonCmsPostVersionKind,\n expectedVersion: number,\n ): Promise<TaonCmsContentEntity> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n async removeVersionPost(\n id: number,\n kind: TaonCmsPostVersionKind,\n expectedVersion: number,\n ): Promise<TaonCmsContentEntity> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n private async changeRelatedPost(\n id: number,\n relatedPostId: number,\n expectedVersion: number,\n adding: boolean,\n ): Promise<TaonCmsContentEntity> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n async requireContent(\n id: number,\n manager: EntityManager,\n ): Promise<TaonCmsContentEntity> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n private contentFields(\n input: Partial<TaonCmsContentFields>,\n current?: TaonCmsContentFields,\n ): TaonCmsContentFields {\n const type = input.type ?? current?.type ?? TaonCmsContentType.Normal;\n const title = input.title ?? current?.title;\n const slug = input.slug ?? current?.slug;\n if (title === undefined || slug === undefined) {\n contentError('title and slug are required.');\n }\n const publishedAt =\n input.publishedAt === undefined\n ? (current?.publishedAt ?? null)\n : input.publishedAt;\n return {\n type,\n title,\n slug,\n body: input.body === undefined ? (current?.body ?? null) : input.body,\n videoKey:\n input.videoKey === undefined\n ? (current?.videoKey ?? null)\n : input.videoKey,\n audioKey:\n input.audioKey === undefined\n ? (current?.audioKey ?? null)\n : input.audioKey,\n attachmentKey:\n input.attachmentKey === undefined\n ? (current?.attachmentKey ?? null)\n : input.attachmentKey,\n thumbnailKey:\n input.thumbnailKey === undefined\n ? (current?.thumbnailKey ?? null)\n : input.thumbnailKey,\n excerpt:\n input.excerpt === undefined\n ? (current?.excerpt ?? null)\n : input.excerpt,\n categoryId:\n input.categoryId === undefined\n ? (current?.categoryId ?? null)\n : input.categoryId,\n authorUserId:\n input.authorUserId === undefined\n ? (current?.authorUserId ?? null)\n : input.authorUserId,\n status: input.status ?? current?.status ?? 'draft',\n publishedAt: publishedAt === null ? null : new Date(publishedAt),\n applyPermissionsToRelatedPosts:\n input.applyPermissionsToRelatedPosts ??\n current?.applyPermissionsToRelatedPosts ??\n false,\n applyVisibilityToRelatedPosts:\n input.applyVisibilityToRelatedPosts ??\n current?.applyVisibilityToRelatedPosts ??\n false,\n };\n }\n\n private async snapshotOf(\n content: TaonCmsContentEntity,\n manager: EntityManager,\n ): Promise<TaonCmsContentSnapshot> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n private contentStatus(status: string): TaonCmsContentFields['status'] {\n if (status !== 'draft' && status !== 'published' && status !== 'archived') {\n contentError(`Unsupported stored content status: ${status}.`, 409);\n }\n return status;\n }\n\n private async validateReferences(\n fields: TaonCmsContentFields,\n tagIds: number[],\n permissionIds: number[],\n manager: EntityManager,\n ): Promise<void> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n private async requirePermissions(\n permissionIds: number[],\n manager: EntityManager,\n ): Promise<void> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n private async requireAvailableSlug(\n slug: string,\n manager: EntityManager,\n contentId?: number,\n ): Promise<void> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n private async replaceRelatedPosts(\n id: number,\n relatedPostIds: number[],\n previousIds: number[],\n manager: EntityManager,\n ): Promise<void> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n private async relatedPostPathExists(\n startId: number,\n targetId: number,\n manager: EntityManager,\n ): Promise<boolean> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n private async replacePermissions(\n id: number,\n permissionIds: number[],\n previousIds: number[],\n manager: EntityManager,\n ): Promise<void> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n private async replaceApplicationHook(\n contentId: number,\n hook: TaonCmsApplicationHook | null,\n manager: EntityManager,\n ): Promise<void> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n private async commitUpdate(\n current: TaonCmsContentEntity,\n expectedVersion: number,\n snapshot: TaonCmsContentSnapshot,\n manager: EntityManager,\n applicationHook?: TaonCmsApplicationHook | null,\n propagateVisibility = true,\n ): Promise<TaonCmsContentEntity> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n private async propagateVisibilityToRelatedPosts(\n parentId: number,\n status: TaonCmsContentFields['status'],\n manager: EntityManager,\n visited: Set<number>,\n ): Promise<void> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n /**\n * TODO remove this demo example method\n */\n async countEntitesWithEvenId(): Promise<number> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n}","//#region imports\nimport { Body, DELETE, GET, HttpStatusEnum, POST, Query, TaonBaseCrudController, TaonController, getStatusCode, Models__NS__ClassType, Models__NS__ClassTypeKey, Models__NS__ConnectionOptionsLogs, Models__NS__ContextOptions, Models__NS__DatabaseConfig, Models__NS__DatabaseConfigTypeOrm, Models__NS__DatabasesFolder, Models__NS__DBRecreateMode, Models__NS__DBRecreateModeType, Models__NS__FrameworkMode, Models__NS__Http__NS__AsyncResponse, Models__NS__Http__NS__ClientAction, Models__NS__Http__NS__ContextENDPOINT, Models__NS__Http__NS__ExpressContext, Models__NS__Http__NS__FormlyFromType, Models__NS__Http__NS__MixResponse, Models__NS__Http__NS__PromiseObservableMix, Models__NS__Http__NS__RequestResults, Models__NS__Http__NS__Response, Models__NS__Http__NS__ResponseFuncOpt, Models__NS__Http__NS__SyncResponse, Models__NS__Http__NS__SyncResponseFunc, Models__NS__Http__NS__TaonStreamResponseOptions, Models__NS__KVDatabaseConfig, Models__NS__MiddlewareType, Models__NS__StartParams, Models__NS__TaonCtrlBeforeEachRequestParams, Models__NS__TaonCtxCloneParams, Models__NS__TaonInitializeParams, Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\nimport {\n TaonAuthContextRepository,\n TaonSessionRepository,\n TaonSessionUserEntity,\n} from '@taon-dev/session/browser-prod';\n\nimport { TaonCmsContentEntity } from '../taon-cms-content/taon-cms-content.entity';\nimport { TaonCmsContentRepository } from '../taon-cms-content/taon-cms-content.repository';\n\nimport { TaonCmsCommentBlockedPhraseEntity } from './taon-cms-comment-blocked-phrase.entity';\nimport { TaonCmsCommentBlockedUserEntity } from './taon-cms-comment-blocked-user.entity';\nimport { TaonCmsCommentEntity } from './taon-cms-comment.entity';\nimport { TaonCmsCommentSpamReportEntity } from './taon-cms-comment-spam-report.entity';\nimport { TaonCmsCommentVoteEntity } from './taon-cms-comment-vote.entity';\n//#endregion\n\ninterface CreateCommentInput {\n contentId: number;\n body: string;\n}\n\ninterface VoteInput {\n commentId: number;\n value: -1 | 1;\n}\n\ninterface BlockedUserInput {\n userId: number;\n blocked: boolean;\n}\n\nexport interface CommentListItem extends TaonCmsCommentEntity {\n voteScore: number;\n upvotes: number;\n downvotes: number;\n spamReports: number;\n currentUserVote: -1 | 1 | 0;\n currentUserReported: boolean;\n postTitle: string;\n postSlug: string;\n authorName: string;\n}\n\n@TaonController<TaonCmsCommentController>({\n className: 'TaonCmsCommentController',\n allowedMethods: [\n 'getComments',\n 'createComment',\n 'deleteComment',\n 'voteComment',\n 'reportSpam',\n 'getCommentsBackoffice',\n 'getBlockedUsers',\n 'setBlockedUser',\n 'getBlockedPhrases',\n 'addBlockedPhrase',\n 'deleteBlockedPhrase',\n ],\n})\nexport class TaonCmsCommentController extends TaonBaseCrudController<TaonCmsCommentEntity> {\n entityClassResolveFn: () => typeof TaonCmsCommentEntity = () =>\n TaonCmsCommentEntity;\n\n private readonly taonSessionRepository = this.injectCustomRepo(\n TaonSessionRepository,\n );\n\n private readonly taonAuthContextRepository = this.injectCustomRepo(\n TaonAuthContextRepository,\n );\n\n private readonly posts = this.injectCustomRepo(TaonCmsContentRepository);\n\n private repository<T>(entity: { new (): T }) {\n return this.ctx.connection.manager.getRepository(entity);\n }\n\n private async requireAuthenticated(\n req: Models__NS__TaonCtrlBeforeEachRequestParams<TaonCmsCommentController>['req'],\n res: Models__NS__TaonCtrlBeforeEachRequestParams<TaonCmsCommentController>['res'],\n t: Models__NS__TaonCtrlBeforeEachRequestParams<TaonCmsCommentController>['t'],\n ): Promise<number> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n private async requireCmsManager(\n req: Models__NS__TaonCtrlBeforeEachRequestParams<TaonCmsCommentController>['req'],\n t: Models__NS__TaonCtrlBeforeEachRequestParams<TaonCmsCommentController>['t'],\n ): Promise<void> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n @GET()\n getComments(\n @Query('contentId') contentId: number,\n ): Taon__NS__Response<CommentListItem[]> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n @POST()\n createComment(\n @Body() input: CreateCommentInput,\n ): Taon__NS__Response<CommentListItem> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n @DELETE()\n deleteComment(@Query('id') commentId: number): Taon__NS__Response<boolean> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n @POST()\n voteComment(@Body() input: VoteInput): Taon__NS__Response<CommentListItem> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n @POST()\n reportSpam(@Body('commentId') commentId: number): Taon__NS__Response<boolean> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n @GET()\n getCommentsBackoffice(\n @Query('pageNumber') pageNumber = 1,\n @Query('pageSize') pageSize = 10,\n @Query('id') id?: string,\n @Query('text') text?: string,\n @Query('author') author?: string,\n ): Taon__NS__Response<{ items: CommentListItem[]; total: number }> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n @GET()\n getBlockedUsers(): Taon__NS__Response<TaonCmsCommentBlockedUserEntity[]> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n @POST()\n setBlockedUser(@Body() input: BlockedUserInput): Taon__NS__Response<boolean> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n @GET()\n getBlockedPhrases(): Taon__NS__Response<TaonCmsCommentBlockedPhraseEntity[]> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n @POST()\n addBlockedPhrase(\n @Body('phrase') phrase: string,\n ): Taon__NS__Response<TaonCmsCommentBlockedPhraseEntity> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n @DELETE()\n deleteBlockedPhrase(@Query('id') id: number): Taon__NS__Response<boolean> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n private async requirePostReadAccess(\n post: TaonCmsContentEntity,\n req: Models__NS__TaonCtrlBeforeEachRequestParams<TaonCmsCommentController>['req'],\n res: Models__NS__TaonCtrlBeforeEachRequestParams<TaonCmsCommentController>['res'],\n t: Models__NS__TaonCtrlBeforeEachRequestParams<TaonCmsCommentController>['t'],\n ): Promise<void> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n private async withModerationData(\n comments: TaonCmsCommentEntity[],\n currentUserId: number,\n ): Promise<CommentListItem[]> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n}","//#region imports\nimport { TaonBaseRepository, TaonRepository } from 'taon/browser-prod';\nimport { Raw } from 'taon-typeorm/browser-prod';\n\nimport { TaonCmsCommentEntity } from './taon-cms-comment.entity';\n//#endregion\n\n@TaonRepository({\n className: 'TaonCmsCommentRepository',\n})\nexport class TaonCmsCommentRepository extends TaonBaseRepository<TaonCmsCommentEntity> {\n entityClassResolveFn: () => typeof TaonCmsCommentEntity = () => TaonCmsCommentEntity;\n\n /**\n * TODO remove this demo example method\n */\n async countEntitesWithEvenId(): Promise<number> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n}","//#region imports\nimport { TaonBaseProvider, TaonProvider, Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\nimport { ___NS__add, ___NS__after, ___NS__ary, ___NS__assign, ___NS__assignIn, ___NS__assignInWith, ___NS__assignWith, ___NS__at, ___NS__attempt, ___NS__before, ___NS__bind, ___NS__bindAll, ___NS__bindKey, ___NS__camelCase, ___NS__capitalize, ___NS__castArray, ___NS__ceil, ___NS__chain, ___NS__chunk, ___NS__clamp, ___NS__clone, ___NS__cloneDeep, ___NS__cloneDeepWith, ___NS__cloneWith, ___NS__compact, ___NS__concat, ___NS__cond, ___NS__conforms, ___NS__conformsTo, ___NS__constant, ___NS__countBy, ___NS__create, ___NS__curry, ___NS__curryRight, ___NS__debounce, ___NS__deburr, ___NS__defaults, ___NS__defaultsDeep, ___NS__defaultTo, ___NS__defer, ___NS__delay, ___NS__difference, ___NS__differenceBy, ___NS__differenceWith, ___NS__divide, ___NS__drop, ___NS__dropRight, ___NS__dropRightWhile, ___NS__dropWhile, ___NS__each, ___NS__eachRight, ___NS__endsWith, ___NS__entries, ___NS__entriesIn, ___NS__eq, ___NS__escape, ___NS__escapeRegExp, ___NS__every, ___NS__extend, ___NS__extendWith, ___NS__fill, ___NS__filter, ___NS__find, ___NS__findIndex, ___NS__findKey, ___NS__findLast, ___NS__findLastIndex, ___NS__findLastKey, ___NS__first, ___NS__flatMap, ___NS__flatMapDeep, ___NS__flatMapDepth, ___NS__flatten, ___NS__flattenDeep, ___NS__flattenDepth, ___NS__flip, ___NS__floor, ___NS__flow, ___NS__flowRight, ___NS__forEach, ___NS__forEachRight, ___NS__forIn, ___NS__forInRight, ___NS__forOwn, ___NS__forOwnRight, ___NS__fromPairs, ___NS__functions, ___NS__functionsIn, ___NS__get, ___NS__groupBy, ___NS__gt, ___NS__gte, ___NS__has, ___NS__hasIn, ___NS__head, ___NS__identity, ___NS__includes, ___NS__indexOf, ___NS__initial, ___NS__inRange, ___NS__intersection, ___NS__intersectionBy, ___NS__intersectionWith, ___NS__invert, ___NS__invertBy, ___NS__invoke, ___NS__invokeMap, ___NS__isArguments, ___NS__isArray, ___NS__isArrayBuffer, ___NS__isArrayLike, ___NS__isArrayLikeObject, ___NS__isBoolean, ___NS__isBuffer, ___NS__isDate, ___NS__isElement, ___NS__isEmpty, ___NS__isEqual, ___NS__isEqualWith, ___NS__isError, ___NS__isFinite, ___NS__isFunction, ___NS__isInteger, ___NS__isLeafObject, ___NS__isLength, ___NS__isMap, ___NS__isMatch, ___NS__isMatchWith, ___NS__isNaN, ___NS__isNative, ___NS__isNil, ___NS__isNull, ___NS__isNumber, ___NS__isObject, ___NS__isObjectLike, ___NS__isPlainObject, ___NS__isRegExp, ___NS__isSafeInteger, ___NS__isSet, ___NS__isString, ___NS__isSymbol, ___NS__isTypedArray, ___NS__isUndefined, ___NS__isWeakMap, ___NS__isWeakSet, ___NS__iteratee, ___NS__join, ___NS__kebabCase, ___NS__keyBy, ___NS__keys, ___NS__keysIn, ___NS__last, ___NS__lastIndexOf, ___NS__lowerCase, ___NS__lowerFirst, ___NS__lt, ___NS__lte, ___NS__map, ___NS__mapKeys, ___NS__mapValues, ___NS__matches, ___NS__matchesProperty, ___NS__max, ___NS__maxBy, ___NS__mean, ___NS__meanBy, ___NS__memoize, ___NS__merge, ___NS__mergeWith, ___NS__method, ___NS__methodOf, ___NS__min, ___NS__minBy, ___NS__mixin, ___NS__multiply, ___NS__negate, ___NS__noop, ___NS__now, ___NS__nth, ___NS__nthArg, ___NS__omit, ___NS__omitBy, ___NS__once, ___NS__orderBy, ___NS__over, ___NS__overArgs, ___NS__overEvery, ___NS__overSome, ___NS__pad, ___NS__padEnd, ___NS__padStart, ___NS__parseInt, ___NS__partial, ___NS__partialRight, ___NS__partition, ___NS__pick, ___NS__pickBy, ___NS__property, ___NS__propertyOf, ___NS__pull, ___NS__pullAll, ___NS__pullAllBy, ___NS__pullAllWith, ___NS__pullAt, ___NS__random, ___NS__range, ___NS__rangeRight, ___NS__rearg, ___NS__reduce, ___NS__reduceRight, ___NS__reject, ___NS__remove, ___NS__repeat, ___NS__replace, ___NS__rest, ___NS__result, ___NS__reverse, ___NS__round, ___NS__sample, ___NS__sampleSize, ___NS__set, ___NS__setWith, ___NS__shuffle, ___NS__size, ___NS__slice, ___NS__snakeCase, ___NS__some, ___NS__sortBy, ___NS__sortedIndex, ___NS__sortedIndexBy, ___NS__sortedIndexOf, ___NS__sortedLastIndex, ___NS__sortedLastIndexBy, ___NS__sortedLastIndexOf, ___NS__sortedUniq, ___NS__sortedUniqBy, ___NS__split, ___NS__spread, ___NS__startCase, ___NS__startsWith, ___NS__stubArray, ___NS__stubFalse, ___NS__stubObject, ___NS__stubString, ___NS__stubTrue, ___NS__subtract, ___NS__sum, ___NS__sumBy, ___NS__tail, ___NS__take, ___NS__takeRight, ___NS__takeRightWhile, ___NS__takeWhile, ___NS__tap, ___NS__template, ___NS__templateSettings, ___NS__throttle, ___NS__thru, ___NS__times, ___NS__toArray, ___NS__toFinite, ___NS__toInteger, ___NS__toLength, ___NS__toLower, ___NS__toNumber, ___NS__toPairs, ___NS__toPairsIn, ___NS__toPath, ___NS__toPlainObject, ___NS__toSafeInteger, ___NS__toString, ___NS__toUpper, ___NS__transform, ___NS__trim, ___NS__trimEnd, ___NS__trimStart, ___NS__truncate, ___NS__unary, ___NS__unescape, ___NS__union, ___NS__unionBy, ___NS__unionWith, ___NS__uniq, ___NS__uniqBy, ___NS__uniqueId, ___NS__uniqWith, ___NS__unset, ___NS__unzip, ___NS__unzipWith, ___NS__update, ___NS__updateWith, ___NS__upperCase, ___NS__upperFirst, ___NS__values, ___NS__valuesIn, ___NS__without, ___NS__words, ___NS__wrap, ___NS__xor, ___NS__xorBy, ___NS__xorWith, ___NS__zip, ___NS__zipObject, ___NS__zipObjectDeep, ___NS__zipWith } from 'tnp-core/browser-prod';\nimport { Injectable } from '@angular/core';\n//#endregion\n\n@TaonProvider({\n className: 'TaonCmsCommentProvider',\n})\n//#region @browser\n@Injectable()\n//#endregion\nexport class TaonCmsCommentProvider extends TaonBaseProvider {\n\n\n\n}","//#region imports\nimport { TaonBaseMiddleware, TaonMiddleware, Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\nimport { ___NS__add, ___NS__after, ___NS__ary, ___NS__assign, ___NS__assignIn, ___NS__assignInWith, ___NS__assignWith, ___NS__at, ___NS__attempt, ___NS__before, ___NS__bind, ___NS__bindAll, ___NS__bindKey, ___NS__camelCase, ___NS__capitalize, ___NS__castArray, ___NS__ceil, ___NS__chain, ___NS__chunk, ___NS__clamp, ___NS__clone, ___NS__cloneDeep, ___NS__cloneDeepWith, ___NS__cloneWith, ___NS__compact, ___NS__concat, ___NS__cond, ___NS__conforms, ___NS__conformsTo, ___NS__constant, ___NS__countBy, ___NS__create, ___NS__curry, ___NS__curryRight, ___NS__debounce, ___NS__deburr, ___NS__defaults, ___NS__defaultsDeep, ___NS__defaultTo, ___NS__defer, ___NS__delay, ___NS__difference, ___NS__differenceBy, ___NS__differenceWith, ___NS__divide, ___NS__drop, ___NS__dropRight, ___NS__dropRightWhile, ___NS__dropWhile, ___NS__each, ___NS__eachRight, ___NS__endsWith, ___NS__entries, ___NS__entriesIn, ___NS__eq, ___NS__escape, ___NS__escapeRegExp, ___NS__every, ___NS__extend, ___NS__extendWith, ___NS__fill, ___NS__filter, ___NS__find, ___NS__findIndex, ___NS__findKey, ___NS__findLast, ___NS__findLastIndex, ___NS__findLastKey, ___NS__first, ___NS__flatMap, ___NS__flatMapDeep, ___NS__flatMapDepth, ___NS__flatten, ___NS__flattenDeep, ___NS__flattenDepth, ___NS__flip, ___NS__floor, ___NS__flow, ___NS__flowRight, ___NS__forEach, ___NS__forEachRight, ___NS__forIn, ___NS__forInRight, ___NS__forOwn, ___NS__forOwnRight, ___NS__fromPairs, ___NS__functions, ___NS__functionsIn, ___NS__get, ___NS__groupBy, ___NS__gt, ___NS__gte, ___NS__has, ___NS__hasIn, ___NS__head, ___NS__identity, ___NS__includes, ___NS__indexOf, ___NS__initial, ___NS__inRange, ___NS__intersection, ___NS__intersectionBy, ___NS__intersectionWith, ___NS__invert, ___NS__invertBy, ___NS__invoke, ___NS__invokeMap, ___NS__isArguments, ___NS__isArray, ___NS__isArrayBuffer, ___NS__isArrayLike, ___NS__isArrayLikeObject, ___NS__isBoolean, ___NS__isBuffer, ___NS__isDate, ___NS__isElement, ___NS__isEmpty, ___NS__isEqual, ___NS__isEqualWith, ___NS__isError, ___NS__isFinite, ___NS__isFunction, ___NS__isInteger, ___NS__isLeafObject, ___NS__isLength, ___NS__isMap, ___NS__isMatch, ___NS__isMatchWith, ___NS__isNaN, ___NS__isNative, ___NS__isNil, ___NS__isNull, ___NS__isNumber, ___NS__isObject, ___NS__isObjectLike, ___NS__isPlainObject, ___NS__isRegExp, ___NS__isSafeInteger, ___NS__isSet, ___NS__isString, ___NS__isSymbol, ___NS__isTypedArray, ___NS__isUndefined, ___NS__isWeakMap, ___NS__isWeakSet, ___NS__iteratee, ___NS__join, ___NS__kebabCase, ___NS__keyBy, ___NS__keys, ___NS__keysIn, ___NS__last, ___NS__lastIndexOf, ___NS__lowerCase, ___NS__lowerFirst, ___NS__lt, ___NS__lte, ___NS__map, ___NS__mapKeys, ___NS__mapValues, ___NS__matches, ___NS__matchesProperty, ___NS__max, ___NS__maxBy, ___NS__mean, ___NS__meanBy, ___NS__memoize, ___NS__merge, ___NS__mergeWith, ___NS__method, ___NS__methodOf, ___NS__min, ___NS__minBy, ___NS__mixin, ___NS__multiply, ___NS__negate, ___NS__noop, ___NS__now, ___NS__nth, ___NS__nthArg, ___NS__omit, ___NS__omitBy, ___NS__once, ___NS__orderBy, ___NS__over, ___NS__overArgs, ___NS__overEvery, ___NS__overSome, ___NS__pad, ___NS__padEnd, ___NS__padStart, ___NS__parseInt, ___NS__partial, ___NS__partialRight, ___NS__partition, ___NS__pick, ___NS__pickBy, ___NS__property, ___NS__propertyOf, ___NS__pull, ___NS__pullAll, ___NS__pullAllBy, ___NS__pullAllWith, ___NS__pullAt, ___NS__random, ___NS__range, ___NS__rangeRight, ___NS__rearg, ___NS__reduce, ___NS__reduceRight, ___NS__reject, ___NS__remove, ___NS__repeat, ___NS__replace, ___NS__rest, ___NS__result, ___NS__reverse, ___NS__round, ___NS__sample, ___NS__sampleSize, ___NS__set, ___NS__setWith, ___NS__shuffle, ___NS__size, ___NS__slice, ___NS__snakeCase, ___NS__some, ___NS__sortBy, ___NS__sortedIndex, ___NS__sortedIndexBy, ___NS__sortedIndexOf, ___NS__sortedLastIndex, ___NS__sortedLastIndexBy, ___NS__sortedLastIndexOf, ___NS__sortedUniq, ___NS__sortedUniqBy, ___NS__split, ___NS__spread, ___NS__startCase, ___NS__startsWith, ___NS__stubArray, ___NS__stubFalse, ___NS__stubObject, ___NS__stubString, ___NS__stubTrue, ___NS__subtract, ___NS__sum, ___NS__sumBy, ___NS__tail, ___NS__take, ___NS__takeRight, ___NS__takeRightWhile, ___NS__takeWhile, ___NS__tap, ___NS__template, ___NS__templateSettings, ___NS__throttle, ___NS__thru, ___NS__times, ___NS__toArray, ___NS__toFinite, ___NS__toInteger, ___NS__toLength, ___NS__toLower, ___NS__toNumber, ___NS__toPairs, ___NS__toPairsIn, ___NS__toPath, ___NS__toPlainObject, ___NS__toSafeInteger, ___NS__toString, ___NS__toUpper, ___NS__transform, ___NS__trim, ___NS__trimEnd, ___NS__trimStart, ___NS__truncate, ___NS__unary, ___NS__unescape, ___NS__union, ___NS__unionBy, ___NS__unionWith, ___NS__uniq, ___NS__uniqBy, ___NS__uniqueId, ___NS__uniqWith, ___NS__unset, ___NS__unzip, ___NS__unzipWith, ___NS__update, ___NS__updateWith, ___NS__upperCase, ___NS__upperFirst, ___NS__values, ___NS__valuesIn, ___NS__without, ___NS__words, ___NS__wrap, ___NS__xor, ___NS__xorBy, ___NS__xorWith, ___NS__zip, ___NS__zipObject, ___NS__zipObjectDeep, ___NS__zipWith } from 'tnp-core/browser-prod';\n//#endregion\n\n@TaonMiddleware({\n className: 'TaonCmsCommentMiddleware',\n})\nexport class TaonCmsCommentMiddleware extends TaonBaseMiddleware {}","//#region imports\nimport { TaonBaseSubscriberForEntity, TaonSubscriber } from 'taon/browser-prod';\nimport { TaonCmsCommentEntity } from './taon-cms-comment.entity';\nimport { TaonCmsCommentProvider } from './taon-cms-comment.provider';\n//#endregion\n\n@TaonSubscriber<TaonCmsCommentSubscriber>({\n className: 'TaonCmsCommentSubscriber',\n // allowedEvents: ['afterUpdate'],\n})\nexport class TaonCmsCommentSubscriber extends TaonBaseSubscriberForEntity {\n taonCmsCommentProvider = this.injectProvider(TaonCmsCommentProvider);\n listenTo(): typeof TaonCmsCommentEntity {\n return TaonCmsCommentEntity;\n }\n}","import {\n Column,\n CreateDateColumn,\n Index,\n PrimaryGeneratedColumn,\n TaonBaseEntity,\n TaonEntity,\n} from 'taon/browser-prod';\n\n@TaonEntity({\n className: 'TaonCmsCommentVoteEntity',\n createTable: true,\n})\n/* */\n/* */\n \nexport class TaonCmsCommentVoteEntity extends TaonBaseEntity<TaonCmsCommentVoteEntity> {\n/* */\n/* */\n \n id!: number;\n\n/* */\n/* */\n \n commentId!: number;\n\n/* */\n/* */\n \n userId!: number;\n\n/* */\n/* */\n \n value!: -1 | 1;\n\n/* */\n/* */\n \n createdAt!: Date;\n}\n","import {\n Column,\n CreateDateColumn,\n Index,\n PrimaryGeneratedColumn,\n TaonBaseEntity,\n TaonEntity,\n} from 'taon/browser-prod';\n\n@TaonEntity({\n className: 'TaonCmsCommentSpamReportEntity',\n createTable: true,\n})\n/* */\n/* */\n \nexport class TaonCmsCommentSpamReportEntity extends TaonBaseEntity<TaonCmsCommentSpamReportEntity> {\n/* */\n/* */\n \n id!: number;\n\n/* */\n/* */\n \n commentId!: number;\n\n/* */\n/* */\n \n userId!: number;\n\n/* */\n/* */\n \n createdAt!: Date;\n}\n","import {\n Column,\n CreateDateColumn,\n Index,\n PrimaryGeneratedColumn,\n TaonBaseEntity,\n TaonEntity,\n} from 'taon/browser-prod';\n\n@TaonEntity({\n className: 'TaonCmsCommentBlockedUserEntity',\n createTable: true,\n})\n/* */\n/* */\n \nexport class TaonCmsCommentBlockedUserEntity extends TaonBaseEntity<TaonCmsCommentBlockedUserEntity> {\n/* */\n/* */\n \n id!: number;\n\n/* */\n/* */\n \n userId!: number;\n\n/* */\n/* */\n \n createdAt!: Date;\n}\n","import {\n Column,\n CreateDateColumn,\n Index,\n PrimaryGeneratedColumn,\n TaonBaseEntity,\n TaonEntity,\n} from 'taon/browser-prod';\n\n@TaonEntity({\n className: 'TaonCmsCommentBlockedPhraseEntity',\n createTable: true,\n})\n/* */\n/* */\n \nexport class TaonCmsCommentBlockedPhraseEntity extends TaonBaseEntity<TaonCmsCommentBlockedPhraseEntity> {\n/* */\n/* */\n \n id!: number;\n\n/* */\n/* */\n \n phrase!: string;\n\n/* */\n/* */\n \n normalizedPhrase!: string;\n\n/* */\n/* */\n \n createdAt!: Date;\n}\n","//#region imports\nimport { createContext, TaonBaseContext } from 'taon/browser-prod';\n\nimport { TaonCmsCommentEntity } from './taon-cms-comment.entity';\nimport { TaonCmsCommentController } from './taon-cms-comment.controller';\nimport { TaonCmsCommentRepository } from './taon-cms-comment.repository';\nimport { TaonCmsCommentProvider } from './taon-cms-comment.provider';\nimport { TaonCmsCommentMiddleware } from './taon-cms-comment.middleware';\nimport { TaonCmsCommentSubscriber } from './taon-cms-comment.subscriber';\nimport { TaonCmsCommentVoteEntity } from './taon-cms-comment-vote.entity';\nimport { TaonCmsCommentSpamReportEntity } from './taon-cms-comment-spam-report.entity';\nimport { TaonCmsCommentBlockedUserEntity } from './taon-cms-comment-blocked-user.entity';\nimport { TaonCmsCommentBlockedPhraseEntity } from './taon-cms-comment-blocked-phrase.entity';\n//#endregion\n\nexport const TaonCmsCommentAbstractContext = createContext(() => ({\n contextName: 'TaonCmsCommentAbstractContext',\n abstract: true,\n contexts: { TaonBaseContext },\n entities: {\n TaonCmsCommentEntity,\n TaonCmsCommentVoteEntity,\n TaonCmsCommentSpamReportEntity,\n TaonCmsCommentBlockedUserEntity,\n TaonCmsCommentBlockedPhraseEntity,\n },\n controllers: { TaonCmsCommentController },\n repositories: { TaonCmsCommentRepository },\n providers: { TaonCmsCommentProvider },\n middlewares: { TaonCmsCommentMiddleware },\n subscribers: { TaonCmsCommentSubscriber },\n}));\n","//#region imports\nimport { TaonController, TaonBaseCrudController, Query, GET, ClassHelpers__NS__asyncHandler, ClassHelpers__NS__ensureClassConfig, ClassHelpers__NS__ensureMethodConfig, ClassHelpers__NS__getClassConfig, ClassHelpers__NS__getClassFnFromObject, ClassHelpers__NS__getControllerConfigs, ClassHelpers__NS__getFullInternalName, ClassHelpers__NS__getMethodsNames, ClassHelpers__NS__getName, ClassHelpers__NS__getOrginalClass, ClassHelpers__NS__getUniqueKey, ClassHelpers__NS__hasParentClassWithName, ClassHelpers__NS__isContextClassObject, ClassHelpers__NS__mapFnError, ClassHelpers__NS__setName, Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\nimport { ___NS__add, ___NS__after, ___NS__ary, ___NS__assign, ___NS__assignIn, ___NS__assignInWith, ___NS__assignWith, ___NS__at, ___NS__attempt, ___NS__before, ___NS__bind, ___NS__bindAll, ___NS__bindKey, ___NS__camelCase, ___NS__capitalize, ___NS__castArray, ___NS__ceil, ___NS__chain, ___NS__chunk, ___NS__clamp, ___NS__clone, ___NS__cloneDeep, ___NS__cloneDeepWith, ___NS__cloneWith, ___NS__compact, ___NS__concat, ___NS__cond, ___NS__conforms, ___NS__conformsTo, ___NS__constant, ___NS__countBy, ___NS__create, ___NS__curry, ___NS__curryRight, ___NS__debounce, ___NS__deburr, ___NS__defaults, ___NS__defaultsDeep, ___NS__defaultTo, ___NS__defer, ___NS__delay, ___NS__difference, ___NS__differenceBy, ___NS__differenceWith, ___NS__divide, ___NS__drop, ___NS__dropRight, ___NS__dropRightWhile, ___NS__dropWhile, ___NS__each, ___NS__eachRight, ___NS__endsWith, ___NS__entries, ___NS__entriesIn, ___NS__eq, ___NS__escape, ___NS__escapeRegExp, ___NS__every, ___NS__extend, ___NS__extendWith, ___NS__fill, ___NS__filter, ___NS__find, ___NS__findIndex, ___NS__findKey, ___NS__findLast, ___NS__findLastIndex, ___NS__findLastKey, ___NS__first, ___NS__flatMap, ___NS__flatMapDeep, ___NS__flatMapDepth, ___NS__flatten, ___NS__flattenDeep, ___NS__flattenDepth, ___NS__flip, ___NS__floor, ___NS__flow, ___NS__flowRight, ___NS__forEach, ___NS__forEachRight, ___NS__forIn, ___NS__forInRight, ___NS__forOwn, ___NS__forOwnRight, ___NS__fromPairs, ___NS__functions, ___NS__functionsIn, ___NS__get, ___NS__groupBy, ___NS__gt, ___NS__gte, ___NS__has, ___NS__hasIn, ___NS__head, ___NS__identity, ___NS__includes, ___NS__indexOf, ___NS__initial, ___NS__inRange, ___NS__intersection, ___NS__intersectionBy, ___NS__intersectionWith, ___NS__invert, ___NS__invertBy, ___NS__invoke, ___NS__invokeMap, ___NS__isArguments, ___NS__isArray, ___NS__isArrayBuffer, ___NS__isArrayLike, ___NS__isArrayLikeObject, ___NS__isBoolean, ___NS__isBuffer, ___NS__isDate, ___NS__isElement, ___NS__isEmpty, ___NS__isEqual, ___NS__isEqualWith, ___NS__isError, ___NS__isFinite, ___NS__isFunction, ___NS__isInteger, ___NS__isLeafObject, ___NS__isLength, ___NS__isMap, ___NS__isMatch, ___NS__isMatchWith, ___NS__isNaN, ___NS__isNative, ___NS__isNil, ___NS__isNull, ___NS__isNumber, ___NS__isObject, ___NS__isObjectLike, ___NS__isPlainObject, ___NS__isRegExp, ___NS__isSafeInteger, ___NS__isSet, ___NS__isString, ___NS__isSymbol, ___NS__isTypedArray, ___NS__isUndefined, ___NS__isWeakMap, ___NS__isWeakSet, ___NS__iteratee, ___NS__join, ___NS__kebabCase, ___NS__keyBy, ___NS__keys, ___NS__keysIn, ___NS__last, ___NS__lastIndexOf, ___NS__lowerCase, ___NS__lowerFirst, ___NS__lt, ___NS__lte, ___NS__map, ___NS__mapKeys, ___NS__mapValues, ___NS__matches, ___NS__matchesProperty, ___NS__max, ___NS__maxBy, ___NS__mean, ___NS__meanBy, ___NS__memoize, ___NS__merge, ___NS__mergeWith, ___NS__method, ___NS__methodOf, ___NS__min, ___NS__minBy, ___NS__mixin, ___NS__multiply, ___NS__negate, ___NS__noop, ___NS__now, ___NS__nth, ___NS__nthArg, ___NS__omit, ___NS__omitBy, ___NS__once, ___NS__orderBy, ___NS__over, ___NS__overArgs, ___NS__overEvery, ___NS__overSome, ___NS__pad, ___NS__padEnd, ___NS__padStart, ___NS__parseInt, ___NS__partial, ___NS__partialRight, ___NS__partition, ___NS__pick, ___NS__pickBy, ___NS__property, ___NS__propertyOf, ___NS__pull, ___NS__pullAll, ___NS__pullAllBy, ___NS__pullAllWith, ___NS__pullAt, ___NS__random, ___NS__range, ___NS__rangeRight, ___NS__rearg, ___NS__reduce, ___NS__reduceRight, ___NS__reject, ___NS__remove, ___NS__repeat, ___NS__replace, ___NS__rest, ___NS__result, ___NS__reverse, ___NS__round, ___NS__sample, ___NS__sampleSize, ___NS__set, ___NS__setWith, ___NS__shuffle, ___NS__size, ___NS__slice, ___NS__snakeCase, ___NS__some, ___NS__sortBy, ___NS__sortedIndex, ___NS__sortedIndexBy, ___NS__sortedIndexOf, ___NS__sortedLastIndex, ___NS__sortedLastIndexBy, ___NS__sortedLastIndexOf, ___NS__sortedUniq, ___NS__sortedUniqBy, ___NS__split, ___NS__spread, ___NS__startCase, ___NS__startsWith, ___NS__stubArray, ___NS__stubFalse, ___NS__stubObject, ___NS__stubString, ___NS__stubTrue, ___NS__subtract, ___NS__sum, ___NS__sumBy, ___NS__tail, ___NS__take, ___NS__takeRight, ___NS__takeRightWhile, ___NS__takeWhile, ___NS__tap, ___NS__template, ___NS__templateSettings, ___NS__throttle, ___NS__thru, ___NS__times, ___NS__toArray, ___NS__toFinite, ___NS__toInteger, ___NS__toLength, ___NS__toLower, ___NS__toNumber, ___NS__toPairs, ___NS__toPairsIn, ___NS__toPath, ___NS__toPlainObject, ___NS__toSafeInteger, ___NS__toString, ___NS__toUpper, ___NS__transform, ___NS__trim, ___NS__trimEnd, ___NS__trimStart, ___NS__truncate, ___NS__unary, ___NS__unescape, ___NS__union, ___NS__unionBy, ___NS__unionWith, ___NS__uniq, ___NS__uniqBy, ___NS__uniqueId, ___NS__uniqWith, ___NS__unset, ___NS__unzip, ___NS__unzipWith, ___NS__update, ___NS__updateWith, ___NS__upperCase, ___NS__upperFirst, ___NS__values, ___NS__valuesIn, ___NS__without, ___NS__words, ___NS__wrap, ___NS__xor, ___NS__xorBy, ___NS__xorWith, ___NS__zip, ___NS__zipObject, ___NS__zipObjectDeep, ___NS__zipWith } from 'tnp-core/browser-prod';\n\nimport { TaonCmsContentRevisionEntity } from './taon-cms-content-revision.entity';\nimport { TaonCmsContentRevisionRepository } from './taon-cms-content-revision.repository';\n//#endregion\n\n@TaonController<TaonCmsContentRevisionController>({\n className: 'TaonCmsContentRevisionController',\n allowedMethods: [],\n})\nexport class TaonCmsContentRevisionController extends TaonBaseCrudController<TaonCmsContentRevisionEntity> {\n entityClassResolveFn: () => typeof TaonCmsContentRevisionEntity = () =>\n TaonCmsContentRevisionEntity;\n\n taonCmsContentRevisionRepository = this.injectCustomRepo(\n TaonCmsContentRevisionRepository,\n );\n}","//#region imports\nimport { TaonBaseProvider, TaonProvider, Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\nimport { ___NS__add, ___NS__after, ___NS__ary, ___NS__assign, ___NS__assignIn, ___NS__assignInWith, ___NS__assignWith, ___NS__at, ___NS__attempt, ___NS__before, ___NS__bind, ___NS__bindAll, ___NS__bindKey, ___NS__camelCase, ___NS__capitalize, ___NS__castArray, ___NS__ceil, ___NS__chain, ___NS__chunk, ___NS__clamp, ___NS__clone, ___NS__cloneDeep, ___NS__cloneDeepWith, ___NS__cloneWith, ___NS__compact, ___NS__concat, ___NS__cond, ___NS__conforms, ___NS__conformsTo, ___NS__constant, ___NS__countBy, ___NS__create, ___NS__curry, ___NS__curryRight, ___NS__debounce, ___NS__deburr, ___NS__defaults, ___NS__defaultsDeep, ___NS__defaultTo, ___NS__defer, ___NS__delay, ___NS__difference, ___NS__differenceBy, ___NS__differenceWith, ___NS__divide, ___NS__drop, ___NS__dropRight, ___NS__dropRightWhile, ___NS__dropWhile, ___NS__each, ___NS__eachRight, ___NS__endsWith, ___NS__entries, ___NS__entriesIn, ___NS__eq, ___NS__escape, ___NS__escapeRegExp, ___NS__every, ___NS__extend, ___NS__extendWith, ___NS__fill, ___NS__filter, ___NS__find, ___NS__findIndex, ___NS__findKey, ___NS__findLast, ___NS__findLastIndex, ___NS__findLastKey, ___NS__first, ___NS__flatMap, ___NS__flatMapDeep, ___NS__flatMapDepth, ___NS__flatten, ___NS__flattenDeep, ___NS__flattenDepth, ___NS__flip, ___NS__floor, ___NS__flow, ___NS__flowRight, ___NS__forEach, ___NS__forEachRight, ___NS__forIn, ___NS__forInRight, ___NS__forOwn, ___NS__forOwnRight, ___NS__fromPairs, ___NS__functions, ___NS__functionsIn, ___NS__get, ___NS__groupBy, ___NS__gt, ___NS__gte, ___NS__has, ___NS__hasIn, ___NS__head, ___NS__identity, ___NS__includes, ___NS__indexOf, ___NS__initial, ___NS__inRange, ___NS__intersection, ___NS__intersectionBy, ___NS__intersectionWith, ___NS__invert, ___NS__invertBy, ___NS__invoke, ___NS__invokeMap, ___NS__isArguments, ___NS__isArray, ___NS__isArrayBuffer, ___NS__isArrayLike, ___NS__isArrayLikeObject, ___NS__isBoolean, ___NS__isBuffer, ___NS__isDate, ___NS__isElement, ___NS__isEmpty, ___NS__isEqual, ___NS__isEqualWith, ___NS__isError, ___NS__isFinite, ___NS__isFunction, ___NS__isInteger, ___NS__isLeafObject, ___NS__isLength, ___NS__isMap, ___NS__isMatch, ___NS__isMatchWith, ___NS__isNaN, ___NS__isNative, ___NS__isNil, ___NS__isNull, ___NS__isNumber, ___NS__isObject, ___NS__isObjectLike, ___NS__isPlainObject, ___NS__isRegExp, ___NS__isSafeInteger, ___NS__isSet, ___NS__isString, ___NS__isSymbol, ___NS__isTypedArray, ___NS__isUndefined, ___NS__isWeakMap, ___NS__isWeakSet, ___NS__iteratee, ___NS__join, ___NS__kebabCase, ___NS__keyBy, ___NS__keys, ___NS__keysIn, ___NS__last, ___NS__lastIndexOf, ___NS__lowerCase, ___NS__lowerFirst, ___NS__lt, ___NS__lte, ___NS__map, ___NS__mapKeys, ___NS__mapValues, ___NS__matches, ___NS__matchesProperty, ___NS__max, ___NS__maxBy, ___NS__mean, ___NS__meanBy, ___NS__memoize, ___NS__merge, ___NS__mergeWith, ___NS__method, ___NS__methodOf, ___NS__min, ___NS__minBy, ___NS__mixin, ___NS__multiply, ___NS__negate, ___NS__noop, ___NS__now, ___NS__nth, ___NS__nthArg, ___NS__omit, ___NS__omitBy, ___NS__once, ___NS__orderBy, ___NS__over, ___NS__overArgs, ___NS__overEvery, ___NS__overSome, ___NS__pad, ___NS__padEnd, ___NS__padStart, ___NS__parseInt, ___NS__partial, ___NS__partialRight, ___NS__partition, ___NS__pick, ___NS__pickBy, ___NS__property, ___NS__propertyOf, ___NS__pull, ___NS__pullAll, ___NS__pullAllBy, ___NS__pullAllWith, ___NS__pullAt, ___NS__random, ___NS__range, ___NS__rangeRight, ___NS__rearg, ___NS__reduce, ___NS__reduceRight, ___NS__reject, ___NS__remove, ___NS__repeat, ___NS__replace, ___NS__rest, ___NS__result, ___NS__reverse, ___NS__round, ___NS__sample, ___NS__sampleSize, ___NS__set, ___NS__setWith, ___NS__shuffle, ___NS__size, ___NS__slice, ___NS__snakeCase, ___NS__some, ___NS__sortBy, ___NS__sortedIndex, ___NS__sortedIndexBy, ___NS__sortedIndexOf, ___NS__sortedLastIndex, ___NS__sortedLastIndexBy, ___NS__sortedLastIndexOf, ___NS__sortedUniq, ___NS__sortedUniqBy, ___NS__split, ___NS__spread, ___NS__startCase, ___NS__startsWith, ___NS__stubArray, ___NS__stubFalse, ___NS__stubObject, ___NS__stubString, ___NS__stubTrue, ___NS__subtract, ___NS__sum, ___NS__sumBy, ___NS__tail, ___NS__take, ___NS__takeRight, ___NS__takeRightWhile, ___NS__takeWhile, ___NS__tap, ___NS__template, ___NS__templateSettings, ___NS__throttle, ___NS__thru, ___NS__times, ___NS__toArray, ___NS__toFinite, ___NS__toInteger, ___NS__toLength, ___NS__toLower, ___NS__toNumber, ___NS__toPairs, ___NS__toPairsIn, ___NS__toPath, ___NS__toPlainObject, ___NS__toSafeInteger, ___NS__toString, ___NS__toUpper, ___NS__transform, ___NS__trim, ___NS__trimEnd, ___NS__trimStart, ___NS__truncate, ___NS__unary, ___NS__unescape, ___NS__union, ___NS__unionBy, ___NS__unionWith, ___NS__uniq, ___NS__uniqBy, ___NS__uniqueId, ___NS__uniqWith, ___NS__unset, ___NS__unzip, ___NS__unzipWith, ___NS__update, ___NS__updateWith, ___NS__upperCase, ___NS__upperFirst, ___NS__values, ___NS__valuesIn, ___NS__without, ___NS__words, ___NS__wrap, ___NS__xor, ___NS__xorBy, ___NS__xorWith, ___NS__zip, ___NS__zipObject, ___NS__zipObjectDeep, ___NS__zipWith } from 'tnp-core/browser-prod';\nimport { Injectable } from '@angular/core';\n//#endregion\n\n@TaonProvider({\n className: 'TaonCmsContentRevisionProvider',\n})\n//#region @browser\n@Injectable()\n//#endregion\nexport class TaonCmsContentRevisionProvider extends TaonBaseProvider {\n\n\n\n}","//#region imports\nimport { TaonBaseMiddleware, TaonMiddleware, Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\nimport { ___NS__add, ___NS__after, ___NS__ary, ___NS__assign, ___NS__assignIn, ___NS__assignInWith, ___NS__assignWith, ___NS__at, ___NS__attempt, ___NS__before, ___NS__bind, ___NS__bindAll, ___NS__bindKey, ___NS__camelCase, ___NS__capitalize, ___NS__castArray, ___NS__ceil, ___NS__chain, ___NS__chunk, ___NS__clamp, ___NS__clone, ___NS__cloneDeep, ___NS__cloneDeepWith, ___NS__cloneWith, ___NS__compact, ___NS__concat, ___NS__cond, ___NS__conforms, ___NS__conformsTo, ___NS__constant, ___NS__countBy, ___NS__create, ___NS__curry, ___NS__curryRight, ___NS__debounce, ___NS__deburr, ___NS__defaults, ___NS__defaultsDeep, ___NS__defaultTo, ___NS__defer, ___NS__delay, ___NS__difference, ___NS__differenceBy, ___NS__differenceWith, ___NS__divide, ___NS__drop, ___NS__dropRight, ___NS__dropRightWhile, ___NS__dropWhile, ___NS__each, ___NS__eachRight, ___NS__endsWith, ___NS__entries, ___NS__entriesIn, ___NS__eq, ___NS__escape, ___NS__escapeRegExp, ___NS__every, ___NS__extend, ___NS__extendWith, ___NS__fill, ___NS__filter, ___NS__find, ___NS__findIndex, ___NS__findKey, ___NS__findLast, ___NS__findLastIndex, ___NS__findLastKey, ___NS__first, ___NS__flatMap, ___NS__flatMapDeep, ___NS__flatMapDepth, ___NS__flatten, ___NS__flattenDeep, ___NS__flattenDepth, ___NS__flip, ___NS__floor, ___NS__flow, ___NS__flowRight, ___NS__forEach, ___NS__forEachRight, ___NS__forIn, ___NS__forInRight, ___NS__forOwn, ___NS__forOwnRight, ___NS__fromPairs, ___NS__functions, ___NS__functionsIn, ___NS__get, ___NS__groupBy, ___NS__gt, ___NS__gte, ___NS__has, ___NS__hasIn, ___NS__head, ___NS__identity, ___NS__includes, ___NS__indexOf, ___NS__initial, ___NS__inRange, ___NS__intersection, ___NS__intersectionBy, ___NS__intersectionWith, ___NS__invert, ___NS__invertBy, ___NS__invoke, ___NS__invokeMap, ___NS__isArguments, ___NS__isArray, ___NS__isArrayBuffer, ___NS__isArrayLike, ___NS__isArrayLikeObject, ___NS__isBoolean, ___NS__isBuffer, ___NS__isDate, ___NS__isElement, ___NS__isEmpty, ___NS__isEqual, ___NS__isEqualWith, ___NS__isError, ___NS__isFinite, ___NS__isFunction, ___NS__isInteger, ___NS__isLeafObject, ___NS__isLength, ___NS__isMap, ___NS__isMatch, ___NS__isMatchWith, ___NS__isNaN, ___NS__isNative, ___NS__isNil, ___NS__isNull, ___NS__isNumber, ___NS__isObject, ___NS__isObjectLike, ___NS__isPlainObject, ___NS__isRegExp, ___NS__isSafeInteger, ___NS__isSet, ___NS__isString, ___NS__isSymbol, ___NS__isTypedArray, ___NS__isUndefined, ___NS__isWeakMap, ___NS__isWeakSet, ___NS__iteratee, ___NS__join, ___NS__kebabCase, ___NS__keyBy, ___NS__keys, ___NS__keysIn, ___NS__last, ___NS__lastIndexOf, ___NS__lowerCase, ___NS__lowerFirst, ___NS__lt, ___NS__lte, ___NS__map, ___NS__mapKeys, ___NS__mapValues, ___NS__matches, ___NS__matchesProperty, ___NS__max, ___NS__maxBy, ___NS__mean, ___NS__meanBy, ___NS__memoize, ___NS__merge, ___NS__mergeWith, ___NS__method, ___NS__methodOf, ___NS__min, ___NS__minBy, ___NS__mixin, ___NS__multiply, ___NS__negate, ___NS__noop, ___NS__now, ___NS__nth, ___NS__nthArg, ___NS__omit, ___NS__omitBy, ___NS__once, ___NS__orderBy, ___NS__over, ___NS__overArgs, ___NS__overEvery, ___NS__overSome, ___NS__pad, ___NS__padEnd, ___NS__padStart, ___NS__parseInt, ___NS__partial, ___NS__partialRight, ___NS__partition, ___NS__pick, ___NS__pickBy, ___NS__property, ___NS__propertyOf, ___NS__pull, ___NS__pullAll, ___NS__pullAllBy, ___NS__pullAllWith, ___NS__pullAt, ___NS__random, ___NS__range, ___NS__rangeRight, ___NS__rearg, ___NS__reduce, ___NS__reduceRight, ___NS__reject, ___NS__remove, ___NS__repeat, ___NS__replace, ___NS__rest, ___NS__result, ___NS__reverse, ___NS__round, ___NS__sample, ___NS__sampleSize, ___NS__set, ___NS__setWith, ___NS__shuffle, ___NS__size, ___NS__slice, ___NS__snakeCase, ___NS__some, ___NS__sortBy, ___NS__sortedIndex, ___NS__sortedIndexBy, ___NS__sortedIndexOf, ___NS__sortedLastIndex, ___NS__sortedLastIndexBy, ___NS__sortedLastIndexOf, ___NS__sortedUniq, ___NS__sortedUniqBy, ___NS__split, ___NS__spread, ___NS__startCase, ___NS__startsWith, ___NS__stubArray, ___NS__stubFalse, ___NS__stubObject, ___NS__stubString, ___NS__stubTrue, ___NS__subtract, ___NS__sum, ___NS__sumBy, ___NS__tail, ___NS__take, ___NS__takeRight, ___NS__takeRightWhile, ___NS__takeWhile, ___NS__tap, ___NS__template, ___NS__templateSettings, ___NS__throttle, ___NS__thru, ___NS__times, ___NS__toArray, ___NS__toFinite, ___NS__toInteger, ___NS__toLength, ___NS__toLower, ___NS__toNumber, ___NS__toPairs, ___NS__toPairsIn, ___NS__toPath, ___NS__toPlainObject, ___NS__toSafeInteger, ___NS__toString, ___NS__toUpper, ___NS__transform, ___NS__trim, ___NS__trimEnd, ___NS__trimStart, ___NS__truncate, ___NS__unary, ___NS__unescape, ___NS__union, ___NS__unionBy, ___NS__unionWith, ___NS__uniq, ___NS__uniqBy, ___NS__uniqueId, ___NS__uniqWith, ___NS__unset, ___NS__unzip, ___NS__unzipWith, ___NS__update, ___NS__updateWith, ___NS__upperCase, ___NS__upperFirst, ___NS__values, ___NS__valuesIn, ___NS__without, ___NS__words, ___NS__wrap, ___NS__xor, ___NS__xorBy, ___NS__xorWith, ___NS__zip, ___NS__zipObject, ___NS__zipObjectDeep, ___NS__zipWith } from 'tnp-core/browser-prod';\n//#endregion\n\n@TaonMiddleware({\n className: 'TaonCmsContentRevisionMiddleware',\n})\nexport class TaonCmsContentRevisionMiddleware extends TaonBaseMiddleware {}","//#region imports\nimport { TaonBaseSubscriberForEntity, TaonSubscriber } from 'taon/browser-prod';\nimport { TaonCmsContentRevisionEntity } from './taon-cms-content-revision.entity';\nimport { TaonCmsContentRevisionProvider } from './taon-cms-content-revision.provider';\n//#endregion\n\n@TaonSubscriber<TaonCmsContentRevisionSubscriber>({\n className: 'TaonCmsContentRevisionSubscriber',\n // allowedEvents: ['afterUpdate'],\n})\nexport class TaonCmsContentRevisionSubscriber extends TaonBaseSubscriberForEntity {\n taonCmsContentRevisionProvider = this.injectProvider(TaonCmsContentRevisionProvider);\n listenTo(): typeof TaonCmsContentRevisionEntity {\n return TaonCmsContentRevisionEntity;\n }\n}","//#region imports\nimport { createContext, TaonBaseContext } from 'taon/browser-prod';\n\nimport { TaonCmsContentRevisionEntity } from './taon-cms-content-revision.entity';\nimport { TaonCmsContentRevisionController } from './taon-cms-content-revision.controller';\nimport { TaonCmsContentRevisionRepository } from './taon-cms-content-revision.repository';\nimport { TaonCmsContentRevisionProvider } from './taon-cms-content-revision.provider';\nimport { TaonCmsContentRevisionMiddleware } from './taon-cms-content-revision.middleware';\nimport { TaonCmsContentRevisionSubscriber } from './taon-cms-content-revision.subscriber';\n//#endregion\n\nexport const TaonCmsContentRevisionAbstractContext = createContext(() => ({\n contextName: 'TaonCmsContentRevisionAbstractContext',\n abstract: true,\n contexts: { TaonBaseContext },\n entities: { TaonCmsContentRevisionEntity },\n controllers: { TaonCmsContentRevisionController },\n repositories: { TaonCmsContentRevisionRepository },\n providers: { TaonCmsContentRevisionProvider },\n middlewares: { TaonCmsContentRevisionMiddleware },\n subscribers: { TaonCmsContentRevisionSubscriber },\n}));\n","//#region imports\nimport { TaonController, TaonBaseCrudController, Query, GET, ClassHelpers__NS__asyncHandler, ClassHelpers__NS__ensureClassConfig, ClassHelpers__NS__ensureMethodConfig, ClassHelpers__NS__getClassConfig, ClassHelpers__NS__getClassFnFromObject, ClassHelpers__NS__getControllerConfigs, ClassHelpers__NS__getFullInternalName, ClassHelpers__NS__getMethodsNames, ClassHelpers__NS__getName, ClassHelpers__NS__getOrginalClass, ClassHelpers__NS__getUniqueKey, ClassHelpers__NS__hasParentClassWithName, ClassHelpers__NS__isContextClassObject, ClassHelpers__NS__mapFnError, ClassHelpers__NS__setName, Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\nimport { ___NS__add, ___NS__after, ___NS__ary, ___NS__assign, ___NS__assignIn, ___NS__assignInWith, ___NS__assignWith, ___NS__at, ___NS__attempt, ___NS__before, ___NS__bind, ___NS__bindAll, ___NS__bindKey, ___NS__camelCase, ___NS__capitalize, ___NS__castArray, ___NS__ceil, ___NS__chain, ___NS__chunk, ___NS__clamp, ___NS__clone, ___NS__cloneDeep, ___NS__cloneDeepWith, ___NS__cloneWith, ___NS__compact, ___NS__concat, ___NS__cond, ___NS__conforms, ___NS__conformsTo, ___NS__constant, ___NS__countBy, ___NS__create, ___NS__curry, ___NS__curryRight, ___NS__debounce, ___NS__deburr, ___NS__defaults, ___NS__defaultsDeep, ___NS__defaultTo, ___NS__defer, ___NS__delay, ___NS__difference, ___NS__differenceBy, ___NS__differenceWith, ___NS__divide, ___NS__drop, ___NS__dropRight, ___NS__dropRightWhile, ___NS__dropWhile, ___NS__each, ___NS__eachRight, ___NS__endsWith, ___NS__entries, ___NS__entriesIn, ___NS__eq, ___NS__escape, ___NS__escapeRegExp, ___NS__every, ___NS__extend, ___NS__extendWith, ___NS__fill, ___NS__filter, ___NS__find, ___NS__findIndex, ___NS__findKey, ___NS__findLast, ___NS__findLastIndex, ___NS__findLastKey, ___NS__first, ___NS__flatMap, ___NS__flatMapDeep, ___NS__flatMapDepth, ___NS__flatten, ___NS__flattenDeep, ___NS__flattenDepth, ___NS__flip, ___NS__floor, ___NS__flow, ___NS__flowRight, ___NS__forEach, ___NS__forEachRight, ___NS__forIn, ___NS__forInRight, ___NS__forOwn, ___NS__forOwnRight, ___NS__fromPairs, ___NS__functions, ___NS__functionsIn, ___NS__get, ___NS__groupBy, ___NS__gt, ___NS__gte, ___NS__has, ___NS__hasIn, ___NS__head, ___NS__identity, ___NS__includes, ___NS__indexOf, ___NS__initial, ___NS__inRange, ___NS__intersection, ___NS__intersectionBy, ___NS__intersectionWith, ___NS__invert, ___NS__invertBy, ___NS__invoke, ___NS__invokeMap, ___NS__isArguments, ___NS__isArray, ___NS__isArrayBuffer, ___NS__isArrayLike, ___NS__isArrayLikeObject, ___NS__isBoolean, ___NS__isBuffer, ___NS__isDate, ___NS__isElement, ___NS__isEmpty, ___NS__isEqual, ___NS__isEqualWith, ___NS__isError, ___NS__isFinite, ___NS__isFunction, ___NS__isInteger, ___NS__isLeafObject, ___NS__isLength, ___NS__isMap, ___NS__isMatch, ___NS__isMatchWith, ___NS__isNaN, ___NS__isNative, ___NS__isNil, ___NS__isNull, ___NS__isNumber, ___NS__isObject, ___NS__isObjectLike, ___NS__isPlainObject, ___NS__isRegExp, ___NS__isSafeInteger, ___NS__isSet, ___NS__isString, ___NS__isSymbol, ___NS__isTypedArray, ___NS__isUndefined, ___NS__isWeakMap, ___NS__isWeakSet, ___NS__iteratee, ___NS__join, ___NS__kebabCase, ___NS__keyBy, ___NS__keys, ___NS__keysIn, ___NS__last, ___NS__lastIndexOf, ___NS__lowerCase, ___NS__lowerFirst, ___NS__lt, ___NS__lte, ___NS__map, ___NS__mapKeys, ___NS__mapValues, ___NS__matches, ___NS__matchesProperty, ___NS__max, ___NS__maxBy, ___NS__mean, ___NS__meanBy, ___NS__memoize, ___NS__merge, ___NS__mergeWith, ___NS__method, ___NS__methodOf, ___NS__min, ___NS__minBy, ___NS__mixin, ___NS__multiply, ___NS__negate, ___NS__noop, ___NS__now, ___NS__nth, ___NS__nthArg, ___NS__omit, ___NS__omitBy, ___NS__once, ___NS__orderBy, ___NS__over, ___NS__overArgs, ___NS__overEvery, ___NS__overSome, ___NS__pad, ___NS__padEnd, ___NS__padStart, ___NS__parseInt, ___NS__partial, ___NS__partialRight, ___NS__partition, ___NS__pick, ___NS__pickBy, ___NS__property, ___NS__propertyOf, ___NS__pull, ___NS__pullAll, ___NS__pullAllBy, ___NS__pullAllWith, ___NS__pullAt, ___NS__random, ___NS__range, ___NS__rangeRight, ___NS__rearg, ___NS__reduce, ___NS__reduceRight, ___NS__reject, ___NS__remove, ___NS__repeat, ___NS__replace, ___NS__rest, ___NS__result, ___NS__reverse, ___NS__round, ___NS__sample, ___NS__sampleSize, ___NS__set, ___NS__setWith, ___NS__shuffle, ___NS__size, ___NS__slice, ___NS__snakeCase, ___NS__some, ___NS__sortBy, ___NS__sortedIndex, ___NS__sortedIndexBy, ___NS__sortedIndexOf, ___NS__sortedLastIndex, ___NS__sortedLastIndexBy, ___NS__sortedLastIndexOf, ___NS__sortedUniq, ___NS__sortedUniqBy, ___NS__split, ___NS__spread, ___NS__startCase, ___NS__startsWith, ___NS__stubArray, ___NS__stubFalse, ___NS__stubObject, ___NS__stubString, ___NS__stubTrue, ___NS__subtract, ___NS__sum, ___NS__sumBy, ___NS__tail, ___NS__take, ___NS__takeRight, ___NS__takeRightWhile, ___NS__takeWhile, ___NS__tap, ___NS__template, ___NS__templateSettings, ___NS__throttle, ___NS__thru, ___NS__times, ___NS__toArray, ___NS__toFinite, ___NS__toInteger, ___NS__toLength, ___NS__toLower, ___NS__toNumber, ___NS__toPairs, ___NS__toPairsIn, ___NS__toPath, ___NS__toPlainObject, ___NS__toSafeInteger, ___NS__toString, ___NS__toUpper, ___NS__transform, ___NS__trim, ___NS__trimEnd, ___NS__trimStart, ___NS__truncate, ___NS__unary, ___NS__unescape, ___NS__union, ___NS__unionBy, ___NS__unionWith, ___NS__uniq, ___NS__uniqBy, ___NS__uniqueId, ___NS__uniqWith, ___NS__unset, ___NS__unzip, ___NS__unzipWith, ___NS__update, ___NS__updateWith, ___NS__upperCase, ___NS__upperFirst, ___NS__values, ___NS__valuesIn, ___NS__without, ___NS__words, ___NS__wrap, ___NS__xor, ___NS__xorBy, ___NS__xorWith, ___NS__zip, ___NS__zipObject, ___NS__zipObjectDeep, ___NS__zipWith } from 'tnp-core/browser-prod';\n\nimport { TaonCmsContentTagEntity } from './taon-cms-content-tag.entity';\nimport { TaonCmsContentTagRepository } from './taon-cms-content-tag.repository';\n//#endregion\n\n@TaonController<TaonCmsContentTagController>({\n className: 'TaonCmsContentTagController',\n allowedMethods: [],\n})\nexport class TaonCmsContentTagController extends TaonBaseCrudController<TaonCmsContentTagEntity> {\n entityClassResolveFn: () => typeof TaonCmsContentTagEntity = () =>\n TaonCmsContentTagEntity;\n\n taonCmsContentTagRepository = this.injectCustomRepo(\n TaonCmsContentTagRepository,\n );\n}","//#region imports\nimport { TaonBaseProvider, TaonProvider, Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\nimport { ___NS__add, ___NS__after, ___NS__ary, ___NS__assign, ___NS__assignIn, ___NS__assignInWith, ___NS__assignWith, ___NS__at, ___NS__attempt, ___NS__before, ___NS__bind, ___NS__bindAll, ___NS__bindKey, ___NS__camelCase, ___NS__capitalize, ___NS__castArray, ___NS__ceil, ___NS__chain, ___NS__chunk, ___NS__clamp, ___NS__clone, ___NS__cloneDeep, ___NS__cloneDeepWith, ___NS__cloneWith, ___NS__compact, ___NS__concat, ___NS__cond, ___NS__conforms, ___NS__conformsTo, ___NS__constant, ___NS__countBy, ___NS__create, ___NS__curry, ___NS__curryRight, ___NS__debounce, ___NS__deburr, ___NS__defaults, ___NS__defaultsDeep, ___NS__defaultTo, ___NS__defer, ___NS__delay, ___NS__difference, ___NS__differenceBy, ___NS__differenceWith, ___NS__divide, ___NS__drop, ___NS__dropRight, ___NS__dropRightWhile, ___NS__dropWhile, ___NS__each, ___NS__eachRight, ___NS__endsWith, ___NS__entries, ___NS__entriesIn, ___NS__eq, ___NS__escape, ___NS__escapeRegExp, ___NS__every, ___NS__extend, ___NS__extendWith, ___NS__fill, ___NS__filter, ___NS__find, ___NS__findIndex, ___NS__findKey, ___NS__findLast, ___NS__findLastIndex, ___NS__findLastKey, ___NS__first, ___NS__flatMap, ___NS__flatMapDeep, ___NS__flatMapDepth, ___NS__flatten, ___NS__flattenDeep, ___NS__flattenDepth, ___NS__flip, ___NS__floor, ___NS__flow, ___NS__flowRight, ___NS__forEach, ___NS__forEachRight, ___NS__forIn, ___NS__forInRight, ___NS__forOwn, ___NS__forOwnRight, ___NS__fromPairs, ___NS__functions, ___NS__functionsIn, ___NS__get, ___NS__groupBy, ___NS__gt, ___NS__gte, ___NS__has, ___NS__hasIn, ___NS__head, ___NS__identity, ___NS__includes, ___NS__indexOf, ___NS__initial, ___NS__inRange, ___NS__intersection, ___NS__intersectionBy, ___NS__intersectionWith, ___NS__invert, ___NS__invertBy, ___NS__invoke, ___NS__invokeMap, ___NS__isArguments, ___NS__isArray, ___NS__isArrayBuffer, ___NS__isArrayLike, ___NS__isArrayLikeObject, ___NS__isBoolean, ___NS__isBuffer, ___NS__isDate, ___NS__isElement, ___NS__isEmpty, ___NS__isEqual, ___NS__isEqualWith, ___NS__isError, ___NS__isFinite, ___NS__isFunction, ___NS__isInteger, ___NS__isLeafObject, ___NS__isLength, ___NS__isMap, ___NS__isMatch, ___NS__isMatchWith, ___NS__isNaN, ___NS__isNative, ___NS__isNil, ___NS__isNull, ___NS__isNumber, ___NS__isObject, ___NS__isObjectLike, ___NS__isPlainObject, ___NS__isRegExp, ___NS__isSafeInteger, ___NS__isSet, ___NS__isString, ___NS__isSymbol, ___NS__isTypedArray, ___NS__isUndefined, ___NS__isWeakMap, ___NS__isWeakSet, ___NS__iteratee, ___NS__join, ___NS__kebabCase, ___NS__keyBy, ___NS__keys, ___NS__keysIn, ___NS__last, ___NS__lastIndexOf, ___NS__lowerCase, ___NS__lowerFirst, ___NS__lt, ___NS__lte, ___NS__map, ___NS__mapKeys, ___NS__mapValues, ___NS__matches, ___NS__matchesProperty, ___NS__max, ___NS__maxBy, ___NS__mean, ___NS__meanBy, ___NS__memoize, ___NS__merge, ___NS__mergeWith, ___NS__method, ___NS__methodOf, ___NS__min, ___NS__minBy, ___NS__mixin, ___NS__multiply, ___NS__negate, ___NS__noop, ___NS__now, ___NS__nth, ___NS__nthArg, ___NS__omit, ___NS__omitBy, ___NS__once, ___NS__orderBy, ___NS__over, ___NS__overArgs, ___NS__overEvery, ___NS__overSome, ___NS__pad, ___NS__padEnd, ___NS__padStart, ___NS__parseInt, ___NS__partial, ___NS__partialRight, ___NS__partition, ___NS__pick, ___NS__pickBy, ___NS__property, ___NS__propertyOf, ___NS__pull, ___NS__pullAll, ___NS__pullAllBy, ___NS__pullAllWith, ___NS__pullAt, ___NS__random, ___NS__range, ___NS__rangeRight, ___NS__rearg, ___NS__reduce, ___NS__reduceRight, ___NS__reject, ___NS__remove, ___NS__repeat, ___NS__replace, ___NS__rest, ___NS__result, ___NS__reverse, ___NS__round, ___NS__sample, ___NS__sampleSize, ___NS__set, ___NS__setWith, ___NS__shuffle, ___NS__size, ___NS__slice, ___NS__snakeCase, ___NS__some, ___NS__sortBy, ___NS__sortedIndex, ___NS__sortedIndexBy, ___NS__sortedIndexOf, ___NS__sortedLastIndex, ___NS__sortedLastIndexBy, ___NS__sortedLastIndexOf, ___NS__sortedUniq, ___NS__sortedUniqBy, ___NS__split, ___NS__spread, ___NS__startCase, ___NS__startsWith, ___NS__stubArray, ___NS__stubFalse, ___NS__stubObject, ___NS__stubString, ___NS__stubTrue, ___NS__subtract, ___NS__sum, ___NS__sumBy, ___NS__tail, ___NS__take, ___NS__takeRight, ___NS__takeRightWhile, ___NS__takeWhile, ___NS__tap, ___NS__template, ___NS__templateSettings, ___NS__throttle, ___NS__thru, ___NS__times, ___NS__toArray, ___NS__toFinite, ___NS__toInteger, ___NS__toLength, ___NS__toLower, ___NS__toNumber, ___NS__toPairs, ___NS__toPairsIn, ___NS__toPath, ___NS__toPlainObject, ___NS__toSafeInteger, ___NS__toString, ___NS__toUpper, ___NS__transform, ___NS__trim, ___NS__trimEnd, ___NS__trimStart, ___NS__truncate, ___NS__unary, ___NS__unescape, ___NS__union, ___NS__unionBy, ___NS__unionWith, ___NS__uniq, ___NS__uniqBy, ___NS__uniqueId, ___NS__uniqWith, ___NS__unset, ___NS__unzip, ___NS__unzipWith, ___NS__update, ___NS__updateWith, ___NS__upperCase, ___NS__upperFirst, ___NS__values, ___NS__valuesIn, ___NS__without, ___NS__words, ___NS__wrap, ___NS__xor, ___NS__xorBy, ___NS__xorWith, ___NS__zip, ___NS__zipObject, ___NS__zipObjectDeep, ___NS__zipWith } from 'tnp-core/browser-prod';\nimport { Injectable } from '@angular/core';\n//#endregion\n\n@TaonProvider({\n className: 'TaonCmsContentTagProvider',\n})\n//#region @browser\n@Injectable()\n//#endregion\nexport class TaonCmsContentTagProvider extends TaonBaseProvider {\n\n\n\n}","//#region imports\nimport { TaonBaseMiddleware, TaonMiddleware, Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\nimport { ___NS__add, ___NS__after, ___NS__ary, ___NS__assign, ___NS__assignIn, ___NS__assignInWith, ___NS__assignWith, ___NS__at, ___NS__attempt, ___NS__before, ___NS__bind, ___NS__bindAll, ___NS__bindKey, ___NS__camelCase, ___NS__capitalize, ___NS__castArray, ___NS__ceil, ___NS__chain, ___NS__chunk, ___NS__clamp, ___NS__clone, ___NS__cloneDeep, ___NS__cloneDeepWith, ___NS__cloneWith, ___NS__compact, ___NS__concat, ___NS__cond, ___NS__conforms, ___NS__conformsTo, ___NS__constant, ___NS__countBy, ___NS__create, ___NS__curry, ___NS__curryRight, ___NS__debounce, ___NS__deburr, ___NS__defaults, ___NS__defaultsDeep, ___NS__defaultTo, ___NS__defer, ___NS__delay, ___NS__difference, ___NS__differenceBy, ___NS__differenceWith, ___NS__divide, ___NS__drop, ___NS__dropRight, ___NS__dropRightWhile, ___NS__dropWhile, ___NS__each, ___NS__eachRight, ___NS__endsWith, ___NS__entries, ___NS__entriesIn, ___NS__eq, ___NS__escape, ___NS__escapeRegExp, ___NS__every, ___NS__extend, ___NS__extendWith, ___NS__fill, ___NS__filter, ___NS__find, ___NS__findIndex, ___NS__findKey, ___NS__findLast, ___NS__findLastIndex, ___NS__findLastKey, ___NS__first, ___NS__flatMap, ___NS__flatMapDeep, ___NS__flatMapDepth, ___NS__flatten, ___NS__flattenDeep, ___NS__flattenDepth, ___NS__flip, ___NS__floor, ___NS__flow, ___NS__flowRight, ___NS__forEach, ___NS__forEachRight, ___NS__forIn, ___NS__forInRight, ___NS__forOwn, ___NS__forOwnRight, ___NS__fromPairs, ___NS__functions, ___NS__functionsIn, ___NS__get, ___NS__groupBy, ___NS__gt, ___NS__gte, ___NS__has, ___NS__hasIn, ___NS__head, ___NS__identity, ___NS__includes, ___NS__indexOf, ___NS__initial, ___NS__inRange, ___NS__intersection, ___NS__intersectionBy, ___NS__intersectionWith, ___NS__invert, ___NS__invertBy, ___NS__invoke, ___NS__invokeMap, ___NS__isArguments, ___NS__isArray, ___NS__isArrayBuffer, ___NS__isArrayLike, ___NS__isArrayLikeObject, ___NS__isBoolean, ___NS__isBuffer, ___NS__isDate, ___NS__isElement, ___NS__isEmpty, ___NS__isEqual, ___NS__isEqualWith, ___NS__isError, ___NS__isFinite, ___NS__isFunction, ___NS__isInteger, ___NS__isLeafObject, ___NS__isLength, ___NS__isMap, ___NS__isMatch, ___NS__isMatchWith, ___NS__isNaN, ___NS__isNative, ___NS__isNil, ___NS__isNull, ___NS__isNumber, ___NS__isObject, ___NS__isObjectLike, ___NS__isPlainObject, ___NS__isRegExp, ___NS__isSafeInteger, ___NS__isSet, ___NS__isString, ___NS__isSymbol, ___NS__isTypedArray, ___NS__isUndefined, ___NS__isWeakMap, ___NS__isWeakSet, ___NS__iteratee, ___NS__join, ___NS__kebabCase, ___NS__keyBy, ___NS__keys, ___NS__keysIn, ___NS__last, ___NS__lastIndexOf, ___NS__lowerCase, ___NS__lowerFirst, ___NS__lt, ___NS__lte, ___NS__map, ___NS__mapKeys, ___NS__mapValues, ___NS__matches, ___NS__matchesProperty, ___NS__max, ___NS__maxBy, ___NS__mean, ___NS__meanBy, ___NS__memoize, ___NS__merge, ___NS__mergeWith, ___NS__method, ___NS__methodOf, ___NS__min, ___NS__minBy, ___NS__mixin, ___NS__multiply, ___NS__negate, ___NS__noop, ___NS__now, ___NS__nth, ___NS__nthArg, ___NS__omit, ___NS__omitBy, ___NS__once, ___NS__orderBy, ___NS__over, ___NS__overArgs, ___NS__overEvery, ___NS__overSome, ___NS__pad, ___NS__padEnd, ___NS__padStart, ___NS__parseInt, ___NS__partial, ___NS__partialRight, ___NS__partition, ___NS__pick, ___NS__pickBy, ___NS__property, ___NS__propertyOf, ___NS__pull, ___NS__pullAll, ___NS__pullAllBy, ___NS__pullAllWith, ___NS__pullAt, ___NS__random, ___NS__range, ___NS__rangeRight, ___NS__rearg, ___NS__reduce, ___NS__reduceRight, ___NS__reject, ___NS__remove, ___NS__repeat, ___NS__replace, ___NS__rest, ___NS__result, ___NS__reverse, ___NS__round, ___NS__sample, ___NS__sampleSize, ___NS__set, ___NS__setWith, ___NS__shuffle, ___NS__size, ___NS__slice, ___NS__snakeCase, ___NS__some, ___NS__sortBy, ___NS__sortedIndex, ___NS__sortedIndexBy, ___NS__sortedIndexOf, ___NS__sortedLastIndex, ___NS__sortedLastIndexBy, ___NS__sortedLastIndexOf, ___NS__sortedUniq, ___NS__sortedUniqBy, ___NS__split, ___NS__spread, ___NS__startCase, ___NS__startsWith, ___NS__stubArray, ___NS__stubFalse, ___NS__stubObject, ___NS__stubString, ___NS__stubTrue, ___NS__subtract, ___NS__sum, ___NS__sumBy, ___NS__tail, ___NS__take, ___NS__takeRight, ___NS__takeRightWhile, ___NS__takeWhile, ___NS__tap, ___NS__template, ___NS__templateSettings, ___NS__throttle, ___NS__thru, ___NS__times, ___NS__toArray, ___NS__toFinite, ___NS__toInteger, ___NS__toLength, ___NS__toLower, ___NS__toNumber, ___NS__toPairs, ___NS__toPairsIn, ___NS__toPath, ___NS__toPlainObject, ___NS__toSafeInteger, ___NS__toString, ___NS__toUpper, ___NS__transform, ___NS__trim, ___NS__trimEnd, ___NS__trimStart, ___NS__truncate, ___NS__unary, ___NS__unescape, ___NS__union, ___NS__unionBy, ___NS__unionWith, ___NS__uniq, ___NS__uniqBy, ___NS__uniqueId, ___NS__uniqWith, ___NS__unset, ___NS__unzip, ___NS__unzipWith, ___NS__update, ___NS__updateWith, ___NS__upperCase, ___NS__upperFirst, ___NS__values, ___NS__valuesIn, ___NS__without, ___NS__words, ___NS__wrap, ___NS__xor, ___NS__xorBy, ___NS__xorWith, ___NS__zip, ___NS__zipObject, ___NS__zipObjectDeep, ___NS__zipWith } from 'tnp-core/browser-prod';\n//#endregion\n\n@TaonMiddleware({\n className: 'TaonCmsContentTagMiddleware',\n})\nexport class TaonCmsContentTagMiddleware extends TaonBaseMiddleware {}","//#region imports\nimport { TaonBaseSubscriberForEntity, TaonSubscriber } from 'taon/browser-prod';\nimport { TaonCmsContentTagEntity } from './taon-cms-content-tag.entity';\nimport { TaonCmsContentTagProvider } from './taon-cms-content-tag.provider';\n//#endregion\n\n@TaonSubscriber<TaonCmsContentTagSubscriber>({\n className: 'TaonCmsContentTagSubscriber',\n // allowedEvents: ['afterUpdate'],\n})\nexport class TaonCmsContentTagSubscriber extends TaonBaseSubscriberForEntity {\n taonCmsContentTagProvider = this.injectProvider(TaonCmsContentTagProvider);\n listenTo(): typeof TaonCmsContentTagEntity {\n return TaonCmsContentTagEntity;\n }\n}","//#region imports\nimport { createContext, TaonBaseContext } from 'taon/browser-prod';\n\nimport { TaonCmsContentTagEntity } from './taon-cms-content-tag.entity';\nimport { TaonCmsContentTagController } from './taon-cms-content-tag.controller';\nimport { TaonCmsContentTagRepository } from './taon-cms-content-tag.repository';\nimport { TaonCmsContentTagProvider } from './taon-cms-content-tag.provider';\nimport { TaonCmsContentTagMiddleware } from './taon-cms-content-tag.middleware';\nimport { TaonCmsContentTagSubscriber } from './taon-cms-content-tag.subscriber';\n//#endregion\n\nexport const TaonCmsContentTagAbstractContext = createContext(() => ({\n contextName: 'TaonCmsContentTagAbstractContext',\n abstract: true,\n contexts: { TaonBaseContext },\n entities: { TaonCmsContentTagEntity },\n controllers: { TaonCmsContentTagController },\n repositories: { TaonCmsContentTagRepository },\n providers: { TaonCmsContentTagProvider },\n middlewares: { TaonCmsContentTagMiddleware },\n subscribers: { TaonCmsContentTagSubscriber },\n}));\n","//#region imports\nimport { TaonSessionRepository } from '@taon-dev/session/browser-prod';\nimport { TaonAuthContextRepository } from '@taon-dev/session/browser-prod';\nimport { TaonController, TaonBaseCrudController, Query, GET, POST, DELETE, Body, ClassHelpers__NS__asyncHandler, ClassHelpers__NS__ensureClassConfig, ClassHelpers__NS__ensureMethodConfig, ClassHelpers__NS__getClassConfig, ClassHelpers__NS__getClassFnFromObject, ClassHelpers__NS__getControllerConfigs, ClassHelpers__NS__getFullInternalName, ClassHelpers__NS__getMethodsNames, ClassHelpers__NS__getName, ClassHelpers__NS__getOrginalClass, ClassHelpers__NS__getUniqueKey, ClassHelpers__NS__hasParentClassWithName, ClassHelpers__NS__isContextClassObject, ClassHelpers__NS__mapFnError, ClassHelpers__NS__setName, Models__NS__ClassType, Models__NS__ClassTypeKey, Models__NS__ConnectionOptionsLogs, Models__NS__ContextOptions, Models__NS__DatabaseConfig, Models__NS__DatabaseConfigTypeOrm, Models__NS__DatabasesFolder, Models__NS__DBRecreateMode, Models__NS__DBRecreateModeType, Models__NS__FrameworkMode, Models__NS__Http__NS__AsyncResponse, Models__NS__Http__NS__ClientAction, Models__NS__Http__NS__ContextENDPOINT, Models__NS__Http__NS__ExpressContext, Models__NS__Http__NS__FormlyFromType, Models__NS__Http__NS__MixResponse, Models__NS__Http__NS__PromiseObservableMix, Models__NS__Http__NS__RequestResults, Models__NS__Http__NS__Response, Models__NS__Http__NS__ResponseFuncOpt, Models__NS__Http__NS__SyncResponse, Models__NS__Http__NS__SyncResponseFunc, Models__NS__Http__NS__TaonStreamResponseOptions, Models__NS__KVDatabaseConfig, Models__NS__MiddlewareType, Models__NS__StartParams, Models__NS__TaonCtrlBeforeEachRequestParams, Models__NS__TaonCtxCloneParams, Models__NS__TaonInitializeParams, Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\nimport { ___NS__add, ___NS__after, ___NS__ary, ___NS__assign, ___NS__assignIn, ___NS__assignInWith, ___NS__assignWith, ___NS__at, ___NS__attempt, ___NS__before, ___NS__bind, ___NS__bindAll, ___NS__bindKey, ___NS__camelCase, ___NS__capitalize, ___NS__castArray, ___NS__ceil, ___NS__chain, ___NS__chunk, ___NS__clamp, ___NS__clone, ___NS__cloneDeep, ___NS__cloneDeepWith, ___NS__cloneWith, ___NS__compact, ___NS__concat, ___NS__cond, ___NS__conforms, ___NS__conformsTo, ___NS__constant, ___NS__countBy, ___NS__create, ___NS__curry, ___NS__curryRight, ___NS__debounce, ___NS__deburr, ___NS__defaults, ___NS__defaultsDeep, ___NS__defaultTo, ___NS__defer, ___NS__delay, ___NS__difference, ___NS__differenceBy, ___NS__differenceWith, ___NS__divide, ___NS__drop, ___NS__dropRight, ___NS__dropRightWhile, ___NS__dropWhile, ___NS__each, ___NS__eachRight, ___NS__endsWith, ___NS__entries, ___NS__entriesIn, ___NS__eq, ___NS__escape, ___NS__escapeRegExp, ___NS__every, ___NS__extend, ___NS__extendWith, ___NS__fill, ___NS__filter, ___NS__find, ___NS__findIndex, ___NS__findKey, ___NS__findLast, ___NS__findLastIndex, ___NS__findLastKey, ___NS__first, ___NS__flatMap, ___NS__flatMapDeep, ___NS__flatMapDepth, ___NS__flatten, ___NS__flattenDeep, ___NS__flattenDepth, ___NS__flip, ___NS__floor, ___NS__flow, ___NS__flowRight, ___NS__forEach, ___NS__forEachRight, ___NS__forIn, ___NS__forInRight, ___NS__forOwn, ___NS__forOwnRight, ___NS__fromPairs, ___NS__functions, ___NS__functionsIn, ___NS__get, ___NS__groupBy, ___NS__gt, ___NS__gte, ___NS__has, ___NS__hasIn, ___NS__head, ___NS__identity, ___NS__includes, ___NS__indexOf, ___NS__initial, ___NS__inRange, ___NS__intersection, ___NS__intersectionBy, ___NS__intersectionWith, ___NS__invert, ___NS__invertBy, ___NS__invoke, ___NS__invokeMap, ___NS__isArguments, ___NS__isArray, ___NS__isArrayBuffer, ___NS__isArrayLike, ___NS__isArrayLikeObject, ___NS__isBoolean, ___NS__isBuffer, ___NS__isDate, ___NS__isElement, ___NS__isEmpty, ___NS__isEqual, ___NS__isEqualWith, ___NS__isError, ___NS__isFinite, ___NS__isFunction, ___NS__isInteger, ___NS__isLeafObject, ___NS__isLength, ___NS__isMap, ___NS__isMatch, ___NS__isMatchWith, ___NS__isNaN, ___NS__isNative, ___NS__isNil, ___NS__isNull, ___NS__isNumber, ___NS__isObject, ___NS__isObjectLike, ___NS__isPlainObject, ___NS__isRegExp, ___NS__isSafeInteger, ___NS__isSet, ___NS__isString, ___NS__isSymbol, ___NS__isTypedArray, ___NS__isUndefined, ___NS__isWeakMap, ___NS__isWeakSet, ___NS__iteratee, ___NS__join, ___NS__kebabCase, ___NS__keyBy, ___NS__keys, ___NS__keysIn, ___NS__last, ___NS__lastIndexOf, ___NS__lowerCase, ___NS__lowerFirst, ___NS__lt, ___NS__lte, ___NS__map, ___NS__mapKeys, ___NS__mapValues, ___NS__matches, ___NS__matchesProperty, ___NS__max, ___NS__maxBy, ___NS__mean, ___NS__meanBy, ___NS__memoize, ___NS__merge, ___NS__mergeWith, ___NS__method, ___NS__methodOf, ___NS__min, ___NS__minBy, ___NS__mixin, ___NS__multiply, ___NS__negate, ___NS__noop, ___NS__now, ___NS__nth, ___NS__nthArg, ___NS__omit, ___NS__omitBy, ___NS__once, ___NS__orderBy, ___NS__over, ___NS__overArgs, ___NS__overEvery, ___NS__overSome, ___NS__pad, ___NS__padEnd, ___NS__padStart, ___NS__parseInt, ___NS__partial, ___NS__partialRight, ___NS__partition, ___NS__pick, ___NS__pickBy, ___NS__property, ___NS__propertyOf, ___NS__pull, ___NS__pullAll, ___NS__pullAllBy, ___NS__pullAllWith, ___NS__pullAt, ___NS__random, ___NS__range, ___NS__rangeRight, ___NS__rearg, ___NS__reduce, ___NS__reduceRight, ___NS__reject, ___NS__remove, ___NS__repeat, ___NS__replace, ___NS__rest, ___NS__result, ___NS__reverse, ___NS__round, ___NS__sample, ___NS__sampleSize, ___NS__set, ___NS__setWith, ___NS__shuffle, ___NS__size, ___NS__slice, ___NS__snakeCase, ___NS__some, ___NS__sortBy, ___NS__sortedIndex, ___NS__sortedIndexBy, ___NS__sortedIndexOf, ___NS__sortedLastIndex, ___NS__sortedLastIndexBy, ___NS__sortedLastIndexOf, ___NS__sortedUniq, ___NS__sortedUniqBy, ___NS__split, ___NS__spread, ___NS__startCase, ___NS__startsWith, ___NS__stubArray, ___NS__stubFalse, ___NS__stubObject, ___NS__stubString, ___NS__stubTrue, ___NS__subtract, ___NS__sum, ___NS__sumBy, ___NS__tail, ___NS__take, ___NS__takeRight, ___NS__takeRightWhile, ___NS__takeWhile, ___NS__tap, ___NS__template, ___NS__templateSettings, ___NS__throttle, ___NS__thru, ___NS__times, ___NS__toArray, ___NS__toFinite, ___NS__toInteger, ___NS__toLength, ___NS__toLower, ___NS__toNumber, ___NS__toPairs, ___NS__toPairsIn, ___NS__toPath, ___NS__toPlainObject, ___NS__toSafeInteger, ___NS__toString, ___NS__toUpper, ___NS__transform, ___NS__trim, ___NS__trimEnd, ___NS__trimStart, ___NS__truncate, ___NS__unary, ___NS__unescape, ___NS__union, ___NS__unionBy, ___NS__unionWith, ___NS__uniq, ___NS__uniqBy, ___NS__uniqueId, ___NS__uniqWith, ___NS__unset, ___NS__unzip, ___NS__unzipWith, ___NS__update, ___NS__updateWith, ___NS__upperCase, ___NS__upperFirst, ___NS__values, ___NS__valuesIn, ___NS__without, ___NS__words, ___NS__wrap, ___NS__xor, ___NS__xorBy, ___NS__xorWith, ___NS__zip, ___NS__zipObject, ___NS__zipObjectDeep, ___NS__zipWith } from 'tnp-core/browser-prod';\n\nimport type { TaonCmsTaxonomyFields } from '../taon-cms-category/taon-cms-taxonomy.validation';\nimport { contentError } from '../taon-cms-content/taon-cms-content.validation';\n\nimport { TaonCmsTagEntity } from './taon-cms-tag.entity';\nimport { TaonCmsTagRepository } from './taon-cms-tag.repository';\n//#endregion\n\n@TaonController<TaonCmsTagController>({\n className: 'TaonCmsTagController',\n allowedMethods: ['getAll', 'saveTag', 'deleteTag'],\n})\nexport class TaonCmsTagController extends TaonBaseCrudController<TaonCmsTagEntity> {\n entityClassResolveFn: () => typeof TaonCmsTagEntity = () => TaonCmsTagEntity;\n\n taonCmsTagRepository = this.injectCustomRepo(TaonCmsTagRepository);\n\n private readonly sessions = this.injectCustomRepo(TaonSessionRepository);\n\n private readonly auth = this.injectCustomRepo(TaonAuthContextRepository);\n\n protected async beforeEachRequest({\n req,\n res,\n t,\n }: Models__NS__TaonCtrlBeforeEachRequestParams<TaonCmsTagController>): Promise<void> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n @POST()\n saveTag(\n @Query('id') id: number | null,\n @Body() input: TaonCmsTaxonomyFields,\n ): Taon__NS__Response<TaonCmsTagEntity> {\n/* */\n/* */\n return (void 0);\n }\n\n @DELETE()\n deleteTag(@Query('id') id: number): Taon__NS__Response<void> {\n/* */\n/* */\n return (void 0);\n }\n\n //#region methods & getters / hello world\n /**\n * TODO remove this demo example method\n */\n @GET()\n helloWord(@Query('yourName') yourName: string): Taon__NS__Response<string> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n //#endregion\n}","//#region imports\nimport { TaonBaseProvider, TaonProvider, Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\nimport { ___NS__add, ___NS__after, ___NS__ary, ___NS__assign, ___NS__assignIn, ___NS__assignInWith, ___NS__assignWith, ___NS__at, ___NS__attempt, ___NS__before, ___NS__bind, ___NS__bindAll, ___NS__bindKey, ___NS__camelCase, ___NS__capitalize, ___NS__castArray, ___NS__ceil, ___NS__chain, ___NS__chunk, ___NS__clamp, ___NS__clone, ___NS__cloneDeep, ___NS__cloneDeepWith, ___NS__cloneWith, ___NS__compact, ___NS__concat, ___NS__cond, ___NS__conforms, ___NS__conformsTo, ___NS__constant, ___NS__countBy, ___NS__create, ___NS__curry, ___NS__curryRight, ___NS__debounce, ___NS__deburr, ___NS__defaults, ___NS__defaultsDeep, ___NS__defaultTo, ___NS__defer, ___NS__delay, ___NS__difference, ___NS__differenceBy, ___NS__differenceWith, ___NS__divide, ___NS__drop, ___NS__dropRight, ___NS__dropRightWhile, ___NS__dropWhile, ___NS__each, ___NS__eachRight, ___NS__endsWith, ___NS__entries, ___NS__entriesIn, ___NS__eq, ___NS__escape, ___NS__escapeRegExp, ___NS__every, ___NS__extend, ___NS__extendWith, ___NS__fill, ___NS__filter, ___NS__find, ___NS__findIndex, ___NS__findKey, ___NS__findLast, ___NS__findLastIndex, ___NS__findLastKey, ___NS__first, ___NS__flatMap, ___NS__flatMapDeep, ___NS__flatMapDepth, ___NS__flatten, ___NS__flattenDeep, ___NS__flattenDepth, ___NS__flip, ___NS__floor, ___NS__flow, ___NS__flowRight, ___NS__forEach, ___NS__forEachRight, ___NS__forIn, ___NS__forInRight, ___NS__forOwn, ___NS__forOwnRight, ___NS__fromPairs, ___NS__functions, ___NS__functionsIn, ___NS__get, ___NS__groupBy, ___NS__gt, ___NS__gte, ___NS__has, ___NS__hasIn, ___NS__head, ___NS__identity, ___NS__includes, ___NS__indexOf, ___NS__initial, ___NS__inRange, ___NS__intersection, ___NS__intersectionBy, ___NS__intersectionWith, ___NS__invert, ___NS__invertBy, ___NS__invoke, ___NS__invokeMap, ___NS__isArguments, ___NS__isArray, ___NS__isArrayBuffer, ___NS__isArrayLike, ___NS__isArrayLikeObject, ___NS__isBoolean, ___NS__isBuffer, ___NS__isDate, ___NS__isElement, ___NS__isEmpty, ___NS__isEqual, ___NS__isEqualWith, ___NS__isError, ___NS__isFinite, ___NS__isFunction, ___NS__isInteger, ___NS__isLeafObject, ___NS__isLength, ___NS__isMap, ___NS__isMatch, ___NS__isMatchWith, ___NS__isNaN, ___NS__isNative, ___NS__isNil, ___NS__isNull, ___NS__isNumber, ___NS__isObject, ___NS__isObjectLike, ___NS__isPlainObject, ___NS__isRegExp, ___NS__isSafeInteger, ___NS__isSet, ___NS__isString, ___NS__isSymbol, ___NS__isTypedArray, ___NS__isUndefined, ___NS__isWeakMap, ___NS__isWeakSet, ___NS__iteratee, ___NS__join, ___NS__kebabCase, ___NS__keyBy, ___NS__keys, ___NS__keysIn, ___NS__last, ___NS__lastIndexOf, ___NS__lowerCase, ___NS__lowerFirst, ___NS__lt, ___NS__lte, ___NS__map, ___NS__mapKeys, ___NS__mapValues, ___NS__matches, ___NS__matchesProperty, ___NS__max, ___NS__maxBy, ___NS__mean, ___NS__meanBy, ___NS__memoize, ___NS__merge, ___NS__mergeWith, ___NS__method, ___NS__methodOf, ___NS__min, ___NS__minBy, ___NS__mixin, ___NS__multiply, ___NS__negate, ___NS__noop, ___NS__now, ___NS__nth, ___NS__nthArg, ___NS__omit, ___NS__omitBy, ___NS__once, ___NS__orderBy, ___NS__over, ___NS__overArgs, ___NS__overEvery, ___NS__overSome, ___NS__pad, ___NS__padEnd, ___NS__padStart, ___NS__parseInt, ___NS__partial, ___NS__partialRight, ___NS__partition, ___NS__pick, ___NS__pickBy, ___NS__property, ___NS__propertyOf, ___NS__pull, ___NS__pullAll, ___NS__pullAllBy, ___NS__pullAllWith, ___NS__pullAt, ___NS__random, ___NS__range, ___NS__rangeRight, ___NS__rearg, ___NS__reduce, ___NS__reduceRight, ___NS__reject, ___NS__remove, ___NS__repeat, ___NS__replace, ___NS__rest, ___NS__result, ___NS__reverse, ___NS__round, ___NS__sample, ___NS__sampleSize, ___NS__set, ___NS__setWith, ___NS__shuffle, ___NS__size, ___NS__slice, ___NS__snakeCase, ___NS__some, ___NS__sortBy, ___NS__sortedIndex, ___NS__sortedIndexBy, ___NS__sortedIndexOf, ___NS__sortedLastIndex, ___NS__sortedLastIndexBy, ___NS__sortedLastIndexOf, ___NS__sortedUniq, ___NS__sortedUniqBy, ___NS__split, ___NS__spread, ___NS__startCase, ___NS__startsWith, ___NS__stubArray, ___NS__stubFalse, ___NS__stubObject, ___NS__stubString, ___NS__stubTrue, ___NS__subtract, ___NS__sum, ___NS__sumBy, ___NS__tail, ___NS__take, ___NS__takeRight, ___NS__takeRightWhile, ___NS__takeWhile, ___NS__tap, ___NS__template, ___NS__templateSettings, ___NS__throttle, ___NS__thru, ___NS__times, ___NS__toArray, ___NS__toFinite, ___NS__toInteger, ___NS__toLength, ___NS__toLower, ___NS__toNumber, ___NS__toPairs, ___NS__toPairsIn, ___NS__toPath, ___NS__toPlainObject, ___NS__toSafeInteger, ___NS__toString, ___NS__toUpper, ___NS__transform, ___NS__trim, ___NS__trimEnd, ___NS__trimStart, ___NS__truncate, ___NS__unary, ___NS__unescape, ___NS__union, ___NS__unionBy, ___NS__unionWith, ___NS__uniq, ___NS__uniqBy, ___NS__uniqueId, ___NS__uniqWith, ___NS__unset, ___NS__unzip, ___NS__unzipWith, ___NS__update, ___NS__updateWith, ___NS__upperCase, ___NS__upperFirst, ___NS__values, ___NS__valuesIn, ___NS__without, ___NS__words, ___NS__wrap, ___NS__xor, ___NS__xorBy, ___NS__xorWith, ___NS__zip, ___NS__zipObject, ___NS__zipObjectDeep, ___NS__zipWith } from 'tnp-core/browser-prod';\nimport { Injectable } from '@angular/core';\n//#endregion\n\n@TaonProvider({\n className: 'TaonCmsTagProvider',\n})\n//#region @browser\n@Injectable()\n//#endregion\nexport class TaonCmsTagProvider extends TaonBaseProvider {\n\n\n\n}","//#region imports\nimport { TaonBaseMiddleware, TaonMiddleware, Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\nimport { ___NS__add, ___NS__after, ___NS__ary, ___NS__assign, ___NS__assignIn, ___NS__assignInWith, ___NS__assignWith, ___NS__at, ___NS__attempt, ___NS__before, ___NS__bind, ___NS__bindAll, ___NS__bindKey, ___NS__camelCase, ___NS__capitalize, ___NS__castArray, ___NS__ceil, ___NS__chain, ___NS__chunk, ___NS__clamp, ___NS__clone, ___NS__cloneDeep, ___NS__cloneDeepWith, ___NS__cloneWith, ___NS__compact, ___NS__concat, ___NS__cond, ___NS__conforms, ___NS__conformsTo, ___NS__constant, ___NS__countBy, ___NS__create, ___NS__curry, ___NS__curryRight, ___NS__debounce, ___NS__deburr, ___NS__defaults, ___NS__defaultsDeep, ___NS__defaultTo, ___NS__defer, ___NS__delay, ___NS__difference, ___NS__differenceBy, ___NS__differenceWith, ___NS__divide, ___NS__drop, ___NS__dropRight, ___NS__dropRightWhile, ___NS__dropWhile, ___NS__each, ___NS__eachRight, ___NS__endsWith, ___NS__entries, ___NS__entriesIn, ___NS__eq, ___NS__escape, ___NS__escapeRegExp, ___NS__every, ___NS__extend, ___NS__extendWith, ___NS__fill, ___NS__filter, ___NS__find, ___NS__findIndex, ___NS__findKey, ___NS__findLast, ___NS__findLastIndex, ___NS__findLastKey, ___NS__first, ___NS__flatMap, ___NS__flatMapDeep, ___NS__flatMapDepth, ___NS__flatten, ___NS__flattenDeep, ___NS__flattenDepth, ___NS__flip, ___NS__floor, ___NS__flow, ___NS__flowRight, ___NS__forEach, ___NS__forEachRight, ___NS__forIn, ___NS__forInRight, ___NS__forOwn, ___NS__forOwnRight, ___NS__fromPairs, ___NS__functions, ___NS__functionsIn, ___NS__get, ___NS__groupBy, ___NS__gt, ___NS__gte, ___NS__has, ___NS__hasIn, ___NS__head, ___NS__identity, ___NS__includes, ___NS__indexOf, ___NS__initial, ___NS__inRange, ___NS__intersection, ___NS__intersectionBy, ___NS__intersectionWith, ___NS__invert, ___NS__invertBy, ___NS__invoke, ___NS__invokeMap, ___NS__isArguments, ___NS__isArray, ___NS__isArrayBuffer, ___NS__isArrayLike, ___NS__isArrayLikeObject, ___NS__isBoolean, ___NS__isBuffer, ___NS__isDate, ___NS__isElement, ___NS__isEmpty, ___NS__isEqual, ___NS__isEqualWith, ___NS__isError, ___NS__isFinite, ___NS__isFunction, ___NS__isInteger, ___NS__isLeafObject, ___NS__isLength, ___NS__isMap, ___NS__isMatch, ___NS__isMatchWith, ___NS__isNaN, ___NS__isNative, ___NS__isNil, ___NS__isNull, ___NS__isNumber, ___NS__isObject, ___NS__isObjectLike, ___NS__isPlainObject, ___NS__isRegExp, ___NS__isSafeInteger, ___NS__isSet, ___NS__isString, ___NS__isSymbol, ___NS__isTypedArray, ___NS__isUndefined, ___NS__isWeakMap, ___NS__isWeakSet, ___NS__iteratee, ___NS__join, ___NS__kebabCase, ___NS__keyBy, ___NS__keys, ___NS__keysIn, ___NS__last, ___NS__lastIndexOf, ___NS__lowerCase, ___NS__lowerFirst, ___NS__lt, ___NS__lte, ___NS__map, ___NS__mapKeys, ___NS__mapValues, ___NS__matches, ___NS__matchesProperty, ___NS__max, ___NS__maxBy, ___NS__mean, ___NS__meanBy, ___NS__memoize, ___NS__merge, ___NS__mergeWith, ___NS__method, ___NS__methodOf, ___NS__min, ___NS__minBy, ___NS__mixin, ___NS__multiply, ___NS__negate, ___NS__noop, ___NS__now, ___NS__nth, ___NS__nthArg, ___NS__omit, ___NS__omitBy, ___NS__once, ___NS__orderBy, ___NS__over, ___NS__overArgs, ___NS__overEvery, ___NS__overSome, ___NS__pad, ___NS__padEnd, ___NS__padStart, ___NS__parseInt, ___NS__partial, ___NS__partialRight, ___NS__partition, ___NS__pick, ___NS__pickBy, ___NS__property, ___NS__propertyOf, ___NS__pull, ___NS__pullAll, ___NS__pullAllBy, ___NS__pullAllWith, ___NS__pullAt, ___NS__random, ___NS__range, ___NS__rangeRight, ___NS__rearg, ___NS__reduce, ___NS__reduceRight, ___NS__reject, ___NS__remove, ___NS__repeat, ___NS__replace, ___NS__rest, ___NS__result, ___NS__reverse, ___NS__round, ___NS__sample, ___NS__sampleSize, ___NS__set, ___NS__setWith, ___NS__shuffle, ___NS__size, ___NS__slice, ___NS__snakeCase, ___NS__some, ___NS__sortBy, ___NS__sortedIndex, ___NS__sortedIndexBy, ___NS__sortedIndexOf, ___NS__sortedLastIndex, ___NS__sortedLastIndexBy, ___NS__sortedLastIndexOf, ___NS__sortedUniq, ___NS__sortedUniqBy, ___NS__split, ___NS__spread, ___NS__startCase, ___NS__startsWith, ___NS__stubArray, ___NS__stubFalse, ___NS__stubObject, ___NS__stubString, ___NS__stubTrue, ___NS__subtract, ___NS__sum, ___NS__sumBy, ___NS__tail, ___NS__take, ___NS__takeRight, ___NS__takeRightWhile, ___NS__takeWhile, ___NS__tap, ___NS__template, ___NS__templateSettings, ___NS__throttle, ___NS__thru, ___NS__times, ___NS__toArray, ___NS__toFinite, ___NS__toInteger, ___NS__toLength, ___NS__toLower, ___NS__toNumber, ___NS__toPairs, ___NS__toPairsIn, ___NS__toPath, ___NS__toPlainObject, ___NS__toSafeInteger, ___NS__toString, ___NS__toUpper, ___NS__transform, ___NS__trim, ___NS__trimEnd, ___NS__trimStart, ___NS__truncate, ___NS__unary, ___NS__unescape, ___NS__union, ___NS__unionBy, ___NS__unionWith, ___NS__uniq, ___NS__uniqBy, ___NS__uniqueId, ___NS__uniqWith, ___NS__unset, ___NS__unzip, ___NS__unzipWith, ___NS__update, ___NS__updateWith, ___NS__upperCase, ___NS__upperFirst, ___NS__values, ___NS__valuesIn, ___NS__without, ___NS__words, ___NS__wrap, ___NS__xor, ___NS__xorBy, ___NS__xorWith, ___NS__zip, ___NS__zipObject, ___NS__zipObjectDeep, ___NS__zipWith } from 'tnp-core/browser-prod';\n//#endregion\n\n@TaonMiddleware({\n className: 'TaonCmsTagMiddleware',\n})\nexport class TaonCmsTagMiddleware extends TaonBaseMiddleware {}","//#region imports\nimport { TaonBaseSubscriberForEntity, TaonSubscriber } from 'taon/browser-prod';\nimport { TaonCmsTagEntity } from './taon-cms-tag.entity';\nimport { TaonCmsTagProvider } from './taon-cms-tag.provider';\n//#endregion\n\n@TaonSubscriber<TaonCmsTagSubscriber>({\n className: 'TaonCmsTagSubscriber',\n // allowedEvents: ['afterUpdate'],\n})\nexport class TaonCmsTagSubscriber extends TaonBaseSubscriberForEntity {\n taonCmsTagProvider = this.injectProvider(TaonCmsTagProvider);\n listenTo(): typeof TaonCmsTagEntity {\n return TaonCmsTagEntity;\n }\n}","//#region imports\nimport { createContext, TaonBaseContext } from 'taon/browser-prod';\n\nimport { TaonCmsTagEntity } from './taon-cms-tag.entity';\nimport { TaonCmsTagController } from './taon-cms-tag.controller';\nimport { TaonCmsTagRepository } from './taon-cms-tag.repository';\nimport { TaonCmsTagProvider } from './taon-cms-tag.provider';\nimport { TaonCmsTagMiddleware } from './taon-cms-tag.middleware';\nimport { TaonCmsTagSubscriber } from './taon-cms-tag.subscriber';\n//#endregion\n\nexport const TaonCmsTagAbstractContext = createContext(() => ({\n contextName: 'TaonCmsTagAbstractContext',\n abstract: true,\n contexts: { TaonBaseContext },\n entities: { TaonCmsTagEntity },\n controllers: { TaonCmsTagController },\n repositories: { TaonCmsTagRepository },\n providers: { TaonCmsTagProvider },\n middlewares: { TaonCmsTagMiddleware },\n subscribers: { TaonCmsTagSubscriber },\n}));\n","//#region imports\nimport {\n TaonSessionProvider,\n TaonSessionRepository,\n} from '@taon-dev/session/browser-prod';\nimport { TaonAuthContextRepository } from '@taon-dev/session/browser-prod';\nimport { ExpressRequest, ExpressResponse, TaonBaseStorageController, TaonController, DELETE, Query, TaonStorageObject, TaonUploadedFile, apiPrefix, ClassHelpers__NS__asyncHandler, ClassHelpers__NS__ensureClassConfig, ClassHelpers__NS__ensureMethodConfig, ClassHelpers__NS__getClassConfig, ClassHelpers__NS__getClassFnFromObject, ClassHelpers__NS__getControllerConfigs, ClassHelpers__NS__getFullInternalName, ClassHelpers__NS__getMethodsNames, ClassHelpers__NS__getName, ClassHelpers__NS__getOrginalClass, ClassHelpers__NS__getUniqueKey, ClassHelpers__NS__hasParentClassWithName, ClassHelpers__NS__isContextClassObject, ClassHelpers__NS__mapFnError, ClassHelpers__NS__setName, Models__NS__ClassType, Models__NS__ClassTypeKey, Models__NS__ConnectionOptionsLogs, Models__NS__ContextOptions, Models__NS__DatabaseConfig, Models__NS__DatabaseConfigTypeOrm, Models__NS__DatabasesFolder, Models__NS__DBRecreateMode, Models__NS__DBRecreateModeType, Models__NS__FrameworkMode, Models__NS__Http__NS__AsyncResponse, Models__NS__Http__NS__ClientAction, Models__NS__Http__NS__ContextENDPOINT, Models__NS__Http__NS__ExpressContext, Models__NS__Http__NS__FormlyFromType, Models__NS__Http__NS__MixResponse, Models__NS__Http__NS__PromiseObservableMix, Models__NS__Http__NS__RequestResults, Models__NS__Http__NS__Response, Models__NS__Http__NS__ResponseFuncOpt, Models__NS__Http__NS__SyncResponse, Models__NS__Http__NS__SyncResponseFunc, Models__NS__Http__NS__TaonStreamResponseOptions, Models__NS__KVDatabaseConfig, Models__NS__MiddlewareType, Models__NS__StartParams, Models__NS__TaonCtrlBeforeEachRequestParams, Models__NS__TaonCtxCloneParams, Models__NS__TaonInitializeParams, Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\nimport { UtilsJwt__NS__decode, UtilsJwt__NS__JwtPayload, UtilsJwt__NS__sign, UtilsJwt__NS__verify } from 'tnp-core/browser-prod';\n\nimport { TaonCmsContentRepository } from './taon-cms-content.repository';\nimport { contentError } from './taon-cms-content.validation';\n//#endregion\n\n@TaonController<TaonCmsContentStorageController>({\n className: 'TaonCmsContentStorageController',\n // allowedMethods: ['download', 'uploadFormDataToServer'],\n})\nexport class TaonCmsContentStorageController extends TaonBaseStorageController<\n {},\n TaonCmsContentStorageController\n> {\n private readonly taonSessionRepository = this.injectCustomRepo(\n TaonSessionRepository,\n );\n\n private readonly taonAuthContextRepository = this.injectCustomRepo(\n TaonAuthContextRepository,\n );\n\n private readonly taonCmsContentRepository = this.injectCustomRepo(\n TaonCmsContentRepository,\n );\n\n private readonly taonSessionProvider =\n this.injectProvider(TaonSessionProvider);\n\n protected async beforeEachRequest({\n req,\n res,\n methodConfig,\n t,\n }: Models__NS__TaonCtrlBeforeEachRequestParams<TaonCmsContentStorageController>): Promise<void> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n protected async handleUploadFiles(\n files: TaonUploadedFile[],\n queryParams?: {},\n req?: ExpressRequest,\n res?: ExpressResponse,\n ): Promise<TaonStorageObject[]> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n afterFileUploadHook(): void {}\n\n async isMediaObjectAvailable(key: string): Promise<boolean> {\n/* */\n/* */\n return (void 0);\n }\n\n async isPublicMediaObject(key: string): Promise<boolean> {\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n @DELETE()\n deleteUnattachedMedia(@Query('key') key: string): Taon__NS__Response<boolean> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n async copyMediaObjectForDuplication(sourceKey: string): Promise<string> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n async deleteMediaObjectForDuplication(key: string): Promise<void> {\n/* */\n/* */\n return (void 0);\n }\n\n buildStorageDownloadUrl(options: {\n req: ExpressRequest;\n key: string;\n private: boolean;\n token?: string;\n download?: boolean;\n }): string {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n async createStorageDownloadToken(options: {\n key: string;\n expiresAt: number;\n }): Promise<string> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n protected async verifyStorageDownloadToken(options: {\n key: string;\n token: string;\n }): Promise<boolean> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n protected async isPublicStorageKey(key: string): Promise<boolean> {\n/* */\n/* */\n return (void 0);\n }\n}","//#region imports\nimport {\n TaonSessionRepository,\n type TaonPermissionEntity,\n} from '@taon-dev/session/browser-prod';\nimport {\n TaonAuthContextRepository,\n TaonSessionCoreAuthorization,\n} from '@taon-dev/session/browser-prod';\nimport { TaonController, TaonBaseCrudController, Query, GET, POST, PUT, DELETE, Body, ExpressRequest, getStatusCode, HttpStatusEnum, ExpressResponse, ClassHelpers__NS__asyncHandler, ClassHelpers__NS__ensureClassConfig, ClassHelpers__NS__ensureMethodConfig, ClassHelpers__NS__getClassConfig, ClassHelpers__NS__getClassFnFromObject, ClassHelpers__NS__getControllerConfigs, ClassHelpers__NS__getFullInternalName, ClassHelpers__NS__getMethodsNames, ClassHelpers__NS__getName, ClassHelpers__NS__getOrginalClass, ClassHelpers__NS__getUniqueKey, ClassHelpers__NS__hasParentClassWithName, ClassHelpers__NS__isContextClassObject, ClassHelpers__NS__mapFnError, ClassHelpers__NS__setName, Models__NS__ClassType, Models__NS__ClassTypeKey, Models__NS__ConnectionOptionsLogs, Models__NS__ContextOptions, Models__NS__DatabaseConfig, Models__NS__DatabaseConfigTypeOrm, Models__NS__DatabasesFolder, Models__NS__DBRecreateMode, Models__NS__DBRecreateModeType, Models__NS__FrameworkMode, Models__NS__Http__NS__AsyncResponse, Models__NS__Http__NS__ClientAction, Models__NS__Http__NS__ContextENDPOINT, Models__NS__Http__NS__ExpressContext, Models__NS__Http__NS__FormlyFromType, Models__NS__Http__NS__MixResponse, Models__NS__Http__NS__PromiseObservableMix, Models__NS__Http__NS__RequestResults, Models__NS__Http__NS__Response, Models__NS__Http__NS__ResponseFuncOpt, Models__NS__Http__NS__SyncResponse, Models__NS__Http__NS__SyncResponseFunc, Models__NS__Http__NS__TaonStreamResponseOptions, Models__NS__KVDatabaseConfig, Models__NS__MiddlewareType, Models__NS__StartParams, Models__NS__TaonCtrlBeforeEachRequestParams, Models__NS__TaonCtxCloneParams, Models__NS__TaonInitializeParams, Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\nimport { ___NS__add, ___NS__after, ___NS__ary, ___NS__assign, ___NS__assignIn, ___NS__assignInWith, ___NS__assignWith, ___NS__at, ___NS__attempt, ___NS__before, ___NS__bind, ___NS__bindAll, ___NS__bindKey, ___NS__camelCase, ___NS__capitalize, ___NS__castArray, ___NS__ceil, ___NS__chain, ___NS__chunk, ___NS__clamp, ___NS__clone, ___NS__cloneDeep, ___NS__cloneDeepWith, ___NS__cloneWith, ___NS__compact, ___NS__concat, ___NS__cond, ___NS__conforms, ___NS__conformsTo, ___NS__constant, ___NS__countBy, ___NS__create, ___NS__curry, ___NS__curryRight, ___NS__debounce, ___NS__deburr, ___NS__defaults, ___NS__defaultsDeep, ___NS__defaultTo, ___NS__defer, ___NS__delay, ___NS__difference, ___NS__differenceBy, ___NS__differenceWith, ___NS__divide, ___NS__drop, ___NS__dropRight, ___NS__dropRightWhile, ___NS__dropWhile, ___NS__each, ___NS__eachRight, ___NS__endsWith, ___NS__entries, ___NS__entriesIn, ___NS__eq, ___NS__escape, ___NS__escapeRegExp, ___NS__every, ___NS__extend, ___NS__extendWith, ___NS__fill, ___NS__filter, ___NS__find, ___NS__findIndex, ___NS__findKey, ___NS__findLast, ___NS__findLastIndex, ___NS__findLastKey, ___NS__first, ___NS__flatMap, ___NS__flatMapDeep, ___NS__flatMapDepth, ___NS__flatten, ___NS__flattenDeep, ___NS__flattenDepth, ___NS__flip, ___NS__floor, ___NS__flow, ___NS__flowRight, ___NS__forEach, ___NS__forEachRight, ___NS__forIn, ___NS__forInRight, ___NS__forOwn, ___NS__forOwnRight, ___NS__fromPairs, ___NS__functions, ___NS__functionsIn, ___NS__get, ___NS__groupBy, ___NS__gt, ___NS__gte, ___NS__has, ___NS__hasIn, ___NS__head, ___NS__identity, ___NS__includes, ___NS__indexOf, ___NS__initial, ___NS__inRange, ___NS__intersection, ___NS__intersectionBy, ___NS__intersectionWith, ___NS__invert, ___NS__invertBy, ___NS__invoke, ___NS__invokeMap, ___NS__isArguments, ___NS__isArray, ___NS__isArrayBuffer, ___NS__isArrayLike, ___NS__isArrayLikeObject, ___NS__isBoolean, ___NS__isBuffer, ___NS__isDate, ___NS__isElement, ___NS__isEmpty, ___NS__isEqual, ___NS__isEqualWith, ___NS__isError, ___NS__isFinite, ___NS__isFunction, ___NS__isInteger, ___NS__isLeafObject, ___NS__isLength, ___NS__isMap, ___NS__isMatch, ___NS__isMatchWith, ___NS__isNaN, ___NS__isNative, ___NS__isNil, ___NS__isNull, ___NS__isNumber, ___NS__isObject, ___NS__isObjectLike, ___NS__isPlainObject, ___NS__isRegExp, ___NS__isSafeInteger, ___NS__isSet, ___NS__isString, ___NS__isSymbol, ___NS__isTypedArray, ___NS__isUndefined, ___NS__isWeakMap, ___NS__isWeakSet, ___NS__iteratee, ___NS__join, ___NS__kebabCase, ___NS__keyBy, ___NS__keys, ___NS__keysIn, ___NS__last, ___NS__lastIndexOf, ___NS__lowerCase, ___NS__lowerFirst, ___NS__lt, ___NS__lte, ___NS__map, ___NS__mapKeys, ___NS__mapValues, ___NS__matches, ___NS__matchesProperty, ___NS__max, ___NS__maxBy, ___NS__mean, ___NS__meanBy, ___NS__memoize, ___NS__merge, ___NS__mergeWith, ___NS__method, ___NS__methodOf, ___NS__min, ___NS__minBy, ___NS__mixin, ___NS__multiply, ___NS__negate, ___NS__noop, ___NS__now, ___NS__nth, ___NS__nthArg, ___NS__omit, ___NS__omitBy, ___NS__once, ___NS__orderBy, ___NS__over, ___NS__overArgs, ___NS__overEvery, ___NS__overSome, ___NS__pad, ___NS__padEnd, ___NS__padStart, ___NS__parseInt, ___NS__partial, ___NS__partialRight, ___NS__partition, ___NS__pick, ___NS__pickBy, ___NS__property, ___NS__propertyOf, ___NS__pull, ___NS__pullAll, ___NS__pullAllBy, ___NS__pullAllWith, ___NS__pullAt, ___NS__random, ___NS__range, ___NS__rangeRight, ___NS__rearg, ___NS__reduce, ___NS__reduceRight, ___NS__reject, ___NS__remove, ___NS__repeat, ___NS__replace, ___NS__rest, ___NS__result, ___NS__reverse, ___NS__round, ___NS__sample, ___NS__sampleSize, ___NS__set, ___NS__setWith, ___NS__shuffle, ___NS__size, ___NS__slice, ___NS__snakeCase, ___NS__some, ___NS__sortBy, ___NS__sortedIndex, ___NS__sortedIndexBy, ___NS__sortedIndexOf, ___NS__sortedLastIndex, ___NS__sortedLastIndexBy, ___NS__sortedLastIndexOf, ___NS__sortedUniq, ___NS__sortedUniqBy, ___NS__split, ___NS__spread, ___NS__startCase, ___NS__startsWith, ___NS__stubArray, ___NS__stubFalse, ___NS__stubObject, ___NS__stubString, ___NS__stubTrue, ___NS__subtract, ___NS__sum, ___NS__sumBy, ___NS__tail, ___NS__take, ___NS__takeRight, ___NS__takeRightWhile, ___NS__takeWhile, ___NS__tap, ___NS__template, ___NS__templateSettings, ___NS__throttle, ___NS__thru, ___NS__times, ___NS__toArray, ___NS__toFinite, ___NS__toInteger, ___NS__toLength, ___NS__toLower, ___NS__toNumber, ___NS__toPairs, ___NS__toPairsIn, ___NS__toPath, ___NS__toPlainObject, ___NS__toSafeInteger, ___NS__toString, ___NS__toUpper, ___NS__transform, ___NS__trim, ___NS__trimEnd, ___NS__trimStart, ___NS__truncate, ___NS__unary, ___NS__unescape, ___NS__union, ___NS__unionBy, ___NS__unionWith, ___NS__uniq, ___NS__uniqBy, ___NS__uniqueId, ___NS__uniqWith, ___NS__unset, ___NS__unzip, ___NS__unzipWith, ___NS__update, ___NS__updateWith, ___NS__upperCase, ___NS__upperFirst, ___NS__values, ___NS__valuesIn, ___NS__without, ___NS__words, ___NS__wrap, ___NS__xor, ___NS__xorBy, ___NS__xorWith, ___NS__zip, ___NS__zipObject, ___NS__zipObjectDeep, ___NS__zipWith } from 'tnp-core/browser-prod';\n\nimport type { TaonCmsApplicationHookEntity } from '../taon-cms-application-hook/taon-cms-application-hook.entity';\nimport type { TaonCmsContentRevisionEntity } from '../taon-cms-content-revision/taon-cms-content-revision.entity';\n\nimport { TaonCmsContentStorageController } from './taon-cms-content-storage.controller';\nimport { TaonCmsContentEntity } from './taon-cms-content.entity';\nimport type {\n TaonCmsCreateContent,\n TaonCmsCreateRelatedChildInput,\n TaonCmsCreateRelatedChildResult,\n TaonCmsPublicVideoChild,\n TaonCmsRestoreContent,\n TaonCmsUpdateContent,\n TaonCmsPermissionConfiguration,\n TaonCmsPostVersionKind,\n TaonCmsPostVersionLinks,\n TaonCmsVisibilityConfiguration,\n} from './taon-cms-content.models';\nimport { TaonCmsContentRepository } from './taon-cms-content.repository';\nimport { contentError } from './taon-cms-content.validation';\nimport {\n defaultThumbnailKey,\n defaultThumbnailUrl,\n} from '../taon-posts/taon-cms-post/taon-cms-thumbnail';\n//#endregion\n\n@TaonController<TaonCmsContentController>({\n //#region controller options\n className: 'TaonCmsContentController',\n allowedMethods: [\n 'getAll',\n 'getBy',\n 'getPublicBySlug',\n 'getPublicVideoChildrenBySlug',\n 'createContent',\n 'createRelatedChild',\n 'duplicateContent',\n 'permanentlyDeleteContent',\n 'updateContent',\n 'deleteContent',\n 'restoreContent',\n 'listRevisions',\n 'listRelatedPosts',\n 'getParentPost',\n 'getVisibilityConfiguration',\n 'getPostVersions',\n 'listCourses',\n 'listPermissions',\n 'getPermissionConfiguration',\n 'listApplicationHooks',\n 'getContentByHook',\n 'getPublicContentByHook',\n 'getVideoLinkBySlug',\n 'getPublicVideoLinkBySlug',\n 'getAudioLinkBySlug',\n 'getPublicAudioLinkBySlug',\n 'getAttachmentLinkBySlug',\n 'getPublicAttachmentLinkBySlug',\n 'getThumbnailLinkBySlug',\n 'getPublicThumbnailLinkBySlug',\n 'listTagIds',\n 'addRelatedPost',\n 'deleteRelatedPost',\n 'linkVersionPost',\n 'removeVersionPost',\n 'paginationQuery',\n ],\n //#endregion\n})\nexport class TaonCmsContentController extends TaonBaseCrudController<TaonCmsContentEntity> {\n //#region fields & getters\n entityClassResolveFn: () => typeof TaonCmsContentEntity = () =>\n TaonCmsContentEntity;\n\n private readonly taonCmsContentRepository = this.injectCustomRepo(\n TaonCmsContentRepository,\n );\n\n private readonly taonSessionRepository = this.injectCustomRepo(\n TaonSessionRepository,\n );\n\n private readonly taonAuthContextRepository = this.injectCustomRepo(\n TaonAuthContextRepository,\n );\n\n private readonly taonCmsContentStorageController = this.injectController(\n TaonCmsContentStorageController,\n );\n //#endregion\n\n //#region methods / before each request\n protected async beforeEachRequest({\n req,\n res,\n methodConfig,\n t,\n }: Models__NS__TaonCtrlBeforeEachRequestParams<TaonCmsContentController>): Promise<void> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n //#endregion\n\n //#region methods / get video link by slug\n @GET()\n getVideoLinkBySlug(@Query('slug') slug: string): Taon__NS__Response<string> {\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n //#region methods / get public video link by slug\n @GET()\n getPublicVideoLinkBySlug(@Query('slug') slug: string): Taon__NS__Response<string> {\n/* */\n/* */\n/* */\n return (void 0);\n }\n //#endregion\n\n //#region methods / get audio link by slug\n @GET()\n getAudioLinkBySlug(@Query('slug') slug: string): Taon__NS__Response<string> {\n/* */\n/* */\n/* */\n return (void 0);\n }\n //#endregion\n\n //#region methods / get public audio link by slug\n @GET()\n getPublicAudioLinkBySlug(@Query('slug') slug: string): Taon__NS__Response<string> {\n/* */\n/* */\n/* */\n return (void 0);\n }\n //#endregion\n\n //#region methods / get attachment link by slug\n @GET()\n getAttachmentLinkBySlug(@Query('slug') slug: string): Taon__NS__Response<string> {\n/* */\n/* */\n/* */\n return (void 0);\n }\n //#endregion\n\n //#region methods / get public attachment link by slug\n @GET()\n getPublicAttachmentLinkBySlug(\n @Query('slug') slug: string,\n ): Taon__NS__Response<string> {\n/* */\n/* */\n/* */\n return (void 0);\n }\n //#endregion\n //#endregion\n\n //#region methods / get media link\n @GET()\n getThumbnailLinkBySlug(@Query('slug') slug: string): Taon__NS__Response<string> {\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n @GET()\n getPublicThumbnailLinkBySlug(\n @Query('slug') slug: string,\n ): Taon__NS__Response<string> {\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n @GET()\n listCourses(): Taon__NS__Response<TaonCmsContentEntity[]> {\n/* */\n/* */\n return (void 0);\n }\n\n @GET()\n listTagIds(@Query('id') id: number): Taon__NS__Response<number[]> {\n/* */\n/* */\n return (void 0);\n }\n\n private async getMediaLinkBySlug(\n slug: string,\n type: 'video' | 'audio' | 'attachment' | 'thumbnail',\n publicOnly: boolean,\n req: ExpressRequest,\n t: Models__NS__TaonCtrlBeforeEachRequestParams<TaonCmsContentController>['t'],\n ): Promise<string> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n //#region methods / require read access\n private async requireReadAccess(\n content: TaonCmsContentEntity,\n publicOnly: boolean,\n req: ExpressRequest,\n t: Models__NS__TaonCtrlBeforeEachRequestParams<TaonCmsContentController>['t'],\n ): Promise<void> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n //#endregion\n //#endregion\n\n //#region methods / get by id\n @GET()\n getBy(@Query('id') id: number | string): Taon__NS__Response<TaonCmsContentEntity> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n @GET()\n getBySlug(@Query(`slug`) slug: string): Taon__NS__Response<TaonCmsContentEntity> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n //#endregion\n\n @GET()\n getPublicBySlug(\n @Query('slug') slug: string,\n ): Taon__NS__Response<TaonCmsContentEntity> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n //#endregion\n\n @GET()\n getPublicVideoChildrenBySlug(\n @Query('slug') slug: string,\n ): Taon__NS__Response<TaonCmsPublicVideoChild[]> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n //#endregion\n\n //#region methods / create content\n @POST()\n createContent(\n @Body() input: TaonCmsCreateContent,\n ): Taon__NS__Response<TaonCmsContentEntity> {\n/* */\n/* */\n return (void 0);\n }\n //#endregion\n\n @POST()\n createRelatedChild(\n @Query('parentId') parentId: number,\n @Body() input: TaonCmsCreateRelatedChildInput,\n ): Taon__NS__Response<TaonCmsCreateRelatedChildResult> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n //#endregion\n\n //#region methods / update content\n @PUT()\n updateContent(\n @Query('id') id: number,\n @Body() input: TaonCmsUpdateContent,\n ): Taon__NS__Response<TaonCmsContentEntity> {\n/* */\n/* */\n return (void 0);\n }\n //#endregion\n\n @POST()\n duplicateContent(\n @Query('id') id: number,\n @Query('includeChildren') includeChildren = false,\n ): Taon__NS__Response<TaonCmsContentEntity> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n @DELETE()\n permanentlyDeleteContent(\n @Query('id') id: number,\n @Query('expectedVersion') expectedVersion: number,\n ): Taon__NS__Response<boolean> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n //#region methods / delete content\n @DELETE()\n deleteContent(\n @Query('id') id: number,\n @Query('expectedVersion') expectedVersion: number,\n ): Taon__NS__Response<TaonCmsContentEntity> {\n/* */\n/* */\n/* */\n return (void 0);\n }\n //#endregion\n\n //#region methods / restore content\n @POST()\n restoreContent(\n @Query('id') id: number,\n @Body() input: TaonCmsRestoreContent,\n ): Taon__NS__Response<TaonCmsContentEntity> {\n/* */\n/* */\n return (void 0);\n }\n //#endregion\n\n //#region methods / list related posts\n @GET()\n listRelatedPosts(\n @Query('id') id: number,\n ): Taon__NS__Response<TaonCmsContentEntity[]> {\n/* */\n/* */\n return (void 0);\n }\n //#endregion\n\n @GET()\n getParentPost(\n @Query('id') id: number,\n ): Taon__NS__Response<TaonCmsContentEntity | null> {\n/* */\n/* */\n return (void 0);\n }\n\n @GET()\n getVisibilityConfiguration(\n @Query('id') id: number,\n ): Taon__NS__Response<TaonCmsVisibilityConfiguration> {\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n @GET()\n getPostVersions(\n @Query('id') id: number,\n ): Taon__NS__Response<TaonCmsPostVersionLinks> {\n/* */\n/* */\n return (void 0);\n }\n\n //#region methods / list permissions\n @GET()\n listPermissions(\n @Query('id') id: number,\n ): Taon__NS__Response<TaonPermissionEntity[]> {\n/* */\n/* */\n return (void 0);\n }\n //#endregion\n\n //#region methods / get permission configuration\n @GET()\n getPermissionConfiguration(\n @Query('id') id: number,\n ): Taon__NS__Response<TaonCmsPermissionConfiguration> {\n/* */\n/* */\n/* */\n return (void 0);\n }\n //#endregion\n\n //#region methods / list application hooks\n @GET()\n listApplicationHooks(): Taon__NS__Response<TaonCmsApplicationHookEntity[]> {\n/* */\n/* */\n return (void 0);\n }\n //#endregion\n\n //#region methods / get content by hook\n @GET()\n getContentByHook(@Query('hook') hook: string): Taon__NS__Response<string> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n //#endregion\n\n //#region methods / get public content by hook\n @GET()\n getPublicContentByHook(@Query('hook') hook: string): Taon__NS__Response<string> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n //#endregion\n\n //#region methods / add related post\n @POST()\n addRelatedPost(\n @Query('id') id: number,\n @Query('relatedPostId') relatedPostId: number,\n @Query('expectedVersion') expectedVersion: number,\n ): Taon__NS__Response<TaonCmsContentEntity> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n //#endregion\n\n //#region methods / delete related post\n @DELETE()\n deleteRelatedPost(\n @Query('id') id: number,\n @Query('relatedPostId') relatedPostId: number,\n @Query('expectedVersion') expectedVersion: number,\n ): Taon__NS__Response<TaonCmsContentEntity> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n //#endregion\n\n @POST()\n linkVersionPost(\n @Query('id') id: number,\n @Query('versionPostId') versionPostId: number,\n @Query('kind') kind: TaonCmsPostVersionKind,\n @Query('expectedVersion') expectedVersion: number,\n ): Taon__NS__Response<TaonCmsContentEntity> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n @DELETE()\n removeVersionPost(\n @Query('id') id: number,\n @Query('kind') kind: TaonCmsPostVersionKind,\n @Query('expectedVersion') expectedVersion: number,\n ): Taon__NS__Response<TaonCmsContentEntity> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n //#region methods / list revisions\n @GET()\n listRevisions(\n @Query('id') id: number,\n ): Taon__NS__Response<TaonCmsContentRevisionEntity[]> {\n/* */\n/* */\n return (void 0);\n }\n //#endregion\n}","//#region imports\nimport { TaonBaseMiddleware, TaonMiddleware, Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\nimport { ___NS__add, ___NS__after, ___NS__ary, ___NS__assign, ___NS__assignIn, ___NS__assignInWith, ___NS__assignWith, ___NS__at, ___NS__attempt, ___NS__before, ___NS__bind, ___NS__bindAll, ___NS__bindKey, ___NS__camelCase, ___NS__capitalize, ___NS__castArray, ___NS__ceil, ___NS__chain, ___NS__chunk, ___NS__clamp, ___NS__clone, ___NS__cloneDeep, ___NS__cloneDeepWith, ___NS__cloneWith, ___NS__compact, ___NS__concat, ___NS__cond, ___NS__conforms, ___NS__conformsTo, ___NS__constant, ___NS__countBy, ___NS__create, ___NS__curry, ___NS__curryRight, ___NS__debounce, ___NS__deburr, ___NS__defaults, ___NS__defaultsDeep, ___NS__defaultTo, ___NS__defer, ___NS__delay, ___NS__difference, ___NS__differenceBy, ___NS__differenceWith, ___NS__divide, ___NS__drop, ___NS__dropRight, ___NS__dropRightWhile, ___NS__dropWhile, ___NS__each, ___NS__eachRight, ___NS__endsWith, ___NS__entries, ___NS__entriesIn, ___NS__eq, ___NS__escape, ___NS__escapeRegExp, ___NS__every, ___NS__extend, ___NS__extendWith, ___NS__fill, ___NS__filter, ___NS__find, ___NS__findIndex, ___NS__findKey, ___NS__findLast, ___NS__findLastIndex, ___NS__findLastKey, ___NS__first, ___NS__flatMap, ___NS__flatMapDeep, ___NS__flatMapDepth, ___NS__flatten, ___NS__flattenDeep, ___NS__flattenDepth, ___NS__flip, ___NS__floor, ___NS__flow, ___NS__flowRight, ___NS__forEach, ___NS__forEachRight, ___NS__forIn, ___NS__forInRight, ___NS__forOwn, ___NS__forOwnRight, ___NS__fromPairs, ___NS__functions, ___NS__functionsIn, ___NS__get, ___NS__groupBy, ___NS__gt, ___NS__gte, ___NS__has, ___NS__hasIn, ___NS__head, ___NS__identity, ___NS__includes, ___NS__indexOf, ___NS__initial, ___NS__inRange, ___NS__intersection, ___NS__intersectionBy, ___NS__intersectionWith, ___NS__invert, ___NS__invertBy, ___NS__invoke, ___NS__invokeMap, ___NS__isArguments, ___NS__isArray, ___NS__isArrayBuffer, ___NS__isArrayLike, ___NS__isArrayLikeObject, ___NS__isBoolean, ___NS__isBuffer, ___NS__isDate, ___NS__isElement, ___NS__isEmpty, ___NS__isEqual, ___NS__isEqualWith, ___NS__isError, ___NS__isFinite, ___NS__isFunction, ___NS__isInteger, ___NS__isLeafObject, ___NS__isLength, ___NS__isMap, ___NS__isMatch, ___NS__isMatchWith, ___NS__isNaN, ___NS__isNative, ___NS__isNil, ___NS__isNull, ___NS__isNumber, ___NS__isObject, ___NS__isObjectLike, ___NS__isPlainObject, ___NS__isRegExp, ___NS__isSafeInteger, ___NS__isSet, ___NS__isString, ___NS__isSymbol, ___NS__isTypedArray, ___NS__isUndefined, ___NS__isWeakMap, ___NS__isWeakSet, ___NS__iteratee, ___NS__join, ___NS__kebabCase, ___NS__keyBy, ___NS__keys, ___NS__keysIn, ___NS__last, ___NS__lastIndexOf, ___NS__lowerCase, ___NS__lowerFirst, ___NS__lt, ___NS__lte, ___NS__map, ___NS__mapKeys, ___NS__mapValues, ___NS__matches, ___NS__matchesProperty, ___NS__max, ___NS__maxBy, ___NS__mean, ___NS__meanBy, ___NS__memoize, ___NS__merge, ___NS__mergeWith, ___NS__method, ___NS__methodOf, ___NS__min, ___NS__minBy, ___NS__mixin, ___NS__multiply, ___NS__negate, ___NS__noop, ___NS__now, ___NS__nth, ___NS__nthArg, ___NS__omit, ___NS__omitBy, ___NS__once, ___NS__orderBy, ___NS__over, ___NS__overArgs, ___NS__overEvery, ___NS__overSome, ___NS__pad, ___NS__padEnd, ___NS__padStart, ___NS__parseInt, ___NS__partial, ___NS__partialRight, ___NS__partition, ___NS__pick, ___NS__pickBy, ___NS__property, ___NS__propertyOf, ___NS__pull, ___NS__pullAll, ___NS__pullAllBy, ___NS__pullAllWith, ___NS__pullAt, ___NS__random, ___NS__range, ___NS__rangeRight, ___NS__rearg, ___NS__reduce, ___NS__reduceRight, ___NS__reject, ___NS__remove, ___NS__repeat, ___NS__replace, ___NS__rest, ___NS__result, ___NS__reverse, ___NS__round, ___NS__sample, ___NS__sampleSize, ___NS__set, ___NS__setWith, ___NS__shuffle, ___NS__size, ___NS__slice, ___NS__snakeCase, ___NS__some, ___NS__sortBy, ___NS__sortedIndex, ___NS__sortedIndexBy, ___NS__sortedIndexOf, ___NS__sortedLastIndex, ___NS__sortedLastIndexBy, ___NS__sortedLastIndexOf, ___NS__sortedUniq, ___NS__sortedUniqBy, ___NS__split, ___NS__spread, ___NS__startCase, ___NS__startsWith, ___NS__stubArray, ___NS__stubFalse, ___NS__stubObject, ___NS__stubString, ___NS__stubTrue, ___NS__subtract, ___NS__sum, ___NS__sumBy, ___NS__tail, ___NS__take, ___NS__takeRight, ___NS__takeRightWhile, ___NS__takeWhile, ___NS__tap, ___NS__template, ___NS__templateSettings, ___NS__throttle, ___NS__thru, ___NS__times, ___NS__toArray, ___NS__toFinite, ___NS__toInteger, ___NS__toLength, ___NS__toLower, ___NS__toNumber, ___NS__toPairs, ___NS__toPairsIn, ___NS__toPath, ___NS__toPlainObject, ___NS__toSafeInteger, ___NS__toString, ___NS__toUpper, ___NS__transform, ___NS__trim, ___NS__trimEnd, ___NS__trimStart, ___NS__truncate, ___NS__unary, ___NS__unescape, ___NS__union, ___NS__unionBy, ___NS__unionWith, ___NS__uniq, ___NS__uniqBy, ___NS__uniqueId, ___NS__uniqWith, ___NS__unset, ___NS__unzip, ___NS__unzipWith, ___NS__update, ___NS__updateWith, ___NS__upperCase, ___NS__upperFirst, ___NS__values, ___NS__valuesIn, ___NS__without, ___NS__words, ___NS__wrap, ___NS__xor, ___NS__xorBy, ___NS__xorWith, ___NS__zip, ___NS__zipObject, ___NS__zipObjectDeep, ___NS__zipWith } from 'tnp-core/browser-prod';\n//#endregion\n\n@TaonMiddleware({\n className: 'TaonCmsContentMiddleware',\n})\nexport class TaonCmsContentMiddleware extends TaonBaseMiddleware {}","//#region imports\nimport { TaonBaseProvider, TaonProvider, Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\nimport { ___NS__add, ___NS__after, ___NS__ary, ___NS__assign, ___NS__assignIn, ___NS__assignInWith, ___NS__assignWith, ___NS__at, ___NS__attempt, ___NS__before, ___NS__bind, ___NS__bindAll, ___NS__bindKey, ___NS__camelCase, ___NS__capitalize, ___NS__castArray, ___NS__ceil, ___NS__chain, ___NS__chunk, ___NS__clamp, ___NS__clone, ___NS__cloneDeep, ___NS__cloneDeepWith, ___NS__cloneWith, ___NS__compact, ___NS__concat, ___NS__cond, ___NS__conforms, ___NS__conformsTo, ___NS__constant, ___NS__countBy, ___NS__create, ___NS__curry, ___NS__curryRight, ___NS__debounce, ___NS__deburr, ___NS__defaults, ___NS__defaultsDeep, ___NS__defaultTo, ___NS__defer, ___NS__delay, ___NS__difference, ___NS__differenceBy, ___NS__differenceWith, ___NS__divide, ___NS__drop, ___NS__dropRight, ___NS__dropRightWhile, ___NS__dropWhile, ___NS__each, ___NS__eachRight, ___NS__endsWith, ___NS__entries, ___NS__entriesIn, ___NS__eq, ___NS__escape, ___NS__escapeRegExp, ___NS__every, ___NS__extend, ___NS__extendWith, ___NS__fill, ___NS__filter, ___NS__find, ___NS__findIndex, ___NS__findKey, ___NS__findLast, ___NS__findLastIndex, ___NS__findLastKey, ___NS__first, ___NS__flatMap, ___NS__flatMapDeep, ___NS__flatMapDepth, ___NS__flatten, ___NS__flattenDeep, ___NS__flattenDepth, ___NS__flip, ___NS__floor, ___NS__flow, ___NS__flowRight, ___NS__forEach, ___NS__forEachRight, ___NS__forIn, ___NS__forInRight, ___NS__forOwn, ___NS__forOwnRight, ___NS__fromPairs, ___NS__functions, ___NS__functionsIn, ___NS__get, ___NS__groupBy, ___NS__gt, ___NS__gte, ___NS__has, ___NS__hasIn, ___NS__head, ___NS__identity, ___NS__includes, ___NS__indexOf, ___NS__initial, ___NS__inRange, ___NS__intersection, ___NS__intersectionBy, ___NS__intersectionWith, ___NS__invert, ___NS__invertBy, ___NS__invoke, ___NS__invokeMap, ___NS__isArguments, ___NS__isArray, ___NS__isArrayBuffer, ___NS__isArrayLike, ___NS__isArrayLikeObject, ___NS__isBoolean, ___NS__isBuffer, ___NS__isDate, ___NS__isElement, ___NS__isEmpty, ___NS__isEqual, ___NS__isEqualWith, ___NS__isError, ___NS__isFinite, ___NS__isFunction, ___NS__isInteger, ___NS__isLeafObject, ___NS__isLength, ___NS__isMap, ___NS__isMatch, ___NS__isMatchWith, ___NS__isNaN, ___NS__isNative, ___NS__isNil, ___NS__isNull, ___NS__isNumber, ___NS__isObject, ___NS__isObjectLike, ___NS__isPlainObject, ___NS__isRegExp, ___NS__isSafeInteger, ___NS__isSet, ___NS__isString, ___NS__isSymbol, ___NS__isTypedArray, ___NS__isUndefined, ___NS__isWeakMap, ___NS__isWeakSet, ___NS__iteratee, ___NS__join, ___NS__kebabCase, ___NS__keyBy, ___NS__keys, ___NS__keysIn, ___NS__last, ___NS__lastIndexOf, ___NS__lowerCase, ___NS__lowerFirst, ___NS__lt, ___NS__lte, ___NS__map, ___NS__mapKeys, ___NS__mapValues, ___NS__matches, ___NS__matchesProperty, ___NS__max, ___NS__maxBy, ___NS__mean, ___NS__meanBy, ___NS__memoize, ___NS__merge, ___NS__mergeWith, ___NS__method, ___NS__methodOf, ___NS__min, ___NS__minBy, ___NS__mixin, ___NS__multiply, ___NS__negate, ___NS__noop, ___NS__now, ___NS__nth, ___NS__nthArg, ___NS__omit, ___NS__omitBy, ___NS__once, ___NS__orderBy, ___NS__over, ___NS__overArgs, ___NS__overEvery, ___NS__overSome, ___NS__pad, ___NS__padEnd, ___NS__padStart, ___NS__parseInt, ___NS__partial, ___NS__partialRight, ___NS__partition, ___NS__pick, ___NS__pickBy, ___NS__property, ___NS__propertyOf, ___NS__pull, ___NS__pullAll, ___NS__pullAllBy, ___NS__pullAllWith, ___NS__pullAt, ___NS__random, ___NS__range, ___NS__rangeRight, ___NS__rearg, ___NS__reduce, ___NS__reduceRight, ___NS__reject, ___NS__remove, ___NS__repeat, ___NS__replace, ___NS__rest, ___NS__result, ___NS__reverse, ___NS__round, ___NS__sample, ___NS__sampleSize, ___NS__set, ___NS__setWith, ___NS__shuffle, ___NS__size, ___NS__slice, ___NS__snakeCase, ___NS__some, ___NS__sortBy, ___NS__sortedIndex, ___NS__sortedIndexBy, ___NS__sortedIndexOf, ___NS__sortedLastIndex, ___NS__sortedLastIndexBy, ___NS__sortedLastIndexOf, ___NS__sortedUniq, ___NS__sortedUniqBy, ___NS__split, ___NS__spread, ___NS__startCase, ___NS__startsWith, ___NS__stubArray, ___NS__stubFalse, ___NS__stubObject, ___NS__stubString, ___NS__stubTrue, ___NS__subtract, ___NS__sum, ___NS__sumBy, ___NS__tail, ___NS__take, ___NS__takeRight, ___NS__takeRightWhile, ___NS__takeWhile, ___NS__tap, ___NS__template, ___NS__templateSettings, ___NS__throttle, ___NS__thru, ___NS__times, ___NS__toArray, ___NS__toFinite, ___NS__toInteger, ___NS__toLength, ___NS__toLower, ___NS__toNumber, ___NS__toPairs, ___NS__toPairsIn, ___NS__toPath, ___NS__toPlainObject, ___NS__toSafeInteger, ___NS__toString, ___NS__toUpper, ___NS__transform, ___NS__trim, ___NS__trimEnd, ___NS__trimStart, ___NS__truncate, ___NS__unary, ___NS__unescape, ___NS__union, ___NS__unionBy, ___NS__unionWith, ___NS__uniq, ___NS__uniqBy, ___NS__uniqueId, ___NS__uniqWith, ___NS__unset, ___NS__unzip, ___NS__unzipWith, ___NS__update, ___NS__updateWith, ___NS__upperCase, ___NS__upperFirst, ___NS__values, ___NS__valuesIn, ___NS__without, ___NS__words, ___NS__wrap, ___NS__xor, ___NS__xorBy, ___NS__xorWith, ___NS__zip, ___NS__zipObject, ___NS__zipObjectDeep, ___NS__zipWith } from 'tnp-core/browser-prod';\nimport { Injectable } from '@angular/core';\n\n//#endregion\n\n@TaonProvider({\n className: 'TaonCmsContentProvider',\n})\nexport class TaonCmsContentProvider extends TaonBaseProvider {\n public siteName: string;\n\n async _(): Promise<void> {\n if (!this.siteName) {\n throw new Error(`Please provide siteName in TaonCmsContentProvider`);\n }\n }\n}","//#region imports\nimport { TaonBaseSubscriberForEntity, TaonSubscriber } from 'taon/browser-prod';\nimport { TaonCmsContentEntity } from './taon-cms-content.entity';\nimport { TaonCmsContentProvider } from './taon-cms-content.provider';\n//#endregion\n\n@TaonSubscriber<TaonCmsContentSubscriber>({\n className: 'TaonCmsContentSubscriber',\n // allowedEvents: ['afterUpdate'],\n})\nexport class TaonCmsContentSubscriber extends TaonBaseSubscriberForEntity {\n taonCmsContentProvider = this.injectProvider(TaonCmsContentProvider);\n listenTo(): typeof TaonCmsContentEntity {\n return TaonCmsContentEntity;\n }\n}","//#region imports\nimport { createContext, TaonBaseContext } from 'taon/browser-prod';\n\nimport { TaonCmsCategoryAbstractContext } from '../taon-cms-category/taon-cms-category.abstract.context';\nimport { TaonCmsContentRevisionAbstractContext } from '../taon-cms-content-revision/taon-cms-content-revision.abstract.context';\nimport { TaonCmsContentTagAbstractContext } from '../taon-cms-content-tag/taon-cms-content-tag.abstract.context';\nimport { TaonCmsTagAbstractContext } from '../taon-cms-tag/taon-cms-tag.abstract.context';\nimport { TaonCmsApplicationHookEntity } from '../taon-cms-application-hook/taon-cms-application-hook.entity';\n\nimport { TaonCmsContentController } from './taon-cms-content.controller';\nimport { TaonCmsContentEntity } from './taon-cms-content.entity';\nimport { TaonCmsContentMiddleware } from './taon-cms-content.middleware';\nimport { TaonCmsContentProvider } from './taon-cms-content.provider';\nimport { TaonCmsContentRepository } from './taon-cms-content.repository';\nimport { TaonCmsContentSubscriber } from './taon-cms-content.subscriber';\nimport { TaonCmsContentStorageController } from './taon-cms-content-storage.controller';\n\n//#endregion\n\nexport const TaonCmsContentAbstractContext = createContext(() => ({\n contextName: 'TaonCmsContentAbstractContext',\n abstract: true,\n contexts: {\n TaonBaseContext,\n TaonCmsCategoryAbstractContext,\n TaonCmsTagAbstractContext,\n TaonCmsContentTagAbstractContext,\n TaonCmsContentRevisionAbstractContext,\n },\n entities: { TaonCmsApplicationHookEntity, TaonCmsContentEntity },\n controllers: { TaonCmsContentController, TaonCmsContentStorageController },\n repositories: { TaonCmsContentRepository },\n providers: { TaonCmsContentProvider },\n middlewares: { TaonCmsContentMiddleware },\n subscribers: { TaonCmsContentSubscriber },\n}));\n","//#region imports\nimport { Column, CustomColumn, PrimaryGeneratedColumn, TaonBaseAbstractEntity, TaonBaseEntity, TaonEntity, Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\nimport { ___NS__add, ___NS__after, ___NS__ary, ___NS__assign, ___NS__assignIn, ___NS__assignInWith, ___NS__assignWith, ___NS__at, ___NS__attempt, ___NS__before, ___NS__bind, ___NS__bindAll, ___NS__bindKey, ___NS__camelCase, ___NS__capitalize, ___NS__castArray, ___NS__ceil, ___NS__chain, ___NS__chunk, ___NS__clamp, ___NS__clone, ___NS__cloneDeep, ___NS__cloneDeepWith, ___NS__cloneWith, ___NS__compact, ___NS__concat, ___NS__cond, ___NS__conforms, ___NS__conformsTo, ___NS__constant, ___NS__countBy, ___NS__create, ___NS__curry, ___NS__curryRight, ___NS__debounce, ___NS__deburr, ___NS__defaults, ___NS__defaultsDeep, ___NS__defaultTo, ___NS__defer, ___NS__delay, ___NS__difference, ___NS__differenceBy, ___NS__differenceWith, ___NS__divide, ___NS__drop, ___NS__dropRight, ___NS__dropRightWhile, ___NS__dropWhile, ___NS__each, ___NS__eachRight, ___NS__endsWith, ___NS__entries, ___NS__entriesIn, ___NS__eq, ___NS__escape, ___NS__escapeRegExp, ___NS__every, ___NS__extend, ___NS__extendWith, ___NS__fill, ___NS__filter, ___NS__find, ___NS__findIndex, ___NS__findKey, ___NS__findLast, ___NS__findLastIndex, ___NS__findLastKey, ___NS__first, ___NS__flatMap, ___NS__flatMapDeep, ___NS__flatMapDepth, ___NS__flatten, ___NS__flattenDeep, ___NS__flattenDepth, ___NS__flip, ___NS__floor, ___NS__flow, ___NS__flowRight, ___NS__forEach, ___NS__forEachRight, ___NS__forIn, ___NS__forInRight, ___NS__forOwn, ___NS__forOwnRight, ___NS__fromPairs, ___NS__functions, ___NS__functionsIn, ___NS__get, ___NS__groupBy, ___NS__gt, ___NS__gte, ___NS__has, ___NS__hasIn, ___NS__head, ___NS__identity, ___NS__includes, ___NS__indexOf, ___NS__initial, ___NS__inRange, ___NS__intersection, ___NS__intersectionBy, ___NS__intersectionWith, ___NS__invert, ___NS__invertBy, ___NS__invoke, ___NS__invokeMap, ___NS__isArguments, ___NS__isArray, ___NS__isArrayBuffer, ___NS__isArrayLike, ___NS__isArrayLikeObject, ___NS__isBoolean, ___NS__isBuffer, ___NS__isDate, ___NS__isElement, ___NS__isEmpty, ___NS__isEqual, ___NS__isEqualWith, ___NS__isError, ___NS__isFinite, ___NS__isFunction, ___NS__isInteger, ___NS__isLeafObject, ___NS__isLength, ___NS__isMap, ___NS__isMatch, ___NS__isMatchWith, ___NS__isNaN, ___NS__isNative, ___NS__isNil, ___NS__isNull, ___NS__isNumber, ___NS__isObject, ___NS__isObjectLike, ___NS__isPlainObject, ___NS__isRegExp, ___NS__isSafeInteger, ___NS__isSet, ___NS__isString, ___NS__isSymbol, ___NS__isTypedArray, ___NS__isUndefined, ___NS__isWeakMap, ___NS__isWeakSet, ___NS__iteratee, ___NS__join, ___NS__kebabCase, ___NS__keyBy, ___NS__keys, ___NS__keysIn, ___NS__last, ___NS__lastIndexOf, ___NS__lowerCase, ___NS__lowerFirst, ___NS__lt, ___NS__lte, ___NS__map, ___NS__mapKeys, ___NS__mapValues, ___NS__matches, ___NS__matchesProperty, ___NS__max, ___NS__maxBy, ___NS__mean, ___NS__meanBy, ___NS__memoize, ___NS__merge, ___NS__mergeWith, ___NS__method, ___NS__methodOf, ___NS__min, ___NS__minBy, ___NS__mixin, ___NS__multiply, ___NS__negate, ___NS__noop, ___NS__now, ___NS__nth, ___NS__nthArg, ___NS__omit, ___NS__omitBy, ___NS__once, ___NS__orderBy, ___NS__over, ___NS__overArgs, ___NS__overEvery, ___NS__overSome, ___NS__pad, ___NS__padEnd, ___NS__padStart, ___NS__parseInt, ___NS__partial, ___NS__partialRight, ___NS__partition, ___NS__pick, ___NS__pickBy, ___NS__property, ___NS__propertyOf, ___NS__pull, ___NS__pullAll, ___NS__pullAllBy, ___NS__pullAllWith, ___NS__pullAt, ___NS__random, ___NS__range, ___NS__rangeRight, ___NS__rearg, ___NS__reduce, ___NS__reduceRight, ___NS__reject, ___NS__remove, ___NS__repeat, ___NS__replace, ___NS__rest, ___NS__result, ___NS__reverse, ___NS__round, ___NS__sample, ___NS__sampleSize, ___NS__set, ___NS__setWith, ___NS__shuffle, ___NS__size, ___NS__slice, ___NS__snakeCase, ___NS__some, ___NS__sortBy, ___NS__sortedIndex, ___NS__sortedIndexBy, ___NS__sortedIndexOf, ___NS__sortedLastIndex, ___NS__sortedLastIndexBy, ___NS__sortedLastIndexOf, ___NS__sortedUniq, ___NS__sortedUniqBy, ___NS__split, ___NS__spread, ___NS__startCase, ___NS__startsWith, ___NS__stubArray, ___NS__stubFalse, ___NS__stubObject, ___NS__stubString, ___NS__stubTrue, ___NS__subtract, ___NS__sum, ___NS__sumBy, ___NS__tail, ___NS__take, ___NS__takeRight, ___NS__takeRightWhile, ___NS__takeWhile, ___NS__tap, ___NS__template, ___NS__templateSettings, ___NS__throttle, ___NS__thru, ___NS__times, ___NS__toArray, ___NS__toFinite, ___NS__toInteger, ___NS__toLength, ___NS__toLower, ___NS__toNumber, ___NS__toPairs, ___NS__toPairsIn, ___NS__toPath, ___NS__toPlainObject, ___NS__toSafeInteger, ___NS__toString, ___NS__toUpper, ___NS__transform, ___NS__trim, ___NS__trimEnd, ___NS__trimStart, ___NS__truncate, ___NS__unary, ___NS__unescape, ___NS__union, ___NS__unionBy, ___NS__unionWith, ___NS__uniq, ___NS__uniqBy, ___NS__uniqueId, ___NS__uniqWith, ___NS__unset, ___NS__unzip, ___NS__unzipWith, ___NS__update, ___NS__updateWith, ___NS__upperCase, ___NS__upperFirst, ___NS__values, ___NS__valuesIn, ___NS__without, ___NS__words, ___NS__wrap, ___NS__xor, ___NS__xorBy, ___NS__xorWith, ___NS__zip, ___NS__zipObject, ___NS__zipObjectDeep, ___NS__zipWith } from 'tnp-core/browser-prod';\n\nimport { TaonCmsContentAssetDefaultsValues } from './taon-cms-content-asset.constants';\n//#endregion\n\n@TaonEntity({\n className: 'TaonCmsContentAssetEntity',\n createTable: true,\n})\nexport class TaonCmsContentAssetEntity extends TaonBaseEntity<TaonCmsContentAssetEntity> {\n/* */\n/* */\n \n id: number;\n\n/* */\n/* */\n \n version: number;\n\n/* */\n/* */\n \n contentId: number | null;\n\n/* */\n/* */\n \n type: string;\n // image | video | audio | file\n\n/* */\n/* */\n \n storageProvider: string;\n // r2 | filesystem | s3\n\n/* */\n/* */\n \n bucket: string | null;\n\n/* */\n/* */\n \n key: string;\n\n/* */\n/* */\n \n originalFilename: string | null;\n\n/* */\n/* */\n \n mimeType: string | null;\n\n/* */\n/* */\n \n size: number | null;\n\n/* */\n/* */\n \n durationSeconds: number | null;\n\n/* */\n/* */\n \n metadata: Record<string, any> | null;\n\n/* */\n/* */\n \n createdAt: Date;\n}","//#region imports\nimport { TaonBaseRepository, TaonRepository } from 'taon/browser-prod';\nimport { Raw } from 'taon-typeorm/browser-prod';\n\nimport { TaonCmsContentAssetEntity } from './taon-cms-content-asset.entity';\n//#endregion\n\n@TaonRepository({\n className: 'TaonCmsContentAssetRepository',\n})\nexport class TaonCmsContentAssetRepository extends TaonBaseRepository<TaonCmsContentAssetEntity> {\n entityClassResolveFn: () => typeof TaonCmsContentAssetEntity = () => TaonCmsContentAssetEntity;\n\n /**\n * TODO remove this demo example method\n */\n async countEntitesWithEvenId(): Promise<number> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n}","//#region imports\nimport { TaonController, TaonBaseCrudController, Query, GET, ClassHelpers__NS__asyncHandler, ClassHelpers__NS__ensureClassConfig, ClassHelpers__NS__ensureMethodConfig, ClassHelpers__NS__getClassConfig, ClassHelpers__NS__getClassFnFromObject, ClassHelpers__NS__getControllerConfigs, ClassHelpers__NS__getFullInternalName, ClassHelpers__NS__getMethodsNames, ClassHelpers__NS__getName, ClassHelpers__NS__getOrginalClass, ClassHelpers__NS__getUniqueKey, ClassHelpers__NS__hasParentClassWithName, ClassHelpers__NS__isContextClassObject, ClassHelpers__NS__mapFnError, ClassHelpers__NS__setName, Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\nimport { ___NS__add, ___NS__after, ___NS__ary, ___NS__assign, ___NS__assignIn, ___NS__assignInWith, ___NS__assignWith, ___NS__at, ___NS__attempt, ___NS__before, ___NS__bind, ___NS__bindAll, ___NS__bindKey, ___NS__camelCase, ___NS__capitalize, ___NS__castArray, ___NS__ceil, ___NS__chain, ___NS__chunk, ___NS__clamp, ___NS__clone, ___NS__cloneDeep, ___NS__cloneDeepWith, ___NS__cloneWith, ___NS__compact, ___NS__concat, ___NS__cond, ___NS__conforms, ___NS__conformsTo, ___NS__constant, ___NS__countBy, ___NS__create, ___NS__curry, ___NS__curryRight, ___NS__debounce, ___NS__deburr, ___NS__defaults, ___NS__defaultsDeep, ___NS__defaultTo, ___NS__defer, ___NS__delay, ___NS__difference, ___NS__differenceBy, ___NS__differenceWith, ___NS__divide, ___NS__drop, ___NS__dropRight, ___NS__dropRightWhile, ___NS__dropWhile, ___NS__each, ___NS__eachRight, ___NS__endsWith, ___NS__entries, ___NS__entriesIn, ___NS__eq, ___NS__escape, ___NS__escapeRegExp, ___NS__every, ___NS__extend, ___NS__extendWith, ___NS__fill, ___NS__filter, ___NS__find, ___NS__findIndex, ___NS__findKey, ___NS__findLast, ___NS__findLastIndex, ___NS__findLastKey, ___NS__first, ___NS__flatMap, ___NS__flatMapDeep, ___NS__flatMapDepth, ___NS__flatten, ___NS__flattenDeep, ___NS__flattenDepth, ___NS__flip, ___NS__floor, ___NS__flow, ___NS__flowRight, ___NS__forEach, ___NS__forEachRight, ___NS__forIn, ___NS__forInRight, ___NS__forOwn, ___NS__forOwnRight, ___NS__fromPairs, ___NS__functions, ___NS__functionsIn, ___NS__get, ___NS__groupBy, ___NS__gt, ___NS__gte, ___NS__has, ___NS__hasIn, ___NS__head, ___NS__identity, ___NS__includes, ___NS__indexOf, ___NS__initial, ___NS__inRange, ___NS__intersection, ___NS__intersectionBy, ___NS__intersectionWith, ___NS__invert, ___NS__invertBy, ___NS__invoke, ___NS__invokeMap, ___NS__isArguments, ___NS__isArray, ___NS__isArrayBuffer, ___NS__isArrayLike, ___NS__isArrayLikeObject, ___NS__isBoolean, ___NS__isBuffer, ___NS__isDate, ___NS__isElement, ___NS__isEmpty, ___NS__isEqual, ___NS__isEqualWith, ___NS__isError, ___NS__isFinite, ___NS__isFunction, ___NS__isInteger, ___NS__isLeafObject, ___NS__isLength, ___NS__isMap, ___NS__isMatch, ___NS__isMatchWith, ___NS__isNaN, ___NS__isNative, ___NS__isNil, ___NS__isNull, ___NS__isNumber, ___NS__isObject, ___NS__isObjectLike, ___NS__isPlainObject, ___NS__isRegExp, ___NS__isSafeInteger, ___NS__isSet, ___NS__isString, ___NS__isSymbol, ___NS__isTypedArray, ___NS__isUndefined, ___NS__isWeakMap, ___NS__isWeakSet, ___NS__iteratee, ___NS__join, ___NS__kebabCase, ___NS__keyBy, ___NS__keys, ___NS__keysIn, ___NS__last, ___NS__lastIndexOf, ___NS__lowerCase, ___NS__lowerFirst, ___NS__lt, ___NS__lte, ___NS__map, ___NS__mapKeys, ___NS__mapValues, ___NS__matches, ___NS__matchesProperty, ___NS__max, ___NS__maxBy, ___NS__mean, ___NS__meanBy, ___NS__memoize, ___NS__merge, ___NS__mergeWith, ___NS__method, ___NS__methodOf, ___NS__min, ___NS__minBy, ___NS__mixin, ___NS__multiply, ___NS__negate, ___NS__noop, ___NS__now, ___NS__nth, ___NS__nthArg, ___NS__omit, ___NS__omitBy, ___NS__once, ___NS__orderBy, ___NS__over, ___NS__overArgs, ___NS__overEvery, ___NS__overSome, ___NS__pad, ___NS__padEnd, ___NS__padStart, ___NS__parseInt, ___NS__partial, ___NS__partialRight, ___NS__partition, ___NS__pick, ___NS__pickBy, ___NS__property, ___NS__propertyOf, ___NS__pull, ___NS__pullAll, ___NS__pullAllBy, ___NS__pullAllWith, ___NS__pullAt, ___NS__random, ___NS__range, ___NS__rangeRight, ___NS__rearg, ___NS__reduce, ___NS__reduceRight, ___NS__reject, ___NS__remove, ___NS__repeat, ___NS__replace, ___NS__rest, ___NS__result, ___NS__reverse, ___NS__round, ___NS__sample, ___NS__sampleSize, ___NS__set, ___NS__setWith, ___NS__shuffle, ___NS__size, ___NS__slice, ___NS__snakeCase, ___NS__some, ___NS__sortBy, ___NS__sortedIndex, ___NS__sortedIndexBy, ___NS__sortedIndexOf, ___NS__sortedLastIndex, ___NS__sortedLastIndexBy, ___NS__sortedLastIndexOf, ___NS__sortedUniq, ___NS__sortedUniqBy, ___NS__split, ___NS__spread, ___NS__startCase, ___NS__startsWith, ___NS__stubArray, ___NS__stubFalse, ___NS__stubObject, ___NS__stubString, ___NS__stubTrue, ___NS__subtract, ___NS__sum, ___NS__sumBy, ___NS__tail, ___NS__take, ___NS__takeRight, ___NS__takeRightWhile, ___NS__takeWhile, ___NS__tap, ___NS__template, ___NS__templateSettings, ___NS__throttle, ___NS__thru, ___NS__times, ___NS__toArray, ___NS__toFinite, ___NS__toInteger, ___NS__toLength, ___NS__toLower, ___NS__toNumber, ___NS__toPairs, ___NS__toPairsIn, ___NS__toPath, ___NS__toPlainObject, ___NS__toSafeInteger, ___NS__toString, ___NS__toUpper, ___NS__transform, ___NS__trim, ___NS__trimEnd, ___NS__trimStart, ___NS__truncate, ___NS__unary, ___NS__unescape, ___NS__union, ___NS__unionBy, ___NS__unionWith, ___NS__uniq, ___NS__uniqBy, ___NS__uniqueId, ___NS__uniqWith, ___NS__unset, ___NS__unzip, ___NS__unzipWith, ___NS__update, ___NS__updateWith, ___NS__upperCase, ___NS__upperFirst, ___NS__values, ___NS__valuesIn, ___NS__without, ___NS__words, ___NS__wrap, ___NS__xor, ___NS__xorBy, ___NS__xorWith, ___NS__zip, ___NS__zipObject, ___NS__zipObjectDeep, ___NS__zipWith } from 'tnp-core/browser-prod';\n\nimport { TaonCmsContentAssetEntity } from './taon-cms-content-asset.entity';\nimport { TaonCmsContentAssetRepository } from './taon-cms-content-asset.repository';\n//#endregion\n\n@TaonController<TaonCmsContentAssetController>({\n className: 'TaonCmsContentAssetController',\n allowedMethods: []\n})\nexport class TaonCmsContentAssetController extends TaonBaseCrudController<TaonCmsContentAssetEntity> {\n entityClassResolveFn: () => typeof TaonCmsContentAssetEntity = () => TaonCmsContentAssetEntity;\n\n taonCmsContentAssetRepository = this.injectCustomRepo(TaonCmsContentAssetRepository);\n\n //#region methods & getters / hello world\n /**\n * TODO remove this demo example method\n */\n @GET()\n helloWord(@Query('yourName') yourName: string): Taon__NS__Response<string> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n //#endregion\n}","//#region imports\nimport { TaonBaseProvider, TaonProvider, Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\nimport { ___NS__add, ___NS__after, ___NS__ary, ___NS__assign, ___NS__assignIn, ___NS__assignInWith, ___NS__assignWith, ___NS__at, ___NS__attempt, ___NS__before, ___NS__bind, ___NS__bindAll, ___NS__bindKey, ___NS__camelCase, ___NS__capitalize, ___NS__castArray, ___NS__ceil, ___NS__chain, ___NS__chunk, ___NS__clamp, ___NS__clone, ___NS__cloneDeep, ___NS__cloneDeepWith, ___NS__cloneWith, ___NS__compact, ___NS__concat, ___NS__cond, ___NS__conforms, ___NS__conformsTo, ___NS__constant, ___NS__countBy, ___NS__create, ___NS__curry, ___NS__curryRight, ___NS__debounce, ___NS__deburr, ___NS__defaults, ___NS__defaultsDeep, ___NS__defaultTo, ___NS__defer, ___NS__delay, ___NS__difference, ___NS__differenceBy, ___NS__differenceWith, ___NS__divide, ___NS__drop, ___NS__dropRight, ___NS__dropRightWhile, ___NS__dropWhile, ___NS__each, ___NS__eachRight, ___NS__endsWith, ___NS__entries, ___NS__entriesIn, ___NS__eq, ___NS__escape, ___NS__escapeRegExp, ___NS__every, ___NS__extend, ___NS__extendWith, ___NS__fill, ___NS__filter, ___NS__find, ___NS__findIndex, ___NS__findKey, ___NS__findLast, ___NS__findLastIndex, ___NS__findLastKey, ___NS__first, ___NS__flatMap, ___NS__flatMapDeep, ___NS__flatMapDepth, ___NS__flatten, ___NS__flattenDeep, ___NS__flattenDepth, ___NS__flip, ___NS__floor, ___NS__flow, ___NS__flowRight, ___NS__forEach, ___NS__forEachRight, ___NS__forIn, ___NS__forInRight, ___NS__forOwn, ___NS__forOwnRight, ___NS__fromPairs, ___NS__functions, ___NS__functionsIn, ___NS__get, ___NS__groupBy, ___NS__gt, ___NS__gte, ___NS__has, ___NS__hasIn, ___NS__head, ___NS__identity, ___NS__includes, ___NS__indexOf, ___NS__initial, ___NS__inRange, ___NS__intersection, ___NS__intersectionBy, ___NS__intersectionWith, ___NS__invert, ___NS__invertBy, ___NS__invoke, ___NS__invokeMap, ___NS__isArguments, ___NS__isArray, ___NS__isArrayBuffer, ___NS__isArrayLike, ___NS__isArrayLikeObject, ___NS__isBoolean, ___NS__isBuffer, ___NS__isDate, ___NS__isElement, ___NS__isEmpty, ___NS__isEqual, ___NS__isEqualWith, ___NS__isError, ___NS__isFinite, ___NS__isFunction, ___NS__isInteger, ___NS__isLeafObject, ___NS__isLength, ___NS__isMap, ___NS__isMatch, ___NS__isMatchWith, ___NS__isNaN, ___NS__isNative, ___NS__isNil, ___NS__isNull, ___NS__isNumber, ___NS__isObject, ___NS__isObjectLike, ___NS__isPlainObject, ___NS__isRegExp, ___NS__isSafeInteger, ___NS__isSet, ___NS__isString, ___NS__isSymbol, ___NS__isTypedArray, ___NS__isUndefined, ___NS__isWeakMap, ___NS__isWeakSet, ___NS__iteratee, ___NS__join, ___NS__kebabCase, ___NS__keyBy, ___NS__keys, ___NS__keysIn, ___NS__last, ___NS__lastIndexOf, ___NS__lowerCase, ___NS__lowerFirst, ___NS__lt, ___NS__lte, ___NS__map, ___NS__mapKeys, ___NS__mapValues, ___NS__matches, ___NS__matchesProperty, ___NS__max, ___NS__maxBy, ___NS__mean, ___NS__meanBy, ___NS__memoize, ___NS__merge, ___NS__mergeWith, ___NS__method, ___NS__methodOf, ___NS__min, ___NS__minBy, ___NS__mixin, ___NS__multiply, ___NS__negate, ___NS__noop, ___NS__now, ___NS__nth, ___NS__nthArg, ___NS__omit, ___NS__omitBy, ___NS__once, ___NS__orderBy, ___NS__over, ___NS__overArgs, ___NS__overEvery, ___NS__overSome, ___NS__pad, ___NS__padEnd, ___NS__padStart, ___NS__parseInt, ___NS__partial, ___NS__partialRight, ___NS__partition, ___NS__pick, ___NS__pickBy, ___NS__property, ___NS__propertyOf, ___NS__pull, ___NS__pullAll, ___NS__pullAllBy, ___NS__pullAllWith, ___NS__pullAt, ___NS__random, ___NS__range, ___NS__rangeRight, ___NS__rearg, ___NS__reduce, ___NS__reduceRight, ___NS__reject, ___NS__remove, ___NS__repeat, ___NS__replace, ___NS__rest, ___NS__result, ___NS__reverse, ___NS__round, ___NS__sample, ___NS__sampleSize, ___NS__set, ___NS__setWith, ___NS__shuffle, ___NS__size, ___NS__slice, ___NS__snakeCase, ___NS__some, ___NS__sortBy, ___NS__sortedIndex, ___NS__sortedIndexBy, ___NS__sortedIndexOf, ___NS__sortedLastIndex, ___NS__sortedLastIndexBy, ___NS__sortedLastIndexOf, ___NS__sortedUniq, ___NS__sortedUniqBy, ___NS__split, ___NS__spread, ___NS__startCase, ___NS__startsWith, ___NS__stubArray, ___NS__stubFalse, ___NS__stubObject, ___NS__stubString, ___NS__stubTrue, ___NS__subtract, ___NS__sum, ___NS__sumBy, ___NS__tail, ___NS__take, ___NS__takeRight, ___NS__takeRightWhile, ___NS__takeWhile, ___NS__tap, ___NS__template, ___NS__templateSettings, ___NS__throttle, ___NS__thru, ___NS__times, ___NS__toArray, ___NS__toFinite, ___NS__toInteger, ___NS__toLength, ___NS__toLower, ___NS__toNumber, ___NS__toPairs, ___NS__toPairsIn, ___NS__toPath, ___NS__toPlainObject, ___NS__toSafeInteger, ___NS__toString, ___NS__toUpper, ___NS__transform, ___NS__trim, ___NS__trimEnd, ___NS__trimStart, ___NS__truncate, ___NS__unary, ___NS__unescape, ___NS__union, ___NS__unionBy, ___NS__unionWith, ___NS__uniq, ___NS__uniqBy, ___NS__uniqueId, ___NS__uniqWith, ___NS__unset, ___NS__unzip, ___NS__unzipWith, ___NS__update, ___NS__updateWith, ___NS__upperCase, ___NS__upperFirst, ___NS__values, ___NS__valuesIn, ___NS__without, ___NS__words, ___NS__wrap, ___NS__xor, ___NS__xorBy, ___NS__xorWith, ___NS__zip, ___NS__zipObject, ___NS__zipObjectDeep, ___NS__zipWith } from 'tnp-core/browser-prod';\nimport { Injectable } from '@angular/core';\n//#endregion\n\n@TaonProvider({\n className: 'TaonCmsContentAssetProvider',\n})\n//#region @browser\n@Injectable()\n//#endregion\nexport class TaonCmsContentAssetProvider extends TaonBaseProvider {\n\n\n\n}","//#region imports\nimport { TaonBaseMiddleware, TaonMiddleware, Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\nimport { ___NS__add, ___NS__after, ___NS__ary, ___NS__assign, ___NS__assignIn, ___NS__assignInWith, ___NS__assignWith, ___NS__at, ___NS__attempt, ___NS__before, ___NS__bind, ___NS__bindAll, ___NS__bindKey, ___NS__camelCase, ___NS__capitalize, ___NS__castArray, ___NS__ceil, ___NS__chain, ___NS__chunk, ___NS__clamp, ___NS__clone, ___NS__cloneDeep, ___NS__cloneDeepWith, ___NS__cloneWith, ___NS__compact, ___NS__concat, ___NS__cond, ___NS__conforms, ___NS__conformsTo, ___NS__constant, ___NS__countBy, ___NS__create, ___NS__curry, ___NS__curryRight, ___NS__debounce, ___NS__deburr, ___NS__defaults, ___NS__defaultsDeep, ___NS__defaultTo, ___NS__defer, ___NS__delay, ___NS__difference, ___NS__differenceBy, ___NS__differenceWith, ___NS__divide, ___NS__drop, ___NS__dropRight, ___NS__dropRightWhile, ___NS__dropWhile, ___NS__each, ___NS__eachRight, ___NS__endsWith, ___NS__entries, ___NS__entriesIn, ___NS__eq, ___NS__escape, ___NS__escapeRegExp, ___NS__every, ___NS__extend, ___NS__extendWith, ___NS__fill, ___NS__filter, ___NS__find, ___NS__findIndex, ___NS__findKey, ___NS__findLast, ___NS__findLastIndex, ___NS__findLastKey, ___NS__first, ___NS__flatMap, ___NS__flatMapDeep, ___NS__flatMapDepth, ___NS__flatten, ___NS__flattenDeep, ___NS__flattenDepth, ___NS__flip, ___NS__floor, ___NS__flow, ___NS__flowRight, ___NS__forEach, ___NS__forEachRight, ___NS__forIn, ___NS__forInRight, ___NS__forOwn, ___NS__forOwnRight, ___NS__fromPairs, ___NS__functions, ___NS__functionsIn, ___NS__get, ___NS__groupBy, ___NS__gt, ___NS__gte, ___NS__has, ___NS__hasIn, ___NS__head, ___NS__identity, ___NS__includes, ___NS__indexOf, ___NS__initial, ___NS__inRange, ___NS__intersection, ___NS__intersectionBy, ___NS__intersectionWith, ___NS__invert, ___NS__invertBy, ___NS__invoke, ___NS__invokeMap, ___NS__isArguments, ___NS__isArray, ___NS__isArrayBuffer, ___NS__isArrayLike, ___NS__isArrayLikeObject, ___NS__isBoolean, ___NS__isBuffer, ___NS__isDate, ___NS__isElement, ___NS__isEmpty, ___NS__isEqual, ___NS__isEqualWith, ___NS__isError, ___NS__isFinite, ___NS__isFunction, ___NS__isInteger, ___NS__isLeafObject, ___NS__isLength, ___NS__isMap, ___NS__isMatch, ___NS__isMatchWith, ___NS__isNaN, ___NS__isNative, ___NS__isNil, ___NS__isNull, ___NS__isNumber, ___NS__isObject, ___NS__isObjectLike, ___NS__isPlainObject, ___NS__isRegExp, ___NS__isSafeInteger, ___NS__isSet, ___NS__isString, ___NS__isSymbol, ___NS__isTypedArray, ___NS__isUndefined, ___NS__isWeakMap, ___NS__isWeakSet, ___NS__iteratee, ___NS__join, ___NS__kebabCase, ___NS__keyBy, ___NS__keys, ___NS__keysIn, ___NS__last, ___NS__lastIndexOf, ___NS__lowerCase, ___NS__lowerFirst, ___NS__lt, ___NS__lte, ___NS__map, ___NS__mapKeys, ___NS__mapValues, ___NS__matches, ___NS__matchesProperty, ___NS__max, ___NS__maxBy, ___NS__mean, ___NS__meanBy, ___NS__memoize, ___NS__merge, ___NS__mergeWith, ___NS__method, ___NS__methodOf, ___NS__min, ___NS__minBy, ___NS__mixin, ___NS__multiply, ___NS__negate, ___NS__noop, ___NS__now, ___NS__nth, ___NS__nthArg, ___NS__omit, ___NS__omitBy, ___NS__once, ___NS__orderBy, ___NS__over, ___NS__overArgs, ___NS__overEvery, ___NS__overSome, ___NS__pad, ___NS__padEnd, ___NS__padStart, ___NS__parseInt, ___NS__partial, ___NS__partialRight, ___NS__partition, ___NS__pick, ___NS__pickBy, ___NS__property, ___NS__propertyOf, ___NS__pull, ___NS__pullAll, ___NS__pullAllBy, ___NS__pullAllWith, ___NS__pullAt, ___NS__random, ___NS__range, ___NS__rangeRight, ___NS__rearg, ___NS__reduce, ___NS__reduceRight, ___NS__reject, ___NS__remove, ___NS__repeat, ___NS__replace, ___NS__rest, ___NS__result, ___NS__reverse, ___NS__round, ___NS__sample, ___NS__sampleSize, ___NS__set, ___NS__setWith, ___NS__shuffle, ___NS__size, ___NS__slice, ___NS__snakeCase, ___NS__some, ___NS__sortBy, ___NS__sortedIndex, ___NS__sortedIndexBy, ___NS__sortedIndexOf, ___NS__sortedLastIndex, ___NS__sortedLastIndexBy, ___NS__sortedLastIndexOf, ___NS__sortedUniq, ___NS__sortedUniqBy, ___NS__split, ___NS__spread, ___NS__startCase, ___NS__startsWith, ___NS__stubArray, ___NS__stubFalse, ___NS__stubObject, ___NS__stubString, ___NS__stubTrue, ___NS__subtract, ___NS__sum, ___NS__sumBy, ___NS__tail, ___NS__take, ___NS__takeRight, ___NS__takeRightWhile, ___NS__takeWhile, ___NS__tap, ___NS__template, ___NS__templateSettings, ___NS__throttle, ___NS__thru, ___NS__times, ___NS__toArray, ___NS__toFinite, ___NS__toInteger, ___NS__toLength, ___NS__toLower, ___NS__toNumber, ___NS__toPairs, ___NS__toPairsIn, ___NS__toPath, ___NS__toPlainObject, ___NS__toSafeInteger, ___NS__toString, ___NS__toUpper, ___NS__transform, ___NS__trim, ___NS__trimEnd, ___NS__trimStart, ___NS__truncate, ___NS__unary, ___NS__unescape, ___NS__union, ___NS__unionBy, ___NS__unionWith, ___NS__uniq, ___NS__uniqBy, ___NS__uniqueId, ___NS__uniqWith, ___NS__unset, ___NS__unzip, ___NS__unzipWith, ___NS__update, ___NS__updateWith, ___NS__upperCase, ___NS__upperFirst, ___NS__values, ___NS__valuesIn, ___NS__without, ___NS__words, ___NS__wrap, ___NS__xor, ___NS__xorBy, ___NS__xorWith, ___NS__zip, ___NS__zipObject, ___NS__zipObjectDeep, ___NS__zipWith } from 'tnp-core/browser-prod';\n//#endregion\n\n@TaonMiddleware({\n className: 'TaonCmsContentAssetMiddleware',\n})\nexport class TaonCmsContentAssetMiddleware extends TaonBaseMiddleware {}","//#region imports\nimport { TaonBaseSubscriberForEntity, TaonSubscriber } from 'taon/browser-prod';\nimport { TaonCmsContentAssetEntity } from './taon-cms-content-asset.entity';\nimport { TaonCmsContentAssetProvider } from './taon-cms-content-asset.provider';\n//#endregion\n\n@TaonSubscriber<TaonCmsContentAssetSubscriber>({\n className: 'TaonCmsContentAssetSubscriber',\n // allowedEvents: ['afterUpdate'],\n})\nexport class TaonCmsContentAssetSubscriber extends TaonBaseSubscriberForEntity {\n taonCmsContentAssetProvider = this.injectProvider(TaonCmsContentAssetProvider);\n listenTo(): typeof TaonCmsContentAssetEntity {\n return TaonCmsContentAssetEntity;\n }\n}","//#region imports\nimport { createContext, TaonBaseContext } from 'taon/browser-prod';\n\nimport { TaonCmsContentAssetEntity } from './taon-cms-content-asset.entity';\nimport { TaonCmsContentAssetController } from './taon-cms-content-asset.controller';\nimport { TaonCmsContentAssetRepository } from './taon-cms-content-asset.repository';\nimport { TaonCmsContentAssetProvider } from './taon-cms-content-asset.provider';\nimport { TaonCmsContentAssetMiddleware } from './taon-cms-content-asset.middleware';\nimport { TaonCmsContentAssetSubscriber } from './taon-cms-content-asset.subscriber';\n//#endregion\n\nexport const TaonCmsContentAssetAbstractContext = createContext(() => ({\n contextName: 'TaonCmsContentAssetAbstractContext',\n abstract: true,\n contexts: { TaonBaseContext },\n entities: { TaonCmsContentAssetEntity },\n controllers: { TaonCmsContentAssetController },\n repositories: { TaonCmsContentAssetRepository },\n providers: { TaonCmsContentAssetProvider },\n middlewares: { TaonCmsContentAssetMiddleware },\n subscribers: { TaonCmsContentAssetSubscriber },\n}));\n","//#region imports\nimport { Column, CustomColumn, PrimaryGeneratedColumn, TaonBaseAbstractEntity, TaonBaseEntity, TaonEntity, Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\nimport { ___NS__add, ___NS__after, ___NS__ary, ___NS__assign, ___NS__assignIn, ___NS__assignInWith, ___NS__assignWith, ___NS__at, ___NS__attempt, ___NS__before, ___NS__bind, ___NS__bindAll, ___NS__bindKey, ___NS__camelCase, ___NS__capitalize, ___NS__castArray, ___NS__ceil, ___NS__chain, ___NS__chunk, ___NS__clamp, ___NS__clone, ___NS__cloneDeep, ___NS__cloneDeepWith, ___NS__cloneWith, ___NS__compact, ___NS__concat, ___NS__cond, ___NS__conforms, ___NS__conformsTo, ___NS__constant, ___NS__countBy, ___NS__create, ___NS__curry, ___NS__curryRight, ___NS__debounce, ___NS__deburr, ___NS__defaults, ___NS__defaultsDeep, ___NS__defaultTo, ___NS__defer, ___NS__delay, ___NS__difference, ___NS__differenceBy, ___NS__differenceWith, ___NS__divide, ___NS__drop, ___NS__dropRight, ___NS__dropRightWhile, ___NS__dropWhile, ___NS__each, ___NS__eachRight, ___NS__endsWith, ___NS__entries, ___NS__entriesIn, ___NS__eq, ___NS__escape, ___NS__escapeRegExp, ___NS__every, ___NS__extend, ___NS__extendWith, ___NS__fill, ___NS__filter, ___NS__find, ___NS__findIndex, ___NS__findKey, ___NS__findLast, ___NS__findLastIndex, ___NS__findLastKey, ___NS__first, ___NS__flatMap, ___NS__flatMapDeep, ___NS__flatMapDepth, ___NS__flatten, ___NS__flattenDeep, ___NS__flattenDepth, ___NS__flip, ___NS__floor, ___NS__flow, ___NS__flowRight, ___NS__forEach, ___NS__forEachRight, ___NS__forIn, ___NS__forInRight, ___NS__forOwn, ___NS__forOwnRight, ___NS__fromPairs, ___NS__functions, ___NS__functionsIn, ___NS__get, ___NS__groupBy, ___NS__gt, ___NS__gte, ___NS__has, ___NS__hasIn, ___NS__head, ___NS__identity, ___NS__includes, ___NS__indexOf, ___NS__initial, ___NS__inRange, ___NS__intersection, ___NS__intersectionBy, ___NS__intersectionWith, ___NS__invert, ___NS__invertBy, ___NS__invoke, ___NS__invokeMap, ___NS__isArguments, ___NS__isArray, ___NS__isArrayBuffer, ___NS__isArrayLike, ___NS__isArrayLikeObject, ___NS__isBoolean, ___NS__isBuffer, ___NS__isDate, ___NS__isElement, ___NS__isEmpty, ___NS__isEqual, ___NS__isEqualWith, ___NS__isError, ___NS__isFinite, ___NS__isFunction, ___NS__isInteger, ___NS__isLeafObject, ___NS__isLength, ___NS__isMap, ___NS__isMatch, ___NS__isMatchWith, ___NS__isNaN, ___NS__isNative, ___NS__isNil, ___NS__isNull, ___NS__isNumber, ___NS__isObject, ___NS__isObjectLike, ___NS__isPlainObject, ___NS__isRegExp, ___NS__isSafeInteger, ___NS__isSet, ___NS__isString, ___NS__isSymbol, ___NS__isTypedArray, ___NS__isUndefined, ___NS__isWeakMap, ___NS__isWeakSet, ___NS__iteratee, ___NS__join, ___NS__kebabCase, ___NS__keyBy, ___NS__keys, ___NS__keysIn, ___NS__last, ___NS__lastIndexOf, ___NS__lowerCase, ___NS__lowerFirst, ___NS__lt, ___NS__lte, ___NS__map, ___NS__mapKeys, ___NS__mapValues, ___NS__matches, ___NS__matchesProperty, ___NS__max, ___NS__maxBy, ___NS__mean, ___NS__meanBy, ___NS__memoize, ___NS__merge, ___NS__mergeWith, ___NS__method, ___NS__methodOf, ___NS__min, ___NS__minBy, ___NS__mixin, ___NS__multiply, ___NS__negate, ___NS__noop, ___NS__now, ___NS__nth, ___NS__nthArg, ___NS__omit, ___NS__omitBy, ___NS__once, ___NS__orderBy, ___NS__over, ___NS__overArgs, ___NS__overEvery, ___NS__overSome, ___NS__pad, ___NS__padEnd, ___NS__padStart, ___NS__parseInt, ___NS__partial, ___NS__partialRight, ___NS__partition, ___NS__pick, ___NS__pickBy, ___NS__property, ___NS__propertyOf, ___NS__pull, ___NS__pullAll, ___NS__pullAllBy, ___NS__pullAllWith, ___NS__pullAt, ___NS__random, ___NS__range, ___NS__rangeRight, ___NS__rearg, ___NS__reduce, ___NS__reduceRight, ___NS__reject, ___NS__remove, ___NS__repeat, ___NS__replace, ___NS__rest, ___NS__result, ___NS__reverse, ___NS__round, ___NS__sample, ___NS__sampleSize, ___NS__set, ___NS__setWith, ___NS__shuffle, ___NS__size, ___NS__slice, ___NS__snakeCase, ___NS__some, ___NS__sortBy, ___NS__sortedIndex, ___NS__sortedIndexBy, ___NS__sortedIndexOf, ___NS__sortedLastIndex, ___NS__sortedLastIndexBy, ___NS__sortedLastIndexOf, ___NS__sortedUniq, ___NS__sortedUniqBy, ___NS__split, ___NS__spread, ___NS__startCase, ___NS__startsWith, ___NS__stubArray, ___NS__stubFalse, ___NS__stubObject, ___NS__stubString, ___NS__stubTrue, ___NS__subtract, ___NS__sum, ___NS__sumBy, ___NS__tail, ___NS__take, ___NS__takeRight, ___NS__takeRightWhile, ___NS__takeWhile, ___NS__tap, ___NS__template, ___NS__templateSettings, ___NS__throttle, ___NS__thru, ___NS__times, ___NS__toArray, ___NS__toFinite, ___NS__toInteger, ___NS__toLength, ___NS__toLower, ___NS__toNumber, ___NS__toPairs, ___NS__toPairsIn, ___NS__toPath, ___NS__toPlainObject, ___NS__toSafeInteger, ___NS__toString, ___NS__toUpper, ___NS__transform, ___NS__trim, ___NS__trimEnd, ___NS__trimStart, ___NS__truncate, ___NS__unary, ___NS__unescape, ___NS__union, ___NS__unionBy, ___NS__unionWith, ___NS__uniq, ___NS__uniqBy, ___NS__uniqueId, ___NS__uniqWith, ___NS__unset, ___NS__unzip, ___NS__unzipWith, ___NS__update, ___NS__updateWith, ___NS__upperCase, ___NS__upperFirst, ___NS__values, ___NS__valuesIn, ___NS__without, ___NS__words, ___NS__wrap, ___NS__xor, ___NS__xorBy, ___NS__xorWith, ___NS__zip, ___NS__zipObject, ___NS__zipObjectDeep, ___NS__zipWith } from 'tnp-core/browser-prod';\n\nimport { TaonCmsContentPermissionDefaultsValues } from './taon-cms-content-permission.constants';\n//#endregion\n\n@TaonEntity({\n className: 'TaonCmsContentPermissionEntity',\n createTable: true,\n})\nexport class TaonCmsContentPermissionEntity extends TaonBaseEntity<TaonCmsContentPermissionEntity> {\n @PrimaryGeneratedColumn()\n id: number;\n\n @Column({ type: 'integer', default: 0 })\n version: number;\n\n @Column({ type: 'integer' })\n contentId: number;\n\n @Column({ type: 'varchar' })\n type: string;\n // public | authenticated | permission | role |\n // purchase | subscription\n\n @Column({ type: 'integer', nullable: true })\n permissionId: number | null;\n\n @Column({ type: 'integer', nullable: true })\n roleId: number | null;\n\n @Column({ type: 'integer', nullable: true })\n productId: number | null;\n\n @Column({ type: 'varchar', nullable: true })\n stripePriceId: string | null;\n\n @Column({ type: 'simple-json', nullable: true })\n config: Record<string, any> | null;\n\n @Column({ type: 'datetime' })\n createdAt: Date;\n}","//#region imports\nimport { TaonBaseRepository, TaonRepository } from 'taon/browser-prod';\nimport { Raw } from 'taon-typeorm/browser-prod';\n\nimport { TaonCmsContentPermissionEntity } from './taon-cms-content-permission.entity';\n//#endregion\n\n@TaonRepository({\n className: 'TaonCmsContentPermissionRepository',\n})\nexport class TaonCmsContentPermissionRepository extends TaonBaseRepository<TaonCmsContentPermissionEntity> {\n entityClassResolveFn: () => typeof TaonCmsContentPermissionEntity = () => TaonCmsContentPermissionEntity;\n\n /**\n * TODO remove this demo example method\n */\n async countEntitesWithEvenId(): Promise<number> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n}","//#region imports\nimport { TaonController, TaonBaseCrudController, Query, GET, ClassHelpers__NS__asyncHandler, ClassHelpers__NS__ensureClassConfig, ClassHelpers__NS__ensureMethodConfig, ClassHelpers__NS__getClassConfig, ClassHelpers__NS__getClassFnFromObject, ClassHelpers__NS__getControllerConfigs, ClassHelpers__NS__getFullInternalName, ClassHelpers__NS__getMethodsNames, ClassHelpers__NS__getName, ClassHelpers__NS__getOrginalClass, ClassHelpers__NS__getUniqueKey, ClassHelpers__NS__hasParentClassWithName, ClassHelpers__NS__isContextClassObject, ClassHelpers__NS__mapFnError, ClassHelpers__NS__setName, Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\nimport { ___NS__add, ___NS__after, ___NS__ary, ___NS__assign, ___NS__assignIn, ___NS__assignInWith, ___NS__assignWith, ___NS__at, ___NS__attempt, ___NS__before, ___NS__bind, ___NS__bindAll, ___NS__bindKey, ___NS__camelCase, ___NS__capitalize, ___NS__castArray, ___NS__ceil, ___NS__chain, ___NS__chunk, ___NS__clamp, ___NS__clone, ___NS__cloneDeep, ___NS__cloneDeepWith, ___NS__cloneWith, ___NS__compact, ___NS__concat, ___NS__cond, ___NS__conforms, ___NS__conformsTo, ___NS__constant, ___NS__countBy, ___NS__create, ___NS__curry, ___NS__curryRight, ___NS__debounce, ___NS__deburr, ___NS__defaults, ___NS__defaultsDeep, ___NS__defaultTo, ___NS__defer, ___NS__delay, ___NS__difference, ___NS__differenceBy, ___NS__differenceWith, ___NS__divide, ___NS__drop, ___NS__dropRight, ___NS__dropRightWhile, ___NS__dropWhile, ___NS__each, ___NS__eachRight, ___NS__endsWith, ___NS__entries, ___NS__entriesIn, ___NS__eq, ___NS__escape, ___NS__escapeRegExp, ___NS__every, ___NS__extend, ___NS__extendWith, ___NS__fill, ___NS__filter, ___NS__find, ___NS__findIndex, ___NS__findKey, ___NS__findLast, ___NS__findLastIndex, ___NS__findLastKey, ___NS__first, ___NS__flatMap, ___NS__flatMapDeep, ___NS__flatMapDepth, ___NS__flatten, ___NS__flattenDeep, ___NS__flattenDepth, ___NS__flip, ___NS__floor, ___NS__flow, ___NS__flowRight, ___NS__forEach, ___NS__forEachRight, ___NS__forIn, ___NS__forInRight, ___NS__forOwn, ___NS__forOwnRight, ___NS__fromPairs, ___NS__functions, ___NS__functionsIn, ___NS__get, ___NS__groupBy, ___NS__gt, ___NS__gte, ___NS__has, ___NS__hasIn, ___NS__head, ___NS__identity, ___NS__includes, ___NS__indexOf, ___NS__initial, ___NS__inRange, ___NS__intersection, ___NS__intersectionBy, ___NS__intersectionWith, ___NS__invert, ___NS__invertBy, ___NS__invoke, ___NS__invokeMap, ___NS__isArguments, ___NS__isArray, ___NS__isArrayBuffer, ___NS__isArrayLike, ___NS__isArrayLikeObject, ___NS__isBoolean, ___NS__isBuffer, ___NS__isDate, ___NS__isElement, ___NS__isEmpty, ___NS__isEqual, ___NS__isEqualWith, ___NS__isError, ___NS__isFinite, ___NS__isFunction, ___NS__isInteger, ___NS__isLeafObject, ___NS__isLength, ___NS__isMap, ___NS__isMatch, ___NS__isMatchWith, ___NS__isNaN, ___NS__isNative, ___NS__isNil, ___NS__isNull, ___NS__isNumber, ___NS__isObject, ___NS__isObjectLike, ___NS__isPlainObject, ___NS__isRegExp, ___NS__isSafeInteger, ___NS__isSet, ___NS__isString, ___NS__isSymbol, ___NS__isTypedArray, ___NS__isUndefined, ___NS__isWeakMap, ___NS__isWeakSet, ___NS__iteratee, ___NS__join, ___NS__kebabCase, ___NS__keyBy, ___NS__keys, ___NS__keysIn, ___NS__last, ___NS__lastIndexOf, ___NS__lowerCase, ___NS__lowerFirst, ___NS__lt, ___NS__lte, ___NS__map, ___NS__mapKeys, ___NS__mapValues, ___NS__matches, ___NS__matchesProperty, ___NS__max, ___NS__maxBy, ___NS__mean, ___NS__meanBy, ___NS__memoize, ___NS__merge, ___NS__mergeWith, ___NS__method, ___NS__methodOf, ___NS__min, ___NS__minBy, ___NS__mixin, ___NS__multiply, ___NS__negate, ___NS__noop, ___NS__now, ___NS__nth, ___NS__nthArg, ___NS__omit, ___NS__omitBy, ___NS__once, ___NS__orderBy, ___NS__over, ___NS__overArgs, ___NS__overEvery, ___NS__overSome, ___NS__pad, ___NS__padEnd, ___NS__padStart, ___NS__parseInt, ___NS__partial, ___NS__partialRight, ___NS__partition, ___NS__pick, ___NS__pickBy, ___NS__property, ___NS__propertyOf, ___NS__pull, ___NS__pullAll, ___NS__pullAllBy, ___NS__pullAllWith, ___NS__pullAt, ___NS__random, ___NS__range, ___NS__rangeRight, ___NS__rearg, ___NS__reduce, ___NS__reduceRight, ___NS__reject, ___NS__remove, ___NS__repeat, ___NS__replace, ___NS__rest, ___NS__result, ___NS__reverse, ___NS__round, ___NS__sample, ___NS__sampleSize, ___NS__set, ___NS__setWith, ___NS__shuffle, ___NS__size, ___NS__slice, ___NS__snakeCase, ___NS__some, ___NS__sortBy, ___NS__sortedIndex, ___NS__sortedIndexBy, ___NS__sortedIndexOf, ___NS__sortedLastIndex, ___NS__sortedLastIndexBy, ___NS__sortedLastIndexOf, ___NS__sortedUniq, ___NS__sortedUniqBy, ___NS__split, ___NS__spread, ___NS__startCase, ___NS__startsWith, ___NS__stubArray, ___NS__stubFalse, ___NS__stubObject, ___NS__stubString, ___NS__stubTrue, ___NS__subtract, ___NS__sum, ___NS__sumBy, ___NS__tail, ___NS__take, ___NS__takeRight, ___NS__takeRightWhile, ___NS__takeWhile, ___NS__tap, ___NS__template, ___NS__templateSettings, ___NS__throttle, ___NS__thru, ___NS__times, ___NS__toArray, ___NS__toFinite, ___NS__toInteger, ___NS__toLength, ___NS__toLower, ___NS__toNumber, ___NS__toPairs, ___NS__toPairsIn, ___NS__toPath, ___NS__toPlainObject, ___NS__toSafeInteger, ___NS__toString, ___NS__toUpper, ___NS__transform, ___NS__trim, ___NS__trimEnd, ___NS__trimStart, ___NS__truncate, ___NS__unary, ___NS__unescape, ___NS__union, ___NS__unionBy, ___NS__unionWith, ___NS__uniq, ___NS__uniqBy, ___NS__uniqueId, ___NS__uniqWith, ___NS__unset, ___NS__unzip, ___NS__unzipWith, ___NS__update, ___NS__updateWith, ___NS__upperCase, ___NS__upperFirst, ___NS__values, ___NS__valuesIn, ___NS__without, ___NS__words, ___NS__wrap, ___NS__xor, ___NS__xorBy, ___NS__xorWith, ___NS__zip, ___NS__zipObject, ___NS__zipObjectDeep, ___NS__zipWith } from 'tnp-core/browser-prod';\n\nimport { TaonCmsContentPermissionEntity } from './taon-cms-content-permission.entity';\nimport { TaonCmsContentPermissionRepository } from './taon-cms-content-permission.repository';\n//#endregion\n\n@TaonController<TaonCmsContentPermissionController>({\n className: 'TaonCmsContentPermissionController',\n allowedMethods: []\n})\nexport class TaonCmsContentPermissionController extends TaonBaseCrudController<TaonCmsContentPermissionEntity> {\n entityClassResolveFn: () => typeof TaonCmsContentPermissionEntity = () => TaonCmsContentPermissionEntity;\n\n taonCmsContentPermissionRepository = this.injectCustomRepo(TaonCmsContentPermissionRepository);\n\n //#region methods & getters / hello world\n /**\n * TODO remove this demo example method\n */\n @GET()\n helloWord(@Query('yourName') yourName: string): Taon__NS__Response<string> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n //#endregion\n}","//#region imports\nimport { TaonBaseProvider, TaonProvider, Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\nimport { ___NS__add, ___NS__after, ___NS__ary, ___NS__assign, ___NS__assignIn, ___NS__assignInWith, ___NS__assignWith, ___NS__at, ___NS__attempt, ___NS__before, ___NS__bind, ___NS__bindAll, ___NS__bindKey, ___NS__camelCase, ___NS__capitalize, ___NS__castArray, ___NS__ceil, ___NS__chain, ___NS__chunk, ___NS__clamp, ___NS__clone, ___NS__cloneDeep, ___NS__cloneDeepWith, ___NS__cloneWith, ___NS__compact, ___NS__concat, ___NS__cond, ___NS__conforms, ___NS__conformsTo, ___NS__constant, ___NS__countBy, ___NS__create, ___NS__curry, ___NS__curryRight, ___NS__debounce, ___NS__deburr, ___NS__defaults, ___NS__defaultsDeep, ___NS__defaultTo, ___NS__defer, ___NS__delay, ___NS__difference, ___NS__differenceBy, ___NS__differenceWith, ___NS__divide, ___NS__drop, ___NS__dropRight, ___NS__dropRightWhile, ___NS__dropWhile, ___NS__each, ___NS__eachRight, ___NS__endsWith, ___NS__entries, ___NS__entriesIn, ___NS__eq, ___NS__escape, ___NS__escapeRegExp, ___NS__every, ___NS__extend, ___NS__extendWith, ___NS__fill, ___NS__filter, ___NS__find, ___NS__findIndex, ___NS__findKey, ___NS__findLast, ___NS__findLastIndex, ___NS__findLastKey, ___NS__first, ___NS__flatMap, ___NS__flatMapDeep, ___NS__flatMapDepth, ___NS__flatten, ___NS__flattenDeep, ___NS__flattenDepth, ___NS__flip, ___NS__floor, ___NS__flow, ___NS__flowRight, ___NS__forEach, ___NS__forEachRight, ___NS__forIn, ___NS__forInRight, ___NS__forOwn, ___NS__forOwnRight, ___NS__fromPairs, ___NS__functions, ___NS__functionsIn, ___NS__get, ___NS__groupBy, ___NS__gt, ___NS__gte, ___NS__has, ___NS__hasIn, ___NS__head, ___NS__identity, ___NS__includes, ___NS__indexOf, ___NS__initial, ___NS__inRange, ___NS__intersection, ___NS__intersectionBy, ___NS__intersectionWith, ___NS__invert, ___NS__invertBy, ___NS__invoke, ___NS__invokeMap, ___NS__isArguments, ___NS__isArray, ___NS__isArrayBuffer, ___NS__isArrayLike, ___NS__isArrayLikeObject, ___NS__isBoolean, ___NS__isBuffer, ___NS__isDate, ___NS__isElement, ___NS__isEmpty, ___NS__isEqual, ___NS__isEqualWith, ___NS__isError, ___NS__isFinite, ___NS__isFunction, ___NS__isInteger, ___NS__isLeafObject, ___NS__isLength, ___NS__isMap, ___NS__isMatch, ___NS__isMatchWith, ___NS__isNaN, ___NS__isNative, ___NS__isNil, ___NS__isNull, ___NS__isNumber, ___NS__isObject, ___NS__isObjectLike, ___NS__isPlainObject, ___NS__isRegExp, ___NS__isSafeInteger, ___NS__isSet, ___NS__isString, ___NS__isSymbol, ___NS__isTypedArray, ___NS__isUndefined, ___NS__isWeakMap, ___NS__isWeakSet, ___NS__iteratee, ___NS__join, ___NS__kebabCase, ___NS__keyBy, ___NS__keys, ___NS__keysIn, ___NS__last, ___NS__lastIndexOf, ___NS__lowerCase, ___NS__lowerFirst, ___NS__lt, ___NS__lte, ___NS__map, ___NS__mapKeys, ___NS__mapValues, ___NS__matches, ___NS__matchesProperty, ___NS__max, ___NS__maxBy, ___NS__mean, ___NS__meanBy, ___NS__memoize, ___NS__merge, ___NS__mergeWith, ___NS__method, ___NS__methodOf, ___NS__min, ___NS__minBy, ___NS__mixin, ___NS__multiply, ___NS__negate, ___NS__noop, ___NS__now, ___NS__nth, ___NS__nthArg, ___NS__omit, ___NS__omitBy, ___NS__once, ___NS__orderBy, ___NS__over, ___NS__overArgs, ___NS__overEvery, ___NS__overSome, ___NS__pad, ___NS__padEnd, ___NS__padStart, ___NS__parseInt, ___NS__partial, ___NS__partialRight, ___NS__partition, ___NS__pick, ___NS__pickBy, ___NS__property, ___NS__propertyOf, ___NS__pull, ___NS__pullAll, ___NS__pullAllBy, ___NS__pullAllWith, ___NS__pullAt, ___NS__random, ___NS__range, ___NS__rangeRight, ___NS__rearg, ___NS__reduce, ___NS__reduceRight, ___NS__reject, ___NS__remove, ___NS__repeat, ___NS__replace, ___NS__rest, ___NS__result, ___NS__reverse, ___NS__round, ___NS__sample, ___NS__sampleSize, ___NS__set, ___NS__setWith, ___NS__shuffle, ___NS__size, ___NS__slice, ___NS__snakeCase, ___NS__some, ___NS__sortBy, ___NS__sortedIndex, ___NS__sortedIndexBy, ___NS__sortedIndexOf, ___NS__sortedLastIndex, ___NS__sortedLastIndexBy, ___NS__sortedLastIndexOf, ___NS__sortedUniq, ___NS__sortedUniqBy, ___NS__split, ___NS__spread, ___NS__startCase, ___NS__startsWith, ___NS__stubArray, ___NS__stubFalse, ___NS__stubObject, ___NS__stubString, ___NS__stubTrue, ___NS__subtract, ___NS__sum, ___NS__sumBy, ___NS__tail, ___NS__take, ___NS__takeRight, ___NS__takeRightWhile, ___NS__takeWhile, ___NS__tap, ___NS__template, ___NS__templateSettings, ___NS__throttle, ___NS__thru, ___NS__times, ___NS__toArray, ___NS__toFinite, ___NS__toInteger, ___NS__toLength, ___NS__toLower, ___NS__toNumber, ___NS__toPairs, ___NS__toPairsIn, ___NS__toPath, ___NS__toPlainObject, ___NS__toSafeInteger, ___NS__toString, ___NS__toUpper, ___NS__transform, ___NS__trim, ___NS__trimEnd, ___NS__trimStart, ___NS__truncate, ___NS__unary, ___NS__unescape, ___NS__union, ___NS__unionBy, ___NS__unionWith, ___NS__uniq, ___NS__uniqBy, ___NS__uniqueId, ___NS__uniqWith, ___NS__unset, ___NS__unzip, ___NS__unzipWith, ___NS__update, ___NS__updateWith, ___NS__upperCase, ___NS__upperFirst, ___NS__values, ___NS__valuesIn, ___NS__without, ___NS__words, ___NS__wrap, ___NS__xor, ___NS__xorBy, ___NS__xorWith, ___NS__zip, ___NS__zipObject, ___NS__zipObjectDeep, ___NS__zipWith } from 'tnp-core/browser-prod';\nimport { Injectable } from '@angular/core';\n//#endregion\n\n@TaonProvider({\n className: 'TaonCmsContentPermissionProvider',\n})\n//#region @browser\n@Injectable()\n//#endregion\nexport class TaonCmsContentPermissionProvider extends TaonBaseProvider {\n\n\n\n}","//#region imports\nimport { TaonBaseMiddleware, TaonMiddleware, Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\nimport { ___NS__add, ___NS__after, ___NS__ary, ___NS__assign, ___NS__assignIn, ___NS__assignInWith, ___NS__assignWith, ___NS__at, ___NS__attempt, ___NS__before, ___NS__bind, ___NS__bindAll, ___NS__bindKey, ___NS__camelCase, ___NS__capitalize, ___NS__castArray, ___NS__ceil, ___NS__chain, ___NS__chunk, ___NS__clamp, ___NS__clone, ___NS__cloneDeep, ___NS__cloneDeepWith, ___NS__cloneWith, ___NS__compact, ___NS__concat, ___NS__cond, ___NS__conforms, ___NS__conformsTo, ___NS__constant, ___NS__countBy, ___NS__create, ___NS__curry, ___NS__curryRight, ___NS__debounce, ___NS__deburr, ___NS__defaults, ___NS__defaultsDeep, ___NS__defaultTo, ___NS__defer, ___NS__delay, ___NS__difference, ___NS__differenceBy, ___NS__differenceWith, ___NS__divide, ___NS__drop, ___NS__dropRight, ___NS__dropRightWhile, ___NS__dropWhile, ___NS__each, ___NS__eachRight, ___NS__endsWith, ___NS__entries, ___NS__entriesIn, ___NS__eq, ___NS__escape, ___NS__escapeRegExp, ___NS__every, ___NS__extend, ___NS__extendWith, ___NS__fill, ___NS__filter, ___NS__find, ___NS__findIndex, ___NS__findKey, ___NS__findLast, ___NS__findLastIndex, ___NS__findLastKey, ___NS__first, ___NS__flatMap, ___NS__flatMapDeep, ___NS__flatMapDepth, ___NS__flatten, ___NS__flattenDeep, ___NS__flattenDepth, ___NS__flip, ___NS__floor, ___NS__flow, ___NS__flowRight, ___NS__forEach, ___NS__forEachRight, ___NS__forIn, ___NS__forInRight, ___NS__forOwn, ___NS__forOwnRight, ___NS__fromPairs, ___NS__functions, ___NS__functionsIn, ___NS__get, ___NS__groupBy, ___NS__gt, ___NS__gte, ___NS__has, ___NS__hasIn, ___NS__head, ___NS__identity, ___NS__includes, ___NS__indexOf, ___NS__initial, ___NS__inRange, ___NS__intersection, ___NS__intersectionBy, ___NS__intersectionWith, ___NS__invert, ___NS__invertBy, ___NS__invoke, ___NS__invokeMap, ___NS__isArguments, ___NS__isArray, ___NS__isArrayBuffer, ___NS__isArrayLike, ___NS__isArrayLikeObject, ___NS__isBoolean, ___NS__isBuffer, ___NS__isDate, ___NS__isElement, ___NS__isEmpty, ___NS__isEqual, ___NS__isEqualWith, ___NS__isError, ___NS__isFinite, ___NS__isFunction, ___NS__isInteger, ___NS__isLeafObject, ___NS__isLength, ___NS__isMap, ___NS__isMatch, ___NS__isMatchWith, ___NS__isNaN, ___NS__isNative, ___NS__isNil, ___NS__isNull, ___NS__isNumber, ___NS__isObject, ___NS__isObjectLike, ___NS__isPlainObject, ___NS__isRegExp, ___NS__isSafeInteger, ___NS__isSet, ___NS__isString, ___NS__isSymbol, ___NS__isTypedArray, ___NS__isUndefined, ___NS__isWeakMap, ___NS__isWeakSet, ___NS__iteratee, ___NS__join, ___NS__kebabCase, ___NS__keyBy, ___NS__keys, ___NS__keysIn, ___NS__last, ___NS__lastIndexOf, ___NS__lowerCase, ___NS__lowerFirst, ___NS__lt, ___NS__lte, ___NS__map, ___NS__mapKeys, ___NS__mapValues, ___NS__matches, ___NS__matchesProperty, ___NS__max, ___NS__maxBy, ___NS__mean, ___NS__meanBy, ___NS__memoize, ___NS__merge, ___NS__mergeWith, ___NS__method, ___NS__methodOf, ___NS__min, ___NS__minBy, ___NS__mixin, ___NS__multiply, ___NS__negate, ___NS__noop, ___NS__now, ___NS__nth, ___NS__nthArg, ___NS__omit, ___NS__omitBy, ___NS__once, ___NS__orderBy, ___NS__over, ___NS__overArgs, ___NS__overEvery, ___NS__overSome, ___NS__pad, ___NS__padEnd, ___NS__padStart, ___NS__parseInt, ___NS__partial, ___NS__partialRight, ___NS__partition, ___NS__pick, ___NS__pickBy, ___NS__property, ___NS__propertyOf, ___NS__pull, ___NS__pullAll, ___NS__pullAllBy, ___NS__pullAllWith, ___NS__pullAt, ___NS__random, ___NS__range, ___NS__rangeRight, ___NS__rearg, ___NS__reduce, ___NS__reduceRight, ___NS__reject, ___NS__remove, ___NS__repeat, ___NS__replace, ___NS__rest, ___NS__result, ___NS__reverse, ___NS__round, ___NS__sample, ___NS__sampleSize, ___NS__set, ___NS__setWith, ___NS__shuffle, ___NS__size, ___NS__slice, ___NS__snakeCase, ___NS__some, ___NS__sortBy, ___NS__sortedIndex, ___NS__sortedIndexBy, ___NS__sortedIndexOf, ___NS__sortedLastIndex, ___NS__sortedLastIndexBy, ___NS__sortedLastIndexOf, ___NS__sortedUniq, ___NS__sortedUniqBy, ___NS__split, ___NS__spread, ___NS__startCase, ___NS__startsWith, ___NS__stubArray, ___NS__stubFalse, ___NS__stubObject, ___NS__stubString, ___NS__stubTrue, ___NS__subtract, ___NS__sum, ___NS__sumBy, ___NS__tail, ___NS__take, ___NS__takeRight, ___NS__takeRightWhile, ___NS__takeWhile, ___NS__tap, ___NS__template, ___NS__templateSettings, ___NS__throttle, ___NS__thru, ___NS__times, ___NS__toArray, ___NS__toFinite, ___NS__toInteger, ___NS__toLength, ___NS__toLower, ___NS__toNumber, ___NS__toPairs, ___NS__toPairsIn, ___NS__toPath, ___NS__toPlainObject, ___NS__toSafeInteger, ___NS__toString, ___NS__toUpper, ___NS__transform, ___NS__trim, ___NS__trimEnd, ___NS__trimStart, ___NS__truncate, ___NS__unary, ___NS__unescape, ___NS__union, ___NS__unionBy, ___NS__unionWith, ___NS__uniq, ___NS__uniqBy, ___NS__uniqueId, ___NS__uniqWith, ___NS__unset, ___NS__unzip, ___NS__unzipWith, ___NS__update, ___NS__updateWith, ___NS__upperCase, ___NS__upperFirst, ___NS__values, ___NS__valuesIn, ___NS__without, ___NS__words, ___NS__wrap, ___NS__xor, ___NS__xorBy, ___NS__xorWith, ___NS__zip, ___NS__zipObject, ___NS__zipObjectDeep, ___NS__zipWith } from 'tnp-core/browser-prod';\n//#endregion\n\n@TaonMiddleware({\n className: 'TaonCmsContentPermissionMiddleware',\n})\nexport class TaonCmsContentPermissionMiddleware extends TaonBaseMiddleware {}","//#region imports\nimport { TaonBaseSubscriberForEntity, TaonSubscriber } from 'taon/browser-prod';\nimport { TaonCmsContentPermissionEntity } from './taon-cms-content-permission.entity';\nimport { TaonCmsContentPermissionProvider } from './taon-cms-content-permission.provider';\n//#endregion\n\n@TaonSubscriber<TaonCmsContentPermissionSubscriber>({\n className: 'TaonCmsContentPermissionSubscriber',\n // allowedEvents: ['afterUpdate'],\n})\nexport class TaonCmsContentPermissionSubscriber extends TaonBaseSubscriberForEntity {\n taonCmsContentPermissionProvider = this.injectProvider(TaonCmsContentPermissionProvider);\n listenTo(): typeof TaonCmsContentPermissionEntity {\n return TaonCmsContentPermissionEntity;\n }\n}","//#region imports\nimport { createContext, TaonBaseContext } from 'taon/browser-prod';\n\nimport { TaonCmsContentPermissionEntity } from './taon-cms-content-permission.entity';\nimport { TaonCmsContentPermissionController } from './taon-cms-content-permission.controller';\nimport { TaonCmsContentPermissionRepository } from './taon-cms-content-permission.repository';\nimport { TaonCmsContentPermissionProvider } from './taon-cms-content-permission.provider';\nimport { TaonCmsContentPermissionMiddleware } from './taon-cms-content-permission.middleware';\nimport { TaonCmsContentPermissionSubscriber } from './taon-cms-content-permission.subscriber';\n//#endregion\n\nexport const TaonCmsContentPermissionAbstractContext = createContext(() => ({\n contextName: 'TaonCmsContentPermissionAbstractContext',\n abstract: true,\n contexts: { TaonBaseContext },\n entities: { TaonCmsContentPermissionEntity },\n controllers: { TaonCmsContentPermissionController },\n repositories: { TaonCmsContentPermissionRepository },\n providers: { TaonCmsContentPermissionProvider },\n middlewares: { TaonCmsContentPermissionMiddleware },\n subscribers: { TaonCmsContentPermissionSubscriber },\n}));\n","// THIS FILE IS GENERATED - DO NOT MODIFY\nimport { TaonSessionAbstractContext } from '@taon-dev/session/browser-prod';\nimport { createContext, TaonBaseContext } from 'taon/browser-prod';\n\nimport { TaonCmsWebsiteFeatureAbstractContext } from './taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.abstract.context';\nimport { TaonCmsCategoryAbstractContext } from './taon-cms-category/taon-cms-category.abstract.context';\nimport { TaonCmsCommentAbstractContext } from './taon-cms-comment/taon-cms-comment.abstract.context';\nimport { TaonCmsContentAbstractContext } from './taon-cms-content/taon-cms-content.abstract.context';\nimport { TaonCmsContentAssetAbstractContext } from './taon-cms-content-asset/taon-cms-content-asset.abstract.context';\nimport { TaonCmsContentPermissionAbstractContext } from './taon-cms-content-permission/taon-cms-content-permission.abstract.context';\nimport { TaonCmsContentRevisionAbstractContext } from './taon-cms-content-revision/taon-cms-content-revision.abstract.context';\nimport { TaonCmsContentTagAbstractContext } from './taon-cms-content-tag/taon-cms-content-tag.abstract.context';\nimport { TaonCmsTagAbstractContext } from './taon-cms-tag/taon-cms-tag.abstract.context';\n\nexport const TaonCmsAbstractContext = createContext(() => ({\n contextName: 'TaonCmsAbstractContext',\n abstract: true,\n contexts: {\n TaonCmsCategoryAbstractContext,\n TaonCmsCommentAbstractContext,\n TaonCmsContentAbstractContext,\n TaonCmsContentAssetAbstractContext,\n TaonCmsContentPermissionAbstractContext,\n TaonCmsContentRevisionAbstractContext,\n TaonCmsContentTagAbstractContext,\n TaonCmsWebsiteFeatureAbstractContext,\n TaonCmsTagAbstractContext,\n TaonSessionAbstractContext,\n },\n}));\n\n// THIS FILE IS GENERATED - DO NOT MODIFY\n","import { Resource__NS__Cookies, Resource__NS__create, Resource__NS__globalInterceptors, Resource__NS__listenErrors, Resource__NS__methodsInterceptors } from 'ng2-rest/browser-prod';\nimport { Observable } from 'rxjs';\n\nconst progressCallbacks = new WeakMap<FormData, (percentage: number) => void>();\n\n// Keep Taon's middleware, retries and response decoding; replace only the\n// final Fetch transport for uploads that request browser upload events.\nexport function trackCmsUpload(\n url: string,\n body: FormData,\n onProgress: (percentage: number) => void,\n): () => void {\n const key = `cms-upload-progress-POST-${new URL(url).pathname}`;\n if (!Resource__NS__methodsInterceptors.has(key)) {\n Resource__NS__methodsInterceptors.set(key, {\n intercept: ({ req, next }) => {\n if (!(req.body instanceof FormData)) {\n return next.handle(req);\n }\n const uploadBody = req.body;\n const callback = progressCallbacks.get(uploadBody);\n if (!callback) {\n return next.handle(req);\n }\n return new Observable<Response>(subscriber => {\n const xhr = new XMLHttpRequest();\n xhr.open(req.method || 'POST', req.url);\n xhr.withCredentials = req.credentials === 'include';\n new Headers(req.headers).forEach((value, name) => {\n // The browser must supply the multipart boundary.\n if (name.toLowerCase() !== 'content-type') {\n xhr.setRequestHeader(name, value);\n }\n });\n xhr.upload.onprogress = event => {\n if (event.lengthComputable && event.total > 0) {\n callback(\n Math.min(100, Math.floor((event.loaded * 100) / event.total)),\n );\n }\n };\n xhr.onload = () => {\n const headers = new Headers();\n for (const line of xhr\n .getAllResponseHeaders()\n .trim()\n .split(/[\\r\\n]+/)) {\n const separator = line.indexOf(':');\n if (separator > 0) {\n headers.append(\n line.slice(0, separator),\n line.slice(separator + 1).trim(),\n );\n }\n }\n subscriber.next(\n new Response(\n [204, 205, 304].includes(xhr.status) ? null : xhr.responseText,\n {\n status: xhr.status,\n statusText: xhr.statusText,\n headers,\n },\n ),\n );\n subscriber.complete();\n };\n xhr.onerror = () =>\n subscriber.error(new Error('Media upload network error.'));\n xhr.ontimeout = () =>\n subscriber.error(new Error('Media upload timed out.'));\n xhr.onabort = () =>\n subscriber.error(new Error('Media upload was cancelled.'));\n const abort = () => xhr.abort();\n req.signal?.addEventListener('abort', abort, { once: true });\n if (req.signal?.aborted) {\n subscriber.error(new Error('Media upload was cancelled.'));\n } else {\n callback(0);\n xhr.send(uploadBody);\n }\n return () => {\n req.signal?.removeEventListener('abort', abort);\n if (xhr.readyState !== XMLHttpRequest.DONE) {\n xhr.abort();\n }\n };\n });\n },\n });\n }\n progressCallbacks.set(body, onProgress);\n return () => progressCallbacks.delete(body);\n}","//#region imports\nimport { Injectable } from '@angular/core';\nimport type { TaonPermissionEntity } from '@taon-dev/session/browser-prod';\nimport { Observable, of } from 'rxjs';\nimport { catchError, map } from 'rxjs/operators';\nimport { TaonBaseAngularService, TaonStorageObject, Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\n\nimport type { TaonCmsApplicationHookEntity } from '../taon-cms-application-hook/taon-cms-application-hook.entity';\nimport { TaonCmsApplicationHook } from '../taon-cms-application-hooks';\nimport type { TaonCmsContentRevisionEntity } from '../taon-cms-content-revision/taon-cms-content-revision.entity';\n\nimport { TaonCmsContentStorageController } from './taon-cms-content-storage.controller';\nimport { TaonCmsContentController } from './taon-cms-content.controller';\nimport type { TaonCmsContentEntity } from './taon-cms-content.entity';\nimport type {\n TaonCmsCreateContent,\n TaonCmsCreateRelatedChildInput,\n TaonCmsCreateRelatedChildResult,\n TaonCmsPublicVideoChild,\n TaonCmsRestoreContent,\n TaonCmsUpdateContent,\n TaonCmsPermissionConfiguration,\n TaonCmsPostVersionKind,\n TaonCmsPostVersionLinks,\n TaonCmsVisibilityConfiguration,\n} from './taon-cms-content.models';\nimport { trackCmsUpload } from './taon-cms-upload-progress';\n\n//#endregion\n\n@Injectable()\nexport class TaonCmsContentApiService<\n HOOKS extends TaonCmsApplicationHook = TaonCmsApplicationHook,\n> extends TaonBaseAngularService {\n //#region fields & getters\n protected readonly taonCmsContentController = this.injectController(\n TaonCmsContentController,\n );\n\n protected readonly taonCmsContentStorageController = this.injectController(\n TaonCmsContentStorageController,\n );\n\n public get crudController(): TaonCmsContentController {\n return this.taonCmsContentController;\n }\n\n public get frontendUrl(): string {\n return this.ctx.frontendHostUri.origin;\n }\n\n public getPostUrl(slug: string): string {\n return `${this.frontendUrl}/posts/${encodeURIComponent(slug)}`;\n }\n //#endregion\n\n //#region API / get by id\n public async getById(id: number): Promise<TaonCmsContentEntity> {\n return (await this.taonCmsContentController.getBy(id).request()).body.json;\n }\n //#endregion\n\n //#region API / get by slug\n public async getBySlug(slug: string): Promise<TaonCmsContentEntity> {\n return (await this.taonCmsContentController.getBySlug(slug).request()).body\n .json;\n }\n //#endregion\n\n public async getPublicBySlug(slug: string): Promise<TaonCmsContentEntity> {\n const response = await this.taonCmsContentController\n .getPublicBySlug(slug)\n .request!();\n if (response.statusCode >= 400 || !response.body?.json) {\n throw new Error(response.responseText || 'The post could not be loaded.');\n }\n return response.body.json;\n }\n\n public async getPublicVideoChildrenBySlug(\n slug: string,\n ): Promise<TaonCmsPublicVideoChild[]> {\n const response = await this.taonCmsContentController\n .getPublicVideoChildrenBySlug(slug)\n .request();\n if (response.statusCode >= 400 || !Array.isArray(response.body?.json)) {\n throw new Error(\n response.responseText || 'Public video children could not be loaded.',\n );\n }\n return response.body.json;\n }\n\n //#region API / get video link by slug\n /**\n * Get link to private video\n */\n public getVideoLinkBySlug(slug: string): Observable<string> {\n return this.taonCmsContentController\n .getVideoLinkBySlug(slug)\n .request()\n .observable.pipe(\n map(res => res.body.text),\n catchError(err => {\n console.error(err);\n return of('');\n }),\n );\n }\n //#endregion\n\n //#region API / get public video link by slug\n public async getPublicVideoLinkBySlug(slug: string): Promise<string> {\n return (\n await this.taonCmsContentController\n .getPublicVideoLinkBySlug(slug)\n .request()\n ).body.text;\n }\n //#endregion\n\n //#region API / get audio link by slug\n public getAudioLinkBySlug(slug: string): Observable<string> {\n return this.taonCmsContentController\n .getAudioLinkBySlug(slug)\n .request()\n .observable.pipe(\n map(res => res.body.text),\n catchError(err => {\n console.error(err);\n return of('');\n }),\n );\n }\n //#endregion\n\n //#region API / get public audio link by slug\n public async getPublicAudioLinkBySlug(slug: string): Promise<string> {\n return (\n await this.taonCmsContentController\n .getPublicAudioLinkBySlug(slug)\n .request()\n ).body.text;\n }\n //#endregion\n\n //#region API / get attachment link by slug\n public async getAttachmentLinkBySlug(slug: string): Promise<string> {\n return (\n await this.taonCmsContentController\n .getAttachmentLinkBySlug(slug)\n .request()\n ).body.text;\n }\n //#endregion\n\n //#region API / get public attachment link by slug\n public async getPublicAttachmentLinkBySlug(slug: string): Promise<string> {\n return (\n await this.taonCmsContentController\n .getPublicAttachmentLinkBySlug(slug)\n .request()\n ).body.text;\n }\n //#endregion\n\n //#region API / get content by hook\n public getContentByHook(hook: HOOKS): Observable<string> {\n return this.taonCmsContentController.getContentByHook(hook)\n .request!().observable.pipe(map(res => res.body.text));\n }\n //#endregion\n\n //#region API / get public content by hook\n public getPublicContentByHook(hook: HOOKS): Observable<string> {\n return this.taonCmsContentController.getPublicContentByHook(hook)\n .request!().observable.pipe(\n map(res => res.body.text),\n catchError(() => of('---')),\n );\n }\n //#endregion\n\n //#region API / list application hooks\n public listApplicationHooks(): Observable<TaonCmsApplicationHookEntity[]> {\n return this.taonCmsContentController.listApplicationHooks()\n .request!().observable.pipe(map(res => res.body.json));\n }\n //#endregion\n\n //#region API / upload media\n public async uploadMedia(\n file: File,\n onProgress?: (percentage: number) => void,\n ): Promise<TaonStorageObject> {\n const formData = new FormData();\n formData.append('file', file);\n const stopTracking = onProgress\n ? trackCmsUpload(\n this.taonCmsContentStorageController.getThisControllerMethodFullUrl(\n 'uploadFormDataToServer',\n ),\n formData,\n onProgress,\n )\n : undefined;\n try {\n const response = await this.taonCmsContentStorageController\n .uploadFormDataToServer(formData)\n .request();\n const objects = response.body.json;\n if (!Array.isArray(objects) || objects.length !== 1 || !objects[0]?.key) {\n throw new Error('The upload did not return a media key.');\n }\n onProgress?.(100);\n return objects[0];\n } finally {\n stopTracking?.();\n }\n }\n //#endregion\n\n public async deleteUnattachedMedia(key: string): Promise<boolean> {\n return (\n await this.taonCmsContentStorageController\n .deleteUnattachedMedia(key)\n .request()\n ).body.json;\n }\n\n //#region API / list assets\n public listAssets(): Observable<TaonStorageObject[]> {\n return this.taonCmsContentStorageController\n .list({})\n .request()\n .observable.pipe(map(res => res.body.json));\n }\n //#endregion\n\n //#region API / get asset url\n public async getAssetUrl(key: string): Promise<string> {\n return (\n await this.taonCmsContentStorageController\n .getPrivateUrl(key, { expiresInSeconds: 5 * 60 })\n .request()\n ).body.text;\n }\n //#endregion\n\n //#region API / create content\n public listTagIds(id: number): Observable<number[]> {\n return this.taonCmsContentController\n .listTagIds(id)\n .request()\n .observable.pipe(map(res => res.body.json));\n }\n\n public async getThumbnailLinkBySlug(\n slug: string,\n publicOnly = false,\n ): Promise<string> {\n const response = publicOnly\n ? await this.taonCmsContentController\n .getPublicThumbnailLinkBySlug(slug)\n .request()\n : await this.taonCmsContentController\n .getThumbnailLinkBySlug(slug)\n .request();\n return response.body.text;\n }\n\n public createContent(\n input: TaonCmsCreateContent,\n ): Observable<TaonCmsContentEntity> {\n return this.taonCmsContentController.createContent(input)\n .request!().observable.pipe(map(res => res.body.json));\n }\n //#endregion\n\n public async createRelatedChild(\n parentId: number,\n input: TaonCmsCreateRelatedChildInput,\n ): Promise<TaonCmsCreateRelatedChildResult> {\n return (\n await this.taonCmsContentController\n .createRelatedChild(parentId, input)\n .request()\n ).body.json;\n }\n\n //#region API / duplicate content\n public duplicateContent(\n id: number,\n includeChildren = false,\n ): Observable<TaonCmsContentEntity> {\n return this.taonCmsContentController.duplicateContent(id, includeChildren)\n .request!().observable.pipe(map(res => res.body.json));\n }\n //#endregion\n\n //#region API / update content\n public updateContent(\n id: number,\n input: TaonCmsUpdateContent,\n ): Observable<TaonCmsContentEntity> {\n return this.taonCmsContentController.updateContent(id, input)\n .request!().observable.pipe(map(res => res.body.json));\n }\n //#endregion\n\n //#region API / delete content\n public deleteContent(\n id: number,\n expectedVersion: number,\n ): Observable<TaonCmsContentEntity> {\n return this.taonCmsContentController.deleteContent(id, expectedVersion)\n .request!().observable.pipe(map(res => res.body.json));\n }\n //#endregion\n\n public permanentlyDeleteContent(\n id: number,\n expectedVersion: number,\n ): Observable<boolean> {\n return this.taonCmsContentController\n .permanentlyDeleteContent(id, expectedVersion)\n .request!()\n .observable.pipe(map(res => res.body.json));\n }\n\n //#region API / restore content\n public restoreContent(\n id: number,\n input: TaonCmsRestoreContent,\n ): Observable<TaonCmsContentEntity> {\n return this.taonCmsContentController.restoreContent(id, input)\n .request!().observable.pipe(map(res => res.body.json));\n }\n //#endregion\n\n //#region API / list revisions\n public listRevisions(id: number): Observable<TaonCmsContentRevisionEntity[]> {\n return this.taonCmsContentController.listRevisions(id)\n .request!().observable.pipe(map(res => res.body.json));\n }\n //#endregion\n\n //#region API / list related posts\n public listCourses(): Observable<TaonCmsContentEntity[]> {\n return this.taonCmsContentController.listCourses()\n .request!().observable.pipe(map(res => res.body.json));\n }\n\n public listRelatedPosts(id: number): Observable<TaonCmsContentEntity[]> {\n return this.taonCmsContentController.listRelatedPosts(id)\n .request!().observable.pipe(map(res => res.body.json));\n }\n //#endregion\n\n public async getParentPost(\n id: number,\n ): Promise<TaonCmsContentEntity | null> {\n return (\n await this.taonCmsContentController.getParentPost(id).request()\n ).body.json;\n }\n\n public async getVisibilityConfiguration(\n id: number,\n ): Promise<TaonCmsVisibilityConfiguration> {\n return (\n await this.taonCmsContentController\n .getVisibilityConfiguration(id)\n .request()\n ).body.json;\n }\n\n public async getPostVersions(\n id: number,\n ): Promise<TaonCmsPostVersionLinks> {\n return (\n await this.taonCmsContentController.getPostVersions(id).request()\n ).body.json;\n }\n\n //#region API / list permissions\n public listPermissions(id: number): Observable<TaonPermissionEntity[]> {\n return this.taonCmsContentController.listPermissions(id)\n .request!().observable.pipe(map(res => res.body.json));\n }\n //#endregion\n\n //#region API / get permission configuration\n public getPermissionConfiguration(\n id: number,\n ): Observable<TaonCmsPermissionConfiguration> {\n return this.taonCmsContentController.getPermissionConfiguration(id)\n .request!().observable.pipe(map(res => res.body.json));\n }\n //#endregion\n\n //#region API / add related post\n public addRelatedPost(\n id: number,\n relatedPostId: number,\n expectedVersion: number,\n ): Observable<TaonCmsContentEntity> {\n return this.taonCmsContentController.addRelatedPost(\n id,\n relatedPostId,\n expectedVersion,\n ).request!().observable.pipe(map(res => res.body.json));\n }\n //#endregion\n\n //#region API / delete related post\n public deleteRelatedPost(\n id: number,\n relatedPostId: number,\n expectedVersion: number,\n ): Observable<TaonCmsContentEntity> {\n return this.taonCmsContentController.deleteRelatedPost(\n id,\n relatedPostId,\n expectedVersion,\n ).request!().observable.pipe(map(res => res.body.json));\n }\n //#endregion\n\n public linkVersionPost(\n id: number,\n versionPostId: number,\n kind: TaonCmsPostVersionKind,\n expectedVersion: number,\n ): Observable<TaonCmsContentEntity> {\n return this.taonCmsContentController\n .linkVersionPost(id, versionPostId, kind, expectedVersion)\n .request!()\n .observable.pipe(map(res => res.body.json));\n }\n\n public removeVersionPost(\n id: number,\n kind: TaonCmsPostVersionKind,\n expectedVersion: number,\n ): Observable<TaonCmsContentEntity> {\n return this.taonCmsContentController\n .removeVersionPost(id, kind, expectedVersion)\n .request!()\n .observable.pipe(map(res => res.body.json));\n }\n\n //#region API / get all entites\n /**\n * TODO not good idea if manu posts - refactor later:\n * - add pagination for post selector\n */\n public get allMyEntities$(): Observable<TaonCmsContentEntity[]> {\n return this.taonCmsContentController.getAll().request!().observable.pipe(\n map(res => res.body?.json),\n );\n }\n //#endregion\n}","import {\n ChangeDetectionStrategy,\n Component,\n DestroyRef,\n Input,\n OnInit,\n inject,\n signal,\n} from '@angular/core';\nimport { MatButtonModule } from '@angular/material/button';\nimport { Translation } from '@taon-dev/i18n/browser-prod';\nimport { type TaonStorageObject, Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\n\nimport { TaonCmsContentApiService } from '../taon-cms-content/taon-cms-content-api.service';\n\nconst t = Translation.for('src/lib/taon-cms-assets-backoffice/taon-cms-asset-preview.component.ts', {\"src/lib/taon-cms-assets-backoffice/taon-cms-asset-preview.component.html\":{\"en-US\":async () => (await import('./i18n/taon-cms-asset-preview.component.html.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-asset-preview.component.html.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-asset-preview.component.html.de-DE.i18n.data')).default},\"src/lib/taon-cms-assets-backoffice/taon-cms-asset-preview.component.ts\":{\"en-US\":async () => (await import('./i18n/taon-cms-asset-preview.component.ts.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-asset-preview.component.ts.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-asset-preview.component.ts.de-DE.i18n.data')).default},\"src/lib/taon-cms-assets-backoffice/taon-cms-assets-backoffice.component.html\":{\"en-US\":async () => (await import('./i18n/taon-cms-assets-backoffice.component.html.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-assets-backoffice.component.html.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-assets-backoffice.component.html.de-DE.i18n.data')).default},\"src/lib/taon-cms-assets-backoffice/taon-cms-assets-backoffice.component.ts\":{\"en-US\":async () => (await import('./i18n/taon-cms-assets-backoffice.component.ts.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-assets-backoffice.component.ts.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-assets-backoffice.component.ts.de-DE.i18n.data')).default}} as any);\n\n@Component({\n selector: 'taon-cms-asset-preview',\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [MatButtonModule],\n styleUrl: './taon-cms-asset-preview.component.scss',\n templateUrl: './taon-cms-asset-preview.component.html',\n})\nexport class TaonCmsAssetPreviewComponent implements OnInit {\n readonly t = t.for(this);\n\n @Input({ required: true })\n asset!: TaonStorageObject;\n\n private readonly api = inject(TaonCmsContentApiService);\n\n private readonly destroyRef = inject(DestroyRef);\n\n readonly url = signal('');\n\n readonly loading = signal(false);\n\n readonly error = signal('');\n\n get previewKind(): 'video' | 'audio' | 'attachment' {\n const contentType = this.asset.contentType?.trim().toLowerCase();\n if (contentType?.startsWith('video/')) {\n return 'video';\n }\n if (contentType?.startsWith('audio/')) {\n return 'audio';\n }\n return 'attachment';\n }\n\n ngOnInit(): void {\n void this.reload();\n }\n\n async reload(): Promise<void> {\n if (this.loading()) {\n return;\n }\n this.loading.set(true);\n this.error.set('');\n this.url.set('');\n try {\n const url = new URL(await this.api.getAssetUrl(this.asset.key));\n if (this.previewKind === 'attachment') {\n url.searchParams.set('download', 'true');\n }\n if (!this.destroyRef.destroyed) {\n this.url.set(url.href);\n }\n } catch (error: unknown) {\n if (!this.destroyRef.destroyed) {\n console.error(\n '[taon-cms-asset-preview] Unable to load asset URL',\n error,\n );\n this.error.set(\n this.t.gettext('The asset could not be opened. Please retry.'),\n );\n }\n } finally {\n if (!this.destroyRef.destroyed) {\n this.loading.set(false);\n }\n }\n }\n\n playbackError(): void {\n this.error.set(\n this.t.gettext(\n 'Playback failed or the preview link expired. Please retry.',\n ),\n );\n }\n}","@if (loading()) {\n <p role=\"status\">{{ t.gettext('Loading asset preview...') }}</p>\n}\n@if (error()) {\n <p role=\"alert\">{{ error() }}</p>\n <button\n mat-button\n type=\"button\"\n [disabled]=\"loading()\"\n (click)=\"reload()\">\n {{ t.gettext('Retry preview') }}\n </button>\n}\n@if (url()) {\n @switch (previewKind) {\n @case ('video') {\n <video\n controls\n preload=\"metadata\"\n [src]=\"url()\"\n (error)=\"playbackError()\">\n {{ t.gettext('Your browser does not support video playback.') }}\n </video>\n }\n @case ('audio') {\n <audio\n controls\n preload=\"none\"\n [src]=\"url()\"\n (error)=\"playbackError()\">\n {{ t.gettext('Your browser does not support audio playback.') }}\n </audio>\n }\n @default {\n <a\n [href]=\"url()\"\n [attr.download]=\"asset.fileName\"\n target=\"_blank\"\n rel=\"noopener\">\n {{ asset.fileName || asset.key }}\n </a>\n }\n }\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n DestroyRef,\n OnInit,\n inject,\n signal,\n} from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MtxGridColumn } from '@ng-matero/extensions/grid';\nimport { TaonDatatableComponent } from '@taon-dev/ui/browser-prod';\nimport { Translation } from '@taon-dev/i18n/browser-prod';\nimport { finalize, map } from 'rxjs';\nimport { type TaonStorageObject as TaonStorageObjectBase, Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\nimport { ___NS__add, ___NS__after, ___NS__ary, ___NS__assign, ___NS__assignIn, ___NS__assignInWith, ___NS__assignWith, ___NS__at, ___NS__attempt, ___NS__before, ___NS__bind, ___NS__bindAll, ___NS__bindKey, ___NS__camelCase, ___NS__capitalize, ___NS__castArray, ___NS__ceil, ___NS__chain, ___NS__chunk, ___NS__clamp, ___NS__clone, ___NS__cloneDeep, ___NS__cloneDeepWith, ___NS__cloneWith, ___NS__compact, ___NS__concat, ___NS__cond, ___NS__conforms, ___NS__conformsTo, ___NS__constant, ___NS__countBy, ___NS__create, ___NS__curry, ___NS__curryRight, ___NS__debounce, ___NS__deburr, ___NS__defaults, ___NS__defaultsDeep, ___NS__defaultTo, ___NS__defer, ___NS__delay, ___NS__difference, ___NS__differenceBy, ___NS__differenceWith, ___NS__divide, ___NS__drop, ___NS__dropRight, ___NS__dropRightWhile, ___NS__dropWhile, ___NS__each, ___NS__eachRight, ___NS__endsWith, ___NS__entries, ___NS__entriesIn, ___NS__eq, ___NS__escape, ___NS__escapeRegExp, ___NS__every, ___NS__extend, ___NS__extendWith, ___NS__fill, ___NS__filter, ___NS__find, ___NS__findIndex, ___NS__findKey, ___NS__findLast, ___NS__findLastIndex, ___NS__findLastKey, ___NS__first, ___NS__flatMap, ___NS__flatMapDeep, ___NS__flatMapDepth, ___NS__flatten, ___NS__flattenDeep, ___NS__flattenDepth, ___NS__flip, ___NS__floor, ___NS__flow, ___NS__flowRight, ___NS__forEach, ___NS__forEachRight, ___NS__forIn, ___NS__forInRight, ___NS__forOwn, ___NS__forOwnRight, ___NS__fromPairs, ___NS__functions, ___NS__functionsIn, ___NS__get, ___NS__groupBy, ___NS__gt, ___NS__gte, ___NS__has, ___NS__hasIn, ___NS__head, ___NS__identity, ___NS__includes, ___NS__indexOf, ___NS__initial, ___NS__inRange, ___NS__intersection, ___NS__intersectionBy, ___NS__intersectionWith, ___NS__invert, ___NS__invertBy, ___NS__invoke, ___NS__invokeMap, ___NS__isArguments, ___NS__isArray, ___NS__isArrayBuffer, ___NS__isArrayLike, ___NS__isArrayLikeObject, ___NS__isBoolean, ___NS__isBuffer, ___NS__isDate, ___NS__isElement, ___NS__isEmpty, ___NS__isEqual, ___NS__isEqualWith, ___NS__isError, ___NS__isFinite, ___NS__isFunction, ___NS__isInteger, ___NS__isLeafObject, ___NS__isLength, ___NS__isMap, ___NS__isMatch, ___NS__isMatchWith, ___NS__isNaN, ___NS__isNative, ___NS__isNil, ___NS__isNull, ___NS__isNumber, ___NS__isObject, ___NS__isObjectLike, ___NS__isPlainObject, ___NS__isRegExp, ___NS__isSafeInteger, ___NS__isSet, ___NS__isString, ___NS__isSymbol, ___NS__isTypedArray, ___NS__isUndefined, ___NS__isWeakMap, ___NS__isWeakSet, ___NS__iteratee, ___NS__join, ___NS__kebabCase, ___NS__keyBy, ___NS__keys, ___NS__keysIn, ___NS__last, ___NS__lastIndexOf, ___NS__lowerCase, ___NS__lowerFirst, ___NS__lt, ___NS__lte, ___NS__map, ___NS__mapKeys, ___NS__mapValues, ___NS__matches, ___NS__matchesProperty, ___NS__max, ___NS__maxBy, ___NS__mean, ___NS__meanBy, ___NS__memoize, ___NS__merge, ___NS__mergeWith, ___NS__method, ___NS__methodOf, ___NS__min, ___NS__minBy, ___NS__mixin, ___NS__multiply, ___NS__negate, ___NS__noop, ___NS__now, ___NS__nth, ___NS__nthArg, ___NS__omit, ___NS__omitBy, ___NS__once, ___NS__orderBy, ___NS__over, ___NS__overArgs, ___NS__overEvery, ___NS__overSome, ___NS__pad, ___NS__padEnd, ___NS__padStart, ___NS__parseInt, ___NS__partial, ___NS__partialRight, ___NS__partition, ___NS__pick, ___NS__pickBy, ___NS__property, ___NS__propertyOf, ___NS__pull, ___NS__pullAll, ___NS__pullAllBy, ___NS__pullAllWith, ___NS__pullAt, ___NS__random, ___NS__range, ___NS__rangeRight, ___NS__rearg, ___NS__reduce, ___NS__reduceRight, ___NS__reject, ___NS__remove, ___NS__repeat, ___NS__replace, ___NS__rest, ___NS__result, ___NS__reverse, ___NS__round, ___NS__sample, ___NS__sampleSize, ___NS__set, ___NS__setWith, ___NS__shuffle, ___NS__size, ___NS__slice, ___NS__snakeCase, ___NS__some, ___NS__sortBy, ___NS__sortedIndex, ___NS__sortedIndexBy, ___NS__sortedIndexOf, ___NS__sortedLastIndex, ___NS__sortedLastIndexBy, ___NS__sortedLastIndexOf, ___NS__sortedUniq, ___NS__sortedUniqBy, ___NS__split, ___NS__spread, ___NS__startCase, ___NS__startsWith, ___NS__stubArray, ___NS__stubFalse, ___NS__stubObject, ___NS__stubString, ___NS__stubTrue, ___NS__subtract, ___NS__sum, ___NS__sumBy, ___NS__tail, ___NS__take, ___NS__takeRight, ___NS__takeRightWhile, ___NS__takeWhile, ___NS__tap, ___NS__template, ___NS__templateSettings, ___NS__throttle, ___NS__thru, ___NS__times, ___NS__toArray, ___NS__toFinite, ___NS__toInteger, ___NS__toLength, ___NS__toLower, ___NS__toNumber, ___NS__toPairs, ___NS__toPairsIn, ___NS__toPath, ___NS__toPlainObject, ___NS__toSafeInteger, ___NS__toString, ___NS__toUpper, ___NS__transform, ___NS__trim, ___NS__trimEnd, ___NS__trimStart, ___NS__truncate, ___NS__unary, ___NS__unescape, ___NS__union, ___NS__unionBy, ___NS__unionWith, ___NS__uniq, ___NS__uniqBy, ___NS__uniqueId, ___NS__uniqWith, ___NS__unset, ___NS__unzip, ___NS__unzipWith, ___NS__update, ___NS__updateWith, ___NS__upperCase, ___NS__upperFirst, ___NS__values, ___NS__valuesIn, ___NS__without, ___NS__words, ___NS__wrap, ___NS__xor, ___NS__xorBy, ___NS__xorWith, ___NS__zip, ___NS__zipObject, ___NS__zipObjectDeep, ___NS__zipWith } from 'tnp-core/browser-prod';\n\nimport { TaonCmsContentApiService } from '../taon-cms-content/taon-cms-content-api.service';\n\nimport { TaonCmsAssetPreviewComponent } from './taon-cms-asset-preview.component';\n\nconst t = Translation.for('src/lib/taon-cms-assets-backoffice/taon-cms-assets-backoffice.component.ts', {\"src/lib/taon-cms-assets-backoffice/taon-cms-asset-preview.component.html\":{\"en-US\":async () => (await import('./i18n/taon-cms-asset-preview.component.html.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-asset-preview.component.html.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-asset-preview.component.html.de-DE.i18n.data')).default},\"src/lib/taon-cms-assets-backoffice/taon-cms-asset-preview.component.ts\":{\"en-US\":async () => (await import('./i18n/taon-cms-asset-preview.component.ts.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-asset-preview.component.ts.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-asset-preview.component.ts.de-DE.i18n.data')).default},\"src/lib/taon-cms-assets-backoffice/taon-cms-assets-backoffice.component.html\":{\"en-US\":async () => (await import('./i18n/taon-cms-assets-backoffice.component.html.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-assets-backoffice.component.html.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-assets-backoffice.component.html.de-DE.i18n.data')).default},\"src/lib/taon-cms-assets-backoffice/taon-cms-assets-backoffice.component.ts\":{\"en-US\":async () => (await import('./i18n/taon-cms-assets-backoffice.component.ts.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-assets-backoffice.component.ts.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-assets-backoffice.component.ts.de-DE.i18n.data')).default}} as any);\n\ntype TaonStorageObject = TaonStorageObjectBase & { keyVisible?: string };\n\n@Component({\n selector: 'taon-cms-assets-backoffice',\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [\n MatButtonModule,\n TaonDatatableComponent,\n TaonCmsAssetPreviewComponent,\n ],\n providers: [TaonCmsContentApiService],\n templateUrl: './taon-cms-assets-backoffice.component.html',\n})\nexport class TaonCmsAssetsBackofficeComponent implements OnInit {\n readonly t = t.for(this);\n\n private readonly api = inject(TaonCmsContentApiService);\n\n private readonly destroyRef = inject(DestroyRef);\n\n readonly assets = signal<TaonStorageObject[]>([]);\n\n readonly loading = signal(false);\n\n readonly error = signal('');\n\n readonly columns: MtxGridColumn[] = [\n { header: 'ID', field: 'keyVisible', sortable: true, showExpand: true },\n { header: this.t.gettext('File Name'), field: 'fileName', sortable: true },\n {\n header: this.t.gettext('Content Type'),\n field: 'contentType',\n sortable: true,\n },\n ];\n\n ngOnInit(): void {\n this.reload();\n }\n\n reload(): void {\n if (this.loading()) {\n return;\n }\n this.loading.set(true);\n this.error.set('');\n this.api\n .listAssets()\n .pipe(\n map(c => c as TaonStorageObject[]),\n takeUntilDestroyed(this.destroyRef),\n finalize(() => this.loading.set(false)),\n )\n .subscribe({\n next: assets =>\n this.assets.set(\n assets.map(c => {\n c.keyVisible = ___NS__first(c.key.split('__'));\n return c;\n }),\n ),\n error: (error: unknown) => {\n console.error(\n '[taon-cms-assets-backoffice] Unable to load assets',\n error,\n );\n this.error.set(\n this.t.gettext('Assets could not be loaded. Please try reloading.'),\n );\n },\n });\n }\n}","<h1>{{ t.gettext('CMS assets') }}</h1>\n<button\n mat-button\n type=\"button\"\n [disabled]=\"loading()\"\n (click)=\"reload()\">\n {{ t.gettext('Reload assets') }}\n</button>\n@if (loading()) {\n <p role=\"status\">{{ t.gettext('Loading assets...') }}</p>\n}\n@if (error()) {\n <p role=\"alert\">{{ error() }}</p>\n}\n\n<ng-template\n #preview\n let-asset>\n <taon-cms-asset-preview [asset]=\"asset\" />\n</ng-template>\n\n<taon-datatable\n [data]=\"assets()\"\n [columns]=\"columns\"\n [allowedColumns]=\"['key', 'fileName', 'contentType']\"\n [hideAddButton]=\"true\"\n [expansionTemplate]=\"preview\"\n searchMode=\"advanced\">\n</taon-datatable>\n","import { Routes } from '@angular/router';\n\nexport const TaonCmsAssetsBackofficeRoutes: Routes = [\n {\n path: '',\n loadComponent: () =>\n import('./taon-cms-assets-backoffice.component').then(\n m => m.TaonCmsAssetsBackofficeComponent,\n ),\n },\n];\n","//#region imports\nimport { AsyncPipe } from '@angular/common';\nimport { ChangeDetectionStrategy, Component } from '@angular/core';\nimport { RouterOutlet } from '@angular/router';\nimport { Translation } from '@taon-dev/i18n/browser-prod';\nimport { Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\n//#endregion\n\nconst t = Translation.for('src/lib/taon-cms-backoffice/taon-cms-backoffice.component.ts', {\"src/lib/taon-cms-backoffice/taon-cms-backoffice.component.html\":{\"en-US\":async () => (await import('./i18n/taon-cms-backoffice.component.html.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-backoffice.component.html.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-backoffice.component.html.de-DE.i18n.data')).default},\"src/lib/taon-cms-backoffice/taon-cms-backoffice.component.ts\":{\"en-US\":async () => (await import('./i18n/taon-cms-backoffice.component.ts.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-backoffice.component.ts.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-backoffice.component.ts.de-DE.i18n.data')).default},\"src/lib/taon-cms-backoffice/taon-cms-backoffice.routes.ts\":{\"en-US\":async () => (await import('./i18n/taon-cms-backoffice.routes.ts.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-backoffice.routes.ts.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-backoffice.routes.ts.de-DE.i18n.data')).default}} as any);\n\n@Component({\n selector: 'app-taon-cms-backoffice',\n templateUrl: './taon-cms-backoffice.component.html',\n styleUrls: ['./taon-cms-backoffice.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [AsyncPipe, RouterOutlet],\n})\nexport class TaonCmsBackofficeComponent {\n readonly t = t.for(this);\n\n componentLoaded = false;\n\n onRouteActivate(component: any): void {\n this.componentLoaded = !!component;\n }\n\n onRouteDeactivate(component: any): void {\n this.componentLoaded = false;\n }\n}","@if (!componentLoaded) {\n <code>\n {{\n t.gettext('In CMS you can manage content and settings for your website.')\n }}\n </code>\n}\n\n<router-outlet\n (activate)=\"onRouteActivate($event)\"\n (deactivate)=\"onRouteDeactivate($event)\"></router-outlet>\n","//namespace TaonCmsBackofficeModels\n\n//end of namespace TaonCmsBackofficeModels\n","//#region imports\nimport { Routes } from '@angular/router';\nimport { Translation } from '@taon-dev/i18n/browser-prod';\nimport type { TaonAuthContextEntity } from '@taon-dev/session/browser-prod';\nimport { adminLazyRoute as adminLazyRouteBase } from '@taon-dev/ui/browser-prod';\nimport { Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\n\n//#endregion\n\nconst adminLazyRoute = adminLazyRouteBase<TaonAuthContextEntity>;\nconst t = Translation.for('src/lib/taon-cms-backoffice/taon-cms-backoffice.routes.ts', {\"src/lib/taon-cms-backoffice/taon-cms-backoffice.component.html\":{\"en-US\":async () => (await import('./i18n/taon-cms-backoffice.component.html.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-backoffice.component.html.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-backoffice.component.html.de-DE.i18n.data')).default},\"src/lib/taon-cms-backoffice/taon-cms-backoffice.component.ts\":{\"en-US\":async () => (await import('./i18n/taon-cms-backoffice.component.ts.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-backoffice.component.ts.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-backoffice.component.ts.de-DE.i18n.data')).default},\"src/lib/taon-cms-backoffice/taon-cms-backoffice.routes.ts\":{\"en-US\":async () => (await import('./i18n/taon-cms-backoffice.routes.ts.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-backoffice.routes.ts.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-backoffice.routes.ts.de-DE.i18n.data')).default}} as any);\n\nexport const TaonCmsBackofficeRoutes: Routes = [\n {\n path: '',\n loadComponent: () =>\n import('./taon-cms-backoffice.component').then(\n m => m.TaonCmsBackofficeComponent,\n ),\n\n children: [\n adminLazyRoute({\n isDisabled: ({ context }) => {\n // console.log('context', { context });\n return !context?.hasAccess.toManageCms;\n },\n path: 'website-features',\n menuItem: t.signal.gettext('Website Features'),\n expandable: false,\n icon: 'toggle_on',\n loader: () =>\n import('./taon-cms-website-features/taon-cms-website-features.routes').then(\n m => m.TaonCmsWebsiteFeaturesRoutes,\n ),\n }),\n adminLazyRoute({\n isDisabled: ({ context }) => {\n // console.log('context', { context });\n return !context?.hasAccess.toManageCms;\n },\n path: 'posts',\n menuItem: t.signal.gettext('Posts'),\n expandable: true,\n icon: 'edit',\n loader: () =>\n import('../index').then(m => m.TaonCmsPostsBackofficeRoutes),\n }),\n adminLazyRoute({\n isDisabled: ({ context }) => {\n // console.log('context', { context });\n return !context?.hasAccess.toManageCms;\n },\n path: 'courses',\n menuItem: t.signal.gettext('Courses'),\n expandable: false,\n icon: 'school',\n loader: () =>\n import('../index').then(\n m => m.TaonCmsCourseBackofficeRoutes,\n ),\n }),\n adminLazyRoute({\n isDisabled: ({ context }) => {\n // console.log('context', { context });\n return !context?.hasAccess.toManageCms;\n },\n path: 'comments',\n menuItem: t.signal.gettext('Comments'),\n expandable: true,\n icon: 'comment',\n loader: () =>\n import('../index').then(\n m => m.TaonCmsCommentsBackofficeRoutes,\n ),\n }),\n adminLazyRoute({\n isDisabled: ({ context }) => !context?.hasAccess.toManageCms,\n path: 'assets',\n menuItem: t.signal.gettext('Assets'),\n expandable: false,\n icon: 'perm_media',\n loader: () =>\n import('../taon-cms-assets-backoffice/taon-cms-assets-backoffice.routes').then(\n m => m.TaonCmsAssetsBackofficeRoutes,\n ),\n }),\n adminLazyRoute({\n isDisabled: ({ context }) => !context?.hasAccess.toManageCms,\n path: 'categories',\n menuItem: t.signal.gettext('Categories'),\n expandable: false,\n icon: 'folder',\n loader: () =>\n import('../taon-cms-taxonomy-backoffice/taon-cms-taxonomy-backoffice.routes').then(\n m => m.TaonCmsCategoriesBackofficeRoutes,\n ),\n }),\n adminLazyRoute({\n isDisabled: ({ context }) => !context?.hasAccess.toManageCms,\n path: 'tags',\n menuItem: t.signal.gettext('Tags'),\n expandable: false,\n icon: 'label',\n loader: () =>\n import('../taon-cms-taxonomy-backoffice/taon-cms-taxonomy-backoffice.routes').then(\n m => m.TaonCmsTagsBackofficeRoutes,\n ),\n }),\n // adminLazyRoute({\n // path: 'dashboard',\n // menuItem: 'Dashboard',\n // icon: 'dashboard',\n // expandable: false,\n // loader: () =>\n // import('./anothermodule.routes').then(m => m.DashboardRoutes),\n // }),\n ],\n },\n];\n\n/**\n * By default exporting TaonCmsBackofficeRoutes,\n * the command `taon generate:app:routes`\n * will automatically add them to the root routes in ./src/app.ts.\n */\n// export default TaonCmsBackofficeRoutes;","import { Injectable } from '@angular/core';\nimport { Observable } from 'rxjs';\nimport { map } from 'rxjs/operators';\nimport { TaonBaseAngularService, Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\n\nimport type { TaonCmsCategoryEntity } from './taon-cms-category.entity';\nimport { TaonCmsCategoryController } from './taon-cms-category.controller';\nimport type { TaonCmsCategoryFields } from './taon-cms-taxonomy.validation';\n\n@Injectable()\nexport class TaonCmsCategoryApiService extends TaonBaseAngularService {\n protected readonly taonCmsCategoryController = this.injectController(\n TaonCmsCategoryController,\n );\n\n public get allMyEntities$(): Observable<TaonCmsCategoryEntity[]> {\n return this.taonCmsCategoryController.getAll().request!().observable.pipe(\n map(res => res.body?.json),\n );\n }\n\n save(\n id: number | null,\n input: TaonCmsCategoryFields,\n ): Observable<TaonCmsCategoryEntity> {\n return this.taonCmsCategoryController\n .saveCategory(id, input)\n .request()\n .observable.pipe(map(res => res.body.json));\n }\n\n delete(id: number): Observable<void> {\n return this.taonCmsCategoryController\n .deleteCategory(id)\n .request()\n .observable.pipe(map(() => undefined));\n }\n}","import type { TaonCmsCategoryEntity } from './taon-cms-category.entity';\n\nexport const TaonCmsCategoryDefaultsValues = {\n description: '',\n version: 0,\n id: void 0,\n} as Partial<TaonCmsCategoryEntity>;","export enum TaonCmsCategoryState {\n Active = 'active',\n Inactive = 'inactive',\n}","import { TaonCmsCategoryState } from './taon-cms-category.models';\n\n//namespace TaonCmsCategoryUtils\n\n export function TaonCmsCategoryUtils__NS__isActive(state: string): state is TaonCmsCategoryState {\n return state === 'active';\n }\n\n//end of namespace TaonCmsCategoryUtils\n","import { Translation } from '@taon-dev/i18n/browser-prod';\nimport { Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\n\nimport { contentError } from '../taon-cms-content/taon-cms-content.validation';\n\nconst t = Translation.for('src/lib/taon-cms-category/taon-cms-taxonomy.validation.ts', {\"src/lib/taon-cms-category/taon-cms-category.controller.ts\":{\"en-US\":async () => (await import('./i18n/taon-cms-category.controller.ts.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-category.controller.ts.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-category.controller.ts.de-DE.i18n.data')).default},\"src/lib/taon-cms-category/taon-cms-category.repository.ts\":{\"en-US\":async () => (await import('./i18n/taon-cms-category.repository.ts.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-category.repository.ts.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-category.repository.ts.de-DE.i18n.data')).default},\"src/lib/taon-cms-category/taon-cms-taxonomy.validation.ts\":{\"en-US\":async () => (await import('./i18n/taon-cms-taxonomy.validation.ts.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-taxonomy.validation.ts.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-taxonomy.validation.ts.de-DE.i18n.data')).default}} as any);\n\nexport interface TaonCmsTaxonomyFields {\n name: string;\n slug: string;\n description: string | null;\n}\n\nexport interface TaonCmsCategoryFields extends TaonCmsTaxonomyFields {\n parentCategoryId: number | null;\n sortOrder: number;\n}\n\nexport function validateTaxonomy(input: TaonCmsTaxonomyFields): void {\n if (\n !input ||\n typeof input.name !== 'string' ||\n !input.name.trim() ||\n typeof input.slug !== 'string' ||\n !input.slug.trim() ||\n (input.description !== null && typeof input.description !== 'string')\n ) {\n contentError(\n t.gettext('Name, slug, and a valid description are required.'),\n );\n }\n}\n\nexport function validateCategoryHierarchy(\n id: number | null,\n parentId: number | null,\n categories: { id: number; parentCategoryId: number | null }[],\n): void {\n const visited = new Set<number>();\n if (id !== null) {\n visited.add(id);\n }\n let current = parentId;\n while (current !== null) {\n if (visited.has(current)) {\n contentError(t.gettext('A category cannot be its own ancestor.'));\n }\n visited.add(current);\n const parent = categories.find(category => category.id === current);\n if (!parent) {\n contentError(t.gettext('The parent category does not exist.'));\n }\n current = parent.parentCategoryId;\n }\n}","import { Injectable } from '@angular/core';\nimport { Observable } from 'rxjs';\nimport { map } from 'rxjs/operators';\nimport { TaonBaseAngularService, Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\n\nimport type { TaonCmsCommentEntity } from './taon-cms-comment.entity';\nimport {\n TaonCmsCommentController,\n type CommentListItem,\n} from './taon-cms-comment.controller';\n\n@Injectable()\nexport class TaonCmsCommentApiService extends TaonBaseAngularService {\n protected readonly taonCmsCommentController = this.injectController(\n TaonCmsCommentController,\n );\n\n async getComments(contentId: number): Promise<CommentListItem[]> {\n const response =\n await this.taonCmsCommentController.getComments(contentId).request!();\n if (response.statusCode >= 400) {\n throw new Error(response.responseText || 'Unable to load comments.');\n }\n return response.body?.json ?? [];\n }\n\n async createComment(\n contentId: number,\n body: string,\n ): Promise<CommentListItem> {\n const response = await this.taonCmsCommentController.createComment({\n contentId,\n body,\n }).request!();\n if (response.statusCode >= 400 || !response.body?.json) {\n throw new Error(response.responseText || 'Unable to add the comment.');\n }\n return response.body.json;\n }\n\n async deleteComment(id: number): Promise<void> {\n const response =\n await this.taonCmsCommentController.deleteComment(id).request!();\n if (response.statusCode >= 400) {\n throw new Error(response.responseText || 'Unable to delete the comment.');\n }\n }\n\n async vote(id: number, value: -1 | 1): Promise<CommentListItem> {\n const response = await this.taonCmsCommentController.voteComment({\n commentId: id,\n value,\n }).request!();\n if (response.statusCode >= 400 || !response.body?.json) {\n throw new Error(\n response.responseText || 'Unable to vote on the comment.',\n );\n }\n return response.body.json;\n }\n\n async reportSpam(id: number): Promise<void> {\n const response =\n await this.taonCmsCommentController.reportSpam(id).request!();\n if (response.statusCode >= 400) {\n throw new Error(response.responseText || 'Unable to report the comment.');\n }\n }\n\n async getCommentsBackoffice(filters: {\n pageNumber: number;\n pageSize: number;\n id?: string;\n text?: string;\n author?: string;\n }): Promise<{ items: CommentListItem[]; total: number }> {\n const response = await this.taonCmsCommentController.getCommentsBackoffice(\n filters.pageNumber,\n filters.pageSize,\n filters.id,\n filters.text,\n filters.author,\n ).request!();\n if (response.statusCode >= 400 || !response.body?.json) {\n throw new Error(response.responseText || 'Unable to load CMS comments.');\n }\n return response.body.json;\n }\n\n async getBlockedUsers(): Promise<{ id: number; userId: number }[]> {\n const response =\n await this.taonCmsCommentController.getBlockedUsers().request!();\n if (response.statusCode >= 400) {\n throw new Error(response.responseText || 'Unable to load blocked users.');\n }\n return response.body?.json ?? [];\n }\n\n async setBlockedUser(userId: number, blocked: boolean): Promise<void> {\n const response = await this.taonCmsCommentController.setBlockedUser({\n userId,\n blocked,\n }).request!();\n if (response.statusCode >= 400) {\n throw new Error(\n response.responseText || 'Unable to update comment access.',\n );\n }\n }\n\n async getBlockedPhrases(): Promise<{ id: number; phrase: string }[]> {\n const response =\n await this.taonCmsCommentController.getBlockedPhrases().request!();\n if (response.statusCode >= 400) {\n throw new Error(\n response.responseText || 'Unable to load blocked phrases.',\n );\n }\n return response.body?.json ?? [];\n }\n\n async addBlockedPhrase(phrase: string): Promise<void> {\n const response =\n await this.taonCmsCommentController.addBlockedPhrase(phrase).request!();\n if (response.statusCode >= 400) {\n throw new Error(\n response.responseText || 'Unable to add the blocked phrase.',\n );\n }\n }\n\n async deleteBlockedPhrase(id: number): Promise<void> {\n const response =\n await this.taonCmsCommentController.deleteBlockedPhrase(id).request!();\n if (response.statusCode >= 400) {\n throw new Error(\n response.responseText || 'Unable to delete the blocked phrase.',\n );\n }\n }\n\n public get allMyEntities$(): Observable<TaonCmsCommentEntity[]> {\n return this.taonCmsCommentController.getAll().request!().observable.pipe(\n map(res => res.body?.json),\n );\n }\n}","import type { TaonCmsCommentEntity } from './taon-cms-comment.entity';\n\nexport const TaonCmsCommentDefaultsValues = {\n description: '',\n version: 0,\n id: void 0,\n} as Partial<TaonCmsCommentEntity>;","export enum TaonCmsCommentState {\n Active = 'active',\n Inactive = 'inactive',\n}","import { TaonCmsCommentState } from './taon-cms-comment.models';\n\n//namespace TaonCmsCommentUtils\n\n export function TaonCmsCommentUtils__NS__isActive(state: string): state is TaonCmsCommentState {\n return state === 'active';\n }\n\n//end of namespace TaonCmsCommentUtils\n","import { AsyncPipe, DatePipe } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n effect,\n inject,\n input,\n signal,\n} from '@angular/core';\nimport { MatButtonModule } from '@angular/material/button';\nimport { Translation } from '@taon-dev/i18n/browser-prod';\nimport { TaonSessionApiService } from '@taon-dev/session/browser-prod';\nimport type { TaonAuthContextEntity } from '@taon-dev/session/browser-prod';\nimport { Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\n\nimport { TaonCmsCommentApiService } from './taon-cms-comment-api.service';\nimport type { CommentListItem } from './taon-cms-comment.controller';\n\nconst t = Translation.for('src/lib/taon-cms-comment/taon-cms-comments.component.ts', {\"src/lib/taon-cms-comment/taon-cms-comment.controller.ts\":{\"en-US\":async () => (await import('./i18n/taon-cms-comment.controller.ts.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-comment.controller.ts.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-comment.controller.ts.de-DE.i18n.data')).default},\"src/lib/taon-cms-comment/taon-cms-comments.component.html\":{\"en-US\":async () => (await import('./i18n/taon-cms-comments.component.html.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-comments.component.html.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-comments.component.html.de-DE.i18n.data')).default},\"src/lib/taon-cms-comment/taon-cms-comments.component.ts\":{\"en-US\":async () => (await import('./i18n/taon-cms-comments.component.ts.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-comments.component.ts.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-comments.component.ts.de-DE.i18n.data')).default}} as any);\n\n@Component({\n selector: 'taon-cms-comments',\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [AsyncPipe, DatePipe, MatButtonModule],\n providers: [TaonCmsCommentApiService, TaonSessionApiService],\n templateUrl: './taon-cms-comments.component.html',\n styleUrl: './taon-cms-comments.component.scss',\n})\nexport class TaonCmsCommentsComponent {\n readonly t = t.for(this);\n\n readonly contentId = input<number | null>(null);\n\n private readonly api = inject(TaonCmsCommentApiService);\n\n private readonly sessionApi = inject(TaonSessionApiService);\n\n readonly context$ = this.sessionApi.context();\n\n readonly comments = signal<CommentListItem[]>([]);\n\n readonly body = signal('');\n\n readonly loading = signal(false);\n\n readonly saving = signal(false);\n\n readonly error = signal('');\n\n constructor() {\n effect(() => {\n const contentId = this.contentId();\n if (contentId) {\n void this.load(contentId);\n }\n });\n }\n\n setBody(event: Event): void {\n this.body.set((event.target as HTMLTextAreaElement).value.slice(0, 500));\n }\n\n async submit(event: Event): Promise<void> {\n event.preventDefault();\n const contentId = this.contentId();\n if (!contentId || !this.body().trim() || this.saving()) {\n return;\n }\n this.saving.set(true);\n this.error.set('');\n try {\n const created = await this.api.createComment(contentId, this.body());\n this.comments.update(comments => [...comments, created]);\n this.body.set('');\n } catch (error) {\n console.error('[taon-cms-comments] Unable to create comment', error);\n this.error.set(\n error instanceof Error\n ? error.message\n : this.t.gettext('Unable to add the comment.'),\n );\n } finally {\n this.saving.set(false);\n }\n }\n\n async vote(comment: CommentListItem, value: -1 | 1): Promise<void> {\n this.error.set('');\n try {\n this.replace(await this.api.vote(comment.id, value));\n } catch (error) {\n console.error('[taon-cms-comments] Unable to vote on comment', error);\n this.error.set(\n error instanceof Error\n ? error.message\n : this.t.gettext('Unable to vote on the comment.'),\n );\n }\n }\n\n async report(comment: CommentListItem): Promise<void> {\n this.error.set('');\n try {\n await this.api.reportSpam(comment.id);\n this.replace({\n ...comment,\n currentUserReported: true,\n spamReports: comment.spamReports + 1,\n } as any);\n } catch (error) {\n console.error('[taon-cms-comments] Unable to report comment', error);\n this.error.set(\n error instanceof Error\n ? error.message\n : this.t.gettext('Unable to report the comment.'),\n );\n }\n }\n\n async remove(comment: CommentListItem): Promise<void> {\n this.error.set('');\n try {\n await this.api.deleteComment(comment.id);\n this.comments.update(comments =>\n comments.filter(item => item.id !== comment.id),\n );\n } catch (error) {\n console.error('[taon-cms-comments] Unable to delete comment', error);\n this.error.set(\n error instanceof Error\n ? error.message\n : this.t.gettext('Unable to delete the comment.'),\n );\n }\n }\n\n canDelete(\n comment: CommentListItem,\n context: TaonAuthContextEntity | null | undefined,\n ): boolean {\n return (\n Number(context?.user?.id) === comment.userId ||\n !!context?.hasAccess?.toManageCms\n );\n }\n\n private async load(contentId: number): Promise<void> {\n this.loading.set(true);\n this.error.set('');\n try {\n this.comments.set(await this.api.getComments(contentId));\n } catch (error) {\n console.error('[taon-cms-comments] Unable to load comments', error);\n this.error.set(\n error instanceof Error\n ? error.message\n : this.t.gettext('Unable to load comments.'),\n );\n } finally {\n this.loading.set(false);\n }\n }\n\n private replace(comment: CommentListItem): void {\n this.comments.update(items =>\n items.map(item => (item.id === comment.id ? comment : item)),\n );\n }\n}","<section\n class=\"taon-cms-comments\"\n aria-labelledby=\"taon-comments-title\">\n <h2 id=\"taon-comments-title\">{{ t.gettext('Comments') }}</h2>\n @if (loading()) {\n <p role=\"status\">{{ t.gettext('Loading comments...') }}</p>\n }\n @if (error()) {\n <p role=\"alert\">{{ error() }}</p>\n }\n @if ((context$ | async)?.user) {\n <form (submit)=\"submit($event)\">\n <label>\n {{ t.gettext('Add a comment') }}\n <textarea\n maxlength=\"500\"\n [value]=\"body()\"\n (input)=\"setBody($event)\"></textarea>\n </label>\n <p>\n {{\n t.gettext('Characters remaining: [[ count ]]', {\n count: 500 - body().length,\n })\n }}\n </p>\n <button\n mat-flat-button\n type=\"submit\"\n [disabled]=\"saving() || !body().trim()\">\n {{ t.gettext('Comment') }}\n </button>\n </form>\n } @else {\n <p>{{ t.gettext('Sign in to add a comment or vote.') }}</p>\n }\n <div class=\"taon-cms-comments__list\">\n @for (comment of comments(); track comment.id) {\n <article class=\"taon-cms-comment\">\n <header>\n <strong>{{ comment.authorName }}</strong>\n <time [attr.datetime]=\"comment.createdAt\">\n {{ comment.createdAt | date: 'medium' }}\n </time>\n </header>\n <p class=\"taon-cms-comment__body\">{{ comment.body }}</p>\n @if ((context$ | async)?.user) {\n <div class=\"taon-cms-comment__actions\">\n @if (comment.currentUserVote === 1) {\n <span>{{ t.gettext('Your vote: Upvote') }}</span>\n } @else if (comment.currentUserVote === -1) {\n <span>{{ t.gettext('Your vote: Downvote') }}</span>\n }\n <button\n mat-button\n type=\"button\"\n (click)=\"vote(comment, 1)\">\n {{ t.gettext('Upvote') }} ({{ comment.upvotes }})\n </button>\n <button\n mat-button\n type=\"button\"\n (click)=\"vote(comment, -1)\">\n {{ t.gettext('Downvote') }} ({{ comment.downvotes }})\n </button>\n <button\n mat-button\n type=\"button\"\n [disabled]=\"comment.currentUserReported\"\n (click)=\"report(comment)\">\n {{\n comment.currentUserReported\n ? t.gettext('Reported')\n : t.gettext('Report spam')\n }}\n ({{ comment.spamReports }})\n </button>\n @if (canDelete(comment, context$ | async)) {\n <button\n mat-button\n type=\"button\"\n (click)=\"remove(comment)\">\n {{ t.gettext('Delete') }}\n </button>\n }\n </div>\n }\n </article>\n } @empty {\n @if (!loading()) {\n <p>{{ t.gettext('No comments yet.') }}</p>\n }\n }\n </div>\n</section>\n","import { Injectable } from '@angular/core';\nimport { TaonBaseAngularService } from 'taon/browser-prod';\n\nimport { TaonCmsContentProvider } from './taon-cms-content.provider';\n\n@Injectable()\nexport class TaonCmsContentConfigService extends TaonBaseAngularService {\n taonCmsContentProvider = this.injectProvider(TaonCmsContentProvider);\n\n get siteName(): string {\n return this.taonCmsContentProvider.siteName;\n }\n}\n","import type { TaonCmsContentEntity } from './taon-cms-content.entity';\nimport { TaonCmsContentType } from './taon-cms-content.models';\n\nexport const TaonCmsContentDefaultsValues = {\n description: '',\n version: 0,\n id: void 0,\n type: TaonCmsContentType.Normal,\n videoKey: null,\n audioKey: null,\n attachmentKey: null,\n thumbnailKey: null,\n} as Partial<TaonCmsContentEntity>;\n","import { TaonCmsContentState } from './taon-cms-content.models';\nimport type { TaonCmsContentEntity } from './taon-cms-content.entity';\n\n//namespace TaonCmsContentUtils\n\n export function TaonCmsContentUtils__NS__orderRelatedPosts(\n posts: TaonCmsContentEntity[],\n ids: number[],\n ): void {\n const positions = new Map(ids.map((id, index) => [id, index]));\n posts.sort((a, b) =>\n (positions.get(a.id) ?? ids.length) -\n (positions.get(b.id) ?? ids.length),\n );\n }\n\n export function TaonCmsContentUtils__NS__isActive(state: string): state is TaonCmsContentState {\n return state === 'active';\n }\n\n//end of namespace TaonCmsContentUtils\n","export interface TaonCmsTemplateContext {\n frontendUrl?: string | null;\n site?: { name?: string | null } | null;\n post?: {\n title?: string | null;\n url?: string | null;\n id?: number | null;\n thumbnailUrl?: string | null;\n } | null;\n}\n\nexport type TaonCmsTemplateVariable =\n | 'frontendUrl'\n | 'site.name'\n | 'currentYear'\n | 'post.title'\n | 'post.url'\n | 'post.id'\n | 'post.thumbnailUrl';\n\n/**\n * Resolves allowlisted values as HTML text/attribute data, not markup.\n * The returned HTML must still pass through the renderer's HTML sanitizer.\n */\nexport function resolveTemplateVariables(\n content: string | null | undefined,\n context: TaonCmsTemplateContext,\n): string {\n const values = new Map<string, string | number | null | undefined>([\n ['frontendUrl', context.frontendUrl],\n ['site.name', context.site?.name],\n ['currentYear', new Date().getFullYear()],\n ['post.title', context.post?.title],\n ['post.url', context.post?.url],\n ['post.id', context.post?.id],\n ['post.thumbnailUrl', context.post?.thumbnailUrl],\n ]);\n return (content ?? '').replace(\n /\\{\\{\\s*([a-zA-Z][a-zA-Z0-9]*(?:\\.[a-zA-Z][a-zA-Z0-9]*)*)\\s*\\}\\}/g,\n (placeholder: string, name: string) => {\n const value = values.get(name);\n if (value === null || value === undefined) {\n return placeholder;\n }\n return String(value)\n .replace(/&/g, '&amp;')\n .replace(/</g, '&lt;')\n .replace(/>/g, '&gt;')\n .replace(/\"/g, '&quot;')\n .replace(/'/g, '&#39;');\n },\n );\n}\n","import { Injectable } from '@angular/core';\nimport { Observable } from 'rxjs';\nimport { map } from 'rxjs/operators';\nimport { TaonBaseAngularService, Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\n\nimport type { TaonCmsContentAssetEntity } from './taon-cms-content-asset.entity';\nimport { TaonCmsContentAssetController } from './taon-cms-content-asset.controller';\n\n@Injectable()\nexport class TaonCmsContentAssetApiService extends TaonBaseAngularService {\n protected readonly taonCmsContentAssetController = this.injectController(\n TaonCmsContentAssetController,\n );\n\n public get allMyEntities$(): Observable<TaonCmsContentAssetEntity[]> {\n return this.taonCmsContentAssetController.getAll()\n .request!().observable.pipe(map(res => res.body?.json));\n }\n\n public helloWorld(user: string): Observable<string> {\n return this.taonCmsContentAssetController.helloWord(user)\n .request!().observable.pipe(map(res => res.responseText as string));\n }\n}","import type { TaonCmsContentAssetEntity } from './taon-cms-content-asset.entity';\n\nexport const TaonCmsContentAssetDefaultsValues = {\n description: '',\n version: 0,\n id: void 0,\n} as Partial<TaonCmsContentAssetEntity>;","export enum TaonCmsContentAssetState {\n Active = 'active',\n Inactive = 'inactive',\n}","import { TaonCmsContentAssetState } from './taon-cms-content-asset.models';\n\n//namespace TaonCmsContentAssetUtils\n\n export function TaonCmsContentAssetUtils__NS__isActive(state: string): state is TaonCmsContentAssetState {\n return state === 'active';\n }\n\n//end of namespace TaonCmsContentAssetUtils\n","import { Injectable } from '@angular/core';\nimport { Observable } from 'rxjs';\nimport { map } from 'rxjs/operators';\nimport { TaonBaseAngularService, Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\n\nimport type { TaonCmsContentPermissionEntity } from './taon-cms-content-permission.entity';\nimport { TaonCmsContentPermissionController } from './taon-cms-content-permission.controller';\n\n@Injectable()\nexport class TaonCmsContentPermissionApiService extends TaonBaseAngularService {\n protected readonly taonCmsContentPermissionController = this.injectController(\n TaonCmsContentPermissionController,\n );\n\n public get allMyEntities$(): Observable<TaonCmsContentPermissionEntity[]> {\n return this.taonCmsContentPermissionController.getAll()\n .request!().observable.pipe(map(res => res.body?.json));\n }\n\n public helloWorld(user: string): Observable<string> {\n return this.taonCmsContentPermissionController.helloWord(user)\n .request!().observable.pipe(map(res => res.responseText as string));\n }\n}","import type { TaonCmsContentPermissionEntity } from './taon-cms-content-permission.entity';\n\nexport const TaonCmsContentPermissionDefaultsValues = {\n description: '',\n version: 0,\n id: void 0,\n} as Partial<TaonCmsContentPermissionEntity>;","export enum TaonCmsContentPermissionState {\n Active = 'active',\n Inactive = 'inactive',\n}","import { TaonCmsContentPermissionState } from './taon-cms-content-permission.models';\n\n//namespace TaonCmsContentPermissionUtils\n\n export function TaonCmsContentPermissionUtils__NS__isActive(state: string): state is TaonCmsContentPermissionState {\n return state === 'active';\n }\n\n//end of namespace TaonCmsContentPermissionUtils\n","import { Injectable } from '@angular/core';\nimport { Observable } from 'rxjs';\nimport { map } from 'rxjs/operators';\nimport { TaonBaseAngularService, Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\n\nimport { TaonCmsContentController } from '../taon-cms-content/taon-cms-content.controller';\nimport type { TaonCmsContentEntity } from '../taon-cms-content/taon-cms-content.entity';\nimport type { TaonCmsRestoreContent } from '../taon-cms-content/taon-cms-content.models';\n\nimport type { TaonCmsContentRevisionEntity } from './taon-cms-content-revision.entity';\nimport { TaonCmsContentRevisionController } from './taon-cms-content-revision.controller';\n\n@Injectable()\nexport class TaonCmsContentRevisionApiService extends TaonBaseAngularService {\n protected readonly contentController = this.injectController(\n TaonCmsContentController,\n );\n\n protected readonly taonCmsContentRevisionController = this.injectController(\n TaonCmsContentRevisionController,\n );\n\n public listRevisions(id: number): Observable<TaonCmsContentRevisionEntity[]> {\n return this.contentController.listRevisions(id).request!().observable.pipe(\n map(res => res.body.json),\n );\n }\n\n public restoreContent(\n id: number,\n input: TaonCmsRestoreContent,\n ): Observable<TaonCmsContentEntity> {\n return this.contentController.restoreContent(id, input)\n .request!().observable.pipe(map(res => res.body.json));\n }\n\n public get allMyEntities$(): Observable<TaonCmsContentRevisionEntity[]> {\n return this.taonCmsContentRevisionController.getAll()\n .request!().observable.pipe(map(res => res.body?.json));\n }\n}","import type { TaonCmsContentRevisionEntity } from './taon-cms-content-revision.entity';\n\nexport const TaonCmsContentRevisionDefaultsValues = {\n description: '',\n version: 0,\n id: void 0,\n} as Partial<TaonCmsContentRevisionEntity>;","export enum TaonCmsContentRevisionState {\n Active = 'active',\n Inactive = 'inactive',\n}","import { TaonCmsContentRevisionState } from './taon-cms-content-revision.models';\n\n//namespace TaonCmsContentRevisionUtils\n\n export function TaonCmsContentRevisionUtils__NS__isActive(state: string): state is TaonCmsContentRevisionState {\n return state === 'active';\n }\n\n//end of namespace TaonCmsContentRevisionUtils\n","import { Injectable } from '@angular/core';\nimport { Observable } from 'rxjs';\nimport { map } from 'rxjs/operators';\nimport { TaonBaseAngularService, Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\n\nimport type { TaonCmsContentTagEntity } from './taon-cms-content-tag.entity';\nimport { TaonCmsContentTagController } from './taon-cms-content-tag.controller';\n\n@Injectable()\nexport class TaonCmsContentTagApiService extends TaonBaseAngularService {\n protected readonly taonCmsContentTagController = this.injectController(\n TaonCmsContentTagController,\n );\n\n public get allMyEntities$(): Observable<TaonCmsContentTagEntity[]> {\n return this.taonCmsContentTagController.getAll().request!().observable.pipe(\n map(res => res.body?.json),\n );\n }\n}","import type { TaonCmsContentTagEntity } from './taon-cms-content-tag.entity';\n\nexport const TaonCmsContentTagDefaultsValues = {\n description: '',\n version: 0,\n id: void 0,\n} as Partial<TaonCmsContentTagEntity>;","export enum TaonCmsContentTagState {\n Active = 'active',\n Inactive = 'inactive',\n}","import { TaonCmsContentTagState } from './taon-cms-content-tag.models';\n\n//namespace TaonCmsContentTagUtils\n\n export function TaonCmsContentTagUtils__NS__isActive(state: string): state is TaonCmsContentTagState {\n return state === 'active';\n }\n\n//end of namespace TaonCmsContentTagUtils\n","import { Injectable } from '@angular/core';\nimport { Observable } from 'rxjs';\nimport { map } from 'rxjs/operators';\nimport { TaonBaseAngularService, Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\n\nimport type { TaonCmsTagEntity } from './taon-cms-tag.entity';\nimport { TaonCmsTagController } from './taon-cms-tag.controller';\nimport type { TaonCmsTaxonomyFields } from '../taon-cms-category/taon-cms-taxonomy.validation';\n\n@Injectable()\nexport class TaonCmsTagApiService extends TaonBaseAngularService {\n private readonly taonCmsTagController =\n this.injectController(TaonCmsTagController);\n\n get allMyEntities$(): Observable<TaonCmsTagEntity[]> {\n return this.taonCmsTagController\n .getAll()\n .request()\n .observable.pipe(map(res => res.body.json));\n }\n\n save(\n id: number | null,\n input: TaonCmsTaxonomyFields,\n ): Observable<TaonCmsTagEntity> {\n return this.taonCmsTagController\n .saveTag(id, input)\n .request()\n .observable.pipe(map(res => res.body.json));\n }\n\n delete(id: number): Observable<void> {\n return this.taonCmsTagController\n .deleteTag(id)\n .request()\n .observable.pipe(map(() => undefined));\n }\n}","import type { TaonCmsTagEntity } from './taon-cms-tag.entity';\n\nexport const TaonCmsTagDefaultsValues = {\n description: '',\n version: 0,\n id: void 0,\n} as Partial<TaonCmsTagEntity>;","export enum TaonCmsTagState {\n Active = 'active',\n Inactive = 'inactive',\n}","import { TaonCmsTagState } from './taon-cms-tag.models';\n\n//namespace TaonCmsTagUtils\n\n export function TaonCmsTagUtils__NS__isActive(state: string): state is TaonCmsTagState {\n return state === 'active';\n }\n\n//end of namespace TaonCmsTagUtils\n","import {\n ChangeDetectionStrategy,\n Component,\n DestroyRef,\n inject,\n signal,\n} from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { FormsModule } from '@angular/forms';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatDialog } from '@angular/material/dialog';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { MatInputModule } from '@angular/material/input';\nimport { MatSelectModule } from '@angular/material/select';\nimport { ActivatedRoute } from '@angular/router';\nimport { MtxGridColumn } from '@ng-matero/extensions/grid';\nimport { Translation } from '@taon-dev/i18n/browser-prod';\nimport {\n TaonConfirmDialogComponent,\n TaonDatatableComponent,\n} from '@taon-dev/ui/browser-prod';\nimport { Observable, finalize } from 'rxjs';\nimport { Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\n\nimport { TaonCmsCategoryApiService } from '../taon-cms-category/taon-cms-category-api.service';\nimport type { TaonCmsCategoryEntity } from '../taon-cms-category/taon-cms-category.entity';\nimport type { TaonCmsCategoryFields } from '../taon-cms-category/taon-cms-taxonomy.validation';\nimport { TaonCmsTagApiService } from '../taon-cms-tag/taon-cms-tag-api.service';\nimport type { TaonCmsTagEntity } from '../taon-cms-tag/taon-cms-tag.entity';\n\nconst t = Translation.for('src/lib/taon-cms-taxonomy-backoffice/taon-cms-taxonomy-backoffice.component.ts', {\"src/lib/taon-cms-taxonomy-backoffice/taon-cms-taxonomy-backoffice.component.html\":{\"en-US\":async () => (await import('./i18n/taon-cms-taxonomy-backoffice.component.html.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-taxonomy-backoffice.component.html.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-taxonomy-backoffice.component.html.de-DE.i18n.data')).default},\"src/lib/taon-cms-taxonomy-backoffice/taon-cms-taxonomy-backoffice.component.ts\":{\"en-US\":async () => (await import('./i18n/taon-cms-taxonomy-backoffice.component.ts.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-taxonomy-backoffice.component.ts.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-taxonomy-backoffice.component.ts.de-DE.i18n.data')).default},\"src/lib/taon-cms-taxonomy-backoffice/taon-cms-taxonomy-quick-create-dialog.component.ts\":{\"en-US\":async () => (await import('./i18n/taon-cms-taxonomy-quick-create-dialog.component.ts.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-taxonomy-quick-create-dialog.component.ts.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-taxonomy-quick-create-dialog.component.ts.de-DE.i18n.data')).default}} as any);\ntype TaxonomyRow = TaonCmsCategoryEntity | TaonCmsTagEntity;\n\n@Component({\n selector: 'taon-cms-taxonomy-backoffice',\n templateUrl: './taon-cms-taxonomy-backoffice.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [\n FormsModule,\n MatButtonModule,\n MatFormFieldModule,\n MatInputModule,\n MatSelectModule,\n TaonDatatableComponent,\n ],\n providers: [TaonCmsCategoryApiService, TaonCmsTagApiService],\n styles: [\n `\n :host {\n display: block;\n }\n form {\n display: grid;\n gap: 1rem;\n max-width: 640px;\n margin-block: 1.5rem;\n }\n .actions {\n display: flex;\n flex-wrap: wrap;\n gap: 0.5rem;\n }\n `,\n ],\n})\nexport class TaonCmsTaxonomyBackofficeComponent {\n readonly t = t.for(this);\n readonly isCategory =\n inject(ActivatedRoute).snapshot.data['taxonomy'] === 'category';\n private readonly categories = inject(TaonCmsCategoryApiService);\n private readonly tags = inject(TaonCmsTagApiService);\n private readonly destroyRef = inject(DestroyRef);\n private readonly dialog = inject(MatDialog);\n readonly rows = signal<TaxonomyRow[]>([]);\n readonly busy = signal(false);\n readonly error = signal('');\n readonly editing = signal(false);\n editingId: number | null = null;\n draft: TaonCmsCategoryFields = this.emptyDraft();\n\n readonly columns: MtxGridColumn[] = [\n { header: this.t.gettext('Name'), field: 'name', sortable: true },\n { header: this.t.gettext('Slug'), field: 'slug', sortable: true },\n ...(this.isCategory\n ? [\n {\n header: this.t.gettext('Parent Category'),\n field: 'parentName',\n sortable: true,\n },\n {\n header: this.t.gettext('Sort Order'),\n field: 'sortOrder',\n sortable: true,\n },\n ]\n : [\n {\n header: this.t.gettext('Description'),\n field: 'description',\n sortable: true,\n },\n ]),\n {\n header: this.t.gettext('Actions'),\n field: 'actions',\n type: 'button',\n buttons: [\n {\n type: 'icon',\n icon: 'edit',\n tooltip: this.t.gettext('Edit'),\n disabled: () => this.busy(),\n click: (row: TaxonomyRow) => this.edit(row),\n },\n {\n type: 'icon',\n icon: 'delete',\n tooltip: this.t.gettext('Delete'),\n disabled: () => this.busy(),\n click: (row: TaxonomyRow) => this.delete(row),\n },\n ],\n },\n ];\n\n ngOnInit(): void {\n this.reload();\n }\n\n reload(): void {\n if (this.busy()) {\n return;\n }\n const request: Observable<TaxonomyRow[]> = this.isCategory\n ? this.categories.allMyEntities$\n : this.tags.allMyEntities$;\n this.run(request, rows => this.rows.set(rows));\n }\n\n tableRows() {\n return this.rows().map(row => ({\n ...row,\n parentName:\n 'parentCategoryId' in row\n ? (this.rows().find(parent => parent.id === row.parentCategoryId)\n ?.name ?? '')\n : '',\n }));\n }\n\n parentOptions(): TaonCmsCategoryEntity[] {\n const categories = this.rows().filter(\n (row): row is TaonCmsCategoryEntity => 'parentCategoryId' in row,\n );\n return categories.filter(category => {\n const visited = new Set<number>();\n let current: TaonCmsCategoryEntity | undefined = category;\n while (current) {\n if (current.id === this.editingId || visited.has(current.id)) {\n return false;\n }\n visited.add(current.id);\n current = categories.find(\n parent => parent.id === current?.parentCategoryId,\n );\n }\n return true;\n });\n }\n\n edit(row?: TaxonomyRow): void {\n if (this.busy()) {\n return;\n }\n this.editingId = row?.id ?? null;\n this.draft = row\n ? {\n name: row.name,\n slug: row.slug,\n description: row.description,\n parentCategoryId:\n 'parentCategoryId' in row ? row.parentCategoryId : null,\n sortOrder: 'sortOrder' in row ? row.sortOrder : 0,\n }\n : this.emptyDraft();\n this.error.set('');\n this.editing.set(true);\n }\n\n save(): void {\n if (this.busy()) {\n return;\n }\n const request: Observable<TaxonomyRow> = this.isCategory\n ? this.categories.save(this.editingId, this.draft)\n : this.tags.save(this.editingId, this.draft);\n this.run(request, saved => {\n this.editing.set(false);\n this.rows.update(rows => [\n ...rows.filter(row => row.id !== saved.id),\n saved,\n ]);\n });\n }\n\n delete(row: TaxonomyRow): void {\n if (this.busy()) {\n return;\n }\n this.dialog\n .open(TaonConfirmDialogComponent, {\n data: {\n title: this.isCategory\n ? this.t.gettext('Delete category?')\n : this.t.gettext('Delete tag?'),\n message: this.t.gettext(\n 'Only unused items can be deleted. This cannot be undone.',\n ),\n confirmText: this.t.gettext('Delete'),\n },\n })\n .afterClosed()\n .pipe(takeUntilDestroyed(this.destroyRef))\n .subscribe(confirmed => {\n if (confirmed) {\n this.run(\n this.isCategory\n ? this.categories.delete(row.id)\n : this.tags.delete(row.id),\n () => {\n if (this.editingId === row.id) {\n this.editing.set(false);\n }\n this.rows.update(rows => rows.filter(item => item.id !== row.id));\n },\n );\n }\n });\n }\n\n private run<T>(request: Observable<T>, next: (value: T) => void): void {\n if (this.busy()) {\n return;\n }\n this.busy.set(true);\n this.error.set('');\n request\n .pipe(\n takeUntilDestroyed(this.destroyRef),\n finalize(() => this.busy.set(false)),\n )\n .subscribe({\n next: value => {\n this.busy.set(false);\n next(value);\n },\n error: (error: unknown) => {\n console.error('[taon-cms-taxonomy] Operation failed', error);\n this.error.set(\n this.t.gettext(\n 'The operation failed. Check for duplicate names or slugs, invalid parents, or items still used by posts or child categories, then reload and try again.',\n ),\n );\n },\n });\n }\n\n private emptyDraft(): TaonCmsCategoryFields {\n return {\n name: '',\n slug: '',\n description: '',\n parentCategoryId: null,\n sortOrder: 0,\n };\n }\n}","<h1>{{ isCategory ? t.gettext('Categories') : t.gettext('Tags') }}</h1>\n<div class=\"actions\">\n <button\n mat-button\n type=\"button\"\n [disabled]=\"busy()\"\n (click)=\"edit()\">\n {{ isCategory ? t.gettext('Create category') : t.gettext('Create tag') }}\n </button>\n <button\n mat-button\n type=\"button\"\n [disabled]=\"busy()\"\n (click)=\"reload()\">\n {{ t.gettext('Reload') }}\n </button>\n</div>\n@if (error()) {\n <p role=\"alert\">{{ error() }}</p>\n}\n@if (busy()) {\n <p role=\"status\">{{ t.gettext('Loading...') }}</p>\n}\n@if (editing()) {\n <form\n #form=\"ngForm\"\n (ngSubmit)=\"save()\">\n <h2>{{ editingId === null ? t.gettext('Create') : t.gettext('Edit') }}</h2>\n <mat-form-field appearance=\"outline\">\n <mat-label>{{ t.gettext('Name') }}</mat-label>\n <input\n matInput\n name=\"name\"\n required\n [(ngModel)]=\"draft.name\"\n [disabled]=\"busy()\" />\n </mat-form-field>\n <mat-form-field appearance=\"outline\">\n <mat-label>{{ t.gettext('Slug') }}</mat-label>\n <input\n matInput\n name=\"slug\"\n required\n [(ngModel)]=\"draft.slug\"\n [disabled]=\"busy()\" />\n </mat-form-field>\n <mat-form-field appearance=\"outline\">\n <mat-label>{{ t.gettext('Description') }}</mat-label>\n <textarea\n matInput\n name=\"description\"\n [(ngModel)]=\"draft.description\"\n [disabled]=\"busy()\"></textarea>\n </mat-form-field>\n @if (isCategory) {\n <mat-form-field appearance=\"outline\">\n <mat-label>{{ t.gettext('Parent Category') }}</mat-label>\n <mat-select\n name=\"parentCategoryId\"\n [(ngModel)]=\"draft.parentCategoryId\"\n [disabled]=\"busy()\">\n <mat-option [value]=\"null\">{{ t.gettext('None') }}</mat-option>\n @for (category of parentOptions(); track category.id) {\n <mat-option [value]=\"category.id\">{{ category.name }}</mat-option>\n }\n </mat-select>\n </mat-form-field>\n <mat-form-field appearance=\"outline\">\n <mat-label>{{ t.gettext('Sort Order') }}</mat-label>\n <input\n matInput\n name=\"sortOrder\"\n type=\"number\"\n step=\"1\"\n required\n [(ngModel)]=\"draft.sortOrder\"\n [disabled]=\"busy()\" />\n </mat-form-field>\n }\n <div class=\"actions\">\n <button\n mat-flat-button\n type=\"submit\"\n [disabled]=\"\n busy() || form.invalid || !draft.name.trim() || !draft.slug.trim()\n \">\n {{ t.gettext('Save') }}\n </button>\n <button\n mat-button\n type=\"button\"\n [disabled]=\"busy()\"\n (click)=\"editing.set(false)\">\n {{ t.gettext('Cancel') }}\n </button>\n </div>\n </form>\n}\n<taon-datatable\n [data]=\"tableRows()\"\n [columns]=\"columns\"\n [hideAddButton]=\"true\"\n searchMode=\"advanced\">\n</taon-datatable>\n","import { Routes } from '@angular/router';\n\nexport const TaonCmsCategoriesBackofficeRoutes: Routes = [\n {\n path: '',\n data: { taxonomy: 'category' },\n loadComponent: () =>\n import('./taon-cms-taxonomy-backoffice.component').then(\n m => m.TaonCmsTaxonomyBackofficeComponent,\n ),\n },\n];\n\nexport const TaonCmsTagsBackofficeRoutes: Routes = [\n {\n path: '',\n data: { taxonomy: 'tag' },\n loadComponent: () =>\n import('./taon-cms-taxonomy-backoffice.component').then(\n m => m.TaonCmsTaxonomyBackofficeComponent,\n ),\n },\n];\n","import { ChangeDetectionStrategy, Component, inject } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { MatButtonModule } from '@angular/material/button';\nimport {\n MAT_DIALOG_DATA,\n MatDialogModule,\n MatDialogRef,\n} from '@angular/material/dialog';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { MatInputModule } from '@angular/material/input';\nimport { Translation } from '@taon-dev/i18n/browser-prod';\nimport { Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\nimport { ___NS__add, ___NS__after, ___NS__ary, ___NS__assign, ___NS__assignIn, ___NS__assignInWith, ___NS__assignWith, ___NS__at, ___NS__attempt, ___NS__before, ___NS__bind, ___NS__bindAll, ___NS__bindKey, ___NS__camelCase, ___NS__capitalize, ___NS__castArray, ___NS__ceil, ___NS__chain, ___NS__chunk, ___NS__clamp, ___NS__clone, ___NS__cloneDeep, ___NS__cloneDeepWith, ___NS__cloneWith, ___NS__compact, ___NS__concat, ___NS__cond, ___NS__conforms, ___NS__conformsTo, ___NS__constant, ___NS__countBy, ___NS__create, ___NS__curry, ___NS__curryRight, ___NS__debounce, ___NS__deburr, ___NS__defaults, ___NS__defaultsDeep, ___NS__defaultTo, ___NS__defer, ___NS__delay, ___NS__difference, ___NS__differenceBy, ___NS__differenceWith, ___NS__divide, ___NS__drop, ___NS__dropRight, ___NS__dropRightWhile, ___NS__dropWhile, ___NS__each, ___NS__eachRight, ___NS__endsWith, ___NS__entries, ___NS__entriesIn, ___NS__eq, ___NS__escape, ___NS__escapeRegExp, ___NS__every, ___NS__extend, ___NS__extendWith, ___NS__fill, ___NS__filter, ___NS__find, ___NS__findIndex, ___NS__findKey, ___NS__findLast, ___NS__findLastIndex, ___NS__findLastKey, ___NS__first, ___NS__flatMap, ___NS__flatMapDeep, ___NS__flatMapDepth, ___NS__flatten, ___NS__flattenDeep, ___NS__flattenDepth, ___NS__flip, ___NS__floor, ___NS__flow, ___NS__flowRight, ___NS__forEach, ___NS__forEachRight, ___NS__forIn, ___NS__forInRight, ___NS__forOwn, ___NS__forOwnRight, ___NS__fromPairs, ___NS__functions, ___NS__functionsIn, ___NS__get, ___NS__groupBy, ___NS__gt, ___NS__gte, ___NS__has, ___NS__hasIn, ___NS__head, ___NS__identity, ___NS__includes, ___NS__indexOf, ___NS__initial, ___NS__inRange, ___NS__intersection, ___NS__intersectionBy, ___NS__intersectionWith, ___NS__invert, ___NS__invertBy, ___NS__invoke, ___NS__invokeMap, ___NS__isArguments, ___NS__isArray, ___NS__isArrayBuffer, ___NS__isArrayLike, ___NS__isArrayLikeObject, ___NS__isBoolean, ___NS__isBuffer, ___NS__isDate, ___NS__isElement, ___NS__isEmpty, ___NS__isEqual, ___NS__isEqualWith, ___NS__isError, ___NS__isFinite, ___NS__isFunction, ___NS__isInteger, ___NS__isLeafObject, ___NS__isLength, ___NS__isMap, ___NS__isMatch, ___NS__isMatchWith, ___NS__isNaN, ___NS__isNative, ___NS__isNil, ___NS__isNull, ___NS__isNumber, ___NS__isObject, ___NS__isObjectLike, ___NS__isPlainObject, ___NS__isRegExp, ___NS__isSafeInteger, ___NS__isSet, ___NS__isString, ___NS__isSymbol, ___NS__isTypedArray, ___NS__isUndefined, ___NS__isWeakMap, ___NS__isWeakSet, ___NS__iteratee, ___NS__join, ___NS__kebabCase, ___NS__keyBy, ___NS__keys, ___NS__keysIn, ___NS__last, ___NS__lastIndexOf, ___NS__lowerCase, ___NS__lowerFirst, ___NS__lt, ___NS__lte, ___NS__map, ___NS__mapKeys, ___NS__mapValues, ___NS__matches, ___NS__matchesProperty, ___NS__max, ___NS__maxBy, ___NS__mean, ___NS__meanBy, ___NS__memoize, ___NS__merge, ___NS__mergeWith, ___NS__method, ___NS__methodOf, ___NS__min, ___NS__minBy, ___NS__mixin, ___NS__multiply, ___NS__negate, ___NS__noop, ___NS__now, ___NS__nth, ___NS__nthArg, ___NS__omit, ___NS__omitBy, ___NS__once, ___NS__orderBy, ___NS__over, ___NS__overArgs, ___NS__overEvery, ___NS__overSome, ___NS__pad, ___NS__padEnd, ___NS__padStart, ___NS__parseInt, ___NS__partial, ___NS__partialRight, ___NS__partition, ___NS__pick, ___NS__pickBy, ___NS__property, ___NS__propertyOf, ___NS__pull, ___NS__pullAll, ___NS__pullAllBy, ___NS__pullAllWith, ___NS__pullAt, ___NS__random, ___NS__range, ___NS__rangeRight, ___NS__rearg, ___NS__reduce, ___NS__reduceRight, ___NS__reject, ___NS__remove, ___NS__repeat, ___NS__replace, ___NS__rest, ___NS__result, ___NS__reverse, ___NS__round, ___NS__sample, ___NS__sampleSize, ___NS__set, ___NS__setWith, ___NS__shuffle, ___NS__size, ___NS__slice, ___NS__snakeCase, ___NS__some, ___NS__sortBy, ___NS__sortedIndex, ___NS__sortedIndexBy, ___NS__sortedIndexOf, ___NS__sortedLastIndex, ___NS__sortedLastIndexBy, ___NS__sortedLastIndexOf, ___NS__sortedUniq, ___NS__sortedUniqBy, ___NS__split, ___NS__spread, ___NS__startCase, ___NS__startsWith, ___NS__stubArray, ___NS__stubFalse, ___NS__stubObject, ___NS__stubString, ___NS__stubTrue, ___NS__subtract, ___NS__sum, ___NS__sumBy, ___NS__tail, ___NS__take, ___NS__takeRight, ___NS__takeRightWhile, ___NS__takeWhile, ___NS__tap, ___NS__template, ___NS__templateSettings, ___NS__throttle, ___NS__thru, ___NS__times, ___NS__toArray, ___NS__toFinite, ___NS__toInteger, ___NS__toLength, ___NS__toLower, ___NS__toNumber, ___NS__toPairs, ___NS__toPairsIn, ___NS__toPath, ___NS__toPlainObject, ___NS__toSafeInteger, ___NS__toString, ___NS__toUpper, ___NS__transform, ___NS__trim, ___NS__trimEnd, ___NS__trimStart, ___NS__truncate, ___NS__unary, ___NS__unescape, ___NS__union, ___NS__unionBy, ___NS__unionWith, ___NS__uniq, ___NS__uniqBy, ___NS__uniqueId, ___NS__uniqWith, ___NS__unset, ___NS__unzip, ___NS__unzipWith, ___NS__update, ___NS__updateWith, ___NS__upperCase, ___NS__upperFirst, ___NS__values, ___NS__valuesIn, ___NS__without, ___NS__words, ___NS__wrap, ___NS__xor, ___NS__xorBy, ___NS__xorWith, ___NS__zip, ___NS__zipObject, ___NS__zipObjectDeep, ___NS__zipWith } from 'tnp-core/browser-prod';\n\nconst t = Translation.for('src/lib/taon-cms-taxonomy-backoffice/taon-cms-taxonomy-quick-create-dialog.component.ts', {\"src/lib/taon-cms-taxonomy-backoffice/taon-cms-taxonomy-backoffice.component.html\":{\"en-US\":async () => (await import('./i18n/taon-cms-taxonomy-backoffice.component.html.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-taxonomy-backoffice.component.html.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-taxonomy-backoffice.component.html.de-DE.i18n.data')).default},\"src/lib/taon-cms-taxonomy-backoffice/taon-cms-taxonomy-backoffice.component.ts\":{\"en-US\":async () => (await import('./i18n/taon-cms-taxonomy-backoffice.component.ts.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-taxonomy-backoffice.component.ts.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-taxonomy-backoffice.component.ts.de-DE.i18n.data')).default},\"src/lib/taon-cms-taxonomy-backoffice/taon-cms-taxonomy-quick-create-dialog.component.ts\":{\"en-US\":async () => (await import('./i18n/taon-cms-taxonomy-quick-create-dialog.component.ts.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-taxonomy-quick-create-dialog.component.ts.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-taxonomy-quick-create-dialog.component.ts.de-DE.i18n.data')).default}} as any);\n\nexport interface TaonCmsTaxonomyQuickCreateData {\n taxonomy: 'category' | 'tag';\n}\n\nexport interface TaonCmsTaxonomyQuickCreateResult {\n name: string;\n slug: string;\n description: string | null;\n parentCategoryId: number | null;\n sortOrder: number;\n}\n\n@Component({\n selector: 'taon-cms-taxonomy-quick-create-dialog',\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [\n FormsModule,\n MatButtonModule,\n MatDialogModule,\n MatFormFieldModule,\n MatInputModule,\n ],\n template: `\n <h2 mat-dialog-title>\n {{\n data.taxonomy === 'category'\n ? t.gettext('Add category')\n : t.gettext('Add tag')\n }}\n </h2>\n <form (ngSubmit)=\"create()\">\n <mat-dialog-content>\n <mat-form-field appearance=\"outline\">\n <mat-label>{{ t.gettext('Name') }}</mat-label>\n <input\n matInput\n name=\"name\"\n required\n [ngModel]=\"name\"\n (ngModelChange)=\"updateName($event)\" />\n </mat-form-field>\n <mat-form-field appearance=\"outline\">\n <mat-label>{{ t.gettext('Slug') }}</mat-label>\n <input\n matInput\n name=\"slug\"\n required\n [(ngModel)]=\"slug\"\n (input)=\"slugManuallySet = true\" />\n </mat-form-field>\n <mat-form-field appearance=\"outline\">\n <mat-label>{{ t.gettext('Description') }}</mat-label>\n <textarea\n matInput\n name=\"description\"\n [(ngModel)]=\"description\"></textarea>\n </mat-form-field>\n </mat-dialog-content>\n <mat-dialog-actions align=\"end\">\n <button\n mat-button\n type=\"button\"\n (click)=\"dialogRef.close()\">\n {{ t.gettext('Cancel') }}\n </button>\n <button\n mat-flat-button\n color=\"primary\"\n type=\"submit\"\n [disabled]=\"!name.trim() || !slug.trim()\">\n {{ t.gettext('Create') }}\n </button>\n </mat-dialog-actions>\n </form>\n `,\n})\nexport class TaonCmsTaxonomyQuickCreateDialogComponent {\n readonly t = t.for(this);\n\n readonly data = inject<TaonCmsTaxonomyQuickCreateData>(MAT_DIALOG_DATA);\n\n readonly dialogRef = inject<\n MatDialogRef<\n TaonCmsTaxonomyQuickCreateDialogComponent,\n TaonCmsTaxonomyQuickCreateResult\n >\n >(MatDialogRef);\n\n name = '';\n\n slug = '';\n\n description = '';\n\n slugManuallySet = false;\n\n updateName(value: string): void {\n this.name = value;\n if (!this.slugManuallySet) {\n this.slug = ___NS__kebabCase(value);\n }\n }\n\n create(): void {\n if (!this.name.trim() || !this.slug.trim()) {\n return;\n }\n this.dialogRef.close({\n name: this.name.trim(),\n slug: this.slug.trim(),\n description: this.description.trim() || null,\n parentCategoryId: null,\n sortOrder: 0,\n });\n }\n}","//#region imports\nimport { Injectable } from '@angular/core';\nimport { TaonBaseAngularService } from 'taon/browser-prod';\n\nimport { TaonCmsWebsiteFeatureController } from './taon-cms-website-feature.controller';\nimport type { TaonCmsWebsiteFeatureModels__NS__Feature, TaonCmsWebsiteFeatureModels__NS__TaonCmsWebsiteFeatureState } from './taon-cms-website-feature.models';\nimport { map, Observable, startWith } from 'rxjs';\n//#endregion\n\n@Injectable()\nexport class TaonCmsWebsiteFeatureApiService extends TaonBaseAngularService {\n private readonly taonCmsWebsiteFeatureController = this.injectController(\n TaonCmsWebsiteFeatureController,\n );\n\n /**\n * Reads a context-scoped flag without admin access or creating records.\n * Missing records/values, including deleted flags, default to true.\n * Read failures reject and never enable a flag.\n */\n async isEnabled(key: string): Promise<boolean> {\n const response = await this.taonCmsWebsiteFeatureController\n .isEnabled(key)\n .request();\n if (\n response.statusCode >= 400 ||\n (response.body.text !== 'true' && response.body.text !== 'false')\n ) {\n throw new Error(\n response.responseText || 'The website feature could not be read.',\n );\n }\n return response.body.text === 'true';\n }\n\n isEnabled$(key: string): Observable<boolean> {\n return this.taonCmsWebsiteFeatureController.isEnabled(key)\n .request!().observable.pipe(map(c => c.body.booleanValue));\n }\n\n async listFeatures(): Promise<TaonCmsWebsiteFeatureModels__NS__Feature[]> {\n const response = await this.taonCmsWebsiteFeatureController\n .listFeatures()\n .request();\n return this.readFeatures(response);\n }\n\n async addFeature(\n name: string,\n ): Promise<TaonCmsWebsiteFeatureModels__NS__Feature[]> {\n const response = await this.taonCmsWebsiteFeatureController\n .addFeature(name)\n .request();\n return this.readFeatures(response);\n }\n\n async setEnabled(\n key: string,\n enabled: boolean,\n ): Promise<TaonCmsWebsiteFeatureModels__NS__Feature[]> {\n const response = await this.taonCmsWebsiteFeatureController\n .setEnabled(key, enabled)\n .request();\n return this.readFeatures(response);\n }\n\n async deleteFeature(\n key: string,\n ): Promise<TaonCmsWebsiteFeatureModels__NS__Feature[]> {\n const response = await this.taonCmsWebsiteFeatureController\n .deleteFeature(key)\n .request();\n return this.readFeatures(response);\n }\n\n private readFeatures(response: {\n statusCode: number;\n responseText: string;\n body: { json: TaonCmsWebsiteFeatureModels__NS__Feature[] };\n }): TaonCmsWebsiteFeatureModels__NS__Feature[] {\n if (response.statusCode >= 400 || !Array.isArray(response.body?.json)) {\n throw new Error(\n response.responseText ||\n 'Website features could not be saved or loaded.',\n );\n }\n return response.body.json;\n }\n}","import { TaonCmsWebsiteFeatureModels__NS__Feature, TaonCmsWebsiteFeatureModels__NS__TaonCmsWebsiteFeatureState } from './taon-cms-website-feature.models';\nimport { ___NS__add, ___NS__after, ___NS__ary, ___NS__assign, ___NS__assignIn, ___NS__assignInWith, ___NS__assignWith, ___NS__at, ___NS__attempt, ___NS__before, ___NS__bind, ___NS__bindAll, ___NS__bindKey, ___NS__camelCase, ___NS__capitalize, ___NS__castArray, ___NS__ceil, ___NS__chain, ___NS__chunk, ___NS__clamp, ___NS__clone, ___NS__cloneDeep, ___NS__cloneDeepWith, ___NS__cloneWith, ___NS__compact, ___NS__concat, ___NS__cond, ___NS__conforms, ___NS__conformsTo, ___NS__constant, ___NS__countBy, ___NS__create, ___NS__curry, ___NS__curryRight, ___NS__debounce, ___NS__deburr, ___NS__defaults, ___NS__defaultsDeep, ___NS__defaultTo, ___NS__defer, ___NS__delay, ___NS__difference, ___NS__differenceBy, ___NS__differenceWith, ___NS__divide, ___NS__drop, ___NS__dropRight, ___NS__dropRightWhile, ___NS__dropWhile, ___NS__each, ___NS__eachRight, ___NS__endsWith, ___NS__entries, ___NS__entriesIn, ___NS__eq, ___NS__escape, ___NS__escapeRegExp, ___NS__every, ___NS__extend, ___NS__extendWith, ___NS__fill, ___NS__filter, ___NS__find, ___NS__findIndex, ___NS__findKey, ___NS__findLast, ___NS__findLastIndex, ___NS__findLastKey, ___NS__first, ___NS__flatMap, ___NS__flatMapDeep, ___NS__flatMapDepth, ___NS__flatten, ___NS__flattenDeep, ___NS__flattenDepth, ___NS__flip, ___NS__floor, ___NS__flow, ___NS__flowRight, ___NS__forEach, ___NS__forEachRight, ___NS__forIn, ___NS__forInRight, ___NS__forOwn, ___NS__forOwnRight, ___NS__fromPairs, ___NS__functions, ___NS__functionsIn, ___NS__get, ___NS__groupBy, ___NS__gt, ___NS__gte, ___NS__has, ___NS__hasIn, ___NS__head, ___NS__identity, ___NS__includes, ___NS__indexOf, ___NS__initial, ___NS__inRange, ___NS__intersection, ___NS__intersectionBy, ___NS__intersectionWith, ___NS__invert, ___NS__invertBy, ___NS__invoke, ___NS__invokeMap, ___NS__isArguments, ___NS__isArray, ___NS__isArrayBuffer, ___NS__isArrayLike, ___NS__isArrayLikeObject, ___NS__isBoolean, ___NS__isBuffer, ___NS__isDate, ___NS__isElement, ___NS__isEmpty, ___NS__isEqual, ___NS__isEqualWith, ___NS__isError, ___NS__isFinite, ___NS__isFunction, ___NS__isInteger, ___NS__isLeafObject, ___NS__isLength, ___NS__isMap, ___NS__isMatch, ___NS__isMatchWith, ___NS__isNaN, ___NS__isNative, ___NS__isNil, ___NS__isNull, ___NS__isNumber, ___NS__isObject, ___NS__isObjectLike, ___NS__isPlainObject, ___NS__isRegExp, ___NS__isSafeInteger, ___NS__isSet, ___NS__isString, ___NS__isSymbol, ___NS__isTypedArray, ___NS__isUndefined, ___NS__isWeakMap, ___NS__isWeakSet, ___NS__iteratee, ___NS__join, ___NS__kebabCase, ___NS__keyBy, ___NS__keys, ___NS__keysIn, ___NS__last, ___NS__lastIndexOf, ___NS__lowerCase, ___NS__lowerFirst, ___NS__lt, ___NS__lte, ___NS__map, ___NS__mapKeys, ___NS__mapValues, ___NS__matches, ___NS__matchesProperty, ___NS__max, ___NS__maxBy, ___NS__mean, ___NS__meanBy, ___NS__memoize, ___NS__merge, ___NS__mergeWith, ___NS__method, ___NS__methodOf, ___NS__min, ___NS__minBy, ___NS__mixin, ___NS__multiply, ___NS__negate, ___NS__noop, ___NS__now, ___NS__nth, ___NS__nthArg, ___NS__omit, ___NS__omitBy, ___NS__once, ___NS__orderBy, ___NS__over, ___NS__overArgs, ___NS__overEvery, ___NS__overSome, ___NS__pad, ___NS__padEnd, ___NS__padStart, ___NS__parseInt, ___NS__partial, ___NS__partialRight, ___NS__partition, ___NS__pick, ___NS__pickBy, ___NS__property, ___NS__propertyOf, ___NS__pull, ___NS__pullAll, ___NS__pullAllBy, ___NS__pullAllWith, ___NS__pullAt, ___NS__random, ___NS__range, ___NS__rangeRight, ___NS__rearg, ___NS__reduce, ___NS__reduceRight, ___NS__reject, ___NS__remove, ___NS__repeat, ___NS__replace, ___NS__rest, ___NS__result, ___NS__reverse, ___NS__round, ___NS__sample, ___NS__sampleSize, ___NS__set, ___NS__setWith, ___NS__shuffle, ___NS__size, ___NS__slice, ___NS__snakeCase, ___NS__some, ___NS__sortBy, ___NS__sortedIndex, ___NS__sortedIndexBy, ___NS__sortedIndexOf, ___NS__sortedLastIndex, ___NS__sortedLastIndexBy, ___NS__sortedLastIndexOf, ___NS__sortedUniq, ___NS__sortedUniqBy, ___NS__split, ___NS__spread, ___NS__startCase, ___NS__startsWith, ___NS__stubArray, ___NS__stubFalse, ___NS__stubObject, ___NS__stubString, ___NS__stubTrue, ___NS__subtract, ___NS__sum, ___NS__sumBy, ___NS__tail, ___NS__take, ___NS__takeRight, ___NS__takeRightWhile, ___NS__takeWhile, ___NS__tap, ___NS__template, ___NS__templateSettings, ___NS__throttle, ___NS__thru, ___NS__times, ___NS__toArray, ___NS__toFinite, ___NS__toInteger, ___NS__toLength, ___NS__toLower, ___NS__toNumber, ___NS__toPairs, ___NS__toPairsIn, ___NS__toPath, ___NS__toPlainObject, ___NS__toSafeInteger, ___NS__toString, ___NS__toUpper, ___NS__transform, ___NS__trim, ___NS__trimEnd, ___NS__trimStart, ___NS__truncate, ___NS__unary, ___NS__unescape, ___NS__union, ___NS__unionBy, ___NS__unionWith, ___NS__uniq, ___NS__uniqBy, ___NS__uniqueId, ___NS__uniqWith, ___NS__unset, ___NS__unzip, ___NS__unzipWith, ___NS__update, ___NS__updateWith, ___NS__upperCase, ___NS__upperFirst, ___NS__values, ___NS__valuesIn, ___NS__without, ___NS__words, ___NS__wrap, ___NS__xor, ___NS__xorBy, ___NS__xorWith, ___NS__zip, ___NS__zipObject, ___NS__zipObjectDeep, ___NS__zipWith } from 'tnp-core/browser-prod';\n\n//namespace TaonCmsWebsiteFeatureUtils\n\n export function TaonCmsWebsiteFeatureUtils__NS__keyFromName(name: string): string {\n // Keep digits attached so \"Bachata P1\" produces \"bachata-p1\".\n return ___NS__deburr(name.trim())\n .replace(/([a-z0-9])([A-Z])/g, '$1-$2')\n .toLowerCase()\n .replace(/[^a-z0-9]+/g, '-')\n .replace(/^-|-$/g, '');\n }\n\n export function TaonCmsWebsiteFeatureUtils__NS__isActive(state: string): state is TaonCmsWebsiteFeatureModels__NS__TaonCmsWebsiteFeatureState {\n return state === 'active';\n }\n\n//end of namespace TaonCmsWebsiteFeatureUtils","//#region imports\nimport { ChangeDetectionStrategy, Component, DestroyRef, inject, signal } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatCheckboxModule } from '@angular/material/checkbox';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatInputModule } from '@angular/material/input';\nimport { Translation } from '@taon-dev/i18n/browser-prod';\nimport { Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\n\nimport { TaonCmsWebsiteFeatureApiService } from './taon-cms-website-feature/taon-cms-website-feature.api.service';\nimport type { TaonCmsWebsiteFeatureModels__NS__Feature, TaonCmsWebsiteFeatureModels__NS__TaonCmsWebsiteFeatureState } from './taon-cms-website-feature/taon-cms-website-feature.models';\nimport { TaonCmsWebsiteFeatureUtils__NS__isActive, TaonCmsWebsiteFeatureUtils__NS__keyFromName } from './taon-cms-website-feature/taon-cms-website-feature.utils';\n//#endregion\n\nconst t = Translation.for('src/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-features.component.ts', {\"src/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-features.component.html\":{\"en-US\":async () => (await import('./i18n/taon-cms-website-features.component.html.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-website-features.component.html.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-website-features.component.html.de-DE.i18n.data')).default},\"src/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-features.component.ts\":{\"en-US\":async () => (await import('./i18n/taon-cms-website-features.component.ts.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-website-features.component.ts.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-website-features.component.ts.de-DE.i18n.data')).default}} as any);\n\n@Component({\n selector: 'app-taon-cms-website-features',\n templateUrl: './taon-cms-website-features.component.html',\n styleUrls: ['./taon-cms-website-features.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [FormsModule, MatButtonModule, MatCheckboxModule, MatFormFieldModule, MatIconModule, MatInputModule],\n providers: [TaonCmsWebsiteFeatureApiService],\n})\nexport class TaonCmsWebsiteFeaturesComponent {\n t = t.for(this);\n private readonly taonCmsWebsiteFeatureApiService = inject(TaonCmsWebsiteFeatureApiService);\n private readonly destroyRef = inject(DestroyRef);\n readonly features = signal<TaonCmsWebsiteFeatureModels__NS__Feature[]>([]);\n readonly busy = signal(false);\n readonly loaded = signal(false);\n readonly error = signal('');\n readonly feedback = signal('');\n name = '';\n\n ngOnInit(): void {\n void this.reload();\n }\n\n async reload(): Promise<void> {\n await this.run(\n () => this.taonCmsWebsiteFeatureApiService.listFeatures(),\n this.t.gettext('Website features loaded.'),\n );\n }\n\n async addFeature(): Promise<void> {\n if (this.busy() || !this.loaded()) {\n return;\n }\n const key = TaonCmsWebsiteFeatureUtils__NS__keyFromName(this.name);\n this.error.set('');\n if (!key || !/^[a-z0-9]+(?:-[a-z0-9]+)*$/.test(key)) {\n this.error.set(this.t.gettext('Enter a feature name that produces a valid key.'));\n return;\n }\n if (this.features().some(feature => feature.key === key)) {\n this.error.set(this.t.gettext('A feature with this key already exists.'));\n return;\n }\n const saved = await this.run(\n () => this.taonCmsWebsiteFeatureApiService.addFeature(this.name),\n this.t.gettext('Feature added.'),\n );\n if (saved) {\n this.name = '';\n }\n }\n\n async toggle(feature: TaonCmsWebsiteFeatureModels__NS__Feature, enabled: boolean): Promise<void> {\n if (this.busy()) {\n return;\n }\n const previous = this.features();\n this.features.set(previous.map(row =>\n row.key === feature.key ? { ...row, enabled } : row,\n ));\n const saved = await this.run(\n () => this.taonCmsWebsiteFeatureApiService.setEnabled(feature.key, enabled),\n this.t.gettext('Feature saved.'),\n );\n if (!saved && !this.destroyRef.destroyed) {\n this.features.set(previous.map(row => ({ ...row })));\n }\n }\n\n async deleteFeature(feature: TaonCmsWebsiteFeatureModels__NS__Feature): Promise<void> {\n await this.run(\n () => this.taonCmsWebsiteFeatureApiService.deleteFeature(feature.key),\n this.t.gettext('Feature deleted. Missing features are enabled by default.'),\n );\n }\n\n async copyKey(key: string): Promise<void> {\n this.feedback.set('');\n this.error.set('');\n try {\n if (!navigator.clipboard) {\n throw new Error('Clipboard access is unavailable.');\n }\n await navigator.clipboard.writeText(key);\n this.feedback.set(this.t.gettext('Feature key copied.'));\n } catch (error: unknown) {\n console.error('[taon-cms-website-features] Unable to copy key', error);\n this.error.set(this.t.gettext('The feature key could not be copied.'));\n }\n }\n\n private async run(\n request: () => Promise<TaonCmsWebsiteFeatureModels__NS__Feature[]>,\n message: string,\n ): Promise<boolean> {\n if (this.busy()) {\n return false;\n }\n this.busy.set(true);\n this.error.set('');\n this.feedback.set('');\n try {\n const features = await request();\n if (!this.destroyRef.destroyed) {\n this.features.set(features);\n this.loaded.set(true);\n this.feedback.set(message);\n }\n return true;\n } catch (error: unknown) {\n console.error('[taon-cms-website-features] Request failed', error);\n if (!this.destroyRef.destroyed) {\n this.error.set(this.t.gettext('Website features could not be saved or loaded. Please try again.'));\n }\n return false;\n } finally {\n if (!this.destroyRef.destroyed) {\n this.busy.set(false);\n }\n }\n }\n}","<h1>{{ t.gettext('Website Features') }}</h1>\n@if (error()) {\n <p role=\"alert\">{{ error() }}</p>\n <button mat-button type=\"button\" [disabled]=\"busy()\" (click)=\"reload()\">\n {{ t.gettext('Reload features') }}\n </button>\n}\n<p role=\"status\" aria-live=\"polite\">{{ feedback() }}</p>\n<ul [attr.aria-busy]=\"busy()\">\n @for (feature of features(); track feature.key) {\n <li>\n <mat-checkbox\n [checked]=\"feature.enabled\"\n [disabled]=\"busy()\"\n [attr.aria-label]=\"feature.name\"\n (change)=\"toggle(feature, $event.checked)\" />\n <div class=\"feature-name\">\n <span>{{ feature.name }}</span>\n <small>{{ feature.key }}</small>\n </div>\n <button mat-icon-button type=\"button\"\n [attr.aria-label]=\"t.gettext('Copy feature key')\"\n (click)=\"copyKey(feature.key)\">\n <mat-icon>content_copy</mat-icon>\n </button>\n <button mat-icon-button type=\"button\" [disabled]=\"busy()\"\n [attr.aria-label]=\"t.gettext('Delete feature')\"\n (click)=\"deleteFeature(feature)\">\n <mat-icon>delete</mat-icon>\n </button>\n </li>\n }\n</ul>\n<form (ngSubmit)=\"addFeature()\">\n <mat-form-field class=\"flex-grow\">\n <mat-label>{{ t.gettext('Enter feature name') }}</mat-label>\n <input matInput name=\"featureName\" [(ngModel)]=\"name\"\n [disabled]=\"busy() || !loaded()\"\n [placeholder]=\"t.gettext('Enter feature name')\" />\n </mat-form-field>\n <button mat-flat-button type=\"submit\" class=\"flex\"\n [disabled]=\"busy() || !loaded() || !name.trim()\">\n {{ t.gettext('Add feature') }}\n </button>\n</form>\n","//namespace TaonCmsWebsiteFeaturesModels\n\n//end of namespace TaonCmsWebsiteFeaturesModels\n","//#region imports\nimport { Routes } from '@angular/router';\nimport { adminLazyRoute } from '@taon-dev/ui/browser-prod';\n//#endregion\n\nexport const TaonCmsWebsiteFeaturesRoutes: Routes = [\n {\n path: '',\n loadComponent: () =>\n import('./taon-cms-website-features.component').then(m => m.TaonCmsWebsiteFeaturesComponent),\n\n children: [\n // adminLazyRoute({\n // path: 'dashboard',\n // menuItem: 'Dashboard',\n // icon: 'dashboard',\n // expandable: false,\n // loader: () =>\n // import('./anothermodule.routes').then(m => m.DashboardRoutes),\n // }),\n ],\n },\n];\n\n/**\n * By default exporting TaonCmsWebsiteFeaturesRoutes,\n * the command `taon generate:app:routes`\n * will automatically add them to the root routes in ./src/app.ts.\n */\n// export default TaonCmsWebsiteFeaturesRoutes;","//#region imports\nimport { AsyncPipe } from '@angular/common';\nimport { ChangeDetectionStrategy, Component } from '@angular/core';\nimport { RouterOutlet } from '@angular/router';\nimport { Translation } from '@taon-dev/i18n/browser-prod';\nimport { Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\n//#endregion\n\nconst t = Translation.for('src/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-backoffice.component.ts', {\"src/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-backoffice.component.ts\":{\"en-US\":async () => (await import('./i18n/taon-cms-comments-backoffice.component.ts.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-comments-backoffice.component.ts.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-comments-backoffice.component.ts.de-DE.i18n.data')).default},\"src/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-backoffice.routes.ts\":{\"en-US\":async () => (await import('./i18n/taon-cms-comments-backoffice.routes.ts.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-comments-backoffice.routes.ts.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-comments-backoffice.routes.ts.de-DE.i18n.data')).default}} as any);\n\n@Component({\n selector: 'app-taon-cms-comments-backoffice',\n templateUrl: './taon-cms-comments-backoffice.component.html',\n styleUrls: ['./taon-cms-comments-backoffice.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [AsyncPipe, RouterOutlet],\n})\nexport class TaonCmsCommentsBackofficeComponent {\n t = t.for(this);\n}","<router-outlet></router-outlet>","//namespace TaonCmsCommentsBackofficeModels\n\n//end of namespace TaonCmsCommentsBackofficeModels\n","//#region imports\nimport { Routes } from '@angular/router';\nimport { adminLazyRoute } from '@taon-dev/ui/browser-prod';\nimport { Translation } from '@taon-dev/i18n/browser-prod';\nimport { Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\n//#endregion\n\nconst t = Translation.for('src/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-backoffice.routes.ts', {\"src/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-backoffice.component.ts\":{\"en-US\":async () => (await import('./i18n/taon-cms-comments-backoffice.component.ts.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-comments-backoffice.component.ts.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-comments-backoffice.component.ts.de-DE.i18n.data')).default},\"src/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-backoffice.routes.ts\":{\"en-US\":async () => (await import('./i18n/taon-cms-comments-backoffice.routes.ts.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-comments-backoffice.routes.ts.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-comments-backoffice.routes.ts.de-DE.i18n.data')).default}} as any);\n\nexport const TaonCmsCommentsBackofficeRoutes: Routes = [\n {\n path: '',\n loadComponent: () =>\n import('./taon-cms-comments-backoffice.component').then(\n m => m.TaonCmsCommentsBackofficeComponent,\n ),\n\n children: [\n {\n path: '',\n pathMatch: 'full',\n redirectTo: 'all-preview',\n },\n adminLazyRoute({\n path: 'all-preview',\n menuItem: t.signal.gettext('All comments'),\n icon: 'preview',\n expandable: false,\n loader: () =>\n import('./taon-cms-comments-all-preview-backoffice/taon-cms-comments-all-preview-backoffice.routes').then(\n c => c.TaonCmsCommentsAllPreviewBackofficeRoutes,\n ),\n }),\n adminLazyRoute({\n path: 'blocked',\n menuItem: t.signal.gettext('Blocked Users'),\n icon: 'voice_over_off',\n expandable: false,\n loader: () =>\n import('./taon-cms-comments-blocked-users/taon-cms-comments-blocked-users.routes').then(\n c => c.TaonCmsCommentsBlockedUsersRoutes,\n ),\n }),\n\n adminLazyRoute({\n path: 'filters',\n menuItem: t.signal.gettext('Filters'),\n icon: 'text_ad_off',\n expandable: false,\n loader: () =>\n import('./taon-cms-comments-filters-settings/taon-cms-comments-filters-settings.routes').then(\n c => c.TaonCmsCommentsFiltersSettingsRoutes,\n ),\n }),\n ],\n },\n];\n\n/**\n * By default exporting TaonCmsCommentsBackofficeRoutes,\n * the command `taon generate:app:routes`\n * will automatically add them to the root routes in ./src/app.ts.\n */\n// export default TaonCmsCommentsBackofficeRoutes;","import { ChangeDetectionStrategy, Component, inject } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { MatButtonModule } from '@angular/material/button';\nimport {\n MAT_DIALOG_DATA,\n MatDialogModule,\n MatDialogRef,\n} from '@angular/material/dialog';\nimport { MatRadioModule } from '@angular/material/radio';\nimport { Translation } from '@taon-dev/i18n/browser-prod';\nimport { Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\n\nconst t = Translation.for('src/lib/taon-posts/taon-cms-post/taon-cms-post-choice-dialog.component.ts', {\"src/lib/taon-posts/taon-cms-post/taon-cms-post-choice-dialog.component.html\":{\"en-US\":async () => (await import('./i18n/taon-cms-post-choice-dialog.component.html.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-post-choice-dialog.component.html.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-post-choice-dialog.component.html.de-DE.i18n.data')).default},\"src/lib/taon-posts/taon-cms-post/taon-cms-post-choice-dialog.component.ts\":{\"en-US\":async () => (await import('./i18n/taon-cms-post-choice-dialog.component.ts.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-post-choice-dialog.component.ts.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-post-choice-dialog.component.ts.de-DE.i18n.data')).default},\"src/lib/taon-posts/taon-cms-post/taon-cms-post-thumbnail.component.ts\":{\"en-US\":async () => (await import('./i18n/taon-cms-post-thumbnail.component.ts.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-post-thumbnail.component.ts.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-post-thumbnail.component.ts.de-DE.i18n.data')).default},\"src/lib/taon-posts/taon-cms-post/taon-cms-post.component.html\":{\"en-US\":async () => (await import('./i18n/taon-cms-post.component.html.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-post.component.html.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-post.component.html.de-DE.i18n.data')).default},\"src/lib/taon-posts/taon-cms-post/taon-cms-post.component.ts\":{\"en-US\":async () => (await import('./i18n/taon-cms-post.component.ts.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-post.component.ts.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-post.component.ts.de-DE.i18n.data')).default}} as any);\n\nexport interface TaonCmsPostChoiceDialogData<T extends string> {\n title: string;\n options: { value: T; label: string }[];\n selected: T;\n}\n\n@Component({\n selector: 'taon-cms-post-choice-dialog',\n templateUrl: './taon-cms-post-choice-dialog.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [FormsModule, MatButtonModule, MatDialogModule, MatRadioModule],\n})\nexport class TaonCmsPostChoiceDialogComponent<T extends string> {\n readonly t = t.for(this);\n\n readonly data =\n inject<TaonCmsPostChoiceDialogData<T>>(MAT_DIALOG_DATA);\n\n private readonly dialogRef =\n inject<MatDialogRef<TaonCmsPostChoiceDialogComponent<T>, T>>(\n MatDialogRef,\n );\n\n selected = this.data.selected;\n\n confirm(): void {\n this.dialogRef.close(this.selected);\n }\n\n cancel(): void {\n this.dialogRef.close();\n }\n}","<h2 mat-dialog-title>{{ data.title }}</h2>\n<mat-dialog-content>\n <mat-radio-group [(ngModel)]=\"selected\" [attr.aria-label]=\"data.title\">\n @for (option of data.options; track option.value) {\n <mat-radio-button [value]=\"option.value\">\n {{ option.label }}\n </mat-radio-button>\n }\n </mat-radio-group>\n</mat-dialog-content>\n<mat-dialog-actions align=\"end\">\n <button mat-button type=\"button\" (click)=\"cancel()\">\n {{ t.gettext('Cancel') }}\n </button>\n <button mat-flat-button type=\"button\" (click)=\"confirm()\">\n {{ t.gettext('OK') }}\n </button>\n</mat-dialog-actions>\n","import { DestroyRef, Directive, inject, signal } from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { MatDialog } from '@angular/material/dialog';\nimport { ActivatedRoute, Router } from '@angular/router';\nimport { MtxGridColumn } from '@ng-matero/extensions/grid';\nimport { Translation } from '@taon-dev/i18n/browser-prod';\nimport { TaonConfirmDialogComponent } from '@taon-dev/ui/browser-prod';\nimport { finalize, take } from 'rxjs';\nimport { Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\n\nimport { TaonCmsContentApiService } from '../../taon-cms-content/taon-cms-content-api.service';\nimport type { TaonCmsContentEntity } from '../../taon-cms-content/taon-cms-content.entity';\nimport { TaonCmsPostChoiceDialogComponent } from '../taon-cms-post/taon-cms-post-choice-dialog.component';\nimport type { TaonCmsPostChoiceDialogData } from '../taon-cms-post/taon-cms-post-choice-dialog.component';\n\nconst t = Translation.for('src/lib/taon-posts/taon-cms-posts-backoffice/taon-cms-post-table-actions.directive.ts', {\"src/lib/taon-posts/taon-cms-posts-backoffice/taon-cms-post-table-actions.directive.ts\":{\"en-US\":async () => (await import('./i18n/taon-cms-post-table-actions.directive.ts.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-post-table-actions.directive.ts.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-post-table-actions.directive.ts.de-DE.i18n.data')).default},\"src/lib/taon-posts/taon-cms-posts-backoffice/taon-cms-posts-backoffice.component.html\":{\"en-US\":async () => (await import('./i18n/taon-cms-posts-backoffice.component.html.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-posts-backoffice.component.html.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-posts-backoffice.component.html.de-DE.i18n.data')).default},\"src/lib/taon-posts/taon-cms-posts-backoffice/taon-cms-posts-backoffice.component.ts\":{\"en-US\":async () => (await import('./i18n/taon-cms-posts-backoffice.component.ts.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-posts-backoffice.component.ts.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-posts-backoffice.component.ts.de-DE.i18n.data')).default},\"src/lib/taon-posts/taon-cms-posts-backoffice/taon-cms-posts-backoffice.routes.ts\":{\"en-US\":async () => (await import('./i18n/taon-cms-posts-backoffice.routes.ts.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-posts-backoffice.routes.ts.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-posts-backoffice.routes.ts.de-DE.i18n.data')).default}} as any);\n\n@Directive()\nexport abstract class TaonCmsPostTableActions {\n private readonly actionsTranslation = t.for(this);\n\n readonly taonCmsContentApiService = inject(TaonCmsContentApiService);\n\n readonly deleting = signal<number | null>(null);\n\n readonly duplicating = signal(false);\n\n readonly error = signal('');\n\n protected readonly destroyRef = inject(DestroyRef);\n\n protected readonly postPath: string[] = [];\n\n protected readonly backContext: 'posts' | 'courses' = 'posts';\n\n private readonly dialog = inject(MatDialog);\n\n private readonly route = inject(ActivatedRoute);\n\n private readonly router = inject(Router);\n\n readonly actionsColumn: MtxGridColumn = {\n header: this.actionsTranslation.gettext('Actions'),\n field: 'actions',\n type: 'button',\n buttons: [\n {\n type: 'icon',\n icon: 'content_copy',\n tooltip: this.actionsTranslation.gettext('Duplicate post'),\n disabled: () => this.duplicating(),\n click: (post: TaonCmsContentEntity) => this.duplicate(post),\n },\n {\n type: 'icon',\n icon: 'open_in_new',\n tooltip: this.actionsTranslation.gettext('Post details'),\n click: (post: TaonCmsContentEntity) => this.openDetails(post),\n },\n {\n type: 'icon',\n icon: 'delete',\n tooltip: this.actionsTranslation.gettext(\n 'Archive or permanently delete post',\n ),\n disabled: () => this.deleting() !== null,\n click: (post: TaonCmsContentEntity) => this.delete(post),\n },\n ],\n };\n\n abstract reload(): void;\n\n add(): void {\n this.openPost('new');\n }\n\n openDetails(post: TaonCmsContentEntity): void {\n this.openPost(post.id);\n }\n\n private openPost(id: number | 'new'): void {\n const postsRoute = this.route.parent;\n if (!postsRoute) {\n this.error.set(\n this.actionsTranslation.gettext(\n 'The Post details route is unavailable.',\n ),\n );\n return;\n }\n void this.router\n .navigate([...this.postPath, id], {\n relativeTo: postsRoute,\n queryParams:\n this.backContext === 'courses'\n ? { postOrigin: 'courses' }\n : undefined,\n queryParamsHandling: 'preserve',\n })\n .catch(error => {\n console.error('[taon-cms-posts-backoffice] Unable to open post', error);\n this.error.set(\n this.actionsTranslation.gettext(\n 'The Post details route is unavailable.',\n ),\n );\n });\n }\n\n duplicate(post: TaonCmsContentEntity): void {\n if (this.duplicating()) {\n return;\n }\n this.duplicating.set(true);\n this.error.set('');\n this.taonCmsContentApiService\n .listRelatedPosts(post.id)\n .pipe(take(1), takeUntilDestroyed(this.destroyRef))\n .subscribe({\n next: children => {\n if (!children.length) {\n this.runDuplication(post, false);\n return;\n }\n const ref = this.dialog.open<\n TaonCmsPostChoiceDialogComponent<'single' | 'hierarchy'>,\n TaonCmsPostChoiceDialogData<'single' | 'hierarchy'>,\n 'single' | 'hierarchy'\n >(TaonCmsPostChoiceDialogComponent, {\n data: {\n title: this.actionsTranslation.gettext('Duplicate post'),\n options: [\n {\n value: 'single',\n label: this.actionsTranslation.gettext(\n 'Duplicate only this post',\n ),\n },\n {\n value: 'hierarchy',\n label: this.actionsTranslation.gettext(\n 'Duplicate this post and its children',\n ),\n },\n ],\n selected: 'single',\n },\n disableClose: true,\n });\n ref\n .afterClosed()\n .pipe(takeUntilDestroyed(this.destroyRef))\n .subscribe(choice => {\n if (!choice) {\n this.duplicating.set(false);\n return;\n }\n this.runDuplication(post, choice === 'hierarchy');\n });\n },\n error: (error: unknown) => {\n console.error(\n '[taon-cms-posts-backoffice] Unable to load children for duplication',\n error,\n );\n this.error.set(\n this.actionsTranslation.gettext(\n 'The post could not be duplicated. Please try again.',\n ),\n );\n this.duplicating.set(false);\n },\n });\n }\n\n private runDuplication(\n post: TaonCmsContentEntity,\n includeChildren: boolean,\n ): void {\n this.taonCmsContentApiService\n .duplicateContent(post.id, includeChildren)\n .pipe(\n takeUntilDestroyed(this.destroyRef),\n finalize(() => this.duplicating.set(false)),\n )\n .subscribe({\n next: duplicate => this.openDetails(duplicate),\n error: (error: unknown) => {\n console.error(\n '[taon-cms-posts-backoffice] Unable to duplicate post',\n error,\n );\n this.error.set(\n this.actionsTranslation.gettext(\n 'The post could not be duplicated. Please try again.',\n ),\n );\n },\n });\n }\n\n delete(post: TaonCmsContentEntity): void {\n if (this.deleting() !== null) {\n return;\n }\n this.deleting.set(post.id);\n const archived = post.status === 'archived';\n const ref = this.dialog.open(TaonConfirmDialogComponent, {\n data: {\n title: archived\n ? this.actionsTranslation.gettext('Permanently delete post?')\n : this.actionsTranslation.gettext('Archive post?'),\n message: archived\n ? this.actionsTranslation.gettext(\n 'This permanently deletes the post and its assets. This action cannot be undone.',\n )\n : this.actionsTranslation.gettext(\n 'This archives the post. It can be restored from its revisions.',\n ),\n confirmText: archived\n ? this.actionsTranslation.gettext('Permanently delete')\n : this.actionsTranslation.gettext('Delete'),\n },\n });\n ref\n .afterClosed()\n .pipe(takeUntilDestroyed(this.destroyRef))\n .subscribe(confirmed => {\n if (!confirmed) {\n this.deleting.set(null);\n return;\n }\n this.error.set('');\n if (archived) {\n this.taonCmsContentApiService\n .permanentlyDeleteContent(post.id, post.version)\n .pipe(\n takeUntilDestroyed(this.destroyRef),\n finalize(() => this.deleting.set(null)),\n )\n .subscribe({\n next: () => this.reload(),\n error: (error: unknown) => {\n console.error(\n '[taon-cms-posts-backoffice] Unable to delete post',\n error,\n );\n this.error.set(\n this.actionsTranslation.gettext(\n 'The post could not be deleted. Refresh the table before retrying.',\n ),\n );\n },\n });\n } else {\n this.taonCmsContentApiService\n .deleteContent(post.id, post.version)\n .pipe(\n takeUntilDestroyed(this.destroyRef),\n finalize(() => this.deleting.set(null)),\n )\n .subscribe({\n next: () => this.reload(),\n error: (error: unknown) => {\n console.error(\n '[taon-cms-posts-backoffice] Unable to delete post',\n error,\n );\n this.error.set(\n this.actionsTranslation.gettext(\n 'The post could not be deleted. Refresh the table before retrying.',\n ),\n );\n },\n });\n }\n });\n }\n}","import {\n ChangeDetectionStrategy,\n Component,\n DestroyRef,\n Input,\n OnInit,\n inject,\n output,\n signal,\n} from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MtxGridColumn } from '@ng-matero/extensions/grid';\nimport { Translation } from '@taon-dev/i18n/browser-prod';\nimport { TaonDatatableComponent } from '@taon-dev/ui/browser-prod';\nimport { finalize } from 'rxjs';\nimport { Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\n\nimport { TaonCmsContentApiService } from '../../taon-cms-content/taon-cms-content-api.service';\nimport type { TaonCmsContentEntity } from '../../taon-cms-content/taon-cms-content.entity';\n\nconst t = Translation.for('src/lib/taon-posts/taon-cms-course-backoffice/taon-cms-course-contents.component.ts', {\"src/lib/taon-posts/taon-cms-course-backoffice/taon-cms-course-backoffice.component.html\":{\"en-US\":async () => (await import('./i18n/taon-cms-course-backoffice.component.html.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-course-backoffice.component.html.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-course-backoffice.component.html.de-DE.i18n.data')).default},\"src/lib/taon-posts/taon-cms-course-backoffice/taon-cms-course-backoffice.component.ts\":{\"en-US\":async () => (await import('./i18n/taon-cms-course-backoffice.component.ts.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-course-backoffice.component.ts.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-course-backoffice.component.ts.de-DE.i18n.data')).default},\"src/lib/taon-posts/taon-cms-course-backoffice/taon-cms-course-contents.component.html\":{\"en-US\":async () => (await import('./i18n/taon-cms-course-contents.component.html.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-course-contents.component.html.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-course-contents.component.html.de-DE.i18n.data')).default},\"src/lib/taon-posts/taon-cms-course-backoffice/taon-cms-course-contents.component.ts\":{\"en-US\":async () => (await import('./i18n/taon-cms-course-contents.component.ts.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-course-contents.component.ts.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-course-contents.component.ts.de-DE.i18n.data')).default},\"src/lib/taon-posts/taon-cms-course-backoffice/taon-cms-course-cover.component.ts\":{\"en-US\":async () => (await import('./i18n/taon-cms-course-cover.component.ts.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-course-cover.component.ts.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-course-cover.component.ts.de-DE.i18n.data')).default}} as any);\n\n@Component({\n selector: 'taon-cms-course-contents',\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [MatButtonModule, TaonDatatableComponent],\n templateUrl: './taon-cms-course-contents.component.html',\n})\nexport class TaonCmsCourseContentsComponent implements OnInit {\n readonly t = t.for(this);\n\n @Input({ required: true })\n course!: TaonCmsContentEntity;\n\n @Input({ required: true })\n actionsColumn!: MtxGridColumn;\n\n private readonly api = inject(TaonCmsContentApiService);\n\n private readonly destroyRef = inject(DestroyRef);\n\n readonly posts = signal<TaonCmsContentEntity[]>([]);\n\n readonly loading = signal(false);\n\n readonly error = signal('');\n\n readonly copyFeedback = signal('');\n\n readonly versionLinks = signal<{\n publicVersionPost: TaonCmsContentEntity | null;\n privateVersionPost: TaonCmsContentEntity | null;\n } | null>(null);\n\n readonly versionLinksError = signal('');\n\n readonly editPostRequested = output<TaonCmsContentEntity>();\n\n columns: MtxGridColumn[] = [];\n\n ngOnInit(): void {\n this.columns = [\n { header: 'ID', field: 'id', sortable: true },\n { header: this.t.gettext('Title'), field: 'title', sortable: true },\n { header: this.t.gettext('Status'), field: 'status', sortable: true },\n this.actionsColumn,\n ];\n this.reload();\n void this.loadVersionLinks();\n }\n\n private async loadVersionLinks(): Promise<void> {\n this.versionLinksError.set('');\n try {\n this.versionLinks.set(await this.api.getPostVersions(this.course.id));\n } catch (error: unknown) {\n console.error(\n '[taon-cms-course-contents] Unable to load course version links',\n error,\n );\n this.versionLinksError.set(\n this.t.gettext('Course version links could not be loaded.'),\n );\n }\n }\n\n requestPostEditor(event: Event, post: TaonCmsContentEntity): void {\n event.preventDefault();\n this.editPostRequested.emit(post);\n }\n\n reload(): void {\n if (this.loading()) {\n return;\n }\n this.loading.set(true);\n this.error.set('');\n this.api.listRelatedPosts(this.course.id)\n .pipe(\n takeUntilDestroyed(this.destroyRef),\n finalize(() => this.loading.set(false)),\n )\n .subscribe({\n next: posts =>\n this.posts.set(posts.filter(post => post.status !== 'archived')),\n error: (error: unknown) => {\n console.error(\n '[taon-cms-course-contents] Unable to load related posts',\n error,\n );\n this.error.set(\n this.t.gettext('Course contents could not be loaded. Please retry.'),\n );\n },\n });\n }\n\n async copyCourseSlug(): Promise<void> {\n this.copyFeedback.set('');\n try {\n if (!navigator.clipboard) {\n throw new Error('Clipboard access is unavailable.');\n }\n await navigator.clipboard.writeText(this.course.slug);\n this.copyFeedback.set(this.t.gettext('Course slug copied.'));\n } catch (error: unknown) {\n console.error('[taon-cms-course-contents] Unable to copy course slug', error);\n this.copyFeedback.set(\n this.t.gettext('The course slug could not be copied.'),\n );\n }\n }\n}","<section [attr.aria-label]=\"t.gettext('Course contents')\">\n <h2>{{ t.gettext('Course contents') }}: {{ course.title }}</h2>\n <button\n mat-button\n type=\"button\"\n (click)=\"copyCourseSlug()\">\n {{ t.gettext('Copy slug: [[ slug ]]', { slug: course.slug }) }}\n </button>\n @if (copyFeedback()) {\n <p role=\"status\">{{ copyFeedback() }}</p>\n }\n @if (loading()) {\n <p role=\"status\">{{ t.gettext('Loading course contents...') }}</p>\n }\n @if (error()) {\n <p role=\"alert\">{{ error() }}</p>\n <button mat-button type=\"button\" (click)=\"reload()\">\n {{ t.gettext('Retry') }}\n </button>\n }\n @if (versionLinksError()) {\n <p role=\"alert\">{{ versionLinksError() }}</p>\n }\n @if (versionLinks()?.privateVersionPost; as privateVersionPost) {\n <p>\n {{ t.gettext('Link to private version of this course:') }}\n <a\n href=\"#\"\n (click)=\"requestPostEditor($event, privateVersionPost)\">\n {{ privateVersionPost.title }} [{{ privateVersionPost.slug }}]\n </a>\n </p>\n }\n @if (versionLinks()?.publicVersionPost; as publicVersionPost) {\n <p>\n {{ t.gettext('Link to public version of this course:') }}\n <a\n href=\"#\"\n (click)=\"requestPostEditor($event, publicVersionPost)\">\n {{ publicVersionPost.title }} [{{ publicVersionPost.slug }}]\n </a>\n </p>\n }\n <taon-datatable\n [pageSize]=\"posts().length || 1\"\n [data]=\"posts()\"\n [columns]=\"columns\"\n [showPaginator]=\"false\"\n [hideSearch]=\"true\"\n [hideAddButton]=\"true\">\n </taon-datatable>\n</section>\n","import { TaonCmsContentType } from '../../taon-cms-content/taon-cms-content.models';\n\nexport function defaultThumbnailKey(type: TaonCmsContentType): string {\n return `cms-placeholder:${type}`;\n}\n\nexport function defaultThumbnailUrl(key: string): string | null {\n const type = Object.values(TaonCmsContentType).find(\n value => key === defaultThumbnailKey(value),\n );\n if (!type) {\n return null;\n }\n const shapes: Record<TaonCmsContentType, string> = {\n normal:\n '<path d=\"M260 126h120v112H260z M280 152h80m-80 20h80m-80 20h52\" />',\n video:\n '<rect x=\"248\" y=\"132\" width=\"144\" height=\"100\" rx=\"16\"/><path d=\"m308 158 40 24-40 24z\"/>',\n audio: '<path d=\"M280 164v40m20-60v80m20-98v116m20-98v80m20-60v40\"/>',\n attachment:\n '<path d=\"M276 124h60l32 32v84h-92z M336 124v36h32m-70 30h48m-48 22h36\"/>',\n };\n const svg = `<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"640\" height=\"360\" viewBox=\"0 0 640 360\"><defs><linearGradient id=\"bg\" x2=\"1\" y2=\"1\"><stop stop-color=\"#eaf0ff\"/><stop offset=\"1\" stop-color=\"#e4f5f0\"/></linearGradient></defs><rect width=\"640\" height=\"360\" rx=\"24\" fill=\"url(#bg)\"/><circle cx=\"320\" cy=\"180\" r=\"112\" fill=\"#fff\" opacity=\".65\"/><g fill=\"none\" stroke=\"#52669a\" stroke-width=\"7\" stroke-linecap=\"round\" stroke-linejoin=\"round\">${shapes[type]}</g></svg>`;\n return `data:image/svg+xml,${encodeURIComponent(svg)}`;\n}\n\nexport function visiblePixelRatio(pixels: Uint8ClampedArray): number {\n let visible = 0;\n for (let index = 0; index < pixels.length; index += 4) {\n const luminance =\n 0.2126 * pixels[index] +\n 0.7152 * pixels[index + 1] +\n 0.0722 * pixels[index + 2];\n if (luminance > 18) {\n visible += 1;\n }\n }\n return pixels.length ? visible / (pixels.length / 4) : 0;\n}\n\nfunction videoEvent(\n video: HTMLVideoElement,\n event: string,\n action: () => void,\n): Promise<void> {\n return new Promise((resolve, reject) => {\n const cleanup = () => {\n clearTimeout(timeout);\n video.removeEventListener(event, done);\n video.removeEventListener('error', failed);\n };\n const done = () => {\n cleanup();\n resolve();\n };\n const failed = () => {\n cleanup();\n reject(new Error(video.error?.message || 'Video decoding failed.'));\n };\n const timeout = setTimeout(() => {\n cleanup();\n reject(new Error('Video decoding timed out.'));\n }, 15000);\n video.addEventListener(event, done, { once: true });\n video.addEventListener('error', failed, { once: true });\n try {\n action();\n } catch (error: unknown) {\n cleanup();\n reject(error);\n }\n });\n}\n\nexport async function generateVideoThumbnail(file: Blob): Promise<Blob> {\n const video = document.createElement('video');\n const url = URL.createObjectURL(file);\n try {\n video.muted = true;\n video.playsInline = true;\n video.preload = 'auto';\n await videoEvent(video, 'loadeddata', () => {\n video.src = url;\n video.load();\n });\n if (!video.videoWidth || !video.videoHeight) {\n throw new Error('The video has no decodable dimensions.');\n }\n const analysis = document.createElement('canvas');\n analysis.width = 64;\n analysis.height = Math.max(\n 1,\n Math.round((64 * video.videoHeight) / video.videoWidth),\n );\n const context = analysis.getContext('2d', { willReadFrequently: true });\n if (!context) {\n throw new Error('Canvas is unavailable.');\n }\n const seek = async (time: number) => {\n if (Math.abs(video.currentTime - time) > 0.001) {\n await videoEvent(video, 'seeked', () => {\n video.currentTime = time;\n });\n }\n };\n const end = Number.isFinite(video.duration)\n ? Math.min(5, Math.max(0, video.duration - 0.01))\n : 5;\n let bestTime = 0;\n let bestRatio = -1;\n let found = false;\n for (let time = 0; time <= end; time += 0.25) {\n await seek(time);\n context.drawImage(video, 0, 0, analysis.width, analysis.height);\n const ratio = visiblePixelRatio(\n context.getImageData(0, 0, analysis.width, analysis.height).data,\n );\n if (ratio > bestRatio) {\n bestRatio = ratio;\n bestTime = time;\n }\n // Small highlights or a subject in a dark scene are enough.\n if (ratio >= 0.02) {\n found = true;\n break;\n }\n }\n if (!found) {\n await seek(bestTime);\n }\n const canvas = document.createElement('canvas');\n const scale = Math.min(1, 1280 / video.videoWidth, 720 / video.videoHeight);\n canvas.width = Math.max(1, Math.round(video.videoWidth * scale));\n canvas.height = Math.max(1, Math.round(video.videoHeight * scale));\n const output = canvas.getContext('2d');\n if (!output) {\n throw new Error('Canvas is unavailable.');\n }\n output.drawImage(video, 0, 0, canvas.width, canvas.height);\n return await new Promise<Blob>((resolve, reject) => {\n canvas.toBlob(\n blob =>\n blob\n ? resolve(blob)\n : reject(new Error('Thumbnail encoding failed.')),\n 'image/webp',\n 0.85,\n );\n });\n } finally {\n try {\n video.pause();\n video.removeAttribute('src');\n video.load();\n } finally {\n URL.revokeObjectURL(url);\n }\n }\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n DestroyRef,\n Input,\n OnInit,\n inject,\n signal,\n} from '@angular/core';\nimport { MatButtonModule } from '@angular/material/button';\nimport { Translation } from '@taon-dev/i18n/browser-prod';\nimport { Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\n\nimport { TaonCmsContentApiService } from '../../taon-cms-content/taon-cms-content-api.service';\nimport type { TaonCmsContentEntity } from '../../taon-cms-content/taon-cms-content.entity';\nimport { defaultThumbnailUrl } from '../taon-cms-post/taon-cms-thumbnail';\n\nconst t = Translation.for('src/lib/taon-posts/taon-cms-course-backoffice/taon-cms-course-cover.component.ts', {\"src/lib/taon-posts/taon-cms-course-backoffice/taon-cms-course-backoffice.component.html\":{\"en-US\":async () => (await import('./i18n/taon-cms-course-backoffice.component.html.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-course-backoffice.component.html.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-course-backoffice.component.html.de-DE.i18n.data')).default},\"src/lib/taon-posts/taon-cms-course-backoffice/taon-cms-course-backoffice.component.ts\":{\"en-US\":async () => (await import('./i18n/taon-cms-course-backoffice.component.ts.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-course-backoffice.component.ts.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-course-backoffice.component.ts.de-DE.i18n.data')).default},\"src/lib/taon-posts/taon-cms-course-backoffice/taon-cms-course-contents.component.html\":{\"en-US\":async () => (await import('./i18n/taon-cms-course-contents.component.html.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-course-contents.component.html.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-course-contents.component.html.de-DE.i18n.data')).default},\"src/lib/taon-posts/taon-cms-course-backoffice/taon-cms-course-contents.component.ts\":{\"en-US\":async () => (await import('./i18n/taon-cms-course-contents.component.ts.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-course-contents.component.ts.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-course-contents.component.ts.de-DE.i18n.data')).default},\"src/lib/taon-posts/taon-cms-course-backoffice/taon-cms-course-cover.component.ts\":{\"en-US\":async () => (await import('./i18n/taon-cms-course-cover.component.ts.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-course-cover.component.ts.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-course-cover.component.ts.de-DE.i18n.data')).default}} as any);\n\n@Component({\n selector: 'taon-cms-course-cover',\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [MatButtonModule],\n templateUrl: './taon-cms-course-cover.component.html',\n styles: [`\n :host {\n display: block;\n }\n img {\n display: block;\n max-height: 50px;\n max-width: 90px;\n width: auto;\n height: auto;\n object-fit: contain;\n }\n `],\n})\nexport class TaonCmsCourseCoverComponent implements OnInit {\n readonly t = t.for(this);\n\n @Input({ required: true })\n post!: TaonCmsContentEntity;\n\n private readonly api = inject(TaonCmsContentApiService);\n\n private readonly destroyRef = inject(DestroyRef);\n\n readonly url = signal('');\n\n readonly loading = signal(false);\n\n readonly error = signal('');\n\n ngOnInit(): void {\n void this.reload();\n }\n\n async reload(): Promise<void> {\n if (this.loading()) {\n return;\n }\n this.loading.set(true);\n this.url.set('');\n this.error.set('');\n try {\n const url =\n defaultThumbnailUrl(this.post.thumbnailKey ?? '') ??\n await this.api.getThumbnailLinkBySlug(this.post.slug);\n if (!url) {\n throw new Error('The thumbnail URL is empty.');\n }\n if (!this.destroyRef.destroyed) {\n this.url.set(url);\n }\n } catch (error: unknown) {\n console.error('[taon-cms-course-cover] Unable to load thumbnail', error);\n if (!this.destroyRef.destroyed) {\n this.failed();\n }\n } finally {\n if (!this.destroyRef.destroyed) {\n this.loading.set(false);\n }\n }\n }\n\n failed(): void {\n this.url.set('');\n this.error.set(this.t.gettext('Cover unavailable. Retry'));\n }\n}","@if (url()) {\n <img [src]=\"url()\" [alt]=\"post.title\" (error)=\"failed()\" />\n}\n@if (error()) {\n <button mat-button type=\"button\" (click)=\"reload()\">{{ error() }}</button>\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n OnInit,\n TemplateRef,\n ViewChild,\n signal,\n} from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { FormsModule } from '@angular/forms';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatInputModule } from '@angular/material/input';\nimport { MatSelectModule } from '@angular/material/select';\nimport { MtxGridColumn } from '@ng-matero/extensions/grid';\nimport { TaonDatatableComponent } from '@taon-dev/ui/browser-prod';\nimport { Translation } from '@taon-dev/i18n/browser-prod';\nimport { finalize } from 'rxjs';\nimport { Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\n\nimport { TaonCmsContentApiService } from '../../taon-cms-content/taon-cms-content-api.service';\nimport type { TaonCmsContentEntity } from '../../taon-cms-content/taon-cms-content.entity';\nimport { TaonCmsPostTableActions } from '../taon-cms-posts-backoffice/taon-cms-post-table-actions.directive';\n\nimport { TaonCmsCourseContentsComponent } from './taon-cms-course-contents.component';\nimport { TaonCmsCourseCoverComponent } from './taon-cms-course-cover.component';\n\nconst t = Translation.for('src/lib/taon-posts/taon-cms-course-backoffice/taon-cms-course-backoffice.component.ts', {\"src/lib/taon-posts/taon-cms-course-backoffice/taon-cms-course-backoffice.component.html\":{\"en-US\":async () => (await import('./i18n/taon-cms-course-backoffice.component.html.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-course-backoffice.component.html.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-course-backoffice.component.html.de-DE.i18n.data')).default},\"src/lib/taon-posts/taon-cms-course-backoffice/taon-cms-course-backoffice.component.ts\":{\"en-US\":async () => (await import('./i18n/taon-cms-course-backoffice.component.ts.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-course-backoffice.component.ts.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-course-backoffice.component.ts.de-DE.i18n.data')).default},\"src/lib/taon-posts/taon-cms-course-backoffice/taon-cms-course-contents.component.html\":{\"en-US\":async () => (await import('./i18n/taon-cms-course-contents.component.html.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-course-contents.component.html.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-course-contents.component.html.de-DE.i18n.data')).default},\"src/lib/taon-posts/taon-cms-course-backoffice/taon-cms-course-contents.component.ts\":{\"en-US\":async () => (await import('./i18n/taon-cms-course-contents.component.ts.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-course-contents.component.ts.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-course-contents.component.ts.de-DE.i18n.data')).default},\"src/lib/taon-posts/taon-cms-course-backoffice/taon-cms-course-cover.component.ts\":{\"en-US\":async () => (await import('./i18n/taon-cms-course-cover.component.ts.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-course-cover.component.ts.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-course-cover.component.ts.de-DE.i18n.data')).default}} as any);\n\n@Component({\n selector: 'taon-cms-course-backoffice',\n templateUrl: './taon-cms-course-backoffice.component.html',\n styleUrls: ['./taon-cms-course-backoffice.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [\n FormsModule,\n MatButtonModule,\n MatFormFieldModule,\n MatIconModule,\n MatInputModule,\n MatSelectModule,\n TaonDatatableComponent,\n TaonCmsCourseContentsComponent,\n TaonCmsCourseCoverComponent,\n ],\n providers: [TaonCmsContentApiService],\n})\nexport class TaonCmsCourseBackofficeComponent\n extends TaonCmsPostTableActions\n implements OnInit {\n readonly t = t.for(this);\n\n @ViewChild(TaonDatatableComponent)\n readonly datatable!: TaonDatatableComponent;\n\n @ViewChild('coverTemplate', { static: true })\n readonly coverTemplate!: TemplateRef<unknown>;\n\n @ViewChild('visibilityTemplate', { static: true })\n readonly visibilityTemplate!: TemplateRef<unknown>;\n\n protected override readonly postPath = ['../posts'];\n\n protected override readonly backContext = 'courses' as const;\n\n readonly courses = signal<TaonCmsContentEntity[]>([]);\n\n readonly loading = signal(false);\n\n columns: MtxGridColumn[] = [];\n\n ngOnInit(): void {\n this.columns = [\n { header: 'ID', field: 'id', sortable: true, showExpand: true },\n {\n header: this.t.gettext('Cover'),\n field: 'thumbnailKey',\n cellTemplate: this.coverTemplate,\n width: '110px',\n },\n { header: this.t.gettext('Title'), field: 'title', sortable: true },\n {\n header: this.t.gettext('Visibility'),\n field: 'status',\n sortable: true,\n cellTemplate: this.visibilityTemplate,\n },\n this.actionsColumn,\n ].map(column => ({\n ...column,\n class: (post: TaonCmsContentEntity) =>\n post?.status === 'published' ? 'cms-course-public' : 'cms-course-private',\n }));\n this.reload();\n }\n\n reload(): void {\n if (this.loading()) {\n return;\n }\n this.loading.set(true);\n this.error.set('');\n this.taonCmsContentApiService.listCourses()\n .pipe(\n takeUntilDestroyed(this.destroyRef),\n finalize(() => this.loading.set(false)),\n )\n .subscribe({\n next: courses => this.courses.set(courses),\n error: (error: unknown) => {\n console.error(\n '[taon-cms-course-backoffice] Unable to load courses',\n error,\n );\n this.error.set(\n this.t.gettext('Courses could not be loaded. Please try reloading.'),\n );\n },\n });\n }\n}","<h1>{{ t.gettext('Courses') }}</h1>\n<h2 style=\"color: goldenrod;\">{{ t.gettext('A course is a post with related posts and a thumbnail. Any post that is not archived can be a course.') }}</h2>\n<button mat-button type=\"button\" [disabled]=\"loading()\" (click)=\"reload()\">\n {{ t.gettext('Reload courses') }}\n</button>\n@if (loading()) {\n <p role=\"status\">{{ t.gettext('Loading courses...') }}</p>\n}\n@if (error()) {\n <p role=\"alert\">{{ error() }}</p>\n}\n<taon-datatable\n [data]=\"courses()\"\n [columns]=\"columns\"\n [allowedColumns]=\"['id', 'title', 'status']\"\n tableId=\"cms-courses\"\n storeTableFilters=\"query-params\"\n [filtersTemplate]=\"filtersTemplate\"\n [hideAddButton]=\"true\"\n searchMode=\"advanced\"\n [expansionTemplate]=\"expansionTemplate\">\n</taon-datatable>\n<ng-template #coverTemplate let-post>\n <taon-cms-course-cover [post]=\"post\"></taon-cms-course-cover>\n</ng-template>\n<ng-template #visibilityTemplate let-post>\n <span class=\"visibility\">\n <mat-icon aria-hidden=\"true\">\n {{ post.status === 'published' ? 'lock_open' : 'lock' }}\n </mat-icon>\n {{ post.status === 'published' ? t.gettext('Public') : t.gettext('Private') }}\n </span>\n</ng-template>\n<ng-template #expansionTemplate let-course>\n <taon-cms-course-contents\n [course]=\"course\"\n [actionsColumn]=\"actionsColumn\"\n (editPostRequested)=\"openDetails($event)\">\n </taon-cms-course-contents>\n</ng-template>\n<ng-template\n #filtersTemplate\n let-filters=\"filters\">\n <mat-form-field appearance=\"outline\">\n <mat-label>{{ t.gettext('ID') }}</mat-label>\n <input\n matInput\n [(ngModel)]=\"filters.id\"\n (keyup.enter)=\"datatable.applyAdvancedFilters()\" />\n </mat-form-field>\n <mat-form-field appearance=\"outline\">\n <mat-label>{{ t.gettext('Title') }}</mat-label>\n <input\n matInput\n [(ngModel)]=\"filters.title\"\n (keyup.enter)=\"datatable.applyAdvancedFilters()\" />\n </mat-form-field>\n <mat-form-field appearance=\"outline\">\n <mat-label>{{ t.gettext('Visibility') }}</mat-label>\n <mat-select [(ngModel)]=\"filters.status\">\n <mat-option value=\"published\">{{ t.gettext('Public') }}</mat-option>\n <mat-option value=\"draft\">{{ t.gettext('Private') }}</mat-option>\n </mat-select>\n </mat-form-field>\n</ng-template>\n","//namespace TaonCmsCourseBackofficeModels\n\n//end of namespace TaonCmsCourseBackofficeModels\n","import { Routes } from '@angular/router';\n\nexport const TaonCmsCourseBackofficeRoutes: Routes = [\n {\n path: '',\n pathMatch: 'full',\n loadComponent: () =>\n import('./taon-cms-course-backoffice.component').then(\n m => m.TaonCmsCourseBackofficeComponent,\n ),\n },\n];\n","import JSZip from 'jszip';\n\nconst DOC_COMPOUND_SIGNATURE = [\n 0xd0, 0xcf, 0x11, 0xe0, 0xa1, 0xb1, 0x1a, 0xe1,\n];\nconst END_OF_CHAIN = 0xfffffffe;\nconst FREE_SECTOR = 0xffffffff;\n\nexport async function extractDocumentHtml(file: File): Promise<string> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n}\n\nasync function readRtf(file: File): Promise<string> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n}\n\nasync function extractDocxParagraphs(file: File): Promise<string[]> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n}\n\nfunction extractDocParagraphs(bytes: Uint8Array): string[] {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n}\n\nfunction readCompoundFile(bytes: Uint8Array): Map<string, Uint8Array> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n}\n\nfunction parseRtf(rtf: string): string {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n}\n\nfunction textParagraphs(text: string): string[] {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n}\n\nfunction escapeHtml(text: string): string {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n}\n\nfunction concat(chunks: Uint8Array[]): Uint8Array {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n}\n","import {\n Directive,\n ElementRef,\n EventEmitter,\n HostListener,\n Input,\n Output,\n SecurityContext,\n inject,\n} from '@angular/core';\nimport { DomSanitizer } from '@angular/platform-browser';\n\n@Directive({\n selector: '[taonCmsEditable]',\n})\nexport class TaonCmsEditableDirective {\n private readonly element = inject<ElementRef<HTMLElement>>(ElementRef)\n .nativeElement;\n private readonly sanitizer = inject(DomSanitizer);\n private value = '';\n private composing = false;\n\n @Input() taonCmsEditableFormat: 'text' | 'html' = 'text';\n @Input() taonCmsEditableSingleLine = false;\n @Output() readonly taonCmsEditableChange = new EventEmitter<string>();\n\n @Input()\n set taonCmsEditable(value: string) {\n if (value === this.value) {\n return;\n }\n this.value = value;\n this.render();\n }\n\n @HostListener('compositionstart')\n compositionStart(): void {\n this.composing = true;\n }\n\n @HostListener('compositionend')\n compositionEnd(): void {\n this.composing = false;\n this.onInput();\n }\n\n @HostListener('input')\n onInput(): void {\n if (this.composing) {\n return;\n }\n const text = this.element.innerText;\n this.value =\n this.taonCmsEditableFormat === 'html'\n ? this.sanitize(this.element.innerHTML)\n : this.taonCmsEditableSingleLine\n ? text.replace(/\\s*\\n\\s*/g, ' ')\n : text;\n // Remember emitted values so Angular does not rewrite the DOM/caret on input.\n this.taonCmsEditableChange.emit(this.value);\n }\n\n @HostListener('blur')\n onBlur(): void {\n this.onInput();\n this.render();\n }\n\n @HostListener('keydown', ['$event'])\n onKeydown(event: KeyboardEvent): void {\n if (this.taonCmsEditableSingleLine && event.key === 'Enter') {\n event.preventDefault();\n }\n }\n\n @HostListener('paste', ['$event'])\n onPaste(event: ClipboardEvent): void {\n event.preventDefault();\n const selection = this.element.ownerDocument.getSelection();\n if (!selection?.rangeCount || !event.clipboardData) {\n return;\n }\n const range = selection.getRangeAt(0);\n if (!this.element.contains(range.commonAncestorContainer)) {\n return;\n }\n const pasted = event.clipboardData.getData('text/plain');\n const text = this.taonCmsEditableSingleLine\n ? pasted.replace(/\\s*\\n\\s*/g, ' ')\n : pasted;\n range.deleteContents();\n const node = this.element.ownerDocument.createTextNode(text);\n range.insertNode(node);\n range.setStartAfter(node);\n range.collapse(true);\n selection.removeAllRanges();\n selection.addRange(range);\n this.onInput();\n }\n\n private sanitize(value: string): string {\n return this.sanitizer.sanitize(SecurityContext.HTML, value) ?? '';\n }\n\n private render(): void {\n if (this.taonCmsEditableFormat === 'html') {\n this.element.innerHTML = this.sanitize(this.value);\n } else {\n this.element.textContent = this.value;\n }\n }\n}\n","import { ChangeDetectionStrategy, Component, effect, inject, input, signal } from '@angular/core';\nimport { Translation } from '@taon-dev/i18n/browser-prod';\nimport { Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\n\nimport { TaonCmsContentApiService } from '../../taon-cms-content/taon-cms-content-api.service';\nimport type { TaonCmsContentEntity } from '../../taon-cms-content/taon-cms-content.entity';\nimport { defaultThumbnailUrl } from './taon-cms-thumbnail';\n\nconst t = Translation.for('src/lib/taon-posts/taon-cms-post/taon-cms-post-thumbnail.component.ts', {\"src/lib/taon-posts/taon-cms-post/taon-cms-post-choice-dialog.component.html\":{\"en-US\":async () => (await import('./i18n/taon-cms-post-choice-dialog.component.html.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-post-choice-dialog.component.html.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-post-choice-dialog.component.html.de-DE.i18n.data')).default},\"src/lib/taon-posts/taon-cms-post/taon-cms-post-choice-dialog.component.ts\":{\"en-US\":async () => (await import('./i18n/taon-cms-post-choice-dialog.component.ts.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-post-choice-dialog.component.ts.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-post-choice-dialog.component.ts.de-DE.i18n.data')).default},\"src/lib/taon-posts/taon-cms-post/taon-cms-post-thumbnail.component.ts\":{\"en-US\":async () => (await import('./i18n/taon-cms-post-thumbnail.component.ts.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-post-thumbnail.component.ts.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-post-thumbnail.component.ts.de-DE.i18n.data')).default},\"src/lib/taon-posts/taon-cms-post/taon-cms-post.component.html\":{\"en-US\":async () => (await import('./i18n/taon-cms-post.component.html.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-post.component.html.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-post.component.html.de-DE.i18n.data')).default},\"src/lib/taon-posts/taon-cms-post/taon-cms-post.component.ts\":{\"en-US\":async () => (await import('./i18n/taon-cms-post.component.ts.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-post.component.ts.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-post.component.ts.de-DE.i18n.data')).default}} as any);\n\n@Component({\n selector: 'taon-cms-post-thumbnail',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n @if (url()) {\n <img [src]=\"url()\" [alt]=\"post().title\" />\n }\n @if (error()) {\n <span role=\"alert\">{{ error() }}</span>\n }\n `,\n styles: [`\n :host { display: inline-flex; vertical-align: middle; }\n img { max-height: 50px; max-width: 100%; width: auto; height: auto; object-fit: contain; }\n `],\n})\nexport class TaonCmsPostThumbnailComponent {\n readonly t = t.for(this);\n readonly post = input.required<TaonCmsContentEntity>();\n readonly url = signal('');\n readonly error = signal('');\n private readonly taonCmsContentApiService = inject(TaonCmsContentApiService);\n\n constructor() {\n effect(onCleanup => {\n const key = this.post().thumbnailKey;\n let active = true;\n onCleanup(() => { active = false; });\n this.url.set('');\n this.error.set('');\n if (!key) {\n return;\n }\n const placeholder = defaultThumbnailUrl(key);\n if (placeholder) {\n this.url.set(placeholder);\n return;\n }\n void this.taonCmsContentApiService.getAssetUrl(key)\n .then(url => {\n if (active) {\n this.url.set(url);\n }\n })\n .catch((error: unknown) => {\n console.error('[taon-cms-post-thumbnail] Unable to load thumbnail', error);\n if (active) {\n this.error.set(this.t.gettext('The thumbnail could not be loaded.'));\n }\n });\n });\n }\n}","import { DatePipe } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n DestroyRef,\n HostListener,\n inject,\n signal,\n} from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { MatButtonModule } from '@angular/material/button';\nimport {\n MAT_DIALOG_DATA,\n MatDialogModule,\n MatDialogRef,\n} from '@angular/material/dialog';\nimport { MatRadioModule } from '@angular/material/radio';\nimport { Translation } from '@taon-dev/i18n/browser-prod';\nimport { finalize } from 'rxjs';\nimport { Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\n\nimport type { TaonCmsContentEntity } from '../../taon-cms-content/taon-cms-content.entity';\nimport { TaonCmsContentRevisionApiService } from '../../taon-cms-content-revision/taon-cms-content-revision-api.service';\nimport type { TaonCmsContentRevisionEntity } from '../../taon-cms-content-revision/taon-cms-content-revision.entity';\n\nconst t = Translation.for('src/lib/taon-posts/taon-cms-revision-chooser/taon-cms-revision-chooser.component.ts', {\"src/lib/taon-posts/taon-cms-revision-chooser/taon-cms-revision-chooser.component.html\":{\"en-US\":async () => (await import('./i18n/taon-cms-revision-chooser.component.html.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-revision-chooser.component.html.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-revision-chooser.component.html.de-DE.i18n.data')).default},\"src/lib/taon-posts/taon-cms-revision-chooser/taon-cms-revision-chooser.component.ts\":{\"en-US\":async () => (await import('./i18n/taon-cms-revision-chooser.component.ts.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-revision-chooser.component.ts.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-revision-chooser.component.ts.de-DE.i18n.data')).default}} as any);\n\n@Component({\n selector: 'taon-cms-revision-chooser',\n templateUrl: './taon-cms-revision-chooser.component.html',\n styleUrls: ['./taon-cms-revision-chooser.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [DatePipe, MatButtonModule, MatDialogModule, MatRadioModule],\n providers: [TaonCmsContentRevisionApiService],\n})\nexport class TaonCmsRevisionChooserComponent {\n readonly t = t.for(this);\n\n readonly post = inject<TaonCmsContentEntity>(MAT_DIALOG_DATA);\n\n readonly revisions = signal<TaonCmsContentRevisionEntity[]>([]);\n\n readonly selected = signal<number | null>(null);\n\n readonly loading = signal(false);\n\n readonly applying = signal(false);\n\n readonly error = signal('');\n\n private readonly api = inject(TaonCmsContentRevisionApiService);\n\n private readonly ref = inject(\n MatDialogRef<TaonCmsRevisionChooserComponent, TaonCmsContentEntity>,\n );\n\n private readonly destroyRef = inject(DestroyRef);\n\n constructor() {\n this.load();\n }\n\n @HostListener('document:keydown.escape', ['$event'])\n onEscape(event: KeyboardEvent): void {\n event.stopPropagation();\n this.ref.close();\n }\n\n load(): void {\n if (this.loading() || this.applying()) {\n return;\n }\n this.selected.set(null);\n this.loading.set(true);\n this.error.set('');\n this.api\n .listRevisions(this.post.id)\n .pipe(\n takeUntilDestroyed(this.destroyRef),\n finalize(() => this.loading.set(false)),\n )\n .subscribe({\n next: revisions =>\n this.revisions.set(\n [...revisions].sort((a, b) => b.revisionNumber - a.revisionNumber),\n ),\n error: (error: unknown) => {\n console.error(\n '[taon-cms-revision-chooser] Unable to load revisions',\n error,\n );\n this.error.set(\n this.t.gettext('Revisions could not be loaded. Please try again.'),\n );\n },\n });\n }\n\n apply(): void {\n const revisionNumber = this.selected();\n if (this.loading() || this.applying()) {\n return;\n }\n if (revisionNumber === null) {\n this.error.set(this.t.gettext('Select a revision to restore.'));\n return;\n }\n this.applying.set(true);\n this.error.set('');\n this.api\n .restoreContent(this.post.id, {\n revisionNumber,\n expectedVersion: this.post.version,\n })\n .pipe(\n takeUntilDestroyed(this.destroyRef),\n finalize(() => this.applying.set(false)),\n )\n .subscribe({\n next: post => this.ref.close(post),\n error: (error: unknown) => {\n console.error(\n '[taon-cms-revision-chooser] Unable to restore revision',\n error,\n );\n this.error.set(\n this.t.gettext(\n 'The revision could not be restored. If the post changed, close and reopen it to load its latest version.',\n ),\n );\n },\n });\n }\n\n cancel(): void {\n if (!this.applying()) {\n this.ref.close();\n }\n }\n}","<h2 mat-dialog-title>{{ t.gettext('Restore a revision') }}</h2>\n<mat-dialog-content>\n <p>\n {{\n t.gettext(\n 'Restoring replaces the post, including its status, with the selected revision.'\n )\n }}\n </p>\n @if (loading()) {\n <p role=\"status\">{{ t.gettext('Loading revisions...') }}</p>\n } @else {\n <mat-radio-group\n [attr.aria-label]=\"t.gettext('Post revisions')\"\n [value]=\"selected()\"\n (change)=\"selected.set($event.value)\"\n [disabled]=\"applying()\">\n @for (revision of revisions(); track revision.id) {\n <mat-radio-button\n [value]=\"revision.revisionNumber\"\n [disabled]=\"!revision.snapshot\">\n <strong>{{\n t.gettext('Revision [[ revisionNumber ]]', {\n revisionNumber: revision.revisionNumber,\n })\n }}</strong>\n <span>{{ revision.createdAt | date: 'medium' }}</span>\n @if (\n revision.createdByUserId !== null &&\n revision.createdByUserId !== undefined\n ) {\n <span>{{\n t.gettext('User [[ userId ]]', {\n userId: revision.createdByUserId,\n })\n }}</span>\n }\n @if (!revision.snapshot) {\n <span>{{ t.gettext('Legacy revision - cannot be restored') }}</span>\n }\n </mat-radio-button>\n } @empty {\n <p>{{ t.gettext('No revisions are available.') }}</p>\n }\n </mat-radio-group>\n }\n @if (error()) {\n <p role=\"alert\">{{ error() }}</p>\n <button\n mat-button\n type=\"button\"\n [disabled]=\"loading() || applying()\"\n (click)=\"load()\">\n {{ t.gettext('Reload revisions') }}\n </button>\n }\n @if (applying()) {\n <p role=\"status\">{{ t.gettext('Restoring...') }}</p>\n }\n</mat-dialog-content>\n<mat-dialog-actions align=\"end\">\n <button\n mat-button\n type=\"button\"\n [disabled]=\"applying()\"\n (click)=\"cancel()\">\n {{ t.gettext('Cancel') }}\n </button>\n <button\n mat-flat-button\n type=\"button\"\n [disabled]=\"loading() || applying() || selected() === null\"\n (click)=\"apply()\">\n {{ t.gettext('Apply') }}\n </button>\n</mat-dialog-actions>\n","import {\n ChangeDetectionStrategy,\n Component,\n DestroyRef,\n computed,\n inject,\n signal,\n} from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { MatButtonModule } from '@angular/material/button';\nimport {\n MAT_DIALOG_DATA,\n MatDialogModule,\n MatDialogRef,\n} from '@angular/material/dialog';\nimport { MatRadioModule } from '@angular/material/radio';\nimport { Translation } from '@taon-dev/i18n/browser-prod';\nimport { finalize } from 'rxjs';\nimport { Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\n\nimport { TaonCmsContentApiService } from '../../taon-cms-content/taon-cms-content-api.service';\nimport type { TaonCmsContentEntity } from '../../taon-cms-content/taon-cms-content.entity';\n\nconst t = Translation.for('src/lib/taon-posts/taon-related-post-chooser/taon-related-post-chooser.component.ts', {\"src/lib/taon-posts/taon-related-post-chooser/taon-related-post-chooser.component.html\":{\"en-US\":async () => (await import('./i18n/taon-related-post-chooser.component.html.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-related-post-chooser.component.html.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-related-post-chooser.component.html.de-DE.i18n.data')).default},\"src/lib/taon-posts/taon-related-post-chooser/taon-related-post-chooser.component.ts\":{\"en-US\":async () => (await import('./i18n/taon-related-post-chooser.component.ts.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-related-post-chooser.component.ts.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-related-post-chooser.component.ts.de-DE.i18n.data')).default}} as any);\n\nexport interface TaonRelatedPostChooserData {\n postId?: number;\n excludedIds: number[];\n eligibleStatuses?: string[];\n dialogTitle?: string;\n confirmLabel?: string;\n selectionLabel?: string;\n selectionError?: string;\n}\n\n@Component({\n selector: 'taon-related-post-chooser',\n templateUrl: './taon-related-post-chooser.component.html',\n styleUrls: ['./taon-related-post-chooser.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [MatButtonModule, MatDialogModule, MatRadioModule],\n providers: [TaonCmsContentApiService],\n})\nexport class TaonRelatedPostChooserComponent {\n readonly t = t.for(this);\n\n readonly data = inject<TaonRelatedPostChooserData>(MAT_DIALOG_DATA);\n readonly posts = signal<TaonCmsContentEntity[]>([]);\n readonly selected = signal<number | null>(null);\n readonly query = signal('');\n readonly loading = signal(false);\n readonly error = signal('');\n readonly filteredPosts = computed(() => {\n const query = this.query().trim().toLowerCase();\n return this.posts().filter(\n post =>\n post.id !== this.data.postId &&\n !this.data.excludedIds.includes(post.id) &&\n (!this.data.eligibleStatuses ||\n this.data.eligibleStatuses.includes(post.status)) &&\n `${post.id} ${post.title} ${post.slug}`.toLowerCase().includes(query),\n );\n });\n\n private readonly api = inject(TaonCmsContentApiService);\n private readonly ref = inject(\n MatDialogRef<TaonRelatedPostChooserComponent, TaonCmsContentEntity>,\n );\n private readonly destroyRef = inject(DestroyRef);\n\n constructor() {\n this.load();\n }\n\n load(): void {\n if (this.loading()) {\n return;\n }\n this.loading.set(true);\n this.selected.set(null);\n this.error.set('');\n this.api.allMyEntities$\n .pipe(\n takeUntilDestroyed(this.destroyRef),\n finalize(() => this.loading.set(false)),\n )\n .subscribe({\n next: posts => this.posts.set(posts),\n error: (error: unknown) => {\n console.error(\n '[taon-related-post-chooser] Unable to load posts',\n error,\n );\n this.error.set(\n this.t.gettext('Posts could not be loaded. Please try again.'),\n );\n },\n });\n }\n\n search(event: Event): void {\n if (event.target instanceof HTMLInputElement) {\n this.query.set(event.target.value);\n this.selected.set(null);\n }\n }\n\n choose(): void {\n if (this.loading() || this.error()) {\n return;\n }\n const post = this.filteredPosts().find(post => post.id === this.selected());\n if (!post) {\n this.error.set(\n this.data.selectionError ?? this.t.gettext('Select a related post.'),\n );\n return;\n }\n this.ref.close(post);\n }\n\n cancel(): void {\n this.ref.close();\n }\n}","<h2 mat-dialog-title>{{ data.dialogTitle ?? t.gettext('Add related post') }}</h2>\n<mat-dialog-content>\n <label class=\"search-field\">\n <span>{{ t.gettext('Search posts') }}</span>\n <input\n type=\"search\"\n [attr.aria-label]=\"t.gettext('Search posts by ID, title or slug')\"\n [value]=\"query()\"\n [disabled]=\"loading()\"\n (input)=\"search($event)\" />\n </label>\n @if (loading()) {\n <p role=\"status\">{{ t.gettext('Loading posts...') }}</p>\n } @else if (error()) {\n <p\n class=\"error\"\n role=\"alert\">\n {{ error() }}\n </p>\n <button\n mat-button\n type=\"button\"\n (click)=\"load()\">\n {{ t.gettext('Try again') }}\n </button>\n } @else {\n <mat-radio-group\n [attr.aria-label]=\"data.selectionLabel ?? t.gettext('Related post')\"\n [value]=\"selected()\"\n (change)=\"selected.set($event.value)\">\n @for (post of filteredPosts(); track post.id) {\n <mat-radio-button [value]=\"post.id\">\n #{{ post.id }} - {{ post.title }}\n <span class=\"slug\">{{ post.slug }}</span>\n </mat-radio-button>\n } @empty {\n <p>{{ t.gettext('No matching posts available.') }}</p>\n }\n </mat-radio-group>\n }\n</mat-dialog-content>\n<mat-dialog-actions align=\"end\">\n <button\n mat-button\n type=\"button\"\n (click)=\"cancel()\">\n {{ t.gettext('Cancel') }}\n </button>\n <button\n mat-flat-button\n type=\"button\"\n [disabled]=\"loading() || !!error() || selected() === null\"\n (click)=\"choose()\">\n {{ data.confirmLabel ?? t.gettext('Add related post') }}\n </button>\n</mat-dialog-actions>\n","//#region imports\nimport { NgTemplateOutlet } from '@angular/common';\nimport { CdkDragDrop, DragDropModule, moveItemInArray } from '@angular/cdk/drag-drop';\nimport {\n AfterViewInit,\n ChangeDetectionStrategy,\n Component,\n DestroyRef,\n ElementRef,\n TemplateRef,\n ViewChild,\n computed,\n effect,\n inject,\n input,\n model,\n output,\n signal,\n untracked,\n viewChild,\n OnDestroy,\n} from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatCardModule } from '@angular/material/card';\nimport { MatCheckboxModule } from '@angular/material/checkbox';\nimport { MatChipsModule } from '@angular/material/chips';\nimport { MatDialog } from '@angular/material/dialog';\nimport { MatExpansionModule } from '@angular/material/expansion';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatInputModule } from '@angular/material/input';\nimport { MatMenuModule } from '@angular/material/menu';\nimport { MatProgressBarModule } from '@angular/material/progress-bar';\nimport { MatRadioModule } from '@angular/material/radio';\nimport { MatSelectModule } from '@angular/material/select';\nimport { MatTabsModule } from '@angular/material/tabs';\nimport { MatTooltipModule } from '@angular/material/tooltip';\nimport { Translation } from '@taon-dev/i18n/browser-prod';\nimport { TaonPermissionApiService } from '@taon-dev/session/browser-prod';\nimport type { TaonPermissionEntity } from '@taon-dev/session/browser-prod';\nimport {\n editorTableSchema,\n TaonConfirmDialogComponent,\n} from '@taon-dev/ui/browser-prod';\nimport { createTableEditor, insertTable } from '@taon-dev/ui/browser-prod';\nimport { Editor, NgxEditorModule, toHTML } from 'ngx-editor';\nimport type { Toolbar } from 'ngx-editor';\nimport type { Command } from 'prosemirror-state';\nimport {\n addRowBefore,\n addRowAfter,\n deleteRow,\n addColumnBefore,\n addColumnAfter,\n deleteColumn,\n deleteTable,\n} from 'prosemirror-tables';\nimport { tableEditing } from 'prosemirror-tables';\nimport {\n Observable,\n Subscription,\n finalize,\n firstValueFrom,\n forkJoin,\n from,\n of,\n switchMap,\n take,\n} from 'rxjs';\nimport { Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\nimport type { TaonStorageObject } from 'taon/browser-prod';\nimport { ___NS__add, ___NS__after, ___NS__ary, ___NS__assign, ___NS__assignIn, ___NS__assignInWith, ___NS__assignWith, ___NS__at, ___NS__attempt, ___NS__before, ___NS__bind, ___NS__bindAll, ___NS__bindKey, ___NS__camelCase, ___NS__capitalize, ___NS__castArray, ___NS__ceil, ___NS__chain, ___NS__chunk, ___NS__clamp, ___NS__clone, ___NS__cloneDeep, ___NS__cloneDeepWith, ___NS__cloneWith, ___NS__compact, ___NS__concat, ___NS__cond, ___NS__conforms, ___NS__conformsTo, ___NS__constant, ___NS__countBy, ___NS__create, ___NS__curry, ___NS__curryRight, ___NS__debounce, ___NS__deburr, ___NS__defaults, ___NS__defaultsDeep, ___NS__defaultTo, ___NS__defer, ___NS__delay, ___NS__difference, ___NS__differenceBy, ___NS__differenceWith, ___NS__divide, ___NS__drop, ___NS__dropRight, ___NS__dropRightWhile, ___NS__dropWhile, ___NS__each, ___NS__eachRight, ___NS__endsWith, ___NS__entries, ___NS__entriesIn, ___NS__eq, ___NS__escape, ___NS__escapeRegExp, ___NS__every, ___NS__extend, ___NS__extendWith, ___NS__fill, ___NS__filter, ___NS__find, ___NS__findIndex, ___NS__findKey, ___NS__findLast, ___NS__findLastIndex, ___NS__findLastKey, ___NS__first, ___NS__flatMap, ___NS__flatMapDeep, ___NS__flatMapDepth, ___NS__flatten, ___NS__flattenDeep, ___NS__flattenDepth, ___NS__flip, ___NS__floor, ___NS__flow, ___NS__flowRight, ___NS__forEach, ___NS__forEachRight, ___NS__forIn, ___NS__forInRight, ___NS__forOwn, ___NS__forOwnRight, ___NS__fromPairs, ___NS__functions, ___NS__functionsIn, ___NS__get, ___NS__groupBy, ___NS__gt, ___NS__gte, ___NS__has, ___NS__hasIn, ___NS__head, ___NS__identity, ___NS__includes, ___NS__indexOf, ___NS__initial, ___NS__inRange, ___NS__intersection, ___NS__intersectionBy, ___NS__intersectionWith, ___NS__invert, ___NS__invertBy, ___NS__invoke, ___NS__invokeMap, ___NS__isArguments, ___NS__isArray, ___NS__isArrayBuffer, ___NS__isArrayLike, ___NS__isArrayLikeObject, ___NS__isBoolean, ___NS__isBuffer, ___NS__isDate, ___NS__isElement, ___NS__isEmpty, ___NS__isEqual, ___NS__isEqualWith, ___NS__isError, ___NS__isFinite, ___NS__isFunction, ___NS__isInteger, ___NS__isLeafObject, ___NS__isLength, ___NS__isMap, ___NS__isMatch, ___NS__isMatchWith, ___NS__isNaN, ___NS__isNative, ___NS__isNil, ___NS__isNull, ___NS__isNumber, ___NS__isObject, ___NS__isObjectLike, ___NS__isPlainObject, ___NS__isRegExp, ___NS__isSafeInteger, ___NS__isSet, ___NS__isString, ___NS__isSymbol, ___NS__isTypedArray, ___NS__isUndefined, ___NS__isWeakMap, ___NS__isWeakSet, ___NS__iteratee, ___NS__join, ___NS__kebabCase, ___NS__keyBy, ___NS__keys, ___NS__keysIn, ___NS__last, ___NS__lastIndexOf, ___NS__lowerCase, ___NS__lowerFirst, ___NS__lt, ___NS__lte, ___NS__map, ___NS__mapKeys, ___NS__mapValues, ___NS__matches, ___NS__matchesProperty, ___NS__max, ___NS__maxBy, ___NS__mean, ___NS__meanBy, ___NS__memoize, ___NS__merge, ___NS__mergeWith, ___NS__method, ___NS__methodOf, ___NS__min, ___NS__minBy, ___NS__mixin, ___NS__multiply, ___NS__negate, ___NS__noop, ___NS__now, ___NS__nth, ___NS__nthArg, ___NS__omit, ___NS__omitBy, ___NS__once, ___NS__orderBy, ___NS__over, ___NS__overArgs, ___NS__overEvery, ___NS__overSome, ___NS__pad, ___NS__padEnd, ___NS__padStart, ___NS__parseInt, ___NS__partial, ___NS__partialRight, ___NS__partition, ___NS__pick, ___NS__pickBy, ___NS__property, ___NS__propertyOf, ___NS__pull, ___NS__pullAll, ___NS__pullAllBy, ___NS__pullAllWith, ___NS__pullAt, ___NS__random, ___NS__range, ___NS__rangeRight, ___NS__rearg, ___NS__reduce, ___NS__reduceRight, ___NS__reject, ___NS__remove, ___NS__repeat, ___NS__replace, ___NS__rest, ___NS__result, ___NS__reverse, ___NS__round, ___NS__sample, ___NS__sampleSize, ___NS__set, ___NS__setWith, ___NS__shuffle, ___NS__size, ___NS__slice, ___NS__snakeCase, ___NS__some, ___NS__sortBy, ___NS__sortedIndex, ___NS__sortedIndexBy, ___NS__sortedIndexOf, ___NS__sortedLastIndex, ___NS__sortedLastIndexBy, ___NS__sortedLastIndexOf, ___NS__sortedUniq, ___NS__sortedUniqBy, ___NS__split, ___NS__spread, ___NS__startCase, ___NS__startsWith, ___NS__stubArray, ___NS__stubFalse, ___NS__stubObject, ___NS__stubString, ___NS__stubTrue, ___NS__subtract, ___NS__sum, ___NS__sumBy, ___NS__tail, ___NS__take, ___NS__takeRight, ___NS__takeRightWhile, ___NS__takeWhile, ___NS__tap, ___NS__template, ___NS__templateSettings, ___NS__throttle, ___NS__thru, ___NS__times, ___NS__toArray, ___NS__toFinite, ___NS__toInteger, ___NS__toLength, ___NS__toLower, ___NS__toNumber, ___NS__toPairs, ___NS__toPairsIn, ___NS__toPath, ___NS__toPlainObject, ___NS__toSafeInteger, ___NS__toString, ___NS__toUpper, ___NS__transform, ___NS__trim, ___NS__trimEnd, ___NS__trimStart, ___NS__truncate, ___NS__unary, ___NS__unescape, ___NS__union, ___NS__unionBy, ___NS__unionWith, ___NS__uniq, ___NS__uniqBy, ___NS__uniqueId, ___NS__uniqWith, ___NS__unset, ___NS__unzip, ___NS__unzipWith, ___NS__update, ___NS__updateWith, ___NS__upperCase, ___NS__upperFirst, ___NS__values, ___NS__valuesIn, ___NS__without, ___NS__words, ___NS__wrap, ___NS__xor, ___NS__xorBy, ___NS__xorWith, ___NS__zip, ___NS__zipObject, ___NS__zipObjectDeep, ___NS__zipWith } from 'tnp-core/browser-prod';\n\nimport type { TaonCmsApplicationHookEntity } from '../../taon-cms-application-hook/taon-cms-application-hook.entity';\nimport type { TaonCmsApplicationHook } from '../../taon-cms-application-hooks';\nimport { TaonCmsCategoryApiService } from '../../taon-cms-category/taon-cms-category-api.service';\nimport type { TaonCmsCategoryEntity } from '../../taon-cms-category/taon-cms-category.entity';\nimport { TaonCmsCommentsComponent } from '../../taon-cms-comment/taon-cms-comments.component';\nimport { TaonCmsContentApiService } from '../../taon-cms-content/taon-cms-content-api.service';\nimport { TaonCmsContentConfigService } from '../../taon-cms-content/taon-cms-content.config.service';\nimport type { TaonCmsContentEntity } from '../../taon-cms-content/taon-cms-content.entity';\nimport type { TaonCmsUpdateContent } from '../../taon-cms-content/taon-cms-content.models';\nimport type { TaonCmsContentFields } from '../../taon-cms-content/taon-cms-content.models';\nimport { extractDocumentHtml } from './taon-cms-document-extractor';\nimport type {\n TaonCmsPostVersionKind,\n TaonCmsPostVersionLinks,\n} from '../../taon-cms-content/taon-cms-content.models';\nimport { TaonCmsContentType } from '../../taon-cms-content/taon-cms-content.models';\nimport { resolveTemplateVariables } from '../../taon-cms-content/taon-cms-template-variables';\nimport type { TaonCmsTemplateVariable } from '../../taon-cms-content/taon-cms-template-variables';\nimport { TaonCmsTagApiService } from '../../taon-cms-tag/taon-cms-tag-api.service';\nimport type { TaonCmsTagEntity } from '../../taon-cms-tag/taon-cms-tag.entity';\nimport { TaonCmsTaxonomyQuickCreateDialogComponent } from '../../taon-cms-taxonomy-backoffice/taon-cms-taxonomy-quick-create-dialog.component';\nimport { TaonCmsRevisionChooserComponent } from '../taon-cms-revision-chooser/taon-cms-revision-chooser.component';\nimport { TaonRelatedPostChooserComponent } from '../taon-related-post-chooser/taon-related-post-chooser.component';\nimport type { TaonRelatedPostChooserData } from '../taon-related-post-chooser/taon-related-post-chooser.component';\n\nimport { TaonCmsEditableDirective } from './taon-cms-editable.directive';\nimport { TaonCmsPostThumbnailComponent } from './taon-cms-post-thumbnail.component';\nimport { TaonCmsPostChoiceDialogComponent } from './taon-cms-post-choice-dialog.component';\nimport type { TaonCmsPostChoiceDialogData } from './taon-cms-post-choice-dialog.component';\nimport type { TaonCmsPostDraft, TaonCmsPostMode } from './taon-cms-post.models';\nimport {\n defaultThumbnailKey,\n defaultThumbnailUrl,\n generateVideoThumbnail,\n} from './taon-cms-thumbnail';\nimport { MatDividerModule } from '@angular/material/divider';\n\n//#endregion\n\nconst t = Translation.for('src/lib/taon-posts/taon-cms-post/taon-cms-post.component.ts', {\"src/lib/taon-posts/taon-cms-post/taon-cms-post-choice-dialog.component.html\":{\"en-US\":async () => (await import('./i18n/taon-cms-post-choice-dialog.component.html.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-post-choice-dialog.component.html.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-post-choice-dialog.component.html.de-DE.i18n.data')).default},\"src/lib/taon-posts/taon-cms-post/taon-cms-post-choice-dialog.component.ts\":{\"en-US\":async () => (await import('./i18n/taon-cms-post-choice-dialog.component.ts.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-post-choice-dialog.component.ts.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-post-choice-dialog.component.ts.de-DE.i18n.data')).default},\"src/lib/taon-posts/taon-cms-post/taon-cms-post-thumbnail.component.ts\":{\"en-US\":async () => (await import('./i18n/taon-cms-post-thumbnail.component.ts.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-post-thumbnail.component.ts.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-post-thumbnail.component.ts.de-DE.i18n.data')).default},\"src/lib/taon-posts/taon-cms-post/taon-cms-post.component.html\":{\"en-US\":async () => (await import('./i18n/taon-cms-post.component.html.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-post.component.html.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-post.component.html.de-DE.i18n.data')).default},\"src/lib/taon-posts/taon-cms-post/taon-cms-post.component.ts\":{\"en-US\":async () => (await import('./i18n/taon-cms-post.component.ts.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-post.component.ts.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-post.component.ts.de-DE.i18n.data')).default}} as any);\n\ninterface RelatedChildFileSelection {\n id: number;\n file: File;\n status: 'pending' | 'processing' | 'success' | 'error';\n progress: number;\n error: string;\n createdTitle?: string;\n uploads?: {\n source?: TaonStorageObject;\n thumbnail?: TaonStorageObject;\n };\n}\n\n@Component({\n selector: 'taon-cms-post',\n templateUrl: './taon-cms-post.component.html',\n styleUrls: ['./taon-cms-post.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [\n MatButtonModule,\n MatCheckboxModule,\n MatCardModule,\n MatExpansionModule,\n MatFormFieldModule,\n MatIconModule,\n MatInputModule,\n MatMenuModule,\n MatTabsModule,\n NgxEditorModule,\n MatChipsModule,\n MatProgressBarModule,\n MatRadioModule,\n MatSelectModule,\n MatTooltipModule,\n TaonCmsEditableDirective,\n TaonCmsCommentsComponent,\n NgTemplateOutlet,\n MatDividerModule,\n DragDropModule,\n TaonCmsPostThumbnailComponent,\n ],\n providers: [\n TaonCmsContentApiService,\n TaonCmsContentConfigService,\n TaonPermissionApiService,\n TaonCmsCategoryApiService,\n TaonCmsTagApiService,\n ],\n})\nexport class TaonCmsPostComponent implements AfterViewInit, OnDestroy {\n //#region fields and getters\n readonly t = t.for(this);\n\n readonly post = input<TaonCmsContentEntity | null>(null);\n\n readonly mode = model<TaonCmsPostMode>('view');\n\n readonly changed = output<TaonCmsContentEntity>();\n\n readonly deleted = output<TaonCmsContentEntity>();\n\n readonly editPostRequested = output<TaonCmsContentEntity>();\n\n readonly duplicated = output<TaonCmsContentEntity>();\n\n readonly cancelled = output<void>();\n\n readonly actionButtonsTemplate = output<TemplateRef<unknown>>();\n\n @ViewChild('actionButtonsTemplate')\n private readonly actionButtonsTemplateRef?: TemplateRef<unknown>;\n\n readonly currentPost = signal<TaonCmsContentEntity | null>(null);\n\n readonly placeholderShortIntro = this.t.signal.gettext(\n 'A short introduction...',\n );\n\n readonly placeholderTitle = this.t.signal.gettext('Title');\n\n readonly visibilityInheritedTooltip = this.t.signal.gettext(\n 'Visibility inherited from parent',\n );\n\n readonly placeholderTellYourStory =\n this.t.signal.gettext('Tell your story...');\n\n readonly draft = signal<TaonCmsPostDraft>({\n type: TaonCmsContentType.Normal,\n title: '',\n slug: '',\n excerpt: '',\n body: '',\n videoKey: null,\n audioKey: null,\n attachmentKey: null,\n thumbnailKey: null,\n categoryId: null,\n tagIds: [],\n });\n\n readonly postTypes = [\n {\n value: TaonCmsContentType.Normal,\n label: this.t.gettext('Normal post'),\n },\n { value: TaonCmsContentType.Video, label: this.t.gettext('Video post') },\n { value: TaonCmsContentType.Audio, label: this.t.gettext('Audio post') },\n {\n value: TaonCmsContentType.Attachment,\n label: this.t.gettext('Attachment post'),\n },\n ];\n\n readonly currentPostType = computed(\n () =>\n this.postTypes.find(type => type.value === this.draft().type) ??\n this.postTypes[0],\n );\n\n readonly currentPostTypeIcon = computed(() => {\n switch (this.draft().type) {\n case TaonCmsContentType.Video:\n return 'video_library';\n case TaonCmsContentType.Audio:\n return 'audiotrack';\n case TaonCmsContentType.Attachment:\n return 'attach_file';\n default:\n return 'article';\n }\n });\n\n private readonly mediaAttachments = [\n {\n type: TaonCmsContentType.Video,\n key: 'videoKey',\n heading: this.t.gettext('Video Attachment'),\n uploadLabel: this.t.gettext('Upload video'),\n accept: 'video/*',\n },\n {\n type: TaonCmsContentType.Audio,\n key: 'audioKey',\n heading: this.t.gettext('Audio Attachment'),\n uploadLabel: this.t.gettext('Upload audio'),\n accept: 'audio/*',\n },\n {\n type: TaonCmsContentType.Attachment,\n key: 'attachmentKey',\n heading: this.t.gettext('File Attachment'),\n uploadLabel: this.t.gettext('Upload file'),\n accept: '',\n },\n ] as const;\n\n protected readonly tableCommands = [\n { label: 'Add row above', command: addRowBefore },\n { label: 'Add row below', command: addRowAfter },\n { label: 'Delete row', command: deleteRow },\n { label: 'Add column before', command: addColumnBefore },\n { label: 'Add column after', command: addColumnAfter },\n { label: 'Delete column', command: deleteColumn },\n { label: 'Delete table', command: deleteTable },\n ];\n\n readonly mediaAttachment = computed(() =>\n this.mediaAttachments.find(media => media.type === this.draft().type),\n );\n\n readonly busy = signal(false);\n\n readonly thumbnailPreviewUrl = signal('');\n\n readonly thumbnailError = signal('');\n\n private readonly thumbnailReference = computed(\n () => this.draft().thumbnailKey,\n );\n\n private readonly thumbnailSlug = computed(() => this.draft().slug);\n\n readonly taxonomyLoading = signal(false);\n\n readonly taxonomyError = signal('');\n\n readonly categories = signal<TaonCmsCategoryEntity[]>([]);\n\n readonly tags = signal<TaonCmsTagEntity[]>([]);\n\n readonly tagSearch = signal('');\n\n readonly filteredTags = computed(() => {\n const query = this.tagSearch().trim().toLowerCase();\n return this.tags().filter(\n tag =>\n !this.draft().tagIds.includes(tag.id) &&\n `${tag.name} ${tag.slug}`.toLowerCase().includes(query),\n );\n });\n\n readonly selectedTags = computed(() =>\n this.tags().filter(tag => this.draft().tagIds.includes(tag.id)),\n );\n\n private readonly categoryApi = inject(TaonCmsCategoryApiService);\n\n private readonly tagApi = inject(TaonCmsTagApiService);\n\n private taxonomyLoad?: Subscription;\n\n private editorSession = 0;\n\n private thumbnailObjectUrl = '';\n\n private readonly stagedThumbnail = signal<{\n key: string | null;\n url: string;\n } | null>(null);\n\n readonly uploading = signal(false);\n\n readonly uploadProgress = signal(0);\n\n readonly mediaPreviewUrl = signal('');\n\n readonly mediaPreviewLoading = signal(false);\n\n readonly mediaPreviewError = signal('');\n\n private readonly mediaFileNames = signal<Record<string, string>>({});\n\n private readonly uploadedMediaPreview = signal<{\n key: string;\n url: string;\n fileName: string;\n } | null>(null);\n\n private mediaPreviewRequest = 0;\n\n private mediaPreviewSignature = '';\n\n readonly dialogOpen = signal(false);\n\n readonly error = signal('');\n\n readonly relatedPosts = signal<TaonCmsContentEntity[]>([]);\n\n readonly relatedPostsLoading = signal(false);\n\n readonly relatedPostsError = signal('');\n\n readonly childTitlePrefix = signal('');\n\n readonly childFiles = signal<RelatedChildFileSelection[]>([]);\n\n readonly childBatchError = signal('');\n\n readonly canUploadRelatedChildren = computed(\n () =>\n !!this.currentPost() &&\n !!this.childTitlePrefix().trim() &&\n !this.relatedPostsLoading() &&\n !this.relatedPostsError() &&\n !this.busy() &&\n !this.dialogOpen() &&\n this.childFiles().some(file => file.status !== 'success'),\n );\n\n readonly childOverallProgress = computed(() => {\n const files = this.childFiles();\n return files.length\n ? Math.round(\n files.reduce(\n (total, file) =>\n total +\n (file.status === 'success' ? 100 : Math.max(0, file.progress)),\n 0,\n ) / files.length,\n )\n : 0;\n });\n\n readonly childTitlePreviews = computed(() => {\n const prefix = this.childTitlePrefix().trim();\n let highest = 0;\n if (prefix) {\n for (const post of this.relatedPosts()) {\n const titlePrefix = `${prefix} `;\n if (!post.title.startsWith(titlePrefix)) {\n continue;\n }\n const suffix = post.title.slice(titlePrefix.length);\n if (/^\\d+$/.test(suffix)) {\n const number = Number(suffix);\n if (Number.isSafeInteger(number)) {\n highest = Math.max(highest, number);\n }\n }\n }\n }\n return this.childFiles().map(file => {\n if (file.status === 'success' && file.createdTitle) {\n return file.createdTitle;\n }\n highest += 1;\n return prefix ? `${prefix} ${String(highest).padStart(2, '0')}` : '';\n });\n });\n\n private childFileSequence = 0;\n\n private childTitlePrefixParentId: number | null = null;\n\n private childTitlePrefixEdited = false;\n\n readonly parentPost = signal<TaonCmsContentEntity | null>(null);\n\n readonly parentPostLoading = signal(false);\n\n readonly parentPostError = signal('');\n\n readonly postVersionLinks = signal<TaonCmsPostVersionLinks>({\n publicVersionPost: null,\n privateVersionPost: null,\n });\n\n readonly postVersionLinksLoading = signal(false);\n\n readonly postVersionLinksError = signal('');\n\n readonly canEditPublicVersion = computed(() => {\n const status = this.currentPost()?.status;\n return (\n (status === 'draft' || status === 'archived') &&\n !this.postVersionLinksLoading() &&\n !this.postVersionLinksError()\n );\n });\n\n readonly canEditPrivateVersion = computed(\n () =>\n this.currentPost()?.status === 'published' &&\n !this.postVersionLinksLoading() &&\n !this.postVersionLinksError(),\n );\n\n readonly applicationHooks = signal<TaonCmsApplicationHookEntity[]>([]);\n\n readonly applicationHooksLoading = signal(false);\n\n readonly applicationHooksError = signal('');\n\n readonly useAsApplicationHook = signal(false);\n\n readonly selectedApplicationHook = signal<TaonCmsApplicationHook | null>(\n null,\n );\n\n readonly permissions = signal<TaonPermissionEntity[]>([]);\n\n readonly applyPermissionsToRelatedPosts = signal(false);\n\n readonly applyVisibilityToRelatedPosts = signal(false);\n\n readonly visibilitySource = signal<{ id: number; title: string } | null>(\n null,\n );\n\n readonly visibilityLoading = signal(false);\n\n readonly visibilityError = signal(false);\n\n readonly draftStatus = signal<TaonCmsContentFields['status']>('draft');\n\n readonly subtitleEmpty = computed(() =>\n this.isEmptyContent(this.draft().excerpt),\n );\n\n readonly descriptionEmpty = computed(() =>\n this.isEmptyContent(this.draft().body),\n );\n\n readonly permissionSource = signal<{ id: number; title: string } | null>(\n null,\n );\n\n readonly permissionsLoading = signal(false);\n\n readonly permissionsError = signal('');\n\n readonly permissionOptions = signal<TaonPermissionEntity[]>([]);\n\n readonly permissionOptionsLoading = signal(false);\n\n readonly permissionOptionsError = signal('');\n\n readonly selectedPermissionId = signal<number | null>(null);\n\n readonly availablePermissions = computed(() => {\n const assignedIds = new Set(\n this.permissions().map(permission => permission.id),\n );\n return this.permissionOptions().filter(\n permission => !assignedIds.has(permission.id),\n );\n });\n\n readonly editing = computed(\n () => this.mode() === 'edit' || this.mode() === 'add',\n );\n\n readonly canSave = computed(\n () =>\n !!this.draft().title.trim() &&\n !!this.draft().slug.trim() &&\n !this.relatedPostsLoading() &&\n !this.relatedPostsError() &&\n !this.applicationHooksLoading() &&\n !this.applicationHooksError() &&\n (!this.useAsApplicationHook() || !!this.selectedApplicationHook()) &&\n !this.permissionsLoading() &&\n !this.permissionsError() &&\n !this.taxonomyLoading() &&\n !this.taxonomyError(),\n );\n\n readonly statusLabel = computed(() => {\n const status =\n this.mode() === 'add'\n ? this.draftStatus()\n : (this.currentPost()?.status ?? 'draft');\n switch (status) {\n case 'published':\n return this.t.gettext('Status: Published');\n case 'archived':\n return this.t.gettext('Status: Archived');\n default:\n return this.t.gettext('Status: Draft');\n }\n });\n\n readonly statusControlDisabled = computed(\n () =>\n this.busy() ||\n this.dialogOpen() ||\n this.visibilityLoading() ||\n this.visibilityError() ||\n !!this.visibilitySource() ||\n (this.mode() === 'edit' && !this.canSave()),\n );\n\n private readonly api = inject(TaonCmsContentApiService);\n\n private readonly contentConfig = inject(TaonCmsContentConfigService);\n\n readonly contentTab = signal(0);\n\n readonly contentEditor = signal<Editor | null>(null);\n\n readonly rawContent =\n viewChild<ElementRef<HTMLTextAreaElement>>('rawContent');\n\n private loadingEditorContent = false;\n\n readonly contentToolbar: Toolbar = [\n [{ heading: ['h1', 'h2', 'h3', 'h4', 'h5', 'h6'] }],\n ['bold', 'italic', 'underline', 'strike'],\n ['ordered_list', 'bullet_list'],\n ['blockquote', 'code'],\n ['link', 'image'],\n ['text_color', 'background_color'],\n ['align_left', 'align_center', 'align_right', 'align_justify'],\n ['horizontal_rule', 'format_clear'],\n ['undo', 'redo'],\n ];\n\n readonly resolvedBody = computed(() => {\n const draft = this.draft();\n return resolveTemplateVariables(draft.body, {\n frontendUrl: this.api.frontendUrl,\n site: { name: this.contentConfig.siteName },\n post: {\n title: draft.title,\n url: draft.slug ? this.api.getPostUrl(draft.slug) : null,\n id: this.currentPost()?.id,\n thumbnailUrl: this.thumbnailPreviewUrl() || null,\n },\n });\n });\n\n private readonly permissionApi = inject(TaonPermissionApiService);\n\n private readonly dialog = inject(MatDialog);\n\n private readonly destroyRef = inject(DestroyRef);\n\n private relatedPostsLoad?: Subscription;\n\n private parentPostRequest = 0;\n\n private visibilityRequest = 0;\n\n private postVersionLinksRequest = 0;\n\n private applicationHooksLoad?: Subscription;\n\n private permissionsLoad?: Subscription;\n\n protected insertTable(event: MouseEvent): void {\n event.preventDefault();\n\n const editor = this.contentEditor();\n\n if (!editor || this.busy() || this.dialogOpen()) {\n return;\n }\n\n insertTable(editor);\n }\n //#endregion\n\n //#region methods / ng after view init\n ngAfterViewInit(): void {\n if (this.actionButtonsTemplateRef) {\n this.actionButtonsTemplate.emit(this.actionButtonsTemplateRef);\n }\n }\n //#endregion\n\n //#region constructor\n constructor() {\n const editor = createTableEditor({\n attributes: {\n 'aria-label': this.t.gettext('Post body'),\n style: 'min-height: 20rem',\n },\n });\n\n this.contentEditor.set(editor);\n\n const editorChanges = editor.valueChanges.subscribe(document => {\n if (!this.editing() || this.loadingEditorContent) {\n return;\n }\n\n this.updateDraft('body', toHTML(document, editor.schema));\n });\n\n // React to post input changes.\n effect(() => {\n const post = this.post();\n\n untracked(() => {\n this.setPost(post);\n\n // Synchronize editor only because the POST changed externally.\n this.loadingEditorContent = true;\n\n try {\n editor.setContent(this.draft().body);\n } finally {\n this.loadingEditorContent = false;\n }\n });\n });\n\n // Enable/disable editor without recreating it.\n effect(() => {\n const disabled = this.busy() || this.dialogOpen() || !this.editing();\n\n editor.view.setProps({\n editable: () => !disabled,\n });\n });\n\n // Load edit-mode dependencies.\n effect(() => {\n if (this.editing()) {\n untracked(() => {\n this.loadApplicationHooks();\n this.loadPermissionOptions();\n this.loadTaxonomy();\n });\n }\n });\n\n // Thumbnail preview handling.\n effect(onCleanup => {\n const key = this.thumbnailReference();\n const editing = this.editing();\n const slug = editing ? '' : this.thumbnailSlug();\n const staged = this.stagedThumbnail();\n\n let active = true;\n\n onCleanup(() => {\n active = false;\n });\n\n this.thumbnailError.set('');\n this.thumbnailPreviewUrl.set('');\n\n if (staged && staged.key === key) {\n this.thumbnailPreviewUrl.set(staged.url);\n return;\n }\n\n if (!key) {\n return;\n }\n\n const placeholder = defaultThumbnailUrl(key);\n\n if (placeholder) {\n this.thumbnailPreviewUrl.set(placeholder);\n return;\n }\n\n if (!editing && !slug) {\n return;\n }\n\n const load = async () => {\n if (editing) {\n return this.api.getAssetUrl(key);\n }\n\n try {\n return await this.api.getThumbnailLinkBySlug(slug, true);\n } catch {\n return this.api.getThumbnailLinkBySlug(slug);\n }\n };\n\n void load()\n .then(url => {\n if (active && !this.destroyRef.destroyed) {\n this.thumbnailPreviewUrl.set(url);\n }\n })\n .catch((error: unknown) => {\n console.error('[taon-cms-post] Unable to load thumbnail', error);\n\n if (active && !this.destroyRef.destroyed) {\n this.thumbnailError.set(\n this.t.gettext('The thumbnail could not be loaded.'),\n );\n }\n });\n });\n\n // Media preview handling.\n effect(() => {\n const media = this.mediaAttachment();\n const key = media ? this.draft()[media.key] : null;\n\n const slug = this.draft().slug;\n const editing = this.editing();\n\n const viewing = !!this.currentPost() && this.mode() !== 'add';\n\n const stagedPreview = this.uploadedMediaPreview();\n\n if ((!editing && !viewing) || !media || !key) {\n this.mediaPreviewSignature = '';\n this.mediaPreviewRequest += 1;\n this.mediaPreviewUrl.set('');\n this.mediaPreviewLoading.set(false);\n this.mediaPreviewError.set('');\n return;\n }\n\n if (stagedPreview?.key === key) {\n const signature = `upload:${key}:${stagedPreview.url}`;\n\n if (signature === this.mediaPreviewSignature) {\n return;\n }\n\n this.mediaPreviewSignature = signature;\n this.mediaPreviewRequest += 1;\n\n this.mediaPreviewUrl.set(stagedPreview.url);\n\n this.mediaPreviewLoading.set(false);\n this.mediaPreviewError.set('');\n\n return;\n }\n\n if (!slug) {\n this.mediaPreviewSignature = '';\n this.mediaPreviewRequest += 1;\n this.mediaPreviewUrl.set('');\n this.mediaPreviewLoading.set(false);\n this.mediaPreviewError.set('');\n return;\n }\n\n const signature = `${this.mode()}:${media.type}:${slug}:${key}`;\n\n if (signature === this.mediaPreviewSignature) {\n return;\n }\n\n this.mediaPreviewSignature = signature;\n\n const requestId = ++this.mediaPreviewRequest;\n\n this.mediaPreviewUrl.set('');\n this.mediaPreviewLoading.set(true);\n this.mediaPreviewError.set('');\n\n const getLink = editing\n ? this.getMediaLink(slug, media.type)\n : this.getMediaLinkForView(slug, media.type);\n\n void getLink\n .then(url => {\n if (\n requestId === this.mediaPreviewRequest &&\n !this.destroyRef.destroyed\n ) {\n this.mediaPreviewUrl.set(url);\n }\n })\n .catch((error: unknown) => {\n console.error('[taon-cms-post] Unable to load media preview', error);\n\n if (\n requestId === this.mediaPreviewRequest &&\n !this.destroyRef.destroyed\n ) {\n this.mediaPreviewError.set(\n this.t.gettext(\n 'Media preview could not be loaded. Please reopen the editor to try again.',\n ),\n );\n }\n })\n .finally(() => {\n if (\n requestId === this.mediaPreviewRequest &&\n !this.destroyRef.destroyed\n ) {\n this.mediaPreviewLoading.set(false);\n }\n });\n });\n\n // Destroy ngx-editor ONLY when this component is actually destroyed.\n this.destroyRef.onDestroy(() => {\n editorChanges.unsubscribe();\n editor.destroy();\n\n if (this.contentEditor() === editor) {\n this.contentEditor.set(null);\n }\n\n this.releaseThumbnailPreview();\n });\n }\n //#endregion\n\n ngOnDestroy(): void {}\n\n //#region methods / load related posts\n loadTaxonomy(preserveSelectedTags = false): void {\n this.taxonomyLoad?.unsubscribe();\n const session = this.editorSession;\n const postId = this.currentPost()?.id;\n this.taxonomyLoading.set(true);\n this.taxonomyError.set('');\n this.taxonomyLoad = forkJoin({\n categories: this.categoryApi.allMyEntities$,\n tags: this.tagApi.allMyEntities$,\n tagIds: postId ? this.api.listTagIds(postId) : of([] as number[]),\n })\n .pipe(\n takeUntilDestroyed(this.destroyRef),\n finalize(() => this.taxonomyLoading.set(false)),\n )\n .subscribe({\n next: result => {\n if (session === this.editorSession) {\n this.categories.set(\n result.categories.sort(\n (a, b) =>\n a.sortOrder - b.sortOrder || a.name.localeCompare(b.name),\n ),\n );\n this.tags.set(result.tags);\n if (!preserveSelectedTags) {\n this.updateDraft('tagIds', result.tagIds);\n }\n }\n },\n error: (error: unknown) => {\n console.error(\n '[taon-cms-post] Unable to load categories and tags',\n error,\n );\n this.taxonomyError.set(\n this.t.gettext(\n 'Categories and tags could not be loaded. Please try again.',\n ),\n );\n },\n });\n }\n\n //#region methods / add tag\n addTag(id: number): void {\n if (!this.draft().tagIds.includes(id)) {\n this.updateDraft('tagIds', [...this.draft().tagIds, id]);\n }\n }\n //#endregion\n\n //#region methods / remove tag\n removeTag(id: number): void {\n this.updateDraft(\n 'tagIds',\n this.draft().tagIds.filter(selected => selected !== id),\n );\n }\n //#endregion\n\n //#region methods / filter tags\n filterTags(event: Event): void {\n if (event.target instanceof HTMLInputElement) {\n this.tagSearch.set(event.target.value);\n }\n }\n //#endregion\n\n //#region methods / create taxonomy\n createTaxonomy(taxonomy: 'category' | 'tag'): void {\n if (this.busy() || this.dialogOpen()) {\n return;\n }\n\n this.dialogOpen.set(true);\n this.taxonomyError.set('');\n const ref = this.dialog.open<\n TaonCmsTaxonomyQuickCreateDialogComponent,\n { taxonomy: 'category' | 'tag' },\n {\n name: string;\n slug: string;\n description: string | null;\n parentCategoryId: number | null;\n sortOrder: number;\n }\n >(TaonCmsTaxonomyQuickCreateDialogComponent, {\n data: { taxonomy },\n width: '560px',\n maxWidth: '95vw',\n disableClose: true,\n });\n\n ref\n .afterClosed()\n .pipe(takeUntilDestroyed(this.destroyRef))\n .subscribe(fields => {\n if (!fields) {\n this.dialogOpen.set(false);\n return;\n }\n\n const request =\n taxonomy === 'category'\n ? this.categoryApi.save(null, fields)\n : this.tagApi.save(null, fields);\n request\n .pipe(\n takeUntilDestroyed(this.destroyRef),\n finalize(() => this.dialogOpen.set(false)),\n )\n .subscribe({\n next: saved => {\n if (taxonomy === 'category') {\n this.updateDraft('categoryId', saved.id);\n } else {\n this.addTag(saved.id);\n }\n this.loadTaxonomy(true);\n },\n error: (error: unknown) => {\n console.error(\n `[taon-cms-post] Unable to create ${taxonomy}`,\n error,\n );\n this.taxonomyError.set(\n taxonomy === 'category'\n ? this.t.gettext(\n 'The category could not be created. Please try again.',\n )\n : this.t.gettext(\n 'The tag could not be created. Please try again.',\n ),\n );\n },\n });\n });\n }\n //#endregion\n\n //#region methods / apply default thumbnail\n applyDefaultThumbnail(): void {\n if (!this.editing() || this.busy() || this.dialogOpen()) {\n return;\n }\n this.releaseThumbnailPreview();\n this.stagedThumbnail.set(null);\n this.updateDraft('thumbnailKey', defaultThumbnailKey(this.draft().type));\n }\n //#endregion\n\n //#region methods / thumbnail selected\n async thumbnailSelected(event: Event): Promise<void> {\n if (!(event.target instanceof HTMLInputElement)) {\n return;\n }\n const input = event.target;\n const file = input.files?.[0];\n input.value = '';\n if (!file || !this.editing() || this.busy() || this.dialogOpen()) {\n return;\n }\n if (!file.type.startsWith('image/')) {\n this.error.set(\n this.t.gettext('Please select an image for the thumbnail.'),\n );\n return;\n }\n this.busy.set(true);\n this.error.set('');\n try {\n await this.storeThumbnail(file, this.editorSession);\n } catch (error: unknown) {\n console.error('[taon-cms-post] Unable to upload thumbnail', error);\n this.error.set(\n this.t.gettext(\n 'The thumbnail could not be uploaded. Please try again.',\n ),\n );\n } finally {\n this.busy.set(false);\n }\n }\n //#endregion\n\n //#region methods / store thumbnail\n private async storeThumbnail(file: File, session: number): Promise<void> {\n if (session !== this.editorSession || this.destroyRef.destroyed) {\n return;\n }\n const previousPreview = this.thumbnailPreviewUrl();\n const previousStaged = this.stagedThumbnail();\n const preview = URL.createObjectURL(file);\n this.stagedThumbnail.set({ key: this.draft().thumbnailKey, url: preview });\n this.thumbnailPreviewUrl.set(preview);\n try {\n const object = await this.api.uploadMedia(file);\n if (session === this.editorSession && !this.destroyRef.destroyed) {\n this.releaseThumbnailPreview();\n this.thumbnailObjectUrl = preview;\n this.stagedThumbnail.set({ key: object.key, url: preview });\n this.updateDraft('thumbnailKey', object.key);\n }\n } catch (error: unknown) {\n if (session === this.editorSession) {\n this.stagedThumbnail.set(previousStaged);\n this.thumbnailPreviewUrl.set(previousPreview);\n }\n throw error;\n } finally {\n if (this.thumbnailObjectUrl !== preview) {\n URL.revokeObjectURL(preview);\n }\n }\n }\n //#endregion\n\n //#region methods / release thumbnail preview\n private releaseThumbnailPreview(): void {\n if (this.thumbnailObjectUrl) {\n URL.revokeObjectURL(this.thumbnailObjectUrl);\n this.thumbnailObjectUrl = '';\n }\n }\n //#endregion\n\n //#region methods / load related posts\n loadRelatedPosts(): void {\n if (this.busy() || this.relatedPostsLoading()) {\n return;\n }\n const post = this.requirePost();\n if (!post) {\n return;\n }\n this.relatedPostsLoading.set(true);\n this.relatedPostsError.set('');\n this.relatedPostsLoad = this.api\n .listRelatedPosts(post.id)\n .pipe(\n takeUntilDestroyed(this.destroyRef),\n finalize(() => this.relatedPostsLoading.set(false)),\n )\n .subscribe({\n next: posts => this.relatedPosts.set(posts),\n error: (error: unknown) => {\n console.error('[taon-cms-post] Unable to load related posts', error);\n this.relatedPostsError.set(\n this.t.gettext(\n 'Related posts could not be loaded. Please try again.',\n ),\n );\n },\n });\n }\n //#endregion\n //#endregion\n\n //#region methods / load parent post\n private loadParentPost(post: TaonCmsContentEntity | null): void {\n const request = ++this.parentPostRequest;\n this.parentPost.set(null);\n this.parentPostError.set('');\n if (!post) {\n this.parentPostLoading.set(false);\n return;\n }\n this.parentPostLoading.set(true);\n void this.api\n .getParentPost(post.id)\n .then(parent => {\n if (request === this.parentPostRequest) {\n this.parentPost.set(parent);\n }\n })\n .catch((error: unknown) => {\n console.error('[taon-cms-post] Unable to load parent post', error);\n if (request === this.parentPostRequest) {\n this.parentPostError.set(\n this.t.gettext(\n 'The parent post could not be loaded. Please retry.',\n ),\n );\n }\n })\n .finally(() => {\n if (request === this.parentPostRequest) {\n this.parentPostLoading.set(false);\n }\n });\n }\n //#endregion\n\n //#region methods / load visibility configuration\n private loadVisibilityConfiguration(post: TaonCmsContentEntity | null): void {\n const request = ++this.visibilityRequest;\n this.visibilitySource.set(null);\n this.visibilityError.set(false);\n if (!post) {\n this.visibilityLoading.set(false);\n return;\n }\n this.visibilityLoading.set(true);\n void this.api\n .getVisibilityConfiguration(post.id)\n .then(configuration => {\n if (request === this.visibilityRequest) {\n this.visibilitySource.set(configuration.source);\n }\n })\n .catch((error: unknown) => {\n console.error(\n '[taon-cms-post] Unable to load visibility inheritance',\n error,\n );\n if (request === this.visibilityRequest) {\n this.visibilityError.set(true);\n this.error.set(\n this.t.gettext('The post visibility could not be verified.'),\n );\n }\n })\n .finally(() => {\n if (request === this.visibilityRequest) {\n this.visibilityLoading.set(false);\n }\n });\n }\n //#endregion\n\n //#region methods / load post version links\n loadPostVersionLinks(post: TaonCmsContentEntity | null): void {\n const request = ++this.postVersionLinksRequest;\n this.postVersionLinks.set({\n publicVersionPost: null,\n privateVersionPost: null,\n });\n this.postVersionLinksError.set('');\n if (!post) {\n this.postVersionLinksLoading.set(false);\n return;\n }\n this.postVersionLinksLoading.set(true);\n void this.api\n .getPostVersions(post.id)\n .then(links => {\n if (request === this.postVersionLinksRequest) {\n this.postVersionLinks.set(links);\n }\n })\n .catch((error: unknown) => {\n console.error('[taon-cms-post] Unable to load post versions', error);\n if (request === this.postVersionLinksRequest) {\n this.postVersionLinksError.set(\n this.t.gettext(\n 'Post version links could not be loaded. Please retry.',\n ),\n );\n }\n })\n .finally(() => {\n if (request === this.postVersionLinksRequest) {\n this.postVersionLinksLoading.set(false);\n }\n });\n }\n //#endregion\n\n //#region methods / request post editor\n requestPostEditor(event: Event, post: TaonCmsContentEntity): void {\n event.preventDefault();\n this.editPostRequested.emit(post);\n }\n //#endregion\n\n //#region methods / remove parent post\n removeParentPost(): void {\n const post = this.currentPost();\n const parent = this.parentPost();\n if (\n !this.editing() ||\n !post ||\n !parent ||\n this.busy() ||\n this.dialogOpen()\n ) {\n return;\n }\n this.busy.set(true);\n this.error.set('');\n this.api\n .deleteRelatedPost(parent.id, post.id, parent.version)\n .pipe(\n takeUntilDestroyed(this.destroyRef),\n finalize(() => this.busy.set(false)),\n )\n .subscribe({\n next: () => {\n this.parentPost.set(null);\n this.loadPermissions();\n },\n error: (error: unknown) => {\n console.error('[taon-cms-post] Unable to remove parent post', error);\n this.error.set(\n this.t.gettext(\n 'The parent post could not be removed. Please try again.',\n ),\n );\n },\n });\n }\n //#endregion\n\n //#region methods / add related post\n addRelatedPost(): void {\n if (\n !this.editing() ||\n this.busy() ||\n this.dialogOpen() ||\n this.relatedPostsLoading() ||\n this.relatedPostsError()\n ) {\n return;\n }\n this.dialogOpen.set(true);\n const ref = this.dialog.open<\n TaonRelatedPostChooserComponent,\n TaonRelatedPostChooserData,\n TaonCmsContentEntity\n >(TaonRelatedPostChooserComponent, {\n data: {\n postId: this.currentPost()?.id,\n excludedIds: this.relatedPosts().map(post => post.id),\n },\n width: '560px',\n maxWidth: '95vw',\n disableClose: true,\n });\n ref\n .afterClosed()\n .pipe(takeUntilDestroyed(this.destroyRef))\n .subscribe(post => {\n this.dialogOpen.set(false);\n if (\n post &&\n post.id !== this.currentPost()?.id &&\n !this.relatedPosts().some(related => related.id === post.id)\n ) {\n this.relatedPosts.update(posts => [...posts, post]);\n }\n });\n }\n //#endregion\n\n //#region methods / add as child of\n addAsChildOf(): void {\n const post = this.currentPost();\n if (\n !this.editing() ||\n !post ||\n this.busy() ||\n this.dialogOpen() ||\n this.relatedPostsLoading()\n ) {\n return;\n }\n\n this.dialogOpen.set(true);\n const ref = this.dialog.open<\n TaonRelatedPostChooserComponent,\n TaonRelatedPostChooserData,\n TaonCmsContentEntity\n >(TaonRelatedPostChooserComponent, {\n data: { postId: post.id, excludedIds: [] },\n width: '560px',\n maxWidth: '95vw',\n disableClose: true,\n });\n ref\n .afterClosed()\n .pipe(takeUntilDestroyed(this.destroyRef))\n .subscribe(parent => {\n this.dialogOpen.set(false);\n if (!parent || !this.currentPost()) {\n return;\n }\n\n this.busy.set(true);\n this.error.set('');\n this.api\n .addRelatedPost(parent.id, post.id, parent.version)\n .pipe(\n switchMap(() =>\n forkJoin({\n post: from(this.api.getById(post.id)),\n parent: from(this.api.getById(parent.id)),\n }),\n ),\n takeUntilDestroyed(this.destroyRef),\n finalize(() => this.busy.set(false)),\n )\n .subscribe({\n next: refreshed => {\n this.currentPost.set(refreshed.post);\n this.parentPost.set(refreshed.parent);\n this.permissionsLoad?.unsubscribe();\n this.permissionsLoading.set(false);\n this.loadPermissions();\n },\n error: (error: unknown) => {\n console.error(\n '[taon-cms-post] Unable to make post a child',\n error,\n );\n this.error.set(\n this.t.gettext(\n 'The parent post could not be changed. Please try again.',\n ),\n );\n },\n });\n });\n }\n //#endregion\n\n //#region methods / remove related post\n reorderRelatedPosts(event: CdkDragDrop<TaonCmsContentEntity[]>): void {\n if (\n !this.editing() ||\n this.busy() ||\n this.dialogOpen() ||\n this.relatedPostsLoading() ||\n this.relatedPostsError() ||\n event.previousContainer !== event.container\n ) {\n return;\n }\n this.relatedPosts.update(posts => {\n const reordered = [...posts];\n moveItemInArray(reordered, event.previousIndex, event.currentIndex);\n return reordered;\n });\n }\n\n removeRelatedPost(id: number): void {\n if (\n !this.editing() ||\n this.busy() ||\n this.dialogOpen() ||\n this.relatedPostsLoading() ||\n this.relatedPostsError()\n ) {\n return;\n }\n this.relatedPosts.update(posts => posts.filter(post => post.id !== id));\n }\n //#endregion\n\n //#region methods / select version post\n selectVersionPost(kind: TaonCmsPostVersionKind): void {\n const post = this.currentPost();\n const canEdit =\n kind === 'public'\n ? this.canEditPublicVersion()\n : this.canEditPrivateVersion();\n if (\n !this.editing() ||\n !post ||\n !canEdit ||\n this.busy() ||\n this.dialogOpen()\n ) {\n return;\n }\n this.dialogOpen.set(true);\n const isPublicVersion = kind === 'public';\n const ref = this.dialog.open<\n TaonRelatedPostChooserComponent,\n TaonRelatedPostChooserData,\n TaonCmsContentEntity\n >(TaonRelatedPostChooserComponent, {\n data: {\n postId: post.id,\n excludedIds: [],\n eligibleStatuses: isPublicVersion\n ? ['published']\n : ['draft', 'archived'],\n dialogTitle: isPublicVersion\n ? this.t.gettext('Select the public version post')\n : this.t.gettext('Select the private version post'),\n confirmLabel: this.t.gettext('Link post version'),\n selectionLabel: this.t.gettext('Post version'),\n selectionError: this.t.gettext('Select an eligible post version.'),\n },\n width: '560px',\n maxWidth: '95vw',\n disableClose: true,\n });\n ref\n .afterClosed()\n .pipe(takeUntilDestroyed(this.destroyRef))\n .subscribe(versionPost => {\n this.dialogOpen.set(false);\n const currentPost = this.currentPost();\n if (!versionPost || !currentPost) {\n return;\n }\n this.busy.set(true);\n this.error.set('');\n this.api\n .linkVersionPost(\n currentPost.id,\n versionPost.id,\n kind,\n currentPost.version,\n )\n .pipe(\n takeUntilDestroyed(this.destroyRef),\n finalize(() => this.busy.set(false)),\n )\n .subscribe({\n next: updatedPost => {\n this.currentPost.set(updatedPost);\n this.loadPostVersionLinks(updatedPost);\n },\n error: (error: unknown) => {\n console.error(\n '[taon-cms-post] Unable to link post version',\n error,\n );\n this.error.set(\n this.t.gettext(\n 'The post version could not be linked. Reload the post and try again.',\n ),\n );\n },\n });\n });\n }\n //#endregion\n\n //#region methods / remove version post\n removeVersionPost(kind: TaonCmsPostVersionKind): void {\n const post = this.currentPost();\n const canEdit =\n kind === 'public'\n ? this.canEditPublicVersion()\n : this.canEditPrivateVersion();\n if (\n !this.editing() ||\n !post ||\n !canEdit ||\n this.busy() ||\n this.dialogOpen()\n ) {\n return;\n }\n this.busy.set(true);\n this.error.set('');\n this.api\n .removeVersionPost(post.id, kind, post.version)\n .pipe(\n takeUntilDestroyed(this.destroyRef),\n finalize(() => this.busy.set(false)),\n )\n .subscribe({\n next: updatedPost => {\n this.currentPost.set(updatedPost);\n this.loadPostVersionLinks(updatedPost);\n },\n error: (error: unknown) => {\n console.error('[taon-cms-post] Unable to remove post version', error);\n this.error.set(\n this.t.gettext(\n 'The post version could not be removed. Reload the post and try again.',\n ),\n );\n },\n });\n }\n //#endregion\n\n //#region methods / application hooks\n loadApplicationHooks(): void {\n if (this.applicationHooksLoading()) {\n return;\n }\n this.applicationHooksLoading.set(true);\n this.applicationHooksError.set('');\n this.applicationHooksLoad = this.api\n .listApplicationHooks()\n .pipe(\n takeUntilDestroyed(this.destroyRef),\n finalize(() => this.applicationHooksLoading.set(false)),\n )\n .subscribe({\n next: hooks => {\n this.applicationHooks.set(hooks);\n this.setApplicationHookSelection(this.currentPost(), hooks);\n },\n error: (error: unknown) => {\n console.error(\n '[taon-cms-post] Unable to load application hooks',\n error,\n );\n this.applicationHooksError.set(\n this.t.gettext(\n 'Application hooks could not be loaded. Please try again.',\n ),\n );\n },\n });\n }\n\n //#region methods / set use as application hook\n setUseAsApplicationHook(enabled: boolean): void {\n this.useAsApplicationHook.set(enabled);\n }\n //#endregion\n\n //#region methods / application hook in use by another post\n applicationHookInUseByAnotherPost(\n applicationHook: TaonCmsApplicationHookEntity,\n ): boolean {\n return (\n applicationHook.contentId !== null &&\n applicationHook.contentId !== this.currentPost()?.id\n );\n }\n //#endregion\n\n //#region methods / application hook label\n applicationHookLabel(hook: TaonCmsApplicationHook): string {\n return hook.split('-').join('_').toUpperCase();\n }\n //#endregion\n //#endregion\n\n //#region methods / load permissions\n loadPermissions(): void {\n if (this.permissionsLoading()) {\n return;\n }\n const post = this.requirePost();\n if (!post) {\n return;\n }\n this.permissionsLoading.set(true);\n this.permissionsError.set('');\n this.permissionsLoad = this.api\n .getPermissionConfiguration(post.id)\n .pipe(\n takeUntilDestroyed(this.destroyRef),\n finalize(() => this.permissionsLoading.set(false)),\n )\n .subscribe({\n next: configuration => {\n this.permissions.set(configuration.permissions);\n this.permissionSource.set(configuration.source);\n },\n error: (error: unknown) => {\n console.error('[taon-cms-post] Unable to load permissions', error);\n this.permissionsError.set(\n this.t.gettext(\n 'Permissions could not be loaded. Please try again.',\n ),\n );\n },\n });\n }\n //#endregion\n\n //#region methods / add permission\n addPermission(): void {\n if (\n !this.editing() ||\n this.busy() ||\n this.dialogOpen() ||\n this.permissionSource() ||\n this.permissionsLoading() ||\n this.permissionsError()\n ) {\n return;\n }\n const permissionId = this.selectedPermissionId();\n const permission = this.availablePermissions().find(\n item => item.id === permissionId,\n );\n if (permission) {\n this.permissions.update(permissions => [...permissions, permission]);\n this.selectedPermissionId.set(null);\n }\n }\n //#endregion\n\n //#region methods / remove permission\n removePermission(id: number): void {\n if (\n !this.editing() ||\n this.busy() ||\n this.dialogOpen() ||\n this.permissionSource() ||\n this.permissionsLoading() ||\n this.permissionsError()\n ) {\n return;\n }\n this.permissions.update(items =>\n items.filter(permission => permission.id !== id),\n );\n }\n //#endregion\n\n //#region methods / load permission options\n loadPermissionOptions(): void {\n if (\n this.permissionOptionsLoading() ||\n this.permissionOptions().length > 0\n ) {\n return;\n }\n this.permissionOptionsLoading.set(true);\n this.permissionOptionsError.set('');\n this.permissionApi.allMyEntities$\n .pipe(\n takeUntilDestroyed(this.destroyRef),\n finalize(() => this.permissionOptionsLoading.set(false)),\n )\n .subscribe({\n next: permissions => this.permissionOptions.set(permissions),\n error: (error: unknown) => {\n console.error(\n '[taon-cms-post] Unable to load permission options',\n error,\n );\n this.permissionOptionsError.set(\n this.t.gettext(\n 'Available permissions could not be loaded. Please try again.',\n ),\n );\n },\n });\n }\n //#endregion\n\n protected canRunTableCommand(command: Command): boolean {\n const editor = this.contentEditor();\n\n return (\n !!editor &&\n !this.busy() &&\n !this.dialogOpen() &&\n command(editor.view.state)\n );\n }\n\n protected runTableCommand(event: MouseEvent, command: Command): void {\n event.preventDefault();\n\n const editor = this.contentEditor();\n\n if (!editor || this.busy() || this.dialogOpen()) {\n return;\n }\n\n const view = editor.view;\n\n command(view.state, transaction => view.dispatch(transaction), view);\n\n view.focus();\n }\n\n //#region methods / update draft\n updateRawContent(event: Event): void {\n if (event.target instanceof HTMLTextAreaElement) {\n this.updateDraft('body', event.target.value);\n }\n }\n\n //#region methods / set content tab\n setContentTab(index: number): void {\n const editor = this.contentEditor();\n if (editor && this.contentTab() === 0 && index !== 0) {\n this.updateDraft('body', toHTML(editor.view.state.doc, editor.schema));\n }\n if (editor && index === 0) {\n this.loadingEditorContent = true;\n try {\n editor.setContent(this.draft().body);\n } finally {\n this.loadingEditorContent = false;\n }\n }\n this.contentTab.set(index);\n }\n //#endregion\n\n //#region methods / insert variable\n insertVariable(variable: TaonCmsTemplateVariable): void {\n if (!this.editing() || this.busy() || this.dialogOpen()) {\n return;\n }\n const text = `{{${variable}}}`;\n if (this.contentTab() === 1) {\n const textarea = this.rawContent()?.nativeElement;\n if (textarea) {\n textarea.setRangeText(\n text,\n textarea.selectionStart,\n textarea.selectionEnd,\n 'end',\n );\n this.updateDraft('body', textarea.value);\n textarea.focus();\n }\n } else if (this.contentTab() === 0) {\n const editor = this.contentEditor();\n editor?.commands.insertText(text).exec();\n editor?.view.focus();\n }\n }\n //#endregion\n\n //#region methods / update draft\n updateDraft<K extends keyof TaonCmsPostDraft>(\n field: K,\n value: TaonCmsPostDraft[K],\n ): void {\n if (field === 'title' && this.mode() === 'add') {\n const title = String(value);\n this.draft.update(draft => ({\n ...draft,\n title,\n slug: ___NS__kebabCase(title),\n }));\n return;\n }\n this.draft.update(draft => ({ ...draft, [field]: value }));\n }\n //#endregion\n //#endregion\n\n //#region methods / related child title prefix\n updateChildTitlePrefix(event: Event): void {\n if (event.target instanceof HTMLInputElement) {\n this.childTitlePrefixEdited = true;\n this.childTitlePrefix.set(event.target.value);\n }\n }\n //#endregion\n\n //#region methods / related child files selected\n relatedChildFilesSelected(event: Event): void {\n if (!(event.target instanceof HTMLInputElement)) {\n this.childBatchError.set(\n this.t.gettext('Unable to read the selected files.'),\n );\n return;\n }\n const input = event.target;\n const files = Array.from(input.files ?? []);\n input.value = '';\n if (!this.currentPost() || this.busy() || !files.length) {\n return;\n }\n this.childBatchError.set('');\n this.childFiles.update(selected => [\n ...selected,\n ...files.map(file => ({\n id: ++this.childFileSequence,\n file,\n status: 'pending' as const,\n progress: 0,\n error: '',\n })),\n ]);\n }\n //#endregion\n\n //#region methods / remove related child file\n removeRelatedChildFile(id: number): void {\n if (this.busy()) {\n return;\n }\n this.childFiles.update(files => files.filter(file => file.id !== id));\n }\n //#endregion\n\n //#region methods / upload and create related children\n async uploadAndCreateChildren(): Promise<void> {\n const parent = this.currentPost();\n const titlePrefix = this.childTitlePrefix().trim();\n if (\n !parent ||\n !titlePrefix ||\n this.busy() ||\n !this.childFiles().some(file => file.status !== 'success')\n ) {\n return;\n }\n const pendingFiles = this.childFiles()\n .map((file, index) => ({ file, index }))\n .filter(({ file }) => file.status !== 'success');\n this.busy.set(true);\n this.childBatchError.set('');\n try {\n for (const { file: selectedFile, index } of pendingFiles) {\n const expectedTitle = this.childTitlePreviews()[index];\n this.updateRelatedChildFile(selectedFile.id, {\n status: 'processing',\n progress: selectedFile.uploads ? 75 : 0,\n error: '',\n });\n const type = this.relatedChildFileType(selectedFile.file);\n let body: string | null = null;\n try {\n if (type === TaonCmsContentType.Normal) {\n body = await extractDocumentHtml(selectedFile.file);\n this.updateRelatedChildFile(selectedFile.id, { progress: 10 });\n }\n let uploads = this.childFiles().find(\n file => file.id === selectedFile.id,\n )?.uploads;\n if (!uploads?.source) {\n const source = await this.api.uploadMedia(\n selectedFile.file,\n percentage =>\n this.updateRelatedChildFile(selectedFile.id, {\n progress:\n type === TaonCmsContentType.Video\n ? Math.round(percentage * 0.65)\n : Math.round(percentage * 0.8),\n }),\n );\n uploads = { ...uploads, source };\n this.updateRelatedChildFile(selectedFile.id, { uploads });\n }\n if (type === TaonCmsContentType.Video && !uploads.thumbnail) {\n const thumbnailBlob = await generateVideoThumbnail(\n selectedFile.file,\n );\n const extension =\n thumbnailBlob.type === 'image/webp' ? 'webp' : 'png';\n const thumbnail = await this.api.uploadMedia(\n new File([thumbnailBlob], `thumbnail.${extension}`, {\n type: thumbnailBlob.type,\n }),\n percentage =>\n this.updateRelatedChildFile(selectedFile.id, {\n progress: 65 + Math.round(percentage * 0.25),\n }),\n );\n uploads = { ...uploads, thumbnail };\n this.updateRelatedChildFile(selectedFile.id, { uploads });\n }\n this.updateRelatedChildFile(selectedFile.id, { progress: 95 });\n const thumbnailKey =\n type === TaonCmsContentType.Video\n ? uploads.thumbnail?.key\n : type === TaonCmsContentType.Audio\n ? defaultThumbnailKey(TaonCmsContentType.Audio)\n : defaultThumbnailKey(TaonCmsContentType.Normal);\n if (!thumbnailKey) {\n throw new Error('The video thumbnail could not be uploaded.');\n }\n const sourceUpload = uploads.source;\n if (!sourceUpload) {\n throw new Error('The uploaded source file is unavailable.');\n }\n const result = await this.api.createRelatedChild(parent.id, {\n titlePrefix,\n expectedTitle,\n fileName: selectedFile.file.name,\n mimeType: selectedFile.file.type,\n sourceKey: sourceUpload.key,\n type,\n body,\n videoKey:\n type === TaonCmsContentType.Video ? sourceUpload.key : null,\n audioKey:\n type === TaonCmsContentType.Audio ? sourceUpload.key : null,\n attachmentKey:\n type === TaonCmsContentType.Attachment ? sourceUpload.key : null,\n thumbnailKey,\n });\n this.recordRelatedChildSuccess(\n selectedFile.id,\n result.child,\n result.parentVersion,\n );\n if (type === TaonCmsContentType.Normal) {\n const cleanupErrors = await this.cleanupRelatedChildUploads(\n selectedFile.id,\n uploads,\n [sourceUpload],\n );\n if (cleanupErrors.length) {\n this.updateRelatedChildFile(selectedFile.id, {\n error: cleanupErrors.join(' '),\n });\n }\n }\n } catch (error: unknown) {\n console.error(\n '[taon-cms-post] Unable to create related child from file',\n selectedFile.file.name,\n error,\n );\n let relatedPosts: TaonCmsContentEntity[] | null = null;\n try {\n relatedPosts = await firstValueFrom(\n this.api.listRelatedPosts(parent.id),\n );\n this.relatedPosts.set(relatedPosts);\n } catch (refreshError: unknown) {\n console.error(\n '[taon-cms-post] Unable to verify related child creation',\n refreshError,\n );\n }\n const uploads = this.childFiles().find(\n file => file.id === selectedFile.id,\n )?.uploads;\n const existingChild = relatedPosts?.find(\n post =>\n post.title === expectedTitle &&\n this.relatedChildMatchesFile(post, type, body, uploads),\n );\n if (existingChild) {\n this.recordRelatedChildSuccess(\n selectedFile.id,\n existingChild,\n this.currentPost()?.version ?? parent.version,\n );\n if (type === TaonCmsContentType.Normal && uploads?.source) {\n const cleanupErrors = await this.cleanupRelatedChildUploads(\n selectedFile.id,\n uploads,\n [uploads.source],\n );\n if (cleanupErrors.length) {\n this.updateRelatedChildFile(selectedFile.id, {\n error: cleanupErrors.join(' '),\n });\n }\n }\n continue;\n }\n const cleanupErrors = uploads\n ? relatedPosts\n ? await this.cleanupRelatedChildUploads(selectedFile.id, uploads)\n : []\n : [];\n const reason = error instanceof Error ? error.message : String(error);\n const verificationError = relatedPosts\n ? ''\n : `${this.t.gettext(\n 'The creation result could not be verified; retrying will not duplicate an existing child.',\n )} `;\n this.updateRelatedChildFile(selectedFile.id, {\n status: 'error',\n error:\n `${verificationError}${reason}` +\n (cleanupErrors.length ? ` ${cleanupErrors.join(' ')}` : ''),\n });\n break;\n }\n }\n } finally {\n this.busy.set(false);\n this.loadRelatedPosts();\n }\n }\n //#endregion\n\n //#region methods / related child file type\n private relatedChildFileType(file: File): TaonCmsContentType {\n const extension = file.name.split('.').pop()?.toLowerCase() ?? '';\n if (['doc', 'docx', 'rtf', 'txt'].includes(extension)) {\n return TaonCmsContentType.Normal;\n }\n if (\n file.type.startsWith('video/') ||\n [\n '3gp',\n 'avi',\n 'm4v',\n 'mkv',\n 'mov',\n 'mp4',\n 'mpeg',\n 'mpg',\n 'ogv',\n 'webm',\n ].includes(extension)\n ) {\n return TaonCmsContentType.Video;\n }\n if (\n file.type.startsWith('audio/') ||\n [\n 'aac',\n 'flac',\n 'm4a',\n 'mp3',\n 'oga',\n 'ogg',\n 'opus',\n 'wav',\n 'weba',\n 'wma',\n ].includes(extension)\n ) {\n return TaonCmsContentType.Audio;\n }\n return TaonCmsContentType.Attachment;\n }\n //#endregion\n\n //#region methods / related child matches file\n private relatedChildMatchesFile(\n post: TaonCmsContentEntity,\n type: TaonCmsContentType,\n body: string | null,\n uploads?: RelatedChildFileSelection['uploads'],\n ): boolean {\n const thumbnailKey =\n type === TaonCmsContentType.Video\n ? uploads?.thumbnail?.key\n : type === TaonCmsContentType.Audio\n ? defaultThumbnailKey(TaonCmsContentType.Audio)\n : defaultThumbnailKey(TaonCmsContentType.Normal);\n return (\n post.type === type &&\n post.body === body &&\n post.videoKey ===\n (type === TaonCmsContentType.Video ? uploads?.source?.key : null) &&\n post.audioKey ===\n (type === TaonCmsContentType.Audio ? uploads?.source?.key : null) &&\n post.attachmentKey ===\n (type === TaonCmsContentType.Attachment\n ? uploads?.source?.key\n : null) &&\n post.thumbnailKey === thumbnailKey\n );\n }\n //#endregion\n\n //#region methods / record related child success\n private recordRelatedChildSuccess(\n fileId: number,\n child: TaonCmsContentEntity,\n parentVersion: number,\n ): void {\n this.relatedPosts.update(posts =>\n posts.some(post => post.id === child.id) ? posts : [...posts, child],\n );\n this.currentPost.update(post =>\n post\n ? ({\n ...post,\n version: parentVersion,\n relatedPosts: this.relatedPosts(),\n } as TaonCmsContentEntity)\n : post,\n );\n this.updateRelatedChildFile(fileId, {\n status: 'success',\n progress: 100,\n createdTitle: child.title,\n error: '',\n uploads: undefined,\n });\n }\n //#endregion\n\n //#region methods / cleanup related child uploads\n private async cleanupRelatedChildUploads(\n fileId: number,\n uploads: NonNullable<RelatedChildFileSelection['uploads']>,\n only?: TaonStorageObject[],\n ): Promise<string[]> {\n const objects =\n only ??\n [uploads.thumbnail, uploads.source].filter(\n (object): object is TaonStorageObject => !!object,\n );\n const remaining = new Set<string>();\n const errors: string[] = [];\n for (const object of objects) {\n try {\n if (!(await this.api.deleteUnattachedMedia(object.key))) {\n remaining.add(object.key);\n errors.push(\n this.t.gettext(\n 'An uploaded file is still linked to a post and was not deleted.',\n ),\n );\n }\n } catch (error: unknown) {\n console.error(\n '[taon-cms-post] Unable to clean up uploaded media',\n object.key,\n error,\n );\n remaining.add(object.key);\n errors.push(\n this.t.gettext('An uploaded file could not be cleaned up.'),\n );\n }\n }\n const retained = {\n ...(uploads.source && remaining.has(uploads.source.key)\n ? { source: uploads.source }\n : {}),\n ...(uploads.thumbnail && remaining.has(uploads.thumbnail.key)\n ? { thumbnail: uploads.thumbnail }\n : {}),\n };\n this.updateRelatedChildFile(fileId, {\n uploads: Object.keys(retained).length ? retained : undefined,\n });\n return errors;\n }\n //#endregion\n\n //#region methods / update related child file\n private updateRelatedChildFile(\n id: number,\n changes: Partial<RelatedChildFileSelection>,\n ): void {\n this.childFiles.update(files =>\n files.map(file => (file.id === id ? { ...file, ...changes } : file)),\n );\n }\n //#endregion\n\n //#region methods / file selected\n async fileSelected(event: Event): Promise<void> {\n if (!(event.target instanceof HTMLInputElement)) {\n this.error.set(this.t.gettext('Unable to read the selected media file.'));\n return;\n }\n const input = event.target;\n const file = input.files?.[0];\n if (!file) {\n return;\n }\n const media = this.mediaAttachment();\n if (!media || !this.editing() || this.busy() || this.dialogOpen()) {\n input.value = '';\n return;\n }\n const session = this.editorSession;\n this.busy.set(true);\n this.uploading.set(true);\n this.uploadProgress.set(0);\n this.error.set('');\n try {\n const object = await this.api.uploadMedia(file, percentage => {\n if (!this.destroyRef.destroyed) {\n this.uploadProgress.set(percentage);\n }\n });\n if (!this.destroyRef.destroyed && this.editorSession === session) {\n const fileName = object.fileName || file.name;\n this.mediaFileNames.update(names => ({\n ...names,\n [object.key]: fileName,\n }));\n if (object.downloadUrl) {\n this.uploadedMediaPreview.set({\n key: object.key,\n url: this.uploadedMediaUrl(object.downloadUrl, media.type),\n fileName,\n });\n }\n this.updateDraft(media.key, object.key);\n if (media.type === TaonCmsContentType.Video) {\n try {\n const blob = await generateVideoThumbnail(file);\n const extension = blob.type === 'image/webp' ? 'webp' : 'png';\n await this.storeThumbnail(\n new File([blob], `thumbnail.${extension}`, { type: blob.type }),\n session,\n );\n } catch (error: unknown) {\n console.error(\n '[taon-cms-post] Unable to generate thumbnail',\n error,\n );\n this.error.set(\n this.t.gettext(\n 'The video was uploaded, but its thumbnail could not be generated. Upload a thumbnail or apply a default placeholder.',\n ),\n );\n }\n }\n }\n } catch (error: unknown) {\n console.error('[taon-cms-post] Unable to upload media', error);\n this.error.set(\n this.t.gettext('The media could not be uploaded. Please try again.'),\n );\n } finally {\n this.busy.set(false);\n this.uploading.set(false);\n this.uploadProgress.set(0);\n input.value = '';\n }\n }\n //#endregion\n\n //#region methods / remove media\n removeMedia(): void {\n const media = this.mediaAttachment();\n if (!media || !this.editing() || this.busy() || this.dialogOpen()) {\n return;\n }\n this.uploadedMediaPreview.set(null);\n this.updateDraft(media.key, null);\n }\n //#endregion\n\n //#region methods / uploaded media URL\n private uploadedMediaUrl(url: string, type: TaonCmsContentType): string {\n if (type !== TaonCmsContentType.Attachment) {\n return url;\n }\n const parsedUrl = new URL(url);\n parsedUrl.searchParams.set('download', 'true');\n return parsedUrl.href;\n }\n //#endregion\n\n //#region methods / get media link\n private getMediaLink(\n slug: string,\n type: TaonCmsContentType,\n ): Promise<string> {\n switch (type) {\n case TaonCmsContentType.Video:\n return firstValueFrom(this.api.getVideoLinkBySlug(slug));\n case TaonCmsContentType.Audio:\n return firstValueFrom(this.api.getAudioLinkBySlug(slug));\n case TaonCmsContentType.Attachment:\n return this.api.getAttachmentLinkBySlug(slug);\n default:\n return Promise.reject(new Error('This post type has no media.'));\n }\n }\n //#endregion\n\n //#region methods / get media link for viewing\n private async getMediaLinkForView(\n slug: string,\n type: TaonCmsContentType,\n ): Promise<string> {\n try {\n switch (type) {\n case TaonCmsContentType.Video:\n return await this.api.getPublicVideoLinkBySlug(slug);\n case TaonCmsContentType.Audio:\n return await this.api.getPublicAudioLinkBySlug(slug);\n case TaonCmsContentType.Attachment:\n return await this.api.getPublicAttachmentLinkBySlug(slug);\n default:\n throw new Error('This post type has no media.');\n }\n } catch {\n return this.getMediaLink(slug, type);\n }\n }\n //#endregion\n\n //#region methods / media file name\n mediaFileName(key: string): string {\n const fileName = this.mediaFileNames()[key];\n if (fileName) {\n return fileName;\n }\n const uploaded = this.uploadedMediaPreview();\n if (uploaded?.key === key) {\n return uploaded.fileName;\n }\n const storedName = key.split('/').pop() || key;\n return storedName.replace(/^[0-9a-f-]{36}__/i, '');\n }\n //#endregion\n\n //#region methods / update slug\n updateSlug(event: Event): void {\n if (event.target instanceof HTMLInputElement) {\n this.updateDraft('slug', event.target.value);\n }\n }\n //#endregion\n\n //#region methods / edit\n edit(): void {\n if (this.mode() !== 'view' || this.busy() || this.dialogOpen()) {\n return;\n }\n if (!this.requirePost()) {\n return;\n }\n this.error.set('');\n this.mode.set('edit');\n }\n //#endregion\n\n //#region methods / cancel\n cancel(): void {\n if (this.busy() || this.dialogOpen()) {\n return;\n }\n this.setPost(this.currentPost());\n this.error.set('');\n if (this.editing()) {\n this.mode.set('view');\n }\n this.cancelled.emit();\n }\n //#endregion\n\n //#region methods / save\n save(): void {\n if (this.busy() || this.dialogOpen() || !this.editing()) {\n return;\n }\n if (!this.canSave()) {\n this.error.set(this.t.gettext('A title and slug are required.'));\n return;\n }\n if (this.mode() === 'add') {\n this.persist(\n this.api.createContent({\n ...this.draft(),\n relatedPostIds: this.relatedPosts().map(post => post.id),\n permissionIds: this.permissions().map(permission => permission.id),\n applyPermissionsToRelatedPosts: this.applyPermissionsToRelatedPosts(),\n applyVisibilityToRelatedPosts: this.applyVisibilityToRelatedPosts(),\n status: this.draftStatus(),\n applicationHook: this.useAsApplicationHook()\n ? this.selectedApplicationHook()\n : null,\n }),\n );\n } else {\n const post = this.requirePost();\n if (post) {\n this.persist(this.api.updateContent(post.id, this.updateInput(post)));\n }\n }\n }\n //#endregion\n\n //#region methods / status selection\n selectStatus(): void {\n if (this.statusControlDisabled() || this.mode() === 'view-clean') {\n return;\n }\n const currentStatus = this.draftStatus();\n this.dialogOpen.set(true);\n const ref = this.dialog.open<\n TaonCmsPostChoiceDialogComponent<TaonCmsContentFields['status']>,\n TaonCmsPostChoiceDialogData<TaonCmsContentFields['status']>,\n TaonCmsContentFields['status']\n >(TaonCmsPostChoiceDialogComponent, {\n data: {\n title: this.t.gettext('Change post status'),\n options: [\n { value: 'published', label: this.t.gettext('Published') },\n { value: 'draft', label: this.t.gettext('Draft') },\n { value: 'archived', label: this.t.gettext('Archived') },\n ],\n selected: currentStatus,\n },\n disableClose: true,\n });\n ref\n .afterClosed()\n .pipe(takeUntilDestroyed(this.destroyRef))\n .subscribe(status => {\n this.dialogOpen.set(false);\n if (!status || status === currentStatus) {\n return;\n }\n if (this.mode() === 'add') {\n this.draftStatus.set(status);\n return;\n }\n if (this.editing() && !this.canSave()) {\n this.error.set(this.t.gettext('A title and slug are required.'));\n return;\n }\n const post = this.requirePost();\n if (!post) {\n return;\n }\n this.persist(\n this.api.updateContent(post.id, {\n ...(this.editing()\n ? this.updateInput(post)\n : { expectedVersion: post.version }),\n status,\n ...(status === 'published' && post.status !== 'published'\n ? { publishedAt: new Date() }\n : {}),\n }),\n );\n });\n }\n //#endregion\n\n //#region methods / generate placeholder text\n private isEmptyContent(value: string): boolean {\n if (/<(?:img|video|audio|iframe|object|embed|table|hr)\\b/i.test(value)) {\n return false;\n }\n return !value\n .replace(/<[^>]*>/g, '')\n .replace(/&(?:nbsp|#160|#x0*a0);/gi, ' ')\n .trim();\n }\n\n //#region methods / generate lorem ipsum\n generateLoremIpsum(field: 'excerpt' | 'body'): void {\n if (!this.editing() || this.busy() || this.dialogOpen()) {\n return;\n }\n const existing = this.draft()[field] ?? '';\n if (!this.isEmptyContent(existing)) {\n return;\n }\n const title = this.draft().title.trim() || this.t.gettext('this post');\n if (field === 'excerpt') {\n this.updateDraft(\n 'excerpt',\n `Lorem ipsum dolor sit amet, ${title}; consectetur adipiscing elit.`,\n );\n return;\n }\n const description =\n `Lorem ipsum dolor sit amet, ${title}. ` +\n 'Consectetur adipiscing elit. Integer nec odio. Praesent libero. ' +\n 'Sed cursus ante dapibus diam. Sed nisi. Nulla quis sem at nibh ' +\n 'elementum imperdiet. Duis sagittis ipsum. Praesent mauris. Fusce ' +\n 'nec tellus sed augue semper porta.';\n const escapedDescription = description\n .replace(/&/g, '&amp;')\n .replace(/</g, '&lt;')\n .replace(/>/g, '&gt;');\n this.updateDraft('body', `<p>${escapedDescription}</p>`);\n const editor = this.contentEditor();\n if (editor) {\n this.loadingEditorContent = true;\n try {\n editor.setContent(this.draft().body);\n } finally {\n this.loadingEditorContent = false;\n }\n }\n }\n //#endregion\n //#endregion\n\n //#region methods / revert\n revert(): void {\n const post = this.requirePost();\n if (\n !post ||\n this.busy() ||\n this.dialogOpen() ||\n this.mode() === 'view-clean'\n ) {\n return;\n }\n this.dialogOpen.set(true);\n const ref = this.dialog.open<\n TaonCmsRevisionChooserComponent,\n TaonCmsContentEntity,\n TaonCmsContentEntity\n >(TaonCmsRevisionChooserComponent, {\n data: post,\n width: '560px',\n maxWidth: '95vw',\n disableClose: true,\n });\n ref\n .afterClosed()\n .pipe(takeUntilDestroyed(this.destroyRef))\n .subscribe(restored => {\n this.dialogOpen.set(false);\n if (restored) {\n this.acceptPost(restored);\n }\n });\n }\n //#endregion\n\n //#region methods / delete\n delete(): void {\n const post = this.requirePost();\n if (\n !post ||\n this.busy() ||\n this.dialogOpen() ||\n this.mode() === 'view-clean' ||\n this.mode() === 'add'\n ) {\n return;\n }\n const archived = post.status === 'archived';\n this.dialogOpen.set(true);\n const ref = this.dialog.open(TaonConfirmDialogComponent, {\n data: {\n title: archived\n ? this.t.gettext('Permanently delete post?')\n : this.t.gettext('Archive post?'),\n message: archived\n ? this.t.gettext(\n 'This permanently deletes the post and its assets. This action cannot be undone.',\n )\n : this.t.gettext(\n 'This archives the post. It can be restored from its revisions.',\n ),\n confirmText: archived\n ? this.t.gettext('Permanently delete')\n : this.t.gettext('Delete'),\n },\n });\n ref\n .afterClosed()\n .pipe(takeUntilDestroyed(this.destroyRef))\n .subscribe(confirmed => {\n this.dialogOpen.set(false);\n if (confirmed) {\n if (!archived) {\n this.persist(this.api.deleteContent(post.id, post.version), true);\n return;\n }\n this.busy.set(true);\n this.error.set('');\n this.api\n .permanentlyDeleteContent(post.id, post.version)\n .pipe(\n takeUntilDestroyed(this.destroyRef),\n finalize(() => this.busy.set(false)),\n )\n .subscribe({\n next: () => this.deleted.emit(post),\n error: (error: unknown) => {\n console.error(\n '[taon-cms-post] Unable to permanently delete post',\n error,\n );\n this.error.set(\n this.t.gettext(\n 'The post could not be permanently deleted. Please refresh before retrying.',\n ),\n );\n },\n });\n }\n });\n }\n //#endregion\n\n //#region methods / duplicate\n duplicate(): void {\n if (this.busy() || this.dialogOpen() || this.mode() === 'view-clean') {\n return;\n }\n const post = this.requirePost();\n if (!post) {\n return;\n }\n this.busy.set(true);\n this.error.set('');\n this.api\n .listRelatedPosts(post.id)\n .pipe(takeUntilDestroyed(this.destroyRef), take(1))\n .subscribe({\n next: children => {\n if (!children.length) {\n this.runDuplication(post, false);\n return;\n }\n this.dialogOpen.set(true);\n const ref = this.dialog.open<\n TaonCmsPostChoiceDialogComponent<'single' | 'hierarchy'>,\n TaonCmsPostChoiceDialogData<'single' | 'hierarchy'>,\n 'single' | 'hierarchy'\n >(TaonCmsPostChoiceDialogComponent, {\n data: {\n title: this.t.gettext('Duplicate post'),\n options: [\n {\n value: 'single',\n label: this.t.gettext('Duplicate only this post'),\n },\n {\n value: 'hierarchy',\n label: this.t.gettext('Duplicate this post and its children'),\n },\n ],\n selected: 'single',\n },\n disableClose: true,\n });\n ref\n .afterClosed()\n .pipe(takeUntilDestroyed(this.destroyRef))\n .subscribe(choice => {\n this.dialogOpen.set(false);\n if (!choice) {\n this.busy.set(false);\n return;\n }\n this.runDuplication(post, choice === 'hierarchy');\n });\n },\n error: (error: unknown) => {\n console.error(\n '[taon-cms-post] Unable to load children for duplication',\n error,\n );\n this.busy.set(false);\n this.error.set(\n this.t.gettext(\n 'The post could not be duplicated. Please try again.',\n ),\n );\n },\n });\n }\n\n //#region methods / run duplication\n private runDuplication(\n post: TaonCmsContentEntity,\n includeChildren: boolean,\n ): void {\n this.api\n .duplicateContent(post.id, includeChildren)\n .pipe(\n takeUntilDestroyed(this.destroyRef),\n finalize(() => this.busy.set(false)),\n )\n .subscribe({\n next: duplicate => this.duplicated.emit(duplicate),\n error: (error: unknown) => {\n console.error('[taon-cms-post] Unable to duplicate post', error);\n this.error.set(\n this.t.gettext(\n 'The post could not be duplicated. Please try again.',\n ),\n );\n },\n });\n }\n //#endregion\n //#endregion\n\n //#region methods / update input\n private updateInput(post: TaonCmsContentEntity): TaonCmsUpdateContent {\n return {\n ...this.draft(),\n relatedPostIds: this.relatedPosts().map(related => related.id),\n ...(this.permissionSource()\n ? {}\n : {\n permissionIds: this.permissions().map(permission => permission.id),\n }),\n applyPermissionsToRelatedPosts: this.applyPermissionsToRelatedPosts(),\n applyVisibilityToRelatedPosts: this.applyVisibilityToRelatedPosts(),\n applicationHook: this.useAsApplicationHook()\n ? this.selectedApplicationHook()\n : null,\n expectedVersion: post.version,\n };\n }\n //#endregion\n\n //#region methods / require post\n private requirePost(): TaonCmsContentEntity | null {\n const post = this.currentPost();\n if (!post) {\n this.error.set(this.t.gettext('No post is loaded.'));\n }\n return post;\n }\n //#endregion\n\n //#region methods / set post\n private setPost(post: TaonCmsContentEntity | null): void {\n this.editorSession += 1;\n this.taxonomyLoad?.unsubscribe();\n this.taxonomyLoading.set(false);\n this.taxonomyError.set('');\n this.releaseThumbnailPreview();\n this.stagedThumbnail.set(null);\n this.tagSearch.set('');\n this.relatedPostsLoad?.unsubscribe();\n this.applicationHooksLoad?.unsubscribe();\n this.permissionsLoad?.unsubscribe();\n this.relatedPostsLoading.set(false);\n this.relatedPostsError.set('');\n this.applicationHooksLoading.set(false);\n this.applicationHooksError.set('');\n this.permissionsLoading.set(false);\n this.permissionsError.set('');\n this.uploadedMediaPreview.set(null);\n this.mediaPreviewSignature = '';\n this.mediaPreviewRequest += 1;\n if ((post?.id ?? null) !== this.childTitlePrefixParentId) {\n this.childTitlePrefixParentId = post?.id ?? null;\n this.childTitlePrefixEdited = false;\n this.childTitlePrefix.set(post ? `${post.title} child` : '');\n this.childFiles.set([]);\n this.childBatchError.set('');\n } else if (post && !this.childTitlePrefixEdited) {\n this.childTitlePrefix.set(`${post.title} child`);\n }\n this.currentPost.set(post);\n this.loadVisibilityConfiguration(\n post && this.mode() !== 'view-clean' ? post : null,\n );\n this.loadParentPost(post && this.mode() !== 'view-clean' ? post : null);\n this.loadPostVersionLinks(\n post && this.mode() !== 'view-clean' ? post : null,\n );\n this.relatedPosts.set(post?.relatedPosts ?? []);\n this.permissions.set(post?.permissions ?? []);\n this.permissionSource.set(null);\n this.applyPermissionsToRelatedPosts.set(\n post?.applyPermissionsToRelatedPosts ?? false,\n );\n this.applyVisibilityToRelatedPosts.set(\n post?.applyVisibilityToRelatedPosts ?? false,\n );\n this.draftStatus.set(\n post?.status === 'published' || post?.status === 'archived'\n ? post.status\n : 'draft',\n );\n this.selectedPermissionId.set(null);\n this.setApplicationHookSelection(post, this.applicationHooks());\n this.draft.set({\n type: post?.type ?? TaonCmsContentType.Normal,\n title: post?.title ?? '',\n slug: post?.slug ?? '',\n excerpt: post?.excerpt ?? '',\n body: post?.body ?? '',\n videoKey: post?.videoKey ?? null,\n audioKey: post?.audioKey ?? null,\n attachmentKey: post?.attachmentKey ?? null,\n thumbnailKey: post?.thumbnailKey ?? null,\n categoryId: post?.categoryId ?? null,\n tagIds: [],\n });\n if (\n post &&\n post.relatedPosts === undefined &&\n this.mode() !== 'view-clean'\n ) {\n this.loadRelatedPosts();\n }\n if (post && this.mode() !== 'view-clean') {\n this.loadPermissions();\n }\n if (this.editing()) {\n this.loadTaxonomy();\n }\n }\n //#endregion\n\n //#region methods / set application hook selection\n private setApplicationHookSelection(\n post: TaonCmsContentEntity | null,\n hooks: TaonCmsApplicationHookEntity[],\n ): void {\n const assignedHook =\n post?.applicationHook !== undefined\n ? post.applicationHook?.hook\n : hooks.find(applicationHook => applicationHook.contentId === post?.id)\n ?.hook;\n this.useAsApplicationHook.set(!!assignedHook);\n this.selectedApplicationHook.set(assignedHook ?? null);\n }\n //#endregion\n\n //#region methods / accept post\n private acceptPost(post: TaonCmsContentEntity): void {\n this.setPost(post);\n this.error.set('');\n this.mode.set('view');\n this.changed.emit(post);\n }\n //#endregion\n\n //#region methods / persist\n private persist(\n request: Observable<TaonCmsContentEntity>,\n deleting = false,\n ): void {\n if (this.busy() || this.dialogOpen() || this.mode() === 'view-clean') {\n return;\n }\n this.busy.set(true);\n this.error.set('');\n request\n .pipe(\n takeUntilDestroyed(this.destroyRef),\n finalize(() => this.busy.set(false)),\n )\n .subscribe({\n next: post => {\n this.acceptPost(post);\n if (deleting) {\n this.deleted.emit(post);\n }\n },\n error: (error: unknown) => {\n console.error('[taon-cms-post] Unable to save post', error);\n this.error.set(\n this.t.gettext(\n 'The post could not be saved. Check the slug and your connection. If another user changed it, close and reopen the post before retrying.',\n ),\n );\n },\n });\n }\n //#endregion\n}","@if (mode() !== 'view-clean') {\n <ng-template #actionButtonsTemplate>\n <div class=\"buttons\">\n @if (editing()) {\n <button\n mat-flat-button\n type=\"button\"\n [disabled]=\"busy() || dialogOpen() || !canSave()\"\n (click)=\"save()\">\n {{ mode() === 'add' ? t.gettext('Add') : t.gettext('Save') }}\n </button>\n <button\n mat-button\n type=\"button\"\n [disabled]=\"busy() || dialogOpen()\"\n (click)=\"cancel()\">\n {{ t.gettext('Cancel') }}\n </button>\n } @else if (currentPost()) {\n <button\n mat-button\n type=\"button\"\n [disabled]=\"busy() || dialogOpen()\"\n (click)=\"edit()\">\n <mat-icon>edit</mat-icon> {{ t.gettext('Edit') }}\n </button>\n }\n @if (mode() !== 'add' && currentPost()) {\n <button\n mat-button\n type=\"button\"\n [disabled]=\"busy() || dialogOpen()\"\n (click)=\"revert()\">\n <mat-icon>history</mat-icon> {{ t.gettext('Revert') }}\n </button>\n <button\n mat-button\n type=\"button\"\n [disabled]=\"busy() || dialogOpen()\"\n (click)=\"delete()\">\n <mat-icon>delete</mat-icon> {{ t.gettext('Delete') }}\n </button>\n <button\n mat-button\n type=\"button\"\n [disabled]=\"busy() || dialogOpen()\"\n (click)=\"duplicate()\">\n <mat-icon>content_copy</mat-icon> {{ t.gettext('Duplicate') }}\n </button>\n }\n </div>\n </ng-template>\n <header class=\"post-actions\">\n @if (visibilitySource(); as source) {\n <span\n class=\"post-status\"\n tabindex=\"0\"\n [matTooltip]=\"visibilityInheritedTooltip()\"\n [attr.aria-label]=\"visibilityInheritedTooltip()\">\n <button\n mat-button\n type=\"button\"\n [disabled]=\"true\">\n {{ statusLabel() }}\n </button>\n </span>\n } @else {\n <button\n class=\"post-status\"\n mat-button\n type=\"button\"\n [disabled]=\"statusControlDisabled()\"\n (click)=\"selectStatus()\">\n {{ statusLabel() }}\n </button>\n }\n <ng-container [ngTemplateOutlet]=\"actionButtonsTemplate\" />\n @if (busy()) {\n <span role=\"status\">{{\n uploading()\n ? t.gettext('Uploading... ') + uploadProgress() + '%'\n : t.gettext('Saving...')\n }}</span>\n }\n </header>\n @if (error()) {\n <p\n class=\"error\"\n role=\"alert\">\n {{ error() }}\n </p>\n }\n}\n\n<article\n class=\"post-article\"\n [attr.aria-busy]=\"busy()\">\n @if (editing()) {\n <mat-tab-group animationDuration=\"0ms\">\n <mat-tab [label]=\"t.gettext('CONTENT')\">\n <mat-accordion class=\"post-type-accordion\">\n <mat-expansion-panel #postTypePanel>\n <mat-expansion-panel-header>\n <mat-panel-title>\n <mat-icon>{{ currentPostTypeIcon() }}</mat-icon>\n {{\n t.gettext('Current post type: [[ postType ]]', {\n postType: currentPostType().label,\n })\n }}\n </mat-panel-title>\n </mat-expansion-panel-header>\n <mat-radio-group\n class=\"post-type-selector\"\n [attr.aria-label]=\"t.gettext('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\n [value]=\"type.value\"\n (click)=\"postTypePanel.close()\"\n >{{ type.label }}</mat-radio-button\n >\n }\n </mat-radio-group>\n </mat-expansion-panel>\n </mat-accordion>\n <div\n class=\"post-title editable\"\n contenteditable=\"true\"\n role=\"textbox\"\n [attr.aria-label]=\"t.gettext('Post title')\"\n aria-required=\"true\"\n [attr.data-placeholder]=\"placeholderTitle()\"\n [attr.contenteditable]=\"!busy() && !dialogOpen()\"\n [taonCmsEditableSingleLine]=\"true\"\n [taonCmsEditable]=\"draft().title\"\n (taonCmsEditableChange)=\"updateDraft('title', $event)\"></div>\n @if (subtitleEmpty()) {\n <button\n mat-button\n type=\"button\"\n [disabled]=\"busy() || dialogOpen()\"\n (click)=\"generateLoremIpsum('excerpt')\">\n {{ t.gettext('Generate Lorem Ipsum') }}\n </button>\n }\n <div\n class=\"post-excerpt editable\"\n contenteditable=\"true\"\n role=\"textbox\"\n [attr.aria-label]=\"t.gettext('Post excerpt')\"\n aria-multiline=\"true\"\n [attr.data-placeholder]=\"placeholderShortIntro()\"\n [attr.contenteditable]=\"!busy() && !dialogOpen()\"\n [taonCmsEditable]=\"draft().excerpt\"\n (taonCmsEditableChange)=\"updateDraft('excerpt', $event)\"></div>\n @if (descriptionEmpty()) {\n <button\n mat-button\n type=\"button\"\n [disabled]=\"busy() || dialogOpen()\"\n (click)=\"generateLoremIpsum('body')\">\n {{ t.gettext('Generate Lorem Ipsum') }}\n </button>\n }\n <section class=\"post-content-editor\">\n <mat-tab-group\n [selectedIndex]=\"contentTab()\"\n (selectedIndexChange)=\"setContentTab($event)\"\n [preserveContent]=\"true\"\n animationDuration=\"0ms\">\n <mat-tab [label]=\"t.gettext('Editor')\">\n @if (contentEditor(); as editor) {\n <ng-template #customMenu>\n <button\n type=\"button\"\n class=\"NgxEditor__MenuItem\"\n title=\"Table\"\n aria-label=\"Table actions\"\n [disabled]=\"busy() || dialogOpen()\"\n [matMenuTriggerFor]=\"tableMenu\"\n [matMenuTriggerRestoreFocus]=\"false\"\n (mousedown)=\"$event.preventDefault()\">\n <mat-icon>table_chart</mat-icon>\n </button>\n\n <mat-menu #tableMenu=\"matMenu\">\n <button\n mat-menu-item\n type=\"button\"\n (click)=\"insertTable($event)\">\n <mat-icon>add</mat-icon>\n <span>Insert table</span>\n </button>\n\n <mat-divider />\n\n @for (item of tableCommands; track item.label) {\n <button\n mat-menu-item\n type=\"button\"\n [disabled]=\"!canRunTableCommand(item.command)\"\n (click)=\"runTableCommand($event, item.command)\">\n {{ item.label }}\n </button>\n }\n </mat-menu>\n </ng-template>\n\n <ngx-editor-menu\n [editor]=\"editor\"\n [customMenuRef]=\"customMenu\"\n [toolbar]=\"contentToolbar\"\n [disabled]=\"busy() || dialogOpen()\" />\n <ngx-editor\n [editor]=\"editor\"\n [placeholder]=\"placeholderTellYourStory()\" />\n }\n </mat-tab>\n <mat-tab [label]=\"t.gettext('Raw')\">\n <textarea\n #rawContent\n class=\"raw-content\"\n [attr.aria-label]=\"t.gettext('Post body HTML')\"\n [value]=\"draft().body\"\n [disabled]=\"busy() || dialogOpen()\"\n (input)=\"updateRawContent($event)\"\n spellcheck=\"false\"></textarea>\n </mat-tab>\n <mat-tab [label]=\"t.gettext('Preview')\">\n <div\n class=\"post-body content-preview\"\n [innerHTML]=\"resolvedBody()\"></div>\n </mat-tab>\n </mat-tab-group>\n @if (contentTab() !== 2) {\n <button\n mat-button\n type=\"button\"\n [disabled]=\"busy() || dialogOpen() || !contentEditor()\"\n [matMenuTriggerFor]=\"variableMenu\"\n [matMenuTriggerRestoreFocus]=\"false\">\n {{ t.gettext('Insert variable') }}\n </button>\n }\n <mat-menu #variableMenu=\"matMenu\">\n <button\n mat-menu-item\n [matMenuTriggerFor]=\"siteVariableMenu\">\n {{ t.gettext('Site') }}\n </button>\n <button\n mat-menu-item\n [matMenuTriggerFor]=\"postVariableMenu\">\n {{ t.gettext('Post') }}\n </button>\n </mat-menu>\n <mat-menu #siteVariableMenu=\"matMenu\">\n <button\n mat-menu-item\n (click)=\"insertVariable('frontendUrl')\">\n {{ t.gettext('Frontend URL') }}\n </button>\n <button\n mat-menu-item\n (click)=\"insertVariable('site.name')\">\n {{ t.gettext('Site name') }}\n </button>\n <button\n mat-menu-item\n (click)=\"insertVariable('currentYear')\">\n {{ t.gettext('Current year') }}\n </button>\n </mat-menu>\n <mat-menu #postVariableMenu=\"matMenu\">\n <button\n mat-menu-item\n (click)=\"insertVariable('post.title')\">\n {{ t.gettext('Post title') }}\n </button>\n <button\n mat-menu-item\n (click)=\"insertVariable('post.url')\">\n {{ t.gettext('Post URL') }}\n </button>\n <button\n mat-menu-item\n (click)=\"insertVariable('post.id')\">\n {{ t.gettext('Post ID') }}\n </button>\n <button\n mat-menu-item\n (click)=\"insertVariable('post.thumbnailUrl')\">\n {{ t.gettext('Post Thumbnail URL') }}\n </button>\n </mat-menu>\n </section>\n <label class=\"slug-field\">\n <span>{{ t.gettext('URL slug') }}</span>\n <input\n [attr.aria-label]=\"t.gettext('URL slug')\"\n [value]=\"draft().slug\"\n [disabled]=\"busy() || dialogOpen()\"\n (input)=\"updateSlug($event)\"\n [placeholder]=\"t.gettext('my-post')\" />\n </label>\n </mat-tab>\n <mat-tab [label]=\"t.gettext('SETTINGS')\">\n <div class=\"post-settings\">\n <mat-card class=\"post-setting-card\">\n <section\n class=\"related-child-files\"\n aria-labelledby=\"related-child-files-heading\">\n <h2 id=\"related-child-files-heading\">\n {{ t.gettext('Create related children from files') }}\n </h2>\n @if (!currentPost()) {\n <p role=\"note\">\n {{\n t.gettext(\n 'Please save the post before creating children.'\n )\n }}\n </p>\n }\n <mat-form-field appearance=\"outline\">\n <mat-label>{{ t.gettext('Child title prefix') }}</mat-label>\n <input\n matInput\n [value]=\"childTitlePrefix()\"\n [disabled]=\"!currentPost() || busy() || dialogOpen()\"\n (input)=\"updateChildTitlePrefix($event)\" />\n </mat-form-field>\n <input\n #relatedChildFilesInput\n hidden\n type=\"file\"\n multiple\n [disabled]=\"!currentPost() || busy() || dialogOpen()\"\n (change)=\"relatedChildFilesSelected($event)\" />\n <button\n mat-button\n type=\"button\"\n [disabled]=\"!currentPost() || busy() || dialogOpen()\"\n (click)=\"relatedChildFilesInput.click()\">\n <mat-icon>add</mat-icon>\n {{ t.gettext('Choose files') }}\n </button>\n @if (childBatchError()) {\n <p\n class=\"error\"\n role=\"alert\">\n {{ childBatchError() }}\n </p>\n }\n @if (childFiles().length) {\n <div class=\"related-child-progress\">\n <mat-progress-bar\n mode=\"determinate\"\n [value]=\"childOverallProgress()\"\n [attr.aria-label]=\"\n t.gettext('Overall child creation progress')\n \" />\n <span>\n {{ childOverallProgress() }}%\n {{ t.gettext('overall progress') }}\n </span>\n </div>\n <ul>\n @for (file of childFiles(); track file.id; let index =\n $index) {\n <li>\n <div class=\"related-child-file\">\n <div class=\"related-child-file-heading\">\n <span>{{ file.file.name }}</span>\n <span>{{ childTitlePreviews()[index] }}</span>\n </div>\n <div class=\"related-child-file-progress\">\n <mat-progress-bar\n mode=\"determinate\"\n [value]=\"file.progress\"\n [attr.aria-label]=\"\n t.gettext('Progress for [[ fileName ]]', {\n fileName: file.file.name,\n })\n \" />\n <span>{{ file.progress }}%</span>\n </div>\n @if (file.status === 'processing') {\n <p role=\"status\">{{ t.gettext('Processing...') }}</p>\n } @else if (file.status === 'success') {\n <p role=\"status\">{{ t.gettext('Child created.') }}</p>\n @if (file.error) {\n <p\n class=\"error\"\n role=\"alert\">\n {{ file.error }}\n </p>\n }\n } @else if (file.status === 'error') {\n <p\n class=\"error\"\n role=\"alert\">\n {{ file.error }}\n </p>\n } @else {\n <p>{{ t.gettext('Waiting to upload.') }}</p>\n }\n </div>\n <button\n mat-icon-button\n type=\"button\"\n [attr.aria-label]=\"\n t.gettext('Remove file [[ fileName ]]', {\n fileName: file.file.name,\n })\n \"\n [disabled]=\"!currentPost() || busy() || dialogOpen()\"\n (click)=\"removeRelatedChildFile(file.id)\">\n <mat-icon>close</mat-icon>\n </button>\n </li>\n }\n </ul>\n }\n <button\n mat-flat-button\n type=\"button\"\n [disabled]=\"!canUploadRelatedChildren()\"\n (click)=\"uploadAndCreateChildren()\">\n {{ t.gettext('Upload and Create Children') }}\n </button>\n </section>\n </mat-card>\n @if (mediaAttachment(); as media) {\n <mat-card class=\"post-setting-card\">\n <section\n class=\"media-attachment\"\n aria-labelledby=\"media-attachment-heading\">\n <h2 id=\"media-attachment-heading\">{{ media.heading }}</h2>\n @if (uploading()) {\n <mat-progress-bar\n mode=\"determinate\"\n [value]=\"uploadProgress()\"\n [attr.aria-label]=\"t.gettext('Media upload progress')\" />\n }\n @if (draft()[media.key]; as key) {\n @if (mediaPreviewLoading()) {\n <p role=\"status\">\n {{ t.gettext('Loading media preview...') }}\n </p>\n }\n @if (mediaPreviewError()) {\n <p\n class=\"error\"\n role=\"alert\">\n {{ mediaPreviewError() }}\n </p>\n }\n @if (media.type === 'video' && mediaPreviewUrl()) {\n <video\n controls\n preload=\"metadata\"\n [src]=\"mediaPreviewUrl()\">\n {{\n t.gettext(\n 'Your browser does not support video playback.'\n )\n }}\n </video>\n } @else if (media.type === 'audio' && mediaPreviewUrl()) {\n <audio\n controls\n preload=\"metadata\"\n [src]=\"mediaPreviewUrl()\">\n {{\n t.gettext(\n 'Your browser does not support audio playback.'\n )\n }}\n </audio>\n } @else if (\n media.type === 'attachment' && mediaPreviewUrl()\n ) {\n <p>\n {{\n t.gettext('Attached file: [[ fileName ]]', {\n fileName: mediaFileName(key),\n })\n }}\n <a\n [href]=\"mediaPreviewUrl()\"\n target=\"_blank\"\n rel=\"noopener\"\n >{{ t.gettext('Download or open') }}</a\n >\n </p>\n }\n <input\n #mediaInput\n hidden\n type=\"file\"\n [accept]=\"media.accept\"\n [disabled]=\"busy() || dialogOpen()\"\n (change)=\"fileSelected($event)\" />\n <button\n mat-button\n type=\"button\"\n [disabled]=\"busy() || dialogOpen()\"\n (click)=\"mediaInput.click()\">\n {{ t.gettext('Replace') }}\n </button>\n <button\n mat-button\n type=\"button\"\n [disabled]=\"busy() || dialogOpen()\"\n (click)=\"removeMedia()\">\n {{ t.gettext('Remove') }}\n </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\n mat-button\n type=\"button\"\n [disabled]=\"busy() || dialogOpen()\"\n (click)=\"mediaInput.click()\">\n {{ media.uploadLabel }}\n </button>\n }\n </section>\n </mat-card>\n }\n <mat-card class=\"post-setting-card\">\n <section\n class=\"post-thumbnail\"\n aria-labelledby=\"thumbnail-heading\">\n <h2 id=\"thumbnail-heading\">{{ t.gettext('Thumbnail') }}</h2>\n @if (thumbnailPreviewUrl()) {\n <img\n class=\"thumbnail-preview\"\n [src]=\"thumbnailPreviewUrl()\"\n [alt]=\"t.gettext('Post thumbnail')\" />\n } @else {\n <p>{{ t.gettext('No thumbnail selected.') }}</p>\n }\n @if (thumbnailError()) {\n <p role=\"alert\">{{ thumbnailError() }}</p>\n }\n <input\n #thumbnailInput\n hidden\n type=\"file\"\n accept=\"image/*\"\n [disabled]=\"busy() || dialogOpen()\"\n (change)=\"thumbnailSelected($event)\" />\n <div class=\"buttons\">\n <button\n mat-button\n type=\"button\"\n [disabled]=\"busy() || dialogOpen()\"\n (click)=\"thumbnailInput.click()\">\n {{ t.gettext('Upload Thumbnail') }}\n </button>\n <button\n mat-button\n type=\"button\"\n [disabled]=\"busy() || dialogOpen()\"\n (click)=\"applyDefaultThumbnail()\">\n {{ t.gettext('Apply Default Placeholder') }}\n </button>\n </div>\n </section>\n </mat-card>\n <mat-card class=\"post-setting-card\">\n <section\n class=\"post-taxonomy\"\n aria-labelledby=\"category-heading\">\n <h2 id=\"category-heading\">{{ t.gettext('Category / Tags') }}</h2>\n @if (taxonomyLoading()) {\n <p role=\"status\">\n {{ t.gettext('Loading categories and tags...') }}\n </p>\n }\n @if (taxonomyError()) {\n <p role=\"alert\">{{ taxonomyError() }}</p>\n <button\n mat-button\n type=\"button\"\n [disabled]=\"busy()\"\n (click)=\"loadTaxonomy()\">\n {{ t.gettext('Try again') }}\n </button>\n }\n <mat-form-field appearance=\"outline\">\n <mat-label>{{ t.gettext('Category') }}</mat-label>\n <mat-select\n [value]=\"draft().categoryId\"\n [disabled]=\"\n busy() ||\n dialogOpen() ||\n taxonomyLoading() ||\n !!taxonomyError()\n \"\n (selectionChange)=\"updateDraft('categoryId', $event.value)\">\n <mat-option [value]=\"null\">{{\n t.gettext('None')\n }}</mat-option>\n @for (category of categories(); track category.id) {\n <mat-option [value]=\"category.id\">{{\n category.name\n }}</mat-option>\n }\n </mat-select>\n </mat-form-field>\n <h3>{{ t.gettext('Tags') }}</h3>\n <mat-chip-set [attr.aria-label]=\"t.gettext('Selected tags')\">\n @for (tag of selectedTags(); track tag.id) {\n <mat-chip\n [disabled]=\"busy() || dialogOpen() || taxonomyLoading()\"\n (removed)=\"removeTag(tag.id)\">\n {{ tag.name }}\n <button\n matChipRemove\n type=\"button\"\n [disabled]=\"busy() || dialogOpen() || taxonomyLoading()\"\n [attr.aria-label]=\"\n t.gettext('Remove tag [[ name ]]', { name: tag.name })\n \">\n <mat-icon>cancel</mat-icon>\n </button>\n </mat-chip>\n }\n </mat-chip-set>\n <mat-form-field appearance=\"outline\">\n <mat-label>{{ t.gettext('Search tags') }}</mat-label>\n <input\n matInput\n [value]=\"tagSearch()\"\n (input)=\"filterTags($event)\"\n [disabled]=\"busy() || dialogOpen() || taxonomyLoading()\" />\n </mat-form-field>\n <mat-form-field appearance=\"outline\">\n <mat-label>{{ t.gettext('Add tag') }}</mat-label>\n <mat-select\n [value]=\"null\"\n [disabled]=\"\n busy() ||\n dialogOpen() ||\n taxonomyLoading() ||\n !!taxonomyError()\n \"\n (selectionChange)=\"addTag($event.value)\">\n @for (tag of filteredTags(); track tag.id) {\n <mat-option [value]=\"tag.id\">{{ tag.name }}</mat-option>\n }\n </mat-select>\n </mat-form-field>\n <div class=\"buttons\">\n <button\n mat-button\n type=\"button\"\n [disabled]=\"busy() || dialogOpen() || taxonomyLoading()\"\n (click)=\"createTaxonomy('category')\">\n <mat-icon>add</mat-icon> {{ t.gettext('Add category') }}\n </button>\n <button\n mat-button\n type=\"button\"\n [disabled]=\"busy() || dialogOpen() || taxonomyLoading()\"\n (click)=\"createTaxonomy('tag')\">\n <mat-icon>add</mat-icon> {{ t.gettext('Add tag') }}\n </button>\n </div>\n </section>\n </mat-card>\n <mat-card class=\"post-setting-card\">\n <section\n class=\"parent-post\"\n aria-labelledby=\"parent-post-heading\">\n <h2 id=\"parent-post-heading\">{{ t.gettext('Parent Post') }}</h2>\n @if (parentPostLoading()) {\n <p role=\"status\">{{ t.gettext('Loading parent post...') }}</p>\n } @else if (parentPostError()) {\n <p\n class=\"error\"\n role=\"alert\">\n {{ parentPostError() }}\n </p>\n } @else if (parentPost(); as parent) {\n <p>\n <taon-cms-post-thumbnail [post]=\"parent\" />\n <a\n href=\"#\"\n (click)=\"requestPostEditor($event, parent)\">\n {{ parent.title }}\n </a>\n </p>\n <button\n mat-button\n type=\"button\"\n [disabled]=\"busy() || dialogOpen()\"\n (click)=\"removeParentPost()\">\n <mat-icon>link_off</mat-icon>\n {{ t.gettext('Remove from parent') }}\n </button>\n } @else {\n <p>{{ t.gettext('No parent added') }}</p>\n <button\n mat-button\n type=\"button\"\n [disabled]=\"busy() || dialogOpen() || !currentPost()\"\n (click)=\"addAsChildOf()\">\n <mat-icon>account_tree</mat-icon>\n @if (currentPost()) {\n {{ t.gettext('Add as a child') }}\n } @else {\n {{\n t.gettext(\n 'Add as a child (disabled — please save the post first)'\n )\n }}\n }\n </button>\n }\n </section>\n </mat-card>\n <mat-card class=\"post-setting-card\">\n <section\n class=\"related-posts\"\n aria-labelledby=\"related-posts-heading\">\n <h2 id=\"related-posts-heading\">\n {{ t.gettext('Related posts') }}\n </h2>\n @if (relatedPostsLoading()) {\n <p role=\"status\">{{ t.gettext('Loading related posts...') }}</p>\n } @else if (relatedPostsError()) {\n <p\n class=\"error\"\n role=\"alert\">\n {{ relatedPostsError() }}\n </p>\n <button\n mat-button\n type=\"button\"\n [disabled]=\"busy() || dialogOpen()\"\n (click)=\"loadRelatedPosts()\">\n {{ t.gettext('Try again') }}\n </button>\n } @else {\n <ul\n cdkDropList\n [cdkDropListData]=\"relatedPosts()\"\n [cdkDropListDisabled]=\"busy() || dialogOpen()\"\n (cdkDropListDropped)=\"reorderRelatedPosts($event)\">\n @for (post of relatedPosts(); track post.id) {\n <li cdkDrag [cdkDragData]=\"post\">\n <button\n mat-icon-button\n cdkDragHandle\n type=\"button\"\n [disabled]=\"busy() || dialogOpen()\"\n [attr.aria-label]=\"\n t.gettext('Reorder related post [[ title ]]', {\n title: post.title,\n })\n \">\n <mat-icon>drag_indicator</mat-icon>\n </button>\n <taon-cms-post-thumbnail [post]=\"post\" />\n <span class=\"related-post-title\">\n #{{ post.id }} -\n <a\n href=\"#\"\n (click)=\"requestPostEditor($event, post)\">\n {{ post.title }}\n </a>\n </span>\n <button\n mat-icon-button\n type=\"button\"\n [attr.aria-label]=\"\n t.gettext('Remove related post [[ title ]]', {\n title: post.title,\n })\n \"\n [disabled]=\"busy() || dialogOpen()\"\n (click)=\"removeRelatedPost(post.id)\">\n <mat-icon>close</mat-icon>\n </button>\n </li>\n } @empty {\n <li>{{ t.gettext('No related posts yet.') }}</li>\n }\n </ul>\n <button\n mat-button\n type=\"button\"\n [disabled]=\"busy() || dialogOpen()\"\n (click)=\"addRelatedPost()\">\n <mat-icon>add</mat-icon> {{ t.gettext('Add related post') }}\n </button>\n }\n <mat-checkbox\n [checked]=\"applyVisibilityToRelatedPosts()\"\n [disabled]=\"busy() || dialogOpen()\"\n (change)=\"applyVisibilityToRelatedPosts.set($event.checked)\">\n {{ t.gettext('Apply visibility to related posts') }}\n </mat-checkbox>\n </section>\n </mat-card>\n <mat-card class=\"post-setting-card\">\n <section\n class=\"post-version-links\"\n aria-labelledby=\"post-version-links-heading\">\n <h2 id=\"post-version-links-heading\">\n {{ t.gettext('Post versions') }}\n </h2>\n @if (!currentPost()) {\n <p role=\"note\">\n {{\n t.gettext('Save the post first to manage version links.')\n }}\n </p>\n }\n @if (postVersionLinksLoading()) {\n <p role=\"status\">{{ t.gettext('Loading post versions...') }}</p>\n }\n @if (postVersionLinksError()) {\n <p\n class=\"error\"\n role=\"alert\">\n {{ postVersionLinksError() }}\n </p>\n <button\n mat-button\n type=\"button\"\n [disabled]=\"busy() || dialogOpen()\"\n (click)=\"loadPostVersionLinks(currentPost())\">\n {{ t.gettext('Try again') }}\n </button>\n }\n <div class=\"post-version-link\">\n <h3>{{ t.gettext('Public post version') }}</h3>\n @if (postVersionLinks().publicVersionPost; as versionPost) {\n <p>\n <taon-cms-post-thumbnail [post]=\"versionPost\" />\n <a\n href=\"#\"\n (click)=\"requestPostEditor($event, versionPost)\">\n {{ versionPost.title }}\n </a>\n [{{ versionPost.slug }}]\n </p>\n @if (canEditPublicVersion()) {\n <button\n mat-button\n type=\"button\"\n [disabled]=\"busy() || dialogOpen()\"\n (click)=\"selectVersionPost('public')\">\n {{ t.gettext('Replace public version') }}\n </button>\n <button\n mat-button\n type=\"button\"\n [disabled]=\"busy() || dialogOpen()\"\n (click)=\"removeVersionPost('public')\">\n {{ t.gettext('Remove public version') }}\n </button>\n } @else {\n <p>\n {{\n t.gettext(\n 'Version editing is disabled for the current post status.'\n )\n }}\n </p>\n }\n } @else {\n @if (!postVersionLinksLoading() && !postVersionLinksError()) {\n <p>{{ t.gettext('No public post version linked.') }}</p>\n }\n @if (\n currentPost() &&\n !postVersionLinksLoading() &&\n !postVersionLinksError() &&\n !canEditPublicVersion()\n ) {\n <p>\n {{\n t.gettext(\n 'Version editing is disabled for the current post status.'\n )\n }}\n </p>\n }\n <button\n mat-button\n type=\"button\"\n [disabled]=\"\n busy() || dialogOpen() || !canEditPublicVersion()\n \"\n (click)=\"selectVersionPost('public')\">\n <mat-icon>add</mat-icon>\n {{ t.gettext('Add public post version') }}\n </button>\n }\n </div>\n <div class=\"post-version-link\">\n <h3>{{ t.gettext('Private post version') }}</h3>\n @if (postVersionLinks().privateVersionPost; as versionPost) {\n <p>\n <taon-cms-post-thumbnail [post]=\"versionPost\" />\n <a\n href=\"#\"\n (click)=\"requestPostEditor($event, versionPost)\">\n {{ versionPost.title }}\n </a>\n [{{ versionPost.slug }}]\n </p>\n @if (canEditPrivateVersion()) {\n <button\n mat-button\n type=\"button\"\n [disabled]=\"busy() || dialogOpen()\"\n (click)=\"selectVersionPost('private')\">\n {{ t.gettext('Replace private version') }}\n </button>\n <button\n mat-button\n type=\"button\"\n [disabled]=\"busy() || dialogOpen()\"\n (click)=\"removeVersionPost('private')\">\n {{ t.gettext('Remove private version') }}\n </button>\n } @else {\n <p>\n {{\n t.gettext(\n 'Version editing is disabled for the current post status.'\n )\n }}\n </p>\n }\n } @else {\n @if (!postVersionLinksLoading() && !postVersionLinksError()) {\n <p>{{ t.gettext('No private post version linked.') }}</p>\n }\n @if (\n currentPost() &&\n !postVersionLinksLoading() &&\n !postVersionLinksError() &&\n !canEditPrivateVersion()\n ) {\n <p>\n {{\n t.gettext(\n 'Version editing is disabled for the current post status.'\n )\n }}\n </p>\n }\n <button\n mat-button\n type=\"button\"\n [disabled]=\"\n busy() || dialogOpen() || !canEditPrivateVersion()\n \"\n (click)=\"selectVersionPost('private')\">\n <mat-icon>add</mat-icon>\n {{ t.gettext('Add private post version') }}\n </button>\n }\n </div>\n </section>\n </mat-card>\n\n @if (!mediaAttachment()) {\n <mat-card class=\"post-setting-card\">\n <section\n class=\"application-hook\"\n aria-labelledby=\"application-hook-heading\">\n <h2 id=\"application-hook-heading\">\n {{ t.gettext('Hooks') }}\n </h2>\n @if (applicationHooksLoading()) {\n <p role=\"status\">\n {{ t.gettext('Loading application hooks...') }}\n </p>\n } @else if (applicationHooksError()) {\n <p\n class=\"error\"\n role=\"alert\">\n {{ applicationHooksError() }}\n </p>\n <button\n mat-button\n type=\"button\"\n [disabled]=\"busy() || dialogOpen()\"\n (click)=\"loadApplicationHooks()\">\n {{ t.gettext('Try again') }}\n </button>\n } @else {\n <mat-checkbox\n [checked]=\"useAsApplicationHook()\"\n [disabled]=\"busy() || dialogOpen()\"\n (change)=\"setUseAsApplicationHook($event.checked)\">\n {{ t.gettext('Use as application hook') }}\n </mat-checkbox>\n @if (useAsApplicationHook()) {\n <mat-form-field\n appearance=\"outline\"\n subscriptSizing=\"dynamic\">\n <mat-label>{{ t.gettext('Application Hook') }}</mat-label>\n <mat-select\n [value]=\"selectedApplicationHook()\"\n [disabled]=\"busy() || dialogOpen()\"\n (selectionChange)=\"\n selectedApplicationHook.set($event.value)\n \">\n @for (\n applicationHook of applicationHooks();\n track applicationHook.id\n ) {\n <mat-option\n [value]=\"applicationHook.hook\"\n [disabled]=\"\n applicationHookInUseByAnotherPost(applicationHook)\n \">\n {{ applicationHookLabel(applicationHook.hook) }}\n @if (\n applicationHookInUseByAnotherPost(applicationHook)\n ) {\n {{\n t.gettext('(in use by post # [[ postId ]])', {\n postId: applicationHook.contentId,\n })\n }}\n }\n </mat-option>\n } @empty {\n <mat-option [disabled]=\"true\">{{\n t.gettext('No application hooks configured')\n }}</mat-option>\n }\n </mat-select>\n </mat-form-field>\n }\n }\n </section>\n </mat-card>\n }\n <mat-card class=\"post-setting-card\">\n <section\n class=\"post-permissions\"\n aria-labelledby=\"post-permissions-heading\">\n <h2 id=\"post-permissions-heading\">\n {{ t.gettext('Permissions') }}\n </h2>\n @if (permissionSource(); as source) {\n <p role=\"note\">\n {{\n t.gettext(\n 'Permissions are inherited from # [[ postId ]] - [[ title ]]. Edit the source post to change them.',\n { postId: source.id, title: source.title }\n )\n }}\n </p>\n }\n @if (permissionsLoading()) {\n <p role=\"status\">\n {{ t.gettext('Loading assigned permissions...') }}\n </p>\n } @else if (permissionsError()) {\n <p\n class=\"error\"\n role=\"alert\">\n {{ permissionsError() }}\n </p>\n <button\n mat-button\n type=\"button\"\n [disabled]=\"busy() || dialogOpen()\"\n (click)=\"loadPermissions()\">\n {{ t.gettext('Try again') }}\n </button>\n } @else {\n <ul>\n @for (permission of permissions(); track permission.id) {\n <li>\n <span>{{ permission.name }} ({{ permission.code }})</span>\n <button\n mat-icon-button\n type=\"button\"\n [attr.aria-label]=\"\n t.gettext('Remove permission [[ name ]]', {\n name: permission.name,\n })\n \"\n [disabled]=\"\n busy() || dialogOpen() || !!permissionSource()\n \"\n (click)=\"removePermission(permission.id)\">\n <mat-icon>close</mat-icon>\n </button>\n </li>\n } @empty {\n <li>{{ t.gettext('No permissions assigned.') }}</li>\n }\n </ul>\n @if (permissionOptionsError()) {\n <p\n class=\"error\"\n role=\"alert\">\n {{ permissionOptionsError() }}\n </p>\n <button\n mat-button\n type=\"button\"\n [disabled]=\"\n busy() || dialogOpen() || permissionOptionsLoading()\n \"\n (click)=\"loadPermissionOptions()\">\n {{ t.gettext('Try again') }}\n </button>\n } @else {\n <div class=\"permission-assignment\">\n <mat-form-field\n class=\"w-full\"\n appearance=\"outline\"\n subscriptSizing=\"dynamic\">\n <mat-label>{{ t.gettext('Permission') }}</mat-label>\n <mat-select\n [value]=\"selectedPermissionId()\"\n [disabled]=\"\n busy() ||\n dialogOpen() ||\n permissionOptionsLoading() ||\n !!permissionSource()\n \"\n (selectionChange)=\"\n selectedPermissionId.set($event.value)\n \">\n @for (\n permission of availablePermissions();\n track permission.id\n ) {\n <mat-option [value]=\"permission.id\"\n >{{ permission.name }} ({{\n permission.code\n }})</mat-option\n >\n } @empty {\n <mat-option [disabled]=\"true\">{{\n t.gettext('No permissions available')\n }}</mat-option>\n }\n </mat-select>\n </mat-form-field>\n <button\n mat-button\n type=\"button\"\n [disabled]=\"\n busy() ||\n dialogOpen() ||\n !selectedPermissionId() ||\n !!permissionSource()\n \"\n (click)=\"addPermission()\">\n <mat-icon>add</mat-icon>\n {{ t.gettext('Assign permission') }}\n </button>\n </div>\n }\n }\n @if (!permissionSource()) {\n <mat-checkbox\n [checked]=\"applyPermissionsToRelatedPosts()\"\n [disabled]=\"busy() || dialogOpen()\"\n (change)=\"applyPermissionsToRelatedPosts.set($event.checked)\">\n {{ t.gettext('Apply permissions to related posts') }}\n </mat-checkbox>\n }\n </section>\n </mat-card>\n </div>\n </mat-tab>\n </mat-tab-group>\n } @else if (currentPost(); as post) {\n @if (thumbnailPreviewUrl()) {\n <img\n class=\"thumbnail-preview\"\n [src]=\"thumbnailPreviewUrl()\"\n [alt]=\"t.gettext('Post thumbnail')\" />\n }\n @if (thumbnailError()) {\n <p role=\"alert\">{{ thumbnailError() }}</p>\n }\n <h1 class=\"post-title\">{{ post.title }}</h1>\n @if (post.excerpt) {\n <p class=\"post-excerpt\">{{ post.excerpt }}</p>\n }\n <div\n class=\"post-body\"\n [innerHTML]=\"resolvedBody()\"></div>\n @if (mediaAttachment(); as media) {\n @if (draft()[media.key]; as key) {\n @if (mediaPreviewLoading()) {\n <p role=\"status\">{{ t.gettext('Loading media...') }}</p>\n } @else if (mediaPreviewError()) {\n <p\n class=\"error\"\n role=\"alert\">\n {{ mediaPreviewError() }}\n </p>\n } @else if (media.type === 'video' && mediaPreviewUrl()) {\n <video\n controls\n preload=\"metadata\"\n [attr.controlsList]=\"\n currentPost()?.status === 'archived' ||\n currentPost()?.status === 'draft'\n ? 'nodownload noremoteplayback'\n : null\n \"\n [poster]=\"thumbnailPreviewUrl() || null\"\n [src]=\"mediaPreviewUrl()\">\n {{ t.gettext('Your browser does not support video playback.') }}\n </video>\n } @else if (media.type === 'audio' && mediaPreviewUrl()) {\n <audio\n controls\n preload=\"metadata\"\n [attr.controlsList]=\"\n currentPost()?.status === 'archived' ||\n currentPost()?.status === 'draft'\n ? 'nodownload noremoteplayback'\n : null\n \"\n [src]=\"mediaPreviewUrl()\">\n {{ t.gettext('Your browser does not support audio playback.') }}\n </audio>\n } @else if (media.type === 'attachment' && mediaPreviewUrl()) {\n <p>\n {{\n t.gettext('Attached file: [[ fileName ]]', {\n fileName: mediaFileName(key),\n })\n }}\n <a\n [href]=\"mediaPreviewUrl()\"\n target=\"_blank\"\n rel=\"noopener\"\n >{{ t.gettext('Download or open') }}</a\n >\n </p>\n }\n }\n }\n @if (mode() === 'view-clean') {\n <taon-cms-comments\n [contentId]=\"post.id\"\n class=\"w-full\" />\n }\n } @else {\n <p role=\"status\">{{ t.gettext('No post is loaded.') }}</p>\n }\n</article>\n","//#region imports\nimport { Routes } from '@angular/router';\nimport { adminLazyRoute } from '@taon-dev/ui/browser-prod';\n//#endregion\n\nexport const TaonCmsPostRoutes: Routes = [\n {\n path: '',\n loadComponent: () =>\n import('./taon-cms-post.component').then(m => m.TaonCmsPostComponent),\n\n children: [\n // adminLazyRoute({\n // path: 'dashboard',\n // menuItem: 'Dashboard',\n // icon: 'dashboard',\n // expandable: false,\n // loader: () =>\n // import('./anothermodule.routes').then(m => m.DashboardRoutes),\n // }),\n ],\n },\n];\n\n/**\n * By default exporting TaonCmsPostRoutes,\n * the command `taon generate:app:routes`\n * will automatically add them to the root routes in ./src/app.ts.\n */\n// export default TaonCmsPostRoutes;","import { AsyncPipe } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n DestroyRef,\n TemplateRef,\n inject,\n} from '@angular/core';\nimport { MatButtonModule } from '@angular/material/button';\nimport { ActivatedRoute, Router } from '@angular/router';\nimport { combineLatest, map } from 'rxjs';\nimport { Translation } from '@taon-dev/i18n/browser-prod';\nimport { TaonAdminContentFooterService } from '@taon-dev/ui/browser-prod';\nimport { Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\n\nimport type { TaonCmsContentEntity } from '../../taon-cms-content/taon-cms-content.entity';\nimport { TaonCmsPostComponent } from '../taon-cms-post/taon-cms-post.component';\n\nconst t = Translation.for('src/lib/taon-posts/taon-cms-post-details-page/taon-cms-post-details-page.component.ts', {\"src/lib/taon-posts/taon-cms-post-details-page/taon-cms-post-details-page.component.ts\":{\"en-US\":async () => (await import('./i18n/taon-cms-post-details-page.component.ts.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-post-details-page.component.ts.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-post-details-page.component.ts.de-DE.i18n.data')).default}} as any);\n\n@Component({\n selector: 'taon-cms-post-details-page',\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [AsyncPipe, MatButtonModule, TaonCmsPostComponent],\n template: `\n @if (page$ | async; as page) {\n <a\n mat-button\n (click)=\"goBack(page.fromCourses)\"\n >{{\n page.fromCourses\n ? t.gettext('Back to Courses')\n : t.gettext('Back to Posts')\n }}</a\n >\n <taon-cms-post\n [post]=\"page.post\"\n [mode]=\"page.create ? 'add' : 'view'\"\n (changed)=\"onChanged($event, page.create)\"\n (duplicated)=\"openPost($event)\"\n (editPostRequested)=\"openPost($event)\"\n (cancelled)=\"onCancelled(page.create)\"\n (actionButtonsTemplate)=\"setFooterTemplate($event)\" />\n }\n `,\n})\nexport class TaonCmsPostDetailsPageComponent {\n readonly t = t.for(this);\n\n private readonly route = inject(ActivatedRoute);\n\n private readonly router = inject(Router);\n\n private readonly contentFooterService = inject(\n TaonAdminContentFooterService,\n );\n\n private readonly destroyRef = inject(DestroyRef);\n\n readonly page$ = combineLatest([\n this.route.data,\n this.route.queryParamMap,\n ]).pipe(\n map(([data, queryParams]) => ({\n create: data['createPost'] === true,\n post: (data['post'] as TaonCmsContentEntity | undefined) ?? null,\n fromCourses: queryParams.get('postOrigin') === 'courses',\n })),\n );\n\n constructor() {\n this.destroyRef.onDestroy(() => this.contentFooterService.setTemplate());\n }\n\n setFooterTemplate(template: TemplateRef<unknown>): void {\n this.contentFooterService.setTemplate(template);\n }\n\n goBack(fromCourses: boolean): void {\n void this.router\n .navigate([fromCourses ? '../../courses' : '../'], {\n relativeTo: this.route,\n queryParams: { postOrigin: null },\n queryParamsHandling: 'merge',\n })\n .catch(error => {\n console.error('[taon-cms-post-details-page] Unable to navigate back', error);\n });\n }\n\n onChanged(post: TaonCmsContentEntity, create: boolean): void {\n if (create) {\n this.openPost(post);\n }\n }\n\n openPost(post: TaonCmsContentEntity): void {\n void this.router\n .navigate(['../', post.id], {\n relativeTo: this.route,\n queryParamsHandling: 'preserve',\n })\n .catch(error => {\n console.error('[taon-cms-post-details-page] Unable to open post', error);\n });\n }\n\n onCancelled(create: boolean): void {\n if (create) {\n void this.router\n .navigate(['../'], {\n relativeTo: this.route,\n queryParamsHandling: 'preserve',\n })\n .catch(error => {\n console.error(\n '[taon-cms-post-details-page] Unable to cancel post creation',\n error,\n );\n });\n }\n }\n}","//#region imports\nimport {\n ChangeDetectionStrategy,\n Component,\n ViewChild,\n signal,\n} from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { MatInputModule } from '@angular/material/input';\nimport { MatSelectModule } from '@angular/material/select';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MtxGridColumn } from '@ng-matero/extensions/grid';\nimport { TaonDatatableComponent } from '@taon-dev/ui/browser-prod';\nimport { Translation } from '@taon-dev/i18n/browser-prod';\nimport { Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\n\nimport { TaonCmsContentApiService } from '../../taon-cms-content/taon-cms-content-api.service';\nimport type { TaonCmsContentEntity } from '../../taon-cms-content/taon-cms-content.entity';\nimport { TaonCmsPostTableActions } from './taon-cms-post-table-actions.directive';\n//#endregion\n\nconst t = Translation.for('src/lib/taon-posts/taon-cms-posts-backoffice/taon-cms-posts-backoffice.component.ts', {\"src/lib/taon-posts/taon-cms-posts-backoffice/taon-cms-post-table-actions.directive.ts\":{\"en-US\":async () => (await import('./i18n/taon-cms-post-table-actions.directive.ts.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-post-table-actions.directive.ts.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-post-table-actions.directive.ts.de-DE.i18n.data')).default},\"src/lib/taon-posts/taon-cms-posts-backoffice/taon-cms-posts-backoffice.component.html\":{\"en-US\":async () => (await import('./i18n/taon-cms-posts-backoffice.component.html.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-posts-backoffice.component.html.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-posts-backoffice.component.html.de-DE.i18n.data')).default},\"src/lib/taon-posts/taon-cms-posts-backoffice/taon-cms-posts-backoffice.component.ts\":{\"en-US\":async () => (await import('./i18n/taon-cms-posts-backoffice.component.ts.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-posts-backoffice.component.ts.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-posts-backoffice.component.ts.de-DE.i18n.data')).default},\"src/lib/taon-posts/taon-cms-posts-backoffice/taon-cms-posts-backoffice.routes.ts\":{\"en-US\":async () => (await import('./i18n/taon-cms-posts-backoffice.routes.ts.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-posts-backoffice.routes.ts.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-posts-backoffice.routes.ts.de-DE.i18n.data')).default}} as any);\n\n@Component({\n selector: 'app-taon-cms-posts-backoffice',\n templateUrl: './taon-cms-posts-backoffice.component.html',\n styleUrls: ['./taon-cms-posts-backoffice.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [\n FormsModule,\n MatButtonModule,\n MatFormFieldModule,\n MatInputModule,\n MatSelectModule,\n TaonDatatableComponent,\n ],\n providers: [TaonCmsContentApiService],\n})\nexport class TaonCmsPostsBackofficeComponent extends TaonCmsPostTableActions {\n readonly t = t.for(this);\n\n @ViewChild(TaonDatatableComponent)\n readonly datatable!: TaonDatatableComponent;\n\n readonly posts = signal<TaonCmsContentEntity[]>([]);\n\n readonly loading = signal(false);\n\n public get crud() {\n return this.taonCmsContentApiService.crudController;\n }\n\n readonly columns: MtxGridColumn[] = [\n { header: 'ID', field: 'id', sortable: true },\n { header: this.t.gettext('Title'), field: 'title', sortable: true },\n { header: this.t.gettext('Slug'), field: 'slug', sortable: true },\n { header: this.t.gettext('Status'), field: 'status', sortable: true },\n this.actionsColumn,\n ];\n\n reload(): void {\n this.datatable.reload();\n }\n\n ngAfterViewInit(): void {\n this.reload();\n }\n}","<h1>{{ t.gettext('CMS posts') }}</h1>\n@if (loading()) {\n <p role=\"status\">{{ t.gettext('Loading posts...') }}</p>\n}\n@if (error()) {\n <p role=\"alert\">{{ error() }}</p>\n}\n<taon-datatable\n [entityCrudController]=\"crud\"\n [columns]=\"columns\"\n [allowedColumns]=\"['id', 'title', 'slug', 'status']\"\n tableId=\"cms-posts\"\n storeTableFilters=\"query-params\"\n [filtersTemplate]=\"filtersTemplate\"\n searchMode=\"advanced\"\n (addingItem)=\"add()\">\n</taon-datatable>\n<ng-template\n #filtersTemplate\n let-filters=\"filters\">\n <mat-form-field appearance=\"outline\">\n <mat-label>{{ t.gettext('ID') }}</mat-label>\n <input\n matInput\n [(ngModel)]=\"filters.id\"\n (keyup.enter)=\"datatable.applyAdvancedFilters()\" />\n </mat-form-field>\n <mat-form-field appearance=\"outline\">\n <mat-label>{{ t.gettext('Title') }}</mat-label>\n <input\n matInput\n [(ngModel)]=\"filters.title\"\n (keyup.enter)=\"datatable.applyAdvancedFilters()\" />\n </mat-form-field>\n <mat-form-field appearance=\"outline\">\n <mat-label>{{ t.gettext('Slug') }}</mat-label>\n <input\n matInput\n [(ngModel)]=\"filters.slug\"\n (keyup.enter)=\"datatable.applyAdvancedFilters()\" />\n </mat-form-field>\n <mat-form-field appearance=\"outline\">\n <mat-label>{{ t.gettext('Status') }}</mat-label>\n <mat-select [(ngModel)]=\"filters.status\">\n <mat-option value=\"published\">{{ t.gettext('Published') }}</mat-option>\n <mat-option value=\"draft\">{{ t.gettext('Draft') }}</mat-option>\n <mat-option value=\"archived\">{{ t.gettext('Archived') }}</mat-option>\n </mat-select>\n </mat-form-field>\n</ng-template>\n","//namespace TaonCmsPostsBackofficeModels\n\n//end of namespace TaonCmsPostsBackofficeModels\n","//#region imports\nimport { inject } from '@angular/core';\nimport { Routes } from '@angular/router';\nimport { ResolveFn } from '@angular/router';\nimport { Translation } from '@taon-dev/i18n/browser-prod';\nimport { Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\n\nimport { TaonCmsContentApiService } from '../../taon-cms-content/taon-cms-content-api.service';\nimport type { TaonCmsContentEntity } from '../../taon-cms-content/taon-cms-content.entity';\n//#endregion\n\nconst t = Translation.for('src/lib/taon-posts/taon-cms-posts-backoffice/taon-cms-posts-backoffice.routes.ts', {\"src/lib/taon-posts/taon-cms-posts-backoffice/taon-cms-post-table-actions.directive.ts\":{\"en-US\":async () => (await import('./i18n/taon-cms-post-table-actions.directive.ts.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-post-table-actions.directive.ts.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-post-table-actions.directive.ts.de-DE.i18n.data')).default},\"src/lib/taon-posts/taon-cms-posts-backoffice/taon-cms-posts-backoffice.component.html\":{\"en-US\":async () => (await import('./i18n/taon-cms-posts-backoffice.component.html.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-posts-backoffice.component.html.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-posts-backoffice.component.html.de-DE.i18n.data')).default},\"src/lib/taon-posts/taon-cms-posts-backoffice/taon-cms-posts-backoffice.component.ts\":{\"en-US\":async () => (await import('./i18n/taon-cms-posts-backoffice.component.ts.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-posts-backoffice.component.ts.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-posts-backoffice.component.ts.de-DE.i18n.data')).default},\"src/lib/taon-posts/taon-cms-posts-backoffice/taon-cms-posts-backoffice.routes.ts\":{\"en-US\":async () => (await import('./i18n/taon-cms-posts-backoffice.routes.ts.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-posts-backoffice.routes.ts.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-posts-backoffice.routes.ts.de-DE.i18n.data')).default}} as any);\n\nconst resolvePost: ResolveFn<TaonCmsContentEntity> = async route => {\n const id = Number(route.paramMap.get('id'));\n if (!Number.isSafeInteger(id) || id <= 0) {\n throw new Error(t.gettext('Invalid Post ID'));\n }\n const taonCmsContentApiService = inject(TaonCmsContentApiService);\n const post = await taonCmsContentApiService.getById(id);\n if (!post) {\n throw new Error(t.gettext('Post not found'));\n }\n return post;\n};\n\nexport const TaonCmsPostsBackofficeRoutes: Routes = [\n {\n path: '',\n pathMatch: 'full',\n loadComponent: () =>\n import('./taon-cms-posts-backoffice.component').then(\n m => m.TaonCmsPostsBackofficeComponent,\n ),\n },\n {\n path: 'new',\n data: { hideInNavigation: true, createPost: true },\n loadComponent: () =>\n import('../taon-cms-post-details-page/taon-cms-post-details-page.component').then(\n m => m.TaonCmsPostDetailsPageComponent,\n ),\n },\n {\n path: ':id',\n data: { hideInNavigation: true },\n providers: [TaonCmsContentApiService],\n resolve: { post: resolvePost },\n loadComponent: () =>\n import('../taon-cms-post-details-page/taon-cms-post-details-page.component').then(\n m => m.TaonCmsPostDetailsPageComponent,\n ),\n },\n];\n\n/**\n * By default exporting TaonCmsPostsBackofficeRoutes,\n * the command `taon generate:app:routes`\n * will automatically add them to the root routes in ./src/app.ts.\n */\n// export default TaonCmsPostsBackofficeRoutes;","//#region imports\nimport { Injectable } from '@angular/core';\nimport { Observable } from 'rxjs';\nimport { map } from 'rxjs/operators';\nimport { TaonBaseAngularService, Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\n\nimport { TaonCmsWebsiteFeatureProvider } from './taon-cms-website-feature.provider';\n//#endregion\n\n@Injectable()\nexport class TaonCmsWebsiteFeatureConfigService extends TaonBaseAngularService {\n private taonCmsWebsiteFeatureProvider = this.injectProvider(TaonCmsWebsiteFeatureProvider);\n\n get isEnableOption() {\n return this.taonCmsWebsiteFeatureProvider.enabledTaonCmsWebsiteFeatureOption;\n }\n\n clone(): Partial<TaonCmsWebsiteFeatureProvider> {\n const cloned = this.taonCmsWebsiteFeatureProvider.clone();\n return cloned;\n }\n}","import type { TaonCmsWebsiteFeatureModels__NS__Feature, TaonCmsWebsiteFeatureModels__NS__TaonCmsWebsiteFeatureState } from './taon-cms-website-feature.models';\nimport { Translation } from '@taon-dev/i18n/browser-prod';\nimport { Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\n\nconst t = Translation.for('src/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.constants.ts', {\"src/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.constants.ts\":{\"en-US\":async () => (await import('./i18n/taon-cms-website-feature.constants.ts.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-website-feature.constants.ts.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-website-feature.constants.ts.de-DE.i18n.data')).default},\"src/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.controller.ts\":{\"en-US\":async () => (await import('./i18n/taon-cms-website-feature.controller.ts.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-website-feature.controller.ts.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-website-feature.controller.ts.de-DE.i18n.data')).default}} as any);\n\nexport const TaonCmsWebsiteFeatureDefaultsValues = {\n enabled: true,\n} satisfies Partial<TaonCmsWebsiteFeatureModels__NS__Feature>;\n\nexport enum TaonCmsWebsiteFeatureErrors {\n INVALID_PASSWORD_EXAMPLE_ERROR = 'INVALID_PASSWORD_EXAMPLE_ERROR',\n}\n\nexport const TaonCmsWebsiteFeatureTranslationErorsMap = new Map([\n [TaonCmsWebsiteFeatureErrors.INVALID_PASSWORD_EXAMPLE_ERROR, t.gettext('Invalid Password')],\n]);","//namespace TaonCmsWebsiteFeatureModels\n\n export interface TaonCmsWebsiteFeatureModels__NS__Feature {\n key: string;\n name: string;\n enabled: boolean;\n }\n\n export enum TaonCmsWebsiteFeatureModels__NS__TaonCmsWebsiteFeatureState {\n Active = 'active',\n Inactive = 'inactive',\n }\n\n//end of namespace TaonCmsWebsiteFeatureModels\n","import { AbstractControl, ValidationErrors, ValidatorFn } from '@angular/forms'; // @browser\nimport { TaonCmsWebsiteFeatureErrors } from './taon-cms-website-feature.constants';\n\n//namespace TaonCmsWebsiteFeatureValidators\n\n //#region @browser\n /**\n * TODO REMOVE THIS EXAMPLE.\n */\n export const TaonCmsWebsiteFeatureValidators__NS__passwordMatchValidator: ValidatorFn = (\n control: AbstractControl,\n ): ValidationErrors | null => {\n const password = control.get('password');\n const passwordRepeat = control.get('passwordRepeat');\n\n if (!password || !passwordRepeat) {\n return null;\n }\n\n return password.value === passwordRepeat.value\n ? null\n : { [TaonCmsWebsiteFeatureErrors.INVALID_PASSWORD_EXAMPLE_ERROR]: true };\n };\n //#endregion\n\n\n//end of namespace TaonCmsWebsiteFeatureValidators\n","//#region imports\nimport { AsyncPipe, DatePipe } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, OnInit, inject, signal } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { MatButtonModule } from '@angular/material/button';\nimport { RouterLink } from '@angular/router';\nimport { MtxGridColumn } from '@ng-matero/extensions/grid';\nimport { TaonDatatableComponent } from '@taon-dev/ui/browser-prod';\nimport { TaonCmsCommentApiService } from '../../taon-cms-comment-api.service';\nimport type { CommentListItem } from '../../taon-cms-comment.controller';\nimport { Translation } from '@taon-dev/i18n/browser-prod';\nimport { Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\n//#endregion\n\nconst t = Translation.for('src/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/taon-cms-comments-all-preview-backoffice.component.ts', {\"src/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/taon-cms-comments-all-preview-backoffice.component.html\":{\"en-US\":async () => (await import('./i18n/taon-cms-comments-all-preview-backoffice.component.html.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-comments-all-preview-backoffice.component.html.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-comments-all-preview-backoffice.component.html.de-DE.i18n.data')).default},\"src/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/taon-cms-comments-all-preview-backoffice.component.ts\":{\"en-US\":async () => (await import('./i18n/taon-cms-comments-all-preview-backoffice.component.ts.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-comments-all-preview-backoffice.component.ts.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-comments-all-preview-backoffice.component.ts.de-DE.i18n.data')).default}} as any);\n\n@Component({\n selector: 'app-taon-cms-comments-all-preview-backoffice',\n templateUrl: './taon-cms-comments-all-preview-backoffice.component.html',\n styleUrls: ['./taon-cms-comments-all-preview-backoffice.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [AsyncPipe, DatePipe, FormsModule, MatButtonModule, RouterLink, TaonDatatableComponent],\n providers: [TaonCmsCommentApiService],\n})\nexport class TaonCmsCommentsAllPreviewBackofficeComponent implements OnInit {\n t = t.for(this);\n\n private readonly api = inject(TaonCmsCommentApiService);\n\n readonly comments = signal<CommentListItem[]>([]);\n\n readonly pageNumber = signal(1);\n\n readonly pageSize = 10;\n\n readonly total = signal(0);\n\n readonly loading = signal(false);\n\n readonly error = signal('');\n\n readonly idFilter = signal('');\n\n readonly textFilter = signal('');\n\n readonly authorFilter = signal('');\n\n readonly columns: MtxGridColumn[] = [\n { header: this.t.gettext('ID'), field: 'id', sortable: true, showExpand: true },\n { header: this.t.gettext('Author'), field: 'authorName' },\n {\n header: this.t.gettext('Comment'),\n field: 'body',\n formatter: (comment: CommentListItem) =>\n comment.body.length > 120 ? `${comment.body.slice(0, 120)}...` : comment.body,\n },\n { header: this.t.gettext('Post'), field: 'postTitle' },\n { header: this.t.gettext('Created date'), field: 'createdAt' },\n { header: this.t.gettext('Vote score'), field: 'voteScore' },\n { header: this.t.gettext('Spam reports'), field: 'spamReports' },\n ];\n\n ngOnInit(): void {\n void this.reload();\n }\n\n async reload(): Promise<void> {\n this.loading.set(true);\n this.error.set('');\n try {\n const result = await this.api.getCommentsBackoffice({\n pageNumber: this.pageNumber(),\n pageSize: this.pageSize,\n id: this.idFilter(),\n text: this.textFilter(),\n author: this.authorFilter(),\n });\n this.comments.set(result.items);\n this.total.set(result.total);\n } catch (error) {\n console.error('[cms-comments-backoffice] Unable to load comments', error);\n this.error.set(error instanceof Error ? error.message : this.t.gettext('Comments could not be loaded.'));\n } finally {\n this.loading.set(false);\n }\n }\n\n applyFilters(): void {\n this.pageNumber.set(1);\n void this.reload();\n }\n\n previousPage(): void {\n if (this.pageNumber() > 1) {\n this.pageNumber.update(page => page - 1);\n void this.reload();\n }\n }\n\n nextPage(): void {\n if (this.pageNumber() * this.pageSize < this.total()) {\n this.pageNumber.update(page => page + 1);\n void this.reload();\n }\n }\n\n async delete(comment: CommentListItem): Promise<void> {\n try {\n await this.api.deleteComment(comment.id);\n await this.reload();\n } catch (error) {\n console.error('[cms-comments-backoffice] Unable to delete comment', error);\n this.error.set(error instanceof Error ? error.message : this.t.gettext('The comment could not be deleted.'));\n }\n }\n}","<h1>{{ t.gettext('CMS comments') }}</h1>\n<form (submit)=\"$event.preventDefault(); applyFilters()\">\n <label>\n {{ t.gettext('ID') }}\n <input [ngModel]=\"idFilter()\" (ngModelChange)=\"idFilter.set($event)\" name=\"id\" />\n </label>\n <label>\n {{ t.gettext('Text in comment') }}\n <input [ngModel]=\"textFilter()\" (ngModelChange)=\"textFilter.set($event)\" name=\"text\" />\n </label>\n <label>\n {{ t.gettext('Author') }}\n <input [ngModel]=\"authorFilter()\" (ngModelChange)=\"authorFilter.set($event)\" name=\"author\" />\n </label>\n <button mat-button type=\"submit\">{{ t.gettext('Apply filters') }}</button>\n</form>\n@if (loading()) {\n <p role=\"status\">{{ t.gettext('Loading comments...') }}</p>\n}\n@if (error()) {\n <p role=\"alert\">{{ error() }}</p>\n}\n<ng-template #expanded let-comment>\n <section>\n <p><strong>{{ t.gettext('Full comment') }}:</strong> {{ comment.body }}</p>\n <p>{{ t.gettext('Author') }}: {{ comment.authorName }}</p>\n <p>{{ t.gettext('Created') }}: {{ comment.createdAt | date: 'medium' }}</p>\n <p>\n {{ t.gettext('Post') }}:\n <a [routerLink]=\"['../../posts', comment.contentId]\">{{ comment.postTitle }}</a>\n </p>\n <p>{{ t.gettext('Votes') }}: {{ comment.upvotes }} / {{ comment.downvotes }} ({{ comment.voteScore }})</p>\n <p>{{ t.gettext('Spam reports') }}: {{ comment.spamReports }}</p>\n <button mat-button color=\"warn\" type=\"button\" (click)=\"delete(comment)\">\n {{ t.gettext('Delete comment') }}\n </button>\n </section>\n</ng-template>\n<taon-datatable\n [data]=\"comments()\"\n [columns]=\"columns\"\n [hideAddButton]=\"true\"\n [showPaginator]=\"false\"\n [expansionTemplate]=\"expanded\"\n searchMode=\"simple\">\n</taon-datatable>\n<nav aria-label=\"Comment pages\">\n <button mat-button type=\"button\" [disabled]=\"pageNumber() <= 1 || loading()\" (click)=\"previousPage()\">\n {{ t.gettext('Previous') }}\n </button>\n <span>{{ t.gettext('Page [[ page ]]', { page: pageNumber() }) }}</span>\n <button mat-button type=\"button\" [disabled]=\"pageNumber() * pageSize >= total() || loading()\" (click)=\"nextPage()\">\n {{ t.gettext('Next') }}\n </button>\n</nav>","//namespace TaonCmsCommentsAllPreviewBackofficeModels\n\n//end of namespace TaonCmsCommentsAllPreviewBackofficeModels\n","//#region imports\nimport { Routes } from '@angular/router';\nimport { adminLazyRoute } from '@taon-dev/ui/browser-prod';\n//#endregion\n\nexport const TaonCmsCommentsAllPreviewBackofficeRoutes: Routes = [\n {\n path: '',\n loadComponent: () =>\n import('./taon-cms-comments-all-preview-backoffice.component').then(m => m.TaonCmsCommentsAllPreviewBackofficeComponent),\n\n children: [\n // adminLazyRoute({\n // path: 'dashboard',\n // menuItem: 'Dashboard',\n // icon: 'dashboard',\n // expandable: false,\n // loader: () =>\n // import('./anothermodule.routes').then(m => m.DashboardRoutes),\n // }),\n ],\n },\n];\n\n/**\n * By default exporting TaonCmsCommentsAllPreviewBackofficeRoutes,\n * the command `taon generate:app:routes`\n * will automatically add them to the root routes in ./src/app.ts.\n */\n// export default TaonCmsCommentsAllPreviewBackofficeRoutes;","import { ChangeDetectionStrategy, Component, OnInit, inject, signal } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { MatButtonModule } from '@angular/material/button';\nimport { TaonCmsCommentApiService } from '../../taon-cms-comment-api.service';\nimport { Translation } from '@taon-dev/i18n/browser-prod';\nimport { Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\n\nconst t = Translation.for('src/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/taon-cms-comments-blocked-users.component.ts', {\"src/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/taon-cms-comments-blocked-users.component.html\":{\"en-US\":async () => (await import('./i18n/taon-cms-comments-blocked-users.component.html.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-comments-blocked-users.component.html.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-comments-blocked-users.component.html.de-DE.i18n.data')).default},\"src/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/taon-cms-comments-blocked-users.component.ts\":{\"en-US\":async () => (await import('./i18n/taon-cms-comments-blocked-users.component.ts.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-comments-blocked-users.component.ts.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-comments-blocked-users.component.ts.de-DE.i18n.data')).default}} as any);\n\n@Component({\n selector: 'app-taon-cms-comments-blocked-users',\n templateUrl: './taon-cms-comments-blocked-users.component.html',\n styleUrls: ['./taon-cms-comments-blocked-users.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [FormsModule, MatButtonModule],\n providers: [TaonCmsCommentApiService],\n})\nexport class TaonCmsBlockedUsersBackofficeComponent implements OnInit {\n readonly t = t.for(this);\n\n private readonly api = inject(TaonCmsCommentApiService);\n\n readonly blockedUsers = signal<{ id: number; userId: number }[]>([]);\n\n readonly userId = signal('');\n\n readonly page = signal(1);\n\n readonly pageSize = 10;\n\n readonly error = signal('');\n\n readonly loading = signal(false);\n\n ngOnInit(): void {\n void this.reload();\n }\n\n get visibleUsers(): { id: number; userId: number }[] {\n const start = (this.page() - 1) * this.pageSize;\n return this.blockedUsers().slice(start, start + this.pageSize);\n }\n\n async reload(): Promise<void> {\n this.loading.set(true);\n this.error.set('');\n try {\n this.blockedUsers.set(await this.api.getBlockedUsers());\n } catch (error) {\n console.error('[cms-comment-blocked-users] Unable to load users', error);\n this.error.set(error instanceof Error ? error.message : this.t.gettext('Blocked users could not be loaded.'));\n } finally {\n this.loading.set(false);\n }\n }\n\n async block(): Promise<void> {\n const id = Number(this.userId());\n if (!Number.isSafeInteger(id) || id <= 0) {\n this.error.set(this.t.gettext('Enter a valid user ID.'));\n return;\n }\n await this.change(id, true);\n }\n\n async unblock(userId: number): Promise<void> {\n await this.change(userId, false);\n }\n\n async changePage(amount: number): Promise<void> {\n const next = this.page() + amount;\n const max = Math.max(1, Math.ceil(this.blockedUsers().length / this.pageSize));\n if (next >= 1 && next <= max) {\n this.page.set(next);\n }\n }\n\n private async change(userId: number, blocked: boolean): Promise<void> {\n this.error.set('');\n try {\n await this.api.setBlockedUser(userId, blocked);\n this.userId.set('');\n await this.reload();\n } catch (error) {\n console.error('[cms-comment-blocked-users] Unable to change user status', error);\n this.error.set(error instanceof Error ? error.message : this.t.gettext('Comment access could not be updated.'));\n }\n }\n}","<h1>{{ t.gettext('Users blocked from commenting') }}</h1>\n<p>{{ t.gettext('Blocking comments here does not block Session sign-in.') }}</p>\n<form (submit)=\"$event.preventDefault(); block()\">\n <label>\n {{ t.gettext('User ID') }}\n <input [ngModel]=\"userId()\" (ngModelChange)=\"userId.set($event)\" name=\"userId\" />\n </label>\n <button mat-flat-button type=\"submit\" [disabled]=\"loading()\">{{ t.gettext('Block commenting') }}</button>\n</form>\n@if (error()) {\n <p role=\"alert\">{{ error() }}</p>\n}\n@if (loading()) {\n <p role=\"status\">{{ t.gettext('Loading blocked users...') }}</p>\n}\n<table>\n <thead>\n <tr><th>{{ t.gettext('User ID') }}</th><th>{{ t.gettext('Actions') }}</th></tr>\n </thead>\n <tbody>\n @for (user of visibleUsers; track user.id) {\n <tr>\n <td>{{ user.userId }}</td>\n <td><button mat-button type=\"button\" (click)=\"unblock(user.userId)\">{{ t.gettext('Activate commenting') }}</button></td>\n </tr>\n } @empty {\n <tr><td colspan=\"2\">{{ t.gettext('No users are blocked from commenting.') }}</td></tr>\n }\n </tbody>\n</table>\n<nav aria-label=\"Blocked user pages\">\n <button mat-button type=\"button\" [disabled]=\"page() <= 1\" (click)=\"changePage(-1)\">{{ t.gettext('Previous') }}</button>\n <span>{{ t.gettext('Page [[ page ]]', { page: page() }) }}</span>\n <button mat-button type=\"button\" [disabled]=\"page() * pageSize >= blockedUsers().length\" (click)=\"changePage(1)\">{{ t.gettext('Next') }}</button>\n</nav>","//namespace TaonCmsCommentsBlockedUsersModels\n\n//end of namespace TaonCmsCommentsBlockedUsersModels\n","//#region imports\nimport { Routes } from '@angular/router';\nimport { adminLazyRoute } from '@taon-dev/ui/browser-prod';\n//#endregion\n\nexport const TaonCmsCommentsBlockedUsersRoutes: Routes = [\n {\n path: '',\n loadComponent: () =>\n import('./taon-cms-comments-blocked-users.component').then(m => m.TaonCmsBlockedUsersBackofficeComponent),\n\n children: [\n // adminLazyRoute({\n // path: 'dashboard',\n // menuItem: 'Dashboard',\n // icon: 'dashboard',\n // expandable: false,\n // loader: () =>\n // import('./anothermodule.routes').then(m => m.DashboardRoutes),\n // }),\n ],\n },\n];\n\n/**\n * By default exporting TaonCmsCommentsBlockedUsersRoutes,\n * the command `taon generate:app:routes`\n * will automatically add them to the root routes in ./src/app.ts.\n */\n// export default TaonCmsCommentsBlockedUsersRoutes;","import { ChangeDetectionStrategy, Component, OnInit, inject, signal } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { MatButtonModule } from '@angular/material/button';\nimport { TaonCmsCommentApiService } from '../../taon-cms-comment-api.service';\nimport { Translation } from '@taon-dev/i18n/browser-prod';\nimport { Taon__NS____FILE_RELATIVE_PATH, Taon__NS__asset, Taon__NS__assetsFrom, Taon__NS__assetsListFrom, Taon__NS__createContext, Taon__NS__createContextTemplate, Taon__NS__error, Taon__NS__getResponseValue, Taon__NS__isBrowser, Taon__NS__isElectron, Taon__NS__isNode, Taon__NS__isWebSQL, Taon__NS__LANG_IMPORT_MAP, Taon__NS__removeLoader, Taon__NS__Response, Taon__NS__ResponseHtml, Taon__NS__StartParams } from 'taon/browser-prod';\n\nconst t = Translation.for('src/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/taon-cms-comments-filters-settings.component.ts', {\"src/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/taon-cms-comments-filters-settings.component.html\":{\"en-US\":async () => (await import('./i18n/taon-cms-comments-filters-settings.component.html.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-comments-filters-settings.component.html.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-comments-filters-settings.component.html.de-DE.i18n.data')).default},\"src/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/taon-cms-comments-filters-settings.component.ts\":{\"en-US\":async () => (await import('./i18n/taon-cms-comments-filters-settings.component.ts.en-US.i18n.data')).default,\"pl-PL\":async () => (await import('./i18n/taon-cms-comments-filters-settings.component.ts.pl-PL.i18n.data')).default,\"de-DE\":async () => (await import('./i18n/taon-cms-comments-filters-settings.component.ts.de-DE.i18n.data')).default}} as any);\n\n@Component({\n selector: 'app-taon-cms-comments-filters-settings',\n templateUrl: './taon-cms-comments-filters-settings.component.html',\n styleUrls: ['./taon-cms-comments-filters-settings.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [FormsModule, MatButtonModule],\n providers: [TaonCmsCommentApiService],\n})\nexport class TaonCmsCommentsFiltersSettingsComponent implements OnInit {\n readonly t = t.for(this);\n\n private readonly api = inject(TaonCmsCommentApiService);\n\n readonly phrases = signal<{ id: number; phrase: string }[]>([]);\n\n readonly phrase = signal('');\n\n readonly error = signal('');\n\n readonly loading = signal(false);\n\n ngOnInit(): void {\n void this.reload();\n }\n\n async reload(): Promise<void> {\n this.loading.set(true);\n this.error.set('');\n try {\n this.phrases.set(await this.api.getBlockedPhrases());\n } catch (error) {\n console.error('[cms-comment-filters] Unable to load blocked phrases', error);\n this.error.set(error instanceof Error ? error.message : this.t.gettext('Blocked phrases could not be loaded.'));\n } finally {\n this.loading.set(false);\n }\n }\n\n async add(): Promise<void> {\n const phrase = this.phrase().trim();\n if (!phrase) {\n return;\n }\n this.error.set('');\n try {\n await this.api.addBlockedPhrase(phrase);\n this.phrase.set('');\n await this.reload();\n } catch (error) {\n console.error('[cms-comment-filters] Unable to add blocked phrase', error);\n this.error.set(error instanceof Error ? error.message : this.t.gettext('The phrase could not be added.'));\n }\n }\n\n async remove(id: number): Promise<void> {\n this.error.set('');\n try {\n await this.api.deleteBlockedPhrase(id);\n await this.reload();\n } catch (error) {\n console.error('[cms-comment-filters] Unable to delete blocked phrase', error);\n this.error.set(error instanceof Error ? error.message : this.t.gettext('The phrase could not be deleted.'));\n }\n }\n}","<h1>{{ t.gettext('Comment filters') }}</h1>\n<p>{{ t.gettext('Comments containing any configured word or phrase are rejected.') }}</p>\n<form (submit)=\"$event.preventDefault(); add()\">\n <label>\n {{ t.gettext('Blocked word or phrase') }}\n <input [ngModel]=\"phrase()\" (ngModelChange)=\"phrase.set($event)\" name=\"phrase\" />\n </label>\n <button mat-flat-button type=\"submit\" [disabled]=\"loading() || !phrase().trim()\">{{ t.gettext('Add') }}</button>\n</form>\n@if (error()) {\n <p role=\"alert\">{{ error() }}</p>\n}\n@if (loading()) {\n <p role=\"status\">{{ t.gettext('Loading blocked phrases...') }}</p>\n}\n<ul>\n @for (item of phrases(); track item.id) {\n <li>\n {{ item.phrase }}\n <button mat-button type=\"button\" (click)=\"remove(item.id)\">{{ t.gettext('Delete') }}</button>\n </li>\n } @empty {\n <li>{{ t.gettext('No blocked words or phrases configured.') }}</li>\n }\n</ul>","//namespace TaonCmsCommentsFiltersSettingsModels\n\n//end of namespace TaonCmsCommentsFiltersSettingsModels\n","//#region imports\nimport { Routes } from '@angular/router';\nimport { adminLazyRoute } from '@taon-dev/ui/browser-prod';\n//#endregion\n\nexport const TaonCmsCommentsFiltersSettingsRoutes: Routes = [\n {\n path: '',\n loadComponent: () =>\n import('./taon-cms-comments-filters-settings.component').then(m => m.TaonCmsCommentsFiltersSettingsComponent),\n\n children: [\n // adminLazyRoute({\n // path: 'dashboard',\n // menuItem: 'Dashboard',\n // icon: 'dashboard',\n // expandable: false,\n // loader: () =>\n // import('./anothermodule.routes').then(m => m.DashboardRoutes),\n // }),\n ],\n },\n];\n\n/**\n * By default exporting TaonCmsCommentsFiltersSettingsRoutes,\n * the command `taon generate:app:routes`\n * will automatically add them to the root routes in ./src/app.ts.\n */\n// export default TaonCmsCommentsFiltersSettingsRoutes;","// @ts-nocheck\n// This file is auto-generated during init process. Do not modify.\n// This disable this auto generate file.\n// set property \"shouldGenerateAutogenIndexFile: false\" \n// in taon.jsonc of your project. \nexport * from './build-info._auto-generated_'; \nexport * from './start-cli'; \nexport * from './taon-cms-application-hooks'; \nexport * from './taon-cms.abstract.context'; \nexport * from './taon-cms-application-hook/taon-cms-application-hook.entity'; \nexport * from './taon-cms-assets-backoffice/taon-cms-asset-preview.component'; // @browser\nexport * from './taon-cms-assets-backoffice/taon-cms-assets-backoffice.component'; // @browser\nexport * from './taon-cms-assets-backoffice/taon-cms-assets-backoffice.routes'; // @browser\nexport * from './taon-cms-backoffice/taon-cms-backoffice.component'; // @browser\nexport * from './taon-cms-backoffice/taon-cms-backoffice.models'; \nexport * from './taon-cms-backoffice/taon-cms-backoffice.routes'; // @browser\nexport * from './taon-cms-category/taon-cms-category-api.service'; // @browser\nexport * from './taon-cms-category/taon-cms-category.abstract.context'; \nexport * from './taon-cms-category/taon-cms-category.constants'; \nexport * from './taon-cms-category/taon-cms-category.controller'; \nexport * from './taon-cms-category/taon-cms-category.entity'; \nexport * from './taon-cms-category/taon-cms-category.middleware'; \nexport * from './taon-cms-category/taon-cms-category.models'; \nexport * from './taon-cms-category/taon-cms-category.provider'; \nexport * from './taon-cms-category/taon-cms-category.repository'; \nexport * from './taon-cms-category/taon-cms-category.subscriber'; \nexport * from './taon-cms-category/taon-cms-category.utils'; \nexport * from './taon-cms-category/taon-cms-taxonomy.validation'; \nexport * from './taon-cms-comment/taon-cms-comment-api.service'; // @browser\nexport * from './taon-cms-comment/taon-cms-comment-blocked-phrase.entity'; \nexport * from './taon-cms-comment/taon-cms-comment-blocked-user.entity'; \nexport * from './taon-cms-comment/taon-cms-comment-spam-report.entity'; \nexport * from './taon-cms-comment/taon-cms-comment-vote.entity'; \nexport * from './taon-cms-comment/taon-cms-comment.abstract.context'; \nexport * from './taon-cms-comment/taon-cms-comment.constants'; \nexport * from './taon-cms-comment/taon-cms-comment.controller'; \nexport * from './taon-cms-comment/taon-cms-comment.entity'; \nexport * from './taon-cms-comment/taon-cms-comment.middleware'; \nexport * from './taon-cms-comment/taon-cms-comment.models'; \nexport * from './taon-cms-comment/taon-cms-comment.provider'; \nexport * from './taon-cms-comment/taon-cms-comment.repository'; \nexport * from './taon-cms-comment/taon-cms-comment.subscriber'; \nexport * from './taon-cms-comment/taon-cms-comment.utils'; \nexport * from './taon-cms-comment/taon-cms-comments.component'; // @browser\nexport * from './taon-cms-content/taon-cms-content-api.service'; // @browser\nexport * from './taon-cms-content/taon-cms-content-storage.controller'; \nexport * from './taon-cms-content/taon-cms-content.abstract.context'; \nexport * from './taon-cms-content/taon-cms-content.config.service'; // @browser\nexport * from './taon-cms-content/taon-cms-content.constants'; \nexport * from './taon-cms-content/taon-cms-content.controller'; \nexport * from './taon-cms-content/taon-cms-content.entity'; \nexport * from './taon-cms-content/taon-cms-content.middleware'; \nexport * from './taon-cms-content/taon-cms-content.models'; \nexport * from './taon-cms-content/taon-cms-content.provider'; \nexport * from './taon-cms-content/taon-cms-content.repository'; \nexport * from './taon-cms-content/taon-cms-content.subscriber'; \nexport * from './taon-cms-content/taon-cms-content.utils'; \nexport * from './taon-cms-content/taon-cms-content.validation'; \nexport * from './taon-cms-content/taon-cms-template-variables'; \nexport * from './taon-cms-content/taon-cms-upload-progress'; \nexport * from './taon-cms-content-asset/taon-cms-content-asset-api.service'; // @browser\nexport * from './taon-cms-content-asset/taon-cms-content-asset.abstract.context'; \nexport * from './taon-cms-content-asset/taon-cms-content-asset.constants'; \nexport * from './taon-cms-content-asset/taon-cms-content-asset.controller'; \nexport * from './taon-cms-content-asset/taon-cms-content-asset.entity'; \nexport * from './taon-cms-content-asset/taon-cms-content-asset.middleware'; \nexport * from './taon-cms-content-asset/taon-cms-content-asset.models'; \nexport * from './taon-cms-content-asset/taon-cms-content-asset.provider'; \nexport * from './taon-cms-content-asset/taon-cms-content-asset.repository'; \nexport * from './taon-cms-content-asset/taon-cms-content-asset.subscriber'; \nexport * from './taon-cms-content-asset/taon-cms-content-asset.utils'; \nexport * from './taon-cms-content-permission/taon-cms-content-permission-api.service'; // @browser\nexport * from './taon-cms-content-permission/taon-cms-content-permission.abstract.context'; \nexport * from './taon-cms-content-permission/taon-cms-content-permission.constants'; \nexport * from './taon-cms-content-permission/taon-cms-content-permission.controller'; \nexport * from './taon-cms-content-permission/taon-cms-content-permission.entity'; \nexport * from './taon-cms-content-permission/taon-cms-content-permission.middleware'; \nexport * from './taon-cms-content-permission/taon-cms-content-permission.models'; \nexport * from './taon-cms-content-permission/taon-cms-content-permission.provider'; \nexport * from './taon-cms-content-permission/taon-cms-content-permission.repository'; \nexport * from './taon-cms-content-permission/taon-cms-content-permission.subscriber'; \nexport * from './taon-cms-content-permission/taon-cms-content-permission.utils'; \nexport * from './taon-cms-content-revision/taon-cms-content-revision-api.service'; // @browser\nexport * from './taon-cms-content-revision/taon-cms-content-revision.abstract.context'; \nexport * from './taon-cms-content-revision/taon-cms-content-revision.constants'; \nexport * from './taon-cms-content-revision/taon-cms-content-revision.controller'; \nexport * from './taon-cms-content-revision/taon-cms-content-revision.entity'; \nexport * from './taon-cms-content-revision/taon-cms-content-revision.middleware'; \nexport * from './taon-cms-content-revision/taon-cms-content-revision.models'; \nexport * from './taon-cms-content-revision/taon-cms-content-revision.provider'; \nexport * from './taon-cms-content-revision/taon-cms-content-revision.repository'; \nexport * from './taon-cms-content-revision/taon-cms-content-revision.subscriber'; \nexport * from './taon-cms-content-revision/taon-cms-content-revision.utils'; \nexport * from './taon-cms-content-tag/taon-cms-content-tag-api.service'; // @browser\nexport * from './taon-cms-content-tag/taon-cms-content-tag.abstract.context'; \nexport * from './taon-cms-content-tag/taon-cms-content-tag.constants'; \nexport * from './taon-cms-content-tag/taon-cms-content-tag.controller'; \nexport * from './taon-cms-content-tag/taon-cms-content-tag.entity'; \nexport * from './taon-cms-content-tag/taon-cms-content-tag.middleware'; \nexport * from './taon-cms-content-tag/taon-cms-content-tag.models'; \nexport * from './taon-cms-content-tag/taon-cms-content-tag.provider'; \nexport * from './taon-cms-content-tag/taon-cms-content-tag.repository'; \nexport * from './taon-cms-content-tag/taon-cms-content-tag.subscriber'; \nexport * from './taon-cms-content-tag/taon-cms-content-tag.utils'; \nexport * from './taon-cms-tag/taon-cms-tag-api.service'; // @browser\nexport * from './taon-cms-tag/taon-cms-tag.abstract.context'; \nexport * from './taon-cms-tag/taon-cms-tag.constants'; \nexport * from './taon-cms-tag/taon-cms-tag.controller'; \nexport * from './taon-cms-tag/taon-cms-tag.entity'; \nexport * from './taon-cms-tag/taon-cms-tag.middleware'; \nexport * from './taon-cms-tag/taon-cms-tag.models'; \nexport * from './taon-cms-tag/taon-cms-tag.provider'; \nexport * from './taon-cms-tag/taon-cms-tag.repository'; \nexport * from './taon-cms-tag/taon-cms-tag.subscriber'; \nexport * from './taon-cms-tag/taon-cms-tag.utils'; \nexport * from './taon-cms-taxonomy-backoffice/taon-cms-taxonomy-backoffice.component'; // @browser\nexport * from './taon-cms-taxonomy-backoffice/taon-cms-taxonomy-backoffice.routes'; // @browser\nexport * from './taon-cms-taxonomy-backoffice/taon-cms-taxonomy-quick-create-dialog.component'; // @browser\nexport * from './taon-cms-backoffice/taon-cms-website-features/taon-cms-website-features.component'; // @browser\nexport * from './taon-cms-backoffice/taon-cms-website-features/taon-cms-website-features.models'; \nexport * from './taon-cms-backoffice/taon-cms-website-features/taon-cms-website-features.routes'; // @browser\nexport * from './taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-backoffice.component'; // @browser\nexport * from './taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-backoffice.models'; \nexport * from './taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-backoffice.routes'; // @browser\nexport * from './taon-posts/taon-cms-course-backoffice/taon-cms-course-backoffice.component'; // @browser\nexport * from './taon-posts/taon-cms-course-backoffice/taon-cms-course-backoffice.models'; \nexport * from './taon-posts/taon-cms-course-backoffice/taon-cms-course-backoffice.routes'; // @browser\nexport * from './taon-posts/taon-cms-course-backoffice/taon-cms-course-contents.component'; // @browser\nexport * from './taon-posts/taon-cms-course-backoffice/taon-cms-course-cover.component'; // @browser\nexport * from './taon-posts/taon-cms-post/taon-cms-document-extractor'; \nexport * from './taon-posts/taon-cms-post/taon-cms-editable.directive'; // @browser\nexport * from './taon-posts/taon-cms-post/taon-cms-post-choice-dialog.component'; // @browser\nexport * from './taon-posts/taon-cms-post/taon-cms-post-thumbnail.component'; // @browser\nexport * from './taon-posts/taon-cms-post/taon-cms-post.component'; // @browser\nexport * from './taon-posts/taon-cms-post/taon-cms-post.models'; \nexport * from './taon-posts/taon-cms-post/taon-cms-post.routes'; // @browser\nexport * from './taon-posts/taon-cms-post/taon-cms-thumbnail'; \nexport * from './taon-posts/taon-cms-post-details-page/taon-cms-post-details-page.component'; // @browser\nexport * from './taon-posts/taon-cms-posts-backoffice/taon-cms-post-table-actions.directive'; // @browser\nexport * from './taon-posts/taon-cms-posts-backoffice/taon-cms-posts-backoffice.component'; // @browser\nexport * from './taon-posts/taon-cms-posts-backoffice/taon-cms-posts-backoffice.models'; \nexport * from './taon-posts/taon-cms-posts-backoffice/taon-cms-posts-backoffice.routes'; // @browser\nexport * from './taon-posts/taon-cms-revision-chooser/taon-cms-revision-chooser.component'; // @browser\nexport * from './taon-posts/taon-related-post-chooser/taon-related-post-chooser.component'; // @browser\nexport * from './taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.abstract.context'; \nexport * from './taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.api.service'; // @browser\nexport * from './taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.config.service'; // @browser\nexport * from './taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.constants'; \nexport * from './taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.controller'; \nexport * from './taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.kv.repository'; \nexport * from './taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.models'; \nexport * from './taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.provider'; \nexport * from './taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.utils'; \nexport * from './taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.validators'; \nexport * from './taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/taon-cms-comments-all-preview-backoffice.component'; // @browser\nexport * from './taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/taon-cms-comments-all-preview-backoffice.models'; \nexport * from './taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/taon-cms-comments-all-preview-backoffice.routes'; // @browser\nexport * from './taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/taon-cms-comments-blocked-users.component'; // @browser\nexport * from './taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/taon-cms-comments-blocked-users.models'; \nexport * from './taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/taon-cms-comments-blocked-users.routes'; // @browser\nexport * from './taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/taon-cms-comments-filters-settings.component'; // @browser\nexport * from './taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/taon-cms-comments-filters-settings.models'; \nexport * from './taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/taon-cms-comments-filters-settings.routes'; // @browser","export * from './migrations';\n/* */\nexport * from './index._auto-generated_';\nexport * from './taon-cms-application-hooks';\n/* */ \nexport default {};\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["t","map","adminLazyRouteBase","i1","i3","i4","i2","i6","adminLazyRoute","i5","i13"],"mappings":"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"}