@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.
- package/VERIFIED-BUILD-DATA.jsonc +3 -3
- package/browser/fesm2022/cms-browser-taon-cms-backoffice.component.html.de-DE.i18n.data-Wz8hRSFC.mjs +21 -0
- package/browser/fesm2022/cms-browser-taon-cms-backoffice.component.html.de-DE.i18n.data-Wz8hRSFC.mjs.map +1 -0
- package/browser/fesm2022/cms-browser-taon-cms-backoffice.component.html.en-US.i18n.data-Cq_pxm3U.mjs +21 -0
- package/browser/fesm2022/cms-browser-taon-cms-backoffice.component.html.en-US.i18n.data-Cq_pxm3U.mjs.map +1 -0
- package/browser/fesm2022/cms-browser-taon-cms-backoffice.component.html.pl-PL.i18n.data-CO6JBZPr.mjs +21 -0
- package/browser/fesm2022/cms-browser-taon-cms-backoffice.component.html.pl-PL.i18n.data-CO6JBZPr.mjs.map +1 -0
- package/browser/fesm2022/cms-browser-taon-cms-backoffice.routes.ts.de-DE.i18n.data-Cor9o5q2.mjs +46 -0
- package/browser/fesm2022/cms-browser-taon-cms-backoffice.routes.ts.de-DE.i18n.data-Cor9o5q2.mjs.map +1 -0
- package/browser/fesm2022/cms-browser-taon-cms-backoffice.routes.ts.en-US.i18n.data-oL2AKoeA.mjs +43 -0
- package/browser/fesm2022/cms-browser-taon-cms-backoffice.routes.ts.en-US.i18n.data-oL2AKoeA.mjs.map +1 -0
- package/browser/fesm2022/cms-browser-taon-cms-backoffice.routes.ts.pl-PL.i18n.data-M-s6mPfL.mjs +46 -0
- package/browser/fesm2022/cms-browser-taon-cms-backoffice.routes.ts.pl-PL.i18n.data-M-s6mPfL.mjs.map +1 -0
- package/browser/fesm2022/cms-browser-taon-cms-comment.controller.ts.de-DE.i18n.data-52JuNZfu.mjs +116 -0
- package/browser/fesm2022/cms-browser-taon-cms-comment.controller.ts.de-DE.i18n.data-52JuNZfu.mjs.map +1 -0
- package/browser/fesm2022/cms-browser-taon-cms-comment.controller.ts.en-US.i18n.data-CJCvBBU_.mjs +95 -0
- package/browser/fesm2022/cms-browser-taon-cms-comment.controller.ts.en-US.i18n.data-CJCvBBU_.mjs.map +1 -0
- package/browser/fesm2022/cms-browser-taon-cms-comment.controller.ts.pl-PL.i18n.data-BJs3ls4V.mjs +116 -0
- package/browser/fesm2022/cms-browser-taon-cms-comment.controller.ts.pl-PL.i18n.data-BJs3ls4V.mjs.map +1 -0
- package/browser/fesm2022/cms-browser-taon-cms-comments-all-preview-backoffice.component.html.de-DE.i18n.data-CMev1wcP.mjs +91 -0
- package/browser/fesm2022/cms-browser-taon-cms-comments-all-preview-backoffice.component.html.de-DE.i18n.data-CMev1wcP.mjs.map +1 -0
- package/browser/fesm2022/cms-browser-taon-cms-comments-all-preview-backoffice.component.html.en-US.i18n.data-CjF4lqgh.mjs +75 -0
- package/browser/fesm2022/cms-browser-taon-cms-comments-all-preview-backoffice.component.html.en-US.i18n.data-CjF4lqgh.mjs.map +1 -0
- package/browser/fesm2022/cms-browser-taon-cms-comments-all-preview-backoffice.component.html.pl-PL.i18n.data-CeAhRxMv.mjs +91 -0
- package/browser/fesm2022/cms-browser-taon-cms-comments-all-preview-backoffice.component.html.pl-PL.i18n.data-CeAhRxMv.mjs.map +1 -0
- package/browser/fesm2022/cms-browser-taon-cms-comments-all-preview-backoffice.component.ts.de-DE.i18n.data-DDK-2rLR.mjs +56 -0
- package/browser/fesm2022/cms-browser-taon-cms-comments-all-preview-backoffice.component.ts.de-DE.i18n.data-DDK-2rLR.mjs.map +1 -0
- package/browser/fesm2022/cms-browser-taon-cms-comments-all-preview-backoffice.component.ts.en-US.i18n.data-xFeXpn1o.mjs +47 -0
- package/browser/fesm2022/cms-browser-taon-cms-comments-all-preview-backoffice.component.ts.en-US.i18n.data-xFeXpn1o.mjs.map +1 -0
- package/browser/fesm2022/cms-browser-taon-cms-comments-all-preview-backoffice.component.ts.pl-PL.i18n.data-DYWK01lP.mjs +56 -0
- package/browser/fesm2022/cms-browser-taon-cms-comments-all-preview-backoffice.component.ts.pl-PL.i18n.data-DYWK01lP.mjs.map +1 -0
- package/browser/fesm2022/cms-browser-taon-cms-comments-backoffice.component.ts.de-DE.i18n.data-B7SytbJB.mjs +10 -0
- package/browser/fesm2022/cms-browser-taon-cms-comments-backoffice.component.ts.de-DE.i18n.data-B7SytbJB.mjs.map +1 -0
- package/browser/fesm2022/cms-browser-taon-cms-comments-backoffice.component.ts.en-US.i18n.data-D9bcUBff.mjs +10 -0
- package/browser/fesm2022/cms-browser-taon-cms-comments-backoffice.component.ts.en-US.i18n.data-D9bcUBff.mjs.map +1 -0
- package/browser/fesm2022/cms-browser-taon-cms-comments-backoffice.component.ts.pl-PL.i18n.data-DdHRI05H.mjs +10 -0
- package/browser/fesm2022/cms-browser-taon-cms-comments-backoffice.component.ts.pl-PL.i18n.data-DdHRI05H.mjs.map +1 -0
- package/browser/fesm2022/cms-browser-taon-cms-comments-backoffice.routes.ts.de-DE.i18n.data-DlfHgbLQ.mjs +26 -0
- package/browser/fesm2022/cms-browser-taon-cms-comments-backoffice.routes.ts.de-DE.i18n.data-DlfHgbLQ.mjs.map +1 -0
- package/browser/fesm2022/cms-browser-taon-cms-comments-backoffice.routes.ts.en-US.i18n.data-r7UvcnjQ.mjs +23 -0
- package/browser/fesm2022/cms-browser-taon-cms-comments-backoffice.routes.ts.en-US.i18n.data-r7UvcnjQ.mjs.map +1 -0
- package/browser/fesm2022/cms-browser-taon-cms-comments-backoffice.routes.ts.pl-PL.i18n.data-s7BuhcAO.mjs +26 -0
- package/browser/fesm2022/cms-browser-taon-cms-comments-backoffice.routes.ts.pl-PL.i18n.data-s7BuhcAO.mjs.map +1 -0
- package/browser/fesm2022/cms-browser-taon-cms-comments-blocked-users.component.html.de-DE.i18n.data-CXQd2XPS.mjs +71 -0
- package/browser/fesm2022/cms-browser-taon-cms-comments-blocked-users.component.html.de-DE.i18n.data-CXQd2XPS.mjs.map +1 -0
- package/browser/fesm2022/cms-browser-taon-cms-comments-blocked-users.component.html.en-US.i18n.data-tLSegJ6s.mjs +59 -0
- package/browser/fesm2022/cms-browser-taon-cms-comments-blocked-users.component.html.en-US.i18n.data-tLSegJ6s.mjs.map +1 -0
- package/browser/fesm2022/cms-browser-taon-cms-comments-blocked-users.component.html.pl-PL.i18n.data-DJf5nl3H.mjs +71 -0
- package/browser/fesm2022/cms-browser-taon-cms-comments-blocked-users.component.html.pl-PL.i18n.data-DJf5nl3H.mjs.map +1 -0
- package/browser/fesm2022/cms-browser-taon-cms-comments-blocked-users.component.ts.de-DE.i18n.data-CuWrfki8.mjs +26 -0
- package/browser/fesm2022/cms-browser-taon-cms-comments-blocked-users.component.ts.de-DE.i18n.data-CuWrfki8.mjs.map +1 -0
- package/browser/fesm2022/cms-browser-taon-cms-comments-blocked-users.component.ts.en-US.i18n.data-CDHSnoqj.mjs +23 -0
- package/browser/fesm2022/cms-browser-taon-cms-comments-blocked-users.component.ts.en-US.i18n.data-CDHSnoqj.mjs.map +1 -0
- package/browser/fesm2022/cms-browser-taon-cms-comments-blocked-users.component.ts.pl-PL.i18n.data-CLTOHTxh.mjs +26 -0
- package/browser/fesm2022/cms-browser-taon-cms-comments-blocked-users.component.ts.pl-PL.i18n.data-CLTOHTxh.mjs.map +1 -0
- package/browser/fesm2022/cms-browser-taon-cms-comments-filters-settings.component.html.de-DE.i18n.data-BwQydxXJ.mjs +46 -0
- package/browser/fesm2022/cms-browser-taon-cms-comments-filters-settings.component.html.de-DE.i18n.data-BwQydxXJ.mjs.map +1 -0
- package/browser/fesm2022/cms-browser-taon-cms-comments-filters-settings.component.html.en-US.i18n.data-B0WaOo2T.mjs +39 -0
- package/browser/fesm2022/cms-browser-taon-cms-comments-filters-settings.component.html.en-US.i18n.data-B0WaOo2T.mjs.map +1 -0
- package/browser/fesm2022/cms-browser-taon-cms-comments-filters-settings.component.html.pl-PL.i18n.data-C3LMZQX_.mjs +46 -0
- package/browser/fesm2022/cms-browser-taon-cms-comments-filters-settings.component.html.pl-PL.i18n.data-C3LMZQX_.mjs.map +1 -0
- package/browser/fesm2022/cms-browser-taon-cms-comments-filters-settings.component.ts.de-DE.i18n.data-DJN7ZL2u.mjs +26 -0
- package/browser/fesm2022/cms-browser-taon-cms-comments-filters-settings.component.ts.de-DE.i18n.data-DJN7ZL2u.mjs.map +1 -0
- package/browser/fesm2022/cms-browser-taon-cms-comments-filters-settings.component.ts.en-US.i18n.data-C5wx6com.mjs +23 -0
- package/browser/fesm2022/cms-browser-taon-cms-comments-filters-settings.component.ts.en-US.i18n.data-C5wx6com.mjs.map +1 -0
- package/browser/fesm2022/cms-browser-taon-cms-comments-filters-settings.component.ts.pl-PL.i18n.data-CzLF2vI7.mjs +26 -0
- package/browser/fesm2022/cms-browser-taon-cms-comments-filters-settings.component.ts.pl-PL.i18n.data-CzLF2vI7.mjs.map +1 -0
- package/browser/fesm2022/cms-browser-taon-cms-comments.component.html.de-DE.i18n.data-CC2pOsBh.mjs +96 -0
- package/browser/fesm2022/cms-browser-taon-cms-comments.component.html.de-DE.i18n.data-CC2pOsBh.mjs.map +1 -0
- package/browser/fesm2022/cms-browser-taon-cms-comments.component.html.en-US.i18n.data-BlSOCYdH.mjs +79 -0
- package/browser/fesm2022/cms-browser-taon-cms-comments.component.html.en-US.i18n.data-BlSOCYdH.mjs.map +1 -0
- package/browser/fesm2022/cms-browser-taon-cms-comments.component.html.pl-PL.i18n.data-D7WDhmfg.mjs +96 -0
- package/browser/fesm2022/cms-browser-taon-cms-comments.component.html.pl-PL.i18n.data-D7WDhmfg.mjs.map +1 -0
- package/browser/fesm2022/cms-browser-taon-cms-comments.component.ts.de-DE.i18n.data-BMFIsFQA.mjs +36 -0
- package/browser/fesm2022/cms-browser-taon-cms-comments.component.ts.de-DE.i18n.data-BMFIsFQA.mjs.map +1 -0
- package/browser/fesm2022/cms-browser-taon-cms-comments.component.ts.en-US.i18n.data-CcajJkUT.mjs +31 -0
- package/browser/fesm2022/cms-browser-taon-cms-comments.component.ts.en-US.i18n.data-CcajJkUT.mjs.map +1 -0
- package/browser/fesm2022/cms-browser-taon-cms-comments.component.ts.pl-PL.i18n.data-DHQKm-Vy.mjs +36 -0
- package/browser/fesm2022/cms-browser-taon-cms-comments.component.ts.pl-PL.i18n.data-DHQKm-Vy.mjs.map +1 -0
- package/browser/fesm2022/cms-browser-taon-cms-course-backoffice.component.html.de-DE.i18n.data-C7pTQWwn.mjs +66 -0
- package/browser/fesm2022/cms-browser-taon-cms-course-backoffice.component.html.de-DE.i18n.data-C7pTQWwn.mjs.map +1 -0
- package/browser/fesm2022/cms-browser-taon-cms-course-backoffice.component.html.en-US.i18n.data-DS5e_kiO.mjs +55 -0
- package/browser/fesm2022/cms-browser-taon-cms-course-backoffice.component.html.en-US.i18n.data-DS5e_kiO.mjs.map +1 -0
- package/browser/fesm2022/cms-browser-taon-cms-course-backoffice.component.html.pl-PL.i18n.data-Bbd3tl5E.mjs +66 -0
- package/browser/fesm2022/cms-browser-taon-cms-course-backoffice.component.html.pl-PL.i18n.data-Bbd3tl5E.mjs.map +1 -0
- package/browser/fesm2022/cms-browser-taon-cms-course-backoffice.component.ts.de-DE.i18n.data-Czh-7oo5.mjs +31 -0
- package/browser/fesm2022/cms-browser-taon-cms-course-backoffice.component.ts.de-DE.i18n.data-Czh-7oo5.mjs.map +1 -0
- package/browser/fesm2022/cms-browser-taon-cms-course-backoffice.component.ts.pl-PL.i18n.data-C24kqclA.mjs +31 -0
- package/browser/fesm2022/cms-browser-taon-cms-course-backoffice.component.ts.pl-PL.i18n.data-C24kqclA.mjs.map +1 -0
- package/browser/fesm2022/cms-browser-taon-cms-course-contents.component.html.de-DE.i18n.data-DHjZfsX1.mjs +46 -0
- package/browser/fesm2022/cms-browser-taon-cms-course-contents.component.html.de-DE.i18n.data-DHjZfsX1.mjs.map +1 -0
- package/browser/fesm2022/cms-browser-taon-cms-course-contents.component.html.en-US.i18n.data-DVgKXqkn.mjs +39 -0
- package/browser/fesm2022/cms-browser-taon-cms-course-contents.component.html.en-US.i18n.data-DVgKXqkn.mjs.map +1 -0
- package/browser/fesm2022/cms-browser-taon-cms-course-contents.component.html.pl-PL.i18n.data-DG7WF_Q6.mjs +46 -0
- package/browser/fesm2022/cms-browser-taon-cms-course-contents.component.html.pl-PL.i18n.data-DG7WF_Q6.mjs.map +1 -0
- package/browser/fesm2022/cms-browser-taon-cms-course-contents.component.ts.de-DE.i18n.data-Bpfepbck.mjs +41 -0
- package/browser/fesm2022/cms-browser-taon-cms-course-contents.component.ts.de-DE.i18n.data-Bpfepbck.mjs.map +1 -0
- package/browser/fesm2022/cms-browser-taon-cms-course-contents.component.ts.en-US.i18n.data-B8LDDxAZ.mjs +35 -0
- package/browser/fesm2022/cms-browser-taon-cms-course-contents.component.ts.en-US.i18n.data-B8LDDxAZ.mjs.map +1 -0
- package/browser/fesm2022/cms-browser-taon-cms-course-contents.component.ts.pl-PL.i18n.data-BBIJ3S8j.mjs +41 -0
- package/browser/fesm2022/cms-browser-taon-cms-course-contents.component.ts.pl-PL.i18n.data-BBIJ3S8j.mjs.map +1 -0
- package/browser/fesm2022/cms-browser-taon-cms-course-cover.component.ts.de-DE.i18n.data-DN1aH4NG.mjs +16 -0
- package/browser/fesm2022/cms-browser-taon-cms-course-cover.component.ts.de-DE.i18n.data-DN1aH4NG.mjs.map +1 -0
- package/browser/fesm2022/cms-browser-taon-cms-course-cover.component.ts.pl-PL.i18n.data-CqFjyHe8.mjs +16 -0
- package/browser/fesm2022/cms-browser-taon-cms-course-cover.component.ts.pl-PL.i18n.data-CqFjyHe8.mjs.map +1 -0
- package/browser/fesm2022/cms-browser-taon-cms-post-choice-dialog.component.html.de-DE.i18n.data-5Qiho28U.mjs +21 -0
- package/browser/fesm2022/cms-browser-taon-cms-post-choice-dialog.component.html.de-DE.i18n.data-5Qiho28U.mjs.map +1 -0
- package/browser/fesm2022/cms-browser-taon-cms-post-choice-dialog.component.html.en-US.i18n.data-b7N9eQx6.mjs +19 -0
- package/browser/fesm2022/cms-browser-taon-cms-post-choice-dialog.component.html.en-US.i18n.data-b7N9eQx6.mjs.map +1 -0
- package/browser/fesm2022/cms-browser-taon-cms-post-choice-dialog.component.html.pl-PL.i18n.data-C60-CdWA.mjs +21 -0
- package/browser/fesm2022/cms-browser-taon-cms-post-choice-dialog.component.html.pl-PL.i18n.data-C60-CdWA.mjs.map +1 -0
- package/browser/fesm2022/cms-browser-taon-cms-post-choice-dialog.component.ts.de-DE.i18n.data-p-8AkPxT.mjs +10 -0
- package/browser/fesm2022/cms-browser-taon-cms-post-choice-dialog.component.ts.de-DE.i18n.data-p-8AkPxT.mjs.map +1 -0
- package/browser/fesm2022/cms-browser-taon-cms-post-choice-dialog.component.ts.en-US.i18n.data-Ch5so5tI.mjs +10 -0
- package/browser/fesm2022/cms-browser-taon-cms-post-choice-dialog.component.ts.en-US.i18n.data-Ch5so5tI.mjs.map +1 -0
- package/browser/fesm2022/cms-browser-taon-cms-post-choice-dialog.component.ts.pl-PL.i18n.data-yUfBicV4.mjs +10 -0
- package/browser/fesm2022/cms-browser-taon-cms-post-choice-dialog.component.ts.pl-PL.i18n.data-yUfBicV4.mjs.map +1 -0
- package/browser/fesm2022/cms-browser-taon-cms-post-details-page.component.ts.de-DE.i18n.data-Dg1YSTPY.mjs +21 -0
- package/browser/fesm2022/cms-browser-taon-cms-post-details-page.component.ts.de-DE.i18n.data-Dg1YSTPY.mjs.map +1 -0
- package/browser/fesm2022/cms-browser-taon-cms-post-details-page.component.ts.pl-PL.i18n.data-D0byKBJB.mjs +21 -0
- package/browser/fesm2022/cms-browser-taon-cms-post-details-page.component.ts.pl-PL.i18n.data-D0byKBJB.mjs.map +1 -0
- package/browser/fesm2022/cms-browser-taon-cms-post-table-actions.directive.ts.de-DE.i18n.data-C2j_py52.mjs +106 -0
- package/browser/fesm2022/cms-browser-taon-cms-post-table-actions.directive.ts.de-DE.i18n.data-C2j_py52.mjs.map +1 -0
- package/browser/fesm2022/cms-browser-taon-cms-post-table-actions.directive.ts.en-US.i18n.data-BZPgJVlM.mjs +87 -0
- package/browser/fesm2022/cms-browser-taon-cms-post-table-actions.directive.ts.en-US.i18n.data-BZPgJVlM.mjs.map +1 -0
- package/browser/fesm2022/cms-browser-taon-cms-post-table-actions.directive.ts.pl-PL.i18n.data-BjWjc3BL.mjs +106 -0
- package/browser/fesm2022/cms-browser-taon-cms-post-table-actions.directive.ts.pl-PL.i18n.data-BjWjc3BL.mjs.map +1 -0
- package/browser/fesm2022/cms-browser-taon-cms-post-thumbnail.component.ts.de-DE.i18n.data-BsUvV7wV.mjs +16 -0
- package/browser/fesm2022/cms-browser-taon-cms-post-thumbnail.component.ts.de-DE.i18n.data-BsUvV7wV.mjs.map +1 -0
- package/browser/fesm2022/cms-browser-taon-cms-post-thumbnail.component.ts.en-US.i18n.data-BnQ5iyjF.mjs +15 -0
- package/browser/fesm2022/cms-browser-taon-cms-post-thumbnail.component.ts.en-US.i18n.data-BnQ5iyjF.mjs.map +1 -0
- package/browser/fesm2022/cms-browser-taon-cms-post-thumbnail.component.ts.pl-PL.i18n.data-BK-39xw9.mjs +16 -0
- package/browser/fesm2022/cms-browser-taon-cms-post-thumbnail.component.ts.pl-PL.i18n.data-BK-39xw9.mjs.map +1 -0
- package/browser/fesm2022/cms-browser-taon-cms-post.component.html.de-DE.i18n.data-Bv4175Nc.mjs +782 -0
- package/browser/fesm2022/cms-browser-taon-cms-post.component.html.de-DE.i18n.data-Bv4175Nc.mjs.map +1 -0
- package/browser/fesm2022/cms-browser-taon-cms-post.component.html.en-US.i18n.data-CY1znnmK.mjs +703 -0
- package/browser/fesm2022/cms-browser-taon-cms-post.component.html.en-US.i18n.data-CY1znnmK.mjs.map +1 -0
- package/browser/fesm2022/cms-browser-taon-cms-post.component.html.pl-PL.i18n.data-BcbuzOtn.mjs +784 -0
- package/browser/fesm2022/cms-browser-taon-cms-post.component.html.pl-PL.i18n.data-BcbuzOtn.mjs.map +1 -0
- package/browser/fesm2022/cms-browser-taon-cms-post.component.ts.de-DE.i18n.data-DzuYOTSn.mjs +356 -0
- package/browser/fesm2022/cms-browser-taon-cms-post.component.ts.de-DE.i18n.data-DzuYOTSn.mjs.map +1 -0
- package/browser/fesm2022/cms-browser-taon-cms-post.component.ts.en-US.i18n.data-MgewtvKr.mjs +315 -0
- package/browser/fesm2022/cms-browser-taon-cms-post.component.ts.en-US.i18n.data-MgewtvKr.mjs.map +1 -0
- package/browser/fesm2022/cms-browser-taon-cms-post.component.ts.pl-PL.i18n.data-B1ILfsGK.mjs +356 -0
- package/browser/fesm2022/cms-browser-taon-cms-post.component.ts.pl-PL.i18n.data-B1ILfsGK.mjs.map +1 -0
- package/browser/fesm2022/cms-browser-taon-cms-posts-backoffice.component.html.de-DE.i18n.data-NJq9X1Xu.mjs +56 -0
- package/browser/fesm2022/cms-browser-taon-cms-posts-backoffice.component.html.de-DE.i18n.data-NJq9X1Xu.mjs.map +1 -0
- package/browser/fesm2022/cms-browser-taon-cms-posts-backoffice.component.html.en-US.i18n.data-CNVclldN.mjs +49 -0
- package/browser/fesm2022/cms-browser-taon-cms-posts-backoffice.component.html.en-US.i18n.data-CNVclldN.mjs.map +1 -0
- package/browser/fesm2022/cms-browser-taon-cms-posts-backoffice.component.html.pl-PL.i18n.data-Du1-Z4s7.mjs +56 -0
- package/browser/fesm2022/cms-browser-taon-cms-posts-backoffice.component.html.pl-PL.i18n.data-Du1-Z4s7.mjs.map +1 -0
- package/browser/fesm2022/cms-browser-taon-cms-posts-backoffice.component.ts.de-DE.i18n.data-Dpn2QCL5.mjs +26 -0
- package/browser/fesm2022/cms-browser-taon-cms-posts-backoffice.component.ts.de-DE.i18n.data-Dpn2QCL5.mjs.map +1 -0
- package/browser/fesm2022/cms-browser-taon-cms-posts-backoffice.component.ts.pl-PL.i18n.data-D66VONme.mjs +26 -0
- package/browser/fesm2022/cms-browser-taon-cms-posts-backoffice.component.ts.pl-PL.i18n.data-D66VONme.mjs.map +1 -0
- package/browser/fesm2022/cms-browser-taon-cms-revision-chooser.component.html.de-DE.i18n.data-BwHoQ5dp.mjs +85 -0
- package/browser/fesm2022/cms-browser-taon-cms-revision-chooser.component.html.de-DE.i18n.data-BwHoQ5dp.mjs.map +1 -0
- package/browser/fesm2022/cms-browser-taon-cms-revision-chooser.component.html.en-US.i18n.data--DmrBMU8.mjs +85 -0
- package/browser/fesm2022/cms-browser-taon-cms-revision-chooser.component.html.en-US.i18n.data--DmrBMU8.mjs.map +1 -0
- package/browser/fesm2022/cms-browser-taon-cms-revision-chooser.component.html.pl-PL.i18n.data-Dq6ANhCC.mjs +85 -0
- package/browser/fesm2022/cms-browser-taon-cms-revision-chooser.component.html.pl-PL.i18n.data-Dq6ANhCC.mjs.map +1 -0
- package/browser/fesm2022/cms-browser-taon-cms-taxonomy-quick-create-dialog.component.ts.de-DE.i18n.data-BNNR86nE.mjs +46 -0
- package/browser/fesm2022/cms-browser-taon-cms-taxonomy-quick-create-dialog.component.ts.de-DE.i18n.data-BNNR86nE.mjs.map +1 -0
- package/browser/fesm2022/cms-browser-taon-cms-taxonomy-quick-create-dialog.component.ts.pl-PL.i18n.data-CWZgi9Oj.mjs +46 -0
- package/browser/fesm2022/cms-browser-taon-cms-taxonomy-quick-create-dialog.component.ts.pl-PL.i18n.data-CWZgi9Oj.mjs.map +1 -0
- package/browser/fesm2022/cms-browser-taon-cms-website-feature.constants.ts.de-DE.i18n.data-XXzo3WV0.mjs +15 -0
- package/browser/fesm2022/cms-browser-taon-cms-website-feature.constants.ts.de-DE.i18n.data-XXzo3WV0.mjs.map +1 -0
- package/browser/fesm2022/cms-browser-taon-cms-website-feature.constants.ts.en-US.i18n.data-RSZ1CMH0.mjs +15 -0
- package/browser/fesm2022/cms-browser-taon-cms-website-feature.constants.ts.en-US.i18n.data-RSZ1CMH0.mjs.map +1 -0
- package/browser/fesm2022/cms-browser-taon-cms-website-feature.constants.ts.pl-PL.i18n.data-DkusOdc2.mjs +15 -0
- package/browser/fesm2022/cms-browser-taon-cms-website-feature.constants.ts.pl-PL.i18n.data-DkusOdc2.mjs.map +1 -0
- package/browser/fesm2022/cms-browser-taon-cms-website-feature.controller.ts.de-DE.i18n.data-CffwgAbw.mjs +16 -0
- package/browser/fesm2022/cms-browser-taon-cms-website-feature.controller.ts.de-DE.i18n.data-CffwgAbw.mjs.map +1 -0
- package/browser/fesm2022/cms-browser-taon-cms-website-feature.controller.ts.en-US.i18n.data-B5b4Sjbx.mjs +15 -0
- package/browser/fesm2022/cms-browser-taon-cms-website-feature.controller.ts.en-US.i18n.data-B5b4Sjbx.mjs.map +1 -0
- package/browser/fesm2022/cms-browser-taon-cms-website-feature.controller.ts.pl-PL.i18n.data-DsRHlzfY.mjs +16 -0
- package/browser/fesm2022/cms-browser-taon-cms-website-feature.controller.ts.pl-PL.i18n.data-DsRHlzfY.mjs.map +1 -0
- package/browser/fesm2022/cms-browser-taon-cms-website-features.component.html.de-DE.i18n.data-DjcIc00l.mjs +46 -0
- package/browser/fesm2022/cms-browser-taon-cms-website-features.component.html.de-DE.i18n.data-DjcIc00l.mjs.map +1 -0
- package/browser/fesm2022/cms-browser-taon-cms-website-features.component.html.en-US.i18n.data-QmMRyRO7.mjs +39 -0
- package/browser/fesm2022/cms-browser-taon-cms-website-features.component.html.en-US.i18n.data-QmMRyRO7.mjs.map +1 -0
- package/browser/fesm2022/cms-browser-taon-cms-website-features.component.html.pl-PL.i18n.data-Dw8jZ3c6.mjs +46 -0
- package/browser/fesm2022/cms-browser-taon-cms-website-features.component.html.pl-PL.i18n.data-Dw8jZ3c6.mjs.map +1 -0
- package/browser/fesm2022/cms-browser-taon-cms-website-features.component.ts.de-DE.i18n.data-Bza6XFl9.mjs +56 -0
- package/browser/fesm2022/cms-browser-taon-cms-website-features.component.ts.de-DE.i18n.data-Bza6XFl9.mjs.map +1 -0
- package/browser/fesm2022/cms-browser-taon-cms-website-features.component.ts.en-US.i18n.data-VlSWp-9Q.mjs +47 -0
- package/browser/fesm2022/cms-browser-taon-cms-website-features.component.ts.en-US.i18n.data-VlSWp-9Q.mjs.map +1 -0
- package/browser/fesm2022/cms-browser-taon-cms-website-features.component.ts.pl-PL.i18n.data-B8sGULWs.mjs +56 -0
- package/browser/fesm2022/cms-browser-taon-cms-website-features.component.ts.pl-PL.i18n.data-B8sGULWs.mjs.map +1 -0
- package/browser/fesm2022/cms-browser-taon-related-post-chooser.component.html.de-DE.i18n.data-iFMy_s0K.mjs +56 -0
- package/browser/fesm2022/cms-browser-taon-related-post-chooser.component.html.de-DE.i18n.data-iFMy_s0K.mjs.map +1 -0
- package/browser/fesm2022/cms-browser-taon-related-post-chooser.component.html.en-US.i18n.data-CDzbclv0.mjs +54 -0
- package/browser/fesm2022/cms-browser-taon-related-post-chooser.component.html.en-US.i18n.data-CDzbclv0.mjs.map +1 -0
- package/browser/fesm2022/cms-browser-taon-related-post-chooser.component.html.pl-PL.i18n.data-ByrgL4Gv.mjs +56 -0
- package/browser/fesm2022/cms-browser-taon-related-post-chooser.component.html.pl-PL.i18n.data-ByrgL4Gv.mjs.map +1 -0
- package/browser/fesm2022/cms-browser-taon-related-post-chooser.component.ts.de-DE.i18n.data-DfuNO9iv.mjs +21 -0
- package/browser/fesm2022/cms-browser-taon-related-post-chooser.component.ts.de-DE.i18n.data-DfuNO9iv.mjs.map +1 -0
- package/browser/fesm2022/cms-browser-taon-related-post-chooser.component.ts.en-US.i18n.data-DrnuVs_M.mjs +21 -0
- package/browser/fesm2022/cms-browser-taon-related-post-chooser.component.ts.en-US.i18n.data-DrnuVs_M.mjs.map +1 -0
- package/browser/fesm2022/cms-browser-taon-related-post-chooser.component.ts.pl-PL.i18n.data-BpjogO9H.mjs +21 -0
- package/browser/fesm2022/cms-browser-taon-related-post-chooser.component.ts.pl-PL.i18n.data-BpjogO9H.mjs.map +1 -0
- package/browser/fesm2022/cms-browser.mjs +5995 -1216
- package/browser/fesm2022/cms-browser.mjs.map +1 -1
- package/browser/package.json +1 -1
- package/browser/types/cms-browser.d.ts +590 -29
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-backoffice.component.html.de-DE.i18n.data-KeoaV7m2.mjs +21 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-backoffice.component.html.de-DE.i18n.data-KeoaV7m2.mjs.map +1 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-backoffice.component.html.en-US.i18n.data-ygnWytvQ.mjs +21 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-backoffice.component.html.en-US.i18n.data-ygnWytvQ.mjs.map +1 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-backoffice.component.html.pl-PL.i18n.data-UUgWez1i.mjs +21 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-backoffice.component.html.pl-PL.i18n.data-UUgWez1i.mjs.map +1 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-backoffice.routes.ts.de-DE.i18n.data-IYg91CQc.mjs +46 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-backoffice.routes.ts.de-DE.i18n.data-IYg91CQc.mjs.map +1 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-backoffice.routes.ts.en-US.i18n.data-Cm8zOt05.mjs +43 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-backoffice.routes.ts.en-US.i18n.data-Cm8zOt05.mjs.map +1 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-backoffice.routes.ts.pl-PL.i18n.data-BsuJ8Lkt.mjs +46 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-backoffice.routes.ts.pl-PL.i18n.data-BsuJ8Lkt.mjs.map +1 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comment.controller.ts.de-DE.i18n.data-Bd2osC_4.mjs +116 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comment.controller.ts.de-DE.i18n.data-Bd2osC_4.mjs.map +1 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comment.controller.ts.en-US.i18n.data-IWj03KvC.mjs +95 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comment.controller.ts.en-US.i18n.data-IWj03KvC.mjs.map +1 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comment.controller.ts.pl-PL.i18n.data-C5bVU8fj.mjs +116 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comment.controller.ts.pl-PL.i18n.data-C5bVU8fj.mjs.map +1 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments-all-preview-backoffice.component.html.de-DE.i18n.data-CaKUf8Fk.mjs +91 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments-all-preview-backoffice.component.html.de-DE.i18n.data-CaKUf8Fk.mjs.map +1 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments-all-preview-backoffice.component.html.en-US.i18n.data-wKFwdBQr.mjs +75 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments-all-preview-backoffice.component.html.en-US.i18n.data-wKFwdBQr.mjs.map +1 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments-all-preview-backoffice.component.html.pl-PL.i18n.data-CefV542V.mjs +91 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments-all-preview-backoffice.component.html.pl-PL.i18n.data-CefV542V.mjs.map +1 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments-all-preview-backoffice.component.ts.de-DE.i18n.data-CfJrptWE.mjs +56 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments-all-preview-backoffice.component.ts.de-DE.i18n.data-CfJrptWE.mjs.map +1 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments-all-preview-backoffice.component.ts.en-US.i18n.data-Bw-EvzZd.mjs +47 -0
- 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
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments-all-preview-backoffice.component.ts.pl-PL.i18n.data-CFNbIfA2.mjs +56 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments-all-preview-backoffice.component.ts.pl-PL.i18n.data-CFNbIfA2.mjs.map +1 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments-backoffice.component.ts.de-DE.i18n.data-D7SoFQFJ.mjs +10 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments-backoffice.component.ts.de-DE.i18n.data-D7SoFQFJ.mjs.map +1 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments-backoffice.component.ts.en-US.i18n.data-DvzTa0Yp.mjs +10 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments-backoffice.component.ts.en-US.i18n.data-DvzTa0Yp.mjs.map +1 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments-backoffice.component.ts.pl-PL.i18n.data-rZd8Ibrx.mjs +10 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments-backoffice.component.ts.pl-PL.i18n.data-rZd8Ibrx.mjs.map +1 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments-backoffice.routes.ts.de-DE.i18n.data-B8HxMZ2F.mjs +26 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments-backoffice.routes.ts.de-DE.i18n.data-B8HxMZ2F.mjs.map +1 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments-backoffice.routes.ts.en-US.i18n.data-C6g2CYxx.mjs +23 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments-backoffice.routes.ts.en-US.i18n.data-C6g2CYxx.mjs.map +1 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments-backoffice.routes.ts.pl-PL.i18n.data-C9WubLOQ.mjs +26 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments-backoffice.routes.ts.pl-PL.i18n.data-C9WubLOQ.mjs.map +1 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments-blocked-users.component.html.de-DE.i18n.data-R9AH_44l.mjs +71 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments-blocked-users.component.html.de-DE.i18n.data-R9AH_44l.mjs.map +1 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments-blocked-users.component.html.en-US.i18n.data-BQyckLog.mjs +59 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments-blocked-users.component.html.en-US.i18n.data-BQyckLog.mjs.map +1 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments-blocked-users.component.html.pl-PL.i18n.data-_-iaPoPs.mjs +71 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments-blocked-users.component.html.pl-PL.i18n.data-_-iaPoPs.mjs.map +1 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments-blocked-users.component.ts.de-DE.i18n.data-CCyRCtw8.mjs +26 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments-blocked-users.component.ts.de-DE.i18n.data-CCyRCtw8.mjs.map +1 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments-blocked-users.component.ts.en-US.i18n.data-BbwVt_l2.mjs +23 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments-blocked-users.component.ts.en-US.i18n.data-BbwVt_l2.mjs.map +1 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments-blocked-users.component.ts.pl-PL.i18n.data-D-gwEZ1P.mjs +26 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments-blocked-users.component.ts.pl-PL.i18n.data-D-gwEZ1P.mjs.map +1 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments-filters-settings.component.html.de-DE.i18n.data-C0PxPYQr.mjs +46 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments-filters-settings.component.html.de-DE.i18n.data-C0PxPYQr.mjs.map +1 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments-filters-settings.component.html.en-US.i18n.data-k_0dbIXB.mjs +39 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments-filters-settings.component.html.en-US.i18n.data-k_0dbIXB.mjs.map +1 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments-filters-settings.component.html.pl-PL.i18n.data-DgaU4pt5.mjs +46 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments-filters-settings.component.html.pl-PL.i18n.data-DgaU4pt5.mjs.map +1 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments-filters-settings.component.ts.de-DE.i18n.data-BPGhyiPp.mjs +26 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments-filters-settings.component.ts.de-DE.i18n.data-BPGhyiPp.mjs.map +1 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments-filters-settings.component.ts.en-US.i18n.data-DKAqxNAJ.mjs +23 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments-filters-settings.component.ts.en-US.i18n.data-DKAqxNAJ.mjs.map +1 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments-filters-settings.component.ts.pl-PL.i18n.data-CcQBqus-.mjs +26 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments-filters-settings.component.ts.pl-PL.i18n.data-CcQBqus-.mjs.map +1 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments.component.html.de-DE.i18n.data-QVEWNXzQ.mjs +96 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments.component.html.de-DE.i18n.data-QVEWNXzQ.mjs.map +1 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments.component.html.en-US.i18n.data-ryggDWZd.mjs +79 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments.component.html.en-US.i18n.data-ryggDWZd.mjs.map +1 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments.component.html.pl-PL.i18n.data-wWL_FkhB.mjs +96 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments.component.html.pl-PL.i18n.data-wWL_FkhB.mjs.map +1 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments.component.ts.de-DE.i18n.data-nLhHlaqV.mjs +36 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments.component.ts.de-DE.i18n.data-nLhHlaqV.mjs.map +1 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments.component.ts.en-US.i18n.data-srx7cGeB.mjs +31 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments.component.ts.en-US.i18n.data-srx7cGeB.mjs.map +1 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments.component.ts.pl-PL.i18n.data--3605ibH.mjs +36 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-comments.component.ts.pl-PL.i18n.data--3605ibH.mjs.map +1 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-course-backoffice.component.html.de-DE.i18n.data-DL9j2S1f.mjs +66 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-course-backoffice.component.html.de-DE.i18n.data-DL9j2S1f.mjs.map +1 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-course-backoffice.component.html.en-US.i18n.data-CQQNkA31.mjs +55 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-course-backoffice.component.html.en-US.i18n.data-CQQNkA31.mjs.map +1 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-course-backoffice.component.html.pl-PL.i18n.data-YKrwR-oA.mjs +66 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-course-backoffice.component.html.pl-PL.i18n.data-YKrwR-oA.mjs.map +1 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-course-backoffice.component.ts.de-DE.i18n.data-BjI7Rbas.mjs +31 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-course-backoffice.component.ts.de-DE.i18n.data-BjI7Rbas.mjs.map +1 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-course-backoffice.component.ts.pl-PL.i18n.data-Bpon52uf.mjs +31 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-course-backoffice.component.ts.pl-PL.i18n.data-Bpon52uf.mjs.map +1 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-course-contents.component.html.de-DE.i18n.data-DHHWiChe.mjs +46 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-course-contents.component.html.de-DE.i18n.data-DHHWiChe.mjs.map +1 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-course-contents.component.html.en-US.i18n.data-DtWbUo_H.mjs +39 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-course-contents.component.html.en-US.i18n.data-DtWbUo_H.mjs.map +1 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-course-contents.component.html.pl-PL.i18n.data-CRbTFEf4.mjs +46 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-course-contents.component.html.pl-PL.i18n.data-CRbTFEf4.mjs.map +1 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-course-contents.component.ts.de-DE.i18n.data-6akBXxFh.mjs +41 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-course-contents.component.ts.de-DE.i18n.data-6akBXxFh.mjs.map +1 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-course-contents.component.ts.en-US.i18n.data-B1JxjQQ6.mjs +35 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-course-contents.component.ts.en-US.i18n.data-B1JxjQQ6.mjs.map +1 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-course-contents.component.ts.pl-PL.i18n.data-BgUqIZxn.mjs +41 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-course-contents.component.ts.pl-PL.i18n.data-BgUqIZxn.mjs.map +1 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-course-cover.component.ts.de-DE.i18n.data-edv9b3CL.mjs +16 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-course-cover.component.ts.de-DE.i18n.data-edv9b3CL.mjs.map +1 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-course-cover.component.ts.pl-PL.i18n.data-DCsX0C5i.mjs +16 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-course-cover.component.ts.pl-PL.i18n.data-DCsX0C5i.mjs.map +1 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post-choice-dialog.component.html.de-DE.i18n.data-D_pzY5c6.mjs +21 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post-choice-dialog.component.html.de-DE.i18n.data-D_pzY5c6.mjs.map +1 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post-choice-dialog.component.html.en-US.i18n.data-D-5qFPjS.mjs +19 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post-choice-dialog.component.html.en-US.i18n.data-D-5qFPjS.mjs.map +1 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post-choice-dialog.component.html.pl-PL.i18n.data-BvewjJas.mjs +21 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post-choice-dialog.component.html.pl-PL.i18n.data-BvewjJas.mjs.map +1 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post-choice-dialog.component.ts.de-DE.i18n.data-DSCbLyki.mjs +10 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post-choice-dialog.component.ts.de-DE.i18n.data-DSCbLyki.mjs.map +1 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post-choice-dialog.component.ts.en-US.i18n.data-DFXtq9fz.mjs +10 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post-choice-dialog.component.ts.en-US.i18n.data-DFXtq9fz.mjs.map +1 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post-choice-dialog.component.ts.pl-PL.i18n.data-BEsM01k5.mjs +10 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post-choice-dialog.component.ts.pl-PL.i18n.data-BEsM01k5.mjs.map +1 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post-details-page.component.ts.de-DE.i18n.data-CumuirSm.mjs +21 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post-details-page.component.ts.de-DE.i18n.data-CumuirSm.mjs.map +1 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post-details-page.component.ts.pl-PL.i18n.data-Deh207IQ.mjs +21 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post-details-page.component.ts.pl-PL.i18n.data-Deh207IQ.mjs.map +1 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post-table-actions.directive.ts.de-DE.i18n.data-CSJ-71_1.mjs +106 -0
- 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
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post-table-actions.directive.ts.en-US.i18n.data-lHahMG_F.mjs +87 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post-table-actions.directive.ts.en-US.i18n.data-lHahMG_F.mjs.map +1 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post-table-actions.directive.ts.pl-PL.i18n.data-CCVXEdC9.mjs +106 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post-table-actions.directive.ts.pl-PL.i18n.data-CCVXEdC9.mjs.map +1 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post-thumbnail.component.ts.de-DE.i18n.data-d1KbFK-8.mjs +16 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post-thumbnail.component.ts.de-DE.i18n.data-d1KbFK-8.mjs.map +1 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post-thumbnail.component.ts.en-US.i18n.data-DS_P-nD2.mjs +15 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post-thumbnail.component.ts.en-US.i18n.data-DS_P-nD2.mjs.map +1 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post-thumbnail.component.ts.pl-PL.i18n.data-B4j_wPwr.mjs +16 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post-thumbnail.component.ts.pl-PL.i18n.data-B4j_wPwr.mjs.map +1 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post.component.html.de-DE.i18n.data-DpFy5ZSO.mjs +782 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post.component.html.de-DE.i18n.data-DpFy5ZSO.mjs.map +1 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post.component.html.en-US.i18n.data-DLaPQZZj.mjs +703 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post.component.html.en-US.i18n.data-DLaPQZZj.mjs.map +1 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post.component.html.pl-PL.i18n.data-alQxEnOY.mjs +784 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post.component.html.pl-PL.i18n.data-alQxEnOY.mjs.map +1 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post.component.ts.de-DE.i18n.data-4KAdwPda.mjs +356 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post.component.ts.de-DE.i18n.data-4KAdwPda.mjs.map +1 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post.component.ts.en-US.i18n.data-CyuTYn77.mjs +315 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post.component.ts.en-US.i18n.data-CyuTYn77.mjs.map +1 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post.component.ts.pl-PL.i18n.data-CgmdVwt_.mjs +356 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post.component.ts.pl-PL.i18n.data-CgmdVwt_.mjs.map +1 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-posts-backoffice.component.html.de-DE.i18n.data-BZ-i1R4M.mjs +56 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-posts-backoffice.component.html.de-DE.i18n.data-BZ-i1R4M.mjs.map +1 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-posts-backoffice.component.html.en-US.i18n.data-DpY2vTkh.mjs +49 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-posts-backoffice.component.html.en-US.i18n.data-DpY2vTkh.mjs.map +1 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-posts-backoffice.component.html.pl-PL.i18n.data-p5RPou3k.mjs +56 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-posts-backoffice.component.html.pl-PL.i18n.data-p5RPou3k.mjs.map +1 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-posts-backoffice.component.ts.de-DE.i18n.data-CuOgDz6a.mjs +26 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-posts-backoffice.component.ts.de-DE.i18n.data-CuOgDz6a.mjs.map +1 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-posts-backoffice.component.ts.pl-PL.i18n.data-BYAbSMUv.mjs +26 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-posts-backoffice.component.ts.pl-PL.i18n.data-BYAbSMUv.mjs.map +1 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-revision-chooser.component.html.de-DE.i18n.data-SLqA66mR.mjs +85 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-revision-chooser.component.html.de-DE.i18n.data-SLqA66mR.mjs.map +1 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-revision-chooser.component.html.en-US.i18n.data-bi1erbhb.mjs +85 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-revision-chooser.component.html.en-US.i18n.data-bi1erbhb.mjs.map +1 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-revision-chooser.component.html.pl-PL.i18n.data-zyD3T2B0.mjs +85 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-revision-chooser.component.html.pl-PL.i18n.data-zyD3T2B0.mjs.map +1 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-taxonomy-quick-create-dialog.component.ts.de-DE.i18n.data-BkqaMCJv.mjs +46 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-taxonomy-quick-create-dialog.component.ts.de-DE.i18n.data-BkqaMCJv.mjs.map +1 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-taxonomy-quick-create-dialog.component.ts.pl-PL.i18n.data-Df3XTcUB.mjs +46 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-taxonomy-quick-create-dialog.component.ts.pl-PL.i18n.data-Df3XTcUB.mjs.map +1 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-website-feature.constants.ts.de-DE.i18n.data-BGUWeWkj.mjs +15 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-website-feature.constants.ts.de-DE.i18n.data-BGUWeWkj.mjs.map +1 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-website-feature.constants.ts.en-US.i18n.data-CAYhYnAq.mjs +15 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-website-feature.constants.ts.en-US.i18n.data-CAYhYnAq.mjs.map +1 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-website-feature.constants.ts.pl-PL.i18n.data-DupidosD.mjs +15 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-website-feature.constants.ts.pl-PL.i18n.data-DupidosD.mjs.map +1 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-website-feature.controller.ts.de-DE.i18n.data-C6pc-hGv.mjs +16 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-website-feature.controller.ts.de-DE.i18n.data-C6pc-hGv.mjs.map +1 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-website-feature.controller.ts.en-US.i18n.data-BrZBJdiq.mjs +15 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-website-feature.controller.ts.en-US.i18n.data-BrZBJdiq.mjs.map +1 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-website-feature.controller.ts.pl-PL.i18n.data-SCFSueVV.mjs +16 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-website-feature.controller.ts.pl-PL.i18n.data-SCFSueVV.mjs.map +1 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-website-features.component.html.de-DE.i18n.data-BLuXQBJD.mjs +46 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-website-features.component.html.de-DE.i18n.data-BLuXQBJD.mjs.map +1 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-website-features.component.html.en-US.i18n.data-ZSAywMxZ.mjs +39 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-website-features.component.html.en-US.i18n.data-ZSAywMxZ.mjs.map +1 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-website-features.component.html.pl-PL.i18n.data-BfV8s907.mjs +46 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-website-features.component.html.pl-PL.i18n.data-BfV8s907.mjs.map +1 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-website-features.component.ts.de-DE.i18n.data-CyPSphVA.mjs +56 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-website-features.component.ts.de-DE.i18n.data-CyPSphVA.mjs.map +1 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-website-features.component.ts.en-US.i18n.data-CxtU9aqd.mjs +47 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-website-features.component.ts.en-US.i18n.data-CxtU9aqd.mjs.map +1 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-website-features.component.ts.pl-PL.i18n.data-Pck7hkyw.mjs +56 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-website-features.component.ts.pl-PL.i18n.data-Pck7hkyw.mjs.map +1 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-related-post-chooser.component.html.de-DE.i18n.data-aRQCm3uS.mjs +56 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-related-post-chooser.component.html.de-DE.i18n.data-aRQCm3uS.mjs.map +1 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-related-post-chooser.component.html.en-US.i18n.data-B_XqsehF.mjs +54 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-related-post-chooser.component.html.en-US.i18n.data-B_XqsehF.mjs.map +1 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-related-post-chooser.component.html.pl-PL.i18n.data-BHcZlUUP.mjs +56 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-related-post-chooser.component.html.pl-PL.i18n.data-BHcZlUUP.mjs.map +1 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-related-post-chooser.component.ts.de-DE.i18n.data-utf6lc8k.mjs +21 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-related-post-chooser.component.ts.de-DE.i18n.data-utf6lc8k.mjs.map +1 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-related-post-chooser.component.ts.en-US.i18n.data-CRQBHUL4.mjs +21 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-related-post-chooser.component.ts.en-US.i18n.data-CRQBHUL4.mjs.map +1 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-related-post-chooser.component.ts.pl-PL.i18n.data-vo_xnVr_.mjs +21 -0
- package/browser-prod/fesm2022/cms-browser-prod-taon-related-post-chooser.component.ts.pl-PL.i18n.data-vo_xnVr_.mjs.map +1 -0
- package/browser-prod/fesm2022/cms-browser-prod.mjs +7627 -2837
- package/browser-prod/fesm2022/cms-browser-prod.mjs.map +1 -1
- package/browser-prod/package.json +1 -1
- package/browser-prod/types/cms-browser-prod.d.ts +574 -29
- package/browser-prod.split-namespaces.json +19 -1
- package/full-dts/build-info._auto-generated_.d.ts +1 -1
- package/full-dts/index._auto-generated_.d.ts +34 -1
- package/full-dts/migrations/1793664000000_postVersionLinks.d.ts +7 -0
- package/full-dts/migrations/migrations_index._auto-generated_.d.ts +3 -0
- package/full-dts/taon-cms-backoffice/i18n/taon-cms-backoffice.routes.ts.de-DE.i18n.data.d.ts +4 -6
- package/full-dts/taon-cms-backoffice/i18n/taon-cms-backoffice.routes.ts.en-US.i18n.data.d.ts +4 -2
- package/full-dts/taon-cms-backoffice/i18n/taon-cms-backoffice.routes.ts.pl-PL.i18n.data.d.ts +2 -0
- 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
- 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
- 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
- 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
- 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
- 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
- package/full-dts/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.translation.d.ts +9 -0
- package/full-dts/taon-cms-backoffice/taon-cms-website-features/index.d.ts +2 -0
- 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
- 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
- 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
- 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
- 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
- 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
- package/full-dts/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.translation.d.ts +9 -0
- package/full-dts/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.abstract.context.d.ts +17 -0
- package/full-dts/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.api.service.d.ts +19 -0
- package/full-dts/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.config.service.d.ts +8 -0
- package/full-dts/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.constants.d.ts +8 -0
- package/full-dts/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.controller.d.ts +14 -0
- package/full-dts/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.kv.repository.d.ts +15 -0
- package/full-dts/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.models.d.ts +12 -0
- package/full-dts/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.provider.d.ts +13 -0
- package/full-dts/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.utils.d.ts +6 -0
- package/full-dts/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.validators.d.ts +8 -0
- package/full-dts/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-features.component.d.ts +21 -0
- package/full-dts/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-features.models.d.ts +2 -0
- package/full-dts/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-features.routes.d.ts +8 -0
- package/full-dts/taon-cms-comment/i18n/taon-cms-comment.controller.ts.de-DE.i18n.data.d.ts +33 -0
- package/full-dts/taon-cms-comment/i18n/taon-cms-comment.controller.ts.en-US.i18n.data.d.ts +32 -0
- package/full-dts/taon-cms-comment/i18n/taon-cms-comment.controller.ts.pl-PL.i18n.data.d.ts +33 -0
- package/full-dts/taon-cms-comment/i18n/taon-cms-comment.translation.d.ts +12 -0
- package/full-dts/taon-cms-comment/i18n/taon-cms-comments.component.html.de-DE.i18n.data.d.ts +30 -0
- package/full-dts/taon-cms-comment/i18n/taon-cms-comments.component.html.en-US.i18n.data.d.ts +29 -0
- package/full-dts/taon-cms-comment/i18n/taon-cms-comments.component.html.pl-PL.i18n.data.d.ts +30 -0
- package/full-dts/taon-cms-comment/i18n/taon-cms-comments.component.ts.de-DE.i18n.data.d.ts +21 -0
- package/full-dts/taon-cms-comment/i18n/taon-cms-comments.component.ts.en-US.i18n.data.d.ts +20 -0
- package/full-dts/taon-cms-comment/i18n/taon-cms-comments.component.ts.pl-PL.i18n.data.d.ts +21 -0
- package/full-dts/taon-cms-comment/index.d.ts +6 -1
- package/full-dts/taon-cms-comment/taon-cms-comment-api.service.d.ts +27 -2
- package/full-dts/taon-cms-comment/taon-cms-comment-blocked-phrase.entity.d.ts +8 -0
- package/full-dts/taon-cms-comment/taon-cms-comment-blocked-user.entity.d.ts +7 -0
- package/full-dts/taon-cms-comment/taon-cms-comment-spam-report.entity.d.ts +8 -0
- package/full-dts/taon-cms-comment/taon-cms-comment-vote.entity.d.ts +9 -0
- package/full-dts/taon-cms-comment/taon-cms-comment.controller.d.ts +49 -7
- 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
- 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
- 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
- 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
- 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
- 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
- package/full-dts/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.translation.d.ts +9 -0
- package/full-dts/taon-cms-comment/taon-cms-comments-backoffice/index.d.ts +2 -0
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- package/full-dts/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/index.d.ts +2 -0
- 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
- 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
- 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
- package/full-dts/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-backoffice.component.d.ts +5 -0
- package/full-dts/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-backoffice.models.d.ts +2 -0
- package/full-dts/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-backoffice.routes.d.ts +8 -0
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- package/full-dts/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/index.d.ts +2 -0
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- package/full-dts/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/index.d.ts +2 -0
- 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
- 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
- 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
- package/full-dts/taon-cms-comment/taon-cms-comments.component.d.ts +25 -0
- package/full-dts/taon-cms-content/i18n/taon-cms-content.controller.ts.de-DE.i18n.data.d.ts +2 -0
- package/full-dts/taon-cms-content/i18n/taon-cms-content.controller.ts.en-US.i18n.data.d.ts +8 -2
- package/full-dts/taon-cms-content/i18n/taon-cms-content.controller.ts.pl-PL.i18n.data.d.ts +2 -0
- package/full-dts/taon-cms-content/taon-cms-content-api.service.d.ts +12 -2
- package/full-dts/taon-cms-content/taon-cms-content-storage.controller.d.ts +5 -1
- package/full-dts/taon-cms-content/taon-cms-content.controller.d.ts +12 -2
- package/full-dts/taon-cms-content/taon-cms-content.entity.d.ts +3 -0
- package/full-dts/taon-cms-content/taon-cms-content.models.d.ts +39 -0
- package/full-dts/taon-cms-content/taon-cms-content.repository.d.ts +21 -3
- package/full-dts/taon-cms-content/taon-cms-content.utils.d.ts +2 -0
- package/full-dts/taon-cms-content-revision/taon-cms-content-revision.repository.d.ts +1 -0
- package/full-dts/taon-cms-taxonomy-backoffice/i18n/taon-cms-taxonomy-quick-create-dialog.component.ts.de-DE.i18n.data.d.ts +1 -0
- package/full-dts/taon-cms-taxonomy-backoffice/i18n/taon-cms-taxonomy-quick-create-dialog.component.ts.pl-PL.i18n.data.d.ts +1 -0
- package/full-dts/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.html.de-DE.i18n.data.d.ts +2 -1
- package/full-dts/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.html.en-US.i18n.data.d.ts +1 -1
- package/full-dts/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.html.pl-PL.i18n.data.d.ts +2 -1
- package/full-dts/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.ts.de-DE.i18n.data.d.ts +1 -0
- package/full-dts/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.ts.pl-PL.i18n.data.d.ts +1 -0
- package/full-dts/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.html.de-DE.i18n.data.d.ts +3 -0
- package/full-dts/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.html.en-US.i18n.data.d.ts +2 -0
- package/full-dts/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.html.pl-PL.i18n.data.d.ts +3 -0
- package/full-dts/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.ts.de-DE.i18n.data.d.ts +2 -0
- package/full-dts/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.ts.en-US.i18n.data.d.ts +1 -0
- package/full-dts/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.ts.pl-PL.i18n.data.d.ts +2 -0
- package/full-dts/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-cover.component.ts.de-DE.i18n.data.d.ts +1 -0
- package/full-dts/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-cover.component.ts.pl-PL.i18n.data.d.ts +1 -0
- package/full-dts/taon-posts/taon-cms-course-backoffice/taon-cms-course-contents.component.d.ts +8 -0
- package/full-dts/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.html.de-DE.i18n.data.d.ts +18 -0
- package/full-dts/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.html.en-US.i18n.data.d.ts +17 -0
- package/full-dts/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.html.pl-PL.i18n.data.d.ts +18 -0
- package/full-dts/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.ts.de-DE.i18n.data.d.ts +9 -0
- package/full-dts/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.ts.en-US.i18n.data.d.ts +9 -0
- package/full-dts/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.ts.pl-PL.i18n.data.d.ts +9 -0
- package/full-dts/taon-posts/taon-cms-post/i18n/taon-cms-post-thumbnail.component.ts.de-DE.i18n.data.d.ts +17 -0
- package/full-dts/taon-posts/taon-cms-post/i18n/taon-cms-post-thumbnail.component.ts.en-US.i18n.data.d.ts +16 -0
- package/full-dts/taon-posts/taon-cms-post/i18n/taon-cms-post-thumbnail.component.ts.pl-PL.i18n.data.d.ts +17 -0
- package/full-dts/taon-posts/taon-cms-post/i18n/taon-cms-post.component.html.de-DE.i18n.data.d.ts +49 -4
- package/full-dts/taon-posts/taon-cms-post/i18n/taon-cms-post.component.html.en-US.i18n.data.d.ts +49 -4
- package/full-dts/taon-posts/taon-cms-post/i18n/taon-cms-post.component.html.pl-PL.i18n.data.d.ts +49 -4
- package/full-dts/taon-posts/taon-cms-post/i18n/taon-cms-post.component.ts.de-DE.i18n.data.d.ts +34 -7
- package/full-dts/taon-posts/taon-cms-post/i18n/taon-cms-post.component.ts.en-US.i18n.data.d.ts +32 -1
- package/full-dts/taon-posts/taon-cms-post/i18n/taon-cms-post.component.ts.pl-PL.i18n.data.d.ts +34 -7
- package/full-dts/taon-posts/taon-cms-post/i18n/taon-cms-post.translation.d.ts +10 -1
- package/full-dts/taon-posts/taon-cms-post/taon-cms-document-extractor.d.ts +2 -0
- package/full-dts/taon-posts/taon-cms-post/taon-cms-post-choice-dialog.component.d.ts +18 -0
- package/full-dts/taon-posts/taon-cms-post/taon-cms-post-thumbnail.component.d.ts +11 -0
- package/full-dts/taon-posts/taon-cms-post/taon-cms-post.component.d.ts +90 -7
- 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
- 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
- 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
- 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
- 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
- package/full-dts/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.html.de-DE.i18n.data.d.ts +2 -6
- package/full-dts/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.html.pl-PL.i18n.data.d.ts +2 -6
- package/full-dts/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.ts.de-DE.i18n.data.d.ts +2 -6
- package/full-dts/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.ts.pl-PL.i18n.data.d.ts +2 -6
- package/full-dts/taon-posts/taon-cms-posts-backoffice/taon-cms-post-table-actions.directive.d.ts +1 -0
- package/full-dts/taon-posts/taon-cms-revision-chooser/i18n/taon-cms-revision-chooser.component.html.de-DE.i18n.data.d.ts +7 -2
- package/full-dts/taon-posts/taon-cms-revision-chooser/i18n/taon-cms-revision-chooser.component.html.en-US.i18n.data.d.ts +7 -2
- package/full-dts/taon-posts/taon-cms-revision-chooser/i18n/taon-cms-revision-chooser.component.html.pl-PL.i18n.data.d.ts +7 -2
- package/full-dts/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.html.de-DE.i18n.data.d.ts +1 -0
- package/full-dts/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.html.en-US.i18n.data.d.ts +1 -0
- package/full-dts/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.html.pl-PL.i18n.data.d.ts +1 -0
- package/full-dts/taon-posts/taon-related-post-chooser/taon-related-post-chooser.component.d.ts +5 -0
- package/html/assets/generated/pwa/html-pwa.html +53 -53
- package/html/lib/taon-cms-assets-backoffice/taon-cms-asset-preview.component.html +1 -1
- package/html/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-features.component.html +45 -0
- 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
- package/html/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-backoffice.component.html +1 -0
- package/html/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/taon-cms-comments-blocked-users.component.html +35 -0
- package/html/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/taon-cms-comments-filters-settings.component.html +25 -0
- package/html/lib/taon-cms-comment/taon-cms-comments.component.html +95 -0
- package/html/lib/taon-posts/taon-cms-course-backoffice/taon-cms-course-backoffice.component.html +3 -2
- package/html/lib/taon-posts/taon-cms-course-backoffice/taon-cms-course-contents.component.html +23 -0
- package/html/lib/taon-posts/taon-cms-post/taon-cms-post-choice-dialog.component.html +18 -0
- package/html/lib/taon-posts/taon-cms-post/taon-cms-post.component.html +1115 -603
- package/html/lib/taon-posts/taon-related-post-chooser/taon-related-post-chooser.component.html +3 -3
- package/lib/build-info._auto-generated_.d.ts +1 -1
- package/lib/build-info._auto-generated_.js +1 -1
- package/lib/index._auto-generated_.d.ts +18 -0
- package/lib/index._auto-generated_.js +33 -0
- package/lib/index._auto-generated_.js.map +1 -1
- package/lib/migrations/1793664000000_postVersionLinks.d.ts +6 -0
- package/lib/migrations/1793664000000_postVersionLinks.js +41 -0
- package/lib/migrations/1793664000000_postVersionLinks.js.map +1 -0
- package/lib/migrations/migrations_index._auto-generated_.d.ts +3 -0
- package/lib/migrations/migrations_index._auto-generated_.js +5 -1
- package/lib/migrations/migrations_index._auto-generated_.js.map +1 -1
- package/lib/package.json +1 -1
- package/lib/taon-cms-backoffice/i18n/taon-cms-backoffice.component.html.de-DE.i18n.data.js +5 -0
- package/lib/taon-cms-backoffice/i18n/taon-cms-backoffice.component.html.de-DE.i18n.data.js.map +1 -1
- package/lib/taon-cms-backoffice/i18n/taon-cms-backoffice.component.html.en-US.i18n.data.js +5 -0
- package/lib/taon-cms-backoffice/i18n/taon-cms-backoffice.component.html.en-US.i18n.data.js.map +1 -1
- package/lib/taon-cms-backoffice/i18n/taon-cms-backoffice.component.html.pl-PL.i18n.data.js +5 -0
- package/lib/taon-cms-backoffice/i18n/taon-cms-backoffice.component.html.pl-PL.i18n.data.js.map +1 -1
- package/lib/taon-cms-backoffice/i18n/taon-cms-backoffice.routes.ts.de-DE.i18n.data.d.ts +4 -6
- package/lib/taon-cms-backoffice/i18n/taon-cms-backoffice.routes.ts.de-DE.i18n.data.js +16 -5
- package/lib/taon-cms-backoffice/i18n/taon-cms-backoffice.routes.ts.de-DE.i18n.data.js.map +1 -1
- package/lib/taon-cms-backoffice/i18n/taon-cms-backoffice.routes.ts.en-US.i18n.data.d.ts +4 -2
- package/lib/taon-cms-backoffice/i18n/taon-cms-backoffice.routes.ts.en-US.i18n.data.js +13 -5
- package/lib/taon-cms-backoffice/i18n/taon-cms-backoffice.routes.ts.en-US.i18n.data.js.map +1 -1
- package/lib/taon-cms-backoffice/i18n/taon-cms-backoffice.routes.ts.pl-PL.i18n.data.d.ts +2 -0
- package/lib/taon-cms-backoffice/i18n/taon-cms-backoffice.routes.ts.pl-PL.i18n.data.js +15 -5
- package/lib/taon-cms-backoffice/i18n/taon-cms-backoffice.routes.ts.pl-PL.i18n.data.js.map +1 -1
- package/lib/taon-cms-backoffice/index.d.ts +1 -1
- package/lib/taon-cms-backoffice/index.js +2 -2
- package/lib/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.html.de-DE.i18n.data.d.ts +21 -0
- package/lib/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.html.de-DE.i18n.data.js +46 -0
- package/lib/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.html.de-DE.i18n.data.js.map +1 -0
- package/lib/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.html.en-US.i18n.data.d.ts +20 -0
- package/lib/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.html.en-US.i18n.data.js +39 -0
- package/lib/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.html.en-US.i18n.data.js.map +1 -0
- package/lib/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.html.pl-PL.i18n.data.d.ts +21 -0
- package/lib/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.html.pl-PL.i18n.data.js +46 -0
- package/lib/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.html.pl-PL.i18n.data.js.map +1 -0
- package/lib/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.ts.de-DE.i18n.data.d.ts +24 -0
- package/lib/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.ts.de-DE.i18n.data.js +56 -0
- package/lib/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.ts.de-DE.i18n.data.js.map +1 -0
- package/lib/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.ts.en-US.i18n.data.d.ts +23 -0
- package/lib/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.ts.en-US.i18n.data.js +47 -0
- package/lib/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.ts.en-US.i18n.data.js.map +1 -0
- package/lib/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.ts.pl-PL.i18n.data.d.ts +24 -0
- package/lib/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.ts.pl-PL.i18n.data.js +56 -0
- package/lib/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.ts.pl-PL.i18n.data.js.map +1 -0
- package/lib/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.translation.d.ts +8 -0
- package/lib/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.translation.js +5 -0
- package/lib/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.translation.js.map +1 -0
- package/lib/taon-cms-backoffice/taon-cms-website-features/index.d.ts +1 -0
- package/lib/taon-cms-backoffice/taon-cms-website-features/index.js +5 -0
- package/lib/taon-cms-backoffice/taon-cms-website-features/index.js.map +1 -0
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- package/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.translation.d.ts +8 -0
- package/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.translation.js +5 -0
- package/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.translation.js.map +1 -0
- package/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.abstract.context.d.ts +16 -0
- package/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.abstract.context.js +21 -0
- package/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.abstract.context.js.map +1 -0
- package/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.constants.d.ts +7 -0
- package/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.constants.js +16 -0
- package/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.constants.js.map +1 -0
- package/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.controller.d.ts +13 -0
- package/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.controller.js +106 -0
- package/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.controller.js.map +1 -0
- package/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.kv.repository.d.ts +14 -0
- package/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.kv.repository.js +100 -0
- package/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.kv.repository.js.map +1 -0
- package/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.models.d.ts +11 -0
- package/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.models.js +12 -0
- package/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.models.js.map +1 -0
- package/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.provider.d.ts +12 -0
- package/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.provider.js +32 -0
- package/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.provider.js.map +1 -0
- package/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.utils.d.ts +5 -0
- package/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.utils.js +21 -0
- package/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.utils.js.map +1 -0
- package/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.validators.d.ts +2 -0
- package/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.validators.js +3 -0
- package/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.validators.js.map +1 -0
- package/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-features.models.d.ts +1 -0
- package/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-features.models.js +3 -0
- package/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-features.models.js.map +1 -0
- package/lib/taon-cms-comment/i18n/taon-cms-comment.controller.ts.de-DE.i18n.data.d.ts +32 -0
- package/lib/taon-cms-comment/i18n/taon-cms-comment.controller.ts.de-DE.i18n.data.js +116 -0
- package/lib/taon-cms-comment/i18n/taon-cms-comment.controller.ts.de-DE.i18n.data.js.map +1 -0
- package/lib/taon-cms-comment/i18n/taon-cms-comment.controller.ts.en-US.i18n.data.d.ts +31 -0
- package/lib/taon-cms-comment/i18n/taon-cms-comment.controller.ts.en-US.i18n.data.js +95 -0
- package/lib/taon-cms-comment/i18n/taon-cms-comment.controller.ts.en-US.i18n.data.js.map +1 -0
- package/lib/taon-cms-comment/i18n/taon-cms-comment.controller.ts.pl-PL.i18n.data.d.ts +32 -0
- package/lib/taon-cms-comment/i18n/taon-cms-comment.controller.ts.pl-PL.i18n.data.js +116 -0
- package/lib/taon-cms-comment/i18n/taon-cms-comment.controller.ts.pl-PL.i18n.data.js.map +1 -0
- package/lib/taon-cms-comment/i18n/taon-cms-comment.translation.d.ts +11 -0
- package/lib/taon-cms-comment/i18n/taon-cms-comment.translation.js +5 -0
- package/lib/taon-cms-comment/i18n/taon-cms-comment.translation.js.map +1 -0
- package/lib/taon-cms-comment/i18n/taon-cms-comments.component.html.de-DE.i18n.data.d.ts +29 -0
- package/lib/taon-cms-comment/i18n/taon-cms-comments.component.html.de-DE.i18n.data.js +96 -0
- package/lib/taon-cms-comment/i18n/taon-cms-comments.component.html.de-DE.i18n.data.js.map +1 -0
- package/lib/taon-cms-comment/i18n/taon-cms-comments.component.html.en-US.i18n.data.d.ts +28 -0
- package/lib/taon-cms-comment/i18n/taon-cms-comments.component.html.en-US.i18n.data.js +79 -0
- package/lib/taon-cms-comment/i18n/taon-cms-comments.component.html.en-US.i18n.data.js.map +1 -0
- package/lib/taon-cms-comment/i18n/taon-cms-comments.component.html.pl-PL.i18n.data.d.ts +29 -0
- package/lib/taon-cms-comment/i18n/taon-cms-comments.component.html.pl-PL.i18n.data.js +96 -0
- package/lib/taon-cms-comment/i18n/taon-cms-comments.component.html.pl-PL.i18n.data.js.map +1 -0
- package/lib/taon-cms-comment/i18n/taon-cms-comments.component.ts.de-DE.i18n.data.d.ts +20 -0
- package/lib/taon-cms-comment/i18n/taon-cms-comments.component.ts.de-DE.i18n.data.js +36 -0
- package/lib/taon-cms-comment/i18n/taon-cms-comments.component.ts.de-DE.i18n.data.js.map +1 -0
- package/lib/taon-cms-comment/i18n/taon-cms-comments.component.ts.en-US.i18n.data.d.ts +19 -0
- package/lib/taon-cms-comment/i18n/taon-cms-comments.component.ts.en-US.i18n.data.js +31 -0
- package/lib/taon-cms-comment/i18n/taon-cms-comments.component.ts.en-US.i18n.data.js.map +1 -0
- package/lib/taon-cms-comment/i18n/taon-cms-comments.component.ts.pl-PL.i18n.data.d.ts +20 -0
- package/lib/taon-cms-comment/i18n/taon-cms-comments.component.ts.pl-PL.i18n.data.js +36 -0
- package/lib/taon-cms-comment/i18n/taon-cms-comments.component.ts.pl-PL.i18n.data.js.map +1 -0
- package/lib/taon-cms-comment/index.d.ts +4 -0
- package/lib/taon-cms-comment/index.js +5 -0
- package/lib/taon-cms-comment/index.js.map +1 -1
- package/lib/taon-cms-comment/taon-cms-comment-blocked-phrase.entity.d.ts +7 -0
- package/lib/taon-cms-comment/taon-cms-comment-blocked-phrase.entity.js +63 -0
- package/lib/taon-cms-comment/taon-cms-comment-blocked-phrase.entity.js.map +1 -0
- package/lib/taon-cms-comment/taon-cms-comment-blocked-user.entity.d.ts +6 -0
- package/lib/taon-cms-comment/taon-cms-comment-blocked-user.entity.js +54 -0
- package/lib/taon-cms-comment/taon-cms-comment-blocked-user.entity.js.map +1 -0
- package/lib/taon-cms-comment/taon-cms-comment-spam-report.entity.d.ts +7 -0
- package/lib/taon-cms-comment/taon-cms-comment-spam-report.entity.js +63 -0
- package/lib/taon-cms-comment/taon-cms-comment-spam-report.entity.js.map +1 -0
- package/lib/taon-cms-comment/taon-cms-comment-vote.entity.d.ts +8 -0
- package/lib/taon-cms-comment/taon-cms-comment-vote.entity.js +72 -0
- package/lib/taon-cms-comment/taon-cms-comment-vote.entity.js.map +1 -0
- package/lib/taon-cms-comment/taon-cms-comment.abstract.context.js +11 -1
- package/lib/taon-cms-comment/taon-cms-comment.abstract.context.js.map +1 -1
- package/lib/taon-cms-comment/taon-cms-comment.controller.d.ts +49 -7
- package/lib/taon-cms-comment/taon-cms-comment.controller.js +503 -21
- package/lib/taon-cms-comment/taon-cms-comment.controller.js.map +1 -1
- package/lib/taon-cms-comment/taon-cms-comment.entity.js +2 -2
- package/lib/taon-cms-comment/taon-cms-comment.entity.js.map +1 -1
- package/lib/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.component.ts.de-DE.i18n.data.d.ts +8 -0
- package/lib/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.component.ts.de-DE.i18n.data.js +10 -0
- package/lib/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.component.ts.de-DE.i18n.data.js.map +1 -0
- package/lib/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.component.ts.en-US.i18n.data.d.ts +8 -0
- package/lib/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.component.ts.en-US.i18n.data.js +10 -0
- package/lib/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.component.ts.en-US.i18n.data.js.map +1 -0
- package/lib/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.component.ts.pl-PL.i18n.data.d.ts +8 -0
- package/lib/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.component.ts.pl-PL.i18n.data.js +10 -0
- package/lib/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.component.ts.pl-PL.i18n.data.js.map +1 -0
- package/lib/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.routes.ts.de-DE.i18n.data.d.ts +18 -0
- package/lib/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.routes.ts.de-DE.i18n.data.js +26 -0
- package/lib/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.routes.ts.de-DE.i18n.data.js.map +1 -0
- package/lib/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.routes.ts.en-US.i18n.data.d.ts +17 -0
- package/lib/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.routes.ts.en-US.i18n.data.js +23 -0
- package/lib/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.routes.ts.en-US.i18n.data.js.map +1 -0
- package/lib/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.routes.ts.pl-PL.i18n.data.d.ts +18 -0
- package/lib/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.routes.ts.pl-PL.i18n.data.js +26 -0
- package/lib/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.routes.ts.pl-PL.i18n.data.js.map +1 -0
- package/lib/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.translation.d.ts +8 -0
- package/lib/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.translation.js +5 -0
- package/lib/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.translation.js.map +1 -0
- package/lib/taon-cms-comment/taon-cms-comments-backoffice/index.d.ts +1 -0
- package/lib/taon-cms-comment/taon-cms-comments-backoffice/index.js +5 -0
- package/lib/taon-cms-comment/taon-cms-comments-backoffice/index.js.map +1 -0
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- package/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/index.d.ts +1 -0
- package/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/index.js +5 -0
- package/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/index.js.map +1 -0
- 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
- 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
- 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
- package/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-backoffice.models.d.ts +1 -0
- package/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-backoffice.models.js +3 -0
- package/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-backoffice.models.js.map +1 -0
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- package/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/i18n/taon-cms-comments-blocked-users.translation.js +5 -0
- 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
- package/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/index.d.ts +1 -0
- package/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/index.js +5 -0
- package/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/index.js.map +1 -0
- package/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/taon-cms-comments-blocked-users.models.d.ts +1 -0
- package/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/taon-cms-comments-blocked-users.models.js +3 -0
- package/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/taon-cms-comments-blocked-users.models.js.map +1 -0
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- package/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/i18n/taon-cms-comments-filters-settings.translation.js +5 -0
- 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
- package/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/index.d.ts +1 -0
- package/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/index.js +5 -0
- package/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/index.js.map +1 -0
- package/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/taon-cms-comments-filters-settings.models.d.ts +1 -0
- package/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/taon-cms-comments-filters-settings.models.js +3 -0
- package/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/taon-cms-comments-filters-settings.models.js.map +1 -0
- package/lib/taon-cms-content/i18n/taon-cms-content-storage.controller.ts.de-DE.i18n.data.js +1 -1
- package/lib/taon-cms-content/i18n/taon-cms-content-storage.controller.ts.en-US.i18n.data.js +1 -1
- package/lib/taon-cms-content/i18n/taon-cms-content-storage.controller.ts.pl-PL.i18n.data.js +1 -1
- package/lib/taon-cms-content/i18n/taon-cms-content.controller.ts.de-DE.i18n.data.d.ts +2 -0
- package/lib/taon-cms-content/i18n/taon-cms-content.controller.ts.de-DE.i18n.data.js +26 -6
- package/lib/taon-cms-content/i18n/taon-cms-content.controller.ts.de-DE.i18n.data.js.map +1 -1
- package/lib/taon-cms-content/i18n/taon-cms-content.controller.ts.en-US.i18n.data.d.ts +8 -2
- package/lib/taon-cms-content/i18n/taon-cms-content.controller.ts.en-US.i18n.data.js +22 -6
- package/lib/taon-cms-content/i18n/taon-cms-content.controller.ts.en-US.i18n.data.js.map +1 -1
- package/lib/taon-cms-content/i18n/taon-cms-content.controller.ts.pl-PL.i18n.data.d.ts +2 -0
- package/lib/taon-cms-content/i18n/taon-cms-content.controller.ts.pl-PL.i18n.data.js +26 -6
- package/lib/taon-cms-content/i18n/taon-cms-content.controller.ts.pl-PL.i18n.data.js.map +1 -1
- package/lib/taon-cms-content/taon-cms-content-storage.controller.d.ts +5 -1
- package/lib/taon-cms-content/taon-cms-content-storage.controller.js +72 -1
- package/lib/taon-cms-content/taon-cms-content-storage.controller.js.map +1 -1
- package/lib/taon-cms-content/taon-cms-content.controller.d.ts +12 -2
- package/lib/taon-cms-content/taon-cms-content.controller.js +246 -3
- package/lib/taon-cms-content/taon-cms-content.controller.js.map +1 -1
- package/lib/taon-cms-content/taon-cms-content.entity.d.ts +3 -0
- package/lib/taon-cms-content/taon-cms-content.entity.js +27 -0
- package/lib/taon-cms-content/taon-cms-content.entity.js.map +1 -1
- package/lib/taon-cms-content/taon-cms-content.models.d.ts +39 -0
- package/lib/taon-cms-content/taon-cms-content.models.js.map +1 -1
- package/lib/taon-cms-content/taon-cms-content.repository.d.ts +21 -3
- package/lib/taon-cms-content/taon-cms-content.repository.js +830 -30
- package/lib/taon-cms-content/taon-cms-content.repository.js.map +1 -1
- package/lib/taon-cms-content/taon-cms-content.utils.d.ts +2 -0
- package/lib/taon-cms-content/taon-cms-content.utils.js +6 -0
- package/lib/taon-cms-content/taon-cms-content.utils.js.map +1 -1
- package/lib/taon-cms-content/taon-cms-content.validation.js +4 -0
- package/lib/taon-cms-content/taon-cms-content.validation.js.map +1 -1
- package/lib/taon-cms-content-revision/taon-cms-content-revision.repository.d.ts +1 -0
- package/lib/taon-cms-content-revision/taon-cms-content-revision.repository.js +21 -0
- package/lib/taon-cms-content-revision/taon-cms-content-revision.repository.js.map +1 -1
- package/lib/taon-cms-taxonomy-backoffice/i18n/taon-cms-taxonomy-quick-create-dialog.component.ts.de-DE.i18n.data.d.ts +1 -0
- package/lib/taon-cms-taxonomy-backoffice/i18n/taon-cms-taxonomy-quick-create-dialog.component.ts.de-DE.i18n.data.js +14 -7
- package/lib/taon-cms-taxonomy-backoffice/i18n/taon-cms-taxonomy-quick-create-dialog.component.ts.de-DE.i18n.data.js.map +1 -1
- package/lib/taon-cms-taxonomy-backoffice/i18n/taon-cms-taxonomy-quick-create-dialog.component.ts.pl-PL.i18n.data.d.ts +1 -0
- package/lib/taon-cms-taxonomy-backoffice/i18n/taon-cms-taxonomy-quick-create-dialog.component.ts.pl-PL.i18n.data.js +14 -7
- package/lib/taon-cms-taxonomy-backoffice/i18n/taon-cms-taxonomy-quick-create-dialog.component.ts.pl-PL.i18n.data.js.map +1 -1
- package/lib/taon-cms.abstract.context.js +2 -0
- package/lib/taon-cms.abstract.context.js.map +1 -1
- package/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.html.de-DE.i18n.data.d.ts +2 -1
- package/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.html.de-DE.i18n.data.js +26 -15
- package/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.html.de-DE.i18n.data.js.map +1 -1
- package/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.html.en-US.i18n.data.d.ts +1 -1
- package/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.html.en-US.i18n.data.js +10 -10
- package/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.html.en-US.i18n.data.js.map +1 -1
- package/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.html.pl-PL.i18n.data.d.ts +2 -1
- package/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.html.pl-PL.i18n.data.js +26 -15
- package/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.html.pl-PL.i18n.data.js.map +1 -1
- package/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.ts.de-DE.i18n.data.d.ts +1 -0
- package/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.ts.de-DE.i18n.data.js +8 -4
- package/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.ts.de-DE.i18n.data.js.map +1 -1
- package/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.ts.pl-PL.i18n.data.d.ts +1 -0
- package/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.ts.pl-PL.i18n.data.js +8 -4
- package/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.ts.pl-PL.i18n.data.js.map +1 -1
- package/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.html.de-DE.i18n.data.d.ts +3 -0
- package/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.html.de-DE.i18n.data.js +20 -5
- package/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.html.de-DE.i18n.data.js.map +1 -1
- package/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.html.en-US.i18n.data.d.ts +2 -0
- package/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.html.en-US.i18n.data.js +8 -0
- package/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.html.en-US.i18n.data.js.map +1 -1
- package/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.html.pl-PL.i18n.data.d.ts +3 -0
- package/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.html.pl-PL.i18n.data.js +20 -5
- package/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.html.pl-PL.i18n.data.js.map +1 -1
- package/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.ts.de-DE.i18n.data.d.ts +2 -0
- package/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.ts.de-DE.i18n.data.js +15 -5
- package/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.ts.de-DE.i18n.data.js.map +1 -1
- package/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.ts.en-US.i18n.data.d.ts +1 -0
- package/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.ts.en-US.i18n.data.js +9 -5
- package/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.ts.en-US.i18n.data.js.map +1 -1
- package/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.ts.pl-PL.i18n.data.d.ts +2 -0
- package/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.ts.pl-PL.i18n.data.js +15 -5
- package/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.ts.pl-PL.i18n.data.js.map +1 -1
- package/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-cover.component.ts.de-DE.i18n.data.d.ts +1 -0
- package/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-cover.component.ts.de-DE.i18n.data.js +2 -1
- package/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-cover.component.ts.de-DE.i18n.data.js.map +1 -1
- package/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-cover.component.ts.pl-PL.i18n.data.d.ts +1 -0
- package/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-cover.component.ts.pl-PL.i18n.data.js +2 -1
- package/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-cover.component.ts.pl-PL.i18n.data.js.map +1 -1
- package/lib/taon-posts/taon-cms-course-backoffice/index.d.ts +1 -1
- package/lib/taon-posts/taon-cms-course-backoffice/index.js +2 -2
- package/lib/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.html.de-DE.i18n.data.d.ts +17 -0
- package/lib/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.html.de-DE.i18n.data.js +21 -0
- package/lib/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.html.de-DE.i18n.data.js.map +1 -0
- package/lib/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.html.en-US.i18n.data.d.ts +16 -0
- package/lib/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.html.en-US.i18n.data.js +19 -0
- package/lib/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.html.en-US.i18n.data.js.map +1 -0
- package/lib/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.html.pl-PL.i18n.data.d.ts +17 -0
- package/lib/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.html.pl-PL.i18n.data.js +21 -0
- package/lib/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.html.pl-PL.i18n.data.js.map +1 -0
- package/lib/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.ts.de-DE.i18n.data.d.ts +8 -0
- package/lib/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.ts.de-DE.i18n.data.js +10 -0
- package/lib/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.ts.de-DE.i18n.data.js.map +1 -0
- package/lib/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.ts.en-US.i18n.data.d.ts +8 -0
- package/lib/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.ts.en-US.i18n.data.js +10 -0
- package/lib/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.ts.en-US.i18n.data.js.map +1 -0
- package/lib/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.ts.pl-PL.i18n.data.d.ts +8 -0
- package/lib/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.ts.pl-PL.i18n.data.js +10 -0
- package/lib/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.ts.pl-PL.i18n.data.js.map +1 -0
- package/lib/taon-posts/taon-cms-post/i18n/taon-cms-post-thumbnail.component.ts.de-DE.i18n.data.d.ts +16 -0
- package/lib/taon-posts/taon-cms-post/i18n/taon-cms-post-thumbnail.component.ts.de-DE.i18n.data.js +16 -0
- package/lib/taon-posts/taon-cms-post/i18n/taon-cms-post-thumbnail.component.ts.de-DE.i18n.data.js.map +1 -0
- package/lib/taon-posts/taon-cms-post/i18n/taon-cms-post-thumbnail.component.ts.en-US.i18n.data.d.ts +15 -0
- package/lib/taon-posts/taon-cms-post/i18n/taon-cms-post-thumbnail.component.ts.en-US.i18n.data.js +15 -0
- package/lib/taon-posts/taon-cms-post/i18n/taon-cms-post-thumbnail.component.ts.en-US.i18n.data.js.map +1 -0
- package/lib/taon-posts/taon-cms-post/i18n/taon-cms-post-thumbnail.component.ts.pl-PL.i18n.data.d.ts +16 -0
- package/lib/taon-posts/taon-cms-post/i18n/taon-cms-post-thumbnail.component.ts.pl-PL.i18n.data.js +16 -0
- package/lib/taon-posts/taon-cms-post/i18n/taon-cms-post-thumbnail.component.ts.pl-PL.i18n.data.js.map +1 -0
- package/lib/taon-posts/taon-cms-post/i18n/taon-cms-post.component.html.de-DE.i18n.data.d.ts +49 -4
- package/lib/taon-posts/taon-cms-post/i18n/taon-cms-post.component.html.de-DE.i18n.data.js +496 -90
- package/lib/taon-posts/taon-cms-post/i18n/taon-cms-post.component.html.de-DE.i18n.data.js.map +1 -1
- package/lib/taon-posts/taon-cms-post/i18n/taon-cms-post.component.html.en-US.i18n.data.d.ts +49 -4
- package/lib/taon-posts/taon-cms-post/i18n/taon-cms-post.component.html.en-US.i18n.data.js +416 -88
- package/lib/taon-posts/taon-cms-post/i18n/taon-cms-post.component.html.en-US.i18n.data.js.map +1 -1
- package/lib/taon-posts/taon-cms-post/i18n/taon-cms-post.component.html.pl-PL.i18n.data.d.ts +49 -4
- package/lib/taon-posts/taon-cms-post/i18n/taon-cms-post.component.html.pl-PL.i18n.data.js +497 -89
- package/lib/taon-posts/taon-cms-post/i18n/taon-cms-post.component.html.pl-PL.i18n.data.js.map +1 -1
- package/lib/taon-posts/taon-cms-post/i18n/taon-cms-post.component.ts.de-DE.i18n.data.d.ts +34 -7
- package/lib/taon-posts/taon-cms-post/i18n/taon-cms-post.component.ts.de-DE.i18n.data.js +203 -39
- package/lib/taon-posts/taon-cms-post/i18n/taon-cms-post.component.ts.de-DE.i18n.data.js.map +1 -1
- package/lib/taon-posts/taon-cms-post/i18n/taon-cms-post.component.ts.en-US.i18n.data.d.ts +32 -1
- package/lib/taon-posts/taon-cms-post/i18n/taon-cms-post.component.ts.en-US.i18n.data.js +166 -39
- package/lib/taon-posts/taon-cms-post/i18n/taon-cms-post.component.ts.en-US.i18n.data.js.map +1 -1
- package/lib/taon-posts/taon-cms-post/i18n/taon-cms-post.component.ts.pl-PL.i18n.data.d.ts +34 -7
- package/lib/taon-posts/taon-cms-post/i18n/taon-cms-post.component.ts.pl-PL.i18n.data.js +206 -42
- package/lib/taon-posts/taon-cms-post/i18n/taon-cms-post.component.ts.pl-PL.i18n.data.js.map +1 -1
- package/lib/taon-posts/taon-cms-post/i18n/taon-cms-post.translation.d.ts +10 -1
- package/lib/taon-posts/taon-cms-post/i18n/taon-cms-post.translation.js.map +1 -1
- package/lib/taon-posts/taon-cms-post/index.d.ts +1 -1
- package/lib/taon-posts/taon-cms-post/index.js +2 -2
- package/lib/taon-posts/taon-cms-post/taon-cms-document-extractor.d.ts +1 -0
- package/lib/taon-posts/taon-cms-post/taon-cms-document-extractor.js +501 -0
- package/lib/taon-posts/taon-cms-post/taon-cms-document-extractor.js.map +1 -0
- 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
- package/lib/taon-posts/taon-cms-post-details-page/i18n/taon-cms-post-details-page.component.ts.de-DE.i18n.data.js +2 -1
- 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
- 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
- package/lib/taon-posts/taon-cms-post-details-page/i18n/taon-cms-post-details-page.component.ts.pl-PL.i18n.data.js +2 -1
- 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
- package/lib/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-post-table-actions.directive.ts.de-DE.i18n.data.d.ts +8 -2
- package/lib/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-post-table-actions.directive.ts.de-DE.i18n.data.js +64 -13
- package/lib/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-post-table-actions.directive.ts.de-DE.i18n.data.js.map +1 -1
- package/lib/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-post-table-actions.directive.ts.en-US.i18n.data.d.ts +7 -2
- package/lib/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-post-table-actions.directive.ts.en-US.i18n.data.js +45 -13
- package/lib/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-post-table-actions.directive.ts.en-US.i18n.data.js.map +1 -1
- package/lib/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-post-table-actions.directive.ts.pl-PL.i18n.data.d.ts +8 -2
- package/lib/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-post-table-actions.directive.ts.pl-PL.i18n.data.js +64 -13
- package/lib/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-post-table-actions.directive.ts.pl-PL.i18n.data.js.map +1 -1
- package/lib/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.html.de-DE.i18n.data.d.ts +2 -6
- package/lib/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.html.de-DE.i18n.data.js +19 -12
- package/lib/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.html.de-DE.i18n.data.js.map +1 -1
- package/lib/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.html.en-US.i18n.data.js +5 -5
- package/lib/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.html.en-US.i18n.data.js.map +1 -1
- package/lib/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.html.pl-PL.i18n.data.d.ts +2 -6
- package/lib/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.html.pl-PL.i18n.data.js +19 -12
- package/lib/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.html.pl-PL.i18n.data.js.map +1 -1
- package/lib/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.ts.de-DE.i18n.data.d.ts +2 -6
- package/lib/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.ts.de-DE.i18n.data.js +2 -1
- package/lib/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.ts.de-DE.i18n.data.js.map +1 -1
- package/lib/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.ts.pl-PL.i18n.data.d.ts +2 -6
- package/lib/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.ts.pl-PL.i18n.data.js +2 -1
- package/lib/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.ts.pl-PL.i18n.data.js.map +1 -1
- package/lib/taon-posts/taon-cms-posts-backoffice/index.d.ts +1 -1
- package/lib/taon-posts/taon-cms-posts-backoffice/index.js +2 -2
- package/lib/taon-posts/taon-cms-revision-chooser/i18n/taon-cms-revision-chooser.component.html.de-DE.i18n.data.d.ts +7 -2
- package/lib/taon-posts/taon-cms-revision-chooser/i18n/taon-cms-revision-chooser.component.html.de-DE.i18n.data.js +23 -9
- package/lib/taon-posts/taon-cms-revision-chooser/i18n/taon-cms-revision-chooser.component.html.de-DE.i18n.data.js.map +1 -1
- package/lib/taon-posts/taon-cms-revision-chooser/i18n/taon-cms-revision-chooser.component.html.en-US.i18n.data.d.ts +7 -2
- package/lib/taon-posts/taon-cms-revision-chooser/i18n/taon-cms-revision-chooser.component.html.en-US.i18n.data.js +23 -9
- package/lib/taon-posts/taon-cms-revision-chooser/i18n/taon-cms-revision-chooser.component.html.en-US.i18n.data.js.map +1 -1
- package/lib/taon-posts/taon-cms-revision-chooser/i18n/taon-cms-revision-chooser.component.html.pl-PL.i18n.data.d.ts +7 -2
- package/lib/taon-posts/taon-cms-revision-chooser/i18n/taon-cms-revision-chooser.component.html.pl-PL.i18n.data.js +23 -9
- package/lib/taon-posts/taon-cms-revision-chooser/i18n/taon-cms-revision-chooser.component.html.pl-PL.i18n.data.js.map +1 -1
- package/lib/taon-posts/taon-cms-revision-chooser/index.d.ts +1 -1
- package/lib/taon-posts/taon-cms-revision-chooser/index.js +2 -2
- package/lib/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.html.de-DE.i18n.data.d.ts +1 -0
- package/lib/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.html.de-DE.i18n.data.js +10 -5
- package/lib/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.html.de-DE.i18n.data.js.map +1 -1
- package/lib/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.html.en-US.i18n.data.d.ts +1 -0
- package/lib/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.html.en-US.i18n.data.js +9 -5
- package/lib/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.html.en-US.i18n.data.js.map +1 -1
- package/lib/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.html.pl-PL.i18n.data.d.ts +1 -0
- package/lib/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.html.pl-PL.i18n.data.js +10 -5
- package/lib/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.html.pl-PL.i18n.data.js.map +1 -1
- package/lib/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.ts.de-DE.i18n.data.js +2 -2
- package/lib/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.ts.en-US.i18n.data.js +2 -2
- package/lib/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.ts.pl-PL.i18n.data.js +2 -2
- package/lib/taon-posts/taon-related-post-chooser/index.d.ts +1 -1
- package/lib/taon-posts/taon-related-post-chooser/index.js +2 -2
- package/lib-esm/lib/build-info._auto-generated_.d.ts +1 -1
- package/lib-esm/lib/build-info._auto-generated_.js +1 -1
- package/lib-esm/lib/index._auto-generated_.d.ts +18 -0
- package/lib-esm/lib/index._auto-generated_.js +33 -0
- package/lib-esm/lib/index._auto-generated_.js.map +1 -1
- package/lib-esm/lib/migrations/1793664000000_postVersionLinks.d.ts +6 -0
- package/lib-esm/lib/migrations/1793664000000_postVersionLinks.js +32 -0
- package/lib-esm/lib/migrations/1793664000000_postVersionLinks.js.map +1 -0
- package/lib-esm/lib/migrations/migrations_index._auto-generated_.d.ts +3 -0
- package/lib-esm/lib/migrations/migrations_index._auto-generated_.js +3 -0
- package/lib-esm/lib/migrations/migrations_index._auto-generated_.js.map +1 -1
- package/lib-esm/lib/taon-cms-backoffice/i18n/taon-cms-backoffice.component.html.de-DE.i18n.data.js +5 -0
- package/lib-esm/lib/taon-cms-backoffice/i18n/taon-cms-backoffice.component.html.de-DE.i18n.data.js.map +1 -1
- package/lib-esm/lib/taon-cms-backoffice/i18n/taon-cms-backoffice.component.html.en-US.i18n.data.js +5 -0
- package/lib-esm/lib/taon-cms-backoffice/i18n/taon-cms-backoffice.component.html.en-US.i18n.data.js.map +1 -1
- package/lib-esm/lib/taon-cms-backoffice/i18n/taon-cms-backoffice.component.html.pl-PL.i18n.data.js +5 -0
- package/lib-esm/lib/taon-cms-backoffice/i18n/taon-cms-backoffice.component.html.pl-PL.i18n.data.js.map +1 -1
- package/lib-esm/lib/taon-cms-backoffice/i18n/taon-cms-backoffice.routes.ts.de-DE.i18n.data.d.ts +4 -6
- package/lib-esm/lib/taon-cms-backoffice/i18n/taon-cms-backoffice.routes.ts.de-DE.i18n.data.js +16 -5
- package/lib-esm/lib/taon-cms-backoffice/i18n/taon-cms-backoffice.routes.ts.de-DE.i18n.data.js.map +1 -1
- package/lib-esm/lib/taon-cms-backoffice/i18n/taon-cms-backoffice.routes.ts.en-US.i18n.data.d.ts +4 -2
- package/lib-esm/lib/taon-cms-backoffice/i18n/taon-cms-backoffice.routes.ts.en-US.i18n.data.js +13 -5
- package/lib-esm/lib/taon-cms-backoffice/i18n/taon-cms-backoffice.routes.ts.en-US.i18n.data.js.map +1 -1
- package/lib-esm/lib/taon-cms-backoffice/i18n/taon-cms-backoffice.routes.ts.pl-PL.i18n.data.d.ts +2 -0
- package/lib-esm/lib/taon-cms-backoffice/i18n/taon-cms-backoffice.routes.ts.pl-PL.i18n.data.js +15 -5
- package/lib-esm/lib/taon-cms-backoffice/i18n/taon-cms-backoffice.routes.ts.pl-PL.i18n.data.js.map +1 -1
- package/lib-esm/lib/taon-cms-backoffice/index.d.ts +1 -1
- package/lib-esm/lib/taon-cms-backoffice/index.js +1 -1
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- package/lib-esm/lib/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.translation.d.ts +8 -0
- package/lib-esm/lib/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.translation.js +4 -0
- package/lib-esm/lib/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.translation.js.map +1 -0
- package/lib-esm/lib/taon-cms-backoffice/taon-cms-website-features/index.d.ts +1 -0
- package/lib-esm/lib/taon-cms-backoffice/taon-cms-website-features/index.js +2 -0
- package/lib-esm/lib/taon-cms-backoffice/taon-cms-website-features/index.js.map +1 -0
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- package/lib-esm/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.translation.js +4 -0
- 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
- 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
- package/lib-esm/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.abstract.context.js +18 -0
- 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
- package/lib-esm/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.constants.d.ts +7 -0
- package/lib-esm/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.constants.js +13 -0
- package/lib-esm/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.constants.js.map +1 -0
- package/lib-esm/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.controller.d.ts +13 -0
- package/lib-esm/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.controller.js +91 -0
- package/lib-esm/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.controller.js.map +1 -0
- 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
- package/lib-esm/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.kv.repository.js +91 -0
- 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
- package/lib-esm/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.models.d.ts +11 -0
- package/lib-esm/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.models.js +9 -0
- package/lib-esm/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.models.js.map +1 -0
- package/lib-esm/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.provider.d.ts +12 -0
- package/lib-esm/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.provider.js +22 -0
- package/lib-esm/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.provider.js.map +1 -0
- package/lib-esm/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.utils.d.ts +5 -0
- package/lib-esm/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.utils.js +18 -0
- package/lib-esm/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.utils.js.map +1 -0
- package/lib-esm/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.validators.d.ts +2 -0
- package/lib-esm/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.validators.js +2 -0
- package/lib-esm/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.validators.js.map +1 -0
- package/lib-esm/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-features.models.d.ts +1 -0
- package/lib-esm/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-features.models.js +2 -0
- package/lib-esm/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-features.models.js.map +1 -0
- package/lib-esm/lib/taon-cms-comment/i18n/taon-cms-comment.controller.ts.de-DE.i18n.data.d.ts +32 -0
- package/lib-esm/lib/taon-cms-comment/i18n/taon-cms-comment.controller.ts.de-DE.i18n.data.js +114 -0
- package/lib-esm/lib/taon-cms-comment/i18n/taon-cms-comment.controller.ts.de-DE.i18n.data.js.map +1 -0
- package/lib-esm/lib/taon-cms-comment/i18n/taon-cms-comment.controller.ts.en-US.i18n.data.d.ts +31 -0
- package/lib-esm/lib/taon-cms-comment/i18n/taon-cms-comment.controller.ts.en-US.i18n.data.js +93 -0
- package/lib-esm/lib/taon-cms-comment/i18n/taon-cms-comment.controller.ts.en-US.i18n.data.js.map +1 -0
- package/lib-esm/lib/taon-cms-comment/i18n/taon-cms-comment.controller.ts.pl-PL.i18n.data.d.ts +32 -0
- package/lib-esm/lib/taon-cms-comment/i18n/taon-cms-comment.controller.ts.pl-PL.i18n.data.js +114 -0
- package/lib-esm/lib/taon-cms-comment/i18n/taon-cms-comment.controller.ts.pl-PL.i18n.data.js.map +1 -0
- package/lib-esm/lib/taon-cms-comment/i18n/taon-cms-comment.translation.d.ts +11 -0
- package/lib-esm/lib/taon-cms-comment/i18n/taon-cms-comment.translation.js +4 -0
- package/lib-esm/lib/taon-cms-comment/i18n/taon-cms-comment.translation.js.map +1 -0
- package/lib-esm/lib/taon-cms-comment/i18n/taon-cms-comments.component.html.de-DE.i18n.data.d.ts +29 -0
- package/lib-esm/lib/taon-cms-comment/i18n/taon-cms-comments.component.html.de-DE.i18n.data.js +94 -0
- package/lib-esm/lib/taon-cms-comment/i18n/taon-cms-comments.component.html.de-DE.i18n.data.js.map +1 -0
- package/lib-esm/lib/taon-cms-comment/i18n/taon-cms-comments.component.html.en-US.i18n.data.d.ts +28 -0
- package/lib-esm/lib/taon-cms-comment/i18n/taon-cms-comments.component.html.en-US.i18n.data.js +77 -0
- package/lib-esm/lib/taon-cms-comment/i18n/taon-cms-comments.component.html.en-US.i18n.data.js.map +1 -0
- package/lib-esm/lib/taon-cms-comment/i18n/taon-cms-comments.component.html.pl-PL.i18n.data.d.ts +29 -0
- package/lib-esm/lib/taon-cms-comment/i18n/taon-cms-comments.component.html.pl-PL.i18n.data.js +94 -0
- package/lib-esm/lib/taon-cms-comment/i18n/taon-cms-comments.component.html.pl-PL.i18n.data.js.map +1 -0
- package/lib-esm/lib/taon-cms-comment/i18n/taon-cms-comments.component.ts.de-DE.i18n.data.d.ts +20 -0
- package/lib-esm/lib/taon-cms-comment/i18n/taon-cms-comments.component.ts.de-DE.i18n.data.js +34 -0
- package/lib-esm/lib/taon-cms-comment/i18n/taon-cms-comments.component.ts.de-DE.i18n.data.js.map +1 -0
- package/lib-esm/lib/taon-cms-comment/i18n/taon-cms-comments.component.ts.en-US.i18n.data.d.ts +19 -0
- package/lib-esm/lib/taon-cms-comment/i18n/taon-cms-comments.component.ts.en-US.i18n.data.js +29 -0
- package/lib-esm/lib/taon-cms-comment/i18n/taon-cms-comments.component.ts.en-US.i18n.data.js.map +1 -0
- package/lib-esm/lib/taon-cms-comment/i18n/taon-cms-comments.component.ts.pl-PL.i18n.data.d.ts +20 -0
- package/lib-esm/lib/taon-cms-comment/i18n/taon-cms-comments.component.ts.pl-PL.i18n.data.js +34 -0
- package/lib-esm/lib/taon-cms-comment/i18n/taon-cms-comments.component.ts.pl-PL.i18n.data.js.map +1 -0
- package/lib-esm/lib/taon-cms-comment/index.d.ts +4 -0
- package/lib-esm/lib/taon-cms-comment/index.js +5 -0
- package/lib-esm/lib/taon-cms-comment/index.js.map +1 -1
- package/lib-esm/lib/taon-cms-comment/taon-cms-comment-blocked-phrase.entity.d.ts +7 -0
- package/lib-esm/lib/taon-cms-comment/taon-cms-comment-blocked-phrase.entity.js +51 -0
- package/lib-esm/lib/taon-cms-comment/taon-cms-comment-blocked-phrase.entity.js.map +1 -0
- package/lib-esm/lib/taon-cms-comment/taon-cms-comment-blocked-user.entity.d.ts +6 -0
- package/lib-esm/lib/taon-cms-comment/taon-cms-comment-blocked-user.entity.js +42 -0
- package/lib-esm/lib/taon-cms-comment/taon-cms-comment-blocked-user.entity.js.map +1 -0
- package/lib-esm/lib/taon-cms-comment/taon-cms-comment-spam-report.entity.d.ts +7 -0
- package/lib-esm/lib/taon-cms-comment/taon-cms-comment-spam-report.entity.js +51 -0
- package/lib-esm/lib/taon-cms-comment/taon-cms-comment-spam-report.entity.js.map +1 -0
- package/lib-esm/lib/taon-cms-comment/taon-cms-comment-vote.entity.d.ts +8 -0
- package/lib-esm/lib/taon-cms-comment/taon-cms-comment-vote.entity.js +60 -0
- package/lib-esm/lib/taon-cms-comment/taon-cms-comment-vote.entity.js.map +1 -0
- package/lib-esm/lib/taon-cms-comment/taon-cms-comment.abstract.context.js +11 -1
- package/lib-esm/lib/taon-cms-comment/taon-cms-comment.abstract.context.js.map +1 -1
- package/lib-esm/lib/taon-cms-comment/taon-cms-comment.controller.d.ts +48 -6
- package/lib-esm/lib/taon-cms-comment/taon-cms-comment.controller.js +504 -22
- package/lib-esm/lib/taon-cms-comment/taon-cms-comment.controller.js.map +1 -1
- package/lib-esm/lib/taon-cms-comment/taon-cms-comment.entity.js +3 -3
- package/lib-esm/lib/taon-cms-comment/taon-cms-comment.entity.js.map +1 -1
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.translation.d.ts +8 -0
- package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.translation.js +4 -0
- package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.translation.js.map +1 -0
- package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/index.d.ts +1 -0
- package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/index.js +2 -0
- package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/index.js.map +1 -0
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/index.d.ts +1 -0
- package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/index.js +2 -0
- package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/index.js.map +1 -0
- 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
- 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
- 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
- package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-backoffice.models.d.ts +1 -0
- package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-backoffice.models.js +2 -0
- package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-backoffice.models.js.map +1 -0
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/index.d.ts +1 -0
- package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/index.js +2 -0
- package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/index.js.map +1 -0
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/index.d.ts +1 -0
- package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/index.js +2 -0
- package/lib-esm/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/index.js.map +1 -0
- 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
- 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
- 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
- package/lib-esm/lib/taon-cms-content/i18n/taon-cms-content-storage.controller.ts.de-DE.i18n.data.js +1 -1
- package/lib-esm/lib/taon-cms-content/i18n/taon-cms-content-storage.controller.ts.en-US.i18n.data.js +1 -1
- package/lib-esm/lib/taon-cms-content/i18n/taon-cms-content-storage.controller.ts.pl-PL.i18n.data.js +1 -1
- package/lib-esm/lib/taon-cms-content/i18n/taon-cms-content.controller.ts.de-DE.i18n.data.d.ts +2 -0
- package/lib-esm/lib/taon-cms-content/i18n/taon-cms-content.controller.ts.de-DE.i18n.data.js +26 -6
- package/lib-esm/lib/taon-cms-content/i18n/taon-cms-content.controller.ts.de-DE.i18n.data.js.map +1 -1
- package/lib-esm/lib/taon-cms-content/i18n/taon-cms-content.controller.ts.en-US.i18n.data.d.ts +8 -2
- package/lib-esm/lib/taon-cms-content/i18n/taon-cms-content.controller.ts.en-US.i18n.data.js +22 -6
- package/lib-esm/lib/taon-cms-content/i18n/taon-cms-content.controller.ts.en-US.i18n.data.js.map +1 -1
- package/lib-esm/lib/taon-cms-content/i18n/taon-cms-content.controller.ts.pl-PL.i18n.data.d.ts +2 -0
- package/lib-esm/lib/taon-cms-content/i18n/taon-cms-content.controller.ts.pl-PL.i18n.data.js +26 -6
- package/lib-esm/lib/taon-cms-content/i18n/taon-cms-content.controller.ts.pl-PL.i18n.data.js.map +1 -1
- package/lib-esm/lib/taon-cms-content/taon-cms-content-storage.controller.d.ts +5 -1
- package/lib-esm/lib/taon-cms-content/taon-cms-content-storage.controller.js +67 -2
- package/lib-esm/lib/taon-cms-content/taon-cms-content-storage.controller.js.map +1 -1
- package/lib-esm/lib/taon-cms-content/taon-cms-content.controller.d.ts +12 -2
- package/lib-esm/lib/taon-cms-content/taon-cms-content.controller.js +246 -3
- package/lib-esm/lib/taon-cms-content/taon-cms-content.controller.js.map +1 -1
- package/lib-esm/lib/taon-cms-content/taon-cms-content.entity.d.ts +3 -0
- package/lib-esm/lib/taon-cms-content/taon-cms-content.entity.js +27 -0
- package/lib-esm/lib/taon-cms-content/taon-cms-content.entity.js.map +1 -1
- package/lib-esm/lib/taon-cms-content/taon-cms-content.models.d.ts +39 -0
- package/lib-esm/lib/taon-cms-content/taon-cms-content.models.js.map +1 -1
- package/lib-esm/lib/taon-cms-content/taon-cms-content.repository.d.ts +21 -3
- package/lib-esm/lib/taon-cms-content/taon-cms-content.repository.js +830 -30
- package/lib-esm/lib/taon-cms-content/taon-cms-content.repository.js.map +1 -1
- package/lib-esm/lib/taon-cms-content/taon-cms-content.utils.d.ts +2 -0
- package/lib-esm/lib/taon-cms-content/taon-cms-content.utils.js +6 -0
- package/lib-esm/lib/taon-cms-content/taon-cms-content.utils.js.map +1 -1
- package/lib-esm/lib/taon-cms-content/taon-cms-content.validation.js +4 -0
- package/lib-esm/lib/taon-cms-content/taon-cms-content.validation.js.map +1 -1
- package/lib-esm/lib/taon-cms-content-revision/taon-cms-content-revision.repository.d.ts +1 -0
- package/lib-esm/lib/taon-cms-content-revision/taon-cms-content-revision.repository.js +21 -0
- package/lib-esm/lib/taon-cms-content-revision/taon-cms-content-revision.repository.js.map +1 -1
- 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
- package/lib-esm/lib/taon-cms-taxonomy-backoffice/i18n/taon-cms-taxonomy-quick-create-dialog.component.ts.de-DE.i18n.data.js +14 -7
- 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
- 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
- package/lib-esm/lib/taon-cms-taxonomy-backoffice/i18n/taon-cms-taxonomy-quick-create-dialog.component.ts.pl-PL.i18n.data.js +14 -7
- 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
- package/lib-esm/lib/taon-cms.abstract.context.js +2 -0
- package/lib-esm/lib/taon-cms.abstract.context.js.map +1 -1
- 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
- package/lib-esm/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.html.de-DE.i18n.data.js +26 -15
- 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
- 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
- package/lib-esm/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.html.en-US.i18n.data.js +10 -10
- 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
- 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
- package/lib-esm/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.html.pl-PL.i18n.data.js +26 -15
- 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
- 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
- package/lib-esm/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.ts.de-DE.i18n.data.js +8 -4
- 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
- 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
- package/lib-esm/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.ts.pl-PL.i18n.data.js +8 -4
- 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
- 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
- package/lib-esm/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.html.de-DE.i18n.data.js +20 -5
- 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
- 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
- package/lib-esm/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.html.en-US.i18n.data.js +8 -0
- 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
- 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
- package/lib-esm/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.html.pl-PL.i18n.data.js +20 -5
- 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
- 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
- package/lib-esm/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.ts.de-DE.i18n.data.js +15 -5
- 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
- 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
- package/lib-esm/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.ts.en-US.i18n.data.js +9 -5
- 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
- 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
- package/lib-esm/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.ts.pl-PL.i18n.data.js +15 -5
- 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
- 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
- package/lib-esm/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-cover.component.ts.de-DE.i18n.data.js +2 -1
- 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
- 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
- package/lib-esm/lib/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-cover.component.ts.pl-PL.i18n.data.js +2 -1
- 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
- package/lib-esm/lib/taon-posts/taon-cms-course-backoffice/index.d.ts +1 -1
- package/lib-esm/lib/taon-posts/taon-cms-course-backoffice/index.js +1 -1
- 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
- package/lib-esm/lib/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.html.de-DE.i18n.data.js +19 -0
- 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
- 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
- package/lib-esm/lib/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.html.en-US.i18n.data.js +17 -0
- 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
- 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
- package/lib-esm/lib/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.html.pl-PL.i18n.data.js +19 -0
- 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
- 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
- package/lib-esm/lib/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.ts.de-DE.i18n.data.js +8 -0
- 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
- 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
- package/lib-esm/lib/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.ts.en-US.i18n.data.js +8 -0
- 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
- 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
- package/lib-esm/lib/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.ts.pl-PL.i18n.data.js +8 -0
- 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
- package/lib-esm/lib/taon-posts/taon-cms-post/i18n/taon-cms-post-thumbnail.component.ts.de-DE.i18n.data.d.ts +16 -0
- package/lib-esm/lib/taon-posts/taon-cms-post/i18n/taon-cms-post-thumbnail.component.ts.de-DE.i18n.data.js +14 -0
- package/lib-esm/lib/taon-posts/taon-cms-post/i18n/taon-cms-post-thumbnail.component.ts.de-DE.i18n.data.js.map +1 -0
- package/lib-esm/lib/taon-posts/taon-cms-post/i18n/taon-cms-post-thumbnail.component.ts.en-US.i18n.data.d.ts +15 -0
- package/lib-esm/lib/taon-posts/taon-cms-post/i18n/taon-cms-post-thumbnail.component.ts.en-US.i18n.data.js +13 -0
- package/lib-esm/lib/taon-posts/taon-cms-post/i18n/taon-cms-post-thumbnail.component.ts.en-US.i18n.data.js.map +1 -0
- package/lib-esm/lib/taon-posts/taon-cms-post/i18n/taon-cms-post-thumbnail.component.ts.pl-PL.i18n.data.d.ts +16 -0
- package/lib-esm/lib/taon-posts/taon-cms-post/i18n/taon-cms-post-thumbnail.component.ts.pl-PL.i18n.data.js +14 -0
- package/lib-esm/lib/taon-posts/taon-cms-post/i18n/taon-cms-post-thumbnail.component.ts.pl-PL.i18n.data.js.map +1 -0
- package/lib-esm/lib/taon-posts/taon-cms-post/i18n/taon-cms-post.component.html.de-DE.i18n.data.d.ts +49 -4
- package/lib-esm/lib/taon-posts/taon-cms-post/i18n/taon-cms-post.component.html.de-DE.i18n.data.js +496 -90
- package/lib-esm/lib/taon-posts/taon-cms-post/i18n/taon-cms-post.component.html.de-DE.i18n.data.js.map +1 -1
- package/lib-esm/lib/taon-posts/taon-cms-post/i18n/taon-cms-post.component.html.en-US.i18n.data.d.ts +49 -4
- package/lib-esm/lib/taon-posts/taon-cms-post/i18n/taon-cms-post.component.html.en-US.i18n.data.js +416 -88
- package/lib-esm/lib/taon-posts/taon-cms-post/i18n/taon-cms-post.component.html.en-US.i18n.data.js.map +1 -1
- package/lib-esm/lib/taon-posts/taon-cms-post/i18n/taon-cms-post.component.html.pl-PL.i18n.data.d.ts +49 -4
- package/lib-esm/lib/taon-posts/taon-cms-post/i18n/taon-cms-post.component.html.pl-PL.i18n.data.js +497 -89
- package/lib-esm/lib/taon-posts/taon-cms-post/i18n/taon-cms-post.component.html.pl-PL.i18n.data.js.map +1 -1
- package/lib-esm/lib/taon-posts/taon-cms-post/i18n/taon-cms-post.component.ts.de-DE.i18n.data.d.ts +34 -7
- package/lib-esm/lib/taon-posts/taon-cms-post/i18n/taon-cms-post.component.ts.de-DE.i18n.data.js +203 -39
- package/lib-esm/lib/taon-posts/taon-cms-post/i18n/taon-cms-post.component.ts.de-DE.i18n.data.js.map +1 -1
- package/lib-esm/lib/taon-posts/taon-cms-post/i18n/taon-cms-post.component.ts.en-US.i18n.data.d.ts +32 -1
- package/lib-esm/lib/taon-posts/taon-cms-post/i18n/taon-cms-post.component.ts.en-US.i18n.data.js +166 -39
- package/lib-esm/lib/taon-posts/taon-cms-post/i18n/taon-cms-post.component.ts.en-US.i18n.data.js.map +1 -1
- package/lib-esm/lib/taon-posts/taon-cms-post/i18n/taon-cms-post.component.ts.pl-PL.i18n.data.d.ts +34 -7
- package/lib-esm/lib/taon-posts/taon-cms-post/i18n/taon-cms-post.component.ts.pl-PL.i18n.data.js +206 -42
- package/lib-esm/lib/taon-posts/taon-cms-post/i18n/taon-cms-post.component.ts.pl-PL.i18n.data.js.map +1 -1
- package/lib-esm/lib/taon-posts/taon-cms-post/i18n/taon-cms-post.translation.d.ts +10 -1
- package/lib-esm/lib/taon-posts/taon-cms-post/i18n/taon-cms-post.translation.js.map +1 -1
- package/lib-esm/lib/taon-posts/taon-cms-post/index.d.ts +1 -1
- package/lib-esm/lib/taon-posts/taon-cms-post/index.js +1 -1
- package/lib-esm/lib/taon-posts/taon-cms-post/taon-cms-document-extractor.d.ts +1 -0
- package/lib-esm/lib/taon-posts/taon-cms-post/taon-cms-document-extractor.js +498 -0
- package/lib-esm/lib/taon-posts/taon-cms-post/taon-cms-document-extractor.js.map +1 -0
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- package/lib-esm/lib/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.html.de-DE.i18n.data.js +19 -12
- 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
- package/lib-esm/lib/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.html.en-US.i18n.data.js +5 -5
- 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
- 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
- package/lib-esm/lib/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.html.pl-PL.i18n.data.js +19 -12
- 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
- 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
- package/lib-esm/lib/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.ts.de-DE.i18n.data.js +2 -1
- 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
- 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
- package/lib-esm/lib/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.ts.pl-PL.i18n.data.js +2 -1
- 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
- package/lib-esm/lib/taon-posts/taon-cms-posts-backoffice/index.d.ts +1 -1
- package/lib-esm/lib/taon-posts/taon-cms-posts-backoffice/index.js +1 -1
- 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
- package/lib-esm/lib/taon-posts/taon-cms-revision-chooser/i18n/taon-cms-revision-chooser.component.html.de-DE.i18n.data.js +23 -9
- 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
- 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
- package/lib-esm/lib/taon-posts/taon-cms-revision-chooser/i18n/taon-cms-revision-chooser.component.html.en-US.i18n.data.js +23 -9
- 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
- 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
- package/lib-esm/lib/taon-posts/taon-cms-revision-chooser/i18n/taon-cms-revision-chooser.component.html.pl-PL.i18n.data.js +23 -9
- 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
- package/lib-esm/lib/taon-posts/taon-cms-revision-chooser/index.d.ts +1 -1
- package/lib-esm/lib/taon-posts/taon-cms-revision-chooser/index.js +1 -1
- 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
- package/lib-esm/lib/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.html.de-DE.i18n.data.js +10 -5
- 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
- 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
- package/lib-esm/lib/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.html.en-US.i18n.data.js +9 -5
- 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
- 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
- package/lib-esm/lib/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.html.pl-PL.i18n.data.js +10 -5
- 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
- package/lib-esm/lib/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.ts.de-DE.i18n.data.js +2 -2
- package/lib-esm/lib/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.ts.en-US.i18n.data.js +2 -2
- package/lib-esm/lib/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.ts.pl-PL.i18n.data.js +2 -2
- package/lib-esm/lib/taon-posts/taon-related-post-chooser/index.d.ts +1 -1
- package/lib-esm/lib/taon-posts/taon-related-post-chooser/index.js +1 -1
- package/lib-prod/build-info._auto-generated_.d.ts +1 -1
- package/lib-prod/build-info._auto-generated_.js +1 -1
- package/lib-prod/index._auto-generated_.d.ts +18 -0
- package/lib-prod/index._auto-generated_.js +33 -0
- package/lib-prod/index._auto-generated_.js.map +1 -1
- package/lib-prod/migrations/1793664000000_postVersionLinks.d.ts +6 -0
- package/lib-prod/migrations/1793664000000_postVersionLinks.js +32 -0
- package/lib-prod/migrations/1793664000000_postVersionLinks.js.map +1 -0
- package/lib-prod/migrations/migrations_index._auto-generated_.d.ts +3 -0
- package/lib-prod/migrations/migrations_index._auto-generated_.js +3 -0
- package/lib-prod/migrations/migrations_index._auto-generated_.js.map +1 -1
- package/lib-prod/package.json +1 -1
- package/lib-prod/taon-cms-backoffice/i18n/taon-cms-backoffice.component.html.de-DE.i18n.data.js +5 -0
- package/lib-prod/taon-cms-backoffice/i18n/taon-cms-backoffice.component.html.de-DE.i18n.data.js.map +1 -1
- package/lib-prod/taon-cms-backoffice/i18n/taon-cms-backoffice.component.html.en-US.i18n.data.js +5 -0
- package/lib-prod/taon-cms-backoffice/i18n/taon-cms-backoffice.component.html.en-US.i18n.data.js.map +1 -1
- package/lib-prod/taon-cms-backoffice/i18n/taon-cms-backoffice.component.html.pl-PL.i18n.data.js +5 -0
- package/lib-prod/taon-cms-backoffice/i18n/taon-cms-backoffice.component.html.pl-PL.i18n.data.js.map +1 -1
- package/lib-prod/taon-cms-backoffice/i18n/taon-cms-backoffice.routes.ts.de-DE.i18n.data.d.ts +4 -6
- package/lib-prod/taon-cms-backoffice/i18n/taon-cms-backoffice.routes.ts.de-DE.i18n.data.js +16 -5
- package/lib-prod/taon-cms-backoffice/i18n/taon-cms-backoffice.routes.ts.de-DE.i18n.data.js.map +1 -1
- package/lib-prod/taon-cms-backoffice/i18n/taon-cms-backoffice.routes.ts.en-US.i18n.data.d.ts +4 -2
- package/lib-prod/taon-cms-backoffice/i18n/taon-cms-backoffice.routes.ts.en-US.i18n.data.js +13 -5
- package/lib-prod/taon-cms-backoffice/i18n/taon-cms-backoffice.routes.ts.en-US.i18n.data.js.map +1 -1
- package/lib-prod/taon-cms-backoffice/i18n/taon-cms-backoffice.routes.ts.pl-PL.i18n.data.d.ts +2 -0
- package/lib-prod/taon-cms-backoffice/i18n/taon-cms-backoffice.routes.ts.pl-PL.i18n.data.js +15 -5
- package/lib-prod/taon-cms-backoffice/i18n/taon-cms-backoffice.routes.ts.pl-PL.i18n.data.js.map +1 -1
- package/lib-prod/taon-cms-backoffice/index.d.ts +1 -1
- package/lib-prod/taon-cms-backoffice/index.js +1 -1
- 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
- package/lib-prod/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.html.de-DE.i18n.data.js +44 -0
- 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
- 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
- package/lib-prod/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.html.en-US.i18n.data.js +37 -0
- 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
- 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
- package/lib-prod/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.html.pl-PL.i18n.data.js +44 -0
- 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
- 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
- package/lib-prod/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.ts.de-DE.i18n.data.js +54 -0
- 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
- 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
- package/lib-prod/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.ts.en-US.i18n.data.js +45 -0
- 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
- 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
- package/lib-prod/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.ts.pl-PL.i18n.data.js +54 -0
- 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
- package/lib-prod/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.translation.d.ts +8 -0
- package/lib-prod/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.translation.js +4 -0
- package/lib-prod/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.translation.js.map +1 -0
- package/lib-prod/taon-cms-backoffice/taon-cms-website-features/index.d.ts +1 -0
- package/lib-prod/taon-cms-backoffice/taon-cms-website-features/index.js +2 -0
- package/lib-prod/taon-cms-backoffice/taon-cms-website-features/index.js.map +1 -0
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- package/lib-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.translation.d.ts +8 -0
- package/lib-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.translation.js +4 -0
- package/lib-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/i18n/taon-cms-website-feature.translation.js.map +1 -0
- package/lib-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.abstract.context.d.ts +16 -0
- package/lib-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.abstract.context.js +18 -0
- package/lib-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.abstract.context.js.map +1 -0
- package/lib-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.constants.d.ts +7 -0
- package/lib-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.constants.js +13 -0
- package/lib-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.constants.js.map +1 -0
- package/lib-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.controller.d.ts +13 -0
- package/lib-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.controller.js +91 -0
- package/lib-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.controller.js.map +1 -0
- package/lib-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.kv.repository.d.ts +14 -0
- package/lib-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.kv.repository.js +91 -0
- package/lib-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.kv.repository.js.map +1 -0
- package/lib-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.models.d.ts +9 -0
- package/lib-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.models.js +8 -0
- package/lib-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.models.js.map +1 -0
- package/lib-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.provider.d.ts +12 -0
- package/lib-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.provider.js +22 -0
- package/lib-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.provider.js.map +1 -0
- package/lib-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.utils.d.ts +3 -0
- package/lib-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.utils.js +15 -0
- package/lib-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.utils.js.map +1 -0
- package/lib-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.validators.d.ts +1 -0
- package/lib-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.validators.js +22 -0
- package/lib-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.validators.js.map +1 -0
- package/lib-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-features.models.d.ts +0 -0
- package/lib-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-features.models.js +3 -0
- package/lib-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-features.models.js.map +1 -0
- package/lib-prod/taon-cms-comment/i18n/taon-cms-comment.controller.ts.de-DE.i18n.data.d.ts +32 -0
- package/lib-prod/taon-cms-comment/i18n/taon-cms-comment.controller.ts.de-DE.i18n.data.js +114 -0
- package/lib-prod/taon-cms-comment/i18n/taon-cms-comment.controller.ts.de-DE.i18n.data.js.map +1 -0
- package/lib-prod/taon-cms-comment/i18n/taon-cms-comment.controller.ts.en-US.i18n.data.d.ts +31 -0
- package/lib-prod/taon-cms-comment/i18n/taon-cms-comment.controller.ts.en-US.i18n.data.js +93 -0
- package/lib-prod/taon-cms-comment/i18n/taon-cms-comment.controller.ts.en-US.i18n.data.js.map +1 -0
- package/lib-prod/taon-cms-comment/i18n/taon-cms-comment.controller.ts.pl-PL.i18n.data.d.ts +32 -0
- package/lib-prod/taon-cms-comment/i18n/taon-cms-comment.controller.ts.pl-PL.i18n.data.js +114 -0
- package/lib-prod/taon-cms-comment/i18n/taon-cms-comment.controller.ts.pl-PL.i18n.data.js.map +1 -0
- package/lib-prod/taon-cms-comment/i18n/taon-cms-comment.translation.d.ts +11 -0
- package/lib-prod/taon-cms-comment/i18n/taon-cms-comment.translation.js +4 -0
- package/lib-prod/taon-cms-comment/i18n/taon-cms-comment.translation.js.map +1 -0
- package/lib-prod/taon-cms-comment/i18n/taon-cms-comments.component.html.de-DE.i18n.data.d.ts +29 -0
- package/lib-prod/taon-cms-comment/i18n/taon-cms-comments.component.html.de-DE.i18n.data.js +94 -0
- package/lib-prod/taon-cms-comment/i18n/taon-cms-comments.component.html.de-DE.i18n.data.js.map +1 -0
- package/lib-prod/taon-cms-comment/i18n/taon-cms-comments.component.html.en-US.i18n.data.d.ts +28 -0
- package/lib-prod/taon-cms-comment/i18n/taon-cms-comments.component.html.en-US.i18n.data.js +77 -0
- package/lib-prod/taon-cms-comment/i18n/taon-cms-comments.component.html.en-US.i18n.data.js.map +1 -0
- package/lib-prod/taon-cms-comment/i18n/taon-cms-comments.component.html.pl-PL.i18n.data.d.ts +29 -0
- package/lib-prod/taon-cms-comment/i18n/taon-cms-comments.component.html.pl-PL.i18n.data.js +94 -0
- package/lib-prod/taon-cms-comment/i18n/taon-cms-comments.component.html.pl-PL.i18n.data.js.map +1 -0
- package/lib-prod/taon-cms-comment/i18n/taon-cms-comments.component.ts.de-DE.i18n.data.d.ts +20 -0
- package/lib-prod/taon-cms-comment/i18n/taon-cms-comments.component.ts.de-DE.i18n.data.js +34 -0
- package/lib-prod/taon-cms-comment/i18n/taon-cms-comments.component.ts.de-DE.i18n.data.js.map +1 -0
- package/lib-prod/taon-cms-comment/i18n/taon-cms-comments.component.ts.en-US.i18n.data.d.ts +19 -0
- package/lib-prod/taon-cms-comment/i18n/taon-cms-comments.component.ts.en-US.i18n.data.js +29 -0
- package/lib-prod/taon-cms-comment/i18n/taon-cms-comments.component.ts.en-US.i18n.data.js.map +1 -0
- package/lib-prod/taon-cms-comment/i18n/taon-cms-comments.component.ts.pl-PL.i18n.data.d.ts +20 -0
- package/lib-prod/taon-cms-comment/i18n/taon-cms-comments.component.ts.pl-PL.i18n.data.js +34 -0
- package/lib-prod/taon-cms-comment/i18n/taon-cms-comments.component.ts.pl-PL.i18n.data.js.map +1 -0
- package/lib-prod/taon-cms-comment/index.d.ts +4 -0
- package/lib-prod/taon-cms-comment/index.js +5 -0
- package/lib-prod/taon-cms-comment/index.js.map +1 -1
- package/lib-prod/taon-cms-comment/taon-cms-comment-blocked-phrase.entity.d.ts +7 -0
- package/lib-prod/taon-cms-comment/taon-cms-comment-blocked-phrase.entity.js +51 -0
- package/lib-prod/taon-cms-comment/taon-cms-comment-blocked-phrase.entity.js.map +1 -0
- package/lib-prod/taon-cms-comment/taon-cms-comment-blocked-user.entity.d.ts +6 -0
- package/lib-prod/taon-cms-comment/taon-cms-comment-blocked-user.entity.js +42 -0
- package/lib-prod/taon-cms-comment/taon-cms-comment-blocked-user.entity.js.map +1 -0
- package/lib-prod/taon-cms-comment/taon-cms-comment-spam-report.entity.d.ts +7 -0
- package/lib-prod/taon-cms-comment/taon-cms-comment-spam-report.entity.js +51 -0
- package/lib-prod/taon-cms-comment/taon-cms-comment-spam-report.entity.js.map +1 -0
- package/lib-prod/taon-cms-comment/taon-cms-comment-vote.entity.d.ts +8 -0
- package/lib-prod/taon-cms-comment/taon-cms-comment-vote.entity.js +60 -0
- package/lib-prod/taon-cms-comment/taon-cms-comment-vote.entity.js.map +1 -0
- package/lib-prod/taon-cms-comment/taon-cms-comment.abstract.context.js +11 -1
- package/lib-prod/taon-cms-comment/taon-cms-comment.abstract.context.js.map +1 -1
- package/lib-prod/taon-cms-comment/taon-cms-comment.controller.d.ts +48 -6
- package/lib-prod/taon-cms-comment/taon-cms-comment.controller.js +504 -22
- package/lib-prod/taon-cms-comment/taon-cms-comment.controller.js.map +1 -1
- package/lib-prod/taon-cms-comment/taon-cms-comment.entity.js +3 -3
- package/lib-prod/taon-cms-comment/taon-cms-comment.entity.js.map +1 -1
- 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
- package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.component.ts.de-DE.i18n.data.js +8 -0
- 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
- 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
- package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.component.ts.en-US.i18n.data.js +8 -0
- 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
- 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
- package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.component.ts.pl-PL.i18n.data.js +8 -0
- 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
- 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
- package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.routes.ts.de-DE.i18n.data.js +24 -0
- 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
- 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
- package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.routes.ts.en-US.i18n.data.js +21 -0
- 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
- 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
- package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.routes.ts.pl-PL.i18n.data.js +24 -0
- 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
- package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.translation.d.ts +8 -0
- package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.translation.js +4 -0
- package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.translation.js.map +1 -0
- package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/index.d.ts +1 -0
- package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/index.js +2 -0
- package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/index.js.map +1 -0
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/index.d.ts +1 -0
- package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/index.js +2 -0
- package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/index.js.map +1 -0
- 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
- 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
- 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
- package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-backoffice.models.d.ts +0 -0
- package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-backoffice.models.js +3 -0
- package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-backoffice.models.js.map +1 -0
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/index.d.ts +1 -0
- package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/index.js +2 -0
- package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/index.js.map +1 -0
- 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
- package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/taon-cms-comments-blocked-users.models.js +3 -0
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/index.d.ts +1 -0
- package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/index.js +2 -0
- package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/index.js.map +1 -0
- 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
- package/lib-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/taon-cms-comments-filters-settings.models.js +3 -0
- 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
- package/lib-prod/taon-cms-content/i18n/taon-cms-content-storage.controller.ts.de-DE.i18n.data.js +1 -1
- package/lib-prod/taon-cms-content/i18n/taon-cms-content-storage.controller.ts.en-US.i18n.data.js +1 -1
- package/lib-prod/taon-cms-content/i18n/taon-cms-content-storage.controller.ts.pl-PL.i18n.data.js +1 -1
- package/lib-prod/taon-cms-content/i18n/taon-cms-content.controller.ts.de-DE.i18n.data.d.ts +2 -0
- package/lib-prod/taon-cms-content/i18n/taon-cms-content.controller.ts.de-DE.i18n.data.js +26 -6
- package/lib-prod/taon-cms-content/i18n/taon-cms-content.controller.ts.de-DE.i18n.data.js.map +1 -1
- package/lib-prod/taon-cms-content/i18n/taon-cms-content.controller.ts.en-US.i18n.data.d.ts +8 -2
- package/lib-prod/taon-cms-content/i18n/taon-cms-content.controller.ts.en-US.i18n.data.js +22 -6
- package/lib-prod/taon-cms-content/i18n/taon-cms-content.controller.ts.en-US.i18n.data.js.map +1 -1
- package/lib-prod/taon-cms-content/i18n/taon-cms-content.controller.ts.pl-PL.i18n.data.d.ts +2 -0
- package/lib-prod/taon-cms-content/i18n/taon-cms-content.controller.ts.pl-PL.i18n.data.js +26 -6
- package/lib-prod/taon-cms-content/i18n/taon-cms-content.controller.ts.pl-PL.i18n.data.js.map +1 -1
- package/lib-prod/taon-cms-content/taon-cms-content-storage.controller.d.ts +5 -1
- package/lib-prod/taon-cms-content/taon-cms-content-storage.controller.js +67 -2
- package/lib-prod/taon-cms-content/taon-cms-content-storage.controller.js.map +1 -1
- package/lib-prod/taon-cms-content/taon-cms-content.controller.d.ts +12 -2
- package/lib-prod/taon-cms-content/taon-cms-content.controller.js +246 -3
- package/lib-prod/taon-cms-content/taon-cms-content.controller.js.map +1 -1
- package/lib-prod/taon-cms-content/taon-cms-content.entity.d.ts +3 -0
- package/lib-prod/taon-cms-content/taon-cms-content.entity.js +27 -0
- package/lib-prod/taon-cms-content/taon-cms-content.entity.js.map +1 -1
- package/lib-prod/taon-cms-content/taon-cms-content.models.d.ts +39 -0
- package/lib-prod/taon-cms-content/taon-cms-content.models.js.map +1 -1
- package/lib-prod/taon-cms-content/taon-cms-content.repository.d.ts +21 -3
- package/lib-prod/taon-cms-content/taon-cms-content.repository.js +830 -30
- package/lib-prod/taon-cms-content/taon-cms-content.repository.js.map +1 -1
- package/lib-prod/taon-cms-content/taon-cms-content.utils.d.ts +2 -0
- package/lib-prod/taon-cms-content/taon-cms-content.utils.js +5 -0
- package/lib-prod/taon-cms-content/taon-cms-content.utils.js.map +1 -1
- package/lib-prod/taon-cms-content/taon-cms-content.validation.js +4 -0
- package/lib-prod/taon-cms-content/taon-cms-content.validation.js.map +1 -1
- package/lib-prod/taon-cms-content-revision/taon-cms-content-revision.repository.d.ts +1 -0
- package/lib-prod/taon-cms-content-revision/taon-cms-content-revision.repository.js +21 -0
- package/lib-prod/taon-cms-content-revision/taon-cms-content-revision.repository.js.map +1 -1
- package/lib-prod/taon-cms-taxonomy-backoffice/i18n/taon-cms-taxonomy-quick-create-dialog.component.ts.de-DE.i18n.data.d.ts +1 -0
- package/lib-prod/taon-cms-taxonomy-backoffice/i18n/taon-cms-taxonomy-quick-create-dialog.component.ts.de-DE.i18n.data.js +14 -7
- package/lib-prod/taon-cms-taxonomy-backoffice/i18n/taon-cms-taxonomy-quick-create-dialog.component.ts.de-DE.i18n.data.js.map +1 -1
- package/lib-prod/taon-cms-taxonomy-backoffice/i18n/taon-cms-taxonomy-quick-create-dialog.component.ts.pl-PL.i18n.data.d.ts +1 -0
- package/lib-prod/taon-cms-taxonomy-backoffice/i18n/taon-cms-taxonomy-quick-create-dialog.component.ts.pl-PL.i18n.data.js +14 -7
- package/lib-prod/taon-cms-taxonomy-backoffice/i18n/taon-cms-taxonomy-quick-create-dialog.component.ts.pl-PL.i18n.data.js.map +1 -1
- package/lib-prod/taon-cms.abstract.context.js +2 -0
- package/lib-prod/taon-cms.abstract.context.js.map +1 -1
- package/lib-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.html.de-DE.i18n.data.d.ts +2 -1
- package/lib-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.html.de-DE.i18n.data.js +26 -15
- package/lib-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.html.de-DE.i18n.data.js.map +1 -1
- package/lib-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.html.en-US.i18n.data.d.ts +1 -1
- package/lib-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.html.en-US.i18n.data.js +10 -10
- package/lib-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.html.en-US.i18n.data.js.map +1 -1
- package/lib-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.html.pl-PL.i18n.data.d.ts +2 -1
- package/lib-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.html.pl-PL.i18n.data.js +26 -15
- package/lib-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.html.pl-PL.i18n.data.js.map +1 -1
- package/lib-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.ts.de-DE.i18n.data.d.ts +1 -0
- package/lib-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.ts.de-DE.i18n.data.js +8 -4
- package/lib-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.ts.de-DE.i18n.data.js.map +1 -1
- package/lib-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.ts.pl-PL.i18n.data.d.ts +1 -0
- package/lib-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.ts.pl-PL.i18n.data.js +8 -4
- package/lib-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.ts.pl-PL.i18n.data.js.map +1 -1
- package/lib-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.html.de-DE.i18n.data.d.ts +3 -0
- package/lib-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.html.de-DE.i18n.data.js +20 -5
- package/lib-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.html.de-DE.i18n.data.js.map +1 -1
- package/lib-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.html.en-US.i18n.data.d.ts +2 -0
- package/lib-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.html.en-US.i18n.data.js +8 -0
- package/lib-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.html.en-US.i18n.data.js.map +1 -1
- package/lib-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.html.pl-PL.i18n.data.d.ts +3 -0
- package/lib-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.html.pl-PL.i18n.data.js +20 -5
- package/lib-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.html.pl-PL.i18n.data.js.map +1 -1
- package/lib-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.ts.de-DE.i18n.data.d.ts +2 -0
- package/lib-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.ts.de-DE.i18n.data.js +15 -5
- package/lib-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.ts.de-DE.i18n.data.js.map +1 -1
- package/lib-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.ts.en-US.i18n.data.d.ts +1 -0
- package/lib-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.ts.en-US.i18n.data.js +9 -5
- package/lib-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.ts.en-US.i18n.data.js.map +1 -1
- package/lib-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.ts.pl-PL.i18n.data.d.ts +2 -0
- package/lib-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.ts.pl-PL.i18n.data.js +15 -5
- package/lib-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.ts.pl-PL.i18n.data.js.map +1 -1
- package/lib-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-cover.component.ts.de-DE.i18n.data.d.ts +1 -0
- package/lib-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-cover.component.ts.de-DE.i18n.data.js +2 -1
- package/lib-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-cover.component.ts.de-DE.i18n.data.js.map +1 -1
- package/lib-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-cover.component.ts.pl-PL.i18n.data.d.ts +1 -0
- package/lib-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-cover.component.ts.pl-PL.i18n.data.js +2 -1
- package/lib-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-cover.component.ts.pl-PL.i18n.data.js.map +1 -1
- package/lib-prod/taon-posts/taon-cms-course-backoffice/index.d.ts +1 -1
- package/lib-prod/taon-posts/taon-cms-course-backoffice/index.js +1 -1
- package/lib-prod/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.html.de-DE.i18n.data.d.ts +17 -0
- package/lib-prod/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.html.de-DE.i18n.data.js +19 -0
- package/lib-prod/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.html.de-DE.i18n.data.js.map +1 -0
- package/lib-prod/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.html.en-US.i18n.data.d.ts +16 -0
- package/lib-prod/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.html.en-US.i18n.data.js +17 -0
- package/lib-prod/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.html.en-US.i18n.data.js.map +1 -0
- package/lib-prod/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.html.pl-PL.i18n.data.d.ts +17 -0
- package/lib-prod/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.html.pl-PL.i18n.data.js +19 -0
- package/lib-prod/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.html.pl-PL.i18n.data.js.map +1 -0
- package/lib-prod/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.ts.de-DE.i18n.data.d.ts +8 -0
- package/lib-prod/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.ts.de-DE.i18n.data.js +8 -0
- package/lib-prod/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.ts.de-DE.i18n.data.js.map +1 -0
- package/lib-prod/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.ts.en-US.i18n.data.d.ts +8 -0
- package/lib-prod/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.ts.en-US.i18n.data.js +8 -0
- package/lib-prod/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.ts.en-US.i18n.data.js.map +1 -0
- package/lib-prod/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.ts.pl-PL.i18n.data.d.ts +8 -0
- package/lib-prod/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.ts.pl-PL.i18n.data.js +8 -0
- package/lib-prod/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.ts.pl-PL.i18n.data.js.map +1 -0
- package/lib-prod/taon-posts/taon-cms-post/i18n/taon-cms-post-thumbnail.component.ts.de-DE.i18n.data.d.ts +16 -0
- package/lib-prod/taon-posts/taon-cms-post/i18n/taon-cms-post-thumbnail.component.ts.de-DE.i18n.data.js +14 -0
- package/lib-prod/taon-posts/taon-cms-post/i18n/taon-cms-post-thumbnail.component.ts.de-DE.i18n.data.js.map +1 -0
- package/lib-prod/taon-posts/taon-cms-post/i18n/taon-cms-post-thumbnail.component.ts.en-US.i18n.data.d.ts +15 -0
- package/lib-prod/taon-posts/taon-cms-post/i18n/taon-cms-post-thumbnail.component.ts.en-US.i18n.data.js +13 -0
- package/lib-prod/taon-posts/taon-cms-post/i18n/taon-cms-post-thumbnail.component.ts.en-US.i18n.data.js.map +1 -0
- package/lib-prod/taon-posts/taon-cms-post/i18n/taon-cms-post-thumbnail.component.ts.pl-PL.i18n.data.d.ts +16 -0
- package/lib-prod/taon-posts/taon-cms-post/i18n/taon-cms-post-thumbnail.component.ts.pl-PL.i18n.data.js +14 -0
- package/lib-prod/taon-posts/taon-cms-post/i18n/taon-cms-post-thumbnail.component.ts.pl-PL.i18n.data.js.map +1 -0
- package/lib-prod/taon-posts/taon-cms-post/i18n/taon-cms-post.component.html.de-DE.i18n.data.d.ts +49 -4
- package/lib-prod/taon-posts/taon-cms-post/i18n/taon-cms-post.component.html.de-DE.i18n.data.js +496 -90
- package/lib-prod/taon-posts/taon-cms-post/i18n/taon-cms-post.component.html.de-DE.i18n.data.js.map +1 -1
- package/lib-prod/taon-posts/taon-cms-post/i18n/taon-cms-post.component.html.en-US.i18n.data.d.ts +49 -4
- package/lib-prod/taon-posts/taon-cms-post/i18n/taon-cms-post.component.html.en-US.i18n.data.js +416 -88
- package/lib-prod/taon-posts/taon-cms-post/i18n/taon-cms-post.component.html.en-US.i18n.data.js.map +1 -1
- package/lib-prod/taon-posts/taon-cms-post/i18n/taon-cms-post.component.html.pl-PL.i18n.data.d.ts +49 -4
- package/lib-prod/taon-posts/taon-cms-post/i18n/taon-cms-post.component.html.pl-PL.i18n.data.js +497 -89
- package/lib-prod/taon-posts/taon-cms-post/i18n/taon-cms-post.component.html.pl-PL.i18n.data.js.map +1 -1
- package/lib-prod/taon-posts/taon-cms-post/i18n/taon-cms-post.component.ts.de-DE.i18n.data.d.ts +34 -7
- package/lib-prod/taon-posts/taon-cms-post/i18n/taon-cms-post.component.ts.de-DE.i18n.data.js +203 -39
- package/lib-prod/taon-posts/taon-cms-post/i18n/taon-cms-post.component.ts.de-DE.i18n.data.js.map +1 -1
- package/lib-prod/taon-posts/taon-cms-post/i18n/taon-cms-post.component.ts.en-US.i18n.data.d.ts +32 -1
- package/lib-prod/taon-posts/taon-cms-post/i18n/taon-cms-post.component.ts.en-US.i18n.data.js +166 -39
- package/lib-prod/taon-posts/taon-cms-post/i18n/taon-cms-post.component.ts.en-US.i18n.data.js.map +1 -1
- package/lib-prod/taon-posts/taon-cms-post/i18n/taon-cms-post.component.ts.pl-PL.i18n.data.d.ts +34 -7
- package/lib-prod/taon-posts/taon-cms-post/i18n/taon-cms-post.component.ts.pl-PL.i18n.data.js +206 -42
- package/lib-prod/taon-posts/taon-cms-post/i18n/taon-cms-post.component.ts.pl-PL.i18n.data.js.map +1 -1
- package/lib-prod/taon-posts/taon-cms-post/i18n/taon-cms-post.translation.d.ts +10 -1
- package/lib-prod/taon-posts/taon-cms-post/i18n/taon-cms-post.translation.js.map +1 -1
- package/lib-prod/taon-posts/taon-cms-post/index.d.ts +1 -1
- package/lib-prod/taon-posts/taon-cms-post/index.js +1 -1
- package/lib-prod/taon-posts/taon-cms-post/taon-cms-document-extractor.d.ts +1 -0
- package/lib-prod/taon-posts/taon-cms-post/taon-cms-document-extractor.js +498 -0
- package/lib-prod/taon-posts/taon-cms-post/taon-cms-document-extractor.js.map +1 -0
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- package/lib-prod/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-post-table-actions.directive.ts.de-DE.i18n.data.js +64 -13
- 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
- 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
- package/lib-prod/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-post-table-actions.directive.ts.en-US.i18n.data.js +45 -13
- 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
- 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
- package/lib-prod/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-post-table-actions.directive.ts.pl-PL.i18n.data.js +64 -13
- 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
- package/lib-prod/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.html.de-DE.i18n.data.d.ts +2 -6
- package/lib-prod/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.html.de-DE.i18n.data.js +19 -12
- package/lib-prod/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.html.de-DE.i18n.data.js.map +1 -1
- package/lib-prod/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.html.en-US.i18n.data.js +5 -5
- package/lib-prod/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.html.en-US.i18n.data.js.map +1 -1
- package/lib-prod/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.html.pl-PL.i18n.data.d.ts +2 -6
- package/lib-prod/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.html.pl-PL.i18n.data.js +19 -12
- package/lib-prod/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.html.pl-PL.i18n.data.js.map +1 -1
- package/lib-prod/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.ts.de-DE.i18n.data.d.ts +2 -6
- package/lib-prod/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.ts.de-DE.i18n.data.js +2 -1
- package/lib-prod/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.ts.de-DE.i18n.data.js.map +1 -1
- package/lib-prod/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.ts.pl-PL.i18n.data.d.ts +2 -6
- package/lib-prod/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.ts.pl-PL.i18n.data.js +2 -1
- package/lib-prod/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.ts.pl-PL.i18n.data.js.map +1 -1
- package/lib-prod/taon-posts/taon-cms-posts-backoffice/index.d.ts +1 -1
- package/lib-prod/taon-posts/taon-cms-posts-backoffice/index.js +1 -1
- package/lib-prod/taon-posts/taon-cms-revision-chooser/i18n/taon-cms-revision-chooser.component.html.de-DE.i18n.data.d.ts +7 -2
- package/lib-prod/taon-posts/taon-cms-revision-chooser/i18n/taon-cms-revision-chooser.component.html.de-DE.i18n.data.js +23 -9
- package/lib-prod/taon-posts/taon-cms-revision-chooser/i18n/taon-cms-revision-chooser.component.html.de-DE.i18n.data.js.map +1 -1
- package/lib-prod/taon-posts/taon-cms-revision-chooser/i18n/taon-cms-revision-chooser.component.html.en-US.i18n.data.d.ts +7 -2
- package/lib-prod/taon-posts/taon-cms-revision-chooser/i18n/taon-cms-revision-chooser.component.html.en-US.i18n.data.js +23 -9
- package/lib-prod/taon-posts/taon-cms-revision-chooser/i18n/taon-cms-revision-chooser.component.html.en-US.i18n.data.js.map +1 -1
- package/lib-prod/taon-posts/taon-cms-revision-chooser/i18n/taon-cms-revision-chooser.component.html.pl-PL.i18n.data.d.ts +7 -2
- package/lib-prod/taon-posts/taon-cms-revision-chooser/i18n/taon-cms-revision-chooser.component.html.pl-PL.i18n.data.js +23 -9
- package/lib-prod/taon-posts/taon-cms-revision-chooser/i18n/taon-cms-revision-chooser.component.html.pl-PL.i18n.data.js.map +1 -1
- package/lib-prod/taon-posts/taon-cms-revision-chooser/index.d.ts +1 -1
- package/lib-prod/taon-posts/taon-cms-revision-chooser/index.js +1 -1
- package/lib-prod/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.html.de-DE.i18n.data.d.ts +1 -0
- package/lib-prod/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.html.de-DE.i18n.data.js +10 -5
- package/lib-prod/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.html.de-DE.i18n.data.js.map +1 -1
- package/lib-prod/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.html.en-US.i18n.data.d.ts +1 -0
- package/lib-prod/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.html.en-US.i18n.data.js +9 -5
- package/lib-prod/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.html.en-US.i18n.data.js.map +1 -1
- package/lib-prod/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.html.pl-PL.i18n.data.d.ts +1 -0
- package/lib-prod/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.html.pl-PL.i18n.data.js +10 -5
- package/lib-prod/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.html.pl-PL.i18n.data.js.map +1 -1
- package/lib-prod/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.ts.de-DE.i18n.data.js +2 -2
- package/lib-prod/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.ts.en-US.i18n.data.js +2 -2
- package/lib-prod/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.ts.pl-PL.i18n.data.js +2 -2
- package/lib-prod/taon-posts/taon-related-post-chooser/index.d.ts +1 -1
- package/lib-prod/taon-posts/taon-related-post-chooser/index.js +1 -1
- package/lib-prod.split-namespaces.json +15 -1
- package/package.json +1 -1
- package/scss/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-features.component.scss +27 -0
- 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
- package/scss/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-backoffice.component.scss +3 -0
- package/scss/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/taon-cms-comments-blocked-users.component.scss +3 -0
- package/scss/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/taon-cms-comments-filters-settings.component.scss +3 -0
- package/scss/lib/taon-cms-comment/taon-cms-comments.component.scss +28 -0
- package/scss/lib/taon-posts/taon-cms-post/taon-cms-post.component.scss +115 -0
- package/ts-source/browser-code/build-info._auto-generated_.ts +1 -1
- package/ts-source/browser-code/index._auto-generated_.ts +33 -0
- package/ts-source/browser-code/migrations/1793664000000_postVersionLinks.ts +40 -0
- package/ts-source/browser-code/migrations/migrations_index._auto-generated_.ts +3 -0
- package/ts-source/browser-code/taon-cms-assets-backoffice/taon-cms-asset-preview.component.html +1 -1
- package/ts-source/browser-code/taon-cms-backoffice/i18n/taon-cms-backoffice.component.html.de-DE.i18n.data.ts +5 -0
- package/ts-source/browser-code/taon-cms-backoffice/i18n/taon-cms-backoffice.component.html.de-DE.po +1 -0
- package/ts-source/browser-code/taon-cms-backoffice/i18n/taon-cms-backoffice.component.html.en-US.i18n.data.ts +5 -0
- package/ts-source/browser-code/taon-cms-backoffice/i18n/taon-cms-backoffice.component.html.en-US.po +1 -0
- package/ts-source/browser-code/taon-cms-backoffice/i18n/taon-cms-backoffice.component.html.pl-PL.i18n.data.ts +5 -0
- package/ts-source/browser-code/taon-cms-backoffice/i18n/taon-cms-backoffice.component.html.pl-PL.po +1 -0
- package/ts-source/browser-code/taon-cms-backoffice/i18n/taon-cms-backoffice.routes.ts.de-DE.i18n.data.ts +18 -5
- package/ts-source/browser-code/taon-cms-backoffice/i18n/taon-cms-backoffice.routes.ts.de-DE.po +13 -5
- package/ts-source/browser-code/taon-cms-backoffice/i18n/taon-cms-backoffice.routes.ts.en-US.i18n.data.ts +15 -5
- package/ts-source/browser-code/taon-cms-backoffice/i18n/taon-cms-backoffice.routes.ts.en-US.po +12 -4
- package/ts-source/browser-code/taon-cms-backoffice/i18n/taon-cms-backoffice.routes.ts.pl-PL.i18n.data.ts +17 -5
- package/ts-source/browser-code/taon-cms-backoffice/i18n/taon-cms-backoffice.routes.ts.pl-PL.po +12 -4
- package/ts-source/browser-code/taon-cms-backoffice/taon-cms-backoffice.routes.ts +20 -0
- 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
- package/ts-source/browser-code/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.html.de-DE.po +30 -0
- 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
- package/ts-source/browser-code/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.html.en-US.po +30 -0
- 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
- package/ts-source/browser-code/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.html.pl-PL.po +30 -0
- 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
- package/ts-source/browser-code/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.ts.de-DE.po +41 -0
- 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
- package/ts-source/browser-code/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.ts.en-US.po +41 -0
- 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
- package/ts-source/browser-code/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.ts.pl-PL.po +41 -0
- package/ts-source/browser-code/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.translation.ts +21 -0
- package/ts-source/browser-code/taon-cms-backoffice/taon-cms-website-features/index.ts +13 -0
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- package/ts-source/browser-code/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.constants.ts +25 -0
- package/ts-source/browser-code/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.controller.ts +59 -0
- 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
- package/ts-source/browser-code/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.models.ts +23 -0
- package/ts-source/browser-code/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.provider.ts +30 -0
- package/ts-source/browser-code/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.utils.ts +26 -0
- package/ts-source/browser-code/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.validators.ts +26 -0
- package/ts-source/browser-code/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-features.component.html +58 -0
- package/ts-source/browser-code/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-features.component.scss +38 -0
- package/ts-source/browser-code/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-features.component.ts +127 -0
- package/ts-source/browser-code/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-features.models.ts +13 -0
- package/ts-source/browser-code/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-features.routes.ts +21 -0
- package/ts-source/browser-code/taon-cms-comment/i18n/taon-cms-comment.controller.ts.de-DE.i18n.data.ts +145 -0
- package/ts-source/browser-code/taon-cms-comment/i18n/taon-cms-comment.controller.ts.de-DE.po +77 -0
- package/ts-source/browser-code/taon-cms-comment/i18n/taon-cms-comment.controller.ts.en-US.i18n.data.ts +124 -0
- package/ts-source/browser-code/taon-cms-comment/i18n/taon-cms-comment.controller.ts.en-US.po +77 -0
- package/ts-source/browser-code/taon-cms-comment/i18n/taon-cms-comment.controller.ts.pl-PL.i18n.data.ts +145 -0
- package/ts-source/browser-code/taon-cms-comment/i18n/taon-cms-comment.controller.ts.pl-PL.po +77 -0
- package/ts-source/browser-code/taon-cms-comment/i18n/taon-cms-comment.translation.ts +24 -0
- package/ts-source/browser-code/taon-cms-comment/i18n/taon-cms-comments.component.html.de-DE.i18n.data.ts +122 -0
- package/ts-source/browser-code/taon-cms-comment/i18n/taon-cms-comments.component.html.de-DE.po +64 -0
- package/ts-source/browser-code/taon-cms-comment/i18n/taon-cms-comments.component.html.en-US.i18n.data.ts +105 -0
- package/ts-source/browser-code/taon-cms-comment/i18n/taon-cms-comments.component.html.en-US.po +64 -0
- package/ts-source/browser-code/taon-cms-comment/i18n/taon-cms-comments.component.html.pl-PL.i18n.data.ts +122 -0
- package/ts-source/browser-code/taon-cms-comment/i18n/taon-cms-comments.component.html.pl-PL.po +64 -0
- package/ts-source/browser-code/taon-cms-comment/i18n/taon-cms-comments.component.ts.de-DE.i18n.data.ts +53 -0
- package/ts-source/browser-code/taon-cms-comment/i18n/taon-cms-comments.component.ts.de-DE.po +25 -0
- package/ts-source/browser-code/taon-cms-comment/i18n/taon-cms-comments.component.ts.en-US.i18n.data.ts +48 -0
- package/ts-source/browser-code/taon-cms-comment/i18n/taon-cms-comments.component.ts.en-US.po +25 -0
- package/ts-source/browser-code/taon-cms-comment/i18n/taon-cms-comments.component.ts.pl-PL.i18n.data.ts +53 -0
- package/ts-source/browser-code/taon-cms-comment/i18n/taon-cms-comments.component.ts.pl-PL.po +25 -0
- package/ts-source/browser-code/taon-cms-comment/index.ts +5 -0
- package/ts-source/browser-code/taon-cms-comment/taon-cms-comment-api.service.ts +97 -4
- package/ts-source/browser-code/taon-cms-comment/taon-cms-comment-blocked-phrase.entity.ts +23 -0
- package/ts-source/browser-code/taon-cms-comment/taon-cms-comment-blocked-user.entity.ts +22 -0
- package/ts-source/browser-code/taon-cms-comment/taon-cms-comment-spam-report.entity.ts +23 -0
- package/ts-source/browser-code/taon-cms-comment/taon-cms-comment-vote.entity.ts +24 -0
- package/ts-source/browser-code/taon-cms-comment/taon-cms-comment.abstract.context.ts +11 -1
- package/ts-source/browser-code/taon-cms-comment/taon-cms-comment.controller.ts +134 -8
- package/ts-source/browser-code/taon-cms-comment/taon-cms-comment.entity.ts +1 -1
- 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
- package/ts-source/browser-code/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.component.ts.de-DE.po +5 -0
- 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
- package/ts-source/browser-code/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.component.ts.en-US.po +5 -0
- 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
- package/ts-source/browser-code/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.component.ts.pl-PL.po +5 -0
- 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
- package/ts-source/browser-code/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.routes.ts.de-DE.po +17 -0
- 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
- package/ts-source/browser-code/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.routes.ts.en-US.po +17 -0
- 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
- package/ts-source/browser-code/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.routes.ts.pl-PL.po +17 -0
- package/ts-source/browser-code/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.translation.ts +21 -0
- package/ts-source/browser-code/taon-cms-comment/taon-cms-comments-backoffice/index.ts +13 -0
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- package/ts-source/browser-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/index.ts +13 -0
- 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
- 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
- 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
- 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
- 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
- package/ts-source/browser-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-backoffice.component.html +14 -0
- package/ts-source/browser-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-backoffice.component.scss +14 -0
- package/ts-source/browser-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-backoffice.component.ts +28 -0
- package/ts-source/browser-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-backoffice.models.ts +13 -0
- package/ts-source/browser-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-backoffice.routes.ts +51 -0
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- package/ts-source/browser-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/index.ts +13 -0
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- package/ts-source/browser-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/index.ts +13 -0
- 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
- 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
- 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
- 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
- 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
- package/ts-source/browser-code/taon-cms-comment/taon-cms-comments.component.html +108 -0
- package/ts-source/browser-code/taon-cms-comment/taon-cms-comments.component.scss +39 -0
- package/ts-source/browser-code/taon-cms-comment/taon-cms-comments.component.ts +141 -0
- package/ts-source/browser-code/taon-cms-content/i18n/taon-cms-content-storage.controller.ts.de-DE.i18n.data.ts +1 -1
- package/ts-source/browser-code/taon-cms-content/i18n/taon-cms-content-storage.controller.ts.de-DE.po +1 -1
- package/ts-source/browser-code/taon-cms-content/i18n/taon-cms-content-storage.controller.ts.en-US.i18n.data.ts +1 -1
- package/ts-source/browser-code/taon-cms-content/i18n/taon-cms-content-storage.controller.ts.en-US.po +1 -1
- package/ts-source/browser-code/taon-cms-content/i18n/taon-cms-content-storage.controller.ts.pl-PL.i18n.data.ts +1 -1
- package/ts-source/browser-code/taon-cms-content/i18n/taon-cms-content-storage.controller.ts.pl-PL.po +1 -1
- package/ts-source/browser-code/taon-cms-content/i18n/taon-cms-content.controller.ts.de-DE.i18n.data.ts +28 -6
- package/ts-source/browser-code/taon-cms-content/i18n/taon-cms-content.controller.ts.de-DE.po +16 -6
- package/ts-source/browser-code/taon-cms-content/i18n/taon-cms-content.controller.ts.en-US.i18n.data.ts +24 -6
- package/ts-source/browser-code/taon-cms-content/i18n/taon-cms-content.controller.ts.en-US.po +16 -6
- package/ts-source/browser-code/taon-cms-content/i18n/taon-cms-content.controller.ts.pl-PL.i18n.data.ts +28 -6
- package/ts-source/browser-code/taon-cms-content/i18n/taon-cms-content.controller.ts.pl-PL.po +16 -6
- package/ts-source/browser-code/taon-cms-content/taon-cms-content-api.service.ts +60 -3
- package/ts-source/browser-code/taon-cms-content/taon-cms-content-storage.controller.ts +16 -1
- package/ts-source/browser-code/taon-cms-content/taon-cms-content.controller.ts +88 -2
- package/ts-source/browser-code/taon-cms-content/taon-cms-content.entity.ts +3 -0
- package/ts-source/browser-code/taon-cms-content/taon-cms-content.models.ts +39 -0
- package/ts-source/browser-code/taon-cms-content/taon-cms-content.repository.ts +82 -4
- package/ts-source/browser-code/taon-cms-content/taon-cms-content.utils.ts +6 -0
- package/ts-source/browser-code/taon-cms-content/taon-cms-content.validation.ts +4 -0
- package/ts-source/browser-code/taon-cms-content-revision/taon-cms-content-revision.repository.ts +4 -0
- 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
- package/ts-source/browser-code/taon-cms-taxonomy-backoffice/i18n/taon-cms-taxonomy-quick-create-dialog.component.ts.de-DE.po +7 -7
- 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
- package/ts-source/browser-code/taon-cms-taxonomy-backoffice/i18n/taon-cms-taxonomy-quick-create-dialog.component.ts.pl-PL.po +7 -7
- package/ts-source/browser-code/taon-cms.abstract.context.ts +2 -0
- 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
- package/ts-source/browser-code/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.html.de-DE.po +18 -18
- 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
- package/ts-source/browser-code/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.html.en-US.po +10 -10
- 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
- package/ts-source/browser-code/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.html.pl-PL.po +18 -18
- 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
- package/ts-source/browser-code/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.ts.de-DE.po +4 -4
- 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
- package/ts-source/browser-code/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.ts.pl-PL.po +4 -4
- 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
- package/ts-source/browser-code/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.html.de-DE.po +12 -4
- 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
- package/ts-source/browser-code/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.html.en-US.po +8 -0
- 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
- package/ts-source/browser-code/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.html.pl-PL.po +12 -4
- 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
- package/ts-source/browser-code/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.ts.de-DE.po +14 -10
- 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
- package/ts-source/browser-code/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.ts.en-US.po +9 -5
- 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
- package/ts-source/browser-code/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.ts.pl-PL.po +14 -10
- 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
- package/ts-source/browser-code/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-cover.component.ts.de-DE.po +1 -1
- 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
- package/ts-source/browser-code/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-cover.component.ts.pl-PL.po +1 -1
- package/ts-source/browser-code/taon-posts/taon-cms-course-backoffice/taon-cms-course-backoffice.component.html +3 -2
- package/ts-source/browser-code/taon-posts/taon-cms-course-backoffice/taon-cms-course-contents.component.html +23 -0
- package/ts-source/browser-code/taon-posts/taon-cms-course-backoffice/taon-cms-course-contents.component.ts +22 -1
- 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
- package/ts-source/browser-code/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.html.de-DE.po +13 -0
- 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
- package/ts-source/browser-code/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.html.en-US.po +13 -0
- 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
- package/ts-source/browser-code/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.html.pl-PL.po +13 -0
- 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
- package/ts-source/browser-code/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.ts.de-DE.po +5 -0
- 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
- package/ts-source/browser-code/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.ts.en-US.po +5 -0
- 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
- package/ts-source/browser-code/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.ts.pl-PL.po +5 -0
- package/ts-source/browser-code/taon-posts/taon-cms-post/i18n/taon-cms-post-thumbnail.component.ts.de-DE.i18n.data.ts +29 -0
- package/ts-source/browser-code/taon-posts/taon-cms-post/i18n/taon-cms-post-thumbnail.component.ts.de-DE.po +9 -0
- package/ts-source/browser-code/taon-posts/taon-cms-post/i18n/taon-cms-post-thumbnail.component.ts.en-US.i18n.data.ts +28 -0
- package/ts-source/browser-code/taon-posts/taon-cms-post/i18n/taon-cms-post-thumbnail.component.ts.en-US.po +9 -0
- package/ts-source/browser-code/taon-posts/taon-cms-post/i18n/taon-cms-post-thumbnail.component.ts.pl-PL.i18n.data.ts +29 -0
- package/ts-source/browser-code/taon-posts/taon-cms-post/i18n/taon-cms-post-thumbnail.component.ts.pl-PL.po +9 -0
- package/ts-source/browser-code/taon-posts/taon-cms-post/i18n/taon-cms-post.component.html.de-DE.i18n.data.ts +544 -93
- package/ts-source/browser-code/taon-posts/taon-cms-post/i18n/taon-cms-post.component.html.de-DE.po +318 -104
- package/ts-source/browser-code/taon-posts/taon-cms-post/i18n/taon-cms-post.component.html.en-US.i18n.data.ts +464 -91
- package/ts-source/browser-code/taon-posts/taon-cms-post/i18n/taon-cms-post.component.html.en-US.po +301 -87
- package/ts-source/browser-code/taon-posts/taon-cms-post/i18n/taon-cms-post.component.html.pl-PL.i18n.data.ts +545 -92
- package/ts-source/browser-code/taon-posts/taon-cms-post/i18n/taon-cms-post.component.html.pl-PL.po +317 -103
- package/ts-source/browser-code/taon-posts/taon-cms-post/i18n/taon-cms-post.component.ts.de-DE.i18n.data.ts +235 -40
- package/ts-source/browser-code/taon-posts/taon-cms-post/i18n/taon-cms-post.component.ts.de-DE.po +168 -43
- package/ts-source/browser-code/taon-posts/taon-cms-post/i18n/taon-cms-post.component.ts.en-US.i18n.data.ts +198 -40
- package/ts-source/browser-code/taon-posts/taon-cms-post/i18n/taon-cms-post.component.ts.en-US.po +164 -39
- package/ts-source/browser-code/taon-posts/taon-cms-post/i18n/taon-cms-post.component.ts.pl-PL.i18n.data.ts +238 -43
- package/ts-source/browser-code/taon-posts/taon-cms-post/i18n/taon-cms-post.component.ts.pl-PL.po +170 -45
- package/ts-source/browser-code/taon-posts/taon-cms-post/i18n/taon-cms-post.translation.ts +10 -1
- package/ts-source/browser-code/taon-posts/taon-cms-post/taon-cms-document-extractor.ts +45 -0
- package/ts-source/browser-code/taon-posts/taon-cms-post/taon-cms-post-choice-dialog.component.html +31 -0
- package/ts-source/browser-code/taon-posts/taon-cms-post/taon-cms-post-choice-dialog.component.ts +46 -0
- package/ts-source/browser-code/taon-posts/taon-cms-post/taon-cms-post-thumbnail.component.ts +71 -0
- package/ts-source/browser-code/taon-posts/taon-cms-post/taon-cms-post.component.html +1115 -603
- package/ts-source/browser-code/taon-posts/taon-cms-post/taon-cms-post.component.scss +115 -0
- package/ts-source/browser-code/taon-posts/taon-cms-post/taon-cms-post.component.ts +882 -53
- 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
- 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
- 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
- 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
- package/ts-source/browser-code/taon-posts/taon-cms-post-details-page/taon-cms-post-details-page.component.ts +1 -0
- 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
- package/ts-source/browser-code/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-post-table-actions.directive.ts.de-DE.po +46 -23
- 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
- package/ts-source/browser-code/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-post-table-actions.directive.ts.en-US.po +36 -13
- 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
- package/ts-source/browser-code/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-post-table-actions.directive.ts.pl-PL.po +46 -23
- 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
- package/ts-source/browser-code/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.html.de-DE.po +11 -11
- 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
- package/ts-source/browser-code/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.html.en-US.po +4 -4
- 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
- package/ts-source/browser-code/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.html.pl-PL.po +11 -11
- 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
- package/ts-source/browser-code/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.ts.de-DE.po +1 -1
- 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
- package/ts-source/browser-code/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.ts.pl-PL.po +1 -1
- package/ts-source/browser-code/taon-posts/taon-cms-posts-backoffice/taon-cms-post-table-actions.directive.ts +86 -18
- 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
- package/ts-source/browser-code/taon-posts/taon-cms-revision-chooser/i18n/taon-cms-revision-chooser.component.html.de-DE.po +14 -8
- 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
- package/ts-source/browser-code/taon-posts/taon-cms-revision-chooser/i18n/taon-cms-revision-chooser.component.html.en-US.po +14 -8
- 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
- package/ts-source/browser-code/taon-posts/taon-cms-revision-chooser/i18n/taon-cms-revision-chooser.component.html.pl-PL.po +14 -8
- 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
- package/ts-source/browser-code/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.html.de-DE.po +8 -4
- 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
- package/ts-source/browser-code/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.html.en-US.po +8 -4
- 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
- package/ts-source/browser-code/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.html.pl-PL.po +8 -4
- 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
- package/ts-source/browser-code/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.ts.de-DE.po +2 -2
- 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
- package/ts-source/browser-code/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.ts.en-US.po +2 -2
- 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
- package/ts-source/browser-code/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.ts.pl-PL.po +2 -2
- package/ts-source/browser-code/taon-posts/taon-related-post-chooser/taon-related-post-chooser.component.html +3 -3
- package/ts-source/browser-code/taon-posts/taon-related-post-chooser/taon-related-post-chooser.component.ts +8 -1
- package/ts-source/browser-code-prod/build-info._auto-generated_.ts +1 -1
- package/ts-source/browser-code-prod/index._auto-generated_.ts +33 -0
- package/ts-source/browser-code-prod/migrations/1793664000000_postVersionLinks.split-namespaces.json +4 -0
- package/ts-source/browser-code-prod/migrations/1793664000000_postVersionLinks.ts +40 -0
- package/ts-source/browser-code-prod/migrations/migrations_index._auto-generated_.ts +3 -0
- package/ts-source/browser-code-prod/taon-cms-assets-backoffice/i18n/taon-cms-assets-backoffice.translation.ts +1 -1
- package/ts-source/browser-code-prod/taon-cms-assets-backoffice/taon-cms-asset-preview.component.html +1 -1
- package/ts-source/browser-code-prod/taon-cms-backoffice/i18n/taon-cms-backoffice.component.html.de-DE.i18n.data.ts +5 -0
- package/ts-source/browser-code-prod/taon-cms-backoffice/i18n/taon-cms-backoffice.component.html.de-DE.po +1 -0
- package/ts-source/browser-code-prod/taon-cms-backoffice/i18n/taon-cms-backoffice.component.html.en-US.i18n.data.ts +5 -0
- package/ts-source/browser-code-prod/taon-cms-backoffice/i18n/taon-cms-backoffice.component.html.en-US.po +1 -0
- package/ts-source/browser-code-prod/taon-cms-backoffice/i18n/taon-cms-backoffice.component.html.pl-PL.i18n.data.ts +5 -0
- package/ts-source/browser-code-prod/taon-cms-backoffice/i18n/taon-cms-backoffice.component.html.pl-PL.po +1 -0
- package/ts-source/browser-code-prod/taon-cms-backoffice/i18n/taon-cms-backoffice.routes.ts.de-DE.i18n.data.ts +18 -5
- package/ts-source/browser-code-prod/taon-cms-backoffice/i18n/taon-cms-backoffice.routes.ts.de-DE.po +13 -5
- package/ts-source/browser-code-prod/taon-cms-backoffice/i18n/taon-cms-backoffice.routes.ts.en-US.i18n.data.ts +15 -5
- package/ts-source/browser-code-prod/taon-cms-backoffice/i18n/taon-cms-backoffice.routes.ts.en-US.po +12 -4
- package/ts-source/browser-code-prod/taon-cms-backoffice/i18n/taon-cms-backoffice.routes.ts.pl-PL.i18n.data.ts +17 -5
- package/ts-source/browser-code-prod/taon-cms-backoffice/i18n/taon-cms-backoffice.routes.ts.pl-PL.po +12 -4
- package/ts-source/browser-code-prod/taon-cms-backoffice/i18n/taon-cms-backoffice.translation.ts +1 -1
- package/ts-source/browser-code-prod/taon-cms-backoffice/taon-cms-backoffice.routes.ts +20 -0
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- package/ts-source/browser-code-prod/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.translation.split-namespaces.json +4 -0
- package/ts-source/browser-code-prod/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.translation.ts +21 -0
- package/ts-source/browser-code-prod/taon-cms-backoffice/taon-cms-website-features/index.split-namespaces.json +4 -0
- package/ts-source/browser-code-prod/taon-cms-backoffice/taon-cms-website-features/index.ts +13 -0
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- package/ts-source/browser-code-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-features.component.html +58 -0
- package/ts-source/browser-code-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-features.component.scss +38 -0
- package/ts-source/browser-code-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-features.component.split-namespaces.json +4 -0
- package/ts-source/browser-code-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-features.component.ts +127 -0
- package/ts-source/browser-code-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-features.models.split-namespaces.json +4 -0
- package/ts-source/browser-code-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-features.models.ts +12 -0
- package/ts-source/browser-code-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-features.routes.split-namespaces.json +4 -0
- package/ts-source/browser-code-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-features.routes.ts +21 -0
- package/ts-source/browser-code-prod/taon-cms-category/i18n/taon-cms-category.translation.ts +1 -1
- package/ts-source/browser-code-prod/taon-cms-comment/i18n/taon-cms-comment.controller.ts.de-DE.i18n.data.ts +145 -0
- package/ts-source/browser-code-prod/taon-cms-comment/i18n/taon-cms-comment.controller.ts.de-DE.po +77 -0
- package/ts-source/browser-code-prod/taon-cms-comment/i18n/taon-cms-comment.controller.ts.en-US.i18n.data.ts +124 -0
- package/ts-source/browser-code-prod/taon-cms-comment/i18n/taon-cms-comment.controller.ts.en-US.po +77 -0
- package/ts-source/browser-code-prod/taon-cms-comment/i18n/taon-cms-comment.controller.ts.pl-PL.i18n.data.ts +145 -0
- package/ts-source/browser-code-prod/taon-cms-comment/i18n/taon-cms-comment.controller.ts.pl-PL.po +77 -0
- package/ts-source/browser-code-prod/taon-cms-comment/i18n/taon-cms-comment.translation.split-namespaces.json +4 -0
- package/ts-source/browser-code-prod/taon-cms-comment/i18n/taon-cms-comment.translation.ts +24 -0
- package/ts-source/browser-code-prod/taon-cms-comment/i18n/taon-cms-comments.component.html.de-DE.i18n.data.ts +122 -0
- package/ts-source/browser-code-prod/taon-cms-comment/i18n/taon-cms-comments.component.html.de-DE.po +64 -0
- package/ts-source/browser-code-prod/taon-cms-comment/i18n/taon-cms-comments.component.html.en-US.i18n.data.ts +105 -0
- package/ts-source/browser-code-prod/taon-cms-comment/i18n/taon-cms-comments.component.html.en-US.po +64 -0
- package/ts-source/browser-code-prod/taon-cms-comment/i18n/taon-cms-comments.component.html.pl-PL.i18n.data.ts +122 -0
- package/ts-source/browser-code-prod/taon-cms-comment/i18n/taon-cms-comments.component.html.pl-PL.po +64 -0
- package/ts-source/browser-code-prod/taon-cms-comment/i18n/taon-cms-comments.component.ts.de-DE.i18n.data.ts +53 -0
- package/ts-source/browser-code-prod/taon-cms-comment/i18n/taon-cms-comments.component.ts.de-DE.po +25 -0
- package/ts-source/browser-code-prod/taon-cms-comment/i18n/taon-cms-comments.component.ts.en-US.i18n.data.ts +48 -0
- package/ts-source/browser-code-prod/taon-cms-comment/i18n/taon-cms-comments.component.ts.en-US.po +25 -0
- package/ts-source/browser-code-prod/taon-cms-comment/i18n/taon-cms-comments.component.ts.pl-PL.i18n.data.ts +53 -0
- package/ts-source/browser-code-prod/taon-cms-comment/i18n/taon-cms-comments.component.ts.pl-PL.po +25 -0
- package/ts-source/browser-code-prod/taon-cms-comment/index.ts +5 -0
- package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comment-api.service.ts +97 -4
- package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comment-blocked-phrase.entity.split-namespaces.json +4 -0
- package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comment-blocked-phrase.entity.ts +23 -0
- package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comment-blocked-user.entity.split-namespaces.json +4 -0
- package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comment-blocked-user.entity.ts +22 -0
- package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comment-spam-report.entity.split-namespaces.json +4 -0
- package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comment-spam-report.entity.ts +23 -0
- package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comment-vote.entity.split-namespaces.json +4 -0
- package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comment-vote.entity.ts +24 -0
- package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comment.abstract.context.ts +11 -1
- package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comment.controller.ts +134 -8
- package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comment.entity.ts +1 -1
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.translation.split-namespaces.json +4 -0
- package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.translation.ts +21 -0
- package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/index.split-namespaces.json +4 -0
- package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/index.ts +13 -0
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/index.ts +13 -0
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-backoffice.component.html +14 -0
- package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-backoffice.component.scss +14 -0
- package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-backoffice.component.split-namespaces.json +4 -0
- package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-backoffice.component.ts +28 -0
- package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-backoffice.models.split-namespaces.json +4 -0
- package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-backoffice.models.ts +12 -0
- package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-backoffice.routes.split-namespaces.json +4 -0
- package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-backoffice.routes.ts +51 -0
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/index.split-namespaces.json +4 -0
- package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/index.ts +13 -0
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/index.split-namespaces.json +4 -0
- package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/index.ts +13 -0
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments.component.html +108 -0
- package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments.component.scss +39 -0
- package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments.component.split-namespaces.json +4 -0
- package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comments.component.ts +141 -0
- package/ts-source/browser-code-prod/taon-cms-content/i18n/taon-cms-content-storage.controller.ts.de-DE.i18n.data.ts +1 -1
- package/ts-source/browser-code-prod/taon-cms-content/i18n/taon-cms-content-storage.controller.ts.de-DE.po +1 -1
- package/ts-source/browser-code-prod/taon-cms-content/i18n/taon-cms-content-storage.controller.ts.en-US.i18n.data.ts +1 -1
- package/ts-source/browser-code-prod/taon-cms-content/i18n/taon-cms-content-storage.controller.ts.en-US.po +1 -1
- package/ts-source/browser-code-prod/taon-cms-content/i18n/taon-cms-content-storage.controller.ts.pl-PL.i18n.data.ts +1 -1
- package/ts-source/browser-code-prod/taon-cms-content/i18n/taon-cms-content-storage.controller.ts.pl-PL.po +1 -1
- package/ts-source/browser-code-prod/taon-cms-content/i18n/taon-cms-content.controller.ts.de-DE.i18n.data.ts +28 -6
- package/ts-source/browser-code-prod/taon-cms-content/i18n/taon-cms-content.controller.ts.de-DE.po +16 -6
- package/ts-source/browser-code-prod/taon-cms-content/i18n/taon-cms-content.controller.ts.en-US.i18n.data.ts +24 -6
- package/ts-source/browser-code-prod/taon-cms-content/i18n/taon-cms-content.controller.ts.en-US.po +16 -6
- package/ts-source/browser-code-prod/taon-cms-content/i18n/taon-cms-content.controller.ts.pl-PL.i18n.data.ts +28 -6
- package/ts-source/browser-code-prod/taon-cms-content/i18n/taon-cms-content.controller.ts.pl-PL.po +16 -6
- package/ts-source/browser-code-prod/taon-cms-content/i18n/taon-cms-content.translation.ts +1 -1
- package/ts-source/browser-code-prod/taon-cms-content/taon-cms-content-api.service.ts +60 -3
- package/ts-source/browser-code-prod/taon-cms-content/taon-cms-content-storage.controller.ts +16 -1
- package/ts-source/browser-code-prod/taon-cms-content/taon-cms-content.controller.ts +88 -2
- package/ts-source/browser-code-prod/taon-cms-content/taon-cms-content.entity.ts +3 -0
- package/ts-source/browser-code-prod/taon-cms-content/taon-cms-content.models.ts +39 -0
- package/ts-source/browser-code-prod/taon-cms-content/taon-cms-content.repository.ts +82 -4
- package/ts-source/browser-code-prod/taon-cms-content/taon-cms-content.utils.split-namespaces.json +3 -1
- package/ts-source/browser-code-prod/taon-cms-content/taon-cms-content.utils.ts +6 -0
- package/ts-source/browser-code-prod/taon-cms-content/taon-cms-content.validation.ts +4 -0
- package/ts-source/browser-code-prod/taon-cms-content-revision/taon-cms-content-revision.repository.ts +4 -0
- package/ts-source/browser-code-prod/taon-cms-tag/i18n/taon-cms-tag.translation.ts +1 -1
- package/ts-source/browser-code-prod/taon-cms-taxonomy-backoffice/i18n/taon-cms-taxonomy-backoffice.translation.ts +1 -1
- 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
- package/ts-source/browser-code-prod/taon-cms-taxonomy-backoffice/i18n/taon-cms-taxonomy-quick-create-dialog.component.ts.de-DE.po +7 -7
- 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
- package/ts-source/browser-code-prod/taon-cms-taxonomy-backoffice/i18n/taon-cms-taxonomy-quick-create-dialog.component.ts.pl-PL.po +7 -7
- package/ts-source/browser-code-prod/taon-cms.abstract.context.ts +2 -0
- 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
- package/ts-source/browser-code-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.html.de-DE.po +18 -18
- 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
- package/ts-source/browser-code-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.html.en-US.po +10 -10
- 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
- package/ts-source/browser-code-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.html.pl-PL.po +18 -18
- 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
- package/ts-source/browser-code-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.ts.de-DE.po +4 -4
- 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
- package/ts-source/browser-code-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.ts.pl-PL.po +4 -4
- package/ts-source/browser-code-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.translation.ts +1 -1
- 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
- package/ts-source/browser-code-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.html.de-DE.po +12 -4
- 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
- package/ts-source/browser-code-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.html.en-US.po +8 -0
- 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
- package/ts-source/browser-code-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.html.pl-PL.po +12 -4
- 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
- package/ts-source/browser-code-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.ts.de-DE.po +14 -10
- 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
- package/ts-source/browser-code-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.ts.en-US.po +9 -5
- 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
- package/ts-source/browser-code-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.ts.pl-PL.po +14 -10
- 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
- package/ts-source/browser-code-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-cover.component.ts.de-DE.po +1 -1
- 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
- package/ts-source/browser-code-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-cover.component.ts.pl-PL.po +1 -1
- package/ts-source/browser-code-prod/taon-posts/taon-cms-course-backoffice/taon-cms-course-backoffice.component.html +3 -2
- package/ts-source/browser-code-prod/taon-posts/taon-cms-course-backoffice/taon-cms-course-contents.component.html +23 -0
- package/ts-source/browser-code-prod/taon-posts/taon-cms-course-backoffice/taon-cms-course-contents.component.ts +22 -1
- 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
- package/ts-source/browser-code-prod/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.html.de-DE.po +13 -0
- 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
- package/ts-source/browser-code-prod/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.html.en-US.po +13 -0
- 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
- package/ts-source/browser-code-prod/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.html.pl-PL.po +13 -0
- 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
- package/ts-source/browser-code-prod/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.ts.de-DE.po +5 -0
- 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
- package/ts-source/browser-code-prod/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.ts.en-US.po +5 -0
- 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
- package/ts-source/browser-code-prod/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.ts.pl-PL.po +5 -0
- 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
- package/ts-source/browser-code-prod/taon-posts/taon-cms-post/i18n/taon-cms-post-thumbnail.component.ts.de-DE.po +9 -0
- 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
- package/ts-source/browser-code-prod/taon-posts/taon-cms-post/i18n/taon-cms-post-thumbnail.component.ts.en-US.po +9 -0
- 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
- package/ts-source/browser-code-prod/taon-posts/taon-cms-post/i18n/taon-cms-post-thumbnail.component.ts.pl-PL.po +9 -0
- package/ts-source/browser-code-prod/taon-posts/taon-cms-post/i18n/taon-cms-post.component.html.de-DE.i18n.data.ts +544 -93
- package/ts-source/browser-code-prod/taon-posts/taon-cms-post/i18n/taon-cms-post.component.html.de-DE.po +318 -104
- package/ts-source/browser-code-prod/taon-posts/taon-cms-post/i18n/taon-cms-post.component.html.en-US.i18n.data.ts +464 -91
- package/ts-source/browser-code-prod/taon-posts/taon-cms-post/i18n/taon-cms-post.component.html.en-US.po +301 -87
- package/ts-source/browser-code-prod/taon-posts/taon-cms-post/i18n/taon-cms-post.component.html.pl-PL.i18n.data.ts +545 -92
- package/ts-source/browser-code-prod/taon-posts/taon-cms-post/i18n/taon-cms-post.component.html.pl-PL.po +317 -103
- package/ts-source/browser-code-prod/taon-posts/taon-cms-post/i18n/taon-cms-post.component.ts.de-DE.i18n.data.ts +235 -40
- package/ts-source/browser-code-prod/taon-posts/taon-cms-post/i18n/taon-cms-post.component.ts.de-DE.po +168 -43
- package/ts-source/browser-code-prod/taon-posts/taon-cms-post/i18n/taon-cms-post.component.ts.en-US.i18n.data.ts +198 -40
- package/ts-source/browser-code-prod/taon-posts/taon-cms-post/i18n/taon-cms-post.component.ts.en-US.po +164 -39
- package/ts-source/browser-code-prod/taon-posts/taon-cms-post/i18n/taon-cms-post.component.ts.pl-PL.i18n.data.ts +238 -43
- package/ts-source/browser-code-prod/taon-posts/taon-cms-post/i18n/taon-cms-post.component.ts.pl-PL.po +170 -45
- package/ts-source/browser-code-prod/taon-posts/taon-cms-post/i18n/taon-cms-post.translation.ts +11 -2
- package/ts-source/browser-code-prod/taon-posts/taon-cms-post/taon-cms-document-extractor.split-namespaces.json +4 -0
- package/ts-source/browser-code-prod/taon-posts/taon-cms-post/taon-cms-document-extractor.ts +45 -0
- package/ts-source/browser-code-prod/taon-posts/taon-cms-post/taon-cms-post-choice-dialog.component.html +31 -0
- package/ts-source/browser-code-prod/taon-posts/taon-cms-post/taon-cms-post-choice-dialog.component.split-namespaces.json +4 -0
- package/ts-source/browser-code-prod/taon-posts/taon-cms-post/taon-cms-post-choice-dialog.component.ts +46 -0
- package/ts-source/browser-code-prod/taon-posts/taon-cms-post/taon-cms-post-thumbnail.component.split-namespaces.json +4 -0
- package/ts-source/browser-code-prod/taon-posts/taon-cms-post/taon-cms-post-thumbnail.component.ts +71 -0
- package/ts-source/browser-code-prod/taon-posts/taon-cms-post/taon-cms-post.component.html +1115 -603
- package/ts-source/browser-code-prod/taon-posts/taon-cms-post/taon-cms-post.component.scss +115 -0
- package/ts-source/browser-code-prod/taon-posts/taon-cms-post/taon-cms-post.component.ts +882 -53
- 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
- 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
- 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
- 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
- package/ts-source/browser-code-prod/taon-posts/taon-cms-post-details-page/i18n/taon-cms-post-details-page.translation.ts +1 -1
- package/ts-source/browser-code-prod/taon-posts/taon-cms-post-details-page/taon-cms-post-details-page.component.ts +1 -0
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- package/ts-source/browser-code-prod/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.html.de-DE.po +11 -11
- 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
- package/ts-source/browser-code-prod/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.html.en-US.po +4 -4
- 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
- package/ts-source/browser-code-prod/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.html.pl-PL.po +11 -11
- 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
- package/ts-source/browser-code-prod/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.ts.de-DE.po +1 -1
- 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
- package/ts-source/browser-code-prod/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.ts.pl-PL.po +1 -1
- package/ts-source/browser-code-prod/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.translation.ts +1 -1
- package/ts-source/browser-code-prod/taon-posts/taon-cms-posts-backoffice/taon-cms-post-table-actions.directive.ts +86 -18
- 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
- package/ts-source/browser-code-prod/taon-posts/taon-cms-revision-chooser/i18n/taon-cms-revision-chooser.component.html.de-DE.po +14 -8
- 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
- package/ts-source/browser-code-prod/taon-posts/taon-cms-revision-chooser/i18n/taon-cms-revision-chooser.component.html.en-US.po +14 -8
- 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
- package/ts-source/browser-code-prod/taon-posts/taon-cms-revision-chooser/i18n/taon-cms-revision-chooser.component.html.pl-PL.po +14 -8
- package/ts-source/browser-code-prod/taon-posts/taon-cms-revision-chooser/i18n/taon-cms-revision-chooser.translation.ts +1 -1
- 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
- package/ts-source/browser-code-prod/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.html.de-DE.po +8 -4
- 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
- package/ts-source/browser-code-prod/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.html.en-US.po +8 -4
- 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
- package/ts-source/browser-code-prod/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.html.pl-PL.po +8 -4
- 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
- package/ts-source/browser-code-prod/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.ts.de-DE.po +2 -2
- 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
- package/ts-source/browser-code-prod/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.ts.en-US.po +2 -2
- 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
- package/ts-source/browser-code-prod/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.ts.pl-PL.po +2 -2
- package/ts-source/browser-code-prod/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.translation.ts +1 -1
- package/ts-source/browser-code-prod/taon-posts/taon-related-post-chooser/taon-related-post-chooser.component.html +3 -3
- package/ts-source/browser-code-prod/taon-posts/taon-related-post-chooser/taon-related-post-chooser.component.ts +8 -1
- package/ts-source/websql-code/build-info._auto-generated_.ts +1 -1
- package/ts-source/websql-code/index._auto-generated_.ts +33 -0
- package/ts-source/websql-code/migrations/1793664000000_postVersionLinks.ts +40 -0
- package/ts-source/websql-code/migrations/migrations_index._auto-generated_.ts +3 -0
- package/ts-source/websql-code/taon-cms-assets-backoffice/taon-cms-asset-preview.component.html +1 -1
- package/ts-source/websql-code/taon-cms-backoffice/i18n/taon-cms-backoffice.component.html.de-DE.i18n.data.ts +5 -0
- package/ts-source/websql-code/taon-cms-backoffice/i18n/taon-cms-backoffice.component.html.de-DE.po +1 -0
- package/ts-source/websql-code/taon-cms-backoffice/i18n/taon-cms-backoffice.component.html.en-US.i18n.data.ts +5 -0
- package/ts-source/websql-code/taon-cms-backoffice/i18n/taon-cms-backoffice.component.html.en-US.po +1 -0
- package/ts-source/websql-code/taon-cms-backoffice/i18n/taon-cms-backoffice.component.html.pl-PL.i18n.data.ts +5 -0
- package/ts-source/websql-code/taon-cms-backoffice/i18n/taon-cms-backoffice.component.html.pl-PL.po +1 -0
- package/ts-source/websql-code/taon-cms-backoffice/i18n/taon-cms-backoffice.routes.ts.de-DE.i18n.data.ts +18 -5
- package/ts-source/websql-code/taon-cms-backoffice/i18n/taon-cms-backoffice.routes.ts.de-DE.po +13 -5
- package/ts-source/websql-code/taon-cms-backoffice/i18n/taon-cms-backoffice.routes.ts.en-US.i18n.data.ts +15 -5
- package/ts-source/websql-code/taon-cms-backoffice/i18n/taon-cms-backoffice.routes.ts.en-US.po +12 -4
- package/ts-source/websql-code/taon-cms-backoffice/i18n/taon-cms-backoffice.routes.ts.pl-PL.i18n.data.ts +17 -5
- package/ts-source/websql-code/taon-cms-backoffice/i18n/taon-cms-backoffice.routes.ts.pl-PL.po +12 -4
- package/ts-source/websql-code/taon-cms-backoffice/taon-cms-backoffice.routes.ts +20 -0
- 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
- package/ts-source/websql-code/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.html.de-DE.po +30 -0
- 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
- package/ts-source/websql-code/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.html.en-US.po +30 -0
- 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
- package/ts-source/websql-code/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.html.pl-PL.po +30 -0
- 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
- package/ts-source/websql-code/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.ts.de-DE.po +41 -0
- 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
- package/ts-source/websql-code/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.ts.en-US.po +41 -0
- 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
- package/ts-source/websql-code/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.component.ts.pl-PL.po +41 -0
- package/ts-source/websql-code/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.translation.ts +21 -0
- package/ts-source/websql-code/taon-cms-backoffice/taon-cms-website-features/index.ts +13 -0
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- package/ts-source/websql-code/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.constants.ts +25 -0
- package/ts-source/websql-code/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.controller.ts +59 -0
- 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
- package/ts-source/websql-code/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.models.ts +23 -0
- package/ts-source/websql-code/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.provider.ts +30 -0
- package/ts-source/websql-code/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.utils.ts +26 -0
- package/ts-source/websql-code/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-feature/taon-cms-website-feature.validators.ts +26 -0
- package/ts-source/websql-code/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-features.component.html +58 -0
- package/ts-source/websql-code/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-features.component.scss +38 -0
- package/ts-source/websql-code/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-features.component.ts +127 -0
- package/ts-source/websql-code/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-features.models.ts +13 -0
- package/ts-source/websql-code/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-features.routes.ts +21 -0
- package/ts-source/websql-code/taon-cms-comment/i18n/taon-cms-comment.controller.ts.de-DE.i18n.data.ts +145 -0
- package/ts-source/websql-code/taon-cms-comment/i18n/taon-cms-comment.controller.ts.de-DE.po +77 -0
- package/ts-source/websql-code/taon-cms-comment/i18n/taon-cms-comment.controller.ts.en-US.i18n.data.ts +124 -0
- package/ts-source/websql-code/taon-cms-comment/i18n/taon-cms-comment.controller.ts.en-US.po +77 -0
- package/ts-source/websql-code/taon-cms-comment/i18n/taon-cms-comment.controller.ts.pl-PL.i18n.data.ts +145 -0
- package/ts-source/websql-code/taon-cms-comment/i18n/taon-cms-comment.controller.ts.pl-PL.po +77 -0
- package/ts-source/websql-code/taon-cms-comment/i18n/taon-cms-comment.translation.ts +24 -0
- package/ts-source/websql-code/taon-cms-comment/i18n/taon-cms-comments.component.html.de-DE.i18n.data.ts +122 -0
- package/ts-source/websql-code/taon-cms-comment/i18n/taon-cms-comments.component.html.de-DE.po +64 -0
- package/ts-source/websql-code/taon-cms-comment/i18n/taon-cms-comments.component.html.en-US.i18n.data.ts +105 -0
- package/ts-source/websql-code/taon-cms-comment/i18n/taon-cms-comments.component.html.en-US.po +64 -0
- package/ts-source/websql-code/taon-cms-comment/i18n/taon-cms-comments.component.html.pl-PL.i18n.data.ts +122 -0
- package/ts-source/websql-code/taon-cms-comment/i18n/taon-cms-comments.component.html.pl-PL.po +64 -0
- package/ts-source/websql-code/taon-cms-comment/i18n/taon-cms-comments.component.ts.de-DE.i18n.data.ts +53 -0
- package/ts-source/websql-code/taon-cms-comment/i18n/taon-cms-comments.component.ts.de-DE.po +25 -0
- package/ts-source/websql-code/taon-cms-comment/i18n/taon-cms-comments.component.ts.en-US.i18n.data.ts +48 -0
- package/ts-source/websql-code/taon-cms-comment/i18n/taon-cms-comments.component.ts.en-US.po +25 -0
- package/ts-source/websql-code/taon-cms-comment/i18n/taon-cms-comments.component.ts.pl-PL.i18n.data.ts +53 -0
- package/ts-source/websql-code/taon-cms-comment/i18n/taon-cms-comments.component.ts.pl-PL.po +25 -0
- package/ts-source/websql-code/taon-cms-comment/index.ts +5 -0
- package/ts-source/websql-code/taon-cms-comment/taon-cms-comment-api.service.ts +97 -4
- package/ts-source/websql-code/taon-cms-comment/taon-cms-comment-blocked-phrase.entity.ts +28 -0
- package/ts-source/websql-code/taon-cms-comment/taon-cms-comment-blocked-user.entity.ts +26 -0
- package/ts-source/websql-code/taon-cms-comment/taon-cms-comment-spam-report.entity.ts +28 -0
- package/ts-source/websql-code/taon-cms-comment/taon-cms-comment-vote.entity.ts +30 -0
- package/ts-source/websql-code/taon-cms-comment/taon-cms-comment.abstract.context.ts +11 -1
- package/ts-source/websql-code/taon-cms-comment/taon-cms-comment.controller.ts +464 -15
- package/ts-source/websql-code/taon-cms-comment/taon-cms-comment.entity.ts +3 -3
- 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
- package/ts-source/websql-code/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.component.ts.de-DE.po +5 -0
- 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
- package/ts-source/websql-code/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.component.ts.en-US.po +5 -0
- 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
- package/ts-source/websql-code/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.component.ts.pl-PL.po +5 -0
- 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
- package/ts-source/websql-code/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.routes.ts.de-DE.po +17 -0
- 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
- package/ts-source/websql-code/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.routes.ts.en-US.po +17 -0
- 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
- package/ts-source/websql-code/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.routes.ts.pl-PL.po +17 -0
- package/ts-source/websql-code/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.translation.ts +21 -0
- package/ts-source/websql-code/taon-cms-comment/taon-cms-comments-backoffice/index.ts +13 -0
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- package/ts-source/websql-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/index.ts +13 -0
- 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
- 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
- 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
- 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
- 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
- package/ts-source/websql-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-backoffice.component.html +14 -0
- package/ts-source/websql-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-backoffice.component.scss +14 -0
- package/ts-source/websql-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-backoffice.component.ts +28 -0
- package/ts-source/websql-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-backoffice.models.ts +13 -0
- package/ts-source/websql-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-backoffice.routes.ts +51 -0
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- package/ts-source/websql-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/index.ts +13 -0
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- package/ts-source/websql-code/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/index.ts +13 -0
- 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
- 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
- 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
- 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
- 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
- package/ts-source/websql-code/taon-cms-comment/taon-cms-comments.component.html +108 -0
- package/ts-source/websql-code/taon-cms-comment/taon-cms-comments.component.scss +39 -0
- package/ts-source/websql-code/taon-cms-comment/taon-cms-comments.component.ts +141 -0
- package/ts-source/websql-code/taon-cms-content/i18n/taon-cms-content-storage.controller.ts.de-DE.i18n.data.ts +1 -1
- package/ts-source/websql-code/taon-cms-content/i18n/taon-cms-content-storage.controller.ts.de-DE.po +1 -1
- package/ts-source/websql-code/taon-cms-content/i18n/taon-cms-content-storage.controller.ts.en-US.i18n.data.ts +1 -1
- package/ts-source/websql-code/taon-cms-content/i18n/taon-cms-content-storage.controller.ts.en-US.po +1 -1
- package/ts-source/websql-code/taon-cms-content/i18n/taon-cms-content-storage.controller.ts.pl-PL.i18n.data.ts +1 -1
- package/ts-source/websql-code/taon-cms-content/i18n/taon-cms-content-storage.controller.ts.pl-PL.po +1 -1
- package/ts-source/websql-code/taon-cms-content/i18n/taon-cms-content.controller.ts.de-DE.i18n.data.ts +28 -6
- package/ts-source/websql-code/taon-cms-content/i18n/taon-cms-content.controller.ts.de-DE.po +16 -6
- package/ts-source/websql-code/taon-cms-content/i18n/taon-cms-content.controller.ts.en-US.i18n.data.ts +24 -6
- package/ts-source/websql-code/taon-cms-content/i18n/taon-cms-content.controller.ts.en-US.po +16 -6
- package/ts-source/websql-code/taon-cms-content/i18n/taon-cms-content.controller.ts.pl-PL.i18n.data.ts +28 -6
- package/ts-source/websql-code/taon-cms-content/i18n/taon-cms-content.controller.ts.pl-PL.po +16 -6
- package/ts-source/websql-code/taon-cms-content/taon-cms-content-api.service.ts +60 -3
- package/ts-source/websql-code/taon-cms-content/taon-cms-content-storage.controller.ts +16 -1
- package/ts-source/websql-code/taon-cms-content/taon-cms-content.controller.ts +188 -3
- package/ts-source/websql-code/taon-cms-content/taon-cms-content.entity.ts +6 -0
- package/ts-source/websql-code/taon-cms-content/taon-cms-content.models.ts +39 -0
- package/ts-source/websql-code/taon-cms-content/taon-cms-content.repository.ts +802 -31
- package/ts-source/websql-code/taon-cms-content/taon-cms-content.utils.ts +6 -0
- package/ts-source/websql-code/taon-cms-content/taon-cms-content.validation.ts +4 -0
- package/ts-source/websql-code/taon-cms-content-revision/taon-cms-content-revision.repository.ts +18 -0
- 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
- package/ts-source/websql-code/taon-cms-taxonomy-backoffice/i18n/taon-cms-taxonomy-quick-create-dialog.component.ts.de-DE.po +7 -7
- 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
- package/ts-source/websql-code/taon-cms-taxonomy-backoffice/i18n/taon-cms-taxonomy-quick-create-dialog.component.ts.pl-PL.po +7 -7
- package/ts-source/websql-code/taon-cms.abstract.context.ts +2 -0
- 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
- package/ts-source/websql-code/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.html.de-DE.po +18 -18
- 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
- package/ts-source/websql-code/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.html.en-US.po +10 -10
- 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
- package/ts-source/websql-code/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.html.pl-PL.po +18 -18
- 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
- package/ts-source/websql-code/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.ts.de-DE.po +4 -4
- 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
- package/ts-source/websql-code/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.ts.pl-PL.po +4 -4
- 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
- package/ts-source/websql-code/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.html.de-DE.po +12 -4
- 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
- package/ts-source/websql-code/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.html.en-US.po +8 -0
- 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
- package/ts-source/websql-code/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.html.pl-PL.po +12 -4
- 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
- package/ts-source/websql-code/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.ts.de-DE.po +14 -10
- 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
- package/ts-source/websql-code/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.ts.en-US.po +9 -5
- 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
- package/ts-source/websql-code/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.ts.pl-PL.po +14 -10
- 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
- package/ts-source/websql-code/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-cover.component.ts.de-DE.po +1 -1
- 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
- package/ts-source/websql-code/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-cover.component.ts.pl-PL.po +1 -1
- package/ts-source/websql-code/taon-posts/taon-cms-course-backoffice/taon-cms-course-backoffice.component.html +3 -2
- package/ts-source/websql-code/taon-posts/taon-cms-course-backoffice/taon-cms-course-contents.component.html +23 -0
- package/ts-source/websql-code/taon-posts/taon-cms-course-backoffice/taon-cms-course-contents.component.ts +22 -1
- 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
- package/ts-source/websql-code/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.html.de-DE.po +13 -0
- 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
- package/ts-source/websql-code/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.html.en-US.po +13 -0
- 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
- package/ts-source/websql-code/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.html.pl-PL.po +13 -0
- 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
- package/ts-source/websql-code/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.ts.de-DE.po +5 -0
- 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
- package/ts-source/websql-code/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.ts.en-US.po +5 -0
- 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
- package/ts-source/websql-code/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.ts.pl-PL.po +5 -0
- package/ts-source/websql-code/taon-posts/taon-cms-post/i18n/taon-cms-post-thumbnail.component.ts.de-DE.i18n.data.ts +29 -0
- package/ts-source/websql-code/taon-posts/taon-cms-post/i18n/taon-cms-post-thumbnail.component.ts.de-DE.po +9 -0
- package/ts-source/websql-code/taon-posts/taon-cms-post/i18n/taon-cms-post-thumbnail.component.ts.en-US.i18n.data.ts +28 -0
- package/ts-source/websql-code/taon-posts/taon-cms-post/i18n/taon-cms-post-thumbnail.component.ts.en-US.po +9 -0
- package/ts-source/websql-code/taon-posts/taon-cms-post/i18n/taon-cms-post-thumbnail.component.ts.pl-PL.i18n.data.ts +29 -0
- package/ts-source/websql-code/taon-posts/taon-cms-post/i18n/taon-cms-post-thumbnail.component.ts.pl-PL.po +9 -0
- package/ts-source/websql-code/taon-posts/taon-cms-post/i18n/taon-cms-post.component.html.de-DE.i18n.data.ts +545 -94
- package/ts-source/websql-code/taon-posts/taon-cms-post/i18n/taon-cms-post.component.html.de-DE.po +318 -104
- package/ts-source/websql-code/taon-posts/taon-cms-post/i18n/taon-cms-post.component.html.en-US.i18n.data.ts +465 -92
- package/ts-source/websql-code/taon-posts/taon-cms-post/i18n/taon-cms-post.component.html.en-US.po +301 -87
- package/ts-source/websql-code/taon-posts/taon-cms-post/i18n/taon-cms-post.component.html.pl-PL.i18n.data.ts +546 -93
- package/ts-source/websql-code/taon-posts/taon-cms-post/i18n/taon-cms-post.component.html.pl-PL.po +317 -103
- package/ts-source/websql-code/taon-posts/taon-cms-post/i18n/taon-cms-post.component.ts.de-DE.i18n.data.ts +235 -40
- package/ts-source/websql-code/taon-posts/taon-cms-post/i18n/taon-cms-post.component.ts.de-DE.po +168 -43
- package/ts-source/websql-code/taon-posts/taon-cms-post/i18n/taon-cms-post.component.ts.en-US.i18n.data.ts +198 -40
- package/ts-source/websql-code/taon-posts/taon-cms-post/i18n/taon-cms-post.component.ts.en-US.po +164 -39
- package/ts-source/websql-code/taon-posts/taon-cms-post/i18n/taon-cms-post.component.ts.pl-PL.i18n.data.ts +238 -43
- package/ts-source/websql-code/taon-posts/taon-cms-post/i18n/taon-cms-post.component.ts.pl-PL.po +170 -45
- package/ts-source/websql-code/taon-posts/taon-cms-post/i18n/taon-cms-post.translation.ts +10 -1
- package/ts-source/websql-code/taon-posts/taon-cms-post/taon-cms-document-extractor.ts +499 -0
- package/ts-source/websql-code/taon-posts/taon-cms-post/taon-cms-post-choice-dialog.component.html +31 -0
- package/ts-source/websql-code/taon-posts/taon-cms-post/taon-cms-post-choice-dialog.component.ts +46 -0
- package/ts-source/websql-code/taon-posts/taon-cms-post/taon-cms-post-thumbnail.component.ts +71 -0
- package/ts-source/websql-code/taon-posts/taon-cms-post/taon-cms-post.component.html +1115 -603
- package/ts-source/websql-code/taon-posts/taon-cms-post/taon-cms-post.component.scss +115 -0
- package/ts-source/websql-code/taon-posts/taon-cms-post/taon-cms-post.component.ts +882 -53
- 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
- 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
- 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
- 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
- package/ts-source/websql-code/taon-posts/taon-cms-post-details-page/taon-cms-post-details-page.component.ts +1 -0
- 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
- package/ts-source/websql-code/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-post-table-actions.directive.ts.de-DE.po +46 -23
- 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
- package/ts-source/websql-code/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-post-table-actions.directive.ts.en-US.po +36 -13
- 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
- package/ts-source/websql-code/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-post-table-actions.directive.ts.pl-PL.po +46 -23
- 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
- package/ts-source/websql-code/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.html.de-DE.po +11 -11
- 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
- package/ts-source/websql-code/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.html.en-US.po +4 -4
- 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
- package/ts-source/websql-code/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.html.pl-PL.po +11 -11
- 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
- package/ts-source/websql-code/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.ts.de-DE.po +1 -1
- 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
- package/ts-source/websql-code/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.ts.pl-PL.po +1 -1
- package/ts-source/websql-code/taon-posts/taon-cms-posts-backoffice/taon-cms-post-table-actions.directive.ts +86 -18
- 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
- package/ts-source/websql-code/taon-posts/taon-cms-revision-chooser/i18n/taon-cms-revision-chooser.component.html.de-DE.po +14 -8
- 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
- package/ts-source/websql-code/taon-posts/taon-cms-revision-chooser/i18n/taon-cms-revision-chooser.component.html.en-US.po +14 -8
- 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
- package/ts-source/websql-code/taon-posts/taon-cms-revision-chooser/i18n/taon-cms-revision-chooser.component.html.pl-PL.po +14 -8
- 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
- package/ts-source/websql-code/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.html.de-DE.po +8 -4
- 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
- package/ts-source/websql-code/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.html.en-US.po +8 -4
- 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
- package/ts-source/websql-code/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.html.pl-PL.po +8 -4
- 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
- package/ts-source/websql-code/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.ts.de-DE.po +2 -2
- 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
- package/ts-source/websql-code/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.ts.en-US.po +2 -2
- 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
- package/ts-source/websql-code/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.ts.pl-PL.po +2 -2
- package/ts-source/websql-code/taon-posts/taon-related-post-chooser/taon-related-post-chooser.component.html +3 -3
- package/ts-source/websql-code/taon-posts/taon-related-post-chooser/taon-related-post-chooser.component.ts +8 -1
- package/ts-source/websql-code-prod/build-info._auto-generated_.ts +1 -1
- package/ts-source/websql-code-prod/index._auto-generated_.ts +33 -0
- package/ts-source/websql-code-prod/migrations/1793664000000_postVersionLinks.split-namespaces.json +4 -0
- package/ts-source/websql-code-prod/migrations/1793664000000_postVersionLinks.ts +40 -0
- package/ts-source/websql-code-prod/migrations/migrations_index._auto-generated_.ts +3 -0
- package/ts-source/websql-code-prod/taon-cms-assets-backoffice/i18n/taon-cms-assets-backoffice.translation.ts +1 -1
- package/ts-source/websql-code-prod/taon-cms-assets-backoffice/taon-cms-asset-preview.component.html +1 -1
- package/ts-source/websql-code-prod/taon-cms-backoffice/i18n/taon-cms-backoffice.component.html.de-DE.i18n.data.ts +5 -0
- package/ts-source/websql-code-prod/taon-cms-backoffice/i18n/taon-cms-backoffice.component.html.de-DE.po +1 -0
- package/ts-source/websql-code-prod/taon-cms-backoffice/i18n/taon-cms-backoffice.component.html.en-US.i18n.data.ts +5 -0
- package/ts-source/websql-code-prod/taon-cms-backoffice/i18n/taon-cms-backoffice.component.html.en-US.po +1 -0
- package/ts-source/websql-code-prod/taon-cms-backoffice/i18n/taon-cms-backoffice.component.html.pl-PL.i18n.data.ts +5 -0
- package/ts-source/websql-code-prod/taon-cms-backoffice/i18n/taon-cms-backoffice.component.html.pl-PL.po +1 -0
- package/ts-source/websql-code-prod/taon-cms-backoffice/i18n/taon-cms-backoffice.routes.ts.de-DE.i18n.data.ts +18 -5
- package/ts-source/websql-code-prod/taon-cms-backoffice/i18n/taon-cms-backoffice.routes.ts.de-DE.po +13 -5
- package/ts-source/websql-code-prod/taon-cms-backoffice/i18n/taon-cms-backoffice.routes.ts.en-US.i18n.data.ts +15 -5
- package/ts-source/websql-code-prod/taon-cms-backoffice/i18n/taon-cms-backoffice.routes.ts.en-US.po +12 -4
- package/ts-source/websql-code-prod/taon-cms-backoffice/i18n/taon-cms-backoffice.routes.ts.pl-PL.i18n.data.ts +17 -5
- package/ts-source/websql-code-prod/taon-cms-backoffice/i18n/taon-cms-backoffice.routes.ts.pl-PL.po +12 -4
- package/ts-source/websql-code-prod/taon-cms-backoffice/i18n/taon-cms-backoffice.translation.ts +1 -1
- package/ts-source/websql-code-prod/taon-cms-backoffice/taon-cms-backoffice.routes.ts +20 -0
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- package/ts-source/websql-code-prod/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.translation.split-namespaces.json +4 -0
- package/ts-source/websql-code-prod/taon-cms-backoffice/taon-cms-website-features/i18n/taon-cms-website-features.translation.ts +21 -0
- package/ts-source/websql-code-prod/taon-cms-backoffice/taon-cms-website-features/index.split-namespaces.json +4 -0
- package/ts-source/websql-code-prod/taon-cms-backoffice/taon-cms-website-features/index.ts +13 -0
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- package/ts-source/websql-code-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-features.component.html +58 -0
- package/ts-source/websql-code-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-features.component.scss +38 -0
- package/ts-source/websql-code-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-features.component.split-namespaces.json +4 -0
- package/ts-source/websql-code-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-features.component.ts +127 -0
- package/ts-source/websql-code-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-features.models.split-namespaces.json +4 -0
- package/ts-source/websql-code-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-features.models.ts +12 -0
- package/ts-source/websql-code-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-features.routes.split-namespaces.json +4 -0
- package/ts-source/websql-code-prod/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-features.routes.ts +21 -0
- package/ts-source/websql-code-prod/taon-cms-category/i18n/taon-cms-category.translation.ts +1 -1
- package/ts-source/websql-code-prod/taon-cms-comment/i18n/taon-cms-comment.controller.ts.de-DE.i18n.data.ts +145 -0
- package/ts-source/websql-code-prod/taon-cms-comment/i18n/taon-cms-comment.controller.ts.de-DE.po +77 -0
- package/ts-source/websql-code-prod/taon-cms-comment/i18n/taon-cms-comment.controller.ts.en-US.i18n.data.ts +124 -0
- package/ts-source/websql-code-prod/taon-cms-comment/i18n/taon-cms-comment.controller.ts.en-US.po +77 -0
- package/ts-source/websql-code-prod/taon-cms-comment/i18n/taon-cms-comment.controller.ts.pl-PL.i18n.data.ts +145 -0
- package/ts-source/websql-code-prod/taon-cms-comment/i18n/taon-cms-comment.controller.ts.pl-PL.po +77 -0
- package/ts-source/websql-code-prod/taon-cms-comment/i18n/taon-cms-comment.translation.split-namespaces.json +4 -0
- package/ts-source/websql-code-prod/taon-cms-comment/i18n/taon-cms-comment.translation.ts +24 -0
- package/ts-source/websql-code-prod/taon-cms-comment/i18n/taon-cms-comments.component.html.de-DE.i18n.data.ts +122 -0
- package/ts-source/websql-code-prod/taon-cms-comment/i18n/taon-cms-comments.component.html.de-DE.po +64 -0
- package/ts-source/websql-code-prod/taon-cms-comment/i18n/taon-cms-comments.component.html.en-US.i18n.data.ts +105 -0
- package/ts-source/websql-code-prod/taon-cms-comment/i18n/taon-cms-comments.component.html.en-US.po +64 -0
- package/ts-source/websql-code-prod/taon-cms-comment/i18n/taon-cms-comments.component.html.pl-PL.i18n.data.ts +122 -0
- package/ts-source/websql-code-prod/taon-cms-comment/i18n/taon-cms-comments.component.html.pl-PL.po +64 -0
- package/ts-source/websql-code-prod/taon-cms-comment/i18n/taon-cms-comments.component.ts.de-DE.i18n.data.ts +53 -0
- package/ts-source/websql-code-prod/taon-cms-comment/i18n/taon-cms-comments.component.ts.de-DE.po +25 -0
- package/ts-source/websql-code-prod/taon-cms-comment/i18n/taon-cms-comments.component.ts.en-US.i18n.data.ts +48 -0
- package/ts-source/websql-code-prod/taon-cms-comment/i18n/taon-cms-comments.component.ts.en-US.po +25 -0
- package/ts-source/websql-code-prod/taon-cms-comment/i18n/taon-cms-comments.component.ts.pl-PL.i18n.data.ts +53 -0
- package/ts-source/websql-code-prod/taon-cms-comment/i18n/taon-cms-comments.component.ts.pl-PL.po +25 -0
- package/ts-source/websql-code-prod/taon-cms-comment/index.ts +5 -0
- package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comment-api.service.ts +97 -4
- package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comment-blocked-phrase.entity.split-namespaces.json +4 -0
- package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comment-blocked-phrase.entity.ts +28 -0
- package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comment-blocked-user.entity.split-namespaces.json +4 -0
- package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comment-blocked-user.entity.ts +26 -0
- package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comment-spam-report.entity.split-namespaces.json +4 -0
- package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comment-spam-report.entity.ts +28 -0
- package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comment-vote.entity.split-namespaces.json +4 -0
- package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comment-vote.entity.ts +30 -0
- package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comment.abstract.context.ts +11 -1
- package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comment.controller.ts +464 -15
- package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comment.entity.ts +3 -3
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.translation.split-namespaces.json +4 -0
- package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/i18n/taon-cms-comments-backoffice.translation.ts +21 -0
- package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/index.split-namespaces.json +4 -0
- package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/index.ts +13 -0
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-all-preview-backoffice/index.ts +13 -0
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-backoffice.component.html +14 -0
- package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-backoffice.component.scss +14 -0
- package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-backoffice.component.split-namespaces.json +4 -0
- package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-backoffice.component.ts +28 -0
- package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-backoffice.models.split-namespaces.json +4 -0
- package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-backoffice.models.ts +12 -0
- package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-backoffice.routes.split-namespaces.json +4 -0
- package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-backoffice.routes.ts +51 -0
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/index.split-namespaces.json +4 -0
- package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-blocked-users/index.ts +13 -0
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/index.split-namespaces.json +4 -0
- package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-filters-settings/index.ts +13 -0
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments.component.html +108 -0
- package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments.component.scss +39 -0
- package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments.component.split-namespaces.json +4 -0
- package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comments.component.ts +141 -0
- package/ts-source/websql-code-prod/taon-cms-content/i18n/taon-cms-content-storage.controller.ts.de-DE.i18n.data.ts +1 -1
- package/ts-source/websql-code-prod/taon-cms-content/i18n/taon-cms-content-storage.controller.ts.de-DE.po +1 -1
- package/ts-source/websql-code-prod/taon-cms-content/i18n/taon-cms-content-storage.controller.ts.en-US.i18n.data.ts +1 -1
- package/ts-source/websql-code-prod/taon-cms-content/i18n/taon-cms-content-storage.controller.ts.en-US.po +1 -1
- package/ts-source/websql-code-prod/taon-cms-content/i18n/taon-cms-content-storage.controller.ts.pl-PL.i18n.data.ts +1 -1
- package/ts-source/websql-code-prod/taon-cms-content/i18n/taon-cms-content-storage.controller.ts.pl-PL.po +1 -1
- package/ts-source/websql-code-prod/taon-cms-content/i18n/taon-cms-content.controller.ts.de-DE.i18n.data.ts +28 -6
- package/ts-source/websql-code-prod/taon-cms-content/i18n/taon-cms-content.controller.ts.de-DE.po +16 -6
- package/ts-source/websql-code-prod/taon-cms-content/i18n/taon-cms-content.controller.ts.en-US.i18n.data.ts +24 -6
- package/ts-source/websql-code-prod/taon-cms-content/i18n/taon-cms-content.controller.ts.en-US.po +16 -6
- package/ts-source/websql-code-prod/taon-cms-content/i18n/taon-cms-content.controller.ts.pl-PL.i18n.data.ts +28 -6
- package/ts-source/websql-code-prod/taon-cms-content/i18n/taon-cms-content.controller.ts.pl-PL.po +16 -6
- package/ts-source/websql-code-prod/taon-cms-content/i18n/taon-cms-content.translation.ts +1 -1
- package/ts-source/websql-code-prod/taon-cms-content/taon-cms-content-api.service.ts +60 -3
- package/ts-source/websql-code-prod/taon-cms-content/taon-cms-content-storage.controller.ts +16 -1
- package/ts-source/websql-code-prod/taon-cms-content/taon-cms-content.controller.ts +188 -3
- package/ts-source/websql-code-prod/taon-cms-content/taon-cms-content.entity.ts +6 -0
- package/ts-source/websql-code-prod/taon-cms-content/taon-cms-content.models.ts +39 -0
- package/ts-source/websql-code-prod/taon-cms-content/taon-cms-content.repository.ts +802 -31
- package/ts-source/websql-code-prod/taon-cms-content/taon-cms-content.utils.split-namespaces.json +3 -1
- package/ts-source/websql-code-prod/taon-cms-content/taon-cms-content.utils.ts +6 -0
- package/ts-source/websql-code-prod/taon-cms-content/taon-cms-content.validation.ts +4 -0
- package/ts-source/websql-code-prod/taon-cms-content-revision/taon-cms-content-revision.repository.ts +18 -0
- package/ts-source/websql-code-prod/taon-cms-tag/i18n/taon-cms-tag.translation.ts +1 -1
- package/ts-source/websql-code-prod/taon-cms-taxonomy-backoffice/i18n/taon-cms-taxonomy-backoffice.translation.ts +1 -1
- 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
- package/ts-source/websql-code-prod/taon-cms-taxonomy-backoffice/i18n/taon-cms-taxonomy-quick-create-dialog.component.ts.de-DE.po +7 -7
- 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
- package/ts-source/websql-code-prod/taon-cms-taxonomy-backoffice/i18n/taon-cms-taxonomy-quick-create-dialog.component.ts.pl-PL.po +7 -7
- package/ts-source/websql-code-prod/taon-cms.abstract.context.ts +2 -0
- 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
- package/ts-source/websql-code-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.html.de-DE.po +18 -18
- 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
- package/ts-source/websql-code-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.html.en-US.po +10 -10
- 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
- package/ts-source/websql-code-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.html.pl-PL.po +18 -18
- 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
- package/ts-source/websql-code-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.ts.de-DE.po +4 -4
- 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
- package/ts-source/websql-code-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.component.ts.pl-PL.po +4 -4
- package/ts-source/websql-code-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-backoffice.translation.ts +1 -1
- 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
- package/ts-source/websql-code-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.html.de-DE.po +12 -4
- 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
- package/ts-source/websql-code-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.html.en-US.po +8 -0
- 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
- package/ts-source/websql-code-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.html.pl-PL.po +12 -4
- 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
- package/ts-source/websql-code-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.ts.de-DE.po +14 -10
- 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
- package/ts-source/websql-code-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.ts.en-US.po +9 -5
- 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
- package/ts-source/websql-code-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-contents.component.ts.pl-PL.po +14 -10
- 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
- package/ts-source/websql-code-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-cover.component.ts.de-DE.po +1 -1
- 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
- package/ts-source/websql-code-prod/taon-posts/taon-cms-course-backoffice/i18n/taon-cms-course-cover.component.ts.pl-PL.po +1 -1
- package/ts-source/websql-code-prod/taon-posts/taon-cms-course-backoffice/taon-cms-course-backoffice.component.html +3 -2
- package/ts-source/websql-code-prod/taon-posts/taon-cms-course-backoffice/taon-cms-course-contents.component.html +23 -0
- package/ts-source/websql-code-prod/taon-posts/taon-cms-course-backoffice/taon-cms-course-contents.component.ts +22 -1
- 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
- package/ts-source/websql-code-prod/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.html.de-DE.po +13 -0
- 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
- package/ts-source/websql-code-prod/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.html.en-US.po +13 -0
- 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
- package/ts-source/websql-code-prod/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.html.pl-PL.po +13 -0
- 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
- package/ts-source/websql-code-prod/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.ts.de-DE.po +5 -0
- 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
- package/ts-source/websql-code-prod/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.ts.en-US.po +5 -0
- 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
- package/ts-source/websql-code-prod/taon-posts/taon-cms-post/i18n/taon-cms-post-choice-dialog.component.ts.pl-PL.po +5 -0
- 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
- package/ts-source/websql-code-prod/taon-posts/taon-cms-post/i18n/taon-cms-post-thumbnail.component.ts.de-DE.po +9 -0
- 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
- package/ts-source/websql-code-prod/taon-posts/taon-cms-post/i18n/taon-cms-post-thumbnail.component.ts.en-US.po +9 -0
- 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
- package/ts-source/websql-code-prod/taon-posts/taon-cms-post/i18n/taon-cms-post-thumbnail.component.ts.pl-PL.po +9 -0
- package/ts-source/websql-code-prod/taon-posts/taon-cms-post/i18n/taon-cms-post.component.html.de-DE.i18n.data.ts +545 -94
- package/ts-source/websql-code-prod/taon-posts/taon-cms-post/i18n/taon-cms-post.component.html.de-DE.po +318 -104
- package/ts-source/websql-code-prod/taon-posts/taon-cms-post/i18n/taon-cms-post.component.html.en-US.i18n.data.ts +465 -92
- package/ts-source/websql-code-prod/taon-posts/taon-cms-post/i18n/taon-cms-post.component.html.en-US.po +301 -87
- package/ts-source/websql-code-prod/taon-posts/taon-cms-post/i18n/taon-cms-post.component.html.pl-PL.i18n.data.ts +546 -93
- package/ts-source/websql-code-prod/taon-posts/taon-cms-post/i18n/taon-cms-post.component.html.pl-PL.po +317 -103
- package/ts-source/websql-code-prod/taon-posts/taon-cms-post/i18n/taon-cms-post.component.ts.de-DE.i18n.data.ts +235 -40
- package/ts-source/websql-code-prod/taon-posts/taon-cms-post/i18n/taon-cms-post.component.ts.de-DE.po +168 -43
- package/ts-source/websql-code-prod/taon-posts/taon-cms-post/i18n/taon-cms-post.component.ts.en-US.i18n.data.ts +198 -40
- package/ts-source/websql-code-prod/taon-posts/taon-cms-post/i18n/taon-cms-post.component.ts.en-US.po +164 -39
- package/ts-source/websql-code-prod/taon-posts/taon-cms-post/i18n/taon-cms-post.component.ts.pl-PL.i18n.data.ts +238 -43
- package/ts-source/websql-code-prod/taon-posts/taon-cms-post/i18n/taon-cms-post.component.ts.pl-PL.po +170 -45
- package/ts-source/websql-code-prod/taon-posts/taon-cms-post/i18n/taon-cms-post.translation.ts +11 -2
- package/ts-source/websql-code-prod/taon-posts/taon-cms-post/taon-cms-document-extractor.split-namespaces.json +4 -0
- package/ts-source/websql-code-prod/taon-posts/taon-cms-post/taon-cms-document-extractor.ts +499 -0
- package/ts-source/websql-code-prod/taon-posts/taon-cms-post/taon-cms-post-choice-dialog.component.html +31 -0
- package/ts-source/websql-code-prod/taon-posts/taon-cms-post/taon-cms-post-choice-dialog.component.split-namespaces.json +4 -0
- package/ts-source/websql-code-prod/taon-posts/taon-cms-post/taon-cms-post-choice-dialog.component.ts +46 -0
- package/ts-source/websql-code-prod/taon-posts/taon-cms-post/taon-cms-post-thumbnail.component.split-namespaces.json +4 -0
- package/ts-source/websql-code-prod/taon-posts/taon-cms-post/taon-cms-post-thumbnail.component.ts +71 -0
- package/ts-source/websql-code-prod/taon-posts/taon-cms-post/taon-cms-post.component.html +1115 -603
- package/ts-source/websql-code-prod/taon-posts/taon-cms-post/taon-cms-post.component.scss +115 -0
- package/ts-source/websql-code-prod/taon-posts/taon-cms-post/taon-cms-post.component.ts +882 -53
- 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
- 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
- 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
- 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
- package/ts-source/websql-code-prod/taon-posts/taon-cms-post-details-page/i18n/taon-cms-post-details-page.translation.ts +1 -1
- package/ts-source/websql-code-prod/taon-posts/taon-cms-post-details-page/taon-cms-post-details-page.component.ts +1 -0
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- package/ts-source/websql-code-prod/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.html.de-DE.po +11 -11
- 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
- package/ts-source/websql-code-prod/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.html.en-US.po +4 -4
- 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
- package/ts-source/websql-code-prod/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.html.pl-PL.po +11 -11
- 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
- package/ts-source/websql-code-prod/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.ts.de-DE.po +1 -1
- 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
- package/ts-source/websql-code-prod/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.component.ts.pl-PL.po +1 -1
- package/ts-source/websql-code-prod/taon-posts/taon-cms-posts-backoffice/i18n/taon-cms-posts-backoffice.translation.ts +1 -1
- package/ts-source/websql-code-prod/taon-posts/taon-cms-posts-backoffice/taon-cms-post-table-actions.directive.ts +86 -18
- 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
- package/ts-source/websql-code-prod/taon-posts/taon-cms-revision-chooser/i18n/taon-cms-revision-chooser.component.html.de-DE.po +14 -8
- 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
- package/ts-source/websql-code-prod/taon-posts/taon-cms-revision-chooser/i18n/taon-cms-revision-chooser.component.html.en-US.po +14 -8
- 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
- package/ts-source/websql-code-prod/taon-posts/taon-cms-revision-chooser/i18n/taon-cms-revision-chooser.component.html.pl-PL.po +14 -8
- package/ts-source/websql-code-prod/taon-posts/taon-cms-revision-chooser/i18n/taon-cms-revision-chooser.translation.ts +1 -1
- 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
- package/ts-source/websql-code-prod/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.html.de-DE.po +8 -4
- 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
- package/ts-source/websql-code-prod/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.html.en-US.po +8 -4
- 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
- package/ts-source/websql-code-prod/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.html.pl-PL.po +8 -4
- 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
- package/ts-source/websql-code-prod/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.ts.de-DE.po +2 -2
- 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
- package/ts-source/websql-code-prod/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.ts.en-US.po +2 -2
- 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
- package/ts-source/websql-code-prod/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.component.ts.pl-PL.po +2 -2
- package/ts-source/websql-code-prod/taon-posts/taon-related-post-chooser/i18n/taon-related-post-chooser.translation.ts +1 -1
- package/ts-source/websql-code-prod/taon-posts/taon-related-post-chooser/taon-related-post-chooser.component.html +3 -3
- package/ts-source/websql-code-prod/taon-posts/taon-related-post-chooser/taon-related-post-chooser.component.ts +8 -1
- package/websql/fesm2022/cms-websql-taon-cms-backoffice.component.html.de-DE.i18n.data-D8tHxCgy.mjs +21 -0
- package/websql/fesm2022/cms-websql-taon-cms-backoffice.component.html.de-DE.i18n.data-D8tHxCgy.mjs.map +1 -0
- package/websql/fesm2022/cms-websql-taon-cms-backoffice.component.html.en-US.i18n.data-CmwrxWX8.mjs +21 -0
- package/websql/fesm2022/cms-websql-taon-cms-backoffice.component.html.en-US.i18n.data-CmwrxWX8.mjs.map +1 -0
- package/websql/fesm2022/cms-websql-taon-cms-backoffice.component.html.pl-PL.i18n.data-tGusdlQf.mjs +21 -0
- package/websql/fesm2022/cms-websql-taon-cms-backoffice.component.html.pl-PL.i18n.data-tGusdlQf.mjs.map +1 -0
- package/websql/fesm2022/cms-websql-taon-cms-backoffice.routes.ts.de-DE.i18n.data-BfagP1V-.mjs +46 -0
- package/websql/fesm2022/cms-websql-taon-cms-backoffice.routes.ts.de-DE.i18n.data-BfagP1V-.mjs.map +1 -0
- package/websql/fesm2022/cms-websql-taon-cms-backoffice.routes.ts.en-US.i18n.data-DlrqGUe1.mjs +43 -0
- package/websql/fesm2022/cms-websql-taon-cms-backoffice.routes.ts.en-US.i18n.data-DlrqGUe1.mjs.map +1 -0
- package/websql/fesm2022/cms-websql-taon-cms-backoffice.routes.ts.pl-PL.i18n.data-YiDQh9iE.mjs +46 -0
- package/websql/fesm2022/cms-websql-taon-cms-backoffice.routes.ts.pl-PL.i18n.data-YiDQh9iE.mjs.map +1 -0
- package/websql/fesm2022/cms-websql-taon-cms-comment.controller.ts.de-DE.i18n.data-DfdKMA6Q.mjs +116 -0
- package/websql/fesm2022/cms-websql-taon-cms-comment.controller.ts.de-DE.i18n.data-DfdKMA6Q.mjs.map +1 -0
- package/websql/fesm2022/cms-websql-taon-cms-comment.controller.ts.en-US.i18n.data-CMr3vMuf.mjs +95 -0
- package/websql/fesm2022/cms-websql-taon-cms-comment.controller.ts.en-US.i18n.data-CMr3vMuf.mjs.map +1 -0
- package/websql/fesm2022/cms-websql-taon-cms-comment.controller.ts.pl-PL.i18n.data-alGje_2s.mjs +116 -0
- package/websql/fesm2022/cms-websql-taon-cms-comment.controller.ts.pl-PL.i18n.data-alGje_2s.mjs.map +1 -0
- package/websql/fesm2022/cms-websql-taon-cms-comments-all-preview-backoffice.component.html.de-DE.i18n.data-jlRvHpO-.mjs +91 -0
- package/websql/fesm2022/cms-websql-taon-cms-comments-all-preview-backoffice.component.html.de-DE.i18n.data-jlRvHpO-.mjs.map +1 -0
- package/websql/fesm2022/cms-websql-taon-cms-comments-all-preview-backoffice.component.html.en-US.i18n.data-BwdRoVlh.mjs +75 -0
- package/websql/fesm2022/cms-websql-taon-cms-comments-all-preview-backoffice.component.html.en-US.i18n.data-BwdRoVlh.mjs.map +1 -0
- package/websql/fesm2022/cms-websql-taon-cms-comments-all-preview-backoffice.component.html.pl-PL.i18n.data-BIaVJRRx.mjs +91 -0
- package/websql/fesm2022/cms-websql-taon-cms-comments-all-preview-backoffice.component.html.pl-PL.i18n.data-BIaVJRRx.mjs.map +1 -0
- package/websql/fesm2022/cms-websql-taon-cms-comments-all-preview-backoffice.component.ts.de-DE.i18n.data-D02CKD_B.mjs +56 -0
- package/websql/fesm2022/cms-websql-taon-cms-comments-all-preview-backoffice.component.ts.de-DE.i18n.data-D02CKD_B.mjs.map +1 -0
- package/websql/fesm2022/cms-websql-taon-cms-comments-all-preview-backoffice.component.ts.en-US.i18n.data-D_DNZ_4s.mjs +47 -0
- package/websql/fesm2022/cms-websql-taon-cms-comments-all-preview-backoffice.component.ts.en-US.i18n.data-D_DNZ_4s.mjs.map +1 -0
- package/websql/fesm2022/cms-websql-taon-cms-comments-all-preview-backoffice.component.ts.pl-PL.i18n.data-KScZlXpE.mjs +56 -0
- package/websql/fesm2022/cms-websql-taon-cms-comments-all-preview-backoffice.component.ts.pl-PL.i18n.data-KScZlXpE.mjs.map +1 -0
- package/websql/fesm2022/cms-websql-taon-cms-comments-backoffice.component.ts.de-DE.i18n.data-DKxoHRGn.mjs +10 -0
- package/websql/fesm2022/cms-websql-taon-cms-comments-backoffice.component.ts.de-DE.i18n.data-DKxoHRGn.mjs.map +1 -0
- package/websql/fesm2022/cms-websql-taon-cms-comments-backoffice.component.ts.en-US.i18n.data-BDz2v5u3.mjs +10 -0
- package/websql/fesm2022/cms-websql-taon-cms-comments-backoffice.component.ts.en-US.i18n.data-BDz2v5u3.mjs.map +1 -0
- package/websql/fesm2022/cms-websql-taon-cms-comments-backoffice.component.ts.pl-PL.i18n.data-DjTuh1Dt.mjs +10 -0
- package/websql/fesm2022/cms-websql-taon-cms-comments-backoffice.component.ts.pl-PL.i18n.data-DjTuh1Dt.mjs.map +1 -0
- package/websql/fesm2022/cms-websql-taon-cms-comments-backoffice.routes.ts.de-DE.i18n.data-VKAelP0F.mjs +26 -0
- package/websql/fesm2022/cms-websql-taon-cms-comments-backoffice.routes.ts.de-DE.i18n.data-VKAelP0F.mjs.map +1 -0
- package/websql/fesm2022/cms-websql-taon-cms-comments-backoffice.routes.ts.en-US.i18n.data-CPGJrpCf.mjs +23 -0
- package/websql/fesm2022/cms-websql-taon-cms-comments-backoffice.routes.ts.en-US.i18n.data-CPGJrpCf.mjs.map +1 -0
- package/websql/fesm2022/cms-websql-taon-cms-comments-backoffice.routes.ts.pl-PL.i18n.data-DorD3yQX.mjs +26 -0
- package/websql/fesm2022/cms-websql-taon-cms-comments-backoffice.routes.ts.pl-PL.i18n.data-DorD3yQX.mjs.map +1 -0
- package/websql/fesm2022/cms-websql-taon-cms-comments-blocked-users.component.html.de-DE.i18n.data-JsEk8S51.mjs +71 -0
- package/websql/fesm2022/cms-websql-taon-cms-comments-blocked-users.component.html.de-DE.i18n.data-JsEk8S51.mjs.map +1 -0
- package/websql/fesm2022/cms-websql-taon-cms-comments-blocked-users.component.html.en-US.i18n.data-CrtUBtvZ.mjs +59 -0
- package/websql/fesm2022/cms-websql-taon-cms-comments-blocked-users.component.html.en-US.i18n.data-CrtUBtvZ.mjs.map +1 -0
- package/websql/fesm2022/cms-websql-taon-cms-comments-blocked-users.component.html.pl-PL.i18n.data-CPMreyR2.mjs +71 -0
- package/websql/fesm2022/cms-websql-taon-cms-comments-blocked-users.component.html.pl-PL.i18n.data-CPMreyR2.mjs.map +1 -0
- package/websql/fesm2022/cms-websql-taon-cms-comments-blocked-users.component.ts.de-DE.i18n.data-D74Xg6Ev.mjs +26 -0
- package/websql/fesm2022/cms-websql-taon-cms-comments-blocked-users.component.ts.de-DE.i18n.data-D74Xg6Ev.mjs.map +1 -0
- package/websql/fesm2022/cms-websql-taon-cms-comments-blocked-users.component.ts.en-US.i18n.data-CVZAQr1t.mjs +23 -0
- package/websql/fesm2022/cms-websql-taon-cms-comments-blocked-users.component.ts.en-US.i18n.data-CVZAQr1t.mjs.map +1 -0
- package/websql/fesm2022/cms-websql-taon-cms-comments-blocked-users.component.ts.pl-PL.i18n.data-C8gk5Y1p.mjs +26 -0
- package/websql/fesm2022/cms-websql-taon-cms-comments-blocked-users.component.ts.pl-PL.i18n.data-C8gk5Y1p.mjs.map +1 -0
- package/websql/fesm2022/cms-websql-taon-cms-comments-filters-settings.component.html.de-DE.i18n.data-DKejO1pM.mjs +46 -0
- package/websql/fesm2022/cms-websql-taon-cms-comments-filters-settings.component.html.de-DE.i18n.data-DKejO1pM.mjs.map +1 -0
- package/websql/fesm2022/cms-websql-taon-cms-comments-filters-settings.component.html.en-US.i18n.data-CxqSwgFh.mjs +39 -0
- package/websql/fesm2022/cms-websql-taon-cms-comments-filters-settings.component.html.en-US.i18n.data-CxqSwgFh.mjs.map +1 -0
- package/websql/fesm2022/cms-websql-taon-cms-comments-filters-settings.component.html.pl-PL.i18n.data-ocB_2TIf.mjs +46 -0
- package/websql/fesm2022/cms-websql-taon-cms-comments-filters-settings.component.html.pl-PL.i18n.data-ocB_2TIf.mjs.map +1 -0
- package/websql/fesm2022/cms-websql-taon-cms-comments-filters-settings.component.ts.de-DE.i18n.data-BWv0OvuF.mjs +26 -0
- package/websql/fesm2022/cms-websql-taon-cms-comments-filters-settings.component.ts.de-DE.i18n.data-BWv0OvuF.mjs.map +1 -0
- package/websql/fesm2022/cms-websql-taon-cms-comments-filters-settings.component.ts.en-US.i18n.data-CqPrWRQ4.mjs +23 -0
- package/websql/fesm2022/cms-websql-taon-cms-comments-filters-settings.component.ts.en-US.i18n.data-CqPrWRQ4.mjs.map +1 -0
- package/websql/fesm2022/cms-websql-taon-cms-comments-filters-settings.component.ts.pl-PL.i18n.data-qb5Do2uU.mjs +26 -0
- package/websql/fesm2022/cms-websql-taon-cms-comments-filters-settings.component.ts.pl-PL.i18n.data-qb5Do2uU.mjs.map +1 -0
- package/websql/fesm2022/cms-websql-taon-cms-comments.component.html.de-DE.i18n.data-BDDL5Y2J.mjs +96 -0
- package/websql/fesm2022/cms-websql-taon-cms-comments.component.html.de-DE.i18n.data-BDDL5Y2J.mjs.map +1 -0
- package/websql/fesm2022/cms-websql-taon-cms-comments.component.html.en-US.i18n.data-CrJNJNfO.mjs +79 -0
- package/websql/fesm2022/cms-websql-taon-cms-comments.component.html.en-US.i18n.data-CrJNJNfO.mjs.map +1 -0
- package/websql/fesm2022/cms-websql-taon-cms-comments.component.html.pl-PL.i18n.data-BWybBBoe.mjs +96 -0
- package/websql/fesm2022/cms-websql-taon-cms-comments.component.html.pl-PL.i18n.data-BWybBBoe.mjs.map +1 -0
- package/websql/fesm2022/cms-websql-taon-cms-comments.component.ts.de-DE.i18n.data-BAuwTjLi.mjs +36 -0
- package/websql/fesm2022/cms-websql-taon-cms-comments.component.ts.de-DE.i18n.data-BAuwTjLi.mjs.map +1 -0
- package/websql/fesm2022/cms-websql-taon-cms-comments.component.ts.en-US.i18n.data-DwBpeV3m.mjs +31 -0
- package/websql/fesm2022/cms-websql-taon-cms-comments.component.ts.en-US.i18n.data-DwBpeV3m.mjs.map +1 -0
- package/websql/fesm2022/cms-websql-taon-cms-comments.component.ts.pl-PL.i18n.data-BD0Ah0Sf.mjs +36 -0
- package/websql/fesm2022/cms-websql-taon-cms-comments.component.ts.pl-PL.i18n.data-BD0Ah0Sf.mjs.map +1 -0
- package/websql/fesm2022/cms-websql-taon-cms-course-backoffice.component.html.de-DE.i18n.data-DeDggUO9.mjs +66 -0
- package/websql/fesm2022/cms-websql-taon-cms-course-backoffice.component.html.de-DE.i18n.data-DeDggUO9.mjs.map +1 -0
- package/websql/fesm2022/cms-websql-taon-cms-course-backoffice.component.html.en-US.i18n.data-uoEEVO8a.mjs +55 -0
- package/websql/fesm2022/cms-websql-taon-cms-course-backoffice.component.html.en-US.i18n.data-uoEEVO8a.mjs.map +1 -0
- package/websql/fesm2022/cms-websql-taon-cms-course-backoffice.component.html.pl-PL.i18n.data-M7AKGYpX.mjs +66 -0
- package/websql/fesm2022/cms-websql-taon-cms-course-backoffice.component.html.pl-PL.i18n.data-M7AKGYpX.mjs.map +1 -0
- package/websql/fesm2022/cms-websql-taon-cms-course-backoffice.component.ts.de-DE.i18n.data-BpgbKgY3.mjs +31 -0
- package/websql/fesm2022/cms-websql-taon-cms-course-backoffice.component.ts.de-DE.i18n.data-BpgbKgY3.mjs.map +1 -0
- package/websql/fesm2022/cms-websql-taon-cms-course-backoffice.component.ts.pl-PL.i18n.data-DkjNIJbK.mjs +31 -0
- package/websql/fesm2022/cms-websql-taon-cms-course-backoffice.component.ts.pl-PL.i18n.data-DkjNIJbK.mjs.map +1 -0
- package/websql/fesm2022/cms-websql-taon-cms-course-contents.component.html.de-DE.i18n.data-Bzo5KfeC.mjs +46 -0
- package/websql/fesm2022/cms-websql-taon-cms-course-contents.component.html.de-DE.i18n.data-Bzo5KfeC.mjs.map +1 -0
- package/websql/fesm2022/cms-websql-taon-cms-course-contents.component.html.en-US.i18n.data-BLADFF0I.mjs +39 -0
- package/websql/fesm2022/cms-websql-taon-cms-course-contents.component.html.en-US.i18n.data-BLADFF0I.mjs.map +1 -0
- package/websql/fesm2022/cms-websql-taon-cms-course-contents.component.html.pl-PL.i18n.data-DPK6Mhyf.mjs +46 -0
- package/websql/fesm2022/cms-websql-taon-cms-course-contents.component.html.pl-PL.i18n.data-DPK6Mhyf.mjs.map +1 -0
- package/websql/fesm2022/cms-websql-taon-cms-course-contents.component.ts.de-DE.i18n.data-CBzgWOR0.mjs +41 -0
- package/websql/fesm2022/cms-websql-taon-cms-course-contents.component.ts.de-DE.i18n.data-CBzgWOR0.mjs.map +1 -0
- package/websql/fesm2022/cms-websql-taon-cms-course-contents.component.ts.en-US.i18n.data-DpCnGeXs.mjs +35 -0
- package/websql/fesm2022/cms-websql-taon-cms-course-contents.component.ts.en-US.i18n.data-DpCnGeXs.mjs.map +1 -0
- package/websql/fesm2022/cms-websql-taon-cms-course-contents.component.ts.pl-PL.i18n.data-B7h8nQIi.mjs +41 -0
- package/websql/fesm2022/cms-websql-taon-cms-course-contents.component.ts.pl-PL.i18n.data-B7h8nQIi.mjs.map +1 -0
- package/websql/fesm2022/cms-websql-taon-cms-course-cover.component.ts.de-DE.i18n.data-CBohwLyL.mjs +16 -0
- package/websql/fesm2022/cms-websql-taon-cms-course-cover.component.ts.de-DE.i18n.data-CBohwLyL.mjs.map +1 -0
- package/websql/fesm2022/cms-websql-taon-cms-course-cover.component.ts.pl-PL.i18n.data-CZDYAXcE.mjs +16 -0
- package/websql/fesm2022/cms-websql-taon-cms-course-cover.component.ts.pl-PL.i18n.data-CZDYAXcE.mjs.map +1 -0
- package/websql/fesm2022/cms-websql-taon-cms-post-choice-dialog.component.html.de-DE.i18n.data-s2dXTIUw.mjs +21 -0
- package/websql/fesm2022/cms-websql-taon-cms-post-choice-dialog.component.html.de-DE.i18n.data-s2dXTIUw.mjs.map +1 -0
- package/websql/fesm2022/cms-websql-taon-cms-post-choice-dialog.component.html.en-US.i18n.data-NG3-0ZeO.mjs +19 -0
- package/websql/fesm2022/cms-websql-taon-cms-post-choice-dialog.component.html.en-US.i18n.data-NG3-0ZeO.mjs.map +1 -0
- package/websql/fesm2022/cms-websql-taon-cms-post-choice-dialog.component.html.pl-PL.i18n.data-DncFM6D3.mjs +21 -0
- package/websql/fesm2022/cms-websql-taon-cms-post-choice-dialog.component.html.pl-PL.i18n.data-DncFM6D3.mjs.map +1 -0
- package/websql/fesm2022/cms-websql-taon-cms-post-choice-dialog.component.ts.de-DE.i18n.data-DgAHAzJM.mjs +10 -0
- package/websql/fesm2022/cms-websql-taon-cms-post-choice-dialog.component.ts.de-DE.i18n.data-DgAHAzJM.mjs.map +1 -0
- package/websql/fesm2022/cms-websql-taon-cms-post-choice-dialog.component.ts.en-US.i18n.data-DAA5R9fI.mjs +10 -0
- package/websql/fesm2022/cms-websql-taon-cms-post-choice-dialog.component.ts.en-US.i18n.data-DAA5R9fI.mjs.map +1 -0
- package/websql/fesm2022/cms-websql-taon-cms-post-choice-dialog.component.ts.pl-PL.i18n.data-CyKmux96.mjs +10 -0
- package/websql/fesm2022/cms-websql-taon-cms-post-choice-dialog.component.ts.pl-PL.i18n.data-CyKmux96.mjs.map +1 -0
- package/websql/fesm2022/cms-websql-taon-cms-post-details-page.component.ts.de-DE.i18n.data-BjeCidkf.mjs +21 -0
- package/websql/fesm2022/cms-websql-taon-cms-post-details-page.component.ts.de-DE.i18n.data-BjeCidkf.mjs.map +1 -0
- package/websql/fesm2022/cms-websql-taon-cms-post-details-page.component.ts.pl-PL.i18n.data-SgEE6oFs.mjs +21 -0
- package/websql/fesm2022/cms-websql-taon-cms-post-details-page.component.ts.pl-PL.i18n.data-SgEE6oFs.mjs.map +1 -0
- package/websql/fesm2022/cms-websql-taon-cms-post-table-actions.directive.ts.de-DE.i18n.data-D2WBOl0S.mjs +106 -0
- package/websql/fesm2022/cms-websql-taon-cms-post-table-actions.directive.ts.de-DE.i18n.data-D2WBOl0S.mjs.map +1 -0
- package/websql/fesm2022/cms-websql-taon-cms-post-table-actions.directive.ts.en-US.i18n.data-BONUISS3.mjs +87 -0
- package/websql/fesm2022/cms-websql-taon-cms-post-table-actions.directive.ts.en-US.i18n.data-BONUISS3.mjs.map +1 -0
- package/websql/fesm2022/cms-websql-taon-cms-post-table-actions.directive.ts.pl-PL.i18n.data-COdeP-kl.mjs +106 -0
- package/websql/fesm2022/cms-websql-taon-cms-post-table-actions.directive.ts.pl-PL.i18n.data-COdeP-kl.mjs.map +1 -0
- package/websql/fesm2022/cms-websql-taon-cms-post-thumbnail.component.ts.de-DE.i18n.data-B5JcoASn.mjs +16 -0
- package/websql/fesm2022/cms-websql-taon-cms-post-thumbnail.component.ts.de-DE.i18n.data-B5JcoASn.mjs.map +1 -0
- package/websql/fesm2022/cms-websql-taon-cms-post-thumbnail.component.ts.en-US.i18n.data-BTv1ecMg.mjs +15 -0
- package/websql/fesm2022/cms-websql-taon-cms-post-thumbnail.component.ts.en-US.i18n.data-BTv1ecMg.mjs.map +1 -0
- package/websql/fesm2022/cms-websql-taon-cms-post-thumbnail.component.ts.pl-PL.i18n.data-CNPdfcRa.mjs +16 -0
- package/websql/fesm2022/cms-websql-taon-cms-post-thumbnail.component.ts.pl-PL.i18n.data-CNPdfcRa.mjs.map +1 -0
- package/websql/fesm2022/cms-websql-taon-cms-post.component.html.de-DE.i18n.data-C5Nxovtl.mjs +782 -0
- package/websql/fesm2022/cms-websql-taon-cms-post.component.html.de-DE.i18n.data-C5Nxovtl.mjs.map +1 -0
- package/websql/fesm2022/cms-websql-taon-cms-post.component.html.en-US.i18n.data-BTWsCDp3.mjs +703 -0
- package/websql/fesm2022/cms-websql-taon-cms-post.component.html.en-US.i18n.data-BTWsCDp3.mjs.map +1 -0
- package/websql/fesm2022/cms-websql-taon-cms-post.component.html.pl-PL.i18n.data-CZhAYAQh.mjs +784 -0
- package/websql/fesm2022/cms-websql-taon-cms-post.component.html.pl-PL.i18n.data-CZhAYAQh.mjs.map +1 -0
- package/websql/fesm2022/cms-websql-taon-cms-post.component.ts.de-DE.i18n.data-D10xOAxh.mjs +356 -0
- package/websql/fesm2022/cms-websql-taon-cms-post.component.ts.de-DE.i18n.data-D10xOAxh.mjs.map +1 -0
- package/websql/fesm2022/cms-websql-taon-cms-post.component.ts.en-US.i18n.data-D1Fh0Nd6.mjs +315 -0
- package/websql/fesm2022/cms-websql-taon-cms-post.component.ts.en-US.i18n.data-D1Fh0Nd6.mjs.map +1 -0
- package/websql/fesm2022/cms-websql-taon-cms-post.component.ts.pl-PL.i18n.data-C-sVs8_U.mjs +356 -0
- package/websql/fesm2022/cms-websql-taon-cms-post.component.ts.pl-PL.i18n.data-C-sVs8_U.mjs.map +1 -0
- package/websql/fesm2022/cms-websql-taon-cms-posts-backoffice.component.html.de-DE.i18n.data-DSmr29ff.mjs +56 -0
- package/websql/fesm2022/cms-websql-taon-cms-posts-backoffice.component.html.de-DE.i18n.data-DSmr29ff.mjs.map +1 -0
- package/websql/fesm2022/cms-websql-taon-cms-posts-backoffice.component.html.en-US.i18n.data-BdmAOpiv.mjs +49 -0
- package/websql/fesm2022/cms-websql-taon-cms-posts-backoffice.component.html.en-US.i18n.data-BdmAOpiv.mjs.map +1 -0
- package/websql/fesm2022/cms-websql-taon-cms-posts-backoffice.component.html.pl-PL.i18n.data-_PdbwRPQ.mjs +56 -0
- package/websql/fesm2022/cms-websql-taon-cms-posts-backoffice.component.html.pl-PL.i18n.data-_PdbwRPQ.mjs.map +1 -0
- package/websql/fesm2022/cms-websql-taon-cms-posts-backoffice.component.ts.de-DE.i18n.data-DWdrbrWh.mjs +26 -0
- package/websql/fesm2022/cms-websql-taon-cms-posts-backoffice.component.ts.de-DE.i18n.data-DWdrbrWh.mjs.map +1 -0
- package/websql/fesm2022/cms-websql-taon-cms-posts-backoffice.component.ts.pl-PL.i18n.data-Bzw-JYHR.mjs +26 -0
- package/websql/fesm2022/cms-websql-taon-cms-posts-backoffice.component.ts.pl-PL.i18n.data-Bzw-JYHR.mjs.map +1 -0
- package/websql/fesm2022/cms-websql-taon-cms-revision-chooser.component.html.de-DE.i18n.data-BzxwJAOV.mjs +85 -0
- package/websql/fesm2022/cms-websql-taon-cms-revision-chooser.component.html.de-DE.i18n.data-BzxwJAOV.mjs.map +1 -0
- package/websql/fesm2022/cms-websql-taon-cms-revision-chooser.component.html.en-US.i18n.data-BPW-SQof.mjs +85 -0
- package/websql/fesm2022/cms-websql-taon-cms-revision-chooser.component.html.en-US.i18n.data-BPW-SQof.mjs.map +1 -0
- package/websql/fesm2022/cms-websql-taon-cms-revision-chooser.component.html.pl-PL.i18n.data-oZDddcYy.mjs +85 -0
- package/websql/fesm2022/cms-websql-taon-cms-revision-chooser.component.html.pl-PL.i18n.data-oZDddcYy.mjs.map +1 -0
- package/websql/fesm2022/cms-websql-taon-cms-taxonomy-quick-create-dialog.component.ts.de-DE.i18n.data-DzXbIr4W.mjs +46 -0
- package/websql/fesm2022/cms-websql-taon-cms-taxonomy-quick-create-dialog.component.ts.de-DE.i18n.data-DzXbIr4W.mjs.map +1 -0
- package/websql/fesm2022/cms-websql-taon-cms-taxonomy-quick-create-dialog.component.ts.pl-PL.i18n.data-O8gOaUbZ.mjs +46 -0
- package/websql/fesm2022/cms-websql-taon-cms-taxonomy-quick-create-dialog.component.ts.pl-PL.i18n.data-O8gOaUbZ.mjs.map +1 -0
- package/websql/fesm2022/cms-websql-taon-cms-website-feature.constants.ts.de-DE.i18n.data-7KWUHv80.mjs +15 -0
- package/websql/fesm2022/cms-websql-taon-cms-website-feature.constants.ts.de-DE.i18n.data-7KWUHv80.mjs.map +1 -0
- package/websql/fesm2022/cms-websql-taon-cms-website-feature.constants.ts.en-US.i18n.data-CEZNKxnS.mjs +15 -0
- package/websql/fesm2022/cms-websql-taon-cms-website-feature.constants.ts.en-US.i18n.data-CEZNKxnS.mjs.map +1 -0
- package/websql/fesm2022/cms-websql-taon-cms-website-feature.constants.ts.pl-PL.i18n.data-C1Pg6u05.mjs +15 -0
- package/websql/fesm2022/cms-websql-taon-cms-website-feature.constants.ts.pl-PL.i18n.data-C1Pg6u05.mjs.map +1 -0
- package/websql/fesm2022/cms-websql-taon-cms-website-feature.controller.ts.de-DE.i18n.data-B833IXhG.mjs +16 -0
- package/websql/fesm2022/cms-websql-taon-cms-website-feature.controller.ts.de-DE.i18n.data-B833IXhG.mjs.map +1 -0
- package/websql/fesm2022/cms-websql-taon-cms-website-feature.controller.ts.en-US.i18n.data-BXCVLjol.mjs +15 -0
- package/websql/fesm2022/cms-websql-taon-cms-website-feature.controller.ts.en-US.i18n.data-BXCVLjol.mjs.map +1 -0
- package/websql/fesm2022/cms-websql-taon-cms-website-feature.controller.ts.pl-PL.i18n.data-cvAe8tlO.mjs +16 -0
- package/websql/fesm2022/cms-websql-taon-cms-website-feature.controller.ts.pl-PL.i18n.data-cvAe8tlO.mjs.map +1 -0
- package/websql/fesm2022/cms-websql-taon-cms-website-features.component.html.de-DE.i18n.data-DG8MgAsi.mjs +46 -0
- package/websql/fesm2022/cms-websql-taon-cms-website-features.component.html.de-DE.i18n.data-DG8MgAsi.mjs.map +1 -0
- package/websql/fesm2022/cms-websql-taon-cms-website-features.component.html.en-US.i18n.data-D9DUdN2h.mjs +39 -0
- package/websql/fesm2022/cms-websql-taon-cms-website-features.component.html.en-US.i18n.data-D9DUdN2h.mjs.map +1 -0
- package/websql/fesm2022/cms-websql-taon-cms-website-features.component.html.pl-PL.i18n.data-CTKpSoCT.mjs +46 -0
- package/websql/fesm2022/cms-websql-taon-cms-website-features.component.html.pl-PL.i18n.data-CTKpSoCT.mjs.map +1 -0
- package/websql/fesm2022/cms-websql-taon-cms-website-features.component.ts.de-DE.i18n.data-DbY1ZXTp.mjs +56 -0
- package/websql/fesm2022/cms-websql-taon-cms-website-features.component.ts.de-DE.i18n.data-DbY1ZXTp.mjs.map +1 -0
- package/websql/fesm2022/cms-websql-taon-cms-website-features.component.ts.en-US.i18n.data-DkS9fy2p.mjs +47 -0
- package/websql/fesm2022/cms-websql-taon-cms-website-features.component.ts.en-US.i18n.data-DkS9fy2p.mjs.map +1 -0
- package/websql/fesm2022/cms-websql-taon-cms-website-features.component.ts.pl-PL.i18n.data-BMtWbepK.mjs +56 -0
- package/websql/fesm2022/cms-websql-taon-cms-website-features.component.ts.pl-PL.i18n.data-BMtWbepK.mjs.map +1 -0
- package/websql/fesm2022/cms-websql-taon-related-post-chooser.component.html.de-DE.i18n.data-CvP188BM.mjs +56 -0
- package/websql/fesm2022/cms-websql-taon-related-post-chooser.component.html.de-DE.i18n.data-CvP188BM.mjs.map +1 -0
- package/websql/fesm2022/cms-websql-taon-related-post-chooser.component.html.en-US.i18n.data-CWlzbxd9.mjs +54 -0
- package/websql/fesm2022/cms-websql-taon-related-post-chooser.component.html.en-US.i18n.data-CWlzbxd9.mjs.map +1 -0
- package/websql/fesm2022/cms-websql-taon-related-post-chooser.component.html.pl-PL.i18n.data-6QX6kPEU.mjs +56 -0
- package/websql/fesm2022/cms-websql-taon-related-post-chooser.component.html.pl-PL.i18n.data-6QX6kPEU.mjs.map +1 -0
- package/websql/fesm2022/cms-websql-taon-related-post-chooser.component.ts.de-DE.i18n.data-qsAd2fKC.mjs +21 -0
- package/websql/fesm2022/cms-websql-taon-related-post-chooser.component.ts.de-DE.i18n.data-qsAd2fKC.mjs.map +1 -0
- package/websql/fesm2022/cms-websql-taon-related-post-chooser.component.ts.en-US.i18n.data-DPxzZXI5.mjs +21 -0
- package/websql/fesm2022/cms-websql-taon-related-post-chooser.component.ts.en-US.i18n.data-DPxzZXI5.mjs.map +1 -0
- package/websql/fesm2022/cms-websql-taon-related-post-chooser.component.ts.pl-PL.i18n.data-CKsWMfVJ.mjs +21 -0
- package/websql/fesm2022/cms-websql-taon-related-post-chooser.component.ts.pl-PL.i18n.data-CKsWMfVJ.mjs.map +1 -0
- package/websql/fesm2022/cms-websql.mjs +5632 -1073
- package/websql/fesm2022/cms-websql.mjs.map +1 -1
- package/websql/package.json +1 -1
- package/websql/types/cms-websql.d.ts +590 -29
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-backoffice.component.html.de-DE.i18n.data-D88hdbKZ.mjs +21 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-backoffice.component.html.de-DE.i18n.data-D88hdbKZ.mjs.map +1 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-backoffice.component.html.en-US.i18n.data-BBfY22em.mjs +21 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-backoffice.component.html.en-US.i18n.data-BBfY22em.mjs.map +1 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-backoffice.component.html.pl-PL.i18n.data-CLDeQzbU.mjs +21 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-backoffice.component.html.pl-PL.i18n.data-CLDeQzbU.mjs.map +1 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-backoffice.routes.ts.de-DE.i18n.data-DJhjJIO8.mjs +46 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-backoffice.routes.ts.de-DE.i18n.data-DJhjJIO8.mjs.map +1 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-backoffice.routes.ts.en-US.i18n.data-auxfl-H0.mjs +43 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-backoffice.routes.ts.en-US.i18n.data-auxfl-H0.mjs.map +1 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-backoffice.routes.ts.pl-PL.i18n.data-ankQVnq7.mjs +46 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-backoffice.routes.ts.pl-PL.i18n.data-ankQVnq7.mjs.map +1 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comment.controller.ts.de-DE.i18n.data-CFvuWRZk.mjs +116 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comment.controller.ts.de-DE.i18n.data-CFvuWRZk.mjs.map +1 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comment.controller.ts.en-US.i18n.data-C3jR5ih9.mjs +95 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comment.controller.ts.en-US.i18n.data-C3jR5ih9.mjs.map +1 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comment.controller.ts.pl-PL.i18n.data-CMer0PWE.mjs +116 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comment.controller.ts.pl-PL.i18n.data-CMer0PWE.mjs.map +1 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments-all-preview-backoffice.component.html.de-DE.i18n.data-BgFuIvX3.mjs +91 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments-all-preview-backoffice.component.html.de-DE.i18n.data-BgFuIvX3.mjs.map +1 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments-all-preview-backoffice.component.html.en-US.i18n.data-CxAmwZV5.mjs +75 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments-all-preview-backoffice.component.html.en-US.i18n.data-CxAmwZV5.mjs.map +1 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments-all-preview-backoffice.component.html.pl-PL.i18n.data-4jIMpYLl.mjs +91 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments-all-preview-backoffice.component.html.pl-PL.i18n.data-4jIMpYLl.mjs.map +1 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments-all-preview-backoffice.component.ts.de-DE.i18n.data-Dhs5rr6i.mjs +56 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments-all-preview-backoffice.component.ts.de-DE.i18n.data-Dhs5rr6i.mjs.map +1 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments-all-preview-backoffice.component.ts.en-US.i18n.data-JTvff5GQ.mjs +47 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments-all-preview-backoffice.component.ts.en-US.i18n.data-JTvff5GQ.mjs.map +1 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments-all-preview-backoffice.component.ts.pl-PL.i18n.data-BGTxiqaA.mjs +56 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments-all-preview-backoffice.component.ts.pl-PL.i18n.data-BGTxiqaA.mjs.map +1 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments-backoffice.component.ts.de-DE.i18n.data-EaW1CIne.mjs +10 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments-backoffice.component.ts.de-DE.i18n.data-EaW1CIne.mjs.map +1 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments-backoffice.component.ts.en-US.i18n.data-BA8jyiT9.mjs +10 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments-backoffice.component.ts.en-US.i18n.data-BA8jyiT9.mjs.map +1 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments-backoffice.component.ts.pl-PL.i18n.data-CXA9V8dv.mjs +10 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments-backoffice.component.ts.pl-PL.i18n.data-CXA9V8dv.mjs.map +1 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments-backoffice.routes.ts.de-DE.i18n.data-DN_A_6t0.mjs +26 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments-backoffice.routes.ts.de-DE.i18n.data-DN_A_6t0.mjs.map +1 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments-backoffice.routes.ts.en-US.i18n.data-DcZclhbF.mjs +23 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments-backoffice.routes.ts.en-US.i18n.data-DcZclhbF.mjs.map +1 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments-backoffice.routes.ts.pl-PL.i18n.data-BAlMmlVF.mjs +26 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments-backoffice.routes.ts.pl-PL.i18n.data-BAlMmlVF.mjs.map +1 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments-blocked-users.component.html.de-DE.i18n.data-BnnKaW7d.mjs +71 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments-blocked-users.component.html.de-DE.i18n.data-BnnKaW7d.mjs.map +1 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments-blocked-users.component.html.en-US.i18n.data-CgeNHhyp.mjs +59 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments-blocked-users.component.html.en-US.i18n.data-CgeNHhyp.mjs.map +1 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments-blocked-users.component.html.pl-PL.i18n.data-S9CzZuXo.mjs +71 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments-blocked-users.component.html.pl-PL.i18n.data-S9CzZuXo.mjs.map +1 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments-blocked-users.component.ts.de-DE.i18n.data-DQ7Y0yrN.mjs +26 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments-blocked-users.component.ts.de-DE.i18n.data-DQ7Y0yrN.mjs.map +1 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments-blocked-users.component.ts.en-US.i18n.data-lPrTXsQ3.mjs +23 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments-blocked-users.component.ts.en-US.i18n.data-lPrTXsQ3.mjs.map +1 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments-blocked-users.component.ts.pl-PL.i18n.data-D6hIXQUU.mjs +26 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments-blocked-users.component.ts.pl-PL.i18n.data-D6hIXQUU.mjs.map +1 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments-filters-settings.component.html.de-DE.i18n.data-DiqTdGHS.mjs +46 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments-filters-settings.component.html.de-DE.i18n.data-DiqTdGHS.mjs.map +1 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments-filters-settings.component.html.en-US.i18n.data-wUWmiP5d.mjs +39 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments-filters-settings.component.html.en-US.i18n.data-wUWmiP5d.mjs.map +1 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments-filters-settings.component.html.pl-PL.i18n.data-DMGv6gRh.mjs +46 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments-filters-settings.component.html.pl-PL.i18n.data-DMGv6gRh.mjs.map +1 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments-filters-settings.component.ts.de-DE.i18n.data-D-1JyW27.mjs +26 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments-filters-settings.component.ts.de-DE.i18n.data-D-1JyW27.mjs.map +1 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments-filters-settings.component.ts.en-US.i18n.data-w3VkHulX.mjs +23 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments-filters-settings.component.ts.en-US.i18n.data-w3VkHulX.mjs.map +1 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments-filters-settings.component.ts.pl-PL.i18n.data-Bc1vkvaG.mjs +26 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments-filters-settings.component.ts.pl-PL.i18n.data-Bc1vkvaG.mjs.map +1 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments.component.html.de-DE.i18n.data-B0wiDu57.mjs +96 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments.component.html.de-DE.i18n.data-B0wiDu57.mjs.map +1 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments.component.html.en-US.i18n.data-DQZzKuDg.mjs +79 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments.component.html.en-US.i18n.data-DQZzKuDg.mjs.map +1 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments.component.html.pl-PL.i18n.data-DunXhFxG.mjs +96 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments.component.html.pl-PL.i18n.data-DunXhFxG.mjs.map +1 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments.component.ts.de-DE.i18n.data-DDOrKE7G.mjs +36 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments.component.ts.de-DE.i18n.data-DDOrKE7G.mjs.map +1 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments.component.ts.en-US.i18n.data-DTewS-E2.mjs +31 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments.component.ts.en-US.i18n.data-DTewS-E2.mjs.map +1 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments.component.ts.pl-PL.i18n.data-DIxTOu6m.mjs +36 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-comments.component.ts.pl-PL.i18n.data-DIxTOu6m.mjs.map +1 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-course-backoffice.component.html.de-DE.i18n.data-B_iK45FT.mjs +66 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-course-backoffice.component.html.de-DE.i18n.data-B_iK45FT.mjs.map +1 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-course-backoffice.component.html.en-US.i18n.data-_mzVXju6.mjs +55 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-course-backoffice.component.html.en-US.i18n.data-_mzVXju6.mjs.map +1 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-course-backoffice.component.html.pl-PL.i18n.data-rm6mnp87.mjs +66 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-course-backoffice.component.html.pl-PL.i18n.data-rm6mnp87.mjs.map +1 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-course-backoffice.component.ts.de-DE.i18n.data-CXUYhyiy.mjs +31 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-course-backoffice.component.ts.de-DE.i18n.data-CXUYhyiy.mjs.map +1 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-course-backoffice.component.ts.pl-PL.i18n.data-D_WXs4xC.mjs +31 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-course-backoffice.component.ts.pl-PL.i18n.data-D_WXs4xC.mjs.map +1 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-course-contents.component.html.de-DE.i18n.data-DgheAMw0.mjs +46 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-course-contents.component.html.de-DE.i18n.data-DgheAMw0.mjs.map +1 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-course-contents.component.html.en-US.i18n.data-D_PCgxaU.mjs +39 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-course-contents.component.html.en-US.i18n.data-D_PCgxaU.mjs.map +1 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-course-contents.component.html.pl-PL.i18n.data-DIgNFeGb.mjs +46 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-course-contents.component.html.pl-PL.i18n.data-DIgNFeGb.mjs.map +1 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-course-contents.component.ts.de-DE.i18n.data-BhW3_5XP.mjs +41 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-course-contents.component.ts.de-DE.i18n.data-BhW3_5XP.mjs.map +1 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-course-contents.component.ts.en-US.i18n.data-D6Qst9Xc.mjs +35 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-course-contents.component.ts.en-US.i18n.data-D6Qst9Xc.mjs.map +1 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-course-contents.component.ts.pl-PL.i18n.data-DxaQZeE8.mjs +41 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-course-contents.component.ts.pl-PL.i18n.data-DxaQZeE8.mjs.map +1 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-course-cover.component.ts.de-DE.i18n.data-ClJlH4iC.mjs +16 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-course-cover.component.ts.de-DE.i18n.data-ClJlH4iC.mjs.map +1 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-course-cover.component.ts.pl-PL.i18n.data-CgkCx2zO.mjs +16 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-course-cover.component.ts.pl-PL.i18n.data-CgkCx2zO.mjs.map +1 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post-choice-dialog.component.html.de-DE.i18n.data-BngVW1ST.mjs +21 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post-choice-dialog.component.html.de-DE.i18n.data-BngVW1ST.mjs.map +1 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post-choice-dialog.component.html.en-US.i18n.data-BmZmONdL.mjs +19 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post-choice-dialog.component.html.en-US.i18n.data-BmZmONdL.mjs.map +1 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post-choice-dialog.component.html.pl-PL.i18n.data-CUcC-r1T.mjs +21 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post-choice-dialog.component.html.pl-PL.i18n.data-CUcC-r1T.mjs.map +1 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post-choice-dialog.component.ts.de-DE.i18n.data-DdQZA_Pt.mjs +10 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post-choice-dialog.component.ts.de-DE.i18n.data-DdQZA_Pt.mjs.map +1 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post-choice-dialog.component.ts.en-US.i18n.data-Ccy7Dcvv.mjs +10 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post-choice-dialog.component.ts.en-US.i18n.data-Ccy7Dcvv.mjs.map +1 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post-choice-dialog.component.ts.pl-PL.i18n.data-CjnsarRp.mjs +10 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post-choice-dialog.component.ts.pl-PL.i18n.data-CjnsarRp.mjs.map +1 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post-details-page.component.ts.de-DE.i18n.data-CcdsaHai.mjs +21 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post-details-page.component.ts.de-DE.i18n.data-CcdsaHai.mjs.map +1 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post-details-page.component.ts.pl-PL.i18n.data-DpJ4HWjJ.mjs +21 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post-details-page.component.ts.pl-PL.i18n.data-DpJ4HWjJ.mjs.map +1 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post-table-actions.directive.ts.de-DE.i18n.data-Bb5SdKYV.mjs +106 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post-table-actions.directive.ts.de-DE.i18n.data-Bb5SdKYV.mjs.map +1 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post-table-actions.directive.ts.en-US.i18n.data-6hitV3EB.mjs +87 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post-table-actions.directive.ts.en-US.i18n.data-6hitV3EB.mjs.map +1 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post-table-actions.directive.ts.pl-PL.i18n.data-A45S-VFi.mjs +106 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post-table-actions.directive.ts.pl-PL.i18n.data-A45S-VFi.mjs.map +1 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post-thumbnail.component.ts.de-DE.i18n.data-CBcBZFVK.mjs +16 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post-thumbnail.component.ts.de-DE.i18n.data-CBcBZFVK.mjs.map +1 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post-thumbnail.component.ts.en-US.i18n.data-CuYgfCFH.mjs +15 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post-thumbnail.component.ts.en-US.i18n.data-CuYgfCFH.mjs.map +1 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post-thumbnail.component.ts.pl-PL.i18n.data-BWTN9DLn.mjs +16 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post-thumbnail.component.ts.pl-PL.i18n.data-BWTN9DLn.mjs.map +1 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post.component.html.de-DE.i18n.data-C8qKRpYs.mjs +782 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post.component.html.de-DE.i18n.data-C8qKRpYs.mjs.map +1 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post.component.html.en-US.i18n.data-ClarunPV.mjs +703 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post.component.html.en-US.i18n.data-ClarunPV.mjs.map +1 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post.component.html.pl-PL.i18n.data-YtHY1P_8.mjs +784 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post.component.html.pl-PL.i18n.data-YtHY1P_8.mjs.map +1 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post.component.ts.de-DE.i18n.data-Dv-cf9Kp.mjs +356 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post.component.ts.de-DE.i18n.data-Dv-cf9Kp.mjs.map +1 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post.component.ts.en-US.i18n.data-CHBqahB1.mjs +315 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post.component.ts.en-US.i18n.data-CHBqahB1.mjs.map +1 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post.component.ts.pl-PL.i18n.data-btgJU4-b.mjs +356 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post.component.ts.pl-PL.i18n.data-btgJU4-b.mjs.map +1 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-posts-backoffice.component.html.de-DE.i18n.data-Dn3C-NeF.mjs +56 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-posts-backoffice.component.html.de-DE.i18n.data-Dn3C-NeF.mjs.map +1 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-posts-backoffice.component.html.en-US.i18n.data-DhJYk42h.mjs +49 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-posts-backoffice.component.html.en-US.i18n.data-DhJYk42h.mjs.map +1 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-posts-backoffice.component.html.pl-PL.i18n.data-BtDLyX1Z.mjs +56 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-posts-backoffice.component.html.pl-PL.i18n.data-BtDLyX1Z.mjs.map +1 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-posts-backoffice.component.ts.de-DE.i18n.data-J--vMr2r.mjs +26 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-posts-backoffice.component.ts.de-DE.i18n.data-J--vMr2r.mjs.map +1 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-posts-backoffice.component.ts.pl-PL.i18n.data-SKutIf3a.mjs +26 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-posts-backoffice.component.ts.pl-PL.i18n.data-SKutIf3a.mjs.map +1 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-revision-chooser.component.html.de-DE.i18n.data-DeyMYGTO.mjs +85 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-revision-chooser.component.html.de-DE.i18n.data-DeyMYGTO.mjs.map +1 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-revision-chooser.component.html.en-US.i18n.data-EwQjW7Gv.mjs +85 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-revision-chooser.component.html.en-US.i18n.data-EwQjW7Gv.mjs.map +1 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-revision-chooser.component.html.pl-PL.i18n.data-Dj1fpWsE.mjs +85 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-revision-chooser.component.html.pl-PL.i18n.data-Dj1fpWsE.mjs.map +1 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-taxonomy-quick-create-dialog.component.ts.de-DE.i18n.data-BUTv60Ob.mjs +46 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-taxonomy-quick-create-dialog.component.ts.de-DE.i18n.data-BUTv60Ob.mjs.map +1 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-taxonomy-quick-create-dialog.component.ts.pl-PL.i18n.data-DQqjaSbj.mjs +46 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-taxonomy-quick-create-dialog.component.ts.pl-PL.i18n.data-DQqjaSbj.mjs.map +1 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-website-feature.constants.ts.de-DE.i18n.data-DWDITwha.mjs +15 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-website-feature.constants.ts.de-DE.i18n.data-DWDITwha.mjs.map +1 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-website-feature.constants.ts.en-US.i18n.data-Cn6elCXC.mjs +15 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-website-feature.constants.ts.en-US.i18n.data-Cn6elCXC.mjs.map +1 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-website-feature.constants.ts.pl-PL.i18n.data-DFY1frsV.mjs +15 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-website-feature.constants.ts.pl-PL.i18n.data-DFY1frsV.mjs.map +1 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-website-feature.controller.ts.de-DE.i18n.data-B0nQAYRS.mjs +16 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-website-feature.controller.ts.de-DE.i18n.data-B0nQAYRS.mjs.map +1 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-website-feature.controller.ts.en-US.i18n.data-DrS0Pc1K.mjs +15 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-website-feature.controller.ts.en-US.i18n.data-DrS0Pc1K.mjs.map +1 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-website-feature.controller.ts.pl-PL.i18n.data-5uc1NLU6.mjs +16 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-website-feature.controller.ts.pl-PL.i18n.data-5uc1NLU6.mjs.map +1 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-website-features.component.html.de-DE.i18n.data-B70MqP2z.mjs +46 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-website-features.component.html.de-DE.i18n.data-B70MqP2z.mjs.map +1 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-website-features.component.html.en-US.i18n.data-DNwWa56f.mjs +39 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-website-features.component.html.en-US.i18n.data-DNwWa56f.mjs.map +1 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-website-features.component.html.pl-PL.i18n.data-NeggLOfC.mjs +46 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-website-features.component.html.pl-PL.i18n.data-NeggLOfC.mjs.map +1 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-website-features.component.ts.de-DE.i18n.data-FJg8QI9k.mjs +56 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-website-features.component.ts.de-DE.i18n.data-FJg8QI9k.mjs.map +1 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-website-features.component.ts.en-US.i18n.data-CRKftwwO.mjs +47 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-website-features.component.ts.en-US.i18n.data-CRKftwwO.mjs.map +1 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-website-features.component.ts.pl-PL.i18n.data-BNwAdN2f.mjs +56 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-website-features.component.ts.pl-PL.i18n.data-BNwAdN2f.mjs.map +1 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-related-post-chooser.component.html.de-DE.i18n.data-CIbic1jQ.mjs +56 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-related-post-chooser.component.html.de-DE.i18n.data-CIbic1jQ.mjs.map +1 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-related-post-chooser.component.html.en-US.i18n.data-D0CdXkp1.mjs +54 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-related-post-chooser.component.html.en-US.i18n.data-D0CdXkp1.mjs.map +1 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-related-post-chooser.component.html.pl-PL.i18n.data-BY9-_4qc.mjs +56 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-related-post-chooser.component.html.pl-PL.i18n.data-BY9-_4qc.mjs.map +1 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-related-post-chooser.component.ts.de-DE.i18n.data-DctcEHBr.mjs +21 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-related-post-chooser.component.ts.de-DE.i18n.data-DctcEHBr.mjs.map +1 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-related-post-chooser.component.ts.en-US.i18n.data-D9rMB3a3.mjs +21 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-related-post-chooser.component.ts.en-US.i18n.data-D9rMB3a3.mjs.map +1 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-related-post-chooser.component.ts.pl-PL.i18n.data-CDUc0Uv7.mjs +21 -0
- package/websql-prod/fesm2022/cms-websql-prod-taon-related-post-chooser.component.ts.pl-PL.i18n.data-CDUc0Uv7.mjs.map +1 -0
- package/websql-prod/fesm2022/cms-websql-prod.mjs +5747 -1177
- package/websql-prod/fesm2022/cms-websql-prod.mjs.map +1 -1
- package/websql-prod/package.json +1 -1
- package/websql-prod/types/cms-websql-prod.d.ts +574 -29
- package/websql-prod.split-namespaces.json +19 -1
- package/browser/fesm2022/cms-browser-taon-cms-backoffice.component.html.de-DE.i18n.data-B5x4stX6.mjs +0 -16
- package/browser/fesm2022/cms-browser-taon-cms-backoffice.component.html.de-DE.i18n.data-B5x4stX6.mjs.map +0 -1
- package/browser/fesm2022/cms-browser-taon-cms-backoffice.component.html.en-US.i18n.data-DthWh8nt.mjs +0 -16
- package/browser/fesm2022/cms-browser-taon-cms-backoffice.component.html.en-US.i18n.data-DthWh8nt.mjs.map +0 -1
- package/browser/fesm2022/cms-browser-taon-cms-backoffice.component.html.pl-PL.i18n.data-iT7Urr8M.mjs +0 -16
- package/browser/fesm2022/cms-browser-taon-cms-backoffice.component.html.pl-PL.i18n.data-iT7Urr8M.mjs.map +0 -1
- package/browser/fesm2022/cms-browser-taon-cms-backoffice.routes.ts.de-DE.i18n.data-Dt6NX2ov.mjs +0 -35
- package/browser/fesm2022/cms-browser-taon-cms-backoffice.routes.ts.de-DE.i18n.data-Dt6NX2ov.mjs.map +0 -1
- package/browser/fesm2022/cms-browser-taon-cms-backoffice.routes.ts.en-US.i18n.data-seNJiHRQ.mjs +0 -35
- package/browser/fesm2022/cms-browser-taon-cms-backoffice.routes.ts.en-US.i18n.data-seNJiHRQ.mjs.map +0 -1
- package/browser/fesm2022/cms-browser-taon-cms-backoffice.routes.ts.pl-PL.i18n.data-C-K2Y0GF.mjs +0 -36
- package/browser/fesm2022/cms-browser-taon-cms-backoffice.routes.ts.pl-PL.i18n.data-C-K2Y0GF.mjs.map +0 -1
- package/browser/fesm2022/cms-browser-taon-cms-course-backoffice.component.html.de-DE.i18n.data-CLwoKssp.mjs +0 -55
- package/browser/fesm2022/cms-browser-taon-cms-course-backoffice.component.html.de-DE.i18n.data-CLwoKssp.mjs.map +0 -1
- package/browser/fesm2022/cms-browser-taon-cms-course-backoffice.component.html.en-US.i18n.data-Dff_IALd.mjs +0 -55
- package/browser/fesm2022/cms-browser-taon-cms-course-backoffice.component.html.en-US.i18n.data-Dff_IALd.mjs.map +0 -1
- package/browser/fesm2022/cms-browser-taon-cms-course-backoffice.component.html.pl-PL.i18n.data-_LndUfcD.mjs +0 -55
- package/browser/fesm2022/cms-browser-taon-cms-course-backoffice.component.html.pl-PL.i18n.data-_LndUfcD.mjs.map +0 -1
- package/browser/fesm2022/cms-browser-taon-cms-course-backoffice.component.ts.de-DE.i18n.data-DBAY8-77.mjs +0 -27
- package/browser/fesm2022/cms-browser-taon-cms-course-backoffice.component.ts.de-DE.i18n.data-DBAY8-77.mjs.map +0 -1
- package/browser/fesm2022/cms-browser-taon-cms-course-backoffice.component.ts.pl-PL.i18n.data-NqAcrhjt.mjs +0 -27
- package/browser/fesm2022/cms-browser-taon-cms-course-backoffice.component.ts.pl-PL.i18n.data-NqAcrhjt.mjs.map +0 -1
- package/browser/fesm2022/cms-browser-taon-cms-course-contents.component.html.de-DE.i18n.data-i1jNC8Bi.mjs +0 -31
- package/browser/fesm2022/cms-browser-taon-cms-course-contents.component.html.de-DE.i18n.data-i1jNC8Bi.mjs.map +0 -1
- package/browser/fesm2022/cms-browser-taon-cms-course-contents.component.html.en-US.i18n.data-Cf_yEr_6.mjs +0 -31
- package/browser/fesm2022/cms-browser-taon-cms-course-contents.component.html.en-US.i18n.data-Cf_yEr_6.mjs.map +0 -1
- package/browser/fesm2022/cms-browser-taon-cms-course-contents.component.html.pl-PL.i18n.data-DG2zoUK9.mjs +0 -31
- package/browser/fesm2022/cms-browser-taon-cms-course-contents.component.html.pl-PL.i18n.data-DG2zoUK9.mjs.map +0 -1
- package/browser/fesm2022/cms-browser-taon-cms-course-contents.component.ts.de-DE.i18n.data-CUm1WaRd.mjs +0 -31
- package/browser/fesm2022/cms-browser-taon-cms-course-contents.component.ts.de-DE.i18n.data-CUm1WaRd.mjs.map +0 -1
- package/browser/fesm2022/cms-browser-taon-cms-course-contents.component.ts.en-US.i18n.data-C8J0c1Zz.mjs +0 -31
- package/browser/fesm2022/cms-browser-taon-cms-course-contents.component.ts.en-US.i18n.data-C8J0c1Zz.mjs.map +0 -1
- package/browser/fesm2022/cms-browser-taon-cms-course-contents.component.ts.pl-PL.i18n.data-DttC-CgL.mjs +0 -31
- package/browser/fesm2022/cms-browser-taon-cms-course-contents.component.ts.pl-PL.i18n.data-DttC-CgL.mjs.map +0 -1
- package/browser/fesm2022/cms-browser-taon-cms-course-cover.component.ts.de-DE.i18n.data-DDN8R3M-.mjs +0 -15
- package/browser/fesm2022/cms-browser-taon-cms-course-cover.component.ts.de-DE.i18n.data-DDN8R3M-.mjs.map +0 -1
- package/browser/fesm2022/cms-browser-taon-cms-course-cover.component.ts.pl-PL.i18n.data-U89qKqAj.mjs +0 -15
- package/browser/fesm2022/cms-browser-taon-cms-course-cover.component.ts.pl-PL.i18n.data-U89qKqAj.mjs.map +0 -1
- package/browser/fesm2022/cms-browser-taon-cms-post-details-page.component.ts.de-DE.i18n.data-CUPt6JuN.mjs +0 -20
- package/browser/fesm2022/cms-browser-taon-cms-post-details-page.component.ts.de-DE.i18n.data-CUPt6JuN.mjs.map +0 -1
- package/browser/fesm2022/cms-browser-taon-cms-post-details-page.component.ts.pl-PL.i18n.data-DYSUl0we.mjs +0 -20
- package/browser/fesm2022/cms-browser-taon-cms-post-details-page.component.ts.pl-PL.i18n.data-DYSUl0we.mjs.map +0 -1
- package/browser/fesm2022/cms-browser-taon-cms-post-table-actions.directive.ts.de-DE.i18n.data-BJyXHMqp.mjs +0 -55
- package/browser/fesm2022/cms-browser-taon-cms-post-table-actions.directive.ts.de-DE.i18n.data-BJyXHMqp.mjs.map +0 -1
- package/browser/fesm2022/cms-browser-taon-cms-post-table-actions.directive.ts.en-US.i18n.data-BVFE-lu5.mjs +0 -55
- package/browser/fesm2022/cms-browser-taon-cms-post-table-actions.directive.ts.en-US.i18n.data-BVFE-lu5.mjs.map +0 -1
- package/browser/fesm2022/cms-browser-taon-cms-post-table-actions.directive.ts.pl-PL.i18n.data-CEyIUnLc.mjs +0 -55
- package/browser/fesm2022/cms-browser-taon-cms-post-table-actions.directive.ts.pl-PL.i18n.data-CEyIUnLc.mjs.map +0 -1
- package/browser/fesm2022/cms-browser-taon-cms-post.component.html.de-DE.i18n.data-CapQLQ5d.mjs +0 -376
- package/browser/fesm2022/cms-browser-taon-cms-post.component.html.de-DE.i18n.data-CapQLQ5d.mjs.map +0 -1
- package/browser/fesm2022/cms-browser-taon-cms-post.component.html.en-US.i18n.data-BUE8MsLX.mjs +0 -375
- package/browser/fesm2022/cms-browser-taon-cms-post.component.html.en-US.i18n.data-BUE8MsLX.mjs.map +0 -1
- package/browser/fesm2022/cms-browser-taon-cms-post.component.html.pl-PL.i18n.data-BCTWaUca.mjs +0 -376
- package/browser/fesm2022/cms-browser-taon-cms-post.component.html.pl-PL.i18n.data-BCTWaUca.mjs.map +0 -1
- package/browser/fesm2022/cms-browser-taon-cms-post.component.ts.de-DE.i18n.data-BYxiUf8C.mjs +0 -192
- package/browser/fesm2022/cms-browser-taon-cms-post.component.ts.de-DE.i18n.data-BYxiUf8C.mjs.map +0 -1
- package/browser/fesm2022/cms-browser-taon-cms-post.component.ts.en-US.i18n.data-lruEnzKH.mjs +0 -188
- package/browser/fesm2022/cms-browser-taon-cms-post.component.ts.en-US.i18n.data-lruEnzKH.mjs.map +0 -1
- package/browser/fesm2022/cms-browser-taon-cms-post.component.ts.pl-PL.i18n.data-CNsT81Pt.mjs +0 -192
- package/browser/fesm2022/cms-browser-taon-cms-post.component.ts.pl-PL.i18n.data-CNsT81Pt.mjs.map +0 -1
- package/browser/fesm2022/cms-browser-taon-cms-posts-backoffice.component.html.de-DE.i18n.data-BDH-9r3S.mjs +0 -49
- package/browser/fesm2022/cms-browser-taon-cms-posts-backoffice.component.html.de-DE.i18n.data-BDH-9r3S.mjs.map +0 -1
- package/browser/fesm2022/cms-browser-taon-cms-posts-backoffice.component.html.en-US.i18n.data-Bz5Qa6eJ.mjs +0 -49
- package/browser/fesm2022/cms-browser-taon-cms-posts-backoffice.component.html.en-US.i18n.data-Bz5Qa6eJ.mjs.map +0 -1
- package/browser/fesm2022/cms-browser-taon-cms-posts-backoffice.component.html.pl-PL.i18n.data-BEtQS-0C.mjs +0 -49
- package/browser/fesm2022/cms-browser-taon-cms-posts-backoffice.component.html.pl-PL.i18n.data-BEtQS-0C.mjs.map +0 -1
- package/browser/fesm2022/cms-browser-taon-cms-posts-backoffice.component.ts.de-DE.i18n.data-aMqPM6ev.mjs +0 -25
- package/browser/fesm2022/cms-browser-taon-cms-posts-backoffice.component.ts.de-DE.i18n.data-aMqPM6ev.mjs.map +0 -1
- package/browser/fesm2022/cms-browser-taon-cms-posts-backoffice.component.ts.pl-PL.i18n.data-D1D80yR3.mjs +0 -25
- package/browser/fesm2022/cms-browser-taon-cms-posts-backoffice.component.ts.pl-PL.i18n.data-D1D80yR3.mjs.map +0 -1
- package/browser/fesm2022/cms-browser-taon-cms-revision-chooser.component.html.de-DE.i18n.data-DjiWTtYe.mjs +0 -71
- package/browser/fesm2022/cms-browser-taon-cms-revision-chooser.component.html.de-DE.i18n.data-DjiWTtYe.mjs.map +0 -1
- package/browser/fesm2022/cms-browser-taon-cms-revision-chooser.component.html.en-US.i18n.data-CdG7f6f1.mjs +0 -71
- package/browser/fesm2022/cms-browser-taon-cms-revision-chooser.component.html.en-US.i18n.data-CdG7f6f1.mjs.map +0 -1
- package/browser/fesm2022/cms-browser-taon-cms-revision-chooser.component.html.pl-PL.i18n.data-Do3uVXlb.mjs +0 -71
- package/browser/fesm2022/cms-browser-taon-cms-revision-chooser.component.html.pl-PL.i18n.data-Do3uVXlb.mjs.map +0 -1
- package/browser/fesm2022/cms-browser-taon-cms-taxonomy-quick-create-dialog.component.ts.de-DE.i18n.data-C-9JBJz0.mjs +0 -39
- package/browser/fesm2022/cms-browser-taon-cms-taxonomy-quick-create-dialog.component.ts.de-DE.i18n.data-C-9JBJz0.mjs.map +0 -1
- package/browser/fesm2022/cms-browser-taon-cms-taxonomy-quick-create-dialog.component.ts.pl-PL.i18n.data-DWw-l8cK.mjs +0 -39
- package/browser/fesm2022/cms-browser-taon-cms-taxonomy-quick-create-dialog.component.ts.pl-PL.i18n.data-DWw-l8cK.mjs.map +0 -1
- package/browser/fesm2022/cms-browser-taon-related-post-chooser.component.html.de-DE.i18n.data-BsNPk0cG.mjs +0 -51
- package/browser/fesm2022/cms-browser-taon-related-post-chooser.component.html.de-DE.i18n.data-BsNPk0cG.mjs.map +0 -1
- package/browser/fesm2022/cms-browser-taon-related-post-chooser.component.html.en-US.i18n.data-BV9AnDid.mjs +0 -50
- package/browser/fesm2022/cms-browser-taon-related-post-chooser.component.html.en-US.i18n.data-BV9AnDid.mjs.map +0 -1
- package/browser/fesm2022/cms-browser-taon-related-post-chooser.component.html.pl-PL.i18n.data-VTZbP69l.mjs +0 -51
- package/browser/fesm2022/cms-browser-taon-related-post-chooser.component.html.pl-PL.i18n.data-VTZbP69l.mjs.map +0 -1
- package/browser/fesm2022/cms-browser-taon-related-post-chooser.component.ts.de-DE.i18n.data-DLWhi5lI.mjs +0 -21
- package/browser/fesm2022/cms-browser-taon-related-post-chooser.component.ts.de-DE.i18n.data-DLWhi5lI.mjs.map +0 -1
- package/browser/fesm2022/cms-browser-taon-related-post-chooser.component.ts.en-US.i18n.data-B5vaympv.mjs +0 -21
- package/browser/fesm2022/cms-browser-taon-related-post-chooser.component.ts.en-US.i18n.data-B5vaympv.mjs.map +0 -1
- package/browser/fesm2022/cms-browser-taon-related-post-chooser.component.ts.pl-PL.i18n.data-eSpfHb7u.mjs +0 -21
- package/browser/fesm2022/cms-browser-taon-related-post-chooser.component.ts.pl-PL.i18n.data-eSpfHb7u.mjs.map +0 -1
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-backoffice.component.html.de-DE.i18n.data-CqIu3bBE.mjs +0 -16
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-backoffice.component.html.de-DE.i18n.data-CqIu3bBE.mjs.map +0 -1
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-backoffice.component.html.en-US.i18n.data-q7WqXEJw.mjs +0 -16
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-backoffice.component.html.en-US.i18n.data-q7WqXEJw.mjs.map +0 -1
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-backoffice.component.html.pl-PL.i18n.data-BSwBNQpH.mjs +0 -16
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-backoffice.component.html.pl-PL.i18n.data-BSwBNQpH.mjs.map +0 -1
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-backoffice.routes.ts.de-DE.i18n.data-4S1imZUX.mjs +0 -35
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-backoffice.routes.ts.de-DE.i18n.data-4S1imZUX.mjs.map +0 -1
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-backoffice.routes.ts.en-US.i18n.data-bIYJXCtW.mjs +0 -35
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-backoffice.routes.ts.en-US.i18n.data-bIYJXCtW.mjs.map +0 -1
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-backoffice.routes.ts.pl-PL.i18n.data-Do9n0Gxn.mjs +0 -36
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-backoffice.routes.ts.pl-PL.i18n.data-Do9n0Gxn.mjs.map +0 -1
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-course-backoffice.component.html.de-DE.i18n.data-DMxbsPFR.mjs +0 -55
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-course-backoffice.component.html.de-DE.i18n.data-DMxbsPFR.mjs.map +0 -1
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-course-backoffice.component.html.en-US.i18n.data-DU5zG1X1.mjs +0 -55
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-course-backoffice.component.html.en-US.i18n.data-DU5zG1X1.mjs.map +0 -1
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-course-backoffice.component.html.pl-PL.i18n.data-C6nS0We7.mjs +0 -55
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-course-backoffice.component.html.pl-PL.i18n.data-C6nS0We7.mjs.map +0 -1
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-course-backoffice.component.ts.de-DE.i18n.data-D9XyARny.mjs +0 -27
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-course-backoffice.component.ts.de-DE.i18n.data-D9XyARny.mjs.map +0 -1
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-course-backoffice.component.ts.pl-PL.i18n.data-7YCuFbeg.mjs +0 -27
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-course-backoffice.component.ts.pl-PL.i18n.data-7YCuFbeg.mjs.map +0 -1
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-course-contents.component.html.de-DE.i18n.data-CqciMyPt.mjs +0 -31
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-course-contents.component.html.de-DE.i18n.data-CqciMyPt.mjs.map +0 -1
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-course-contents.component.html.en-US.i18n.data-CZpsjVOU.mjs +0 -31
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-course-contents.component.html.en-US.i18n.data-CZpsjVOU.mjs.map +0 -1
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-course-contents.component.html.pl-PL.i18n.data-bcDy_z0-.mjs +0 -31
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-course-contents.component.html.pl-PL.i18n.data-bcDy_z0-.mjs.map +0 -1
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-course-contents.component.ts.de-DE.i18n.data-C2LoW3lN.mjs +0 -31
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-course-contents.component.ts.de-DE.i18n.data-C2LoW3lN.mjs.map +0 -1
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-course-contents.component.ts.en-US.i18n.data-DP1mJztz.mjs +0 -31
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-course-contents.component.ts.en-US.i18n.data-DP1mJztz.mjs.map +0 -1
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-course-contents.component.ts.pl-PL.i18n.data-CKgBITdj.mjs +0 -31
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-course-contents.component.ts.pl-PL.i18n.data-CKgBITdj.mjs.map +0 -1
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-course-cover.component.ts.de-DE.i18n.data-CFPsdwHm.mjs +0 -15
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-course-cover.component.ts.de-DE.i18n.data-CFPsdwHm.mjs.map +0 -1
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-course-cover.component.ts.pl-PL.i18n.data-DxvRSDVu.mjs +0 -15
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-course-cover.component.ts.pl-PL.i18n.data-DxvRSDVu.mjs.map +0 -1
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post-details-page.component.ts.de-DE.i18n.data-DNJ9LJlX.mjs +0 -20
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post-details-page.component.ts.de-DE.i18n.data-DNJ9LJlX.mjs.map +0 -1
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post-details-page.component.ts.pl-PL.i18n.data-MhpcULsJ.mjs +0 -20
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post-details-page.component.ts.pl-PL.i18n.data-MhpcULsJ.mjs.map +0 -1
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post-table-actions.directive.ts.de-DE.i18n.data-90yrFKjF.mjs +0 -55
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post-table-actions.directive.ts.de-DE.i18n.data-90yrFKjF.mjs.map +0 -1
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post-table-actions.directive.ts.en-US.i18n.data-CH71xm4B.mjs +0 -55
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post-table-actions.directive.ts.en-US.i18n.data-CH71xm4B.mjs.map +0 -1
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post-table-actions.directive.ts.pl-PL.i18n.data-Df2DdA5N.mjs +0 -55
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post-table-actions.directive.ts.pl-PL.i18n.data-Df2DdA5N.mjs.map +0 -1
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post.component.html.de-DE.i18n.data-CAFFTK-X.mjs +0 -376
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post.component.html.de-DE.i18n.data-CAFFTK-X.mjs.map +0 -1
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post.component.html.en-US.i18n.data-mH65cs_6.mjs +0 -375
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post.component.html.en-US.i18n.data-mH65cs_6.mjs.map +0 -1
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post.component.html.pl-PL.i18n.data-BU3G_LCm.mjs +0 -376
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post.component.html.pl-PL.i18n.data-BU3G_LCm.mjs.map +0 -1
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post.component.ts.de-DE.i18n.data-cQQWKnwI.mjs +0 -192
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post.component.ts.de-DE.i18n.data-cQQWKnwI.mjs.map +0 -1
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post.component.ts.en-US.i18n.data-CZ3219rw.mjs +0 -188
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post.component.ts.en-US.i18n.data-CZ3219rw.mjs.map +0 -1
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post.component.ts.pl-PL.i18n.data-3odfuhvt.mjs +0 -192
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-post.component.ts.pl-PL.i18n.data-3odfuhvt.mjs.map +0 -1
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-posts-backoffice.component.html.de-DE.i18n.data-D9Z519ap.mjs +0 -49
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-posts-backoffice.component.html.de-DE.i18n.data-D9Z519ap.mjs.map +0 -1
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-posts-backoffice.component.html.en-US.i18n.data-BXpgykHy.mjs +0 -49
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-posts-backoffice.component.html.en-US.i18n.data-BXpgykHy.mjs.map +0 -1
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-posts-backoffice.component.html.pl-PL.i18n.data-f1LMnypn.mjs +0 -49
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-posts-backoffice.component.html.pl-PL.i18n.data-f1LMnypn.mjs.map +0 -1
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-posts-backoffice.component.ts.de-DE.i18n.data-t4gu8Pak.mjs +0 -25
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-posts-backoffice.component.ts.de-DE.i18n.data-t4gu8Pak.mjs.map +0 -1
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-posts-backoffice.component.ts.pl-PL.i18n.data-JlG6ZQo_.mjs +0 -25
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-posts-backoffice.component.ts.pl-PL.i18n.data-JlG6ZQo_.mjs.map +0 -1
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-revision-chooser.component.html.de-DE.i18n.data-DfxiewM_.mjs +0 -71
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-revision-chooser.component.html.de-DE.i18n.data-DfxiewM_.mjs.map +0 -1
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-revision-chooser.component.html.en-US.i18n.data-NF4fmGLN.mjs +0 -71
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-revision-chooser.component.html.en-US.i18n.data-NF4fmGLN.mjs.map +0 -1
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-revision-chooser.component.html.pl-PL.i18n.data-D30oRrBr.mjs +0 -71
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-revision-chooser.component.html.pl-PL.i18n.data-D30oRrBr.mjs.map +0 -1
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-taxonomy-quick-create-dialog.component.ts.de-DE.i18n.data-1p0JNGR5.mjs +0 -39
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-taxonomy-quick-create-dialog.component.ts.de-DE.i18n.data-1p0JNGR5.mjs.map +0 -1
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-taxonomy-quick-create-dialog.component.ts.pl-PL.i18n.data-VGsOSuPT.mjs +0 -39
- package/browser-prod/fesm2022/cms-browser-prod-taon-cms-taxonomy-quick-create-dialog.component.ts.pl-PL.i18n.data-VGsOSuPT.mjs.map +0 -1
- package/browser-prod/fesm2022/cms-browser-prod-taon-related-post-chooser.component.html.de-DE.i18n.data-Dv2W9o7g.mjs +0 -51
- package/browser-prod/fesm2022/cms-browser-prod-taon-related-post-chooser.component.html.de-DE.i18n.data-Dv2W9o7g.mjs.map +0 -1
- package/browser-prod/fesm2022/cms-browser-prod-taon-related-post-chooser.component.html.en-US.i18n.data-dk9lHW62.mjs +0 -50
- package/browser-prod/fesm2022/cms-browser-prod-taon-related-post-chooser.component.html.en-US.i18n.data-dk9lHW62.mjs.map +0 -1
- package/browser-prod/fesm2022/cms-browser-prod-taon-related-post-chooser.component.html.pl-PL.i18n.data-BHGjfdPv.mjs +0 -51
- package/browser-prod/fesm2022/cms-browser-prod-taon-related-post-chooser.component.html.pl-PL.i18n.data-BHGjfdPv.mjs.map +0 -1
- package/browser-prod/fesm2022/cms-browser-prod-taon-related-post-chooser.component.ts.de-DE.i18n.data-Cs-byi87.mjs +0 -21
- package/browser-prod/fesm2022/cms-browser-prod-taon-related-post-chooser.component.ts.de-DE.i18n.data-Cs-byi87.mjs.map +0 -1
- package/browser-prod/fesm2022/cms-browser-prod-taon-related-post-chooser.component.ts.en-US.i18n.data-CNpn80st.mjs +0 -21
- package/browser-prod/fesm2022/cms-browser-prod-taon-related-post-chooser.component.ts.en-US.i18n.data-CNpn80st.mjs.map +0 -1
- package/browser-prod/fesm2022/cms-browser-prod-taon-related-post-chooser.component.ts.pl-PL.i18n.data-BQ-wAONd.mjs +0 -21
- package/browser-prod/fesm2022/cms-browser-prod-taon-related-post-chooser.component.ts.pl-PL.i18n.data-BQ-wAONd.mjs.map +0 -1
- package/websql/fesm2022/cms-websql-taon-cms-backoffice.component.html.de-DE.i18n.data-D8iRvIyP.mjs +0 -16
- package/websql/fesm2022/cms-websql-taon-cms-backoffice.component.html.de-DE.i18n.data-D8iRvIyP.mjs.map +0 -1
- package/websql/fesm2022/cms-websql-taon-cms-backoffice.component.html.en-US.i18n.data-BcXsjPgL.mjs +0 -16
- package/websql/fesm2022/cms-websql-taon-cms-backoffice.component.html.en-US.i18n.data-BcXsjPgL.mjs.map +0 -1
- package/websql/fesm2022/cms-websql-taon-cms-backoffice.component.html.pl-PL.i18n.data-AgLZxi-R.mjs +0 -16
- package/websql/fesm2022/cms-websql-taon-cms-backoffice.component.html.pl-PL.i18n.data-AgLZxi-R.mjs.map +0 -1
- package/websql/fesm2022/cms-websql-taon-cms-backoffice.routes.ts.de-DE.i18n.data-D2bKsNoS.mjs +0 -35
- package/websql/fesm2022/cms-websql-taon-cms-backoffice.routes.ts.de-DE.i18n.data-D2bKsNoS.mjs.map +0 -1
- package/websql/fesm2022/cms-websql-taon-cms-backoffice.routes.ts.en-US.i18n.data-nw5h-4Th.mjs +0 -35
- package/websql/fesm2022/cms-websql-taon-cms-backoffice.routes.ts.en-US.i18n.data-nw5h-4Th.mjs.map +0 -1
- package/websql/fesm2022/cms-websql-taon-cms-backoffice.routes.ts.pl-PL.i18n.data-DWPxduFo.mjs +0 -36
- package/websql/fesm2022/cms-websql-taon-cms-backoffice.routes.ts.pl-PL.i18n.data-DWPxduFo.mjs.map +0 -1
- package/websql/fesm2022/cms-websql-taon-cms-course-backoffice.component.html.de-DE.i18n.data-DkSppX5j.mjs +0 -55
- package/websql/fesm2022/cms-websql-taon-cms-course-backoffice.component.html.de-DE.i18n.data-DkSppX5j.mjs.map +0 -1
- package/websql/fesm2022/cms-websql-taon-cms-course-backoffice.component.html.en-US.i18n.data-DaYr8I_Z.mjs +0 -55
- package/websql/fesm2022/cms-websql-taon-cms-course-backoffice.component.html.en-US.i18n.data-DaYr8I_Z.mjs.map +0 -1
- package/websql/fesm2022/cms-websql-taon-cms-course-backoffice.component.html.pl-PL.i18n.data-C6_Aqc3M.mjs +0 -55
- package/websql/fesm2022/cms-websql-taon-cms-course-backoffice.component.html.pl-PL.i18n.data-C6_Aqc3M.mjs.map +0 -1
- package/websql/fesm2022/cms-websql-taon-cms-course-backoffice.component.ts.de-DE.i18n.data-DvIyIfqQ.mjs +0 -27
- package/websql/fesm2022/cms-websql-taon-cms-course-backoffice.component.ts.de-DE.i18n.data-DvIyIfqQ.mjs.map +0 -1
- package/websql/fesm2022/cms-websql-taon-cms-course-backoffice.component.ts.pl-PL.i18n.data-CeW02Lcj.mjs +0 -27
- package/websql/fesm2022/cms-websql-taon-cms-course-backoffice.component.ts.pl-PL.i18n.data-CeW02Lcj.mjs.map +0 -1
- package/websql/fesm2022/cms-websql-taon-cms-course-contents.component.html.de-DE.i18n.data-C7w7bI4c.mjs +0 -31
- package/websql/fesm2022/cms-websql-taon-cms-course-contents.component.html.de-DE.i18n.data-C7w7bI4c.mjs.map +0 -1
- package/websql/fesm2022/cms-websql-taon-cms-course-contents.component.html.en-US.i18n.data-B0x36jpK.mjs +0 -31
- package/websql/fesm2022/cms-websql-taon-cms-course-contents.component.html.en-US.i18n.data-B0x36jpK.mjs.map +0 -1
- package/websql/fesm2022/cms-websql-taon-cms-course-contents.component.html.pl-PL.i18n.data-2drjM21N.mjs +0 -31
- package/websql/fesm2022/cms-websql-taon-cms-course-contents.component.html.pl-PL.i18n.data-2drjM21N.mjs.map +0 -1
- package/websql/fesm2022/cms-websql-taon-cms-course-contents.component.ts.de-DE.i18n.data-CL2w5q-S.mjs +0 -31
- package/websql/fesm2022/cms-websql-taon-cms-course-contents.component.ts.de-DE.i18n.data-CL2w5q-S.mjs.map +0 -1
- package/websql/fesm2022/cms-websql-taon-cms-course-contents.component.ts.en-US.i18n.data-DleMuJeD.mjs +0 -31
- package/websql/fesm2022/cms-websql-taon-cms-course-contents.component.ts.en-US.i18n.data-DleMuJeD.mjs.map +0 -1
- package/websql/fesm2022/cms-websql-taon-cms-course-contents.component.ts.pl-PL.i18n.data-DgkzL0Vq.mjs +0 -31
- package/websql/fesm2022/cms-websql-taon-cms-course-contents.component.ts.pl-PL.i18n.data-DgkzL0Vq.mjs.map +0 -1
- package/websql/fesm2022/cms-websql-taon-cms-course-cover.component.ts.de-DE.i18n.data-CPpw6mEf.mjs +0 -15
- package/websql/fesm2022/cms-websql-taon-cms-course-cover.component.ts.de-DE.i18n.data-CPpw6mEf.mjs.map +0 -1
- package/websql/fesm2022/cms-websql-taon-cms-course-cover.component.ts.pl-PL.i18n.data-DZsvqr38.mjs +0 -15
- package/websql/fesm2022/cms-websql-taon-cms-course-cover.component.ts.pl-PL.i18n.data-DZsvqr38.mjs.map +0 -1
- package/websql/fesm2022/cms-websql-taon-cms-post-details-page.component.ts.de-DE.i18n.data-ClIYIAz7.mjs +0 -20
- package/websql/fesm2022/cms-websql-taon-cms-post-details-page.component.ts.de-DE.i18n.data-ClIYIAz7.mjs.map +0 -1
- package/websql/fesm2022/cms-websql-taon-cms-post-details-page.component.ts.pl-PL.i18n.data-86Izoe2O.mjs +0 -20
- package/websql/fesm2022/cms-websql-taon-cms-post-details-page.component.ts.pl-PL.i18n.data-86Izoe2O.mjs.map +0 -1
- package/websql/fesm2022/cms-websql-taon-cms-post-table-actions.directive.ts.de-DE.i18n.data-CKCKZi29.mjs +0 -55
- package/websql/fesm2022/cms-websql-taon-cms-post-table-actions.directive.ts.de-DE.i18n.data-CKCKZi29.mjs.map +0 -1
- package/websql/fesm2022/cms-websql-taon-cms-post-table-actions.directive.ts.en-US.i18n.data-DUh-u4-P.mjs +0 -55
- package/websql/fesm2022/cms-websql-taon-cms-post-table-actions.directive.ts.en-US.i18n.data-DUh-u4-P.mjs.map +0 -1
- package/websql/fesm2022/cms-websql-taon-cms-post-table-actions.directive.ts.pl-PL.i18n.data-juzvMnde.mjs +0 -55
- package/websql/fesm2022/cms-websql-taon-cms-post-table-actions.directive.ts.pl-PL.i18n.data-juzvMnde.mjs.map +0 -1
- package/websql/fesm2022/cms-websql-taon-cms-post.component.html.de-DE.i18n.data-DJcuFwI4.mjs +0 -376
- package/websql/fesm2022/cms-websql-taon-cms-post.component.html.de-DE.i18n.data-DJcuFwI4.mjs.map +0 -1
- package/websql/fesm2022/cms-websql-taon-cms-post.component.html.en-US.i18n.data-DqG-6paf.mjs +0 -375
- package/websql/fesm2022/cms-websql-taon-cms-post.component.html.en-US.i18n.data-DqG-6paf.mjs.map +0 -1
- package/websql/fesm2022/cms-websql-taon-cms-post.component.html.pl-PL.i18n.data-okZz6YGc.mjs +0 -376
- package/websql/fesm2022/cms-websql-taon-cms-post.component.html.pl-PL.i18n.data-okZz6YGc.mjs.map +0 -1
- package/websql/fesm2022/cms-websql-taon-cms-post.component.ts.de-DE.i18n.data-KbNFIOV8.mjs +0 -192
- package/websql/fesm2022/cms-websql-taon-cms-post.component.ts.de-DE.i18n.data-KbNFIOV8.mjs.map +0 -1
- package/websql/fesm2022/cms-websql-taon-cms-post.component.ts.en-US.i18n.data-CIeHDfiP.mjs +0 -188
- package/websql/fesm2022/cms-websql-taon-cms-post.component.ts.en-US.i18n.data-CIeHDfiP.mjs.map +0 -1
- package/websql/fesm2022/cms-websql-taon-cms-post.component.ts.pl-PL.i18n.data-bze_EsKd.mjs +0 -192
- package/websql/fesm2022/cms-websql-taon-cms-post.component.ts.pl-PL.i18n.data-bze_EsKd.mjs.map +0 -1
- package/websql/fesm2022/cms-websql-taon-cms-posts-backoffice.component.html.de-DE.i18n.data-UXy-sMFK.mjs +0 -49
- package/websql/fesm2022/cms-websql-taon-cms-posts-backoffice.component.html.de-DE.i18n.data-UXy-sMFK.mjs.map +0 -1
- package/websql/fesm2022/cms-websql-taon-cms-posts-backoffice.component.html.en-US.i18n.data-DCBhrRtK.mjs +0 -49
- package/websql/fesm2022/cms-websql-taon-cms-posts-backoffice.component.html.en-US.i18n.data-DCBhrRtK.mjs.map +0 -1
- package/websql/fesm2022/cms-websql-taon-cms-posts-backoffice.component.html.pl-PL.i18n.data-B5lnW5fC.mjs +0 -49
- package/websql/fesm2022/cms-websql-taon-cms-posts-backoffice.component.html.pl-PL.i18n.data-B5lnW5fC.mjs.map +0 -1
- package/websql/fesm2022/cms-websql-taon-cms-posts-backoffice.component.ts.de-DE.i18n.data-B7blUYSz.mjs +0 -25
- package/websql/fesm2022/cms-websql-taon-cms-posts-backoffice.component.ts.de-DE.i18n.data-B7blUYSz.mjs.map +0 -1
- package/websql/fesm2022/cms-websql-taon-cms-posts-backoffice.component.ts.pl-PL.i18n.data-DusaGJ-_.mjs +0 -25
- package/websql/fesm2022/cms-websql-taon-cms-posts-backoffice.component.ts.pl-PL.i18n.data-DusaGJ-_.mjs.map +0 -1
- package/websql/fesm2022/cms-websql-taon-cms-revision-chooser.component.html.de-DE.i18n.data-DxlQZtXm.mjs +0 -71
- package/websql/fesm2022/cms-websql-taon-cms-revision-chooser.component.html.de-DE.i18n.data-DxlQZtXm.mjs.map +0 -1
- package/websql/fesm2022/cms-websql-taon-cms-revision-chooser.component.html.en-US.i18n.data-DJ0utYrm.mjs +0 -71
- package/websql/fesm2022/cms-websql-taon-cms-revision-chooser.component.html.en-US.i18n.data-DJ0utYrm.mjs.map +0 -1
- package/websql/fesm2022/cms-websql-taon-cms-revision-chooser.component.html.pl-PL.i18n.data-CXGF086L.mjs +0 -71
- package/websql/fesm2022/cms-websql-taon-cms-revision-chooser.component.html.pl-PL.i18n.data-CXGF086L.mjs.map +0 -1
- package/websql/fesm2022/cms-websql-taon-cms-taxonomy-quick-create-dialog.component.ts.de-DE.i18n.data-BBgvZEjP.mjs +0 -39
- package/websql/fesm2022/cms-websql-taon-cms-taxonomy-quick-create-dialog.component.ts.de-DE.i18n.data-BBgvZEjP.mjs.map +0 -1
- package/websql/fesm2022/cms-websql-taon-cms-taxonomy-quick-create-dialog.component.ts.pl-PL.i18n.data-DqlFgTmr.mjs +0 -39
- package/websql/fesm2022/cms-websql-taon-cms-taxonomy-quick-create-dialog.component.ts.pl-PL.i18n.data-DqlFgTmr.mjs.map +0 -1
- package/websql/fesm2022/cms-websql-taon-related-post-chooser.component.html.de-DE.i18n.data-B8kwe4XH.mjs +0 -51
- package/websql/fesm2022/cms-websql-taon-related-post-chooser.component.html.de-DE.i18n.data-B8kwe4XH.mjs.map +0 -1
- package/websql/fesm2022/cms-websql-taon-related-post-chooser.component.html.en-US.i18n.data-DsxIoc3-.mjs +0 -50
- package/websql/fesm2022/cms-websql-taon-related-post-chooser.component.html.en-US.i18n.data-DsxIoc3-.mjs.map +0 -1
- package/websql/fesm2022/cms-websql-taon-related-post-chooser.component.html.pl-PL.i18n.data-KGkZHK6U.mjs +0 -51
- package/websql/fesm2022/cms-websql-taon-related-post-chooser.component.html.pl-PL.i18n.data-KGkZHK6U.mjs.map +0 -1
- package/websql/fesm2022/cms-websql-taon-related-post-chooser.component.ts.de-DE.i18n.data-B-AefZ-Q.mjs +0 -21
- package/websql/fesm2022/cms-websql-taon-related-post-chooser.component.ts.de-DE.i18n.data-B-AefZ-Q.mjs.map +0 -1
- package/websql/fesm2022/cms-websql-taon-related-post-chooser.component.ts.en-US.i18n.data-D5CUfAg0.mjs +0 -21
- package/websql/fesm2022/cms-websql-taon-related-post-chooser.component.ts.en-US.i18n.data-D5CUfAg0.mjs.map +0 -1
- package/websql/fesm2022/cms-websql-taon-related-post-chooser.component.ts.pl-PL.i18n.data-DlY8NCht.mjs +0 -21
- package/websql/fesm2022/cms-websql-taon-related-post-chooser.component.ts.pl-PL.i18n.data-DlY8NCht.mjs.map +0 -1
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-backoffice.component.html.de-DE.i18n.data-C9czRdlm.mjs +0 -16
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-backoffice.component.html.de-DE.i18n.data-C9czRdlm.mjs.map +0 -1
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-backoffice.component.html.en-US.i18n.data-C64eFnqr.mjs +0 -16
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-backoffice.component.html.en-US.i18n.data-C64eFnqr.mjs.map +0 -1
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-backoffice.component.html.pl-PL.i18n.data-Cm-otof5.mjs +0 -16
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-backoffice.component.html.pl-PL.i18n.data-Cm-otof5.mjs.map +0 -1
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-backoffice.routes.ts.de-DE.i18n.data-MIIrwTKe.mjs +0 -35
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-backoffice.routes.ts.de-DE.i18n.data-MIIrwTKe.mjs.map +0 -1
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-backoffice.routes.ts.en-US.i18n.data-CAzMj6mG.mjs +0 -35
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-backoffice.routes.ts.en-US.i18n.data-CAzMj6mG.mjs.map +0 -1
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-backoffice.routes.ts.pl-PL.i18n.data-9SU8SXqe.mjs +0 -36
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-backoffice.routes.ts.pl-PL.i18n.data-9SU8SXqe.mjs.map +0 -1
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-course-backoffice.component.html.de-DE.i18n.data-pBodiDom.mjs +0 -55
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-course-backoffice.component.html.de-DE.i18n.data-pBodiDom.mjs.map +0 -1
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-course-backoffice.component.html.en-US.i18n.data-C-KaCnmB.mjs +0 -55
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-course-backoffice.component.html.en-US.i18n.data-C-KaCnmB.mjs.map +0 -1
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-course-backoffice.component.html.pl-PL.i18n.data-DVvCS_w8.mjs +0 -55
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-course-backoffice.component.html.pl-PL.i18n.data-DVvCS_w8.mjs.map +0 -1
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-course-backoffice.component.ts.de-DE.i18n.data-D9ccMkjQ.mjs +0 -27
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-course-backoffice.component.ts.de-DE.i18n.data-D9ccMkjQ.mjs.map +0 -1
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-course-backoffice.component.ts.pl-PL.i18n.data-DOVFInPW.mjs +0 -27
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-course-backoffice.component.ts.pl-PL.i18n.data-DOVFInPW.mjs.map +0 -1
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-course-contents.component.html.de-DE.i18n.data-DwXg_q7j.mjs +0 -31
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-course-contents.component.html.de-DE.i18n.data-DwXg_q7j.mjs.map +0 -1
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-course-contents.component.html.en-US.i18n.data-BPUBq0Bt.mjs +0 -31
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-course-contents.component.html.en-US.i18n.data-BPUBq0Bt.mjs.map +0 -1
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-course-contents.component.html.pl-PL.i18n.data-8KVZPVJ1.mjs +0 -31
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-course-contents.component.html.pl-PL.i18n.data-8KVZPVJ1.mjs.map +0 -1
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-course-contents.component.ts.de-DE.i18n.data-CjwirhHF.mjs +0 -31
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-course-contents.component.ts.de-DE.i18n.data-CjwirhHF.mjs.map +0 -1
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-course-contents.component.ts.en-US.i18n.data-B3xqVTaa.mjs +0 -31
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-course-contents.component.ts.en-US.i18n.data-B3xqVTaa.mjs.map +0 -1
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-course-contents.component.ts.pl-PL.i18n.data-B9cHH0RN.mjs +0 -31
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-course-contents.component.ts.pl-PL.i18n.data-B9cHH0RN.mjs.map +0 -1
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-course-cover.component.ts.de-DE.i18n.data-KnWWyfxp.mjs +0 -15
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-course-cover.component.ts.de-DE.i18n.data-KnWWyfxp.mjs.map +0 -1
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-course-cover.component.ts.pl-PL.i18n.data-OV3rbs4e.mjs +0 -15
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-course-cover.component.ts.pl-PL.i18n.data-OV3rbs4e.mjs.map +0 -1
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post-details-page.component.ts.de-DE.i18n.data-BEKxqiPy.mjs +0 -20
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post-details-page.component.ts.de-DE.i18n.data-BEKxqiPy.mjs.map +0 -1
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post-details-page.component.ts.pl-PL.i18n.data-d7nx-NiV.mjs +0 -20
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post-details-page.component.ts.pl-PL.i18n.data-d7nx-NiV.mjs.map +0 -1
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post-table-actions.directive.ts.de-DE.i18n.data-Bd1YmeXl.mjs +0 -55
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post-table-actions.directive.ts.de-DE.i18n.data-Bd1YmeXl.mjs.map +0 -1
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post-table-actions.directive.ts.en-US.i18n.data-BTSFy-ow.mjs +0 -55
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post-table-actions.directive.ts.en-US.i18n.data-BTSFy-ow.mjs.map +0 -1
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post-table-actions.directive.ts.pl-PL.i18n.data-C2f14xE4.mjs +0 -55
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post-table-actions.directive.ts.pl-PL.i18n.data-C2f14xE4.mjs.map +0 -1
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post.component.html.de-DE.i18n.data-BFSHH9Im.mjs +0 -376
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post.component.html.de-DE.i18n.data-BFSHH9Im.mjs.map +0 -1
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post.component.html.en-US.i18n.data-BiMl_Fi4.mjs +0 -375
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post.component.html.en-US.i18n.data-BiMl_Fi4.mjs.map +0 -1
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post.component.html.pl-PL.i18n.data-x-2YNBm3.mjs +0 -376
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post.component.html.pl-PL.i18n.data-x-2YNBm3.mjs.map +0 -1
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post.component.ts.de-DE.i18n.data-BqvaPHXJ.mjs +0 -192
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post.component.ts.de-DE.i18n.data-BqvaPHXJ.mjs.map +0 -1
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post.component.ts.en-US.i18n.data-CyzBbAcG.mjs +0 -188
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post.component.ts.en-US.i18n.data-CyzBbAcG.mjs.map +0 -1
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post.component.ts.pl-PL.i18n.data-C8bVvJ1M.mjs +0 -192
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-post.component.ts.pl-PL.i18n.data-C8bVvJ1M.mjs.map +0 -1
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-posts-backoffice.component.html.de-DE.i18n.data-DYJ4Tqv5.mjs +0 -49
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-posts-backoffice.component.html.de-DE.i18n.data-DYJ4Tqv5.mjs.map +0 -1
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-posts-backoffice.component.html.en-US.i18n.data-DVoHSv7o.mjs +0 -49
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-posts-backoffice.component.html.en-US.i18n.data-DVoHSv7o.mjs.map +0 -1
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-posts-backoffice.component.html.pl-PL.i18n.data-8omoF6EK.mjs +0 -49
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-posts-backoffice.component.html.pl-PL.i18n.data-8omoF6EK.mjs.map +0 -1
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-posts-backoffice.component.ts.de-DE.i18n.data-BdztQJJr.mjs +0 -25
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-posts-backoffice.component.ts.de-DE.i18n.data-BdztQJJr.mjs.map +0 -1
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-posts-backoffice.component.ts.pl-PL.i18n.data-DHQaIyy0.mjs +0 -25
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-posts-backoffice.component.ts.pl-PL.i18n.data-DHQaIyy0.mjs.map +0 -1
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-revision-chooser.component.html.de-DE.i18n.data-Dt4NoqCt.mjs +0 -71
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-revision-chooser.component.html.de-DE.i18n.data-Dt4NoqCt.mjs.map +0 -1
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-revision-chooser.component.html.en-US.i18n.data-yxnI4hZm.mjs +0 -71
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-revision-chooser.component.html.en-US.i18n.data-yxnI4hZm.mjs.map +0 -1
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-revision-chooser.component.html.pl-PL.i18n.data-BIt1Tr4D.mjs +0 -71
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-revision-chooser.component.html.pl-PL.i18n.data-BIt1Tr4D.mjs.map +0 -1
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-taxonomy-quick-create-dialog.component.ts.de-DE.i18n.data-a1wShLjX.mjs +0 -39
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-taxonomy-quick-create-dialog.component.ts.de-DE.i18n.data-a1wShLjX.mjs.map +0 -1
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-taxonomy-quick-create-dialog.component.ts.pl-PL.i18n.data-CBZHORXe.mjs +0 -39
- package/websql-prod/fesm2022/cms-websql-prod-taon-cms-taxonomy-quick-create-dialog.component.ts.pl-PL.i18n.data-CBZHORXe.mjs.map +0 -1
- package/websql-prod/fesm2022/cms-websql-prod-taon-related-post-chooser.component.html.de-DE.i18n.data-BnUmcqxu.mjs +0 -51
- package/websql-prod/fesm2022/cms-websql-prod-taon-related-post-chooser.component.html.de-DE.i18n.data-BnUmcqxu.mjs.map +0 -1
- package/websql-prod/fesm2022/cms-websql-prod-taon-related-post-chooser.component.html.en-US.i18n.data-BI5d-l_9.mjs +0 -50
- package/websql-prod/fesm2022/cms-websql-prod-taon-related-post-chooser.component.html.en-US.i18n.data-BI5d-l_9.mjs.map +0 -1
- package/websql-prod/fesm2022/cms-websql-prod-taon-related-post-chooser.component.html.pl-PL.i18n.data-HkdHjxON.mjs +0 -51
- package/websql-prod/fesm2022/cms-websql-prod-taon-related-post-chooser.component.html.pl-PL.i18n.data-HkdHjxON.mjs.map +0 -1
- package/websql-prod/fesm2022/cms-websql-prod-taon-related-post-chooser.component.ts.de-DE.i18n.data-C0OgfgMU.mjs +0 -21
- package/websql-prod/fesm2022/cms-websql-prod-taon-related-post-chooser.component.ts.de-DE.i18n.data-C0OgfgMU.mjs.map +0 -1
- package/websql-prod/fesm2022/cms-websql-prod-taon-related-post-chooser.component.ts.en-US.i18n.data-Bq84gw3j.mjs +0 -21
- package/websql-prod/fesm2022/cms-websql-prod-taon-related-post-chooser.component.ts.en-US.i18n.data-Bq84gw3j.mjs.map +0 -1
- package/websql-prod/fesm2022/cms-websql-prod-taon-related-post-chooser.component.ts.pl-PL.i18n.data-BZu7gvGb.mjs +0 -21
- 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.mjs","sources":["../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content/taon-cms-content.models.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content/taon-cms-content.entity.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-application-hook/taon-cms-application-hook.entity.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-application-hooks.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/migrations/1792506757808_applicaitonHooks.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/migrations/migrations_index._auto-generated_.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/migrations/index.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/build-info._auto-generated_.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/start-cli.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-category/taon-cms-category.entity.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-category/taon-cms-category.repository.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-category/taon-cms-category.controller.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-category/taon-cms-category.provider.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-category/taon-cms-category.middleware.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-category/taon-cms-category.subscriber.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-category/taon-cms-category.abstract.context.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-comment/taon-cms-comment.entity.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-comment/taon-cms-comment.repository.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-comment/taon-cms-comment.controller.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-comment/taon-cms-comment.provider.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-comment/taon-cms-comment.middleware.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-comment/taon-cms-comment.subscriber.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-comment/taon-cms-comment.abstract.context.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content-revision/taon-cms-content-revision.entity.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content-revision/taon-cms-content-revision.repository.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content-revision/taon-cms-content-revision.controller.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content-revision/taon-cms-content-revision.provider.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content-revision/taon-cms-content-revision.middleware.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content-revision/taon-cms-content-revision.subscriber.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content-revision/taon-cms-content-revision.abstract.context.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content-tag/taon-cms-content-tag.entity.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content-tag/taon-cms-content-tag.repository.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content-tag/taon-cms-content-tag.controller.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content-tag/taon-cms-content-tag.provider.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content-tag/taon-cms-content-tag.middleware.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content-tag/taon-cms-content-tag.subscriber.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content-tag/taon-cms-content-tag.abstract.context.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-tag/taon-cms-tag.entity.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-tag/taon-cms-tag.repository.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-tag/taon-cms-tag.controller.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-tag/taon-cms-tag.provider.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-tag/taon-cms-tag.middleware.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-tag/taon-cms-tag.subscriber.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-tag/taon-cms-tag.abstract.context.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content/taon-cms-content.validation.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content/taon-cms-content.repository.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content/taon-cms-content-storage.controller.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content/taon-cms-content.controller.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content/taon-cms-content.middleware.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content/taon-cms-content.provider.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content/taon-cms-content.subscriber.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content/taon-cms-content.abstract.context.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content-asset/taon-cms-content-asset.entity.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content-asset/taon-cms-content-asset.repository.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content-asset/taon-cms-content-asset.controller.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content-asset/taon-cms-content-asset.provider.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content-asset/taon-cms-content-asset.middleware.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content-asset/taon-cms-content-asset.subscriber.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content-asset/taon-cms-content-asset.abstract.context.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content-permission/taon-cms-content-permission.entity.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content-permission/taon-cms-content-permission.repository.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content-permission/taon-cms-content-permission.controller.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content-permission/taon-cms-content-permission.provider.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content-permission/taon-cms-content-permission.middleware.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content-permission/taon-cms-content-permission.subscriber.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content-permission/taon-cms-content-permission.abstract.context.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms.abstract.context.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content/taon-cms-upload-progress.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content/taon-cms-content-api.service.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-assets-backoffice/taon-cms-asset-preview.component.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-assets-backoffice/taon-cms-asset-preview.component.html","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-assets-backoffice/taon-cms-assets-backoffice.component.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-assets-backoffice/taon-cms-assets-backoffice.component.html","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-assets-backoffice/taon-cms-assets-backoffice.routes.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-backoffice/taon-cms-backoffice.component.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-backoffice/taon-cms-backoffice.component.html","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-backoffice/taon-cms-backoffice.routes.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-category/taon-cms-category-api.service.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-category/taon-cms-category.constants.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-category/taon-cms-category.models.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-category/taon-cms-category.utils.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-category/taon-cms-taxonomy.validation.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-comment/taon-cms-comment-api.service.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-comment/taon-cms-comment.constants.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-comment/taon-cms-comment.models.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-comment/taon-cms-comment.utils.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content/taon-cms-content.config.service.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content/taon-cms-content.constants.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content/taon-cms-content.utils.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content/taon-cms-template-variables.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content-asset/taon-cms-content-asset-api.service.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content-asset/taon-cms-content-asset.constants.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content-asset/taon-cms-content-asset.models.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content-asset/taon-cms-content-asset.utils.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content-permission/taon-cms-content-permission-api.service.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content-permission/taon-cms-content-permission.constants.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content-permission/taon-cms-content-permission.models.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content-permission/taon-cms-content-permission.utils.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content-revision/taon-cms-content-revision-api.service.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content-revision/taon-cms-content-revision.constants.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content-revision/taon-cms-content-revision.models.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content-revision/taon-cms-content-revision.utils.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content-tag/taon-cms-content-tag-api.service.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content-tag/taon-cms-content-tag.constants.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content-tag/taon-cms-content-tag.models.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content-tag/taon-cms-content-tag.utils.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-tag/taon-cms-tag-api.service.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-tag/taon-cms-tag.constants.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-tag/taon-cms-tag.models.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-tag/taon-cms-tag.utils.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-taxonomy-backoffice/taon-cms-taxonomy-backoffice.component.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-taxonomy-backoffice/taon-cms-taxonomy-backoffice.component.html","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-taxonomy-backoffice/taon-cms-taxonomy-backoffice.routes.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-taxonomy-backoffice/taon-cms-taxonomy-quick-create-dialog.component.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-posts/taon-cms-posts-backoffice/taon-cms-post-table-actions.directive.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-posts/taon-cms-course-backoffice/taon-cms-course-contents.component.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-posts/taon-cms-course-backoffice/taon-cms-course-contents.component.html","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-posts/taon-cms-post/taon-cms-thumbnail.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-posts/taon-cms-course-backoffice/taon-cms-course-cover.component.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-posts/taon-cms-course-backoffice/taon-cms-course-cover.component.html","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-posts/taon-cms-course-backoffice/taon-cms-course-backoffice.component.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-posts/taon-cms-course-backoffice/taon-cms-course-backoffice.component.html","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-posts/taon-cms-course-backoffice/taon-cms-course-backoffice.routes.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-posts/taon-cms-post/taon-cms-editable.directive.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-posts/taon-cms-revision-chooser/taon-cms-revision-chooser.component.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-posts/taon-cms-revision-chooser/taon-cms-revision-chooser.component.html","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-posts/taon-related-post-chooser/taon-related-post-chooser.component.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-posts/taon-related-post-chooser/taon-related-post-chooser.component.html","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-posts/taon-cms-post/taon-cms-post.component.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-posts/taon-cms-post/taon-cms-post.component.html","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-posts/taon-cms-post/taon-cms-post.routes.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-posts/taon-cms-post-details-page/taon-cms-post-details-page.component.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-posts/taon-cms-posts-backoffice/taon-cms-posts-backoffice.component.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-posts/taon-cms-posts-backoffice/taon-cms-posts-backoffice.component.html","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-posts/taon-cms-posts-backoffice/taon-cms-posts-backoffice.routes.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/index._auto-generated_.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/index.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/cms-browser.ts"],"sourcesContent":["import { TaonPermissionEntity } from '@taon-dev/session/browser';\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 {\n Column,\n JoinTable,\n ManyToMany,\n OneToOne,\n CustomColumn,\n PrimaryGeneratedColumn,\n Taon,\n TaonBaseAbstractEntity,\n TaonBaseEntity,\n TaonEntity,\n} from 'taon/browser';\nimport { _ } from 'tnp-core/browser';\nimport { TaonPermissionEntity } from '@taon-dev/session/browser';\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}\n","import {\n Column,\n JoinColumn,\n OneToOne,\n PrimaryGeneratedColumn,\n TaonBaseEntity,\n TaonEntity,\n} from 'taon/browser';\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 { ClassHelpers, TaonBaseMigration, TaonMigration } from 'taon/browser';\nimport { QueryRunner, Table } from 'taon-typeorm/browser';\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.getName(TaonCmsApplicationHookEntity);\n\n CONTENT_TABLE = ClassHelpers.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\n","// 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 } from 'tnp-core/browser';\nimport { Helpers, BaseCommandLineFeature } from 'tnp-helpers/browser';\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.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;\n","//#region imports\nimport {\n Column,\n CustomColumn,\n Taon,\n TaonBaseAbstractEntity,\n TaonEntity,\n} from 'taon/browser';\nimport { _ } from 'tnp-core/browser';\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}\n","//#region imports\nimport { TaonBaseRepository, TaonRepository } from 'taon/browser';\nimport { Raw } from 'taon-typeorm/browser';\nimport { Translation } from '@taon-dev/i18n/browser';\nimport { Taon } from 'taon/browser';\nimport type { EntityManager } from 'taon-typeorm/browser';\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}\n","//#region imports\nimport { TaonSessionRepository } from '@taon-dev/session/browser';\nimport { TaonAuthContextRepository } from '@taon-dev/session/browser';\nimport {\n Taon,\n ClassHelpers,\n TaonController,\n TaonBaseCrudController,\n Query,\n GET,\n POST,\n DELETE,\n Body,\n Models,\n} from 'taon/browser';\nimport { _ } from 'tnp-core/browser';\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.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.Response<TaonCmsCategoryEntity> {\n/* */\n/* */\n return (void 0);\n }\n\n @DELETE()\n deleteCategory(@Query('id') id: number): Taon.Response<void> {\n/* */\n/* */\n return (void 0);\n }\n}\n","//#region imports\nimport { Taon, TaonBaseProvider, TaonProvider } from 'taon/browser';\nimport { _ } from 'tnp-core/browser';\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 { Taon, TaonBaseMiddleware, TaonMiddleware } from 'taon/browser';\nimport { _ } from 'tnp-core/browser';\n//#endregion\n\n@TaonMiddleware({\n className: 'TaonCmsCategoryMiddleware',\n})\nexport class TaonCmsCategoryMiddleware extends TaonBaseMiddleware {}","//#region imports\nimport { TaonBaseSubscriberForEntity, TaonSubscriber } from 'taon/browser';\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';\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 {\n Column,\n CustomColumn,\n PrimaryGeneratedColumn,\n Taon,\n TaonBaseAbstractEntity,\n TaonBaseEntity,\n TaonEntity,\n} from 'taon/browser';\nimport { _ } from 'tnp-core/browser';\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}\n","//#region imports\nimport { TaonBaseRepository, TaonRepository } from 'taon/browser';\nimport { Raw } from 'taon-typeorm/browser';\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 {\n Taon,\n ClassHelpers,\n TaonController,\n TaonBaseCrudController,\n Query,\n GET,\n} from 'taon/browser';\nimport { _ } from 'tnp-core/browser';\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.Response<string> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n //#endregion\n}\n","//#region imports\nimport { Taon, TaonBaseProvider, TaonProvider } from 'taon/browser';\nimport { _ } from 'tnp-core/browser';\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 { Taon, TaonBaseMiddleware, TaonMiddleware } from 'taon/browser';\nimport { _ } from 'tnp-core/browser';\n//#endregion\n\n@TaonMiddleware({\n className: 'TaonCmsCommentMiddleware',\n})\nexport class TaonCmsCommentMiddleware extends TaonBaseMiddleware {}","//#region imports\nimport { TaonBaseSubscriberForEntity, TaonSubscriber } from 'taon/browser';\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';\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 {\n Column,\n CustomColumn,\n PrimaryGeneratedColumn,\n Taon,\n TaonBaseAbstractEntity,\n TaonBaseEntity,\n TaonEntity,\n} from 'taon/browser';\nimport { _ } from 'tnp-core/browser';\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}\n","//#region imports\nimport { TaonBaseRepository, TaonRepository } from 'taon/browser';\nimport { Raw } from 'taon-typeorm/browser';\nimport type { EntityManager } from 'taon-typeorm/browser';\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 {\n Taon,\n ClassHelpers,\n TaonController,\n TaonBaseCrudController,\n Query,\n GET,\n} from 'taon/browser';\nimport { _ } from 'tnp-core/browser';\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}\n","//#region imports\nimport { Taon, TaonBaseProvider, TaonProvider } from 'taon/browser';\nimport { _ } from 'tnp-core/browser';\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 { Taon, TaonBaseMiddleware, TaonMiddleware } from 'taon/browser';\nimport { _ } from 'tnp-core/browser';\n//#endregion\n\n@TaonMiddleware({\n className: 'TaonCmsContentRevisionMiddleware',\n})\nexport class TaonCmsContentRevisionMiddleware extends TaonBaseMiddleware {}","//#region imports\nimport { TaonBaseSubscriberForEntity, TaonSubscriber } from 'taon/browser';\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';\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 {\n Column,\n CustomColumn,\n Taon,\n TaonBaseAbstractEntity,\n TaonEntity,\n} from 'taon/browser';\nimport { _ } from 'tnp-core/browser';\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}\n","//#region imports\nimport { TaonBaseRepository, TaonRepository } from 'taon/browser';\nimport { Raw } from 'taon-typeorm/browser';\nimport type { EntityManager } from 'taon-typeorm/browser';\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 {\n Taon,\n ClassHelpers,\n TaonController,\n TaonBaseCrudController,\n Query,\n GET,\n} from 'taon/browser';\nimport { _ } from 'tnp-core/browser';\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}\n","//#region imports\nimport { Taon, TaonBaseProvider, TaonProvider } from 'taon/browser';\nimport { _ } from 'tnp-core/browser';\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 { Taon, TaonBaseMiddleware, TaonMiddleware } from 'taon/browser';\nimport { _ } from 'tnp-core/browser';\n//#endregion\n\n@TaonMiddleware({\n className: 'TaonCmsContentTagMiddleware',\n})\nexport class TaonCmsContentTagMiddleware extends TaonBaseMiddleware {}","//#region imports\nimport { TaonBaseSubscriberForEntity, TaonSubscriber } from 'taon/browser';\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';\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 {\n Column,\n CustomColumn,\n Taon,\n TaonBaseAbstractEntity,\n TaonEntity,\n} from 'taon/browser';\nimport { _ } from 'tnp-core/browser';\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}\n","//#region imports\nimport { TaonBaseRepository, TaonRepository } from 'taon/browser';\nimport { Raw } from 'taon-typeorm/browser';\nimport type { EntityManager } from 'taon-typeorm/browser';\nimport { Translation } from '@taon-dev/i18n/browser';\nimport { Taon } from 'taon/browser';\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}\n","//#region imports\nimport { TaonSessionRepository } from '@taon-dev/session/browser';\nimport { TaonAuthContextRepository } from '@taon-dev/session/browser';\nimport {\n Taon,\n ClassHelpers,\n TaonController,\n TaonBaseCrudController,\n Query,\n GET,\n POST,\n DELETE,\n Body,\n Models,\n} from 'taon/browser';\nimport { _ } from 'tnp-core/browser';\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.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.Response<TaonCmsTagEntity> {\n/* */\n/* */\n return (void 0);\n }\n\n @DELETE()\n deleteTag(@Query('id') id: number): Taon.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.Response<string> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n //#endregion\n}\n","//#region imports\nimport { Taon, TaonBaseProvider, TaonProvider } from 'taon/browser';\nimport { _ } from 'tnp-core/browser';\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 { Taon, TaonBaseMiddleware, TaonMiddleware } from 'taon/browser';\nimport { _ } from 'tnp-core/browser';\n//#endregion\n\n@TaonMiddleware({\n className: 'TaonCmsTagMiddleware',\n})\nexport class TaonCmsTagMiddleware extends TaonBaseMiddleware {}","//#region imports\nimport { TaonBaseSubscriberForEntity, TaonSubscriber } from 'taon/browser';\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';\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 } from 'taon/browser';\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.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}\n","//#region imports\nimport { TaonBaseRepository, TaonRepository } from 'taon/browser';\nimport { In, Raw } from 'taon-typeorm/browser';\nimport type { EntityManager } from 'taon-typeorm/browser';\nimport { TaonPermissionEntity } from '@taon-dev/session/browser';\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';\nimport { TaonAuthContextRepository } from '@taon-dev/session/browser';\nimport {\n ExpressRequest,\n ExpressResponse,\n TaonBaseStorageController,\n TaonController,\n TaonStorageObject,\n TaonUploadedFile,\n ClassHelpers,\n apiPrefix,\n Models,\n} from 'taon/browser';\nimport { UtilsJwt } from 'tnp-core/browser';\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.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}\n","//#region imports\nimport {\n TaonSessionRepository,\n type TaonPermissionEntity,\n} from '@taon-dev/session/browser';\nimport {\n TaonAuthContextRepository,\n TaonSessionCoreAuthorization,\n} from '@taon-dev/session/browser';\nimport {\n Taon,\n ClassHelpers,\n TaonController,\n TaonBaseCrudController,\n Query,\n GET,\n POST,\n PUT,\n DELETE,\n Body,\n ExpressRequest,\n Models,\n getStatusCode,\n HttpStatusEnum,\n ExpressResponse,\n} from 'taon/browser';\nimport { _ } from 'tnp-core/browser';\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.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.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.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.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.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.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.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.Response<string> {\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n @GET()\n getPublicThumbnailLinkBySlug(\n @Query('slug') slug: string,\n ): Taon.Response<string> {\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n @GET()\n listCourses(): Taon.Response<TaonCmsContentEntity[]> {\n/* */\n/* */\n return (void 0);\n }\n\n @GET()\n listTagIds(@Query('id') id: number): Taon.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.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.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.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.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.Response<TaonCmsContentEntity> {\n/* */\n/* */\n return (void 0);\n }\n //#endregion\n\n @POST()\n duplicateContent(\n @Query('id') id: number,\n ): Taon.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.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.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.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.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.Response<TaonCmsPermissionConfiguration> {\n/* */\n/* */\n/* */\n return (void 0);\n }\n //#endregion\n\n //#region methods / list application hooks\n @GET()\n listApplicationHooks(): Taon.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.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.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.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.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.Response<TaonCmsContentRevisionEntity[]> {\n/* */\n/* */\n return (void 0);\n }\n //#endregion\n}\n","//#region imports\nimport { Taon, TaonBaseMiddleware, TaonMiddleware } from 'taon/browser';\nimport { _ } from 'tnp-core/browser';\n//#endregion\n\n@TaonMiddleware({\n className: 'TaonCmsContentMiddleware',\n})\nexport class TaonCmsContentMiddleware extends TaonBaseMiddleware {}","//#region imports\nimport { Taon, TaonBaseProvider, TaonProvider } from 'taon/browser';\nimport { _ } from 'tnp-core/browser';\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}\n","//#region imports\nimport { TaonBaseSubscriberForEntity, TaonSubscriber } from 'taon/browser';\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';\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 {\n Column,\n CustomColumn,\n PrimaryGeneratedColumn,\n Taon,\n TaonBaseAbstractEntity,\n TaonBaseEntity,\n TaonEntity,\n} from 'taon/browser';\nimport { _ } from 'tnp-core/browser';\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}\n","//#region imports\nimport { TaonBaseRepository, TaonRepository } from 'taon/browser';\nimport { Raw } from 'taon-typeorm/browser';\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 {\n Taon,\n ClassHelpers,\n TaonController,\n TaonBaseCrudController,\n Query,\n GET,\n} from 'taon/browser';\nimport { _ } from 'tnp-core/browser';\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.Response<string> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n //#endregion\n}\n","//#region imports\nimport { Taon, TaonBaseProvider, TaonProvider } from 'taon/browser';\nimport { _ } from 'tnp-core/browser';\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 { Taon, TaonBaseMiddleware, TaonMiddleware } from 'taon/browser';\nimport { _ } from 'tnp-core/browser';\n//#endregion\n\n@TaonMiddleware({\n className: 'TaonCmsContentAssetMiddleware',\n})\nexport class TaonCmsContentAssetMiddleware extends TaonBaseMiddleware {}","//#region imports\nimport { TaonBaseSubscriberForEntity, TaonSubscriber } from 'taon/browser';\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';\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 {\n Column,\n CustomColumn,\n PrimaryGeneratedColumn,\n Taon,\n TaonBaseAbstractEntity,\n TaonBaseEntity,\n TaonEntity,\n} from 'taon/browser';\nimport { _ } from 'tnp-core/browser';\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}\n","//#region imports\nimport { TaonBaseRepository, TaonRepository } from 'taon/browser';\nimport { Raw } from 'taon-typeorm/browser';\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 {\n Taon,\n ClassHelpers,\n TaonController,\n TaonBaseCrudController,\n Query,\n GET,\n} from 'taon/browser';\nimport { _ } from 'tnp-core/browser';\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.Response<string> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n //#endregion\n}\n","//#region imports\nimport { Taon, TaonBaseProvider, TaonProvider } from 'taon/browser';\nimport { _ } from 'tnp-core/browser';\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 { Taon, TaonBaseMiddleware, TaonMiddleware } from 'taon/browser';\nimport { _ } from 'tnp-core/browser';\n//#endregion\n\n@TaonMiddleware({\n className: 'TaonCmsContentPermissionMiddleware',\n})\nexport class TaonCmsContentPermissionMiddleware extends TaonBaseMiddleware {}","//#region imports\nimport { TaonBaseSubscriberForEntity, TaonSubscriber } from 'taon/browser';\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';\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';\nimport { createContext, TaonBaseContext } from 'taon/browser';\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 } from 'ng2-rest/browser';\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.methodsInterceptors.has(key)) {\n Resource.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}\n","//#region imports\nimport { Injectable } from '@angular/core';\nimport type { TaonPermissionEntity } from '@taon-dev/session/browser';\nimport { Observable, of } from 'rxjs';\nimport { catchError, map } from 'rxjs/operators';\nimport { Taon, TaonBaseAngularService, TaonStorageObject } from 'taon/browser';\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}\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';\nimport { Taon, type TaonStorageObject } from 'taon/browser';\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}\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';\nimport { Translation } from '@taon-dev/i18n/browser';\nimport { finalize, map } from 'rxjs';\nimport {\n Taon,\n type TaonStorageObject as TaonStorageObjectBase,\n} from 'taon/browser';\nimport { _ } from 'tnp-core/browser';\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 = _.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}\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';\nimport { Taon } from 'taon/browser';\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}\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","//#region imports\nimport { Routes } from '@angular/router';\nimport { Translation } from '@taon-dev/i18n/browser';\nimport type { TaonAuthContextEntity } from '@taon-dev/session/browser';\nimport { adminLazyRoute as adminLazyRouteBase } from '@taon-dev/ui/browser';\nimport { Taon } from 'taon/browser';\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;\n","import { Injectable } from '@angular/core';\nimport { Observable } from 'rxjs';\nimport { map } from 'rxjs/operators';\nimport { Taon, TaonBaseAngularService } from 'taon/browser';\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}\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\nexport namespace TaonCmsCategoryUtils {\n export function isActive(state: string): state is TaonCmsCategoryState {\n return state === 'active';\n }\n}","import { Translation } from '@taon-dev/i18n/browser';\nimport { Taon } from 'taon/browser';\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}\n","import { Injectable } from '@angular/core';\nimport { Observable } from 'rxjs';\nimport { map } from 'rxjs/operators';\nimport { Taon, TaonBaseAngularService } from 'taon/browser';\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}\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\nexport namespace TaonCmsCommentUtils {\n export function isActive(state: string): state is TaonCmsCommentState {\n return state === 'active';\n }\n}","import { Injectable } from '@angular/core';\nimport { TaonBaseAngularService } from 'taon/browser';\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\nexport namespace TaonCmsContentUtils {\n export function isActive(state: string): state is TaonCmsContentState {\n return state === 'active';\n }\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, '&')\n .replace(/</g, '<')\n .replace(/>/g, '>')\n .replace(/\"/g, '"')\n .replace(/'/g, ''');\n },\n );\n}\n","import { Injectable } from '@angular/core';\nimport { Observable } from 'rxjs';\nimport { map } from 'rxjs/operators';\nimport { Taon, TaonBaseAngularService } from 'taon/browser';\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}\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\nexport namespace TaonCmsContentAssetUtils {\n export function isActive(state: string): state is TaonCmsContentAssetState {\n return state === 'active';\n }\n}","import { Injectable } from '@angular/core';\nimport { Observable } from 'rxjs';\nimport { map } from 'rxjs/operators';\nimport { Taon, TaonBaseAngularService } from 'taon/browser';\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}\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\nexport namespace TaonCmsContentPermissionUtils {\n export function isActive(state: string): state is TaonCmsContentPermissionState {\n return state === 'active';\n }\n}","import { Injectable } from '@angular/core';\nimport { Observable } from 'rxjs';\nimport { map } from 'rxjs/operators';\nimport { Taon, TaonBaseAngularService } from 'taon/browser';\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}\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\nexport namespace TaonCmsContentRevisionUtils {\n export function isActive(state: string): state is TaonCmsContentRevisionState {\n return state === 'active';\n }\n}","import { Injectable } from '@angular/core';\nimport { Observable } from 'rxjs';\nimport { map } from 'rxjs/operators';\nimport { Taon, TaonBaseAngularService } from 'taon/browser';\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}\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\nexport namespace TaonCmsContentTagUtils {\n export function isActive(state: string): state is TaonCmsContentTagState {\n return state === 'active';\n }\n}","import { Injectable } from '@angular/core';\nimport { Observable } from 'rxjs';\nimport { map } from 'rxjs/operators';\nimport { Taon, TaonBaseAngularService } from 'taon/browser';\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}\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\nexport namespace TaonCmsTagUtils {\n export function isActive(state: string): state is TaonCmsTagState {\n return state === 'active';\n }\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';\nimport {\n TaonConfirmDialogComponent,\n TaonDatatableComponent,\n} from '@taon-dev/ui/browser';\nimport { Observable, finalize } from 'rxjs';\nimport { Taon } from 'taon/browser';\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}\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';\nimport { Taon } from 'taon/browser';\nimport { _ } from 'tnp-core/browser';\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 = _.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}\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';\nimport { TaonConfirmDialogComponent } from '@taon-dev/ui/browser';\nimport { finalize } from 'rxjs';\nimport { Taon } from 'taon/browser';\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}\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';\nimport { TaonDatatableComponent } from '@taon-dev/ui/browser';\nimport { finalize } from 'rxjs';\nimport { Taon } from 'taon/browser';\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}\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';\nimport { Taon } from 'taon/browser';\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}\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';\nimport { Translation } from '@taon-dev/i18n/browser';\nimport { finalize } from 'rxjs';\nimport { Taon } from 'taon/browser';\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}\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","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';\nimport { finalize } from 'rxjs';\nimport { Taon } from 'taon/browser';\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}\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';\nimport { finalize } from 'rxjs';\nimport { Taon } from 'taon/browser';\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}\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';\nimport { TaonPermissionApiService } from '@taon-dev/session/browser';\nimport type { TaonPermissionEntity } from '@taon-dev/session/browser';\nimport { TaonConfirmDialogComponent } from '@taon-dev/ui/browser';\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 } from 'taon/browser';\nimport { _ } from 'tnp-core/browser';\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: _.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}\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';\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';\nimport { TaonAdminContentFooterService } from '@taon-dev/ui/browser';\nimport { Taon } from 'taon/browser';\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}\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';\nimport { Translation } from '@taon-dev/i18n/browser';\nimport { Taon } from 'taon/browser';\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}\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","//#region imports\nimport { inject } from '@angular/core';\nimport { Routes } from '@angular/router';\nimport { ResolveFn } from '@angular/router';\nimport { Translation } from '@taon-dev/i18n/browser';\nimport { Taon } from 'taon/browser';\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;\n","// @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.mjs","sources":["../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content/taon-cms-content.models.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content/taon-cms-content.entity.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-application-hook/taon-cms-application-hook.entity.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-application-hooks.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/migrations/1792506757808_applicaitonHooks.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/migrations/1793664000000_postVersionLinks.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/migrations/migrations_index._auto-generated_.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/migrations/index.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/build-info._auto-generated_.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/start-cli.ts","../../../tmp-libs-for-dist/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/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/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/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/cms/projects/cms/src/lib/taon-cms-category/taon-cms-category.entity.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-category/taon-cms-category.repository.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-category/taon-cms-category.controller.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-category/taon-cms-category.provider.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-category/taon-cms-category.middleware.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-category/taon-cms-category.subscriber.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-category/taon-cms-category.abstract.context.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-comment/taon-cms-comment.entity.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content-revision/taon-cms-content-revision.entity.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content-revision/taon-cms-content-revision.repository.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content-tag/taon-cms-content-tag.entity.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content-tag/taon-cms-content-tag.repository.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-tag/taon-cms-tag.entity.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-tag/taon-cms-tag.repository.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content/taon-cms-content.validation.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content/taon-cms-content.repository.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-comment/taon-cms-comment.controller.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-comment/taon-cms-comment.repository.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-comment/taon-cms-comment.provider.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-comment/taon-cms-comment.middleware.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-comment/taon-cms-comment.subscriber.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-comment/taon-cms-comment-vote.entity.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-comment/taon-cms-comment-spam-report.entity.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-comment/taon-cms-comment-blocked-user.entity.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-comment/taon-cms-comment-blocked-phrase.entity.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-comment/taon-cms-comment.abstract.context.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content-revision/taon-cms-content-revision.controller.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content-revision/taon-cms-content-revision.provider.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content-revision/taon-cms-content-revision.middleware.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content-revision/taon-cms-content-revision.subscriber.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content-revision/taon-cms-content-revision.abstract.context.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content-tag/taon-cms-content-tag.controller.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content-tag/taon-cms-content-tag.provider.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content-tag/taon-cms-content-tag.middleware.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content-tag/taon-cms-content-tag.subscriber.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content-tag/taon-cms-content-tag.abstract.context.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-tag/taon-cms-tag.controller.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-tag/taon-cms-tag.provider.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-tag/taon-cms-tag.middleware.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-tag/taon-cms-tag.subscriber.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-tag/taon-cms-tag.abstract.context.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content/taon-cms-content-storage.controller.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content/taon-cms-content.controller.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content/taon-cms-content.middleware.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content/taon-cms-content.provider.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content/taon-cms-content.subscriber.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content/taon-cms-content.abstract.context.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content-asset/taon-cms-content-asset.entity.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content-asset/taon-cms-content-asset.repository.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content-asset/taon-cms-content-asset.controller.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content-asset/taon-cms-content-asset.provider.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content-asset/taon-cms-content-asset.middleware.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content-asset/taon-cms-content-asset.subscriber.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content-asset/taon-cms-content-asset.abstract.context.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content-permission/taon-cms-content-permission.entity.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content-permission/taon-cms-content-permission.repository.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content-permission/taon-cms-content-permission.controller.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content-permission/taon-cms-content-permission.provider.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content-permission/taon-cms-content-permission.middleware.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content-permission/taon-cms-content-permission.subscriber.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content-permission/taon-cms-content-permission.abstract.context.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms.abstract.context.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content/taon-cms-upload-progress.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content/taon-cms-content-api.service.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-assets-backoffice/taon-cms-asset-preview.component.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-assets-backoffice/taon-cms-asset-preview.component.html","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-assets-backoffice/taon-cms-assets-backoffice.component.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-assets-backoffice/taon-cms-assets-backoffice.component.html","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-assets-backoffice/taon-cms-assets-backoffice.routes.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-backoffice/taon-cms-backoffice.component.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-backoffice/taon-cms-backoffice.component.html","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-backoffice/taon-cms-backoffice.routes.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-category/taon-cms-category-api.service.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-category/taon-cms-category.constants.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-category/taon-cms-category.models.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-category/taon-cms-category.utils.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-category/taon-cms-taxonomy.validation.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-comment/taon-cms-comment-api.service.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-comment/taon-cms-comment.constants.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-comment/taon-cms-comment.models.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-comment/taon-cms-comment.utils.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-comment/taon-cms-comments.component.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-comment/taon-cms-comments.component.html","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content/taon-cms-content.config.service.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content/taon-cms-content.constants.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content/taon-cms-content.utils.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content/taon-cms-template-variables.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content-asset/taon-cms-content-asset-api.service.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content-asset/taon-cms-content-asset.constants.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content-asset/taon-cms-content-asset.models.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content-asset/taon-cms-content-asset.utils.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content-permission/taon-cms-content-permission-api.service.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content-permission/taon-cms-content-permission.constants.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content-permission/taon-cms-content-permission.models.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content-permission/taon-cms-content-permission.utils.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content-revision/taon-cms-content-revision-api.service.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content-revision/taon-cms-content-revision.constants.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content-revision/taon-cms-content-revision.models.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content-revision/taon-cms-content-revision.utils.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content-tag/taon-cms-content-tag-api.service.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content-tag/taon-cms-content-tag.constants.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content-tag/taon-cms-content-tag.models.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-content-tag/taon-cms-content-tag.utils.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-tag/taon-cms-tag-api.service.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-tag/taon-cms-tag.constants.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-tag/taon-cms-tag.models.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-tag/taon-cms-tag.utils.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-taxonomy-backoffice/taon-cms-taxonomy-backoffice.component.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-taxonomy-backoffice/taon-cms-taxonomy-backoffice.component.html","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-taxonomy-backoffice/taon-cms-taxonomy-backoffice.routes.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-taxonomy-backoffice/taon-cms-taxonomy-quick-create-dialog.component.ts","../../../tmp-libs-for-dist/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/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/cms/projects/cms/src/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-features.component.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-features.component.html","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-backoffice/taon-cms-website-features/taon-cms-website-features.routes.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-backoffice.component.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-backoffice.component.html","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-cms-comment/taon-cms-comments-backoffice/taon-cms-comments-backoffice.routes.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-posts/taon-cms-post/taon-cms-post-choice-dialog.component.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-posts/taon-cms-post/taon-cms-post-choice-dialog.component.html","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-posts/taon-cms-posts-backoffice/taon-cms-post-table-actions.directive.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-posts/taon-cms-course-backoffice/taon-cms-course-contents.component.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-posts/taon-cms-course-backoffice/taon-cms-course-contents.component.html","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-posts/taon-cms-post/taon-cms-thumbnail.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-posts/taon-cms-course-backoffice/taon-cms-course-cover.component.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-posts/taon-cms-course-backoffice/taon-cms-course-cover.component.html","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-posts/taon-cms-course-backoffice/taon-cms-course-backoffice.component.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-posts/taon-cms-course-backoffice/taon-cms-course-backoffice.component.html","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-posts/taon-cms-course-backoffice/taon-cms-course-backoffice.routes.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-posts/taon-cms-post/taon-cms-document-extractor.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-posts/taon-cms-post/taon-cms-editable.directive.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-posts/taon-cms-post/taon-cms-post-thumbnail.component.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-posts/taon-cms-revision-chooser/taon-cms-revision-chooser.component.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-posts/taon-cms-revision-chooser/taon-cms-revision-chooser.component.html","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-posts/taon-related-post-chooser/taon-related-post-chooser.component.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-posts/taon-related-post-chooser/taon-related-post-chooser.component.html","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-posts/taon-cms-post/taon-cms-post.component.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-posts/taon-cms-post/taon-cms-post.component.html","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-posts/taon-cms-post/taon-cms-post.routes.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-posts/taon-cms-post-details-page/taon-cms-post-details-page.component.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-posts/taon-cms-posts-backoffice/taon-cms-posts-backoffice.component.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-posts/taon-cms-posts-backoffice/taon-cms-posts-backoffice.component.html","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/taon-posts/taon-cms-posts-backoffice/taon-cms-posts-backoffice.routes.ts","../../../tmp-libs-for-dist/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/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/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/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/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/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/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/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/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/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/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/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/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/cms/projects/cms/src/lib/index._auto-generated_.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/lib/index.ts","../../../tmp-libs-for-dist/cms/projects/cms/src/cms-browser.ts"],"sourcesContent":["import { TaonPermissionEntity } from '@taon-dev/session/browser';\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 {\n Column,\n JoinTable,\n ManyToMany,\n OneToOne,\n CustomColumn,\n PrimaryGeneratedColumn,\n Taon,\n TaonBaseAbstractEntity,\n TaonBaseEntity,\n TaonEntity,\n} from 'taon/browser';\nimport { _ } from 'tnp-core/browser';\nimport { TaonPermissionEntity } from '@taon-dev/session/browser';\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}\n","import {\n Column,\n JoinColumn,\n OneToOne,\n PrimaryGeneratedColumn,\n TaonBaseEntity,\n TaonEntity,\n} from 'taon/browser';\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 { ClassHelpers, TaonBaseMigration, TaonMigration } from 'taon/browser';\nimport { QueryRunner, Table } from 'taon-typeorm/browser';\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.getName(TaonCmsApplicationHookEntity);\n\n CONTENT_TABLE = ClassHelpers.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\n","import { TaonCmsContentEntity } from '../taon-cms-content/taon-cms-content.entity';\nimport { ClassHelpers, TaonBaseMigration, TaonMigration } from 'taon/browser';\nimport { QueryRunner, TableColumn } from 'taon-typeorm/browser';\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.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.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}\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 } from 'tnp-core/browser';\nimport { Helpers, BaseCommandLineFeature } from 'tnp-helpers/browser';\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.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;\n","//#region imports\nimport { TaonBaseKvRepository, TaonRepository } from 'taon/browser';\n\nimport { contentError } from '../../../taon-cms-content/taon-cms-content.validation';\nimport type { TaonCmsWebsiteFeatureModels } from './taon-cms-website-feature.models';\nimport { TaonCmsWebsiteFeatureUtils } from './taon-cms-website-feature.utils';\n//#endregion\n\n@TaonRepository({\n className: 'TaonCmsWebsiteFeatureKvRepository',\n})\nexport class TaonCmsWebsiteFeatureKvRepository extends TaonBaseKvRepository<{\n features: TaonCmsWebsiteFeatureModels.Feature[];\n}> {\n private mutation: Promise<void> = Promise.resolve();\n\n async listFeatures(): Promise<TaonCmsWebsiteFeatureModels.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.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.Feature[]> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n async deleteFeature(key: string): Promise<TaonCmsWebsiteFeatureModels.Feature[]> {\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n private requireFeature(\n features: TaonCmsWebsiteFeatureModels.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.Feature[],\n ) => TaonCmsWebsiteFeatureModels.Feature[],\n ): Promise<TaonCmsWebsiteFeatureModels.Feature[]> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n}\n","//#region imports\nimport {\n TaonAuthContextRepository,\n TaonSessionRepository,\n} from '@taon-dev/session/browser';\nimport {\n Body,\n DELETE,\n GET,\n Models,\n POST,\n PUT,\n Query,\n Taon,\n TaonBaseController,\n TaonController,\n} from 'taon/browser';\n\nimport { contentError } from '../../../taon-cms-content/taon-cms-content.validation';\nimport { TaonCmsWebsiteFeatureKvRepository } from './taon-cms-website-feature.kv.repository';\nimport type { TaonCmsWebsiteFeatureModels } 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.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.Response<boolean> {\n/* */\n/* */\n return (void 0);\n }\n\n @GET()\n listFeatures(): Taon.Response<TaonCmsWebsiteFeatureModels.Feature[]> {\n/* */\n/* */\n return (void 0);\n }\n\n @POST()\n addFeature(@Body('name') name: string): Taon.Response<TaonCmsWebsiteFeatureModels.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.Response<TaonCmsWebsiteFeatureModels.Feature[]> {\n/* */\n/* */\n return (void 0);\n }\n\n @DELETE()\n deleteFeature(@Query('key') key: string): Taon.Response<TaonCmsWebsiteFeatureModels.Feature[]> {\n/* */\n/* */\n return (void 0);\n }\n}\n","//#region imports\nimport { Taon, TaonBaseClass, TaonBaseProvider, TaonProvider } from 'taon/browser';\nimport { _ } from 'tnp-core/browser';\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';\nimport { TaonSessionAbstractContext } from '@taon-dev/session/browser';\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 {\n Column,\n CustomColumn,\n Taon,\n TaonBaseAbstractEntity,\n TaonEntity,\n} from 'taon/browser';\nimport { _ } from 'tnp-core/browser';\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}\n","//#region imports\nimport { TaonBaseRepository, TaonRepository } from 'taon/browser';\nimport { Raw } from 'taon-typeorm/browser';\nimport { Translation } from '@taon-dev/i18n/browser';\nimport { Taon } from 'taon/browser';\nimport type { EntityManager } from 'taon-typeorm/browser';\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}\n","//#region imports\nimport { TaonSessionRepository } from '@taon-dev/session/browser';\nimport { TaonAuthContextRepository } from '@taon-dev/session/browser';\nimport {\n Taon,\n ClassHelpers,\n TaonController,\n TaonBaseCrudController,\n Query,\n GET,\n POST,\n DELETE,\n Body,\n Models,\n} from 'taon/browser';\nimport { _ } from 'tnp-core/browser';\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.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.Response<TaonCmsCategoryEntity> {\n/* */\n/* */\n return (void 0);\n }\n\n @DELETE()\n deleteCategory(@Query('id') id: number): Taon.Response<void> {\n/* */\n/* */\n return (void 0);\n }\n}\n","//#region imports\nimport { Taon, TaonBaseProvider, TaonProvider } from 'taon/browser';\nimport { _ } from 'tnp-core/browser';\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 { Taon, TaonBaseMiddleware, TaonMiddleware } from 'taon/browser';\nimport { _ } from 'tnp-core/browser';\n//#endregion\n\n@TaonMiddleware({\n className: 'TaonCmsCategoryMiddleware',\n})\nexport class TaonCmsCategoryMiddleware extends TaonBaseMiddleware {}","//#region imports\nimport { TaonBaseSubscriberForEntity, TaonSubscriber } from 'taon/browser';\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';\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 {\n Column,\n CreateDateColumn,\n CustomColumn,\n PrimaryGeneratedColumn,\n Taon,\n TaonBaseAbstractEntity,\n TaonBaseEntity,\n TaonEntity,\n UpdateDateColumn,\n} from 'taon/browser';\nimport { _ } from 'tnp-core/browser';\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}\n","//#region imports\nimport {\n Column,\n CustomColumn,\n PrimaryGeneratedColumn,\n Taon,\n TaonBaseAbstractEntity,\n TaonBaseEntity,\n TaonEntity,\n} from 'taon/browser';\nimport { _ } from 'tnp-core/browser';\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}\n","//#region imports\nimport { TaonBaseRepository, TaonRepository } from 'taon/browser';\nimport { Raw } from 'taon-typeorm/browser';\nimport type { EntityManager } from 'taon-typeorm/browser';\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 } 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}\n","//#region imports\nimport {\n Column,\n CustomColumn,\n Taon,\n TaonBaseAbstractEntity,\n TaonEntity,\n} from 'taon/browser';\nimport { _ } from 'tnp-core/browser';\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}\n","//#region imports\nimport { TaonBaseRepository, TaonRepository } from 'taon/browser';\nimport { Raw } from 'taon-typeorm/browser';\nimport type { EntityManager } from 'taon-typeorm/browser';\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 {\n Column,\n CustomColumn,\n Taon,\n TaonBaseAbstractEntity,\n TaonEntity,\n} from 'taon/browser';\nimport { _ } from 'tnp-core/browser';\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}\n","//#region imports\nimport { TaonBaseRepository, TaonRepository } from 'taon/browser';\nimport { Raw } from 'taon-typeorm/browser';\nimport type { EntityManager } from 'taon-typeorm/browser';\nimport { Translation } from '@taon-dev/i18n/browser';\nimport { Taon } from 'taon/browser';\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}\n","import { Taon } from 'taon/browser';\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.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}\n","//#region imports\nimport { TaonBaseRepository, TaonRepository } from 'taon/browser';\nimport { In, Raw } from 'taon-typeorm/browser';\nimport type { EntityManager } from 'taon-typeorm/browser';\nimport { TaonPermissionEntity } from '@taon-dev/session/browser';\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 { _ } from 'tnp-core/browser';\n\nimport { TaonCmsContentEntity } from './taon-cms-content.entity';\nimport { TaonCmsContentType } from './taon-cms-content.models';\nimport { TaonCmsContentUtils } 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}\n","//#region imports\nimport {\n Body,\n DELETE,\n GET,\n HttpStatusEnum,\n Models,\n POST,\n Query,\n Taon,\n TaonBaseCrudController,\n TaonController,\n getStatusCode,\n} from 'taon/browser';\nimport {\n TaonAuthContextRepository,\n TaonSessionRepository,\n TaonSessionUserEntity,\n} from '@taon-dev/session/browser';\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.TaonCtrlBeforeEachRequestParams<TaonCmsCommentController>['req'],\n res: Models.TaonCtrlBeforeEachRequestParams<TaonCmsCommentController>['res'],\n t: Models.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.TaonCtrlBeforeEachRequestParams<TaonCmsCommentController>['req'],\n t: Models.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.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.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.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.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.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.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.Response<TaonCmsCommentBlockedUserEntity[]> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n @POST()\n setBlockedUser(@Body() input: BlockedUserInput): Taon.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.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.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.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.TaonCtrlBeforeEachRequestParams<TaonCmsCommentController>['req'],\n res: Models.TaonCtrlBeforeEachRequestParams<TaonCmsCommentController>['res'],\n t: Models.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}\n","//#region imports\nimport { TaonBaseRepository, TaonRepository } from 'taon/browser';\nimport { Raw } from 'taon-typeorm/browser';\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 { Taon, TaonBaseProvider, TaonProvider } from 'taon/browser';\nimport { _ } from 'tnp-core/browser';\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 { Taon, TaonBaseMiddleware, TaonMiddleware } from 'taon/browser';\nimport { _ } from 'tnp-core/browser';\n//#endregion\n\n@TaonMiddleware({\n className: 'TaonCmsCommentMiddleware',\n})\nexport class TaonCmsCommentMiddleware extends TaonBaseMiddleware {}","//#region imports\nimport { TaonBaseSubscriberForEntity, TaonSubscriber } from 'taon/browser';\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';\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';\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';\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';\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';\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 {\n Taon,\n ClassHelpers,\n TaonController,\n TaonBaseCrudController,\n Query,\n GET,\n} from 'taon/browser';\nimport { _ } from 'tnp-core/browser';\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}\n","//#region imports\nimport { Taon, TaonBaseProvider, TaonProvider } from 'taon/browser';\nimport { _ } from 'tnp-core/browser';\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 { Taon, TaonBaseMiddleware, TaonMiddleware } from 'taon/browser';\nimport { _ } from 'tnp-core/browser';\n//#endregion\n\n@TaonMiddleware({\n className: 'TaonCmsContentRevisionMiddleware',\n})\nexport class TaonCmsContentRevisionMiddleware extends TaonBaseMiddleware {}","//#region imports\nimport { TaonBaseSubscriberForEntity, TaonSubscriber } from 'taon/browser';\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';\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 {\n Taon,\n ClassHelpers,\n TaonController,\n TaonBaseCrudController,\n Query,\n GET,\n} from 'taon/browser';\nimport { _ } from 'tnp-core/browser';\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}\n","//#region imports\nimport { Taon, TaonBaseProvider, TaonProvider } from 'taon/browser';\nimport { _ } from 'tnp-core/browser';\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 { Taon, TaonBaseMiddleware, TaonMiddleware } from 'taon/browser';\nimport { _ } from 'tnp-core/browser';\n//#endregion\n\n@TaonMiddleware({\n className: 'TaonCmsContentTagMiddleware',\n})\nexport class TaonCmsContentTagMiddleware extends TaonBaseMiddleware {}","//#region imports\nimport { TaonBaseSubscriberForEntity, TaonSubscriber } from 'taon/browser';\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';\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';\nimport { TaonAuthContextRepository } from '@taon-dev/session/browser';\nimport {\n Taon,\n ClassHelpers,\n TaonController,\n TaonBaseCrudController,\n Query,\n GET,\n POST,\n DELETE,\n Body,\n Models,\n} from 'taon/browser';\nimport { _ } from 'tnp-core/browser';\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.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.Response<TaonCmsTagEntity> {\n/* */\n/* */\n return (void 0);\n }\n\n @DELETE()\n deleteTag(@Query('id') id: number): Taon.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.Response<string> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n //#endregion\n}\n","//#region imports\nimport { Taon, TaonBaseProvider, TaonProvider } from 'taon/browser';\nimport { _ } from 'tnp-core/browser';\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 { Taon, TaonBaseMiddleware, TaonMiddleware } from 'taon/browser';\nimport { _ } from 'tnp-core/browser';\n//#endregion\n\n@TaonMiddleware({\n className: 'TaonCmsTagMiddleware',\n})\nexport class TaonCmsTagMiddleware extends TaonBaseMiddleware {}","//#region imports\nimport { TaonBaseSubscriberForEntity, TaonSubscriber } from 'taon/browser';\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';\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';\nimport { TaonAuthContextRepository } from '@taon-dev/session/browser';\nimport {\n ExpressRequest,\n ExpressResponse,\n TaonBaseStorageController,\n TaonController,\n DELETE,\n Query,\n TaonStorageObject,\n TaonUploadedFile,\n ClassHelpers,\n apiPrefix,\n Models,\n Taon,\n} from 'taon/browser';\nimport { UtilsJwt } from 'tnp-core/browser';\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.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.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}\n","//#region imports\nimport {\n TaonSessionRepository,\n type TaonPermissionEntity,\n} from '@taon-dev/session/browser';\nimport {\n TaonAuthContextRepository,\n TaonSessionCoreAuthorization,\n} from '@taon-dev/session/browser';\nimport {\n Taon,\n ClassHelpers,\n TaonController,\n TaonBaseCrudController,\n Query,\n GET,\n POST,\n PUT,\n DELETE,\n Body,\n ExpressRequest,\n Models,\n getStatusCode,\n HttpStatusEnum,\n ExpressResponse,\n} from 'taon/browser';\nimport { _ } from 'tnp-core/browser';\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.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.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.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.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.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.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.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.Response<string> {\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n @GET()\n getPublicThumbnailLinkBySlug(\n @Query('slug') slug: string,\n ): Taon.Response<string> {\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n @GET()\n listCourses(): Taon.Response<TaonCmsContentEntity[]> {\n/* */\n/* */\n return (void 0);\n }\n\n @GET()\n listTagIds(@Query('id') id: number): Taon.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.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.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.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.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.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.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.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.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.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.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.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.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.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.Response<TaonCmsContentEntity[]> {\n/* */\n/* */\n return (void 0);\n }\n //#endregion\n\n @GET()\n getParentPost(\n @Query('id') id: number,\n ): Taon.Response<TaonCmsContentEntity | null> {\n/* */\n/* */\n return (void 0);\n }\n\n @GET()\n getVisibilityConfiguration(\n @Query('id') id: number,\n ): Taon.Response<TaonCmsVisibilityConfiguration> {\n/* */\n/* */\n/* */\n return (void 0);\n }\n\n @GET()\n getPostVersions(\n @Query('id') id: number,\n ): Taon.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.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.Response<TaonCmsPermissionConfiguration> {\n/* */\n/* */\n/* */\n return (void 0);\n }\n //#endregion\n\n //#region methods / list application hooks\n @GET()\n listApplicationHooks(): Taon.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.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.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.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.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.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.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.Response<TaonCmsContentRevisionEntity[]> {\n/* */\n/* */\n return (void 0);\n }\n //#endregion\n}\n","//#region imports\nimport { Taon, TaonBaseMiddleware, TaonMiddleware } from 'taon/browser';\nimport { _ } from 'tnp-core/browser';\n//#endregion\n\n@TaonMiddleware({\n className: 'TaonCmsContentMiddleware',\n})\nexport class TaonCmsContentMiddleware extends TaonBaseMiddleware {}","//#region imports\nimport { Taon, TaonBaseProvider, TaonProvider } from 'taon/browser';\nimport { _ } from 'tnp-core/browser';\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}\n","//#region imports\nimport { TaonBaseSubscriberForEntity, TaonSubscriber } from 'taon/browser';\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';\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 {\n Column,\n CustomColumn,\n PrimaryGeneratedColumn,\n Taon,\n TaonBaseAbstractEntity,\n TaonBaseEntity,\n TaonEntity,\n} from 'taon/browser';\nimport { _ } from 'tnp-core/browser';\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}\n","//#region imports\nimport { TaonBaseRepository, TaonRepository } from 'taon/browser';\nimport { Raw } from 'taon-typeorm/browser';\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 {\n Taon,\n ClassHelpers,\n TaonController,\n TaonBaseCrudController,\n Query,\n GET,\n} from 'taon/browser';\nimport { _ } from 'tnp-core/browser';\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.Response<string> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n //#endregion\n}\n","//#region imports\nimport { Taon, TaonBaseProvider, TaonProvider } from 'taon/browser';\nimport { _ } from 'tnp-core/browser';\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 { Taon, TaonBaseMiddleware, TaonMiddleware } from 'taon/browser';\nimport { _ } from 'tnp-core/browser';\n//#endregion\n\n@TaonMiddleware({\n className: 'TaonCmsContentAssetMiddleware',\n})\nexport class TaonCmsContentAssetMiddleware extends TaonBaseMiddleware {}","//#region imports\nimport { TaonBaseSubscriberForEntity, TaonSubscriber } from 'taon/browser';\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';\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 {\n Column,\n CustomColumn,\n PrimaryGeneratedColumn,\n Taon,\n TaonBaseAbstractEntity,\n TaonBaseEntity,\n TaonEntity,\n} from 'taon/browser';\nimport { _ } from 'tnp-core/browser';\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}\n","//#region imports\nimport { TaonBaseRepository, TaonRepository } from 'taon/browser';\nimport { Raw } from 'taon-typeorm/browser';\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 {\n Taon,\n ClassHelpers,\n TaonController,\n TaonBaseCrudController,\n Query,\n GET,\n} from 'taon/browser';\nimport { _ } from 'tnp-core/browser';\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.Response<string> {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n return (void 0);\n }\n //#endregion\n}\n","//#region imports\nimport { Taon, TaonBaseProvider, TaonProvider } from 'taon/browser';\nimport { _ } from 'tnp-core/browser';\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 { Taon, TaonBaseMiddleware, TaonMiddleware } from 'taon/browser';\nimport { _ } from 'tnp-core/browser';\n//#endregion\n\n@TaonMiddleware({\n className: 'TaonCmsContentPermissionMiddleware',\n})\nexport class TaonCmsContentPermissionMiddleware extends TaonBaseMiddleware {}","//#region imports\nimport { TaonBaseSubscriberForEntity, TaonSubscriber } from 'taon/browser';\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';\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';\nimport { createContext, TaonBaseContext } from 'taon/browser';\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 } from 'ng2-rest/browser';\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.methodsInterceptors.has(key)) {\n Resource.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}\n","//#region imports\nimport { Injectable } from '@angular/core';\nimport type { TaonPermissionEntity } from '@taon-dev/session/browser';\nimport { Observable, of } from 'rxjs';\nimport { catchError, map } from 'rxjs/operators';\nimport { Taon, TaonBaseAngularService, TaonStorageObject } from 'taon/browser';\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}\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';\nimport { Taon, type TaonStorageObject } from 'taon/browser';\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}\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';\nimport { Translation } from '@taon-dev/i18n/browser';\nimport { finalize, map } from 'rxjs';\nimport {\n Taon,\n type TaonStorageObject as TaonStorageObjectBase,\n} from 'taon/browser';\nimport { _ } from 'tnp-core/browser';\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 = _.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}\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';\nimport { Taon } from 'taon/browser';\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}\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","//#region imports\nimport { Routes } from '@angular/router';\nimport { Translation } from '@taon-dev/i18n/browser';\nimport type { TaonAuthContextEntity } from '@taon-dev/session/browser';\nimport { adminLazyRoute as adminLazyRouteBase } from '@taon-dev/ui/browser';\nimport { Taon } from 'taon/browser';\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;\n","import { Injectable } from '@angular/core';\nimport { Observable } from 'rxjs';\nimport { map } from 'rxjs/operators';\nimport { Taon, TaonBaseAngularService } from 'taon/browser';\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}\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\nexport namespace TaonCmsCategoryUtils {\n export function isActive(state: string): state is TaonCmsCategoryState {\n return state === 'active';\n }\n}","import { Translation } from '@taon-dev/i18n/browser';\nimport { Taon } from 'taon/browser';\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}\n","import { Injectable } from '@angular/core';\nimport { Observable } from 'rxjs';\nimport { map } from 'rxjs/operators';\nimport { Taon, TaonBaseAngularService } from 'taon/browser';\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}\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\nexport namespace TaonCmsCommentUtils {\n export function isActive(state: string): state is TaonCmsCommentState {\n return state === 'active';\n }\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';\nimport { TaonSessionApiService } from '@taon-dev/session/browser';\nimport type { TaonAuthContextEntity } from '@taon-dev/session/browser';\nimport { Taon } from 'taon/browser';\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}\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';\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\nexport namespace TaonCmsContentUtils {\n export function 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 isActive(state: string): state is TaonCmsContentState {\n return state === 'active';\n }\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, '&')\n .replace(/</g, '<')\n .replace(/>/g, '>')\n .replace(/\"/g, '"')\n .replace(/'/g, ''');\n },\n );\n}\n","import { Injectable } from '@angular/core';\nimport { Observable } from 'rxjs';\nimport { map } from 'rxjs/operators';\nimport { Taon, TaonBaseAngularService } from 'taon/browser';\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}\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\nexport namespace TaonCmsContentAssetUtils {\n export function isActive(state: string): state is TaonCmsContentAssetState {\n return state === 'active';\n }\n}","import { Injectable } from '@angular/core';\nimport { Observable } from 'rxjs';\nimport { map } from 'rxjs/operators';\nimport { Taon, TaonBaseAngularService } from 'taon/browser';\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}\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\nexport namespace TaonCmsContentPermissionUtils {\n export function isActive(state: string): state is TaonCmsContentPermissionState {\n return state === 'active';\n }\n}","import { Injectable } from '@angular/core';\nimport { Observable } from 'rxjs';\nimport { map } from 'rxjs/operators';\nimport { Taon, TaonBaseAngularService } from 'taon/browser';\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}\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\nexport namespace TaonCmsContentRevisionUtils {\n export function isActive(state: string): state is TaonCmsContentRevisionState {\n return state === 'active';\n }\n}","import { Injectable } from '@angular/core';\nimport { Observable } from 'rxjs';\nimport { map } from 'rxjs/operators';\nimport { Taon, TaonBaseAngularService } from 'taon/browser';\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}\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\nexport namespace TaonCmsContentTagUtils {\n export function isActive(state: string): state is TaonCmsContentTagState {\n return state === 'active';\n }\n}","import { Injectable } from '@angular/core';\nimport { Observable } from 'rxjs';\nimport { map } from 'rxjs/operators';\nimport { Taon, TaonBaseAngularService } from 'taon/browser';\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}\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\nexport namespace TaonCmsTagUtils {\n export function isActive(state: string): state is TaonCmsTagState {\n return state === 'active';\n }\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';\nimport {\n TaonConfirmDialogComponent,\n TaonDatatableComponent,\n} from '@taon-dev/ui/browser';\nimport { Observable, finalize } from 'rxjs';\nimport { Taon } from 'taon/browser';\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}\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';\nimport { Taon } from 'taon/browser';\nimport { _ } from 'tnp-core/browser';\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 = _.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}\n","//#region imports\nimport { Injectable } from '@angular/core';\nimport { TaonBaseAngularService } from 'taon/browser';\n\nimport { TaonCmsWebsiteFeatureController } from './taon-cms-website-feature.controller';\nimport type { TaonCmsWebsiteFeatureModels } 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.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.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.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.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.Feature[] };\n }): TaonCmsWebsiteFeatureModels.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}\n","import { TaonCmsWebsiteFeatureModels } from './taon-cms-website-feature.models';\nimport { _ } from 'tnp-core/browser';\n\nexport namespace TaonCmsWebsiteFeatureUtils {\n export function keyFromName(name: string): string {\n // Keep digits attached so \"Bachata P1\" produces \"bachata-p1\".\n return _.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 isActive(state: string): state is TaonCmsWebsiteFeatureModels.TaonCmsWebsiteFeatureState {\n return state === 'active';\n }\n}","//#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';\nimport { Taon } from 'taon/browser';\n\nimport { TaonCmsWebsiteFeatureApiService } from './taon-cms-website-feature/taon-cms-website-feature.api.service';\nimport type { TaonCmsWebsiteFeatureModels } from './taon-cms-website-feature/taon-cms-website-feature.models';\nimport { TaonCmsWebsiteFeatureUtils } 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.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.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.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.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.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","//#region imports\nimport { Routes } from '@angular/router';\nimport { adminLazyRoute } from '@taon-dev/ui/browser';\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';\nimport { Taon } from 'taon/browser';\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>","//#region imports\nimport { Routes } from '@angular/router';\nimport { adminLazyRoute } from '@taon-dev/ui/browser';\nimport { Translation } from '@taon-dev/i18n/browser';\nimport { Taon } from 'taon/browser';\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;\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 { MatRadioModule } from '@angular/material/radio';\nimport { Translation } from '@taon-dev/i18n/browser';\nimport { Taon } from 'taon/browser';\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}\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';\nimport { TaonConfirmDialogComponent } from '@taon-dev/ui/browser';\nimport { finalize, take } from 'rxjs';\nimport { Taon } from 'taon/browser';\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}\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';\nimport { TaonDatatableComponent } from '@taon-dev/ui/browser';\nimport { finalize } from 'rxjs';\nimport { Taon } from 'taon/browser';\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}\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';\nimport { Taon } from 'taon/browser';\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}\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';\nimport { Translation } from '@taon-dev/i18n/browser';\nimport { finalize } from 'rxjs';\nimport { Taon } from 'taon/browser';\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}\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","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';\nimport { Taon } from 'taon/browser';\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}\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';\nimport { finalize } from 'rxjs';\nimport { Taon } from 'taon/browser';\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}\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';\nimport { finalize } from 'rxjs';\nimport { Taon } from 'taon/browser';\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}\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';\nimport { TaonPermissionApiService } from '@taon-dev/session/browser';\nimport type { TaonPermissionEntity } from '@taon-dev/session/browser';\nimport {\n editorTableSchema,\n TaonConfirmDialogComponent,\n} from '@taon-dev/ui/browser';\nimport { createTableEditor, insertTable } from '@taon-dev/ui/browser';\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 } from 'taon/browser';\nimport type { TaonStorageObject } from 'taon/browser';\nimport { _ } from 'tnp-core/browser';\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: _.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, '&')\n .replace(/</g, '<')\n .replace(/>/g, '>');\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}\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';\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';\nimport { TaonAdminContentFooterService } from '@taon-dev/ui/browser';\nimport { Taon } from 'taon/browser';\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}\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';\nimport { Translation } from '@taon-dev/i18n/browser';\nimport { Taon } from 'taon/browser';\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}\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","//#region imports\nimport { inject } from '@angular/core';\nimport { Routes } from '@angular/router';\nimport { ResolveFn } from '@angular/router';\nimport { Translation } from '@taon-dev/i18n/browser';\nimport { Taon } from 'taon/browser';\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;\n","//#region imports\nimport { Injectable } from '@angular/core';\nimport { Observable } from 'rxjs';\nimport { map } from 'rxjs/operators';\nimport { Taon, TaonBaseAngularService } from 'taon/browser';\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 } from './taon-cms-website-feature.models';\nimport { Translation } from '@taon-dev/i18n/browser';\nimport { Taon } from 'taon/browser';\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.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]);","export namespace TaonCmsWebsiteFeatureModels {\n export interface Feature {\n key: string;\n name: string;\n enabled: boolean;\n }\n\n export enum TaonCmsWebsiteFeatureState {\n Active = 'active',\n Inactive = 'inactive',\n }\n}","import { AbstractControl, ValidationErrors, ValidatorFn } from '@angular/forms'; // @browser\nimport { TaonCmsWebsiteFeatureErrors } from './taon-cms-website-feature.constants';\n\nexport namespace TaonCmsWebsiteFeatureValidators {\n //#region @browser\n /**\n * TODO REMOVE THIS EXAMPLE.\n */\n export const 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}","//#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';\nimport { TaonCmsCommentApiService } from '../../taon-cms-comment-api.service';\nimport type { CommentListItem } from '../../taon-cms-comment.controller';\nimport { Translation } from '@taon-dev/i18n/browser';\nimport { Taon } from 'taon/browser';\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>","//#region imports\nimport { Routes } from '@angular/router';\nimport { adminLazyRoute } from '@taon-dev/ui/browser';\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';\nimport { Taon } from 'taon/browser';\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>","//#region imports\nimport { Routes } from '@angular/router';\nimport { adminLazyRoute } from '@taon-dev/ui/browser';\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';\nimport { Taon } from 'taon/browser';\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>","//#region imports\nimport { Routes } from '@angular/router';\nimport { adminLazyRoute } from '@taon-dev/ui/browser';\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":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAGY;AAAZ,CAAA,UAAY,kBAAkB,EAAA;AAC5B,IAAA,kBAAA,CAAA,QAAA,CAAA,GAAA,QAAiB;AACjB,IAAA,kBAAA,CAAA,OAAA,CAAA,GAAA,OAAe;AACf,IAAA,kBAAA,CAAA,OAAA,CAAA,GAAA,OAAe;AACf,IAAA,kBAAA,CAAA,YAAA,CAAA,GAAA,YAAyB;AAC3B,CAAC,EALW,kBAAkB,KAAlB,kBAAkB,GAAA,EAAA,CAAA,CAAA;IAOlB;AAAZ,CAAA,UAAY,mBAAmB,EAAA;AAC7B,IAAA,mBAAA,CAAA,QAAA,CAAA,GAAA,QAAiB;AACjB,IAAA,mBAAA,CAAA,UAAA,CAAA,GAAA,UAAqB;AACvB,CAAC,EAHW,mBAAmB,KAAnB,mBAAmB,GAAA,EAAA,CAAA,CAAA;;ACU/B;AAMO,IAAM,oBAAoB,GAA1B,MAAM,oBAAqB,SAAQ,cAAoC,CAAA;AAAvE,IAAA,WAAA,GAAA;;;;;;AAcL,QAAA,IAAA,CAAA,IAAI,GAAuB,kBAAkB,CAAC,MAAM;;;QAepD,IAAA,CAAA,mBAAmB,GAAkB,IAAI;;;QAKzC,IAAA,CAAA,oBAAoB,GAAkB,IAAI;;;QAiC1C,IAAA,CAAA,8BAA8B,GAAY,KAAK;;;QAK/C,IAAA,CAAA,6BAA6B,GAAY,KAAK;;;QAe9C,IAAA,CAAA,QAAQ,GAAkB,IAAI;;;QAK9B,IAAA,CAAA,QAAQ,GAAkB,IAAI;;;QAK9B,IAAA,CAAA,aAAa,GAAkB,IAAI;;;QAKnC,IAAA,CAAA,YAAY,GAAkB,IAAI;IAgCpC;;AAtIa,oBAAoB,GAAA,UAAA,CAAA;AAJhC,IAAA,UAAU,CAAC;AACV,QAAA,SAAS,EAAE,sBAAsB;AACjC,QAAA,WAAW,EAAE,IAAI;KAClB;AACY,CAAA,EAAA,oBAAoB,CAsIhC;;AChJM,IAAM,4BAA4B,GAAlC,MAAM,4BAA6B,SAAQ,cAA4C,CAAA;;AAE5F,UAAA,CAAA;AADC,IAAA,sBAAsB,EAAE;;AACd,CAAA,EAAA,4BAAA,CAAA,SAAA,EAAA,IAAA,EAAA,KAAA,CAAA,CAAA;AAGX,UAAA,CAAA;IADC,MAAM,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;;AACb,CAAA,EAAA,4BAAA,CAAA,SAAA,EAAA,MAAA,EAAA,KAAA,CAAA,CAAA;AAG7B,UAAA,CAAA;AADC,IAAA,MAAM,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;;AACjC,CAAA,EAAA,4BAAA,CAAA,SAAA,EAAA,WAAA,EAAA,KAAA,CAAA,CAAA;AAQzB,UAAA,CAAA;IANC,QAAQ,CACP,MAAM,oBAAoB,EAC1B,OAAO,IAAI,OAAO,CAAC,eAAe,EAClC,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,CACzC;IACA,UAAU,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,oBAAoB,EAAE,IAAI,EAAE,CAAC;8BACrD,oBAAoB;AAAQ,CAAA,EAAA,4BAAA,CAAA,SAAA,EAAA,SAAA,EAAA,KAAA,CAAA,CAAA;AAhB1B,4BAA4B,GAAA,UAAA,CAAA;AAJxC,IAAA,UAAU,CAAC;AACV,QAAA,SAAS,EAAE,8BAA8B;AACzC,QAAA,WAAW,EAAE,IAAI;KAClB;AACY,CAAA,EAAA,4BAA4B,CAiBxC;;ACjCM,MAAM,sBAAsB,GAAG;AACpC,IAAA,SAAS,EAAE,WAAW;AACtB,IAAA,kBAAkB,EAAE,oBAAoB;AACxC,IAAA,cAAc,EAAE,gBAAgB;AAChC,IAAA,UAAU,EAAE,YAAY;AACxB,IAAA,YAAY,EAAE,cAAc;;;ACE9B;AAIO,IAAM,yCAAyC,GAA/C,MAAM,yCAA0C,SAAQ,iBAAiB,CAAA;AAAzE,IAAA,WAAA,GAAA;;AACL,QAAA,IAAA,CAAA,sBAAsB,GAAG,YAAY,CAAC,OAAO,CAAC,4BAA4B,CAAC;AAE3E,QAAA,IAAA,CAAA,aAAa,GAAG,YAAY,CAAC,OAAO,CAAC,oBAAoB,CAAC;IA2E5D;;IAxEE,MAAM,EAAE,CAAC,WAAwB,EAAA;AAC/B,QAAA,MAAM,WAAW,CAAC,gBAAgB,EAAE;AACpC,QAAA,IAAI;AACF,YAAA,IAAI,EAAE,MAAM,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC,EAAE;AAC9D,gBAAA,MAAM,WAAW,CAAC,WAAW,CAC3B,IAAI,KAAK,CAAC;oBACR,IAAI,EAAE,IAAI,CAAC,sBAAsB;AACjC,oBAAA,OAAO,EAAE;AACP,wBAAA;AACE,4BAAA,IAAI,EAAE,IAAI;AACV,4BAAA,IAAI,EAAE,SAAS;AACf,4BAAA,SAAS,EAAE,IAAI;AACf,4BAAA,WAAW,EAAE,IAAI;AACjB,4BAAA,kBAAkB,EAAE,WAAW;AAChC,yBAAA;wBACD,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE;AACjD,wBAAA;AACE,4BAAA,IAAI,EAAE,WAAW;AACjB,4BAAA,IAAI,EAAE,SAAS;AACf,4BAAA,UAAU,EAAE,IAAI;AAChB,4BAAA,QAAQ,EAAE,IAAI;AACf,yBAAA;AACF,qBAAA;AACD,oBAAA,WAAW,EAAE;AACX,wBAAA;4BACE,WAAW,EAAE,CAAC,WAAW,CAAC;4BAC1B,mBAAmB,EAAE,IAAI,CAAC,aAAa;4BACvC,qBAAqB,EAAE,CAAC,IAAI,CAAC;AAC7B,4BAAA,QAAQ,EAAE,UAAU;AACrB,yBAAA;AACF,qBAAA;iBACF,CAAC,EACF,IAAI,CACL;YACH;AAEA,YAAA,MAAM,IAAI,CAAC,uBAAuB,CAAC,WAAW,CAAC;AAC/C,YAAA,MAAM,WAAW,CAAC,iBAAiB,EAAE;QACvC;QAAE,OAAO,KAAK,EAAE;AACd,YAAA,OAAO,CAAC,KAAK,CAAC,qBAAqB,EAAE,KAAK,CAAC;AAC3C,YAAA,MAAM,WAAW,CAAC,mBAAmB,EAAE;AACvC,YAAA,MAAM,KAAK;QACb;IACF;;;IAIA,MAAM,IAAI,CAAC,WAAwB,EAAA;QACjC,IAAI,MAAM,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,sBAAsB,CAAC,EAAE;YAC3D,MAAM,WAAW,CAAC,SAAS,CAAC,IAAI,CAAC,sBAAsB,EAAE,IAAI,CAAC;QAChE;IACF;;IAGU,mBAAmB,GAAA;AAC3B,QAAA,OAAO,sBAAsB;IAC/B;IAEQ,MAAM,uBAAuB,CACnC,WAAwB,EAAA;QAExB,MAAM,UAAU,GAAG,WAAW,CAAC,OAAO,CAAC,aAAa,CAClD,4BAA4B,CAC7B;AACD,QAAA,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,mBAAmB,EAAE,CAAC,EAAE;AAC5D,YAAA,IAAI,EAAE,MAAM,UAAU,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,IAAW,EAAE,CAAC,CAAC,EAAE;AACxD,gBAAA,MAAM,UAAU,CAAC,IAAI,CACnB,UAAU,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,IAAW,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAC1D;YACH;QACF;IACF;;AA7EW,yCAAyC,GAAA,UAAA,CAAA;AAHrD,IAAA,aAAa,CAAC;AACb,QAAA,SAAS,EAAE,2CAA2C;KACvD;AACY,CAAA,EAAA,yCAAyC,CA8ErD;AACD;;ACnFO,IAAM,yCAAyC,GAA/C,MAAM,yCAA0C,SAAQ,iBAAiB,CAAA;IAC9E,MAAM,EAAE,CAAC,WAAwB,EAAA;QAC/B,MAAM,KAAK,GAAG,YAAY,CAAC,OAAO,CAAC,oBAAoB,CAAC;QACxD,KAAK,MAAM,IAAI,IAAI,CAAC,qBAAqB,EAAE,sBAAsB,CAAC,EAAE;AAClE,YAAA,IAAI,EAAE,MAAM,WAAW,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,EAAE;gBAC/C,MAAM,WAAW,CAAC,SAAS,CACzB,KAAK,EACL,IAAI,WAAW,CAAC;oBACd,IAAI;AACJ,oBAAA,IAAI,EAAE,SAAS;AACf,oBAAA,UAAU,EAAE,IAAI;AACjB,iBAAA,CAAC,CACH;YACH;QACF;IACF;IAEA,MAAM,IAAI,CAAC,WAAwB,EAAA;QACjC,MAAM,KAAK,GAAG,YAAY,CAAC,OAAO,CAAC,oBAAoB,CAAC;QACxD,KAAK,MAAM,IAAI,IAAI,CAAC,sBAAsB,EAAE,qBAAqB,CAAC,EAAE;YAClE,IAAI,MAAM,WAAW,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,CAAC,EAAE;gBAC5C,MAAM,WAAW,CAAC,UAAU,CAAC,KAAK,EAAE,IAAI,CAAC;YAC3C;QACF;IACF;;AAxBW,yCAAyC,GAAA,UAAA,CAAA;AAHrD,IAAA,aAAa,CAAC;AACb,QAAA,SAAS,EAAE,2CAA2C;KACvD;AACY,CAAA,EAAA,yCAAyC,CAyBrD;;AChCD;AAKA;AACO,MAAM,iCAAiC,GAAG;AAC/C,8BAA0B,yCAAyC;AACnE,8BAA0B,yCAAyC;;AAErE;;ACVA;;ACAA;AACA;;AAEG;AACI,MAAM,wBAAwB,GAAG;AACxC;;AAEG;AACI,MAAM,MAAM,GAAG;AACtB;;AAEG;AACI,MAAM,eAAe,GAAG;AAC/B;;AAEG;AACI,MAAM,gBAAgB,GAAG;AAChC;;AAEG;AACI,MAAM,4BAA4B,GAAG;AAC5C;;AAEG;AACI,MAAM,uBAAuB,GAAG;AAMvC;;AC9BA;AAGA;AACA;AAEA;AACA;;;;;AAKG;AACH,MAAM,OAAQ,SAAQ,sBAA0B,CAAA;AAC9C;;AAEG;IACI,CAAC,GAAA;AACN,QAAA,OAAO,CAAC,GAAG,CAAC,CAAA,oBAAA,CAAsB,CAAC;QACnC,IAAI,CAAC,KAAK,EAAE;IACd;AAEA;;;AAGG;IACH,uBAAuB,GAAA;AACrB,QAAA,OAAO,CAAC,GAAG,CAAC,mCAAmC,CAAC;AAChD,QAAA,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;IACf;AACD;AACD;AAEA;AACA;;AAEG;AACH,MAAM,QAAS,SAAQ,sBAErB,CAAA;AACA;;AAEG;IACI,CAAC,GAAA;AACN,QAAA,OAAO,CAAC,GAAG,CAAC,CAAA,iCAAA,CAAmC,CAAC;QAChD,IAAI,CAAC,KAAK,EAAE;IACd;AAEA;;AAEG;IACI,kBAAkB,GAAA;AACvB,QAAA,MAAM,GAAG,GAAG,SAAS,CAAC,QAAQ,CAC5B,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,cAAc,CAAC,EACpC,SAAS,EACT;AACE,YAAA,YAAY,EAAE,eAAe;AAC9B,SAAA,CACF;AACD,QAAA,OAAO,CAAC,GAAG,CAAC,4BAA4B,GAAG,CAAA,CAAE,CAAC;AAC9C,QAAA,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;IACf;AACD;AACD;AAEA;;;;AAIG;AACI,eAAe,QAAQ,CAC5B,KAAe,EACf,QAAgB,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA8BhB,IAAA,QAAQ,KAAK,CAAC;AAChB;;ACjGA;AAKO,IAAM,iCAAiC,GAAvC,MAAM,iCAAkC,SAAQ,oBAErD,CAAA;AAFK,IAAA,WAAA,GAAA;;AAGG,QAAA,IAAA,CAAA,QAAQ,GAAkB,OAAO,CAAC,OAAO,EAAE;IAoGrD;AAlGE,IAAA,MAAM,YAAY,GAAA;;;;;;;;;;;;;;;;;;AAkBhB,QAAA,QAAQ,KAAK,CAAC;IAChB;IAEA,MAAM,SAAS,CAAC,GAAW,EAAA;;;;;;;AAOzB,QAAA,QAAQ,KAAK,CAAC;IAChB;IAEA,MAAM,UAAU,CAAC,IAAY,EAAA;;;;;;;;;;;;AAY3B,QAAA,QAAQ,KAAK,CAAC;IAChB;AAEA,IAAA,MAAM,UAAU,CACd,GAAW,EACX,OAAgB,EAAA;;;;;;;;;;;AAYhB,QAAA,QAAQ,KAAK,CAAC;IAChB;IAEA,MAAM,aAAa,CAAC,GAAW,EAAA;;;;;;AAM7B,QAAA,QAAQ,KAAK,CAAC;IAChB;IAEQ,cAAc,CACpB,QAA+C,EAC/C,GAAW,EAAA;;;;;AAMX,QAAA,QAAQ,KAAK,CAAC;IAChB;IAEQ,MAAM,MAAM,CAClB,MAE0C,EAAA;;;;;;;;;AAU1C,QAAA,QAAQ,KAAK,CAAC;IAChB;;AAtGW,iCAAiC,GAAA,UAAA,CAAA;AAH7C,IAAA,cAAc,CAAC;AACd,QAAA,SAAS,EAAE,mCAAmC;KAC/C;AACY,CAAA,EAAA,iCAAiC,CAuG7C;;AC7FD;AAMO,IAAM,+BAA+B,GAArC,MAAM,+BAAgC,SAAQ,kBAAkB,CAAA;AAAhE,IAAA,WAAA,GAAA;;AACY,QAAA,IAAA,CAAA,QAAQ,GAAG,IAAI,CAAC,kBAAkB,CAAC,iCAAiC,CAAC;AAErE,QAAA,IAAA,CAAA,QAAQ,GAAG,IAAI,CAAC,gBAAgB,CAAC,qBAAqB,CAAC;AAEvD,QAAA,IAAA,CAAA,IAAI,GAAG,IAAI,CAAC,gBAAgB,CAAC,yBAAyB,CAAC;IAyD1E;IAvDY,MAAM,iBAAiB,CAAC,EAChC,GAAG,EACH,GAAG,EACH,YAAY,EACZ,CAAC,GACuE,EAAA;;;;;;;;;;AAUxE,QAAA,QAAQ,KAAK,CAAC;IAChB;AAGA,IAAA,SAAS,CAAe,GAAW,EAAA;;;AAGjC,QAAA,QAAQ,KAAK,CAAC;IAChB;IAGA,YAAY,GAAA;;;AAGV,QAAA,QAAQ,KAAK,CAAC;IAChB;AAGA,IAAA,UAAU,CAAe,IAAY,EAAA;;;AAGnC,QAAA,QAAQ,KAAK,CAAC;IAChB;IAGA,UAAU,CACM,GAAW,EACR,OAAgB,EAAA;;;AAIjC,QAAA,QAAQ,KAAK,CAAC;IAChB;AAGA,IAAA,aAAa,CAAe,GAAW,EAAA;;;AAGrC,QAAA,QAAQ,KAAK,CAAC;IAChB;;AAnCA,UAAA,CAAA;AADC,IAAA,GAAG,EAAE;AACK,IAAA,OAAA,CAAA,CAAA,EAAA,KAAK,CAAC,KAAK,CAAC,CAAA;;;;AAItB,CAAA,EAAA,+BAAA,CAAA,SAAA,EAAA,WAAA,EAAA,IAAA,CAAA;AAGD,UAAA,CAAA;AADC,IAAA,GAAG,EAAE;;;;AAKL,CAAA,EAAA,+BAAA,CAAA,SAAA,EAAA,cAAA,EAAA,IAAA,CAAA;AAGD,UAAA,CAAA;AADC,IAAA,IAAI,EAAE;AACK,IAAA,OAAA,CAAA,CAAA,EAAA,IAAI,CAAC,MAAM,CAAC,CAAA;;;;AAIvB,CAAA,EAAA,+BAAA,CAAA,SAAA,EAAA,YAAA,EAAA,IAAA,CAAA;AAGD,UAAA,CAAA;AADC,IAAA,GAAG,EAAE;AAEH,IAAA,OAAA,CAAA,CAAA,EAAA,KAAK,CAAC,KAAK,CAAC,CAAA;AACZ,IAAA,OAAA,CAAA,CAAA,EAAA,IAAI,CAAC,SAAS,CAAC,CAAA;;;;AAKjB,CAAA,EAAA,+BAAA,CAAA,SAAA,EAAA,YAAA,EAAA,IAAA,CAAA;AAGD,UAAA,CAAA;AADC,IAAA,MAAM,EAAE;AACM,IAAA,OAAA,CAAA,CAAA,EAAA,KAAK,CAAC,KAAK,CAAC,CAAA;;;;AAI1B,CAAA,EAAA,+BAAA,CAAA,SAAA,EAAA,eAAA,EAAA,IAAA,CAAA;AA7DU,+BAA+B,GAAA,UAAA,CAAA;AAJ3C,IAAA,cAAc,CAAkC;AAC/C,QAAA,SAAS,EAAE,iCAAiC;QAC5C,cAAc,EAAE,CAAC,WAAW,EAAE,cAAc,EAAE,YAAY,EAAE,YAAY,EAAE,eAAe,CAAC;KAC3F;AACY,CAAA,EAAA,+BAA+B,CA8D3C;;ACtFD;AAEM,MAAO,+BAAgC,SAAQ,aAAa,CAAA;AAEjE;AAKM,IAAM,6BAA6B,GAAnC,MAAM,6BAA8B,SAAQ,gBAAgB,CAAA;AAA5D,IAAA,WAAA,GAAA;;QACL,IAAA,CAAA,kCAAkC,GAAY,IAAI;AAClD,QAAA,IAAA,CAAA,MAAM,GAAG,IAAI,+BAA+B,EAAE;IAOhD;IANE,KAAK,GAAA;QACH,OAAO;YACL,kCAAkC,EAAE,IAAI,CAAC,kCAAkC;AAC3E,YAAA,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE;SAC5B;IACH;;AARW,6BAA6B,GAAA,UAAA,CAAA;AAHzC,IAAA,YAAY,CAAC;AACZ,QAAA,SAAS,EAAE,+BAA+B;KAC3C;AACY,CAAA,EAAA,6BAA6B,CASzC;;ACrBD;AAOA;MAEa,oCAAoC,GAAG,aAAa,CAAC,OAAO;AACvE,IAAA,WAAW,EAAE,sCAAsC;AACnD,IAAA,QAAQ,EAAE,IAAI;AACd,IAAA,QAAQ,EAAE,EAAE,eAAe,EAAE,0BAA0B,EAAE;IACzD,WAAW,EAAE,EAAE,+BAA+B,EAAE;AAChD,IAAA,YAAY,EAAE;QACZ,iCAAiC;AAClC,KAAA;IACD,SAAS,EAAE,EAAE,6BAA6B,EAAE;AAC7C,CAAA,CAAC;;ACPF;AAMO,IAAM,qBAAqB,GAA3B,MAAM,qBAAsB,SAAQ,sBAA6C,CAAA;;AAA3E,qBAAqB,GAAA,UAAA,CAAA;AAJjC,IAAA,UAAU,CAAC;AACV,QAAA,SAAS,EAAE,uBAAuB;AAClC,QAAA,WAAW,EAAE,IAAI;KAClB;AACY,CAAA,EAAA,qBAAqB,CAyBjC;;AC1BD;AAEA,MAAMA,GAAC,GAAG,WAAW,CAAC,GAAG,CAAC,2DAA2D,EAAE,EAAC,2DAA2D,EAAC,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,4EAAwD,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,4EAAwD,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,4EAAwD,CAAC,EAAE,OAAO,EAAC,EAAC,2DAA2D,EAAC,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,4EAAwD,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,4EAAwD,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,4EAAwD,CAAC,EAAE,OAAO,EAAC,EAAC,2DAA2D,EAAC,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,4EAAwD,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,4EAAwD,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,4EAAwD,CAAC,EAAE,OAAO,EAAC,EAAQ,CAAC;AAKhqC,IAAM,yBAAyB,GAA/B,MAAM,yBAA0B,SAAQ,kBAAyC,CAAA;AAAjF,IAAA,WAAA,GAAA;;AACL,QAAA,IAAA,CAAA,oBAAoB,GAAuC,MACzD,qBAAqB;IAgFzB;AA9EE,IAAA,MAAM,YAAY,CAChB,EAAiB,EACjB,KAA4B,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAuC5B,QAAA,QAAQ,KAAK,CAAC;IAChB;IAEA,MAAM,cAAc,CAAC,EAAU,EAAA;;;;;;;;;;;;;;;;;;;;;AAqB7B,QAAA,QAAQ,KAAK,CAAC;IAChB;AAEA,IAAA,MAAM,eAAe,CAAC,EAAU,EAAE,OAAsB,EAAA;;;;;;;;AAQtD,QAAA,QAAQ,KAAK,CAAC;IAChB;;AAjFW,yBAAyB,GAAA,UAAA,CAAA;AAHrC,IAAA,cAAc,CAAC;AACd,QAAA,SAAS,EAAE,2BAA2B;KACvC;AACY,CAAA,EAAA,yBAAyB,CAkFrC;;ACnFD;AAMO,IAAM,yBAAyB,GAA/B,MAAM,yBAA0B,SAAQ,sBAA6C,CAAA;AAArF,IAAA,WAAA,GAAA;;AACL,QAAA,IAAA,CAAA,oBAAoB,GAAuC,MACzD,qBAAqB;AAEvB,QAAA,IAAA,CAAA,yBAAyB,GAAG,IAAI,CAAC,gBAAgB,CAAC,yBAAyB,CAAC;AAE3D,QAAA,IAAA,CAAA,QAAQ,GAAG,IAAI,CAAC,gBAAgB,CAAC,qBAAqB,CAAC;AAEvD,QAAA,IAAA,CAAA,IAAI,GAAG,IAAI,CAAC,gBAAgB,CAAC,yBAAyB,CAAC;IAgC1E;IA9BY,MAAM,iBAAiB,CAAC,EAChC,GAAG,EACH,GAAG,EACH,CAAC,GACiE,EAAA;;;;;;;AAOlE,QAAA,QAAQ,KAAK,CAAC;IAChB;IAGA,YAAY,CACG,EAAiB,EACtB,KAA4B,EAAA;;;AAIpC,QAAA,QAAQ,KAAK,CAAC;IAChB;AAGA,IAAA,cAAc,CAAc,EAAU,EAAA;;;AAGpC,QAAA,QAAQ,KAAK,CAAC;IAChB;;AAdA,UAAA,CAAA;AADC,IAAA,IAAI,EAAE;AAEJ,IAAA,OAAA,CAAA,CAAA,EAAA,KAAK,CAAC,IAAI,CAAC,CAAA;IACX,OAAA,CAAA,CAAA,EAAA,IAAI,EAAE,CAAA;;;;AAKR,CAAA,EAAA,yBAAA,CAAA,SAAA,EAAA,cAAA,EAAA,IAAA,CAAA;AAGD,UAAA,CAAA;AADC,IAAA,MAAM,EAAE;AACO,IAAA,OAAA,CAAA,CAAA,EAAA,KAAK,CAAC,IAAI,CAAC,CAAA;;;;AAI1B,CAAA,EAAA,yBAAA,CAAA,SAAA,EAAA,gBAAA,EAAA,IAAA,CAAA;AAvCU,yBAAyB,GAAA,UAAA,CAAA;AAJrC,IAAA,cAAc,CAA4B;AACzC,QAAA,SAAS,EAAE,2BAA2B;AACtC,QAAA,cAAc,EAAE,CAAC,QAAQ,EAAE,cAAc,EAAE,gBAAgB,CAAC;KAC7D;AACY,CAAA,EAAA,yBAAyB,CAwCrC;;AChED;AAQO,IAAM,uBAAuB,GAA7B,MAAM,uBAAwB,SAAQ,gBAAgB,CAAA;8GAAhD,uBAAuB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;kHAAvB,uBAAuB,EAAA,CAAA,CAAA;;AAAvB,uBAAuB,GAAA,UAAA,CAAA;AANnC,IAAA,YAAY,CAAC;AACZ,QAAA,SAAS,EAAE,yBAAyB;KACrC;;AAIY,CAAA,EAAA,uBAAuB,CAInC;2FAJY,uBAAuB,EAAA,UAAA,EAAA,CAAA;kBAFnC;;;ACPD;AAKO,IAAM,yBAAyB,GAA/B,MAAM,yBAA0B,SAAQ,kBAAkB,CAAA;;AAApD,yBAAyB,GAAA,UAAA,CAAA;AAHrC,IAAA,cAAc,CAAC;AACd,QAAA,SAAS,EAAE,2BAA2B;KACvC;AACY,CAAA,EAAA,yBAAyB,CAA8B;;ACJpE;AAMO,IAAM,yBAAyB,GAA/B,MAAM,yBAA0B,SAAQ,2BAA2B,CAAA;AAAnE,IAAA,WAAA,GAAA;;AACL,QAAA,IAAA,CAAA,uBAAuB,GAAG,IAAI,CAAC,cAAc,CAAC,uBAAuB,CAAC;IAIxE;IAHE,QAAQ,GAAA;AACN,QAAA,OAAO,qBAAqB;IAC9B;;AAJW,yBAAyB,GAAA,UAAA,CAAA;AAJrC,IAAA,cAAc,CAA4B;AACzC,QAAA,SAAS,EAAE,2BAA2B;;KAEvC;AACY,CAAA,EAAA,yBAAyB,CAKrC;;ACfD;AASA;MAEa,8BAA8B,GAAG,aAAa,CAAC,OAAO;AACjE,IAAA,WAAW,EAAE,gCAAgC;AAC7C,IAAA,QAAQ,EAAE,IAAI;IACd,QAAQ,EAAE,EAAE,eAAe,EAAE;IAC7B,QAAQ,EAAE,EAAE,qBAAqB,EAAE;IACnC,WAAW,EAAE,EAAE,yBAAyB,EAAE;IAC1C,YAAY,EAAE,EAAE,yBAAyB,EAAE;IAC3C,SAAS,EAAE,EAAE,uBAAuB,EAAE;IACtC,WAAW,EAAE,EAAE,yBAAyB,EAAE;IAC1C,WAAW,EAAE,EAAE,yBAAyB,EAAE;AAC3C,CAAA,CAAC;;ACNF;AAMO,IAAM,oBAAoB,GAA1B,MAAM,oBAAqB,SAAQ,cAAoC,CAAA;;AAAjE,oBAAoB,GAAA,UAAA,CAAA;AAJhC,IAAA,UAAU,CAAC;AACV,QAAA,SAAS,EAAE,sBAAsB;AACjC,QAAA,WAAW,EAAE,IAAI;KAClB;AACY,CAAA,EAAA,oBAAoB,CA6ChC;;ACnDD;AAMO,IAAM,4BAA4B,GAAlC,MAAM,4BAA6B,SAAQ,cAA4C,CAAA;;AAAjF,4BAA4B,GAAA,UAAA,CAAA;AAJxC,IAAA,UAAU,CAAC;AACV,QAAA,SAAS,EAAE,8BAA8B;AACzC,QAAA,WAAW,EAAE,IAAI;KAClB;AACY,CAAA,EAAA,4BAA4B,CA6CxC;;ACvDD;AAKO,IAAM,gCAAgC,GAAtC,MAAM,gCAAiC,SAAQ,kBAAgD,CAAA;AAA/F,IAAA,WAAA,GAAA;;AACL,QAAA,IAAA,CAAA,oBAAoB,GAA8C,MAChE,4BAA4B;IAkFhC;AAhFE,IAAA,MAAM,qBAAqB,CACzB,OAA6B,EAC7B,OAAsB,EAAA;;;;;;;;;;;;;;;;;;AAmBtB,QAAA,QAAQ,KAAK,CAAC;IAChB;AAEA,IAAA,MAAM,cAAc,CAClB,SAAiB,EACjB,OAAsB,EAAA;;;;;;;;AAStB,QAAA,QAAQ,KAAK,CAAC;IAChB;AAEA,IAAA,MAAM,eAAe,CACnB,SAAiB,EACjB,cAAsB,EACtB,OAAsB,EAAA;;;;;;;;;;;;AAatB,QAAA,QAAQ,KAAK,CAAC;IAChB;AAEA,IAAA,MAAM,aAAa,CACjB,OAA6B,EAC7B,QAAgC,EAChC,OAAsB,EAAA;;;;;;;;;;;;;;;;;AAkBtB,QAAA,QAAQ,KAAK,CAAC;IAChB;;AAnFW,gCAAgC,GAAA,UAAA,CAAA;AAH5C,IAAA,cAAc,CAAC;AACd,QAAA,SAAS,EAAE,kCAAkC;KAC9C;AACY,CAAA,EAAA,gCAAgC,CAoF5C;;ACzFD;AAMO,IAAM,uBAAuB,GAA7B,MAAM,uBAAwB,SAAQ,sBAA+C,CAAA;;AAA/E,uBAAuB,GAAA,UAAA,CAAA;AAJnC,IAAA,UAAU,CAAC;AACV,QAAA,SAAS,EAAE,yBAAyB;AACpC,QAAA,WAAW,EAAE,IAAI;KAClB;AACY,CAAA,EAAA,uBAAuB,CAUnC;;ACrBD;AAKO,IAAM,2BAA2B,GAAjC,MAAM,2BAA4B,SAAQ,kBAA2C,CAAA;AAArF,IAAA,WAAA,GAAA;;AACL,QAAA,IAAA,CAAA,oBAAoB,GAAyC,MAC3D,uBAAuB;IAgC3B;AA9BE,IAAA,MAAM,UAAU,CACd,SAAiB,EACjB,OAAsB,EAAA;;;;;;AAOtB,QAAA,QAAQ,KAAK,CAAC;IAChB;AAEA,IAAA,MAAM,WAAW,CACf,SAAiB,EACjB,MAAgB,EAChB,OAAsB,EAAA;;;;;;;;;;;;AAatB,QAAA,QAAQ,KAAK,CAAC;IAChB;;AAjCW,2BAA2B,GAAA,UAAA,CAAA;AAHvC,IAAA,cAAc,CAAC;AACd,QAAA,SAAS,EAAE,6BAA6B;KACzC;AACY,CAAA,EAAA,2BAA2B,CAkCvC;;AClCD;AAMO,IAAM,gBAAgB,GAAtB,MAAM,gBAAiB,SAAQ,sBAAwC,CAAA;;AAAjE,gBAAgB,GAAA,UAAA,CAAA;AAJ5B,IAAA,UAAU,CAAC;AACV,QAAA,SAAS,EAAE,kBAAkB;AAC7B,QAAA,WAAW,EAAE,IAAI;KAClB;AACY,CAAA,EAAA,gBAAgB,CAe5B;;ACjBD;AAEA,MAAMA,GAAC,GAAG,WAAW,CAAC,GAAG,CAAC,iDAAiD,EAAE,EAAC,iDAAiD,EAAC,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,uEAAmD,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,uEAAmD,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,uEAAmD,CAAC,EAAE,OAAO,EAAC,EAAC,iDAAiD,EAAC,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,uEAAmD,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,uEAAmD,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,uEAAmD,CAAC,EAAE,OAAO,EAAC,EAAQ,CAAC;AAKvvB,IAAM,oBAAoB,GAA1B,MAAM,oBAAqB,SAAQ,kBAAoC,CAAA;AAAvE,IAAA,WAAA,GAAA;;AACL,QAAA,IAAA,CAAA,oBAAoB,GAAkC,MAAM,gBAAgB;IAmF9E;AAjFE,IAAA,MAAM,OAAO,CACX,EAAiB,EACjB,KAA4B,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA8B5B,QAAA,QAAQ,KAAK,CAAC;IAChB;IAEA,MAAM,SAAS,CAAC,EAAU,EAAA;;;;;;;;;;;;;;;;;AAiBxB,QAAA,QAAQ,KAAK,CAAC;IAChB;AAEA,IAAA,MAAM,WAAW,CAAC,GAAa,EAAE,OAAsB,EAAA;;;;;;;;;;AAUrD,QAAA,QAAQ,KAAK,CAAC;IAChB;AAEA;;AAEG;AACH,IAAA,MAAM,sBAAsB,GAAA;;;;;;;;AAQ1B,QAAA,QAAQ,KAAK,CAAC;IAChB;;AAnFW,oBAAoB,GAAA,UAAA,CAAA;AAHhC,IAAA,cAAc,CAAC;AACd,QAAA,SAAS,EAAE,sBAAsB;KAClC;AACY,CAAA,EAAA,oBAAoB,CAoFhC;;SCrGe,YAAY,CAAC,OAAe,EAAE,MAAM,GAAG,GAAG,EAAA;IACxD,IAAI,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC;AAC/B,IAAA,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC;AAC1B;SAEgB,gBAAgB,CAAC,KAAa,EAAE,IAAI,GAAG,WAAW,EAAA;AAChE,IAAA,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC,EAAE;AAC9C,QAAA,YAAY,CAAC,CAAA,EAAG,IAAI,CAAA,4BAAA,CAA8B,CAAC;IACrD;AACF;SAEgB,qBAAqB,CACnC,KAAa,EACb,IAAI,GAAG,iBAAiB,EAAA;AAExB,IAAA,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,CAAC,EAAE;AAC7C,QAAA,YAAY,CAAC,CAAA,EAAG,IAAI,CAAA,gCAAA,CAAkC,CAAC;IACzD;AACF;SAEgB,oBAAoB,CAClC,KAIC,EACD,QAAQ,GAAG,KAAK,EAAA;AAEhB,IAAA,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;QAC/D,YAAY,CAAC,4BAA4B,CAAC;IAC5C;AACA,IAAA,IACE,KAAK,CAAC,IAAI,KAAK,SAAS;AACxB,QAAA,CAAC,MAAM,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,EACvD;QACA,YAAY,CAAC,mDAAmD,CAAC;IACnE;IACA,KAAK,MAAM,KAAK,IAAI,CAAC,OAAO,EAAE,MAAM,CAAU,EAAE;QAC9C,IAAI,QAAQ,IAAI,KAAK,CAAC,KAAK,CAAC,KAAK,SAAS,EAAE;AAC1C,YAAA,IAAI,OAAO,KAAK,CAAC,KAAK,CAAC,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,EAAE;AAC5D,gBAAA,YAAY,CAAC,CAAA,EAAG,KAAK,CAAA,4BAAA,CAA8B,CAAC;YACtD;QACF;IACF;IACA,KAAK,MAAM,KAAK,IAAI;QAClB,MAAM;QACN,SAAS;QACT,UAAU;QACV,UAAU;QACV,eAAe;QACf,cAAc;AACN,KAAA,EAAE;AACV,QAAA,IACE,KAAK,CAAC,KAAK,CAAC,KAAK,SAAS;AAC1B,YAAA,KAAK,CAAC,KAAK,CAAC,KAAK,IAAI;AACrB,YAAA,OAAO,KAAK,CAAC,KAAK,CAAC,KAAK,QAAQ,EAChC;AACA,YAAA,YAAY,CAAC,CAAA,EAAG,KAAK,CAAA,0BAAA,CAA4B,CAAC;QACpD;IACF;IACA,KAAK,MAAM,KAAK,IAAI,CAAC,YAAY,EAAE,cAAc,CAAU,EAAE;AAC3D,QAAA,IAAI,KAAK,CAAC,KAAK,CAAC,KAAK,SAAS,IAAI,KAAK,CAAC,KAAK,CAAC,KAAK,IAAI,EAAE;YACvD,gBAAgB,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC;QACvC;IACF;AACA,IAAA,IACE,KAAK,CAAC,8BAA8B,KAAK,SAAS;AAClD,QAAA,OAAO,KAAK,CAAC,8BAA8B,KAAK,SAAS,EACzD;QACA,YAAY,CAAC,mDAAmD,CAAC;IACnE;AACA,IAAA,IACE,KAAK,CAAC,6BAA6B,KAAK,SAAS;AACjD,QAAA,OAAO,KAAK,CAAC,6BAA6B,KAAK,SAAS,EACxD;QACA,YAAY,CAAC,kDAAkD,CAAC;IAClE;AACA,IAAA,IACE,KAAK,CAAC,MAAM,KAAK,SAAS;AAC1B,QAAA,CAAC,CAAC,OAAO,EAAE,WAAW,EAAE,UAAU,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,EAC1D;QACA,YAAY,CAAC,+CAA+C,CAAC;IAC/D;AACA,IAAA,IAAI,KAAK,CAAC,WAAW,KAAK,SAAS,IAAI,KAAK,CAAC,WAAW,KAAK,IAAI,EAAE;AACjE,QAAA,IACE,EACE,KAAK,CAAC,WAAW,YAAY,IAAI;AACjC,YAAA,OAAO,KAAK,CAAC,WAAW,KAAK,QAAQ,CACtC;AACD,YAAA,MAAM,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,OAAO,EAAE,CAAC,EACnD;YACA,YAAY,CAAC,2CAA2C,CAAC;QAC3D;IACF;IACA,KAAK,MAAM,KAAK,IAAI,CAAC,QAAQ,EAAE,gBAAgB,EAAE,eAAe,CAAU,EAAE;AAC1E,QAAA,MAAM,GAAG,GAAG,KAAK,CAAC,KAAK,CAAC;AACxB,QAAA,IAAI,GAAG,KAAK,SAAS,EAAE;YACrB,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;AACvB,gBAAA,YAAY,CAAC,CAAA,EAAG,KAAK,CAAA,kBAAA,CAAoB,CAAC;YAC5C;AACA,YAAA,KAAK,MAAM,EAAE,IAAI,GAAG,EAAE;AACpB,gBAAA,gBAAgB,CACd,EAAE,EACF,KAAK,KAAK;AACR,sBAAE;sBACA,KAAK,KAAK;AACV,0BAAE;0BACA,cAAc,CACrB;YACH;QACF;IACF;AACF;;AC/EA;AAKO,IAAM,wBAAwB,GAA9B,MAAM,wBAAyB,SAAQ,kBAAwC,CAAA;AAA/E,IAAA,WAAA,GAAA;;AACL,QAAA,IAAA,CAAA,oBAAoB,GAAsC,MACxD,oBAAoB;AAEL,QAAA,IAAA,CAAA,gCAAgC,GAAG,IAAI,CAAC,gBAAgB,CACvE,gCAAgC,CACjC;AAEgB,QAAA,IAAA,CAAA,2BAA2B,GAAG,IAAI,CAAC,gBAAgB,CAClE,2BAA2B,CAC5B;AAEgB,QAAA,IAAA,CAAA,yBAAyB,GAAG,IAAI,CAAC,gBAAgB,CAChE,yBAAyB,CAC1B;AAEgB,QAAA,IAAA,CAAA,IAAI,GAAG,IAAI,CAAC,gBAAgB,CAAC,oBAAoB,CAAC;IA+1DrE;IA71DE,MAAM,UAAU,CAAC,EAAU,EAAA;;;;;;;AAOzB,QAAA,QAAQ,KAAK,CAAC;IAChB;IAEA,MAAM,0BAA0B,CAC9B,EAAU,EAAA;;;;;;;AAQV,QAAA,QAAQ,KAAK,CAAC;IAChB;IAEA,MAAM,aAAa,CACjB,KAA2B,EAAA;;;;;;AAO3B,QAAA,QAAQ,KAAK,CAAC;IAChB;AAEA,IAAA,MAAM,kBAAkB,CACtB,QAAgB,EAChB,KAAqC,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA4FrC,QAAA,QAAQ,KAAK,CAAC;IAChB;AAEQ,IAAA,yBAAyB,CAC/B,KAAqC,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAqJrC,QAAA,QAAQ,KAAK,CAAC;IAChB;IAEQ,wBAAwB,CAC9B,KAA2B,EAC3B,KAAqC,EAAA;;;;;;;;;;AAWrC,QAAA,QAAQ,KAAK,CAAC;IAChB;IAEQ,qBAAqB,CAC3B,MAAc,EACd,QAAgC,EAAA;;;;;;;;;;;;;;;;;;;;;;AAuBhC,QAAA,QAAQ,KAAK,CAAC;IAChB;AAEQ,IAAA,MAAM,4BAA4B,CACxC,GAAW,EACX,OAAsB,EAAA;;;;;;;;;;;;;AActB,QAAA,QAAQ,KAAK,CAAC;IAChB;AAEQ,IAAA,MAAM,8BAA8B,CAC1C,IAA0B,EAC1B,OAAsB,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA6BtB,QAAA,QAAQ,KAAK,CAAC;IAChB;IAEA,MAAM,gBAAgB,CACpB,EAAU,EACV,eAAwB,EACxB,iBAAmD,EACnD,mBAAmD,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAgInD,QAAA,QAAQ,KAAK,CAAC;IAChB;AAEQ,IAAA,MAAM,oBAAoB,CAChC,KAAa,EACb,IAAY,EACZ,OAAsB,EAAA;QAEtB,MAAM,WAAW,GAAG,KAAK,CAAC,KAAK,CAAC,gBAAgB,CAAC;QACjD,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC;QAC7C,MAAM,SAAS,GAAG,KAAK,CAAC,OAAO,CAAC,mBAAmB,EAAE,EAAE,CAAC;QACxD,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,iBAAiB,EAAE,EAAE,CAAC;QACpD,IAAI,MAAM,GACR,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,WAAW,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,MAAM,CAAC,UAAU,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;AACrE,YAAA,CAAC;QACH,MAAM,UAAU,GAAG,OAAO,CAAC,aAAa,CAAuB,IAAI,CAAC,MAAM,CAAC;AAC3E,QAAA,OAAO,MAAM,CAAC,aAAa,CAAC,MAAM,CAAC,EAAE;AACnC,YAAA,MAAM,SAAS,GAAG,CAAA,EAAG,SAAS,CAAA,KAAA,EAAQ,MAAM,EAAE;AAC9C,YAAA,MAAM,QAAQ,GAAG,CAAA,EAAG,QAAQ,CAAA,KAAA,EAAQ,MAAM,EAAE;AAC5C,YAAA,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC;AACxC,gBAAA,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;AAClD,aAAA,CAAC;YACF,IAAI,CAAC,QAAQ,EAAE;gBACb,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ,EAAE;YAC7C;YACA,MAAM,IAAI,CAAC;QACb;AACA,QAAA,YAAY,CAAC,8CAA8C,EAAE,GAAG,CAAC;IACnE;AAEQ,IAAA,MAAM,wBAAwB,CACpC,KAA2B,EAC3B,OAAsB,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAiDtB,QAAA,QAAQ,KAAK,CAAC;IAChB;AAEA,IAAA,MAAM,aAAa,CACjB,EAAU,EACV,KAA2B,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAsD3B,QAAA,QAAQ,KAAK,CAAC;IAChB;AAEA,IAAA,MAAM,cAAc,CAClB,EAAU,EACV,eAAuB,EAAA;;;AAIvB,QAAA,QAAQ,KAAK,CAAC;IAChB;AAEA,IAAA,MAAM,wBAAwB,CAC5B,EAAU,EACV,eAAuB,EACvB,mBAAmD,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA0HnD,QAAA,QAAQ,KAAK,CAAC;IAChB;AAEA,IAAA,MAAM,cAAc,CAClB,EAAU,EACV,KAA4B,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA4D5B,QAAA,QAAQ,KAAK,CAAC;IAChB;IAEA,MAAM,aAAa,CAAC,EAAU,EAAA;;;;;;;AAO5B,QAAA,QAAQ,KAAK,CAAC;IAChB;AAEA,IAAA,MAAM,WAAW,GAAA;;;;;;;;;;;;AAYf,QAAA,QAAQ,KAAK,CAAC;IAChB;IAEA,MAAM,gBAAgB,CAAC,EAAU,EAAA;;;;;;AAM/B,QAAA,QAAQ,KAAK,CAAC;IAChB;IAEA,MAAM,uBAAuB,CAC3B,QAAgB,EAAA;;;;;;;;;;;;;;;;;;;;;;;;AAyBhB,QAAA,QAAQ,KAAK,CAAC;IAChB;IAEA,MAAM,aAAa,CAAC,EAAU,EAAA;;;;;;;;;;;;;;;AAe5B,QAAA,QAAQ,KAAK,CAAC;IAChB;IAEA,MAAM,eAAe,CAAC,EAAU,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAgD9B,QAAA,QAAQ,KAAK,CAAC;IAChB;IAEA,MAAM,eAAe,CAAC,EAAU,EAAA;;;;AAI9B,QAAA,QAAQ,KAAK,CAAC;IAChB;AAEA,IAAA,MAAM,0BAA0B,CAC9B,EAAU,EACV,eAAe,GAAG,KAAK,EAAA;;;;;;;;;;;;AAavB,QAAA,QAAQ,KAAK,CAAC;IAChB;AAEQ,IAAA,MAAM,8BAA8B,CAC1C,IAA0B,EAC1B,OAAsB,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAmCtB,QAAA,QAAQ,KAAK,CAAC;IAChB;IAEQ,MAAM,6BAA6B,CACzC,OAAsB,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAgCtB,QAAA,QAAQ,KAAK,CAAC;IAChB;IAEQ,MAAM,wBAAwB,CACpC,EAAU,EACV,aAAuB,EACvB,OAA6B,EAC7B,OAAsB,EAAA;;;;;;;;;;;;;;;;;;;AAoBtB,QAAA,QAAQ,KAAK,CAAC;IAChB;AAEA,IAAA,MAAM,oBAAoB,GAAA;;;;;AAKxB,QAAA,QAAQ,KAAK,CAAC;IAChB;IAEA,MAAM,gBAAgB,CAAC,IAAY,EAAA;;;AAGjC,QAAA,QAAQ,KAAK,CAAC;IAChB;IAEA,MAAM,iBAAiB,CAAC,IAAY,EAAA;;;;;;;;;;;;AAYlC,QAAA,QAAQ,KAAK,CAAC;IAChB;;IAGA,MAAM,wBAAwB,CAC5B,IAAY,EAAA;;;;;;;;;;;AAYZ,QAAA,QAAQ,KAAK,CAAC;IAChB;IAEA,MAAM,gBAAgB,CAAC,GAAW,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;AA0BhC,QAAA,QAAQ,KAAK,CAAC;IAChB;;IAGA,MAAM,eAAe,CAAC,GAAW,EAAA;;;;;;;;;;;;;AAa/B,QAAA,QAAQ,KAAK,CAAC;IAChB;AAEA,IAAA,MAAM,cAAc,CAClB,EAAU,EACV,aAAqB,EACrB,eAAuB,EAAA;;;AAIvB,QAAA,QAAQ,KAAK,CAAC;IAChB;AAEA,IAAA,MAAM,iBAAiB,CACrB,EAAU,EACV,aAAqB,EACrB,eAAuB,EAAA;;;AAIvB,QAAA,QAAQ,KAAK,CAAC;IAChB;IAEA,MAAM,eAAe,CACnB,EAAU,EACV,aAAqB,EACrB,IAA4B,EAC5B,eAAuB,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAmGvB,QAAA,QAAQ,KAAK,CAAC;IAChB;AAEA,IAAA,MAAM,iBAAiB,CACrB,EAAU,EACV,IAA4B,EAC5B,eAAuB,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA2DvB,QAAA,QAAQ,KAAK,CAAC;IAChB;IAEQ,MAAM,iBAAiB,CAC7B,EAAU,EACV,aAAqB,EACrB,eAAuB,EACvB,MAAe,EAAA;;;;;;;;;;;;;;;;;;AAmBf,QAAA,QAAQ,KAAK,CAAC;IAChB;AAEA,IAAA,MAAM,cAAc,CAClB,EAAU,EACV,OAAsB,EAAA;;;;;;;;;;;;;;;;;;;;AAqBtB,QAAA,QAAQ,KAAK,CAAC;IAChB;IAEQ,aAAa,CACnB,KAAoC,EACpC,OAA8B,EAAA;AAE9B,QAAA,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,IAAI,OAAO,EAAE,IAAI,IAAI,kBAAkB,CAAC,MAAM;QACrE,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,IAAI,OAAO,EAAE,KAAK;QAC3C,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,IAAI,OAAO,EAAE,IAAI;QACxC,IAAI,KAAK,KAAK,SAAS,IAAI,IAAI,KAAK,SAAS,EAAE;YAC7C,YAAY,CAAC,8BAA8B,CAAC;QAC9C;AACA,QAAA,MAAM,WAAW,GACf,KAAK,CAAC,WAAW,KAAK;AACpB,eAAG,OAAO,EAAE,WAAW,IAAI,IAAI;AAC/B,cAAE,KAAK,CAAC,WAAW;QACvB,OAAO;YACL,IAAI;YACJ,KAAK;YACL,IAAI;YACJ,IAAI,EAAE,KAAK,CAAC,IAAI,KAAK,SAAS,IAAI,OAAO,EAAE,IAAI,IAAI,IAAI,IAAI,KAAK,CAAC,IAAI;AACrE,YAAA,QAAQ,EACN,KAAK,CAAC,QAAQ,KAAK;AACjB,mBAAG,OAAO,EAAE,QAAQ,IAAI,IAAI;kBAC1B,KAAK,CAAC,QAAQ;AACpB,YAAA,QAAQ,EACN,KAAK,CAAC,QAAQ,KAAK;AACjB,mBAAG,OAAO,EAAE,QAAQ,IAAI,IAAI;kBAC1B,KAAK,CAAC,QAAQ;AACpB,YAAA,aAAa,EACX,KAAK,CAAC,aAAa,KAAK;AACtB,mBAAG,OAAO,EAAE,aAAa,IAAI,IAAI;kBAC/B,KAAK,CAAC,aAAa;AACzB,YAAA,YAAY,EACV,KAAK,CAAC,YAAY,KAAK;AACrB,mBAAG,OAAO,EAAE,YAAY,IAAI,IAAI;kBAC9B,KAAK,CAAC,YAAY;AACxB,YAAA,OAAO,EACL,KAAK,CAAC,OAAO,KAAK;AAChB,mBAAG,OAAO,EAAE,OAAO,IAAI,IAAI;kBACzB,KAAK,CAAC,OAAO;AACnB,YAAA,UAAU,EACR,KAAK,CAAC,UAAU,KAAK;AACnB,mBAAG,OAAO,EAAE,UAAU,IAAI,IAAI;kBAC5B,KAAK,CAAC,UAAU;AACtB,YAAA,YAAY,EACV,KAAK,CAAC,YAAY,KAAK;AACrB,mBAAG,OAAO,EAAE,YAAY,IAAI,IAAI;kBAC9B,KAAK,CAAC,YAAY;YACxB,MAAM,EAAE,KAAK,CAAC,MAAM,IAAI,OAAO,EAAE,MAAM,IAAI,OAAO;AAClD,YAAA,WAAW,EAAE,WAAW,KAAK,IAAI,GAAG,IAAI,GAAG,IAAI,IAAI,CAAC,WAAW,CAAC;YAChE,8BAA8B,EAC5B,KAAK,CAAC,8BAA8B;AACpC,gBAAA,OAAO,EAAE,8BAA8B;gBACvC,KAAK;YACP,6BAA6B,EAC3B,KAAK,CAAC,6BAA6B;AACnC,gBAAA,OAAO,EAAE,6BAA6B;gBACtC,KAAK;SACR;IACH;AAEQ,IAAA,MAAM,UAAU,CACtB,OAA6B,EAC7B,OAAsB,EAAA;;;;;;;;;;;;;;AAetB,QAAA,QAAQ,KAAK,CAAC;IAChB;AAEQ,IAAA,aAAa,CAAC,MAAc,EAAA;AAClC,QAAA,IAAI,MAAM,KAAK,OAAO,IAAI,MAAM,KAAK,WAAW,IAAI,MAAM,KAAK,UAAU,EAAE;AACzE,YAAA,YAAY,CAAC,CAAA,mCAAA,EAAsC,MAAM,GAAG,EAAE,GAAG,CAAC;QACpE;AACA,QAAA,OAAO,MAAM;IACf;IAEQ,MAAM,kBAAkB,CAC9B,MAA4B,EAC5B,MAAgB,EAChB,aAAuB,EACvB,OAAsB,EAAA;;;;;;;;;;AAWtB,QAAA,QAAQ,KAAK,CAAC;IAChB;AAEQ,IAAA,MAAM,kBAAkB,CAC9B,aAAuB,EACvB,OAAsB,EAAA;;;;;;;;;;;;;AActB,QAAA,QAAQ,KAAK,CAAC;IAChB;AAEQ,IAAA,MAAM,oBAAoB,CAChC,IAAY,EACZ,OAAsB,EACtB,SAAkB,EAAA;;;;;;;;AASlB,QAAA,QAAQ,KAAK,CAAC;IAChB;IAEQ,MAAM,mBAAmB,CAC/B,EAAU,EACV,cAAwB,EACxB,WAAqB,EACrB,OAAsB,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAwCtB,QAAA,QAAQ,KAAK,CAAC;IAChB;AAEQ,IAAA,MAAM,qBAAqB,CACjC,OAAe,EACf,QAAgB,EAChB,OAAsB,EAAA;;;;;;;;;;;;;;;;;;;;;;;;AAyBtB,QAAA,QAAQ,KAAK,CAAC;IAChB;IAEQ,MAAM,kBAAkB,CAC9B,EAAU,EACV,aAAuB,EACvB,WAAqB,EACrB,OAAsB,EAAA;;;;;;;;;;;;;;;;AAiBtB,QAAA,QAAQ,KAAK,CAAC;IAChB;AAEQ,IAAA,MAAM,sBAAsB,CAClC,SAAiB,EACjB,IAAmC,EACnC,OAAsB,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;AA4BtB,QAAA,QAAQ,KAAK,CAAC;IAChB;AAEQ,IAAA,MAAM,YAAY,CACxB,OAA6B,EAC7B,eAAuB,EACvB,QAAgC,EAChC,OAAsB,EACtB,eAA+C,EAC/C,mBAAmB,GAAG,IAAI,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA6F1B,QAAA,QAAQ,KAAK,CAAC;IAChB;IAEQ,MAAM,iCAAiC,CAC7C,QAAgB,EAChB,MAAsC,EACtC,OAAsB,EACtB,OAAoB,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAoCpB,QAAA,QAAQ,KAAK,CAAC;IAChB;AAEA;;AAEG;AACH,IAAA,MAAM,sBAAsB,GAAA;;;;;;;;AAQ1B,QAAA,QAAQ,KAAK,CAAC;IAChB;;AA92DW,wBAAwB,GAAA,UAAA,CAAA;AAHpC,IAAA,cAAc,CAAC;AACd,QAAA,SAAS,EAAE,0BAA0B;KACtC;AACY,CAAA,EAAA,wBAAwB,CA+2DpC;;ACj1DM,IAAM,wBAAwB,GAA9B,MAAM,wBAAyB,SAAQ,sBAA4C,CAAA;AAAnF,IAAA,WAAA,GAAA;;AACL,QAAA,IAAA,CAAA,oBAAoB,GAAsC,MACxD,oBAAoB;AAEL,QAAA,IAAA,CAAA,qBAAqB,GAAG,IAAI,CAAC,gBAAgB,CAC5D,qBAAqB,CACtB;AAEgB,QAAA,IAAA,CAAA,yBAAyB,GAAG,IAAI,CAAC,gBAAgB,CAChE,yBAAyB,CAC1B;AAEgB,QAAA,IAAA,CAAA,KAAK,GAAG,IAAI,CAAC,gBAAgB,CAAC,wBAAwB,CAAC;IAugB1E;AArgBU,IAAA,UAAU,CAAI,MAAqB,EAAA;AACzC,QAAA,OAAO,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC;IAC1D;AAEQ,IAAA,MAAM,oBAAoB,CAChC,GAA4E,EAC5E,GAA4E,EAC5E,CAAwE,EAAA;;;;;;;;;;;AAYxE,QAAA,QAAQ,KAAK,CAAC;IAChB;AAEQ,IAAA,MAAM,iBAAiB,CAC7B,GAA4E,EAC5E,CAAwE,EAAA;;;;;;;;;;;;;;AAexE,QAAA,QAAQ,KAAK,CAAC;IAChB;AAGA,IAAA,WAAW,CACW,SAAiB,EAAA;;;;;;;;;;;;;;;;;;;;;AAsBrC,QAAA,QAAQ,KAAK,CAAC;IAChB;AAGA,IAAA,aAAa,CACH,KAAyB,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAsFjC,QAAA,QAAQ,KAAK,CAAC;IAChB;AAGA,IAAA,aAAa,CAAc,SAAiB,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA4B1C,QAAA,QAAQ,KAAK,CAAC;IAChB;AAGA,IAAA,WAAW,CAAS,KAAgB,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA6ClC,QAAA,QAAQ,KAAK,CAAC;IAChB;AAGA,IAAA,UAAU,CAAoB,SAAiB,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAqC7C,QAAA,QAAQ,KAAK,CAAC;IAChB;IAGA,qBAAqB,CACE,UAAA,GAAa,CAAC,EAChB,QAAA,GAAW,EAAE,EACnB,EAAW,EACT,IAAa,EACX,MAAe,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAuChC,QAAA,QAAQ,KAAK,CAAC;IAChB;IAGA,eAAe,GAAA;;;;;;;;AAQb,QAAA,QAAQ,KAAK,CAAC;IAChB;AAGA,IAAA,cAAc,CAAS,KAAuB,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAqC5C,QAAA,QAAQ,KAAK,CAAC;IAChB;IAGA,iBAAiB,GAAA;;;;;;;;AAQf,QAAA,QAAQ,KAAK,CAAC;IAChB;AAGA,IAAA,gBAAgB,CACE,MAAc,EAAA;;;;;;;;;;;;;;;;;;;;;;;;AAyB9B,QAAA,QAAQ,KAAK,CAAC;IAChB;AAGA,IAAA,mBAAmB,CAAc,EAAU,EAAA;;;;;;;;;;;;;;;;AAgBzC,QAAA,QAAQ,KAAK,CAAC;IAChB;IAEQ,MAAM,qBAAqB,CACjC,IAA0B,EAC1B,GAA4E,EAC5E,GAA4E,EAC5E,CAAwE,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;AA0BxE,QAAA,QAAQ,KAAK,CAAC;IAChB;AAEQ,IAAA,MAAM,kBAAkB,CAC9B,QAAgC,EAChC,aAAqB,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAmCrB,QAAA,QAAQ,KAAK,CAAC;IAChB;;AAzdA,UAAA,CAAA;AADC,IAAA,GAAG,EAAE;AAEH,IAAA,OAAA,CAAA,CAAA,EAAA,KAAK,CAAC,WAAW,CAAC,CAAA;;;;AAuBpB,CAAA,EAAA,wBAAA,CAAA,SAAA,EAAA,aAAA,EAAA,IAAA,CAAA;AAGD,UAAA,CAAA;AADC,IAAA,IAAI,EAAE;IAEJ,OAAA,CAAA,CAAA,EAAA,IAAI,EAAE,CAAA;;;;AAuFR,CAAA,EAAA,wBAAA,CAAA,SAAA,EAAA,eAAA,EAAA,IAAA,CAAA;AAGD,UAAA,CAAA;AADC,IAAA,MAAM,EAAE;AACM,IAAA,OAAA,CAAA,CAAA,EAAA,KAAK,CAAC,IAAI,CAAC,CAAA;;;;AA6BzB,CAAA,EAAA,wBAAA,CAAA,SAAA,EAAA,eAAA,EAAA,IAAA,CAAA;AAGD,UAAA,CAAA;AADC,IAAA,IAAI,EAAE;IACM,OAAA,CAAA,CAAA,EAAA,IAAI,EAAE,CAAA;;;;AA8ClB,CAAA,EAAA,wBAAA,CAAA,SAAA,EAAA,aAAA,EAAA,IAAA,CAAA;AAGD,UAAA,CAAA;AADC,IAAA,IAAI,EAAE;AACK,IAAA,OAAA,CAAA,CAAA,EAAA,IAAI,CAAC,WAAW,CAAC,CAAA;;;;AAsC5B,CAAA,EAAA,wBAAA,CAAA,SAAA,EAAA,YAAA,EAAA,IAAA,CAAA;AAGD,UAAA,CAAA;AADC,IAAA,GAAG,EAAE;AAEH,IAAA,OAAA,CAAA,CAAA,EAAA,KAAK,CAAC,YAAY,CAAC,CAAA;AACnB,IAAA,OAAA,CAAA,CAAA,EAAA,KAAK,CAAC,UAAU,CAAC,CAAA;AACjB,IAAA,OAAA,CAAA,CAAA,EAAA,KAAK,CAAC,IAAI,CAAC,CAAA;AACX,IAAA,OAAA,CAAA,CAAA,EAAA,KAAK,CAAC,MAAM,CAAC,CAAA;AACb,IAAA,OAAA,CAAA,CAAA,EAAA,KAAK,CAAC,QAAQ,CAAC,CAAA;;;;AAwCjB,CAAA,EAAA,wBAAA,CAAA,SAAA,EAAA,uBAAA,EAAA,IAAA,CAAA;AAGD,UAAA,CAAA;AADC,IAAA,GAAG,EAAE;;;;AAUL,CAAA,EAAA,wBAAA,CAAA,SAAA,EAAA,iBAAA,EAAA,IAAA,CAAA;AAGD,UAAA,CAAA;AADC,IAAA,IAAI,EAAE;IACS,OAAA,CAAA,CAAA,EAAA,IAAI,EAAE,CAAA;;;;AAsCrB,CAAA,EAAA,wBAAA,CAAA,SAAA,EAAA,gBAAA,EAAA,IAAA,CAAA;AAGD,UAAA,CAAA;AADC,IAAA,GAAG,EAAE;;;;AAUL,CAAA,EAAA,wBAAA,CAAA,SAAA,EAAA,mBAAA,EAAA,IAAA,CAAA;AAGD,UAAA,CAAA;AADC,IAAA,IAAI,EAAE;AAEJ,IAAA,OAAA,CAAA,CAAA,EAAA,IAAI,CAAC,QAAQ,CAAC,CAAA;;;;AA0BhB,CAAA,EAAA,wBAAA,CAAA,SAAA,EAAA,kBAAA,EAAA,IAAA,CAAA;AAGD,UAAA,CAAA;AADC,IAAA,MAAM,EAAE;AACY,IAAA,OAAA,CAAA,CAAA,EAAA,KAAK,CAAC,IAAI,CAAC,CAAA;;;;AAiB/B,CAAA,EAAA,wBAAA,CAAA,SAAA,EAAA,qBAAA,EAAA,IAAA,CAAA;AAzcU,wBAAwB,GAAA,UAAA,CAAA;AAhBpC,IAAA,cAAc,CAA2B;AACxC,QAAA,SAAS,EAAE,0BAA0B;AACrC,QAAA,cAAc,EAAE;YACd,aAAa;YACb,eAAe;YACf,eAAe;YACf,aAAa;YACb,YAAY;YACZ,uBAAuB;YACvB,iBAAiB;YACjB,gBAAgB;YAChB,mBAAmB;YACnB,kBAAkB;YAClB,qBAAqB;AACtB,SAAA;KACF;AACY,CAAA,EAAA,wBAAwB,CAmhBpC;;ACvlBD;AAKO,IAAM,wBAAwB,GAA9B,MAAM,wBAAyB,SAAQ,kBAAwC,CAAA;AAA/E,IAAA,WAAA,GAAA;;AACL,QAAA,IAAA,CAAA,oBAAoB,GAAsC,MAAM,oBAAoB;IAetF;AAbE;;AAEG;AACH,IAAA,MAAM,sBAAsB,GAAA;;;;;;;;AAQ1B,QAAA,QAAQ,KAAK,CAAC;IAChB;;AAfW,wBAAwB,GAAA,UAAA,CAAA;AAHpC,IAAA,cAAc,CAAC;AACd,QAAA,SAAS,EAAE,0BAA0B;KACtC;AACY,CAAA,EAAA,wBAAwB,CAgBpC;;ACtBD;AAQO,IAAM,sBAAsB,GAA5B,MAAM,sBAAuB,SAAQ,gBAAgB,CAAA;8GAA/C,sBAAsB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;kHAAtB,sBAAsB,EAAA,CAAA,CAAA;;AAAtB,sBAAsB,GAAA,UAAA,CAAA;AANlC,IAAA,YAAY,CAAC;AACZ,QAAA,SAAS,EAAE,wBAAwB;KACpC;;AAIY,CAAA,EAAA,sBAAsB,CAIlC;2FAJY,sBAAsB,EAAA,UAAA,EAAA,CAAA;kBAFlC;;;ACPD;AAKO,IAAM,wBAAwB,GAA9B,MAAM,wBAAyB,SAAQ,kBAAkB,CAAA;;AAAnD,wBAAwB,GAAA,UAAA,CAAA;AAHpC,IAAA,cAAc,CAAC;AACd,QAAA,SAAS,EAAE,0BAA0B;KACtC;AACY,CAAA,EAAA,wBAAwB,CAA8B;;ACJnE;AAMO,IAAM,wBAAwB,GAA9B,MAAM,wBAAyB,SAAQ,2BAA2B,CAAA;AAAlE,IAAA,WAAA,GAAA;;AACL,QAAA,IAAA,CAAA,sBAAsB,GAAG,IAAI,CAAC,cAAc,CAAC,sBAAsB,CAAC;IAItE;IAHE,QAAQ,GAAA;AACN,QAAA,OAAO,oBAAoB;IAC7B;;AAJW,wBAAwB,GAAA,UAAA,CAAA;AAJpC,IAAA,cAAc,CAA2B;AACxC,QAAA,SAAS,EAAE,0BAA0B;;KAEtC;AACY,CAAA,EAAA,wBAAwB,CAKpC;;ACCM,IAAM,wBAAwB,GAA9B,MAAM,wBAAyB,SAAQ,cAAwC,CAAA;;AAAzE,wBAAwB,GAAA,UAAA,CAAA;AAPpC,IAAA,UAAU,CAAC;AACV,QAAA,SAAS,EAAE,0BAA0B;AACrC,QAAA,WAAW,EAAE,IAAI;KAClB;;;AAIY,CAAA,EAAA,wBAAwB,CAyBpC;;ACzBM,IAAM,8BAA8B,GAApC,MAAM,8BAA+B,SAAQ,cAA8C,CAAA;;AAArF,8BAA8B,GAAA,UAAA,CAAA;AAP1C,IAAA,UAAU,CAAC;AACV,QAAA,SAAS,EAAE,gCAAgC;AAC3C,QAAA,WAAW,EAAE,IAAI;KAClB;;;AAIY,CAAA,EAAA,8BAA8B,CAoB1C;;ACpBM,IAAM,+BAA+B,GAArC,MAAM,+BAAgC,SAAQ,cAA+C,CAAA;;AAAvF,+BAA+B,GAAA,UAAA,CAAA;AAP3C,IAAA,UAAU,CAAC;AACV,QAAA,SAAS,EAAE,iCAAiC;AAC5C,QAAA,WAAW,EAAE,IAAI;KAClB;;;AAIY,CAAA,EAAA,+BAA+B,CAe3C;;ACfM,IAAM,iCAAiC,GAAvC,MAAM,iCAAkC,SAAQ,cAAiD,CAAA;;AAA3F,iCAAiC,GAAA,UAAA,CAAA;AAP7C,IAAA,UAAU,CAAC;AACV,QAAA,SAAS,EAAE,mCAAmC;AAC9C,QAAA,WAAW,EAAE,IAAI;KAClB;;;AAIY,CAAA,EAAA,iCAAiC,CAoB7C;;ACpCD;AAaA;MAEa,6BAA6B,GAAG,aAAa,CAAC,OAAO;AAChE,IAAA,WAAW,EAAE,+BAA+B;AAC5C,IAAA,QAAQ,EAAE,IAAI;IACd,QAAQ,EAAE,EAAE,eAAe,EAAE;AAC7B,IAAA,QAAQ,EAAE;QACR,oBAAoB;QACpB,wBAAwB;QACxB,8BAA8B;QAC9B,+BAA+B;QAC/B,iCAAiC;AAClC,KAAA;IACD,WAAW,EAAE,EAAE,wBAAwB,EAAE;IACzC,YAAY,EAAE,EAAE,wBAAwB,EAAE;IAC1C,SAAS,EAAE,EAAE,sBAAsB,EAAE;IACrC,WAAW,EAAE,EAAE,wBAAwB,EAAE;IACzC,WAAW,EAAE,EAAE,wBAAwB,EAAE;AAC1C,CAAA,CAAC;;AClBF;AAMO,IAAM,gCAAgC,GAAtC,MAAM,gCAAiC,SAAQ,sBAAoD,CAAA;AAAnG,IAAA,WAAA,GAAA;;AACL,QAAA,IAAA,CAAA,oBAAoB,GAA8C,MAChE,4BAA4B;AAE9B,QAAA,IAAA,CAAA,gCAAgC,GAAG,IAAI,CAAC,gBAAgB,CACtD,gCAAgC,CACjC;IACH;;AAPa,gCAAgC,GAAA,UAAA,CAAA;AAJ5C,IAAA,cAAc,CAAmC;AAChD,QAAA,SAAS,EAAE,kCAAkC;AAC7C,QAAA,cAAc,EAAE,EAAE;KACnB;AACY,CAAA,EAAA,gCAAgC,CAO5C;;ACtBD;AAQO,IAAM,8BAA8B,GAApC,MAAM,8BAA+B,SAAQ,gBAAgB,CAAA;8GAAvD,8BAA8B,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;kHAA9B,8BAA8B,EAAA,CAAA,CAAA;;AAA9B,8BAA8B,GAAA,UAAA,CAAA;AAN1C,IAAA,YAAY,CAAC;AACZ,QAAA,SAAS,EAAE,gCAAgC;KAC5C;;AAIY,CAAA,EAAA,8BAA8B,CAI1C;2FAJY,8BAA8B,EAAA,UAAA,EAAA,CAAA;kBAF1C;;;ACPD;AAKO,IAAM,gCAAgC,GAAtC,MAAM,gCAAiC,SAAQ,kBAAkB,CAAA;;AAA3D,gCAAgC,GAAA,UAAA,CAAA;AAH5C,IAAA,cAAc,CAAC;AACd,QAAA,SAAS,EAAE,kCAAkC;KAC9C;AACY,CAAA,EAAA,gCAAgC,CAA8B;;ACJ3E;AAMO,IAAM,gCAAgC,GAAtC,MAAM,gCAAiC,SAAQ,2BAA2B,CAAA;AAA1E,IAAA,WAAA,GAAA;;AACL,QAAA,IAAA,CAAA,8BAA8B,GAAG,IAAI,CAAC,cAAc,CAAC,8BAA8B,CAAC;IAItF;IAHE,QAAQ,GAAA;AACN,QAAA,OAAO,4BAA4B;IACrC;;AAJW,gCAAgC,GAAA,UAAA,CAAA;AAJ5C,IAAA,cAAc,CAAmC;AAChD,QAAA,SAAS,EAAE,kCAAkC;;KAE9C;AACY,CAAA,EAAA,gCAAgC,CAK5C;;ACfD;AASA;MAEa,qCAAqC,GAAG,aAAa,CAAC,OAAO;AACxE,IAAA,WAAW,EAAE,uCAAuC;AACpD,IAAA,QAAQ,EAAE,IAAI;IACd,QAAQ,EAAE,EAAE,eAAe,EAAE;IAC7B,QAAQ,EAAE,EAAE,4BAA4B,EAAE;IAC1C,WAAW,EAAE,EAAE,gCAAgC,EAAE;IACjD,YAAY,EAAE,EAAE,gCAAgC,EAAE;IAClD,SAAS,EAAE,EAAE,8BAA8B,EAAE;IAC7C,WAAW,EAAE,EAAE,gCAAgC,EAAE;IACjD,WAAW,EAAE,EAAE,gCAAgC,EAAE;AAClD,CAAA,CAAC;;ACRF;AAMO,IAAM,2BAA2B,GAAjC,MAAM,2BAA4B,SAAQ,sBAA+C,CAAA;AAAzF,IAAA,WAAA,GAAA;;AACL,QAAA,IAAA,CAAA,oBAAoB,GAAyC,MAC3D,uBAAuB;AAEzB,QAAA,IAAA,CAAA,2BAA2B,GAAG,IAAI,CAAC,gBAAgB,CACjD,2BAA2B,CAC5B;IACH;;AAPa,2BAA2B,GAAA,UAAA,CAAA;AAJvC,IAAA,cAAc,CAA8B;AAC3C,QAAA,SAAS,EAAE,6BAA6B;AACxC,QAAA,cAAc,EAAE,EAAE;KACnB;AACY,CAAA,EAAA,2BAA2B,CAOvC;;ACtBD;AAQO,IAAM,yBAAyB,GAA/B,MAAM,yBAA0B,SAAQ,gBAAgB,CAAA;8GAAlD,yBAAyB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;kHAAzB,yBAAyB,EAAA,CAAA,CAAA;;AAAzB,yBAAyB,GAAA,UAAA,CAAA;AANrC,IAAA,YAAY,CAAC;AACZ,QAAA,SAAS,EAAE,2BAA2B;KACvC;;AAIY,CAAA,EAAA,yBAAyB,CAIrC;2FAJY,yBAAyB,EAAA,UAAA,EAAA,CAAA;kBAFrC;;;ACPD;AAKO,IAAM,2BAA2B,GAAjC,MAAM,2BAA4B,SAAQ,kBAAkB,CAAA;;AAAtD,2BAA2B,GAAA,UAAA,CAAA;AAHvC,IAAA,cAAc,CAAC;AACd,QAAA,SAAS,EAAE,6BAA6B;KACzC;AACY,CAAA,EAAA,2BAA2B,CAA8B;;ACJtE;AAMO,IAAM,2BAA2B,GAAjC,MAAM,2BAA4B,SAAQ,2BAA2B,CAAA;AAArE,IAAA,WAAA,GAAA;;AACL,QAAA,IAAA,CAAA,yBAAyB,GAAG,IAAI,CAAC,cAAc,CAAC,yBAAyB,CAAC;IAI5E;IAHE,QAAQ,GAAA;AACN,QAAA,OAAO,uBAAuB;IAChC;;AAJW,2BAA2B,GAAA,UAAA,CAAA;AAJvC,IAAA,cAAc,CAA8B;AAC3C,QAAA,SAAS,EAAE,6BAA6B;;KAEzC;AACY,CAAA,EAAA,2BAA2B,CAKvC;;ACfD;AASA;MAEa,gCAAgC,GAAG,aAAa,CAAC,OAAO;AACnE,IAAA,WAAW,EAAE,kCAAkC;AAC/C,IAAA,QAAQ,EAAE,IAAI;IACd,QAAQ,EAAE,EAAE,eAAe,EAAE;IAC7B,QAAQ,EAAE,EAAE,uBAAuB,EAAE;IACrC,WAAW,EAAE,EAAE,2BAA2B,EAAE;IAC5C,YAAY,EAAE,EAAE,2BAA2B,EAAE;IAC7C,SAAS,EAAE,EAAE,yBAAyB,EAAE;IACxC,WAAW,EAAE,EAAE,2BAA2B,EAAE;IAC5C,WAAW,EAAE,EAAE,2BAA2B,EAAE;AAC7C,CAAA,CAAC;;ACCF;AAMO,IAAM,oBAAoB,GAA1B,MAAM,oBAAqB,SAAQ,sBAAwC,CAAA;AAA3E,IAAA,WAAA,GAAA;;AACL,QAAA,IAAA,CAAA,oBAAoB,GAAkC,MAAM,gBAAgB;AAE5E,QAAA,IAAA,CAAA,oBAAoB,GAAG,IAAI,CAAC,gBAAgB,CAAC,oBAAoB,CAAC;AAEjD,QAAA,IAAA,CAAA,QAAQ,GAAG,IAAI,CAAC,gBAAgB,CAAC,qBAAqB,CAAC;AAEvD,QAAA,IAAA,CAAA,IAAI,GAAG,IAAI,CAAC,gBAAgB,CAAC,yBAAyB,CAAC;;IAoD1E;IAlDY,MAAM,iBAAiB,CAAC,EAChC,GAAG,EACH,GAAG,EACH,CAAC,GAC4D,EAAA;;;;;;;AAO7D,QAAA,QAAQ,KAAK,CAAC;IAChB;IAGA,OAAO,CACQ,EAAiB,EACtB,KAA4B,EAAA;;;AAIpC,QAAA,QAAQ,KAAK,CAAC;IAChB;AAGA,IAAA,SAAS,CAAc,EAAU,EAAA;;;AAG/B,QAAA,QAAQ,KAAK,CAAC;IAChB;;AAGA;;AAEG;AAEH,IAAA,SAAS,CAAoB,QAAgB,EAAA;;;;;;;;;;;AAW3C,QAAA,QAAQ,KAAK,CAAC;IAChB;;AAjCA,UAAA,CAAA;AADC,IAAA,IAAI,EAAE;AAEJ,IAAA,OAAA,CAAA,CAAA,EAAA,KAAK,CAAC,IAAI,CAAC,CAAA;IACX,OAAA,CAAA,CAAA,EAAA,IAAI,EAAE,CAAA;;;;AAKR,CAAA,EAAA,oBAAA,CAAA,SAAA,EAAA,SAAA,EAAA,IAAA,CAAA;AAGD,UAAA,CAAA;AADC,IAAA,MAAM,EAAE;AACE,IAAA,OAAA,CAAA,CAAA,EAAA,KAAK,CAAC,IAAI,CAAC,CAAA;;;;AAIrB,CAAA,EAAA,oBAAA,CAAA,SAAA,EAAA,WAAA,EAAA,IAAA,CAAA;AAOD,UAAA,CAAA;AADC,IAAA,GAAG,EAAE;AACK,IAAA,OAAA,CAAA,CAAA,EAAA,KAAK,CAAC,UAAU,CAAC,CAAA;;;;AAY3B,CAAA,EAAA,oBAAA,CAAA,SAAA,EAAA,WAAA,EAAA,IAAA,CAAA;AAzDU,oBAAoB,GAAA,UAAA,CAAA;AAJhC,IAAA,cAAc,CAAuB;AACpC,QAAA,SAAS,EAAE,sBAAsB;AACjC,QAAA,cAAc,EAAE,CAAC,QAAQ,EAAE,SAAS,EAAE,WAAW,CAAC;KACnD;AACY,CAAA,EAAA,oBAAoB,CA2DhC;;ACnFD;AAQO,IAAM,kBAAkB,GAAxB,MAAM,kBAAmB,SAAQ,gBAAgB,CAAA;8GAA3C,kBAAkB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;kHAAlB,kBAAkB,EAAA,CAAA,CAAA;;AAAlB,kBAAkB,GAAA,UAAA,CAAA;AAN9B,IAAA,YAAY,CAAC;AACZ,QAAA,SAAS,EAAE,oBAAoB;KAChC;;AAIY,CAAA,EAAA,kBAAkB,CAI9B;2FAJY,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAF9B;;;ACPD;AAKO,IAAM,oBAAoB,GAA1B,MAAM,oBAAqB,SAAQ,kBAAkB,CAAA;;AAA/C,oBAAoB,GAAA,UAAA,CAAA;AAHhC,IAAA,cAAc,CAAC;AACd,QAAA,SAAS,EAAE,sBAAsB;KAClC;AACY,CAAA,EAAA,oBAAoB,CAA8B;;ACJ/D;AAMO,IAAM,oBAAoB,GAA1B,MAAM,oBAAqB,SAAQ,2BAA2B,CAAA;AAA9D,IAAA,WAAA,GAAA;;AACL,QAAA,IAAA,CAAA,kBAAkB,GAAG,IAAI,CAAC,cAAc,CAAC,kBAAkB,CAAC;IAI9D;IAHE,QAAQ,GAAA;AACN,QAAA,OAAO,gBAAgB;IACzB;;AAJW,oBAAoB,GAAA,UAAA,CAAA;AAJhC,IAAA,cAAc,CAAuB;AACpC,QAAA,SAAS,EAAE,sBAAsB;;KAElC;AACY,CAAA,EAAA,oBAAoB,CAKhC;;ACfD;AASA;MAEa,yBAAyB,GAAG,aAAa,CAAC,OAAO;AAC5D,IAAA,WAAW,EAAE,2BAA2B;AACxC,IAAA,QAAQ,EAAE,IAAI;IACd,QAAQ,EAAE,EAAE,eAAe,EAAE;IAC7B,QAAQ,EAAE,EAAE,gBAAgB,EAAE;IAC9B,WAAW,EAAE,EAAE,oBAAoB,EAAE;IACrC,YAAY,EAAE,EAAE,oBAAoB,EAAE;IACtC,SAAS,EAAE,EAAE,kBAAkB,EAAE;IACjC,WAAW,EAAE,EAAE,oBAAoB,EAAE;IACrC,WAAW,EAAE,EAAE,oBAAoB,EAAE;AACtC,CAAA,CAAC;;ACGF;AAMO,IAAM,+BAA+B,GAArC,MAAM,+BAAgC,SAAQ,yBAGpD,CAAA;AAHM,IAAA,WAAA,GAAA;;AAIY,QAAA,IAAA,CAAA,qBAAqB,GAAG,IAAI,CAAC,gBAAgB,CAC5D,qBAAqB,CACtB;AAEgB,QAAA,IAAA,CAAA,yBAAyB,GAAG,IAAI,CAAC,gBAAgB,CAChE,yBAAyB,CAC1B;AAEgB,QAAA,IAAA,CAAA,wBAAwB,GAAG,IAAI,CAAC,gBAAgB,CAC/D,wBAAwB,CACzB;AAEgB,QAAA,IAAA,CAAA,mBAAmB,GAClC,IAAI,CAAC,cAAc,CAAC,mBAAmB,CAAC;IA6O5C;IA3OY,MAAM,iBAAiB,CAAC,EAChC,GAAG,EACH,GAAG,EACH,YAAY,EACZ,CAAC,GACuE,EAAA;;;;;;;;;;;;;;;;;;;;AAoBxE,QAAA,QAAQ,KAAK,CAAC;IAChB;IAEU,MAAM,iBAAiB,CAC/B,KAAyB,EACzB,WAAgB,EAChB,GAAoB,EACpB,GAAqB,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAqCrB,QAAA,QAAQ,KAAK,CAAC;IAChB;AAEA,IAAA,mBAAmB,KAAU;IAE7B,MAAM,sBAAsB,CAAC,GAAW,EAAA;;;AAGtC,QAAA,QAAQ,KAAK,CAAC;IAChB;IAEA,MAAM,mBAAmB,CAAC,GAAW,EAAA;;;;;;AAMnC,QAAA,QAAQ,KAAK,CAAC;IAChB;AAGA,IAAA,qBAAqB,CAAe,GAAW,EAAA;;;;;;;;;;;;;;;;;;;;;AAqB7C,QAAA,QAAQ,KAAK,CAAC;IAChB;IAEA,MAAM,6BAA6B,CAAC,SAAiB,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;AA2BnD,QAAA,QAAQ,KAAK,CAAC;IAChB;IAEA,MAAM,+BAA+B,CAAC,GAAW,EAAA;;;AAG/C,QAAA,QAAQ,KAAK,CAAC;IAChB;AAEA,IAAA,uBAAuB,CAAC,OAMvB,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;AA0BC,QAAA,QAAQ,KAAK,CAAC;IAChB;IAEA,MAAM,0BAA0B,CAAC,OAGhC,EAAA;;;;;;;;;;;;;;;;;AAiBC,QAAA,QAAQ,KAAK,CAAC;IAChB;IAEU,MAAM,0BAA0B,CAAC,OAG1C,EAAA;;;;;;;;;;;;;;;;AAgBC,QAAA,QAAQ,KAAK,CAAC;IAChB;IAEU,MAAM,kBAAkB,CAAC,GAAW,EAAA;;;AAG5C,QAAA,QAAQ,KAAK,CAAC;IAChB;;AAhJA,UAAA,CAAA;AADC,IAAA,MAAM,EAAE;AACc,IAAA,OAAA,CAAA,CAAA,EAAA,KAAK,CAAC,KAAK,CAAC,CAAA;;;;AAsBlC,CAAA,EAAA,+BAAA,CAAA,SAAA,EAAA,uBAAA,EAAA,IAAA,CAAA;AAnIU,+BAA+B,GAAA,UAAA,CAAA;AAJ3C,IAAA,cAAc,CAAkC;AAC/C,QAAA,SAAS,EAAE,iCAAiC;;KAE7C;AACY,CAAA,EAAA,+BAA+B,CA8P3C;;ACzOD;AA6CO,IAAM,wBAAwB,GAA9B,MAAM,wBAAyB,SAAQ,sBAA4C,CAAA;AAAnF,IAAA,WAAA,GAAA;;;AAEL,QAAA,IAAA,CAAA,oBAAoB,GAAsC,MACxD,oBAAoB;AAEL,QAAA,IAAA,CAAA,wBAAwB,GAAG,IAAI,CAAC,gBAAgB,CAC/D,wBAAwB,CACzB;AAEgB,QAAA,IAAA,CAAA,qBAAqB,GAAG,IAAI,CAAC,gBAAgB,CAC5D,qBAAqB,CACtB;AAEgB,QAAA,IAAA,CAAA,yBAAyB,GAAG,IAAI,CAAC,gBAAgB,CAChE,yBAAyB,CAC1B;AAEgB,QAAA,IAAA,CAAA,+BAA+B,GAAG,IAAI,CAAC,gBAAgB,CACtE,+BAA+B,CAChC;;IAgrBH;;;IA5qBY,MAAM,iBAAiB,CAAC,EAChC,GAAG,EACH,GAAG,EACH,YAAY,EACZ,CAAC,GACgE,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAoCjE,QAAA,QAAQ,KAAK,CAAC;IAChB;;;AAKA,IAAA,kBAAkB,CAAgB,IAAY,EAAA;;;;AAI5C,QAAA,QAAQ,KAAK,CAAC;IAChB;;AAIA,IAAA,wBAAwB,CAAgB,IAAY,EAAA;;;;AAIlD,QAAA,QAAQ,KAAK,CAAC;IAChB;;;AAKA,IAAA,kBAAkB,CAAgB,IAAY,EAAA;;;;AAI5C,QAAA,QAAQ,KAAK,CAAC;IAChB;;;AAKA,IAAA,wBAAwB,CAAgB,IAAY,EAAA;;;;AAIlD,QAAA,QAAQ,KAAK,CAAC;IAChB;;;AAKA,IAAA,uBAAuB,CAAgB,IAAY,EAAA;;;;AAIjD,QAAA,QAAQ,KAAK,CAAC;IAChB;;;AAKA,IAAA,6BAA6B,CACZ,IAAY,EAAA;;;;AAK3B,QAAA,QAAQ,KAAK,CAAC;IAChB;;;;AAMA,IAAA,sBAAsB,CAAgB,IAAY,EAAA;;;;AAIhD,QAAA,QAAQ,KAAK,CAAC;IAChB;AAGA,IAAA,4BAA4B,CACX,IAAY,EAAA;;;;AAK3B,QAAA,QAAQ,KAAK,CAAC;IAChB;IAGA,WAAW,GAAA;;;AAGT,QAAA,QAAQ,KAAK,CAAC;IAChB;AAGA,IAAA,UAAU,CAAc,EAAU,EAAA;;;AAGhC,QAAA,QAAQ,KAAK,CAAC;IAChB;IAEQ,MAAM,kBAAkB,CAC9B,IAAY,EACZ,IAAoD,EACpD,UAAmB,EACnB,GAAmB,EACnB,CAAwE,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA4CxE,QAAA,QAAQ,KAAK,CAAC;IAChB;;IAGQ,MAAM,iBAAiB,CAC7B,OAA6B,EAC7B,UAAmB,EACnB,GAAmB,EACnB,CAAwE,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA8BxE,QAAA,QAAQ,KAAK,CAAC;IAChB;;;;AAMA,IAAA,KAAK,CAAc,EAAmB,EAAA;;;;;;;;;;;AAWpC,QAAA,QAAQ,KAAK,CAAC;IAChB;AAGA,IAAA,SAAS,CAAgB,IAAY,EAAA;;;;;;;;;;AAUnC,QAAA,QAAQ,KAAK,CAAC;IAChB;;AAIA,IAAA,eAAe,CACE,IAAY,EAAA;;;;;;;;;;;;;;;;;;;;;AAsB3B,QAAA,QAAQ,KAAK,CAAC;IAChB;;AAIA,IAAA,4BAA4B,CACX,IAAY,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA4D3B,QAAA,QAAQ,KAAK,CAAC;IAChB;;;AAKA,IAAA,aAAa,CACH,KAA2B,EAAA;;;AAInC,QAAA,QAAQ,KAAK,CAAC;IAChB;;IAIA,kBAAkB,CACG,QAAgB,EAC3B,KAAqC,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA6C7C,QAAA,QAAQ,KAAK,CAAC;IAChB;;;IAKA,aAAa,CACE,EAAU,EACf,KAA2B,EAAA;;;AAInC,QAAA,QAAQ,KAAK,CAAC;IAChB;;AAIA,IAAA,gBAAgB,CACD,EAAU,EACG,eAAA,GAAkB,KAAK,EAAA;;;;;;;;;;;;;;;AAgBjD,QAAA,QAAQ,KAAK,CAAC;IAChB;IAGA,wBAAwB,CACT,EAAU,EACG,eAAuB,EAAA;;;;;;;;;;;;;AAcjD,QAAA,QAAQ,KAAK,CAAC;IAChB;;IAIA,aAAa,CACE,EAAU,EACG,eAAuB,EAAA;;;;AAKjD,QAAA,QAAQ,KAAK,CAAC;IAChB;;;IAKA,cAAc,CACC,EAAU,EACf,KAA4B,EAAA;;;AAIpC,QAAA,QAAQ,KAAK,CAAC;IAChB;;;AAKA,IAAA,gBAAgB,CACD,EAAU,EAAA;;;AAIvB,QAAA,QAAQ,KAAK,CAAC;IAChB;;AAIA,IAAA,aAAa,CACE,EAAU,EAAA;;;AAIvB,QAAA,QAAQ,KAAK,CAAC;IAChB;AAGA,IAAA,0BAA0B,CACX,EAAU,EAAA;;;;AAKvB,QAAA,QAAQ,KAAK,CAAC;IAChB;AAGA,IAAA,eAAe,CACA,EAAU,EAAA;;;AAIvB,QAAA,QAAQ,KAAK,CAAC;IAChB;;AAIA,IAAA,eAAe,CACA,EAAU,EAAA;;;AAIvB,QAAA,QAAQ,KAAK,CAAC;IAChB;;;AAKA,IAAA,0BAA0B,CACX,EAAU,EAAA;;;;AAKvB,QAAA,QAAQ,KAAK,CAAC;IAChB;;;IAKA,oBAAoB,GAAA;;;AAGlB,QAAA,QAAQ,KAAK,CAAC;IAChB;;;AAKA,IAAA,gBAAgB,CAAgB,IAAY,EAAA;;;;;;;;;;;AAW1C,QAAA,QAAQ,KAAK,CAAC;IAChB;;;AAKA,IAAA,sBAAsB,CAAgB,IAAY,EAAA;;;;;;;;;;;AAWhD,QAAA,QAAQ,KAAK,CAAC;IAChB;;;AAKA,IAAA,cAAc,CACC,EAAU,EACC,aAAqB,EACnB,eAAuB,EAAA;;;;;;;;AASjD,QAAA,QAAQ,KAAK,CAAC;IAChB;;;AAKA,IAAA,iBAAiB,CACF,EAAU,EACC,aAAqB,EACnB,eAAuB,EAAA;;;;;;;;AASjD,QAAA,QAAQ,KAAK,CAAC;IAChB;;AAIA,IAAA,eAAe,CACA,EAAU,EACC,aAAqB,EAC9B,IAA4B,EACjB,eAAuB,EAAA;;;;;;;;;AAUjD,QAAA,QAAQ,KAAK,CAAC;IAChB;AAGA,IAAA,iBAAiB,CACF,EAAU,EACR,IAA4B,EACjB,eAAuB,EAAA;;;;;;;;AASjD,QAAA,QAAQ,KAAK,CAAC;IAChB;;AAIA,IAAA,aAAa,CACE,EAAU,EAAA;;;AAIvB,QAAA,QAAQ,KAAK,CAAC;IAChB;;AA3nBA,UAAA,CAAA;AADC,IAAA,GAAG,EAAE;AACc,IAAA,OAAA,CAAA,CAAA,EAAA,KAAK,CAAC,MAAM,CAAC,CAAA;;;;AAKhC,CAAA,EAAA,wBAAA,CAAA,SAAA,EAAA,oBAAA,EAAA,IAAA,CAAA;AAID,UAAA,CAAA;AADC,IAAA,GAAG,EAAE;AACoB,IAAA,OAAA,CAAA,CAAA,EAAA,KAAK,CAAC,MAAM,CAAC,CAAA;;;;AAKtC,CAAA,EAAA,wBAAA,CAAA,SAAA,EAAA,0BAAA,EAAA,IAAA,CAAA;AAKD,UAAA,CAAA;AADC,IAAA,GAAG,EAAE;AACc,IAAA,OAAA,CAAA,CAAA,EAAA,KAAK,CAAC,MAAM,CAAC,CAAA;;;;AAKhC,CAAA,EAAA,wBAAA,CAAA,SAAA,EAAA,oBAAA,EAAA,IAAA,CAAA;AAKD,UAAA,CAAA;AADC,IAAA,GAAG,EAAE;AACoB,IAAA,OAAA,CAAA,CAAA,EAAA,KAAK,CAAC,MAAM,CAAC,CAAA;;;;AAKtC,CAAA,EAAA,wBAAA,CAAA,SAAA,EAAA,0BAAA,EAAA,IAAA,CAAA;AAKD,UAAA,CAAA;AADC,IAAA,GAAG,EAAE;AACmB,IAAA,OAAA,CAAA,CAAA,EAAA,KAAK,CAAC,MAAM,CAAC,CAAA;;;;AAKrC,CAAA,EAAA,wBAAA,CAAA,SAAA,EAAA,yBAAA,EAAA,IAAA,CAAA;AAKD,UAAA,CAAA;AADC,IAAA,GAAG,EAAE;AAEH,IAAA,OAAA,CAAA,CAAA,EAAA,KAAK,CAAC,MAAM,CAAC,CAAA;;;;AAMf,CAAA,EAAA,wBAAA,CAAA,SAAA,EAAA,+BAAA,EAAA,IAAA,CAAA;AAMD,UAAA,CAAA;AADC,IAAA,GAAG,EAAE;AACkB,IAAA,OAAA,CAAA,CAAA,EAAA,KAAK,CAAC,MAAM,CAAC,CAAA;;;;AAKpC,CAAA,EAAA,wBAAA,CAAA,SAAA,EAAA,wBAAA,EAAA,IAAA,CAAA;AAGD,UAAA,CAAA;AADC,IAAA,GAAG,EAAE;AAEH,IAAA,OAAA,CAAA,CAAA,EAAA,KAAK,CAAC,MAAM,CAAC,CAAA;;;;AAMf,CAAA,EAAA,wBAAA,CAAA,SAAA,EAAA,8BAAA,EAAA,IAAA,CAAA;AAGD,UAAA,CAAA;AADC,IAAA,GAAG,EAAE;;;;AAKL,CAAA,EAAA,wBAAA,CAAA,SAAA,EAAA,aAAA,EAAA,IAAA,CAAA;AAGD,UAAA,CAAA;AADC,IAAA,GAAG,EAAE;AACM,IAAA,OAAA,CAAA,CAAA,EAAA,KAAK,CAAC,IAAI,CAAC,CAAA;;;;AAItB,CAAA,EAAA,wBAAA,CAAA,SAAA,EAAA,YAAA,EAAA,IAAA,CAAA;AAgGD,UAAA,CAAA;AADC,IAAA,GAAG,EAAE;AACC,IAAA,OAAA,CAAA,CAAA,EAAA,KAAK,CAAC,IAAI,CAAC,CAAA;;;;AAYjB,CAAA,EAAA,wBAAA,CAAA,SAAA,EAAA,OAAA,EAAA,IAAA,CAAA;AAGD,UAAA,CAAA;AADC,IAAA,GAAG,EAAE;AACK,IAAA,OAAA,CAAA,CAAA,EAAA,KAAK,CAAC,CAAA,IAAA,CAAM,CAAC,CAAA;;;;AAWvB,CAAA,EAAA,wBAAA,CAAA,SAAA,EAAA,WAAA,EAAA,IAAA,CAAA;AAID,UAAA,CAAA;AADC,IAAA,GAAG,EAAE;AAEH,IAAA,OAAA,CAAA,CAAA,EAAA,KAAK,CAAC,MAAM,CAAC,CAAA;;;;AAuBf,CAAA,EAAA,wBAAA,CAAA,SAAA,EAAA,iBAAA,EAAA,IAAA,CAAA;AAID,UAAA,CAAA;AADC,IAAA,GAAG,EAAE;AAEH,IAAA,OAAA,CAAA,CAAA,EAAA,KAAK,CAAC,MAAM,CAAC,CAAA;;;;AA6Df,CAAA,EAAA,wBAAA,CAAA,SAAA,EAAA,8BAAA,EAAA,IAAA,CAAA;AAKD,UAAA,CAAA;AADC,IAAA,IAAI,EAAE;IAEJ,OAAA,CAAA,CAAA,EAAA,IAAI,EAAE,CAAA;;;;AAKR,CAAA,EAAA,wBAAA,CAAA,SAAA,EAAA,eAAA,EAAA,IAAA,CAAA;AAID,UAAA,CAAA;AADC,IAAA,IAAI,EAAE;AAEJ,IAAA,OAAA,CAAA,CAAA,EAAA,KAAK,CAAC,UAAU,CAAC,CAAA;IACjB,OAAA,CAAA,CAAA,EAAA,IAAI,EAAE,CAAA;;;;AA8CR,CAAA,EAAA,wBAAA,CAAA,SAAA,EAAA,oBAAA,EAAA,IAAA,CAAA;AAKD,UAAA,CAAA;AADC,IAAA,GAAG,EAAE;AAEH,IAAA,OAAA,CAAA,CAAA,EAAA,KAAK,CAAC,IAAI,CAAC,CAAA;IACX,OAAA,CAAA,CAAA,EAAA,IAAI,EAAE,CAAA;;;;AAKR,CAAA,EAAA,wBAAA,CAAA,SAAA,EAAA,eAAA,EAAA,IAAA,CAAA;AAID,UAAA,CAAA;AADC,IAAA,IAAI,EAAE;AAEJ,IAAA,OAAA,CAAA,CAAA,EAAA,KAAK,CAAC,IAAI,CAAC,CAAA;AACX,IAAA,OAAA,CAAA,CAAA,EAAA,KAAK,CAAC,iBAAiB,CAAC,CAAA;;;;AAiB1B,CAAA,EAAA,wBAAA,CAAA,SAAA,EAAA,kBAAA,EAAA,IAAA,CAAA;AAGD,UAAA,CAAA;AADC,IAAA,MAAM,EAAE;AAEN,IAAA,OAAA,CAAA,CAAA,EAAA,KAAK,CAAC,IAAI,CAAC,CAAA;AACX,IAAA,OAAA,CAAA,CAAA,EAAA,KAAK,CAAC,iBAAiB,CAAC,CAAA;;;;AAe1B,CAAA,EAAA,wBAAA,CAAA,SAAA,EAAA,0BAAA,EAAA,IAAA,CAAA;AAID,UAAA,CAAA;AADC,IAAA,MAAM,EAAE;AAEN,IAAA,OAAA,CAAA,CAAA,EAAA,KAAK,CAAC,IAAI,CAAC,CAAA;AACX,IAAA,OAAA,CAAA,CAAA,EAAA,KAAK,CAAC,iBAAiB,CAAC,CAAA;;;;AAM1B,CAAA,EAAA,wBAAA,CAAA,SAAA,EAAA,eAAA,EAAA,IAAA,CAAA;AAKD,UAAA,CAAA;AADC,IAAA,IAAI,EAAE;AAEJ,IAAA,OAAA,CAAA,CAAA,EAAA,KAAK,CAAC,IAAI,CAAC,CAAA;IACX,OAAA,CAAA,CAAA,EAAA,IAAI,EAAE,CAAA;;;;AAKR,CAAA,EAAA,wBAAA,CAAA,SAAA,EAAA,gBAAA,EAAA,IAAA,CAAA;AAKD,UAAA,CAAA;AADC,IAAA,GAAG,EAAE;AAEH,IAAA,OAAA,CAAA,CAAA,EAAA,KAAK,CAAC,IAAI,CAAC,CAAA;;;;AAKb,CAAA,EAAA,wBAAA,CAAA,SAAA,EAAA,kBAAA,EAAA,IAAA,CAAA;AAID,UAAA,CAAA;AADC,IAAA,GAAG,EAAE;AAEH,IAAA,OAAA,CAAA,CAAA,EAAA,KAAK,CAAC,IAAI,CAAC,CAAA;;;;AAKb,CAAA,EAAA,wBAAA,CAAA,SAAA,EAAA,eAAA,EAAA,IAAA,CAAA;AAGD,UAAA,CAAA;AADC,IAAA,GAAG,EAAE;AAEH,IAAA,OAAA,CAAA,CAAA,EAAA,KAAK,CAAC,IAAI,CAAC,CAAA;;;;AAMb,CAAA,EAAA,wBAAA,CAAA,SAAA,EAAA,4BAAA,EAAA,IAAA,CAAA;AAGD,UAAA,CAAA;AADC,IAAA,GAAG,EAAE;AAEH,IAAA,OAAA,CAAA,CAAA,EAAA,KAAK,CAAC,IAAI,CAAC,CAAA;;;;AAKb,CAAA,EAAA,wBAAA,CAAA,SAAA,EAAA,iBAAA,EAAA,IAAA,CAAA;AAID,UAAA,CAAA;AADC,IAAA,GAAG,EAAE;AAEH,IAAA,OAAA,CAAA,CAAA,EAAA,KAAK,CAAC,IAAI,CAAC,CAAA;;;;AAKb,CAAA,EAAA,wBAAA,CAAA,SAAA,EAAA,iBAAA,EAAA,IAAA,CAAA;AAKD,UAAA,CAAA;AADC,IAAA,GAAG,EAAE;AAEH,IAAA,OAAA,CAAA,CAAA,EAAA,KAAK,CAAC,IAAI,CAAC,CAAA;;;;AAMb,CAAA,EAAA,wBAAA,CAAA,SAAA,EAAA,4BAAA,EAAA,IAAA,CAAA;AAKD,UAAA,CAAA;AADC,IAAA,GAAG,EAAE;;;;AAKL,CAAA,EAAA,wBAAA,CAAA,SAAA,EAAA,sBAAA,EAAA,IAAA,CAAA;AAKD,UAAA,CAAA;AADC,IAAA,GAAG,EAAE;AACY,IAAA,OAAA,CAAA,CAAA,EAAA,KAAK,CAAC,MAAM,CAAC,CAAA;;;;AAY9B,CAAA,EAAA,wBAAA,CAAA,SAAA,EAAA,kBAAA,EAAA,IAAA,CAAA;AAKD,UAAA,CAAA;AADC,IAAA,GAAG,EAAE;AACkB,IAAA,OAAA,CAAA,CAAA,EAAA,KAAK,CAAC,MAAM,CAAC,CAAA;;;;AAYpC,CAAA,EAAA,wBAAA,CAAA,SAAA,EAAA,wBAAA,EAAA,IAAA,CAAA;AAKD,UAAA,CAAA;AADC,IAAA,IAAI,EAAE;AAEJ,IAAA,OAAA,CAAA,CAAA,EAAA,KAAK,CAAC,IAAI,CAAC,CAAA;AACX,IAAA,OAAA,CAAA,CAAA,EAAA,KAAK,CAAC,eAAe,CAAC,CAAA;AACtB,IAAA,OAAA,CAAA,CAAA,EAAA,KAAK,CAAC,iBAAiB,CAAC,CAAA;;;;AAU1B,CAAA,EAAA,wBAAA,CAAA,SAAA,EAAA,gBAAA,EAAA,IAAA,CAAA;AAKD,UAAA,CAAA;AADC,IAAA,MAAM,EAAE;AAEN,IAAA,OAAA,CAAA,CAAA,EAAA,KAAK,CAAC,IAAI,CAAC,CAAA;AACX,IAAA,OAAA,CAAA,CAAA,EAAA,KAAK,CAAC,eAAe,CAAC,CAAA;AACtB,IAAA,OAAA,CAAA,CAAA,EAAA,KAAK,CAAC,iBAAiB,CAAC,CAAA;;;;AAU1B,CAAA,EAAA,wBAAA,CAAA,SAAA,EAAA,mBAAA,EAAA,IAAA,CAAA;AAID,UAAA,CAAA;AADC,IAAA,IAAI,EAAE;AAEJ,IAAA,OAAA,CAAA,CAAA,EAAA,KAAK,CAAC,IAAI,CAAC,CAAA;AACX,IAAA,OAAA,CAAA,CAAA,EAAA,KAAK,CAAC,eAAe,CAAC,CAAA;AACtB,IAAA,OAAA,CAAA,CAAA,EAAA,KAAK,CAAC,MAAM,CAAC,CAAA;AACb,IAAA,OAAA,CAAA,CAAA,EAAA,KAAK,CAAC,iBAAiB,CAAC,CAAA;;;;AAW1B,CAAA,EAAA,wBAAA,CAAA,SAAA,EAAA,iBAAA,EAAA,IAAA,CAAA;AAGD,UAAA,CAAA;AADC,IAAA,MAAM,EAAE;AAEN,IAAA,OAAA,CAAA,CAAA,EAAA,KAAK,CAAC,IAAI,CAAC,CAAA;AACX,IAAA,OAAA,CAAA,CAAA,EAAA,KAAK,CAAC,MAAM,CAAC,CAAA;AACb,IAAA,OAAA,CAAA,CAAA,EAAA,KAAK,CAAC,iBAAiB,CAAC,CAAA;;;;AAU1B,CAAA,EAAA,wBAAA,CAAA,SAAA,EAAA,mBAAA,EAAA,IAAA,CAAA;AAID,UAAA,CAAA;AADC,IAAA,GAAG,EAAE;AAEH,IAAA,OAAA,CAAA,CAAA,EAAA,KAAK,CAAC,IAAI,CAAC,CAAA;;;;AAKb,CAAA,EAAA,wBAAA,CAAA,SAAA,EAAA,eAAA,EAAA,IAAA,CAAA;AAjsBU,wBAAwB,GAAA,UAAA,CAAA;AA3CpC,IAAA,cAAc,CAA2B;;AAExC,QAAA,SAAS,EAAE,0BAA0B;AACrC,QAAA,cAAc,EAAE;YACd,QAAQ;YACR,OAAO;YACP,iBAAiB;YACjB,8BAA8B;YAC9B,eAAe;YACf,oBAAoB;YACpB,kBAAkB;YAClB,0BAA0B;YAC1B,eAAe;YACf,eAAe;YACf,gBAAgB;YAChB,eAAe;YACf,kBAAkB;YAClB,eAAe;YACf,4BAA4B;YAC5B,iBAAiB;YACjB,aAAa;YACb,iBAAiB;YACjB,4BAA4B;YAC5B,sBAAsB;YACtB,kBAAkB;YAClB,wBAAwB;YACxB,oBAAoB;YACpB,0BAA0B;YAC1B,oBAAoB;YACpB,0BAA0B;YAC1B,yBAAyB;YACzB,+BAA+B;YAC/B,wBAAwB;YACxB,8BAA8B;YAC9B,YAAY;YACZ,gBAAgB;YAChB,mBAAmB;YACnB,iBAAiB;YACjB,mBAAmB;YACnB,iBAAiB;AAClB,SAAA;;KAEF;AACY,CAAA,EAAA,wBAAwB,CAmsBpC;;AChyBD;AAKO,IAAM,wBAAwB,GAA9B,MAAM,wBAAyB,SAAQ,kBAAkB,CAAA;;AAAnD,wBAAwB,GAAA,UAAA,CAAA;AAHpC,IAAA,cAAc,CAAC;AACd,QAAA,SAAS,EAAE,0BAA0B;KACtC;AACY,CAAA,EAAA,wBAAwB,CAA8B;;ACHnE;AAKO,IAAM,sBAAsB,GAA5B,MAAM,sBAAuB,SAAQ,gBAAgB,CAAA;AAG1D,IAAA,MAAM,CAAC,GAAA;AACL,QAAA,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;AAClB,YAAA,MAAM,IAAI,KAAK,CAAC,CAAA,iDAAA,CAAmD,CAAC;QACtE;IACF;;AAPW,sBAAsB,GAAA,UAAA,CAAA;AAHlC,IAAA,YAAY,CAAC;AACZ,QAAA,SAAS,EAAE,wBAAwB;KACpC;AACY,CAAA,EAAA,sBAAsB,CAQlC;;ACdD;AAMO,IAAM,wBAAwB,GAA9B,MAAM,wBAAyB,SAAQ,2BAA2B,CAAA;AAAlE,IAAA,WAAA,GAAA;;AACL,QAAA,IAAA,CAAA,sBAAsB,GAAG,IAAI,CAAC,cAAc,CAAC,sBAAsB,CAAC;IAItE;IAHE,QAAQ,GAAA;AACN,QAAA,OAAO,oBAAoB;IAC7B;;AAJW,wBAAwB,GAAA,UAAA,CAAA;AAJpC,IAAA,cAAc,CAA2B;AACxC,QAAA,SAAS,EAAE,0BAA0B;;KAEtC;AACY,CAAA,EAAA,wBAAwB,CAKpC;;ACfD;AAiBA;MAEa,6BAA6B,GAAG,aAAa,CAAC,OAAO;AAChE,IAAA,WAAW,EAAE,+BAA+B;AAC5C,IAAA,QAAQ,EAAE,IAAI;AACd,IAAA,QAAQ,EAAE;QACR,eAAe;QACf,8BAA8B;QAC9B,yBAAyB;QACzB,gCAAgC;QAChC,qCAAqC;AACtC,KAAA;AACD,IAAA,QAAQ,EAAE,EAAE,4BAA4B,EAAE,oBAAoB,EAAE;AAChE,IAAA,WAAW,EAAE,EAAE,wBAAwB,EAAE,+BAA+B,EAAE;IAC1E,YAAY,EAAE,EAAE,wBAAwB,EAAE;IAC1C,SAAS,EAAE,EAAE,sBAAsB,EAAE;IACrC,WAAW,EAAE,EAAE,wBAAwB,EAAE;IACzC,WAAW,EAAE,EAAE,wBAAwB,EAAE;AAC1C,CAAA,CAAC;;ACtBF;AAMO,IAAM,yBAAyB,GAA/B,MAAM,yBAA0B,SAAQ,cAAyC,CAAA;;AAA3E,yBAAyB,GAAA,UAAA,CAAA;AAJrC,IAAA,UAAU,CAAC;AACV,QAAA,SAAS,EAAE,2BAA2B;AACtC,QAAA,WAAW,EAAE,IAAI;KAClB;AACY,CAAA,EAAA,yBAAyB,CAmErC;;ACjFD;AAKO,IAAM,6BAA6B,GAAnC,MAAM,6BAA8B,SAAQ,kBAA6C,CAAA;AAAzF,IAAA,WAAA,GAAA;;AACL,QAAA,IAAA,CAAA,oBAAoB,GAA2C,MAAM,yBAAyB;IAehG;AAbE;;AAEG;AACH,IAAA,MAAM,sBAAsB,GAAA;;;;;;;;AAQ1B,QAAA,QAAQ,KAAK,CAAC;IAChB;;AAfW,6BAA6B,GAAA,UAAA,CAAA;AAHzC,IAAA,cAAc,CAAC;AACd,QAAA,SAAS,EAAE,+BAA+B;KAC3C;AACY,CAAA,EAAA,6BAA6B,CAgBzC;;ACbD;AAMO,IAAM,6BAA6B,GAAnC,MAAM,6BAA8B,SAAQ,sBAAiD,CAAA;AAA7F,IAAA,WAAA,GAAA;;AACL,QAAA,IAAA,CAAA,oBAAoB,GAA2C,MAAM,yBAAyB;AAE9F,QAAA,IAAA,CAAA,6BAA6B,GAAG,IAAI,CAAC,gBAAgB,CAAC,6BAA6B,CAAC;;IAqBtF;;AAlBE;;AAEG;AAEH,IAAA,SAAS,CAAoB,QAAgB,EAAA;;;;;;;;;;;AAW3C,QAAA,QAAQ,KAAK,CAAC;IAChB;;AAZA,UAAA,CAAA;AADC,IAAA,GAAG,EAAE;AACK,IAAA,OAAA,CAAA,CAAA,EAAA,KAAK,CAAC,UAAU,CAAC,CAAA;;;;AAY3B,CAAA,EAAA,6BAAA,CAAA,SAAA,EAAA,WAAA,EAAA,IAAA,CAAA;AAtBU,6BAA6B,GAAA,UAAA,CAAA;AAJzC,IAAA,cAAc,CAAgC;AAC7C,QAAA,SAAS,EAAE,+BAA+B;AAC1C,QAAA,cAAc,EAAE;KACjB;AACY,CAAA,EAAA,6BAA6B,CAwBzC;;ACvCD;AAQO,IAAM,2BAA2B,GAAjC,MAAM,2BAA4B,SAAQ,gBAAgB,CAAA;8GAApD,2BAA2B,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;kHAA3B,2BAA2B,EAAA,CAAA,CAAA;;AAA3B,2BAA2B,GAAA,UAAA,CAAA;AANvC,IAAA,YAAY,CAAC;AACZ,QAAA,SAAS,EAAE,6BAA6B;KACzC;;AAIY,CAAA,EAAA,2BAA2B,CAIvC;2FAJY,2BAA2B,EAAA,UAAA,EAAA,CAAA;kBAFvC;;;ACPD;AAKO,IAAM,6BAA6B,GAAnC,MAAM,6BAA8B,SAAQ,kBAAkB,CAAA;;AAAxD,6BAA6B,GAAA,UAAA,CAAA;AAHzC,IAAA,cAAc,CAAC;AACd,QAAA,SAAS,EAAE,+BAA+B;KAC3C;AACY,CAAA,EAAA,6BAA6B,CAA8B;;ACJxE;AAMO,IAAM,6BAA6B,GAAnC,MAAM,6BAA8B,SAAQ,2BAA2B,CAAA;AAAvE,IAAA,WAAA,GAAA;;AACL,QAAA,IAAA,CAAA,2BAA2B,GAAG,IAAI,CAAC,cAAc,CAAC,2BAA2B,CAAC;IAIhF;IAHE,QAAQ,GAAA;AACN,QAAA,OAAO,yBAAyB;IAClC;;AAJW,6BAA6B,GAAA,UAAA,CAAA;AAJzC,IAAA,cAAc,CAAgC;AAC7C,QAAA,SAAS,EAAE,+BAA+B;;KAE3C;AACY,CAAA,EAAA,6BAA6B,CAKzC;;ACfD;AASA;MAEa,kCAAkC,GAAG,aAAa,CAAC,OAAO;AACrE,IAAA,WAAW,EAAE,oCAAoC;AACjD,IAAA,QAAQ,EAAE,IAAI;IACd,QAAQ,EAAE,EAAE,eAAe,EAAE;IAC7B,QAAQ,EAAE,EAAE,yBAAyB,EAAE;IACvC,WAAW,EAAE,EAAE,6BAA6B,EAAE;IAC9C,YAAY,EAAE,EAAE,6BAA6B,EAAE;IAC/C,SAAS,EAAE,EAAE,2BAA2B,EAAE;IAC1C,WAAW,EAAE,EAAE,6BAA6B,EAAE;IAC9C,WAAW,EAAE,EAAE,6BAA6B,EAAE;AAC/C,CAAA,CAAC;;ACRF;AAMO,IAAM,8BAA8B,GAApC,MAAM,8BAA+B,SAAQ,cAA8C,CAAA;;AAEhG,UAAA,CAAA;AADC,IAAA,sBAAsB,EAAE;;AACd,CAAA,EAAA,8BAAA,CAAA,SAAA,EAAA,IAAA,EAAA,KAAA,CAAA,CAAA;AAGX,UAAA,CAAA;IADC,MAAM,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC;;AACxB,CAAA,EAAA,8BAAA,CAAA,SAAA,EAAA,SAAA,EAAA,KAAA,CAAA,CAAA;AAGhB,UAAA,CAAA;AADC,IAAA,MAAM,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;;AACV,CAAA,EAAA,8BAAA,CAAA,SAAA,EAAA,WAAA,EAAA,KAAA,CAAA,CAAA;AAGlB,UAAA,CAAA;AADC,IAAA,MAAM,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;;AACf,CAAA,EAAA,8BAAA,CAAA,SAAA,EAAA,MAAA,EAAA,KAAA,CAAA,CAAA;AAKb,UAAA,CAAA;IADC,MAAM,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;AAChB,CAAA,EAAA,8BAAA,CAAA,SAAA,EAAA,cAAA,EAAA,KAAA,CAAA,CAAA;AAG5B,UAAA,CAAA;IADC,MAAM,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;AACtB,CAAA,EAAA,8BAAA,CAAA,SAAA,EAAA,QAAA,EAAA,KAAA,CAAA,CAAA;AAGtB,UAAA,CAAA;IADC,MAAM,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;AACnB,CAAA,EAAA,8BAAA,CAAA,SAAA,EAAA,WAAA,EAAA,KAAA,CAAA,CAAA;AAGzB,UAAA,CAAA;IADC,MAAM,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;AACf,CAAA,EAAA,8BAAA,CAAA,SAAA,EAAA,eAAA,EAAA,KAAA,CAAA,CAAA;AAG7B,UAAA,CAAA;IADC,MAAM,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;AACb,CAAA,EAAA,8BAAA,CAAA,SAAA,EAAA,QAAA,EAAA,KAAA,CAAA,CAAA;AAGnC,UAAA,CAAA;AADC,IAAA,MAAM,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC;8BAClB,IAAI;AAAC,CAAA,EAAA,8BAAA,CAAA,SAAA,EAAA,WAAA,EAAA,KAAA,CAAA,CAAA;AA/BL,8BAA8B,GAAA,UAAA,CAAA;AAJ1C,IAAA,UAAU,CAAC;AACV,QAAA,SAAS,EAAE,gCAAgC;AAC3C,QAAA,WAAW,EAAE,IAAI;KAClB;AACY,CAAA,EAAA,8BAA8B,CAgC1C;;AC9CD;AAKO,IAAM,kCAAkC,GAAxC,MAAM,kCAAmC,SAAQ,kBAAkD,CAAA;AAAnG,IAAA,WAAA,GAAA;;AACL,QAAA,IAAA,CAAA,oBAAoB,GAAgD,MAAM,8BAA8B;IAe1G;AAbE;;AAEG;AACH,IAAA,MAAM,sBAAsB,GAAA;;;;;;;;AAQ1B,QAAA,QAAQ,KAAK,CAAC;IAChB;;AAfW,kCAAkC,GAAA,UAAA,CAAA;AAH9C,IAAA,cAAc,CAAC;AACd,QAAA,SAAS,EAAE,oCAAoC;KAChD;AACY,CAAA,EAAA,kCAAkC,CAgB9C;;ACbD;AAMO,IAAM,kCAAkC,GAAxC,MAAM,kCAAmC,SAAQ,sBAAsD,CAAA;AAAvG,IAAA,WAAA,GAAA;;AACL,QAAA,IAAA,CAAA,oBAAoB,GAAgD,MAAM,8BAA8B;AAExG,QAAA,IAAA,CAAA,kCAAkC,GAAG,IAAI,CAAC,gBAAgB,CAAC,kCAAkC,CAAC;;IAqBhG;;AAlBE;;AAEG;AAEH,IAAA,SAAS,CAAoB,QAAgB,EAAA;;;;;;;;;;;AAW3C,QAAA,QAAQ,KAAK,CAAC;IAChB;;AAZA,UAAA,CAAA;AADC,IAAA,GAAG,EAAE;AACK,IAAA,OAAA,CAAA,CAAA,EAAA,KAAK,CAAC,UAAU,CAAC,CAAA;;;;AAY3B,CAAA,EAAA,kCAAA,CAAA,SAAA,EAAA,WAAA,EAAA,IAAA,CAAA;AAtBU,kCAAkC,GAAA,UAAA,CAAA;AAJ9C,IAAA,cAAc,CAAqC;AAClD,QAAA,SAAS,EAAE,oCAAoC;AAC/C,QAAA,cAAc,EAAE;KACjB;AACY,CAAA,EAAA,kCAAkC,CAwB9C;;ACvCD;AAQO,IAAM,gCAAgC,GAAtC,MAAM,gCAAiC,SAAQ,gBAAgB,CAAA;8GAAzD,gCAAgC,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;kHAAhC,gCAAgC,EAAA,CAAA,CAAA;;AAAhC,gCAAgC,GAAA,UAAA,CAAA;AAN5C,IAAA,YAAY,CAAC;AACZ,QAAA,SAAS,EAAE,kCAAkC;KAC9C;;AAIY,CAAA,EAAA,gCAAgC,CAI5C;2FAJY,gCAAgC,EAAA,UAAA,EAAA,CAAA;kBAF5C;;;ACPD;AAKO,IAAM,kCAAkC,GAAxC,MAAM,kCAAmC,SAAQ,kBAAkB,CAAA;;AAA7D,kCAAkC,GAAA,UAAA,CAAA;AAH9C,IAAA,cAAc,CAAC;AACd,QAAA,SAAS,EAAE,oCAAoC;KAChD;AACY,CAAA,EAAA,kCAAkC,CAA8B;;ACJ7E;AAMO,IAAM,kCAAkC,GAAxC,MAAM,kCAAmC,SAAQ,2BAA2B,CAAA;AAA5E,IAAA,WAAA,GAAA;;AACL,QAAA,IAAA,CAAA,gCAAgC,GAAG,IAAI,CAAC,cAAc,CAAC,gCAAgC,CAAC;IAI1F;IAHE,QAAQ,GAAA;AACN,QAAA,OAAO,8BAA8B;IACvC;;AAJW,kCAAkC,GAAA,UAAA,CAAA;AAJ9C,IAAA,cAAc,CAAqC;AAClD,QAAA,SAAS,EAAE,oCAAoC;;KAEhD;AACY,CAAA,EAAA,kCAAkC,CAK9C;;ACfD;AASA;MAEa,uCAAuC,GAAG,aAAa,CAAC,OAAO;AAC1E,IAAA,WAAW,EAAE,yCAAyC;AACtD,IAAA,QAAQ,EAAE,IAAI;IACd,QAAQ,EAAE,EAAE,eAAe,EAAE;IAC7B,QAAQ,EAAE,EAAE,8BAA8B,EAAE;IAC5C,WAAW,EAAE,EAAE,kCAAkC,EAAE;IACnD,YAAY,EAAE,EAAE,kCAAkC,EAAE;IACpD,SAAS,EAAE,EAAE,gCAAgC,EAAE;IAC/C,WAAW,EAAE,EAAE,kCAAkC,EAAE;IACnD,WAAW,EAAE,EAAE,kCAAkC,EAAE;AACpD,CAAA,CAAC;;ACrBF;MAca,sBAAsB,GAAG,aAAa,CAAC,OAAO;AACzD,IAAA,WAAW,EAAE,wBAAwB;AACrC,IAAA,QAAQ,EAAE,IAAI;AACd,IAAA,QAAQ,EAAE;QACR,8BAA8B;QAC9B,6BAA6B;QAC7B,6BAA6B;QAC7B,kCAAkC;QAClC,uCAAuC;QACvC,qCAAqC;QACrC,gCAAgC;QAChC,oCAAoC;QACpC,yBAAyB;QACzB,0BAA0B;AAC3B,KAAA;AACF,CAAA,CAAC;AAEF;;AC5BA,MAAM,iBAAiB,GAAG,IAAI,OAAO,EAA0C;AAE/E;AACA;SACgB,cAAc,CAC5B,GAAW,EACX,IAAc,EACd,UAAwC,EAAA;IAExC,MAAM,GAAG,GAAG,CAAA,yBAAA,EAA4B,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAA,CAAE;IAC/D,IAAI,CAAC,QAAQ,CAAC,mBAAmB,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;AAC1C,QAAA,QAAQ,CAAC,mBAAmB,CAAC,GAAG,CAAC,GAAG,EAAE;YACpC,SAAS,EAAE,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,KAAI;gBAC3B,IAAI,EAAE,GAAG,CAAC,IAAI,YAAY,QAAQ,CAAC,EAAE;AACnC,oBAAA,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC;gBACzB;AACA,gBAAA,MAAM,UAAU,GAAG,GAAG,CAAC,IAAI;gBAC3B,MAAM,QAAQ,GAAG,iBAAiB,CAAC,GAAG,CAAC,UAAU,CAAC;gBAClD,IAAI,CAAC,QAAQ,EAAE;AACb,oBAAA,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC;gBACzB;AACA,gBAAA,OAAO,IAAI,UAAU,CAAW,UAAU,IAAG;AAC3C,oBAAA,MAAM,GAAG,GAAG,IAAI,cAAc,EAAE;AAChC,oBAAA,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,IAAI,MAAM,EAAE,GAAG,CAAC,GAAG,CAAC;oBACvC,GAAG,CAAC,eAAe,GAAG,GAAG,CAAC,WAAW,KAAK,SAAS;AACnD,oBAAA,IAAI,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,IAAI,KAAI;;AAE/C,wBAAA,IAAI,IAAI,CAAC,WAAW,EAAE,KAAK,cAAc,EAAE;AACzC,4BAAA,GAAG,CAAC,gBAAgB,CAAC,IAAI,EAAE,KAAK,CAAC;wBACnC;AACF,oBAAA,CAAC,CAAC;AACF,oBAAA,GAAG,CAAC,MAAM,CAAC,UAAU,GAAG,KAAK,IAAG;wBAC9B,IAAI,KAAK,CAAC,gBAAgB,IAAI,KAAK,CAAC,KAAK,GAAG,CAAC,EAAE;4BAC7C,QAAQ,CACN,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,MAAM,GAAG,GAAG,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC,CAC9D;wBACH;AACF,oBAAA,CAAC;AACD,oBAAA,GAAG,CAAC,MAAM,GAAG,MAAK;AAChB,wBAAA,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE;wBAC7B,KAAK,MAAM,IAAI,IAAI;AAChB,6BAAA,qBAAqB;AACrB,6BAAA,IAAI;AACJ,6BAAA,KAAK,CAAC,SAAS,CAAC,EAAE;4BACnB,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC;AACnC,4BAAA,IAAI,SAAS,GAAG,CAAC,EAAE;gCACjB,OAAO,CAAC,MAAM,CACZ,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,CAAC,EACxB,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,CACjC;4BACH;wBACF;AACA,wBAAA,UAAU,CAAC,IAAI,CACb,IAAI,QAAQ,CACV,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,IAAI,GAAG,GAAG,CAAC,YAAY,EAC9D;4BACE,MAAM,EAAE,GAAG,CAAC,MAAM;4BAClB,UAAU,EAAE,GAAG,CAAC,UAAU;4BAC1B,OAAO;AACR,yBAAA,CACF,CACF;wBACD,UAAU,CAAC,QAAQ,EAAE;AACvB,oBAAA,CAAC;AACD,oBAAA,GAAG,CAAC,OAAO,GAAG,MACZ,UAAU,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;AAC5D,oBAAA,GAAG,CAAC,SAAS,GAAG,MACd,UAAU,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;AACxD,oBAAA,GAAG,CAAC,OAAO,GAAG,MACZ,UAAU,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;oBAC5D,MAAM,KAAK,GAAG,MAAM,GAAG,CAAC,KAAK,EAAE;AAC/B,oBAAA,GAAG,CAAC,MAAM,EAAE,gBAAgB,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;AAC5D,oBAAA,IAAI,GAAG,CAAC,MAAM,EAAE,OAAO,EAAE;wBACvB,UAAU,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;oBAC5D;yBAAO;wBACL,QAAQ,CAAC,CAAC,CAAC;AACX,wBAAA,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC;oBACtB;AACA,oBAAA,OAAO,MAAK;wBACV,GAAG,CAAC,MAAM,EAAE,mBAAmB,CAAC,OAAO,EAAE,KAAK,CAAC;wBAC/C,IAAI,GAAG,CAAC,UAAU,KAAK,cAAc,CAAC,IAAI,EAAE;4BAC1C,GAAG,CAAC,KAAK,EAAE;wBACb;AACF,oBAAA,CAAC;AACH,gBAAA,CAAC,CAAC;YACJ,CAAC;AACF,SAAA,CAAC;IACJ;AACA,IAAA,iBAAiB,CAAC,GAAG,CAAC,IAAI,EAAE,UAAU,CAAC;IACvC,OAAO,MAAM,iBAAiB,CAAC,MAAM,CAAC,IAAI,CAAC;AAC7C;;AC7FA;AA4BA;AAGM,MAAO,wBAEX,SAAQ,sBAAsB,CAAA;AAHhC,IAAA,WAAA,GAAA;;;AAKqB,QAAA,IAAA,CAAA,wBAAwB,GAAG,IAAI,CAAC,gBAAgB,CACjE,wBAAwB,CACzB;AAEkB,QAAA,IAAA,CAAA,+BAA+B,GAAG,IAAI,CAAC,gBAAgB,CACxE,+BAA+B,CAChC;AAsaF,IAAA;AApaC,IAAA,IAAW,cAAc,GAAA;QACvB,OAAO,IAAI,CAAC,wBAAwB;IACtC;AAEA,IAAA,IAAW,WAAW,GAAA;AACpB,QAAA,OAAO,IAAI,CAAC,GAAG,CAAC,eAAe,CAAC,MAAM;IACxC;AAEO,IAAA,UAAU,CAAC,IAAY,EAAA;QAC5B,OAAO,CAAA,EAAG,IAAI,CAAC,WAAW,CAAA,OAAA,EAAU,kBAAkB,CAAC,IAAI,CAAC,CAAA,CAAE;IAChE;;;IAIO,MAAM,OAAO,CAAC,EAAU,EAAA;AAC7B,QAAA,OAAO,CAAC,MAAM,IAAI,CAAC,wBAAwB,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,OAAO,EAAE,EAAE,IAAI,CAAC,IAAI;IAC5E;;;IAIO,MAAM,SAAS,CAAC,IAAY,EAAA;AACjC,QAAA,OAAO,CAAC,MAAM,IAAI,CAAC,wBAAwB,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE;AACpE,aAAA,IAAI;IACT;;IAGO,MAAM,eAAe,CAAC,IAAY,EAAA;AACvC,QAAA,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC;aACzB,eAAe,CAAC,IAAI;AACpB,aAAA,OAAQ,EAAE;AACb,QAAA,IAAI,QAAQ,CAAC,UAAU,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,EAAE;YACtD,MAAM,IAAI,KAAK,CAAC,QAAQ,CAAC,YAAY,IAAI,+BAA+B,CAAC;QAC3E;AACA,QAAA,OAAO,QAAQ,CAAC,IAAI,CAAC,IAAI;IAC3B;IAEO,MAAM,4BAA4B,CACvC,IAAY,EAAA;AAEZ,QAAA,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC;aACzB,4BAA4B,CAAC,IAAI;AACjC,aAAA,OAAO,EAAE;AACZ,QAAA,IAAI,QAAQ,CAAC,UAAU,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE;YACrE,MAAM,IAAI,KAAK,CACb,QAAQ,CAAC,YAAY,IAAI,4CAA4C,CACtE;QACH;AACA,QAAA,OAAO,QAAQ,CAAC,IAAI,CAAC,IAAI;IAC3B;;AAGA;;AAEG;AACI,IAAA,kBAAkB,CAAC,IAAY,EAAA;QACpC,OAAO,IAAI,CAAC;aACT,kBAAkB,CAAC,IAAI;AACvB,aAAA,OAAO;aACP,UAAU,CAAC,IAAI,CACd,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,EACzB,UAAU,CAAC,GAAG,IAAG;AACf,YAAA,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC;AAClB,YAAA,OAAO,EAAE,CAAC,EAAE,CAAC;QACf,CAAC,CAAC,CACH;IACL;;;IAIO,MAAM,wBAAwB,CAAC,IAAY,EAAA;AAChD,QAAA,OAAO,CACL,MAAM,IAAI,CAAC;aACR,wBAAwB,CAAC,IAAI;AAC7B,aAAA,OAAO,EAAE,EACZ,IAAI,CAAC,IAAI;IACb;;;AAIO,IAAA,kBAAkB,CAAC,IAAY,EAAA;QACpC,OAAO,IAAI,CAAC;aACT,kBAAkB,CAAC,IAAI;AACvB,aAAA,OAAO;aACP,UAAU,CAAC,IAAI,CACd,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,EACzB,UAAU,CAAC,GAAG,IAAG;AACf,YAAA,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC;AAClB,YAAA,OAAO,EAAE,CAAC,EAAE,CAAC;QACf,CAAC,CAAC,CACH;IACL;;;IAIO,MAAM,wBAAwB,CAAC,IAAY,EAAA;AAChD,QAAA,OAAO,CACL,MAAM,IAAI,CAAC;aACR,wBAAwB,CAAC,IAAI;AAC7B,aAAA,OAAO,EAAE,EACZ,IAAI,CAAC,IAAI;IACb;;;IAIO,MAAM,uBAAuB,CAAC,IAAY,EAAA;AAC/C,QAAA,OAAO,CACL,MAAM,IAAI,CAAC;aACR,uBAAuB,CAAC,IAAI;AAC5B,aAAA,OAAO,EAAE,EACZ,IAAI,CAAC,IAAI;IACb;;;IAIO,MAAM,6BAA6B,CAAC,IAAY,EAAA;AACrD,QAAA,OAAO,CACL,MAAM,IAAI,CAAC;aACR,6BAA6B,CAAC,IAAI;AAClC,aAAA,OAAO,EAAE,EACZ,IAAI,CAAC,IAAI;IACb;;;AAIO,IAAA,gBAAgB,CAAC,IAAW,EAAA;AACjC,QAAA,OAAO,IAAI,CAAC,wBAAwB,CAAC,gBAAgB,CAAC,IAAI;AACvD,aAAA,OAAQ,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC1D;;;AAIO,IAAA,sBAAsB,CAAC,IAAW,EAAA;AACvC,QAAA,OAAO,IAAI,CAAC,wBAAwB,CAAC,sBAAsB,CAAC,IAAI;AAC7D,aAAA,OAAQ,EAAE,CAAC,UAAU,CAAC,IAAI,CAC3B,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,EACzB,UAAU,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,CAAC,CAC5B;IACH;;;IAIO,oBAAoB,GAAA;AACzB,QAAA,OAAO,IAAI,CAAC,wBAAwB,CAAC,oBAAoB;AACtD,aAAA,OAAQ,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC1D;;;AAIO,IAAA,MAAM,WAAW,CACtB,IAAU,EACV,UAAyC,EAAA;AAEzC,QAAA,MAAM,QAAQ,GAAG,IAAI,QAAQ,EAAE;AAC/B,QAAA,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC;QAC7B,MAAM,YAAY,GAAG;AACnB,cAAE,cAAc,CACZ,IAAI,CAAC,+BAA+B,CAAC,8BAA8B,CACjE,wBAAwB,CACzB,EACD,QAAQ,EACR,UAAU;cAEZ,SAAS;AACb,QAAA,IAAI;AACF,YAAA,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC;iBACzB,sBAAsB,CAAC,QAAQ;AAC/B,iBAAA,OAAO,EAAE;AACZ,YAAA,MAAM,OAAO,GAAG,QAAQ,CAAC,IAAI,CAAC,IAAI;YAClC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE;AACvE,gBAAA,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC;YAC3D;AACA,YAAA,UAAU,GAAG,GAAG,CAAC;AACjB,YAAA,OAAO,OAAO,CAAC,CAAC,CAAC;QACnB;gBAAU;YACR,YAAY,IAAI;QAClB;IACF;;IAGO,MAAM,qBAAqB,CAAC,GAAW,EAAA;AAC5C,QAAA,OAAO,CACL,MAAM,IAAI,CAAC;aACR,qBAAqB,CAAC,GAAG;AACzB,aAAA,OAAO,EAAE,EACZ,IAAI,CAAC,IAAI;IACb;;IAGO,UAAU,GAAA;QACf,OAAO,IAAI,CAAC;aACT,IAAI,CAAC,EAAE;AACP,aAAA,OAAO;AACP,aAAA,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC/C;;;IAIO,MAAM,WAAW,CAAC,GAAW,EAAA;AAClC,QAAA,OAAO,CACL,MAAM,IAAI,CAAC;aACR,aAAa,CAAC,GAAG,EAAE,EAAE,gBAAgB,EAAE,CAAC,GAAG,EAAE,EAAE;AAC/C,aAAA,OAAO,EAAE,EACZ,IAAI,CAAC,IAAI;IACb;;;AAIO,IAAA,UAAU,CAAC,EAAU,EAAA;QAC1B,OAAO,IAAI,CAAC;aACT,UAAU,CAAC,EAAE;AACb,aAAA,OAAO;AACP,aAAA,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC/C;AAEO,IAAA,MAAM,sBAAsB,CACjC,IAAY,EACZ,UAAU,GAAG,KAAK,EAAA;QAElB,MAAM,QAAQ,GAAG;AACf,cAAE,MAAM,IAAI,CAAC;iBACR,4BAA4B,CAAC,IAAI;AACjC,iBAAA,OAAO;AACZ,cAAE,MAAM,IAAI,CAAC;iBACR,sBAAsB,CAAC,IAAI;AAC3B,iBAAA,OAAO,EAAE;AAChB,QAAA,OAAO,QAAQ,CAAC,IAAI,CAAC,IAAI;IAC3B;AAEO,IAAA,aAAa,CAClB,KAA2B,EAAA;AAE3B,QAAA,OAAO,IAAI,CAAC,wBAAwB,CAAC,aAAa,CAAC,KAAK;AACrD,aAAA,OAAQ,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC1D;;AAGO,IAAA,MAAM,kBAAkB,CAC7B,QAAgB,EAChB,KAAqC,EAAA;AAErC,QAAA,OAAO,CACL,MAAM,IAAI,CAAC;AACR,aAAA,kBAAkB,CAAC,QAAQ,EAAE,KAAK;AAClC,aAAA,OAAO,EAAE,EACZ,IAAI,CAAC,IAAI;IACb;;AAGO,IAAA,gBAAgB,CACrB,EAAU,EACV,eAAe,GAAG,KAAK,EAAA;QAEvB,OAAO,IAAI,CAAC,wBAAwB,CAAC,gBAAgB,CAAC,EAAE,EAAE,eAAe;AACtE,aAAA,OAAQ,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC1D;;;IAIO,aAAa,CAClB,EAAU,EACV,KAA2B,EAAA;QAE3B,OAAO,IAAI,CAAC,wBAAwB,CAAC,aAAa,CAAC,EAAE,EAAE,KAAK;AACzD,aAAA,OAAQ,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC1D;;;IAIO,aAAa,CAClB,EAAU,EACV,eAAuB,EAAA;QAEvB,OAAO,IAAI,CAAC,wBAAwB,CAAC,aAAa,CAAC,EAAE,EAAE,eAAe;AACnE,aAAA,OAAQ,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC1D;;IAGO,wBAAwB,CAC7B,EAAU,EACV,eAAuB,EAAA;QAEvB,OAAO,IAAI,CAAC;AACT,aAAA,wBAAwB,CAAC,EAAE,EAAE,eAAe;AAC5C,aAAA,OAAQ;AACR,aAAA,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC/C;;IAGO,cAAc,CACnB,EAAU,EACV,KAA4B,EAAA;QAE5B,OAAO,IAAI,CAAC,wBAAwB,CAAC,cAAc,CAAC,EAAE,EAAE,KAAK;AAC1D,aAAA,OAAQ,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC1D;;;AAIO,IAAA,aAAa,CAAC,EAAU,EAAA;AAC7B,QAAA,OAAO,IAAI,CAAC,wBAAwB,CAAC,aAAa,CAAC,EAAE;AAClD,aAAA,OAAQ,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC1D;;;IAIO,WAAW,GAAA;AAChB,QAAA,OAAO,IAAI,CAAC,wBAAwB,CAAC,WAAW;AAC7C,aAAA,OAAQ,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC1D;AAEO,IAAA,gBAAgB,CAAC,EAAU,EAAA;AAChC,QAAA,OAAO,IAAI,CAAC,wBAAwB,CAAC,gBAAgB,CAAC,EAAE;AACrD,aAAA,OAAQ,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC1D;;IAGO,MAAM,aAAa,CACxB,EAAU,EAAA;AAEV,QAAA,OAAO,CACL,MAAM,IAAI,CAAC,wBAAwB,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC,OAAO,EAAE,EAC/D,IAAI,CAAC,IAAI;IACb;IAEO,MAAM,0BAA0B,CACrC,EAAU,EAAA;AAEV,QAAA,OAAO,CACL,MAAM,IAAI,CAAC;aACR,0BAA0B,CAAC,EAAE;AAC7B,aAAA,OAAO,EAAE,EACZ,IAAI,CAAC,IAAI;IACb;IAEO,MAAM,eAAe,CAC1B,EAAU,EAAA;AAEV,QAAA,OAAO,CACL,MAAM,IAAI,CAAC,wBAAwB,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC,OAAO,EAAE,EACjE,IAAI,CAAC,IAAI;IACb;;AAGO,IAAA,eAAe,CAAC,EAAU,EAAA;AAC/B,QAAA,OAAO,IAAI,CAAC,wBAAwB,CAAC,eAAe,CAAC,EAAE;AACpD,aAAA,OAAQ,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC1D;;;AAIO,IAAA,0BAA0B,CAC/B,EAAU,EAAA;AAEV,QAAA,OAAO,IAAI,CAAC,wBAAwB,CAAC,0BAA0B,CAAC,EAAE;AAC/D,aAAA,OAAQ,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC1D;;;AAIO,IAAA,cAAc,CACnB,EAAU,EACV,aAAqB,EACrB,eAAuB,EAAA;AAEvB,QAAA,OAAO,IAAI,CAAC,wBAAwB,CAAC,cAAc,CACjD,EAAE,EACF,aAAa,EACb,eAAe,CAChB,CAAC,OAAQ,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACzD;;;AAIO,IAAA,iBAAiB,CACtB,EAAU,EACV,aAAqB,EACrB,eAAuB,EAAA;AAEvB,QAAA,OAAO,IAAI,CAAC,wBAAwB,CAAC,iBAAiB,CACpD,EAAE,EACF,aAAa,EACb,eAAe,CAChB,CAAC,OAAQ,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACzD;;AAGO,IAAA,eAAe,CACpB,EAAU,EACV,aAAqB,EACrB,IAA4B,EAC5B,eAAuB,EAAA;QAEvB,OAAO,IAAI,CAAC;aACT,eAAe,CAAC,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,eAAe;AACxD,aAAA,OAAQ;AACR,aAAA,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC/C;AAEO,IAAA,iBAAiB,CACtB,EAAU,EACV,IAA4B,EAC5B,eAAuB,EAAA;QAEvB,OAAO,IAAI,CAAC;AACT,aAAA,iBAAiB,CAAC,EAAE,EAAE,IAAI,EAAE,eAAe;AAC3C,aAAA,OAAQ;AACR,aAAA,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC/C;;AAGA;;;AAGG;AACH,IAAA,IAAW,cAAc,GAAA;QACvB,OAAO,IAAI,CAAC,wBAAwB,CAAC,MAAM,EAAE,CAAC,OAAQ,EAAE,CAAC,UAAU,CAAC,IAAI,CACtE,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,CAC3B;IACH;8GA9aW,wBAAwB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;kHAAxB,wBAAwB,EAAA,CAAA,CAAA;;2FAAxB,wBAAwB,EAAA,UAAA,EAAA,CAAA;kBADpC;;;ACfD,MAAMA,GAAC,GAAG,WAAW,CAAC,GAAG,CAAC,wEAAwE,EAAE,EAAC,0EAA0E,EAAC,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,kFAA8D,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,kFAA8D,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,kFAA8D,CAAC,EAAE,OAAO,EAAC,EAAC,wEAAwE,EAAC,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,gFAA4D,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,gFAA4D,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,gFAA4D,CAAC,EAAE,OAAO,EAAC,EAAC,8EAA8E,EAAC,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,sFAAkE,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,sFAAkE,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,sFAAkE,CAAC,EAAE,OAAO,EAAC,EAAC,4EAA4E,EAAC,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,oFAAgE,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,oFAAgE,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,oFAAgE,CAAC,EAAE,OAAO,EAAC,EAAQ,CAAC;MASxqD,4BAA4B,CAAA;AAPzC,IAAA,WAAA,GAAA;AAQW,QAAA,IAAA,CAAA,CAAC,GAAGA,GAAC,CAAC,GAAG,CAAC,IAAI,CAAC;AAKP,QAAA,IAAA,CAAA,GAAG,GAAG,MAAM,CAAC,wBAAwB,CAAC;AAEtC,QAAA,IAAA,CAAA,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC;AAEvC,QAAA,IAAA,CAAA,GAAG,GAAG,MAAM,CAAC,EAAE,+CAAC;AAEhB,QAAA,IAAA,CAAA,OAAO,GAAG,MAAM,CAAC,KAAK,mDAAC;AAEvB,QAAA,IAAA,CAAA,KAAK,GAAG,MAAM,CAAC,EAAE,iDAAC;AAwD5B,IAAA;AAtDC,IAAA,IAAI,WAAW,GAAA;AACb,QAAA,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,IAAI,EAAE,CAAC,WAAW,EAAE;AAChE,QAAA,IAAI,WAAW,EAAE,UAAU,CAAC,QAAQ,CAAC,EAAE;AACrC,YAAA,OAAO,OAAO;QAChB;AACA,QAAA,IAAI,WAAW,EAAE,UAAU,CAAC,QAAQ,CAAC,EAAE;AACrC,YAAA,OAAO,OAAO;QAChB;AACA,QAAA,OAAO,YAAY;IACrB;IAEA,QAAQ,GAAA;AACN,QAAA,KAAK,IAAI,CAAC,MAAM,EAAE;IACpB;AAEA,IAAA,MAAM,MAAM,GAAA;AACV,QAAA,IAAI,IAAI,CAAC,OAAO,EAAE,EAAE;YAClB;QACF;AACA,QAAA,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC;AACtB,QAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;AAClB,QAAA,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;AAChB,QAAA,IAAI;AACF,YAAA,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;AAC/D,YAAA,IAAI,IAAI,CAAC,WAAW,KAAK,YAAY,EAAE;gBACrC,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,UAAU,EAAE,MAAM,CAAC;YAC1C;AACA,YAAA,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,SAAS,EAAE;gBAC9B,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC;YACxB;QACF;QAAE,OAAO,KAAc,EAAE;AACvB,YAAA,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,SAAS,EAAE;AAC9B,gBAAA,OAAO,CAAC,KAAK,CACX,mDAAmD,EACnD,KAAK,CACN;AACD,gBAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CACZ,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,8CAA8C,CAAC,CAC/D;YACH;QACF;gBAAU;AACR,YAAA,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,SAAS,EAAE;AAC9B,gBAAA,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC;YACzB;QACF;IACF;IAEA,aAAa,GAAA;AACX,QAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CACZ,IAAI,CAAC,CAAC,CAAC,OAAO,CACZ,4DAA4D,CAC7D,CACF;IACH;8GArEW,4BAA4B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;kGAA5B,4BAA4B,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,wBAAA,EAAA,MAAA,EAAA,EAAA,KAAA,EAAA,OAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECxBzC,iiCA4CA,EAAA,MAAA,EAAA,CAAA,0GAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EDxBY,eAAe,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,SAAA,EAAA,QAAA,EAAA,iOAAA,EAAA,MAAA,EAAA,CAAA,WAAA,CAAA,EAAA,QAAA,EAAA,CAAA,WAAA,EAAA,WAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;;2FAId,4BAA4B,EAAA,UAAA,EAAA,CAAA;kBAPxC,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,wBAAwB,mBACjB,uBAAuB,CAAC,MAAM,EAAA,OAAA,EACtC,CAAC,eAAe,CAAC,EAAA,QAAA,EAAA,iiCAAA,EAAA,MAAA,EAAA,CAAA,0GAAA,CAAA,EAAA;;sBAOzB,KAAK;uBAAC,EAAE,QAAQ,EAAE,IAAI,EAAE;;;AEH3B,MAAMA,GAAC,GAAG,WAAW,CAAC,GAAG,CAAC,4EAA4E,EAAE,EAAC,0EAA0E,EAAC,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,kFAA8D,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,kFAA8D,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,kFAA8D,CAAC,EAAE,OAAO,EAAC,EAAC,wEAAwE,EAAC,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,gFAA4D,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,gFAA4D,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,gFAA4D,CAAC,EAAE,OAAO,EAAC,EAAC,8EAA8E,EAAC,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,sFAAkE,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,sFAAkE,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,sFAAkE,CAAC,EAAE,OAAO,EAAC,EAAC,4EAA4E,EAAC,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,oFAAgE,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,oFAAgE,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,oFAAgE,CAAC,EAAE,OAAO,EAAC,EAAQ,CAAC;MAe5qD,gCAAgC,CAAA;AAX7C,IAAA,WAAA,GAAA;AAYW,QAAA,IAAA,CAAA,CAAC,GAAGA,GAAC,CAAC,GAAG,CAAC,IAAI,CAAC;AAEP,QAAA,IAAA,CAAA,GAAG,GAAG,MAAM,CAAC,wBAAwB,CAAC;AAEtC,QAAA,IAAA,CAAA,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC;AAEvC,QAAA,IAAA,CAAA,MAAM,GAAG,MAAM,CAAsB,EAAE,kDAAC;AAExC,QAAA,IAAA,CAAA,OAAO,GAAG,MAAM,CAAC,KAAK,mDAAC;AAEvB,QAAA,IAAA,CAAA,KAAK,GAAG,MAAM,CAAC,EAAE,iDAAC;AAElB,QAAA,IAAA,CAAA,OAAO,GAAoB;AAClC,YAAA,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,YAAY,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE;AACvE,YAAA,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,IAAI,EAAE;AAC1E,YAAA;gBACE,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC;AACtC,gBAAA,KAAK,EAAE,aAAa;AACpB,gBAAA,QAAQ,EAAE,IAAI;AACf,aAAA;SACF;AAsCF,IAAA;IApCC,QAAQ,GAAA;QACN,IAAI,CAAC,MAAM,EAAE;IACf;IAEA,MAAM,GAAA;AACJ,QAAA,IAAI,IAAI,CAAC,OAAO,EAAE,EAAE;YAClB;QACF;AACA,QAAA,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC;AACtB,QAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;AAClB,QAAA,IAAI,CAAC;AACF,aAAA,UAAU;AACV,aAAA,IAAI,CACHC,KAAG,CAAC,CAAC,IAAI,CAAwB,CAAC,EAClC,kBAAkB,CAAC,IAAI,CAAC,UAAU,CAAC,EACnC,QAAQ,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;AAExC,aAAA,SAAS,CAAC;AACT,YAAA,IAAI,EAAE,MAAM,IACV,IAAI,CAAC,MAAM,CAAC,GAAG,CACb,MAAM,CAAC,GAAG,CAAC,CAAC,IAAG;AACb,gBAAA,CAAC,CAAC,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;AACzC,gBAAA,OAAO,CAAC;AACV,YAAA,CAAC,CAAC,CACH;AACH,YAAA,KAAK,EAAE,CAAC,KAAc,KAAI;AACxB,gBAAA,OAAO,CAAC,KAAK,CACX,oDAAoD,EACpD,KAAK,CACN;AACD,gBAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CACZ,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,mDAAmD,CAAC,CACpE;YACH,CAAC;AACF,SAAA,CAAC;IACN;8GA1DW,gCAAgC,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;kGAAhC,gCAAgC,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,4BAAA,EAAA,SAAA,EAHhC,CAAC,wBAAwB,CAAC,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECpCvC,8pBA6BA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EDGI,eAAe,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,SAAA,EAAA,QAAA,EAAA,iOAAA,EAAA,MAAA,EAAA,CAAA,WAAA,CAAA,EAAA,QAAA,EAAA,CAAA,WAAA,EAAA,WAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EACf,sBAAsB,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,CAAA,YAAA,EAAA,UAAA,EAAA,iBAAA,EAAA,gBAAA,EAAA,mBAAA,EAAA,sBAAA,EAAA,SAAA,EAAA,YAAA,EAAA,eAAA,EAAA,MAAA,EAAA,YAAA,EAAA,iBAAA,EAAA,sBAAA,EAAA,mBAAA,EAAA,SAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,eAAA,CAAA,EAAA,OAAA,EAAA,CAAA,iBAAA,EAAA,YAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EACtB,4BAA4B,EAAA,QAAA,EAAA,wBAAA,EAAA,MAAA,EAAA,CAAA,OAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;;2FAKnB,gCAAgC,EAAA,UAAA,EAAA,CAAA;kBAX5C,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,4BAA4B,EAAA,eAAA,EACrB,uBAAuB,CAAC,MAAM,EAAA,OAAA,EACtC;wBACP,eAAe;wBACf,sBAAsB;wBACtB,4BAA4B;qBAC7B,EAAA,SAAA,EACU,CAAC,wBAAwB,CAAC,EAAA,QAAA,EAAA,8pBAAA,EAAA;;;;;;;;AElChC,MAAM,6BAA6B,GAAW;AACnD,IAAA;AACE,QAAA,IAAI,EAAE,EAAE;AACR,QAAA,aAAa,EAAE,MACb,iFAAgD,CAAC,IAAI,CACnD,CAAC,IAAI,CAAC,CAAC,gCAAgC,CACxC;AACJ,KAAA;;;;;;;;ACTH;AAMA;AAEA,MAAMD,GAAC,GAAG,WAAW,CAAC,GAAG,CAAC,8DAA8D,EAAE,EAAC,gEAAgE,EAAC,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,+EAA2D,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,+EAA2D,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,+EAA2D,CAAC,EAAE,OAAO,EAAC,EAAC,8DAA8D,EAAC,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,6EAAyD,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,6EAAyD,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,6EAAyD,CAAC,EAAE,OAAO,EAAC,EAAC,2DAA2D,EAAC,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,0EAAsD,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,0EAAsD,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,0EAAsD,CAAC,EAAE,OAAO,EAAC,EAAQ,CAAC;MAS3qC,0BAA0B,CAAA;AAPvC,IAAA,WAAA,GAAA;AAQW,QAAA,IAAA,CAAA,CAAC,GAAGA,GAAC,CAAC,GAAG,CAAC,IAAI,CAAC;QAExB,IAAA,CAAA,eAAe,GAAG,KAAK;AASxB,IAAA;AAPC,IAAA,eAAe,CAAC,SAAc,EAAA;AAC5B,QAAA,IAAI,CAAC,eAAe,GAAG,CAAC,CAAC,SAAS;IACpC;AAEA,IAAA,iBAAiB,CAAC,SAAc,EAAA;AAC9B,QAAA,IAAI,CAAC,eAAe,GAAG,KAAK;IAC9B;8GAXW,0BAA0B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;kGAA1B,0BAA0B,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,yBAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECjBvC,gRAWA,EAAA,MAAA,EAAA,CAAA,wBAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EDIuB,YAAY,EAAA,QAAA,EAAA,eAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,kBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,UAAA,EAAA,YAAA,EAAA,QAAA,EAAA,QAAA,CAAA,EAAA,QAAA,EAAA,CAAA,QAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;;2FAEtB,0BAA0B,EAAA,UAAA,EAAA,CAAA;kBAPtC,SAAS;+BACE,yBAAyB,EAAA,eAAA,EAGlB,uBAAuB,CAAC,MAAM,WACtC,CAAC,SAAS,EAAE,YAAY,CAAC,EAAA,QAAA,EAAA,gRAAA,EAAA,MAAA,EAAA,CAAA,wBAAA,CAAA,EAAA;;;;;;;;AERpC;AAEA,MAAM,cAAc,IAAGE,gBAAyC,CAAA;AAChE,MAAMF,GAAC,GAAG,WAAW,CAAC,GAAG,CAAC,2DAA2D,EAAE,EAAC,gEAAgE,EAAC,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,+EAA2D,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,+EAA2D,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,+EAA2D,CAAC,EAAE,OAAO,EAAC,EAAC,8DAA8D,EAAC,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,6EAAyD,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,6EAAyD,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,6EAAyD,CAAC,EAAE,OAAO,EAAC,EAAC,2DAA2D,EAAC,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,0EAAsD,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,0EAAsD,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,0EAAsD,CAAC,EAAE,OAAO,EAAC,EAAQ,CAAC;AAE9qC,MAAM,uBAAuB,GAAW;AAC7C,IAAA;AACE,QAAA,IAAI,EAAE,EAAE;AACR,QAAA,aAAa,EAAE,MACb,2EAAyC,CAAC,IAAI,CAC5C,CAAC,IAAI,CAAC,CAAC,0BAA0B,CAClC;AAEH,QAAA,QAAQ,EAAE;AACR,YAAA,cAAc,CAAC;AACb,gBAAA,UAAU,EAAE,CAAC,EAAE,OAAO,EAAE,KAAI;;AAE1B,oBAAA,OAAO,CAAC,OAAO,EAAE,SAAS,CAAC,WAAW;gBACxC,CAAC;AACD,gBAAA,IAAI,EAAE,kBAAkB;gBACxB,QAAQ,EAAEA,GAAC,CAAC,MAAM,CAAC,OAAO,CAAC,kBAAkB,CAAC;AAC9C,gBAAA,UAAU,EAAE,KAAK;AACjB,gBAAA,IAAI,EAAE,WAAW;AACjB,gBAAA,MAAM,EAAE,MACN,6EAAsE,CAAC,IAAI,CACzE,CAAC,IAAI,CAAC,CAAC,4BAA4B,CACpC;aACJ,CAAC;AACF,YAAA,cAAc,CAAC;AACb,gBAAA,UAAU,EAAE,CAAC,EAAE,OAAO,EAAE,KAAI;;AAE1B,oBAAA,OAAO,CAAC,OAAO,EAAE,SAAS,CAAC,WAAW;gBACxC,CAAC;AACD,gBAAA,IAAI,EAAE,OAAO;gBACb,QAAQ,EAAEA,GAAC,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC;AACnC,gBAAA,UAAU,EAAE,IAAI;AAChB,gBAAA,IAAI,EAAE,MAAM;AACZ,gBAAA,MAAM,EAAE,MACN,uDAAkB,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,4BAA4B,CAAC;aAC/D,CAAC;AACF,YAAA,cAAc,CAAC;AACb,gBAAA,UAAU,EAAE,CAAC,EAAE,OAAO,EAAE,KAAI;;AAE1B,oBAAA,OAAO,CAAC,OAAO,EAAE,SAAS,CAAC,WAAW;gBACxC,CAAC;AACD,gBAAA,IAAI,EAAE,SAAS;gBACf,QAAQ,EAAEA,GAAC,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC;AACrC,gBAAA,UAAU,EAAE,KAAK;AACjB,gBAAA,IAAI,EAAE,QAAQ;AACd,gBAAA,MAAM,EAAE,MACN,uDAAkB,CAAC,IAAI,CACrB,CAAC,IAAI,CAAC,CAAC,6BAA6B,CACrC;aACJ,CAAC;AACF,YAAA,cAAc,CAAC;AACb,gBAAA,UAAU,EAAE,CAAC,EAAE,OAAO,EAAE,KAAI;;AAE1B,oBAAA,OAAO,CAAC,OAAO,EAAE,SAAS,CAAC,WAAW;gBACxC,CAAC;AACD,gBAAA,IAAI,EAAE,UAAU;gBAChB,QAAQ,EAAEA,GAAC,CAAC,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC;AACtC,gBAAA,UAAU,EAAE,IAAI;AAChB,gBAAA,IAAI,EAAE,SAAS;AACf,gBAAA,MAAM,EAAE,MACN,uDAAkB,CAAC,IAAI,CACrB,CAAC,IAAI,CAAC,CAAC,+BAA+B,CACvC;aACJ,CAAC;AACF,YAAA,cAAc,CAAC;AACb,gBAAA,UAAU,EAAE,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,SAAS,CAAC,WAAW;AAC5D,gBAAA,IAAI,EAAE,QAAQ;gBACd,QAAQ,EAAEA,GAAC,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC;AACpC,gBAAA,UAAU,EAAE,KAAK;AACjB,gBAAA,IAAI,EAAE,YAAY;AAClB,gBAAA,MAAM,EAAE,MACN,8EAAyE,CAAC,IAAI,CAC5E,CAAC,IAAI,CAAC,CAAC,6BAA6B,CACrC;aACJ,CAAC;AACF,YAAA,cAAc,CAAC;AACb,gBAAA,UAAU,EAAE,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,SAAS,CAAC,WAAW;AAC5D,gBAAA,IAAI,EAAE,YAAY;gBAClB,QAAQ,EAAEA,GAAC,CAAC,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC;AACxC,gBAAA,UAAU,EAAE,KAAK;AACjB,gBAAA,IAAI,EAAE,QAAQ;AACd,gBAAA,MAAM,EAAE,MACN,gFAA6E,CAAC,IAAI,CAChF,CAAC,IAAI,CAAC,CAAC,iCAAiC,CACzC;aACJ,CAAC;AACF,YAAA,cAAc,CAAC;AACb,gBAAA,UAAU,EAAE,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,SAAS,CAAC,WAAW;AAC5D,gBAAA,IAAI,EAAE,MAAM;gBACZ,QAAQ,EAAEA,GAAC,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC;AAClC,gBAAA,UAAU,EAAE,KAAK;AACjB,gBAAA,IAAI,EAAE,OAAO;AACb,gBAAA,MAAM,EAAE,MACN,gFAA6E,CAAC,IAAI,CAChF,CAAC,IAAI,CAAC,CAAC,2BAA2B,CACnC;aACJ,CAAC;;;;;;;;;AASH,SAAA;AACF,KAAA;;AAGH;;;;AAIG;AACH;;ACnHM,MAAO,yBAA0B,SAAQ,sBAAsB,CAAA;AADrE,IAAA,WAAA,GAAA;;AAEqB,QAAA,IAAA,CAAA,yBAAyB,GAAG,IAAI,CAAC,gBAAgB,CAClE,yBAAyB,CAC1B;AAwBF,IAAA;AAtBC,IAAA,IAAW,cAAc,GAAA;QACvB,OAAO,IAAI,CAAC,yBAAyB,CAAC,MAAM,EAAE,CAAC,OAAQ,EAAE,CAAC,UAAU,CAAC,IAAI,CACvE,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,CAC3B;IACH;IAEA,IAAI,CACF,EAAiB,EACjB,KAA4B,EAAA;QAE5B,OAAO,IAAI,CAAC;AACT,aAAA,YAAY,CAAC,EAAE,EAAE,KAAK;AACtB,aAAA,OAAO;AACP,aAAA,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC/C;AAEA,IAAA,MAAM,CAAC,EAAU,EAAA;QACf,OAAO,IAAI,CAAC;aACT,cAAc,CAAC,EAAE;AACjB,aAAA,OAAO;aACP,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,SAAS,CAAC,CAAC;IAC1C;8GA1BW,yBAAyB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;kHAAzB,yBAAyB,EAAA,CAAA,CAAA;;2FAAzB,yBAAyB,EAAA,UAAA,EAAA,CAAA;kBADrC;;;ACPM,MAAM,6BAA6B,GAAG;AAC3C,IAAA,WAAW,EAAE,EAAE;AACf,IAAA,OAAO,EAAE,CAAC;IACV,EAAE,EAAE,KAAK,CAAC;;;ICLA;AAAZ,CAAA,UAAY,oBAAoB,EAAA;AAC9B,IAAA,oBAAA,CAAA,QAAA,CAAA,GAAA,QAAiB;AACjB,IAAA,oBAAA,CAAA,UAAA,CAAA,GAAA,UAAqB;AACvB,CAAC,EAHW,oBAAoB,KAApB,oBAAoB,GAAA,EAAA,CAAA,CAAA;;ACE1B,IAAW;AAAjB,CAAA,UAAiB,oBAAoB,EAAA;IACnC,SAAgB,QAAQ,CAAC,KAAa,EAAA;QACpC,OAAO,KAAK,KAAK,QAAQ;IAC3B;AAFgB,IAAA,oBAAA,CAAA,QAAQ,WAEvB;AACH,CAAC,EAJgB,oBAAoB,KAApB,oBAAoB,GAAA,EAAA,CAAA,CAAA;;ACGrC,MAAMA,GAAC,GAAG,WAAW,CAAC,GAAG,CAAC,2DAA2D,EAAE,EAAC,2DAA2D,EAAC,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,4EAAwD,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,4EAAwD,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,4EAAwD,CAAC,EAAE,OAAO,EAAC,EAAC,2DAA2D,EAAC,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,4EAAwD,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,4EAAwD,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,4EAAwD,CAAC,EAAE,OAAO,EAAC,EAAC,2DAA2D,EAAC,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,4EAAwD,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,4EAAwD,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,4EAAwD,CAAC,EAAE,OAAO,EAAC,EAAQ,CAAC;AAajqC,SAAU,gBAAgB,CAAC,KAA4B,EAAA;AAC3D,IAAA,IACE,CAAC,KAAK;AACN,QAAA,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ;AAC9B,QAAA,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE;AAClB,QAAA,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ;AAC9B,QAAA,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE;AAClB,SAAC,KAAK,CAAC,WAAW,KAAK,IAAI,IAAI,OAAO,KAAK,CAAC,WAAW,KAAK,QAAQ,CAAC,EACrE;QACA,YAAY,CACVA,GAAC,CAAC,OAAO,CAAC,mDAAmD,CAAC,CAC/D;IACH;AACF;SAEgB,yBAAyB,CACvC,EAAiB,EACjB,QAAuB,EACvB,UAA6D,EAAA;AAE7D,IAAA,MAAM,OAAO,GAAG,IAAI,GAAG,EAAU;AACjC,IAAA,IAAI,EAAE,KAAK,IAAI,EAAE;AACf,QAAA,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;IACjB;IACA,IAAI,OAAO,GAAG,QAAQ;AACtB,IAAA,OAAO,OAAO,KAAK,IAAI,EAAE;AACvB,QAAA,IAAI,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE;YACxB,YAAY,CAACA,GAAC,CAAC,OAAO,CAAC,wCAAwC,CAAC,CAAC;QACnE;AACA,QAAA,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC;AACpB,QAAA,MAAM,MAAM,GAAG,UAAU,CAAC,IAAI,CAAC,QAAQ,IAAI,QAAQ,CAAC,EAAE,KAAK,OAAO,CAAC;QACnE,IAAI,CAAC,MAAM,EAAE;YACX,YAAY,CAACA,GAAC,CAAC,OAAO,CAAC,qCAAqC,CAAC,CAAC;QAChE;AACA,QAAA,OAAO,GAAG,MAAM,CAAC,gBAAgB;IACnC;AACF;;AC1CM,MAAO,wBAAyB,SAAQ,sBAAsB,CAAA;AADpE,IAAA,WAAA,GAAA;;AAEqB,QAAA,IAAA,CAAA,wBAAwB,GAAG,IAAI,CAAC,gBAAgB,CACjE,wBAAwB,CACzB;AAmIF,IAAA;IAjIC,MAAM,WAAW,CAAC,SAAiB,EAAA;AACjC,QAAA,MAAM,QAAQ,GACZ,MAAM,IAAI,CAAC,wBAAwB,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC,OAAQ,EAAE;AACvE,QAAA,IAAI,QAAQ,CAAC,UAAU,IAAI,GAAG,EAAE;YAC9B,MAAM,IAAI,KAAK,CAAC,QAAQ,CAAC,YAAY,IAAI,0BAA0B,CAAC;QACtE;AACA,QAAA,OAAO,QAAQ,CAAC,IAAI,EAAE,IAAI,IAAI,EAAE;IAClC;AAEA,IAAA,MAAM,aAAa,CACjB,SAAiB,EACjB,IAAY,EAAA;QAEZ,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,wBAAwB,CAAC,aAAa,CAAC;YACjE,SAAS;YACT,IAAI;SACL,CAAC,CAAC,OAAQ,EAAE;AACb,QAAA,IAAI,QAAQ,CAAC,UAAU,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,EAAE;YACtD,MAAM,IAAI,KAAK,CAAC,QAAQ,CAAC,YAAY,IAAI,4BAA4B,CAAC;QACxE;AACA,QAAA,OAAO,QAAQ,CAAC,IAAI,CAAC,IAAI;IAC3B;IAEA,MAAM,aAAa,CAAC,EAAU,EAAA;AAC5B,QAAA,MAAM,QAAQ,GACZ,MAAM,IAAI,CAAC,wBAAwB,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC,OAAQ,EAAE;AAClE,QAAA,IAAI,QAAQ,CAAC,UAAU,IAAI,GAAG,EAAE;YAC9B,MAAM,IAAI,KAAK,CAAC,QAAQ,CAAC,YAAY,IAAI,+BAA+B,CAAC;QAC3E;IACF;AAEA,IAAA,MAAM,IAAI,CAAC,EAAU,EAAE,KAAa,EAAA;QAClC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,wBAAwB,CAAC,WAAW,CAAC;AAC/D,YAAA,SAAS,EAAE,EAAE;YACb,KAAK;SACN,CAAC,CAAC,OAAQ,EAAE;AACb,QAAA,IAAI,QAAQ,CAAC,UAAU,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,EAAE;YACtD,MAAM,IAAI,KAAK,CACb,QAAQ,CAAC,YAAY,IAAI,gCAAgC,CAC1D;QACH;AACA,QAAA,OAAO,QAAQ,CAAC,IAAI,CAAC,IAAI;IAC3B;IAEA,MAAM,UAAU,CAAC,EAAU,EAAA;AACzB,QAAA,MAAM,QAAQ,GACZ,MAAM,IAAI,CAAC,wBAAwB,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,OAAQ,EAAE;AAC/D,QAAA,IAAI,QAAQ,CAAC,UAAU,IAAI,GAAG,EAAE;YAC9B,MAAM,IAAI,KAAK,CAAC,QAAQ,CAAC,YAAY,IAAI,+BAA+B,CAAC;QAC3E;IACF;IAEA,MAAM,qBAAqB,CAAC,OAM3B,EAAA;AACC,QAAA,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,wBAAwB,CAAC,qBAAqB,CACxE,OAAO,CAAC,UAAU,EAClB,OAAO,CAAC,QAAQ,EAChB,OAAO,CAAC,EAAE,EACV,OAAO,CAAC,IAAI,EACZ,OAAO,CAAC,MAAM,CACf,CAAC,OAAQ,EAAE;AACZ,QAAA,IAAI,QAAQ,CAAC,UAAU,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,EAAE;YACtD,MAAM,IAAI,KAAK,CAAC,QAAQ,CAAC,YAAY,IAAI,8BAA8B,CAAC;QAC1E;AACA,QAAA,OAAO,QAAQ,CAAC,IAAI,CAAC,IAAI;IAC3B;AAEA,IAAA,MAAM,eAAe,GAAA;AACnB,QAAA,MAAM,QAAQ,GACZ,MAAM,IAAI,CAAC,wBAAwB,CAAC,eAAe,EAAE,CAAC,OAAQ,EAAE;AAClE,QAAA,IAAI,QAAQ,CAAC,UAAU,IAAI,GAAG,EAAE;YAC9B,MAAM,IAAI,KAAK,CAAC,QAAQ,CAAC,YAAY,IAAI,+BAA+B,CAAC;QAC3E;AACA,QAAA,OAAO,QAAQ,CAAC,IAAI,EAAE,IAAI,IAAI,EAAE;IAClC;AAEA,IAAA,MAAM,cAAc,CAAC,MAAc,EAAE,OAAgB,EAAA;QACnD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,wBAAwB,CAAC,cAAc,CAAC;YAClE,MAAM;YACN,OAAO;SACR,CAAC,CAAC,OAAQ,EAAE;AACb,QAAA,IAAI,QAAQ,CAAC,UAAU,IAAI,GAAG,EAAE;YAC9B,MAAM,IAAI,KAAK,CACb,QAAQ,CAAC,YAAY,IAAI,kCAAkC,CAC5D;QACH;IACF;AAEA,IAAA,MAAM,iBAAiB,GAAA;AACrB,QAAA,MAAM,QAAQ,GACZ,MAAM,IAAI,CAAC,wBAAwB,CAAC,iBAAiB,EAAE,CAAC,OAAQ,EAAE;AACpE,QAAA,IAAI,QAAQ,CAAC,UAAU,IAAI,GAAG,EAAE;YAC9B,MAAM,IAAI,KAAK,CACb,QAAQ,CAAC,YAAY,IAAI,iCAAiC,CAC3D;QACH;AACA,QAAA,OAAO,QAAQ,CAAC,IAAI,EAAE,IAAI,IAAI,EAAE;IAClC;IAEA,MAAM,gBAAgB,CAAC,MAAc,EAAA;AACnC,QAAA,MAAM,QAAQ,GACZ,MAAM,IAAI,CAAC,wBAAwB,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC,OAAQ,EAAE;AACzE,QAAA,IAAI,QAAQ,CAAC,UAAU,IAAI,GAAG,EAAE;YAC9B,MAAM,IAAI,KAAK,CACb,QAAQ,CAAC,YAAY,IAAI,mCAAmC,CAC7D;QACH;IACF;IAEA,MAAM,mBAAmB,CAAC,EAAU,EAAA;AAClC,QAAA,MAAM,QAAQ,GACZ,MAAM,IAAI,CAAC,wBAAwB,CAAC,mBAAmB,CAAC,EAAE,CAAC,CAAC,OAAQ,EAAE;AACxE,QAAA,IAAI,QAAQ,CAAC,UAAU,IAAI,GAAG,EAAE;YAC9B,MAAM,IAAI,KAAK,CACb,QAAQ,CAAC,YAAY,IAAI,sCAAsC,CAChE;QACH;IACF;AAEA,IAAA,IAAW,cAAc,GAAA;QACvB,OAAO,IAAI,CAAC,wBAAwB,CAAC,MAAM,EAAE,CAAC,OAAQ,EAAE,CAAC,UAAU,CAAC,IAAI,CACtE,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,CAC3B;IACH;8GArIW,wBAAwB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;kHAAxB,wBAAwB,EAAA,CAAA,CAAA;;2FAAxB,wBAAwB,EAAA,UAAA,EAAA,CAAA;kBADpC;;;ACTM,MAAM,4BAA4B,GAAG;AAC1C,IAAA,WAAW,EAAE,EAAE;AACf,IAAA,OAAO,EAAE,CAAC;IACV,EAAE,EAAE,KAAK,CAAC;;;ICLA;AAAZ,CAAA,UAAY,mBAAmB,EAAA;AAC7B,IAAA,mBAAA,CAAA,QAAA,CAAA,GAAA,QAAiB;AACjB,IAAA,mBAAA,CAAA,UAAA,CAAA,GAAA,UAAqB;AACvB,CAAC,EAHW,mBAAmB,KAAnB,mBAAmB,GAAA,EAAA,CAAA,CAAA;;ACEzB,IAAW;AAAjB,CAAA,UAAiB,mBAAmB,EAAA;IAClC,SAAgB,QAAQ,CAAC,KAAa,EAAA;QACpC,OAAO,KAAK,KAAK,QAAQ;IAC3B;AAFgB,IAAA,mBAAA,CAAA,QAAQ,WAEvB;AACH,CAAC,EAJgB,mBAAmB,KAAnB,mBAAmB,GAAA,EAAA,CAAA,CAAA;;ACgBpC,MAAMA,GAAC,GAAG,WAAW,CAAC,GAAG,CAAC,yDAAyD,EAAE,EAAC,yDAAyD,EAAC,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,2EAAuD,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,2EAAuD,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,2EAAuD,CAAC,EAAE,OAAO,EAAC,EAAC,2DAA2D,EAAC,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,6EAAyD,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,6EAAyD,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,6EAAyD,CAAC,EAAE,OAAO,EAAC,EAAC,yDAAyD,EAAC,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,2EAAuD,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,2EAAuD,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,2EAAuD,CAAC,EAAE,OAAO,EAAC,EAAQ,CAAC;MAUjpC,wBAAwB,CAAA;AAqBnC,IAAA,WAAA,GAAA;AApBS,QAAA,IAAA,CAAA,CAAC,GAAGA,GAAC,CAAC,GAAG,CAAC,IAAI,CAAC;AAEf,QAAA,IAAA,CAAA,SAAS,GAAG,KAAK,CAAgB,IAAI,qDAAC;AAE9B,QAAA,IAAA,CAAA,GAAG,GAAG,MAAM,CAAC,wBAAwB,CAAC;AAEtC,QAAA,IAAA,CAAA,UAAU,GAAG,MAAM,CAAC,qBAAqB,CAAC;AAElD,QAAA,IAAA,CAAA,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE;AAEpC,QAAA,IAAA,CAAA,QAAQ,GAAG,MAAM,CAAoB,EAAE,oDAAC;AAExC,QAAA,IAAA,CAAA,IAAI,GAAG,MAAM,CAAC,EAAE,gDAAC;AAEjB,QAAA,IAAA,CAAA,OAAO,GAAG,MAAM,CAAC,KAAK,mDAAC;AAEvB,QAAA,IAAA,CAAA,MAAM,GAAG,MAAM,CAAC,KAAK,kDAAC;AAEtB,QAAA,IAAA,CAAA,KAAK,GAAG,MAAM,CAAC,EAAE,iDAAC;QAGzB,MAAM,CAAC,MAAK;AACV,YAAA,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,EAAE;YAClC,IAAI,SAAS,EAAE;AACb,gBAAA,KAAK,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC;YAC3B;AACF,QAAA,CAAC,CAAC;IACJ;AAEA,IAAA,OAAO,CAAC,KAAY,EAAA;AAClB,QAAA,IAAI,CAAC,IAAI,CAAC,GAAG,CAAE,KAAK,CAAC,MAA8B,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;IAC1E;IAEA,MAAM,MAAM,CAAC,KAAY,EAAA;QACvB,KAAK,CAAC,cAAc,EAAE;AACtB,QAAA,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,EAAE;AAClC,QAAA,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,IAAI,EAAE,IAAI,IAAI,CAAC,MAAM,EAAE,EAAE;YACtD;QACF;AACA,QAAA,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC;AACrB,QAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;AAClB,QAAA,IAAI;AACF,YAAA,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,SAAS,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC;AACpE,YAAA,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,QAAQ,IAAI,CAAC,GAAG,QAAQ,EAAE,OAAO,CAAC,CAAC;AACxD,YAAA,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;QACnB;QAAE,OAAO,KAAK,EAAE;AACd,YAAA,OAAO,CAAC,KAAK,CAAC,8CAA8C,EAAE,KAAK,CAAC;AACpE,YAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CACZ,KAAK,YAAY;kBACb,KAAK,CAAC;kBACN,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,4BAA4B,CAAC,CACjD;QACH;gBAAU;AACR,YAAA,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC;QACxB;IACF;AAEA,IAAA,MAAM,IAAI,CAAC,OAAwB,EAAE,KAAa,EAAA;AAChD,QAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;AAClB,QAAA,IAAI;AACF,YAAA,IAAI,CAAC,OAAO,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;QACtD;QAAE,OAAO,KAAK,EAAE;AACd,YAAA,OAAO,CAAC,KAAK,CAAC,+CAA+C,EAAE,KAAK,CAAC;AACrE,YAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CACZ,KAAK,YAAY;kBACb,KAAK,CAAC;kBACN,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,gCAAgC,CAAC,CACrD;QACH;IACF;IAEA,MAAM,MAAM,CAAC,OAAwB,EAAA;AACnC,QAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;AAClB,QAAA,IAAI;YACF,MAAM,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;YACrC,IAAI,CAAC,OAAO,CAAC;AACX,gBAAA,GAAG,OAAO;AACV,gBAAA,mBAAmB,EAAE,IAAI;AACzB,gBAAA,WAAW,EAAE,OAAO,CAAC,WAAW,GAAG,CAAC;AAC9B,aAAA,CAAC;QACX;QAAE,OAAO,KAAK,EAAE;AACd,YAAA,OAAO,CAAC,KAAK,CAAC,8CAA8C,EAAE,KAAK,CAAC;AACpE,YAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CACZ,KAAK,YAAY;kBACb,KAAK,CAAC;kBACN,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,+BAA+B,CAAC,CACpD;QACH;IACF;IAEA,MAAM,MAAM,CAAC,OAAwB,EAAA;AACnC,QAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;AAClB,QAAA,IAAI;YACF,MAAM,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,OAAO,CAAC,EAAE,CAAC;YACxC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,QAAQ,IAC3B,QAAQ,CAAC,MAAM,CAAC,IAAI,IAAI,IAAI,CAAC,EAAE,KAAK,OAAO,CAAC,EAAE,CAAC,CAChD;QACH;QAAE,OAAO,KAAK,EAAE;AACd,YAAA,OAAO,CAAC,KAAK,CAAC,8CAA8C,EAAE,KAAK,CAAC;AACpE,YAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CACZ,KAAK,YAAY;kBACb,KAAK,CAAC;kBACN,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,+BAA+B,CAAC,CACpD;QACH;IACF;IAEA,SAAS,CACP,OAAwB,EACxB,OAAiD,EAAA;AAEjD,QAAA,QACE,MAAM,CAAC,OAAO,EAAE,IAAI,EAAE,EAAE,CAAC,KAAK,OAAO,CAAC,MAAM;AAC5C,YAAA,CAAC,CAAC,OAAO,EAAE,SAAS,EAAE,WAAW;IAErC;IAEQ,MAAM,IAAI,CAAC,SAAiB,EAAA;AAClC,QAAA,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC;AACtB,QAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;AAClB,QAAA,IAAI;AACF,YAAA,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;QAC1D;QAAE,OAAO,KAAK,EAAE;AACd,YAAA,OAAO,CAAC,KAAK,CAAC,6CAA6C,EAAE,KAAK,CAAC;AACnE,YAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CACZ,KAAK,YAAY;kBACb,KAAK,CAAC;kBACN,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,0BAA0B,CAAC,CAC/C;QACH;gBAAU;AACR,YAAA,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC;QACzB;IACF;AAEQ,IAAA,OAAO,CAAC,OAAwB,EAAA;AACtC,QAAA,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,IACxB,KAAK,CAAC,GAAG,CAAC,IAAI,KAAK,IAAI,CAAC,EAAE,KAAK,OAAO,CAAC,EAAE,GAAG,OAAO,GAAG,IAAI,CAAC,CAAC,CAC7D;IACH;8GA3IW,wBAAwB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAxB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,wBAAwB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,mBAAA,EAAA,MAAA,EAAA,EAAA,SAAA,EAAA,EAAA,iBAAA,EAAA,WAAA,EAAA,UAAA,EAAA,WAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,SAAA,EAJxB,CAAC,wBAAwB,EAAE,qBAAqB,CAAC,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECxB9D,mhGA+FA,EAAA,MAAA,EAAA,CAAA,qWAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EDxEiC,eAAe,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,SAAA,EAAA,QAAA,EAAA,iOAAA,EAAA,MAAA,EAAA,CAAA,WAAA,CAAA,EAAA,QAAA,EAAA,CAAA,WAAA,EAAA,WAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAApC,SAAS,yCAAE,QAAQ,EAAA,IAAA,EAAA,MAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;;2FAKlB,wBAAwB,EAAA,UAAA,EAAA,CAAA;kBARpC,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,mBAAmB,mBACZ,uBAAuB,CAAC,MAAM,EAAA,OAAA,EACtC,CAAC,SAAS,EAAE,QAAQ,EAAE,eAAe,CAAC,EAAA,SAAA,EACpC,CAAC,wBAAwB,EAAE,qBAAqB,CAAC,EAAA,QAAA,EAAA,mhGAAA,EAAA,MAAA,EAAA,CAAA,qWAAA,CAAA,EAAA;;;AElBxD,MAAO,2BAA4B,SAAQ,sBAAsB,CAAA;AADvE,IAAA,WAAA,GAAA;;AAEE,QAAA,IAAA,CAAA,sBAAsB,GAAG,IAAI,CAAC,cAAc,CAAC,sBAAsB,CAAC;AAKrE,IAAA;AAHC,IAAA,IAAI,QAAQ,GAAA;AACV,QAAA,OAAO,IAAI,CAAC,sBAAsB,CAAC,QAAQ;IAC7C;8GALW,2BAA2B,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;kHAA3B,2BAA2B,EAAA,CAAA,CAAA;;2FAA3B,2BAA2B,EAAA,UAAA,EAAA,CAAA;kBADvC;;;ACFM,MAAM,4BAA4B,GAAG;AAC1C,IAAA,WAAW,EAAE,EAAE;AACf,IAAA,OAAO,EAAE,CAAC;IACV,EAAE,EAAE,KAAK,CAAC;IACV,IAAI,EAAE,kBAAkB,CAAC,MAAM;AAC/B,IAAA,QAAQ,EAAE,IAAI;AACd,IAAA,QAAQ,EAAE,IAAI;AACd,IAAA,aAAa,EAAE,IAAI;AACnB,IAAA,YAAY,EAAE,IAAI;;;ACRd,IAAW;AAAjB,CAAA,UAAiB,mBAAmB,EAAA;AAClC,IAAA,SAAgB,iBAAiB,CAC/B,KAA6B,EAC7B,GAAa,EAAA;QAEb,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,KAAK,KAAK,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC,CAAC;QAC9D,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,KACd,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,GAAG,CAAC,MAAM;AAClC,aAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,GAAG,CAAC,MAAM,CAAC,CACpC;IACH;AATgB,IAAA,mBAAA,CAAA,iBAAiB,oBAShC;IAED,SAAgB,QAAQ,CAAC,KAAa,EAAA;QACpC,OAAO,KAAK,KAAK,QAAQ;IAC3B;AAFgB,IAAA,mBAAA,CAAA,QAAQ,WAEvB;AACH,CAAC,EAfgB,mBAAmB,KAAnB,mBAAmB,GAAA,EAAA,CAAA,CAAA;;ACiBpC;;;AAGG;AACG,SAAU,wBAAwB,CACtC,OAAkC,EAClC,OAA+B,EAAA;AAE/B,IAAA,MAAM,MAAM,GAAG,IAAI,GAAG,CAA6C;AACjE,QAAA,CAAC,aAAa,EAAE,OAAO,CAAC,WAAW,CAAC;AACpC,QAAA,CAAC,WAAW,EAAE,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC;QACjC,CAAC,aAAa,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;AACzC,QAAA,CAAC,YAAY,EAAE,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC;AACnC,QAAA,CAAC,UAAU,EAAE,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC;AAC/B,QAAA,CAAC,SAAS,EAAE,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC;AAC7B,QAAA,CAAC,mBAAmB,EAAE,OAAO,CAAC,IAAI,EAAE,YAAY,CAAC;AAClD,KAAA,CAAC;AACF,IAAA,OAAO,CAAC,OAAO,IAAI,EAAE,EAAE,OAAO,CAC5B,kEAAkE,EAClE,CAAC,WAAmB,EAAE,IAAY,KAAI;QACpC,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC;QAC9B,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS,EAAE;AACzC,YAAA,OAAO,WAAW;QACpB;QACA,OAAO,MAAM,CAAC,KAAK;AAChB,aAAA,OAAO,CAAC,IAAI,EAAE,OAAO;AACrB,aAAA,OAAO,CAAC,IAAI,EAAE,MAAM;AACpB,aAAA,OAAO,CAAC,IAAI,EAAE,MAAM;AACpB,aAAA,OAAO,CAAC,IAAI,EAAE,QAAQ;AACtB,aAAA,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC;AAC3B,IAAA,CAAC,CACF;AACH;;AC3CM,MAAO,6BAA8B,SAAQ,sBAAsB,CAAA;AADzE,IAAA,WAAA,GAAA;;AAEqB,QAAA,IAAA,CAAA,6BAA6B,GAAG,IAAI,CAAC,gBAAgB,CACtE,6BAA6B,CAC9B;AAWF,IAAA;AATC,IAAA,IAAW,cAAc,GAAA;AACvB,QAAA,OAAO,IAAI,CAAC,6BAA6B,CAAC,MAAM;AAC7C,aAAA,OAAQ,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IAC3D;AAEO,IAAA,UAAU,CAAC,IAAY,EAAA;AAC5B,QAAA,OAAO,IAAI,CAAC,6BAA6B,CAAC,SAAS,CAAC,IAAI;AACrD,aAAA,OAAQ,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,YAAsB,CAAC,CAAC;IACvE;8GAbW,6BAA6B,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;kHAA7B,6BAA6B,EAAA,CAAA,CAAA;;2FAA7B,6BAA6B,EAAA,UAAA,EAAA,CAAA;kBADzC;;;ACNM,MAAM,iCAAiC,GAAG;AAC/C,IAAA,WAAW,EAAE,EAAE;AACf,IAAA,OAAO,EAAE,CAAC;IACV,EAAE,EAAE,KAAK,CAAC;;;ICLA;AAAZ,CAAA,UAAY,wBAAwB,EAAA;AAClC,IAAA,wBAAA,CAAA,QAAA,CAAA,GAAA,QAAiB;AACjB,IAAA,wBAAA,CAAA,UAAA,CAAA,GAAA,UAAqB;AACvB,CAAC,EAHW,wBAAwB,KAAxB,wBAAwB,GAAA,EAAA,CAAA,CAAA;;ACE9B,IAAW;AAAjB,CAAA,UAAiB,wBAAwB,EAAA;IACvC,SAAgB,QAAQ,CAAC,KAAa,EAAA;QACpC,OAAO,KAAK,KAAK,QAAQ;IAC3B;AAFgB,IAAA,wBAAA,CAAA,QAAQ,WAEvB;AACH,CAAC,EAJgB,wBAAwB,KAAxB,wBAAwB,GAAA,EAAA,CAAA,CAAA;;ACOnC,MAAO,kCAAmC,SAAQ,sBAAsB,CAAA;AAD9E,IAAA,WAAA,GAAA;;AAEqB,QAAA,IAAA,CAAA,kCAAkC,GAAG,IAAI,CAAC,gBAAgB,CAC3E,kCAAkC,CACnC;AAWF,IAAA;AATC,IAAA,IAAW,cAAc,GAAA;AACvB,QAAA,OAAO,IAAI,CAAC,kCAAkC,CAAC,MAAM;AAClD,aAAA,OAAQ,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IAC3D;AAEO,IAAA,UAAU,CAAC,IAAY,EAAA;AAC5B,QAAA,OAAO,IAAI,CAAC,kCAAkC,CAAC,SAAS,CAAC,IAAI;AAC1D,aAAA,OAAQ,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,YAAsB,CAAC,CAAC;IACvE;8GAbW,kCAAkC,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;kHAAlC,kCAAkC,EAAA,CAAA,CAAA;;2FAAlC,kCAAkC,EAAA,UAAA,EAAA,CAAA;kBAD9C;;;ACNM,MAAM,sCAAsC,GAAG;AACpD,IAAA,WAAW,EAAE,EAAE;AACf,IAAA,OAAO,EAAE,CAAC;IACV,EAAE,EAAE,KAAK,CAAC;;;ICLA;AAAZ,CAAA,UAAY,6BAA6B,EAAA;AACvC,IAAA,6BAAA,CAAA,QAAA,CAAA,GAAA,QAAiB;AACjB,IAAA,6BAAA,CAAA,UAAA,CAAA,GAAA,UAAqB;AACvB,CAAC,EAHW,6BAA6B,KAA7B,6BAA6B,GAAA,EAAA,CAAA,CAAA;;ACEnC,IAAW;AAAjB,CAAA,UAAiB,6BAA6B,EAAA;IAC5C,SAAgB,QAAQ,CAAC,KAAa,EAAA;QACpC,OAAO,KAAK,KAAK,QAAQ;IAC3B;AAFgB,IAAA,6BAAA,CAAA,QAAQ,WAEvB;AACH,CAAC,EAJgB,6BAA6B,KAA7B,6BAA6B,GAAA,EAAA,CAAA,CAAA;;ACWxC,MAAO,gCAAiC,SAAQ,sBAAsB,CAAA;AAD5E,IAAA,WAAA,GAAA;;AAEqB,QAAA,IAAA,CAAA,iBAAiB,GAAG,IAAI,CAAC,gBAAgB,CAC1D,wBAAwB,CACzB;AAEkB,QAAA,IAAA,CAAA,gCAAgC,GAAG,IAAI,CAAC,gBAAgB,CACzE,gCAAgC,CACjC;AAoBF,IAAA;AAlBQ,IAAA,aAAa,CAAC,EAAU,EAAA;AAC7B,QAAA,OAAO,IAAI,CAAC,iBAAiB,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC,OAAQ,EAAE,CAAC,UAAU,CAAC,IAAI,CACxE,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAC1B;IACH;IAEO,cAAc,CACnB,EAAU,EACV,KAA4B,EAAA;QAE5B,OAAO,IAAI,CAAC,iBAAiB,CAAC,cAAc,CAAC,EAAE,EAAE,KAAK;AACnD,aAAA,OAAQ,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC1D;AAEA,IAAA,IAAW,cAAc,GAAA;AACvB,QAAA,OAAO,IAAI,CAAC,gCAAgC,CAAC,MAAM;AAChD,aAAA,OAAQ,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IAC3D;8GA1BW,gCAAgC,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;kHAAhC,gCAAgC,EAAA,CAAA,CAAA;;2FAAhC,gCAAgC,EAAA,UAAA,EAAA,CAAA;kBAD5C;;;ACVM,MAAM,oCAAoC,GAAG;AAClD,IAAA,WAAW,EAAE,EAAE;AACf,IAAA,OAAO,EAAE,CAAC;IACV,EAAE,EAAE,KAAK,CAAC;;;ICLA;AAAZ,CAAA,UAAY,2BAA2B,EAAA;AACrC,IAAA,2BAAA,CAAA,QAAA,CAAA,GAAA,QAAiB;AACjB,IAAA,2BAAA,CAAA,UAAA,CAAA,GAAA,UAAqB;AACvB,CAAC,EAHW,2BAA2B,KAA3B,2BAA2B,GAAA,EAAA,CAAA,CAAA;;ACEjC,IAAW;AAAjB,CAAA,UAAiB,2BAA2B,EAAA;IAC1C,SAAgB,QAAQ,CAAC,KAAa,EAAA;QACpC,OAAO,KAAK,KAAK,QAAQ;IAC3B;AAFgB,IAAA,2BAAA,CAAA,QAAQ,WAEvB;AACH,CAAC,EAJgB,2BAA2B,KAA3B,2BAA2B,GAAA,EAAA,CAAA,CAAA;;ACOtC,MAAO,2BAA4B,SAAQ,sBAAsB,CAAA;AADvE,IAAA,WAAA,GAAA;;AAEqB,QAAA,IAAA,CAAA,2BAA2B,GAAG,IAAI,CAAC,gBAAgB,CACpE,2BAA2B,CAC5B;AAOF,IAAA;AALC,IAAA,IAAW,cAAc,GAAA;QACvB,OAAO,IAAI,CAAC,2BAA2B,CAAC,MAAM,EAAE,CAAC,OAAQ,EAAE,CAAC,UAAU,CAAC,IAAI,CACzE,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,CAC3B;IACH;8GATW,2BAA2B,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;kHAA3B,2BAA2B,EAAA,CAAA,CAAA;;2FAA3B,2BAA2B,EAAA,UAAA,EAAA,CAAA;kBADvC;;;ACNM,MAAM,+BAA+B,GAAG;AAC7C,IAAA,WAAW,EAAE,EAAE;AACf,IAAA,OAAO,EAAE,CAAC;IACV,EAAE,EAAE,KAAK,CAAC;;;ICLA;AAAZ,CAAA,UAAY,sBAAsB,EAAA;AAChC,IAAA,sBAAA,CAAA,QAAA,CAAA,GAAA,QAAiB;AACjB,IAAA,sBAAA,CAAA,UAAA,CAAA,GAAA,UAAqB;AACvB,CAAC,EAHW,sBAAsB,KAAtB,sBAAsB,GAAA,EAAA,CAAA,CAAA;;ACE5B,IAAW;AAAjB,CAAA,UAAiB,sBAAsB,EAAA;IACrC,SAAgB,QAAQ,CAAC,KAAa,EAAA;QACpC,OAAO,KAAK,KAAK,QAAQ;IAC3B;AAFgB,IAAA,sBAAA,CAAA,QAAQ,WAEvB;AACH,CAAC,EAJgB,sBAAsB,KAAtB,sBAAsB,GAAA,EAAA,CAAA,CAAA;;ACQjC,MAAO,oBAAqB,SAAQ,sBAAsB,CAAA;AADhE,IAAA,WAAA,GAAA;;AAEmB,QAAA,IAAA,CAAA,oBAAoB,GACnC,IAAI,CAAC,gBAAgB,CAAC,oBAAoB,CAAC;AAyB9C,IAAA;AAvBC,IAAA,IAAI,cAAc,GAAA;QAChB,OAAO,IAAI,CAAC;AACT,aAAA,MAAM;AACN,aAAA,OAAO;AACP,aAAA,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC/C;IAEA,IAAI,CACF,EAAiB,EACjB,KAA4B,EAAA;QAE5B,OAAO,IAAI,CAAC;AACT,aAAA,OAAO,CAAC,EAAE,EAAE,KAAK;AACjB,aAAA,OAAO;AACP,aAAA,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC/C;AAEA,IAAA,MAAM,CAAC,EAAU,EAAA;QACf,OAAO,IAAI,CAAC;aACT,SAAS,CAAC,EAAE;AACZ,aAAA,OAAO;aACP,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,SAAS,CAAC,CAAC;IAC1C;8GA1BW,oBAAoB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;kHAApB,oBAAoB,EAAA,CAAA,CAAA;;2FAApB,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBADhC;;;ACPM,MAAM,wBAAwB,GAAG;AACtC,IAAA,WAAW,EAAE,EAAE;AACf,IAAA,OAAO,EAAE,CAAC;IACV,EAAE,EAAE,KAAK,CAAC;;;ICLA;AAAZ,CAAA,UAAY,eAAe,EAAA;AACzB,IAAA,eAAA,CAAA,QAAA,CAAA,GAAA,QAAiB;AACjB,IAAA,eAAA,CAAA,UAAA,CAAA,GAAA,UAAqB;AACvB,CAAC,EAHW,eAAe,KAAf,eAAe,GAAA,EAAA,CAAA,CAAA;;ACErB,IAAW;AAAjB,CAAA,UAAiB,eAAe,EAAA;IAC9B,SAAgB,QAAQ,CAAC,KAAa,EAAA;QACpC,OAAO,KAAK,KAAK,QAAQ;IAC3B;AAFgB,IAAA,eAAA,CAAA,QAAQ,WAEvB;AACH,CAAC,EAJgB,eAAe,KAAf,eAAe,GAAA,EAAA,CAAA,CAAA;;AC4BhC,MAAMA,GAAC,GAAG,WAAW,CAAC,GAAG,CAAC,gFAAgF,EAAE,EAAC,kFAAkF,EAAC,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,wFAAoE,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,wFAAoE,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,wFAAoE,CAAC,EAAE,OAAO,EAAC,EAAC,gFAAgF,EAAC,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,sFAAkE,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,sFAAkE,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,sFAAkE,CAAC,EAAE,OAAO,EAAC,EAAC,yFAAyF,EAAC,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,+FAA2E,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,+FAA2E,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,+FAA2E,CAAC,EAAE,OAAO,EAAC,EAAQ,CAAC;MAmCp3C,kCAAkC,CAAA;AAhC/C,IAAA,WAAA,GAAA;AAiCW,QAAA,IAAA,CAAA,CAAC,GAAGA,GAAC,CAAC,GAAG,CAAC,IAAI,CAAC;AACf,QAAA,IAAA,CAAA,UAAU,GACjB,MAAM,CAAC,cAAc,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,UAAU;AAChD,QAAA,IAAA,CAAA,UAAU,GAAG,MAAM,CAAC,yBAAyB,CAAC;AAC9C,QAAA,IAAA,CAAA,IAAI,GAAG,MAAM,CAAC,oBAAoB,CAAC;AACnC,QAAA,IAAA,CAAA,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC;AAC/B,QAAA,IAAA,CAAA,MAAM,GAAG,MAAM,CAAC,SAAS,CAAC;AAClC,QAAA,IAAA,CAAA,IAAI,GAAG,MAAM,CAAgB,EAAE,gDAAC;AAChC,QAAA,IAAA,CAAA,IAAI,GAAG,MAAM,CAAC,KAAK,gDAAC;AACpB,QAAA,IAAA,CAAA,KAAK,GAAG,MAAM,CAAC,EAAE,iDAAC;AAClB,QAAA,IAAA,CAAA,OAAO,GAAG,MAAM,CAAC,KAAK,mDAAC;QAChC,IAAA,CAAA,SAAS,GAAkB,IAAI;AAC/B,QAAA,IAAA,CAAA,KAAK,GAA0B,IAAI,CAAC,UAAU,EAAE;AAEvC,QAAA,IAAA,CAAA,OAAO,GAAoB;AAClC,YAAA,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE;AACjE,YAAA,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE;YACjE,IAAI,IAAI,CAAC;AACP,kBAAE;AACE,oBAAA;wBACE,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,iBAAiB,CAAC;AACzC,wBAAA,KAAK,EAAE,YAAY;AACnB,wBAAA,QAAQ,EAAE,IAAI;AACf,qBAAA;AACD,oBAAA;wBACE,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC;AACpC,wBAAA,KAAK,EAAE,WAAW;AAClB,wBAAA,QAAQ,EAAE,IAAI;AACf,qBAAA;AACF;AACH,kBAAE;AACE,oBAAA;wBACE,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC;AACrC,wBAAA,KAAK,EAAE,aAAa;AACpB,wBAAA,QAAQ,EAAE,IAAI;AACf,qBAAA;iBACF,CAAC;AACN,YAAA;gBACE,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC;AACjC,gBAAA,KAAK,EAAE,SAAS;AAChB,gBAAA,IAAI,EAAE,QAAQ;AACd,gBAAA,OAAO,EAAE;AACP,oBAAA;AACE,wBAAA,IAAI,EAAE,MAAM;AACZ,wBAAA,IAAI,EAAE,MAAM;wBACZ,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC;AAC/B,wBAAA,QAAQ,EAAE,MAAM,IAAI,CAAC,IAAI,EAAE;wBAC3B,KAAK,EAAE,CAAC,GAAgB,KAAK,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;AAC5C,qBAAA;AACD,oBAAA;AACE,wBAAA,IAAI,EAAE,MAAM;AACZ,wBAAA,IAAI,EAAE,QAAQ;wBACd,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC;AACjC,wBAAA,QAAQ,EAAE,MAAM,IAAI,CAAC,IAAI,EAAE;wBAC3B,KAAK,EAAE,CAAC,GAAgB,KAAK,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC;AAC9C,qBAAA;AACF,iBAAA;AACF,aAAA;SACF;AAyJF,IAAA;IAvJC,QAAQ,GAAA;QACN,IAAI,CAAC,MAAM,EAAE;IACf;IAEA,MAAM,GAAA;AACJ,QAAA,IAAI,IAAI,CAAC,IAAI,EAAE,EAAE;YACf;QACF;AACA,QAAA,MAAM,OAAO,GAA8B,IAAI,CAAC;AAC9C,cAAE,IAAI,CAAC,UAAU,CAAC;AAClB,cAAE,IAAI,CAAC,IAAI,CAAC,cAAc;AAC5B,QAAA,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAChD;IAEA,SAAS,GAAA;QACP,OAAO,IAAI,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,GAAG,KAAK;AAC7B,YAAA,GAAG,GAAG;YACN,UAAU,EACR,kBAAkB,IAAI;mBACjB,IAAI,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,EAAE,KAAK,GAAG,CAAC,gBAAgB;sBAC1D,IAAI,IAAI,EAAE;AAChB,kBAAE,EAAE;AACT,SAAA,CAAC,CAAC;IACL;IAEA,aAAa,GAAA;AACX,QAAA,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC,MAAM,CACnC,CAAC,GAAG,KAAmC,kBAAkB,IAAI,GAAG,CACjE;AACD,QAAA,OAAO,UAAU,CAAC,MAAM,CAAC,QAAQ,IAAG;AAClC,YAAA,MAAM,OAAO,GAAG,IAAI,GAAG,EAAU;YACjC,IAAI,OAAO,GAAsC,QAAQ;YACzD,OAAO,OAAO,EAAE;AACd,gBAAA,IAAI,OAAO,CAAC,EAAE,KAAK,IAAI,CAAC,SAAS,IAAI,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE;AAC5D,oBAAA,OAAO,KAAK;gBACd;AACA,gBAAA,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;AACvB,gBAAA,OAAO,GAAG,UAAU,CAAC,IAAI,CACvB,MAAM,IAAI,MAAM,CAAC,EAAE,KAAK,OAAO,EAAE,gBAAgB,CAClD;YACH;AACA,YAAA,OAAO,IAAI;AACb,QAAA,CAAC,CAAC;IACJ;AAEA,IAAA,IAAI,CAAC,GAAiB,EAAA;AACpB,QAAA,IAAI,IAAI,CAAC,IAAI,EAAE,EAAE;YACf;QACF;QACA,IAAI,CAAC,SAAS,GAAG,GAAG,EAAE,EAAE,IAAI,IAAI;QAChC,IAAI,CAAC,KAAK,GAAG;AACX,cAAE;gBACE,IAAI,EAAE,GAAG,CAAC,IAAI;gBACd,IAAI,EAAE,GAAG,CAAC,IAAI;gBACd,WAAW,EAAE,GAAG,CAAC,WAAW;AAC5B,gBAAA,gBAAgB,EACd,kBAAkB,IAAI,GAAG,GAAG,GAAG,CAAC,gBAAgB,GAAG,IAAI;AACzD,gBAAA,SAAS,EAAE,WAAW,IAAI,GAAG,GAAG,GAAG,CAAC,SAAS,GAAG,CAAC;AAClD;AACH,cAAE,IAAI,CAAC,UAAU,EAAE;AACrB,QAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;AAClB,QAAA,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC;IACxB;IAEA,IAAI,GAAA;AACF,QAAA,IAAI,IAAI,CAAC,IAAI,EAAE,EAAE;YACf;QACF;AACA,QAAA,MAAM,OAAO,GAA4B,IAAI,CAAC;AAC5C,cAAE,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,KAAK;AACjD,cAAE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC;AAC9C,QAAA,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,KAAK,IAAG;AACxB,YAAA,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC;YACvB,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,IAAI;AACvB,gBAAA,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,IAAI,GAAG,CAAC,EAAE,KAAK,KAAK,CAAC,EAAE,CAAC;gBAC1C,KAAK;AACN,aAAA,CAAC;AACJ,QAAA,CAAC,CAAC;IACJ;AAEA,IAAA,MAAM,CAAC,GAAgB,EAAA;AACrB,QAAA,IAAI,IAAI,CAAC,IAAI,EAAE,EAAE;YACf;QACF;AACA,QAAA,IAAI,CAAC;aACF,IAAI,CAAC,0BAA0B,EAAE;AAChC,YAAA,IAAI,EAAE;gBACJ,KAAK,EAAE,IAAI,CAAC;sBACR,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,kBAAkB;sBACjC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC;gBACjC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,OAAO,CACrB,0DAA0D,CAC3D;gBACD,WAAW,EAAE,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC;AACtC,aAAA;SACF;AACA,aAAA,WAAW;AACX,aAAA,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,UAAU,CAAC;aACxC,SAAS,CAAC,SAAS,IAAG;YACrB,IAAI,SAAS,EAAE;AACb,gBAAA,IAAI,CAAC,GAAG,CACN,IAAI,CAAC;sBACD,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE;AAC/B,sBAAE,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,EAC5B,MAAK;oBACH,IAAI,IAAI,CAAC,SAAS,KAAK,GAAG,CAAC,EAAE,EAAE;AAC7B,wBAAA,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC;oBACzB;oBACA,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,IAAI,IAAI,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,CAAC;AACnE,gBAAA,CAAC,CACF;YACH;AACF,QAAA,CAAC,CAAC;IACN;IAEQ,GAAG,CAAI,OAAsB,EAAE,IAAwB,EAAA;AAC7D,QAAA,IAAI,IAAI,CAAC,IAAI,EAAE,EAAE;YACf;QACF;AACA,QAAA,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC;AACnB,QAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;QAClB;aACG,IAAI,CACH,kBAAkB,CAAC,IAAI,CAAC,UAAU,CAAC,EACnC,QAAQ,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;AAErC,aAAA,SAAS,CAAC;YACT,IAAI,EAAE,KAAK,IAAG;AACZ,gBAAA,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC;gBACpB,IAAI,CAAC,KAAK,CAAC;YACb,CAAC;AACD,YAAA,KAAK,EAAE,CAAC,KAAc,KAAI;AACxB,gBAAA,OAAO,CAAC,KAAK,CAAC,sCAAsC,EAAE,KAAK,CAAC;AAC5D,gBAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CACZ,IAAI,CAAC,CAAC,CAAC,OAAO,CACZ,yJAAyJ,CAC1J,CACF;YACH,CAAC;AACF,SAAA,CAAC;IACN;IAEQ,UAAU,GAAA;QAChB,OAAO;AACL,YAAA,IAAI,EAAE,EAAE;AACR,YAAA,IAAI,EAAE,EAAE;AACR,YAAA,WAAW,EAAE,EAAE;AACf,YAAA,gBAAgB,EAAE,IAAI;AACtB,YAAA,SAAS,EAAE,CAAC;SACb;IACH;8GAnNW,kCAAkC,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAlC,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,kCAAkC,2EApBlC,CAAC,yBAAyB,EAAE,oBAAoB,CAAC,0BC7C9D,0gGAwGA,EAAA,MAAA,EAAA,CAAA,sIAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EDlEI,WAAW,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAG,IAAA,CAAA,aAAA,EAAA,QAAA,EAAA,8CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,oBAAA,EAAA,QAAA,EAAA,8MAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,mBAAA,EAAA,QAAA,EAAA,iGAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,eAAA,EAAA,QAAA,EAAA,2CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,oBAAA,EAAA,QAAA,EAAA,sGAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,iBAAA,EAAA,QAAA,EAAA,wIAAA,EAAA,MAAA,EAAA,CAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,OAAA,EAAA,QAAA,EAAA,qDAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,SAAA,EAAA,gBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,eAAA,CAAA,EAAA,QAAA,EAAA,CAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,MAAA,EAAA,QAAA,EAAA,yEAAA,EAAA,MAAA,EAAA,CAAA,eAAA,CAAA,EAAA,OAAA,EAAA,CAAA,UAAA,CAAA,EAAA,QAAA,EAAA,CAAA,QAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EACX,eAAe,mXACf,kBAAkB,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,EAAA,CAAA,YAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,CAAA,oBAAA,EAAA,OAAA,EAAA,YAAA,EAAA,YAAA,EAAA,iBAAA,EAAA,WAAA,CAAA,EAAA,QAAA,EAAA,CAAA,cAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,EAAA,CAAA,QAAA,EAAA,QAAA,EAAA,WAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAClB,cAAc,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,EAAA,CAAA,QAAA,EAAA,QAAA,EAAA,yHAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,IAAA,EAAA,aAAA,EAAA,MAAA,EAAA,UAAA,EAAA,MAAA,EAAA,mBAAA,EAAA,kBAAA,EAAA,OAAA,EAAA,UAAA,EAAA,qBAAA,CAAA,EAAA,QAAA,EAAA,CAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EACd,eAAe,otBACf,sBAAsB,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,CAAA,YAAA,EAAA,UAAA,EAAA,iBAAA,EAAA,gBAAA,EAAA,mBAAA,EAAA,sBAAA,EAAA,SAAA,EAAA,YAAA,EAAA,eAAA,EAAA,MAAA,EAAA,YAAA,EAAA,iBAAA,EAAA,sBAAA,EAAA,mBAAA,EAAA,SAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,eAAA,CAAA,EAAA,OAAA,EAAA,CAAA,iBAAA,EAAA,YAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;;2FAsBb,kCAAkC,EAAA,UAAA,EAAA,CAAA;kBAhC9C,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,8BAA8B,EAAA,eAAA,EAEvB,uBAAuB,CAAC,MAAM,EAAA,OAAA,EACtC;wBACP,WAAW;wBACX,eAAe;wBACf,kBAAkB;wBAClB,cAAc;wBACd,eAAe;wBACf,sBAAsB;AACvB,qBAAA,EAAA,SAAA,EACU,CAAC,yBAAyB,EAAE,oBAAoB,CAAC,EAAA,QAAA,EAAA,0gGAAA,EAAA,MAAA,EAAA,CAAA,sIAAA,CAAA,EAAA;;;;;;;;AE3CvD,MAAM,iCAAiC,GAAW;AACvD,IAAA;AACE,QAAA,IAAI,EAAE,EAAE;AACR,QAAA,IAAI,EAAE,EAAE,QAAQ,EAAE,UAAU,EAAE;AAC9B,QAAA,aAAa,EAAE,MACb,mFAAkD,CAAC,IAAI,CACrD,CAAC,IAAI,CAAC,CAAC,kCAAkC,CAC1C;AACJ,KAAA;;AAGI,MAAM,2BAA2B,GAAW;AACjD,IAAA;AACE,QAAA,IAAI,EAAE,EAAE;AACR,QAAA,IAAI,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE;AACzB,QAAA,aAAa,EAAE,MACb,mFAAkD,CAAC,IAAI,CACrD,CAAC,IAAI,CAAC,CAAC,kCAAkC,CAC1C;AACJ,KAAA;;;;;;;;;ACPH,MAAML,GAAC,GAAG,WAAW,CAAC,GAAG,CAAC,yFAAyF,EAAE,EAAC,kFAAkF,EAAC,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,wFAAoE,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,wFAAoE,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,wFAAoE,CAAC,EAAE,OAAO,EAAC,EAAC,gFAAgF,EAAC,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,sFAAkE,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,sFAAkE,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,sFAAkE,CAAC,EAAE,OAAO,EAAC,EAAC,yFAAyF,EAAC,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,+FAA2E,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,+FAA2E,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,+FAA2E,CAAC,EAAE,OAAO,EAAC,EAAQ,CAAC;MA8E73C,yCAAyC,CAAA;AAhEtD,IAAA,WAAA,GAAA;AAiEW,QAAA,IAAA,CAAA,CAAC,GAAGA,GAAC,CAAC,GAAG,CAAC,IAAI,CAAC;AAEf,QAAA,IAAA,CAAA,IAAI,GAAG,MAAM,CAAiC,eAAe,CAAC;AAE9D,QAAA,IAAA,CAAA,SAAS,GAAG,MAAM,CAKzB,YAAY,CAAC;QAEf,IAAA,CAAA,IAAI,GAAG,EAAE;QAET,IAAA,CAAA,IAAI,GAAG,EAAE;QAET,IAAA,CAAA,WAAW,GAAG,EAAE;QAEhB,IAAA,CAAA,eAAe,GAAG,KAAK;AAqBxB,IAAA;AAnBC,IAAA,UAAU,CAAC,KAAa,EAAA;AACtB,QAAA,IAAI,CAAC,IAAI,GAAG,KAAK;AACjB,QAAA,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE;YACzB,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC;QAChC;IACF;IAEA,MAAM,GAAA;AACJ,QAAA,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE;YAC1C;QACF;AACA,QAAA,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC;AACnB,YAAA,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;AACtB,YAAA,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;YACtB,WAAW,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,IAAI,IAAI;AAC5C,YAAA,gBAAgB,EAAE,IAAI;AACtB,YAAA,SAAS,EAAE,CAAC;AACb,SAAA,CAAC;IACJ;8GAtCW,yCAAyC,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAzC,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,yCAAyC,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,uCAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAtD1C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoDT,EAAA,QAAA,EAAA,IAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EA1DC,WAAW,+yCACX,eAAe,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAM,EAAA,CAAA,SAAA,EAAA,QAAA,EAAA,iOAAA,EAAA,MAAA,EAAA,CAAA,WAAA,CAAA,EAAA,QAAA,EAAA,CAAA,WAAA,EAAA,WAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EACf,eAAe,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,cAAA,EAAA,QAAA,EAAA,sCAAA,EAAA,MAAA,EAAA,CAAA,IAAA,CAAA,EAAA,QAAA,EAAA,CAAA,gBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,gBAAA,EAAA,QAAA,EAAA,8DAAA,EAAA,MAAA,EAAA,CAAA,OAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,gBAAA,EAAA,QAAA,EAAA,8DAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EACf,kBAAkB,0SAClB,cAAc,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,QAAA,EAAA,QAAA,EAAA,yHAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,IAAA,EAAA,aAAA,EAAA,MAAA,EAAA,UAAA,EAAA,MAAA,EAAA,mBAAA,EAAA,kBAAA,EAAA,OAAA,EAAA,UAAA,EAAA,qBAAA,CAAA,EAAA,QAAA,EAAA,CAAA,UAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;;2FAwDL,yCAAyC,EAAA,UAAA,EAAA,CAAA;kBAhErD,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,uCAAuC;oBACjD,eAAe,EAAE,uBAAuB,CAAC,MAAM;AAC/C,oBAAA,OAAO,EAAE;wBACP,WAAW;wBACX,eAAe;wBACf,eAAe;wBACf,kBAAkB;wBAClB,cAAc;AACf,qBAAA;AACD,oBAAA,QAAQ,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAoDT,EAAA,CAAA;AACF,iBAAA;;;AC3FD;AAOA;AAGM,MAAO,+BAAgC,SAAQ,sBAAsB,CAAA;AAD3E,IAAA,WAAA,GAAA;;AAEmB,QAAA,IAAA,CAAA,+BAA+B,GAAG,IAAI,CAAC,gBAAgB,CACtE,+BAA+B,CAChC;AA2EF,IAAA;AAzEC;;;;AAIG;IACH,MAAM,SAAS,CAAC,GAAW,EAAA;AACzB,QAAA,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC;aACzB,SAAS,CAAC,GAAG;AACb,aAAA,OAAO,EAAE;AACZ,QAAA,IACE,QAAQ,CAAC,UAAU,IAAI,GAAG;AAC1B,aAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,KAAK,MAAM,IAAI,QAAQ,CAAC,IAAI,CAAC,IAAI,KAAK,OAAO,CAAC,EACjE;YACA,MAAM,IAAI,KAAK,CACb,QAAQ,CAAC,YAAY,IAAI,wCAAwC,CAClE;QACH;AACA,QAAA,OAAO,QAAQ,CAAC,IAAI,CAAC,IAAI,KAAK,MAAM;IACtC;AAEA,IAAA,UAAU,CAAC,GAAW,EAAA;AACpB,QAAA,OAAO,IAAI,CAAC,+BAA+B,CAAC,SAAS,CAAC,GAAG;AACtD,aAAA,OAAQ,EAAE,CAAC,UAAU,CAAC,IAAI,CAACL,KAAG,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IAC9D;AAEA,IAAA,MAAM,YAAY,GAAA;AAChB,QAAA,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC;AACzB,aAAA,YAAY;AACZ,aAAA,OAAO,EAAE;AACZ,QAAA,OAAO,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC;IACpC;IAEA,MAAM,UAAU,CACd,IAAY,EAAA;AAEZ,QAAA,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC;aACzB,UAAU,CAAC,IAAI;AACf,aAAA,OAAO,EAAE;AACZ,QAAA,OAAO,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC;IACpC;AAEA,IAAA,MAAM,UAAU,CACd,GAAW,EACX,OAAgB,EAAA;AAEhB,QAAA,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC;AACzB,aAAA,UAAU,CAAC,GAAG,EAAE,OAAO;AACvB,aAAA,OAAO,EAAE;AACZ,QAAA,OAAO,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC;IACpC;IAEA,MAAM,aAAa,CACjB,GAAW,EAAA;AAEX,QAAA,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC;aACzB,aAAa,CAAC,GAAG;AACjB,aAAA,OAAO,EAAE;AACZ,QAAA,OAAO,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC;IACpC;AAEQ,IAAA,YAAY,CAAC,QAIpB,EAAA;AACC,QAAA,IAAI,QAAQ,CAAC,UAAU,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE;AACrE,YAAA,MAAM,IAAI,KAAK,CACb,QAAQ,CAAC,YAAY;AACnB,gBAAA,gDAAgD,CACnD;QACH;AACA,QAAA,OAAO,QAAQ,CAAC,IAAI,CAAC,IAAI;IAC3B;8GA7EW,+BAA+B,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;kHAA/B,+BAA+B,EAAA,CAAA,CAAA;;2FAA/B,+BAA+B,EAAA,UAAA,EAAA,CAAA;kBAD3C;;;ACNK,IAAW;AAAjB,CAAA,UAAiB,0BAA0B,EAAA;IACzC,SAAgB,WAAW,CAAC,IAAY,EAAA;;QAEtC,OAAO,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE;AACxB,aAAA,OAAO,CAAC,oBAAoB,EAAE,OAAO;AACrC,aAAA,WAAW;AACX,aAAA,OAAO,CAAC,aAAa,EAAE,GAAG;AAC1B,aAAA,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC;IAC1B;AAPgB,IAAA,0BAAA,CAAA,WAAW,cAO1B;IAED,SAAgB,QAAQ,CAAC,KAAa,EAAA;QACpC,OAAO,KAAK,KAAK,QAAQ;IAC3B;AAFgB,IAAA,0BAAA,CAAA,QAAQ,WAEvB;AACH,CAAC,EAbgB,0BAA0B,KAA1B,0BAA0B,GAAA,EAAA,CAAA,CAAA;;ACH3C;AAcA;AAEA,MAAMD,GAAC,GAAG,WAAW,CAAC,GAAG,CAAC,8FAA8F,EAAE,EAAC,gGAAgG,EAAC,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,qFAAiE,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,qFAAiE,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,qFAAiE,CAAC,EAAE,OAAO,EAAC,EAAC,8FAA8F,EAAC,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,mFAA+D,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,mFAA+D,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,mFAA+D,CAAC,EAAE,OAAO,EAAC,EAAQ,CAAC;MAUx8B,+BAA+B,CAAA;AAR5C,IAAA,WAAA,GAAA;AASE,QAAA,IAAA,CAAA,CAAC,GAAGA,GAAC,CAAC,GAAG,CAAC,IAAI,CAAC;AACE,QAAA,IAAA,CAAA,+BAA+B,GAAG,MAAM,CAAC,+BAA+B,CAAC;AACzE,QAAA,IAAA,CAAA,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC;AACvC,QAAA,IAAA,CAAA,QAAQ,GAAG,MAAM,CAAwC,EAAE,oDAAC;AAC5D,QAAA,IAAA,CAAA,IAAI,GAAG,MAAM,CAAC,KAAK,gDAAC;AACpB,QAAA,IAAA,CAAA,MAAM,GAAG,MAAM,CAAC,KAAK,kDAAC;AACtB,QAAA,IAAA,CAAA,KAAK,GAAG,MAAM,CAAC,EAAE,iDAAC;AAClB,QAAA,IAAA,CAAA,QAAQ,GAAG,MAAM,CAAC,EAAE,oDAAC;QAC9B,IAAA,CAAA,IAAI,GAAG,EAAE;AAyGV,IAAA;IAvGC,QAAQ,GAAA;AACN,QAAA,KAAK,IAAI,CAAC,MAAM,EAAE;IACpB;AAEA,IAAA,MAAM,MAAM,GAAA;QACV,MAAM,IAAI,CAAC,GAAG,CACZ,MAAM,IAAI,CAAC,+BAA+B,CAAC,YAAY,EAAE,EACzD,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,0BAA0B,CAAC,CAC3C;IACH;AAEA,IAAA,MAAM,UAAU,GAAA;QACd,IAAI,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE;YACjC;QACF;QACA,MAAM,GAAG,GAAG,0BAA0B,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC;AAC7D,QAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;QAClB,IAAI,CAAC,GAAG,IAAI,CAAC,4BAA4B,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE;AACnD,YAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,iDAAiD,CAAC,CAAC;YACjF;QACF;AACA,QAAA,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,GAAG,KAAK,GAAG,CAAC,EAAE;AACxD,YAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,yCAAyC,CAAC,CAAC;YACzE;QACF;AACA,QAAA,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,GAAG,CAC1B,MAAM,IAAI,CAAC,+BAA+B,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,EAChE,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,gBAAgB,CAAC,CACjC;QACD,IAAI,KAAK,EAAE;AACT,YAAA,IAAI,CAAC,IAAI,GAAG,EAAE;QAChB;IACF;AAEA,IAAA,MAAM,MAAM,CAAC,OAA4C,EAAE,OAAgB,EAAA;AACzE,QAAA,IAAI,IAAI,CAAC,IAAI,EAAE,EAAE;YACf;QACF;AACA,QAAA,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,EAAE;AAChC,QAAA,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,IAChC,GAAG,CAAC,GAAG,KAAK,OAAO,CAAC,GAAG,GAAG,EAAE,GAAG,GAAG,EAAE,OAAO,EAAE,GAAG,GAAG,CACpD,CAAC;AACF,QAAA,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,GAAG,CAC1B,MAAM,IAAI,CAAC,+BAA+B,CAAC,UAAU,CAAC,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC,EAC3E,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,gBAAgB,CAAC,CACjC;QACD,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,SAAS,EAAE;YACxC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,KAAK,EAAE,GAAG,GAAG,EAAE,CAAC,CAAC,CAAC;QACtD;IACF;IAEA,MAAM,aAAa,CAAC,OAA4C,EAAA;QAC9D,MAAM,IAAI,CAAC,GAAG,CACZ,MAAM,IAAI,CAAC,+BAA+B,CAAC,aAAa,CAAC,OAAO,CAAC,GAAG,CAAC,EACrE,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,2DAA2D,CAAC,CAC5E;IACH;IAEA,MAAM,OAAO,CAAC,GAAW,EAAA;AACvB,QAAA,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;AACrB,QAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;AAClB,QAAA,IAAI;AACF,YAAA,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE;AACxB,gBAAA,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC;YACrD;YACA,MAAM,SAAS,CAAC,SAAS,CAAC,SAAS,CAAC,GAAG,CAAC;AACxC,YAAA,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,qBAAqB,CAAC,CAAC;QAC1D;QAAE,OAAO,KAAc,EAAE;AACvB,YAAA,OAAO,CAAC,KAAK,CAAC,gDAAgD,EAAE,KAAK,CAAC;AACtE,YAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,sCAAsC,CAAC,CAAC;QACxE;IACF;AAEQ,IAAA,MAAM,GAAG,CACf,OAA6D,EAC7D,OAAe,EAAA;AAEf,QAAA,IAAI,IAAI,CAAC,IAAI,EAAE,EAAE;AACf,YAAA,OAAO,KAAK;QACd;AACA,QAAA,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC;AACnB,QAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;AAClB,QAAA,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;AACrB,QAAA,IAAI;AACF,YAAA,MAAM,QAAQ,GAAG,MAAM,OAAO,EAAE;AAChC,YAAA,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,SAAS,EAAE;AAC9B,gBAAA,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC;AAC3B,gBAAA,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC;AACrB,gBAAA,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC;YAC5B;AACA,YAAA,OAAO,IAAI;QACb;QAAE,OAAO,KAAc,EAAE;AACvB,YAAA,OAAO,CAAC,KAAK,CAAC,4CAA4C,EAAE,KAAK,CAAC;AAClE,YAAA,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,SAAS,EAAE;AAC9B,gBAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,kEAAkE,CAAC,CAAC;YACpG;AACA,YAAA,OAAO,KAAK;QACd;gBAAU;AACR,YAAA,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,SAAS,EAAE;AAC9B,gBAAA,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC;YACtB;QACF;IACF;8GAjHW,+BAA+B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAA/B,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,+BAA+B,4EAF/B,CAAC,+BAA+B,CAAC,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECxB9C,wpDA6CA,EAAA,MAAA,EAAA,CAAA,mNAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EDtBY,WAAW,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAG,IAAA,CAAA,aAAA,EAAA,QAAA,EAAA,8CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,oBAAA,EAAA,QAAA,EAAA,8MAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,eAAA,EAAA,QAAA,EAAA,2CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,oBAAA,EAAA,QAAA,EAAA,sGAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,OAAA,EAAA,QAAA,EAAA,qDAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,SAAA,EAAA,gBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,eAAA,CAAA,EAAA,QAAA,EAAA,CAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,MAAA,EAAA,QAAA,EAAA,yEAAA,EAAA,MAAA,EAAA,CAAA,eAAA,CAAA,EAAA,OAAA,EAAA,CAAA,UAAA,CAAA,EAAA,QAAA,EAAA,CAAA,QAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAE,eAAe,0iBAAE,iBAAiB,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,IAAA,CAAA,WAAA,EAAA,QAAA,EAAA,cAAA,EAAA,MAAA,EAAA,CAAA,YAAA,EAAA,iBAAA,EAAA,kBAAA,EAAA,eAAA,EAAA,eAAA,EAAA,WAAA,EAAA,IAAA,EAAA,UAAA,EAAA,eAAA,EAAA,MAAA,EAAA,OAAA,EAAA,eAAA,EAAA,UAAA,EAAA,OAAA,EAAA,qBAAA,EAAA,SAAA,EAAA,UAAA,EAAA,eAAA,CAAA,EAAA,OAAA,EAAA,CAAA,QAAA,EAAA,qBAAA,CAAA,EAAA,QAAA,EAAA,CAAA,aAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAE,kBAAkB,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,YAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,CAAA,oBAAA,EAAA,OAAA,EAAA,YAAA,EAAA,YAAA,EAAA,iBAAA,EAAA,WAAA,CAAA,EAAA,QAAA,EAAA,CAAA,cAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,QAAA,EAAA,QAAA,EAAA,WAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAE,aAAa,qLAAE,cAAc,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAG,EAAA,CAAA,QAAA,EAAA,QAAA,EAAA,yHAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,IAAA,EAAA,aAAA,EAAA,MAAA,EAAA,UAAA,EAAA,MAAA,EAAA,mBAAA,EAAA,kBAAA,EAAA,OAAA,EAAA,UAAA,EAAA,qBAAA,CAAA,EAAA,QAAA,EAAA,CAAA,UAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;;2FAGjG,+BAA+B,EAAA,UAAA,EAAA,CAAA;kBAR3C,SAAS;+BACE,+BAA+B,EAAA,eAAA,EAGxB,uBAAuB,CAAC,MAAM,WACtC,CAAC,WAAW,EAAE,eAAe,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,aAAa,EAAE,cAAc,CAAC,EAAA,SAAA,EAClG,CAAC,+BAA+B,CAAC,EAAA,QAAA,EAAA,wpDAAA,EAAA,MAAA,EAAA,CAAA,mNAAA,CAAA,EAAA;;;;;;;;AErB9C;AAEO,MAAM,4BAA4B,GAAW;AAClD,IAAA;AACE,QAAA,IAAI,EAAE,EAAE;AACR,QAAA,aAAa,EAAE,MACb,gFAA+C,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,+BAA+B,CAAC;AAE9F,QAAA,QAAQ,EAAE;;;;;;;;;AAST,SAAA;AACF,KAAA;;AAGH;;;;AAIG;AACH;;;;;;;AC7BA;AAMA;AAEA,MAAMP,GAAC,GAAG,WAAW,CAAC,GAAG,CAAC,iGAAiG,EAAE,EAAC,iGAAiG,EAAC,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,sFAAkE,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,sFAAkE,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,sFAAkE,CAAC,EAAE,OAAO,EAAC,EAAC,8FAA8F,EAAC,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,mFAA+D,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,mFAA+D,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,mFAA+D,CAAC,EAAE,OAAO,EAAC,EAAQ,CAAC;MAS/8B,kCAAkC,CAAA;AAP/C,IAAA,WAAA,GAAA;AAQE,QAAA,IAAA,CAAA,CAAC,GAAGA,GAAC,CAAC,GAAG,CAAC,IAAI,CAAC;AAChB,IAAA;8GAFY,kCAAkC,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;kGAAlC,kCAAkC,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,kCAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECjB/C,iCAA+B,EAAA,MAAA,EAAA,CAAA,wBAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EDeR,YAAY,EAAA,QAAA,EAAA,eAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,kBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,UAAA,EAAA,YAAA,EAAA,QAAA,EAAA,QAAA,CAAA,EAAA,QAAA,EAAA,CAAA,QAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;;2FAEtB,kCAAkC,EAAA,UAAA,EAAA,CAAA;kBAP9C,SAAS;+BACE,kCAAkC,EAAA,eAAA,EAG3B,uBAAuB,CAAC,MAAM,WACtC,CAAC,SAAS,EAAE,YAAY,CAAC,EAAA,QAAA,EAAA,iCAAA,EAAA,MAAA,EAAA,CAAA,wBAAA,CAAA,EAAA;;;;;;;;AEVpC;AAEA,MAAMA,GAAC,GAAG,WAAW,CAAC,GAAG,CAAC,8FAA8F,EAAE,EAAC,iGAAiG,EAAC,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,sFAAkE,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,sFAAkE,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,sFAAkE,CAAC,EAAE,OAAO,EAAC,EAAC,8FAA8F,EAAC,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,mFAA+D,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,mFAA+D,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,mFAA+D,CAAC,EAAE,OAAO,EAAC,EAAQ,CAAC;AAEl9B,MAAM,+BAA+B,GAAW;AACrD,IAAA;AACE,QAAA,IAAI,EAAE,EAAE;AACR,QAAA,aAAa,EAAE,MACb,mFAAkD,CAAC,IAAI,CACrD,CAAC,IAAI,CAAC,CAAC,kCAAkC,CAC1C;AAEH,QAAA,QAAQ,EAAE;AACR,YAAA;AACE,gBAAA,IAAI,EAAE,EAAE;AACR,gBAAA,SAAS,EAAE,MAAM;AACjB,gBAAA,UAAU,EAAE,aAAa;AAC1B,aAAA;AACD,YAAAQ,gBAAc,CAAC;AACb,gBAAA,IAAI,EAAE,aAAa;gBACnB,QAAQ,EAAER,GAAC,CAAC,MAAM,CAAC,OAAO,CAAC,cAAc,CAAC;AAC1C,gBAAA,IAAI,EAAE,SAAS;AACf,gBAAA,UAAU,EAAE,KAAK;AACjB,gBAAA,MAAM,EAAE,MACN,0FAAoG,CAAC,IAAI,CACvG,CAAC,IAAI,CAAC,CAAC,yCAAyC,CACjD;aACJ,CAAC;AACF,YAAAQ,gBAAc,CAAC;AACb,gBAAA,IAAI,EAAE,SAAS;gBACf,QAAQ,EAAER,GAAC,CAAC,MAAM,CAAC,OAAO,CAAC,eAAe,CAAC;AAC3C,gBAAA,IAAI,EAAE,gBAAgB;AACtB,gBAAA,UAAU,EAAE,KAAK;AACjB,gBAAA,MAAM,EAAE,MACN,kFAAkF,CAAC,IAAI,CACrF,CAAC,IAAI,CAAC,CAAC,iCAAiC,CACzC;aACJ,CAAC;AAEF,YAAAQ,gBAAc,CAAC;AACb,gBAAA,IAAI,EAAE,SAAS;gBACf,QAAQ,EAAER,GAAC,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC;AACrC,gBAAA,IAAI,EAAE,aAAa;AACnB,gBAAA,UAAU,EAAE,KAAK;AACjB,gBAAA,MAAM,EAAE,MACN,qFAAwF,CAAC,IAAI,CAC3F,CAAC,IAAI,CAAC,CAAC,oCAAoC,CAC5C;aACJ,CAAC;AACH,SAAA;AACF,KAAA;;AAGH;;;;AAIG;AACH;;ACnDA,MAAMA,GAAC,GAAG,WAAW,CAAC,GAAG,CAAC,2EAA2E,EAAE,EAAC,6EAA6E,EAAC,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,uFAAmE,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,uFAAmE,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,uFAAmE,CAAC,EAAE,OAAO,EAAC,EAAC,2EAA2E,EAAC,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,qFAAiE,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,qFAAiE,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,qFAAiE,CAAC,EAAE,OAAO,EAAC,EAAC,uEAAuE,EAAC,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,iFAA6D,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,iFAA6D,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,iFAA6D,CAAC,EAAE,OAAO,EAAC,EAAC,+DAA+D,EAAC,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,yEAAqD,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,yEAAqD,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,yEAAqD,CAAC,EAAE,OAAO,EAAC,EAAC,6DAA6D,EAAC,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,uEAAmD,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,uEAAmD,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,uEAAmD,CAAC,EAAE,OAAO,EAAC,EAAQ,CAAC;MAc3+D,gCAAgC,CAAA;AAN7C,IAAA,WAAA,GAAA;AAOW,QAAA,IAAA,CAAA,CAAC,GAAGA,GAAC,CAAC,GAAG,CAAC,IAAI,CAAC;AAEf,QAAA,IAAA,CAAA,IAAI,GACX,MAAM,CAAiC,eAAe,CAAC;AAExC,QAAA,IAAA,CAAA,SAAS,GACxB,MAAM,CACJ,YAAY,CACb;AAEH,QAAA,IAAA,CAAA,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ;AAS9B,IAAA;IAPC,OAAO,GAAA;QACL,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC;IACrC;IAEA,MAAM,GAAA;AACJ,QAAA,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE;IACxB;8GAnBW,gCAAgC,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;kGAAhC,gCAAgC,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,6BAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EC1B7C,unBAkBA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EDMY,WAAW,kWAAE,eAAe,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAM,EAAA,CAAA,SAAA,EAAA,QAAA,EAAA,iOAAA,EAAA,MAAA,EAAA,CAAA,WAAA,CAAA,EAAA,QAAA,EAAA,CAAA,WAAA,EAAA,WAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAE,eAAe,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,cAAA,EAAA,QAAA,EAAA,sCAAA,EAAA,MAAA,EAAA,CAAA,IAAA,CAAA,EAAA,QAAA,EAAA,CAAA,gBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,gBAAA,EAAA,QAAA,EAAA,8DAAA,EAAA,MAAA,EAAA,CAAA,OAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,gBAAA,EAAA,QAAA,EAAA,8DAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAE,cAAc,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAD,IAAA,CAAA,aAAA,EAAA,QAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,MAAA,EAAA,eAAA,EAAA,OAAA,EAAA,UAAA,EAAA,UAAA,EAAA,UAAA,EAAA,qBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,QAAA,CAAA,EAAA,QAAA,EAAA,CAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,cAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,IAAA,EAAA,MAAA,EAAA,YAAA,EAAA,iBAAA,EAAA,kBAAA,EAAA,eAAA,EAAA,UAAA,EAAA,SAAA,EAAA,OAAA,EAAA,eAAA,EAAA,UAAA,EAAA,UAAA,EAAA,OAAA,EAAA,qBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,QAAA,CAAA,EAAA,QAAA,EAAA,CAAA,gBAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;;2FAE5D,gCAAgC,EAAA,UAAA,EAAA,CAAA;kBAN5C,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,6BAA6B,EAAA,eAAA,EAEtB,uBAAuB,CAAC,MAAM,EAAA,OAAA,EACtC,CAAC,WAAW,EAAE,eAAe,EAAE,eAAe,EAAE,cAAc,CAAC,EAAA,QAAA,EAAA,unBAAA,EAAA;;;AET1E,MAAML,GAAC,GAAG,WAAW,CAAC,GAAG,CAAC,uFAAuF,EAAE,EAAC,uFAAuF,EAAC,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,qFAAiE,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,qFAAiE,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,qFAAiE,CAAC,EAAE,OAAO,EAAC,EAAC,uFAAuF,EAAC,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,qFAAiE,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,qFAAiE,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,qFAAiE,CAAC,EAAE,OAAO,EAAC,EAAC,qFAAqF,EAAC,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,mFAA+D,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,mFAA+D,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,mFAA+D,CAAC,EAAE,OAAO,EAAC,EAAC,kFAAkF,EAAC,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,gFAA4D,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,gFAA4D,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,gFAA4D,CAAC,EAAE,OAAO,EAAC,EAAQ,CAAC;MAG1tD,uBAAuB,CAAA;AAD7C,IAAA,WAAA,GAAA;AAEmB,QAAA,IAAA,CAAA,kBAAkB,GAAGA,GAAC,CAAC,GAAG,CAAC,IAAI,CAAC;AAExC,QAAA,IAAA,CAAA,wBAAwB,GAAG,MAAM,CAAC,wBAAwB,CAAC;AAE3D,QAAA,IAAA,CAAA,QAAQ,GAAG,MAAM,CAAgB,IAAI,oDAAC;AAEtC,QAAA,IAAA,CAAA,WAAW,GAAG,MAAM,CAAC,KAAK,uDAAC;AAE3B,QAAA,IAAA,CAAA,KAAK,GAAG,MAAM,CAAC,EAAE,iDAAC;AAER,QAAA,IAAA,CAAA,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC;QAE/B,IAAA,CAAA,QAAQ,GAAa,EAAE;QAEvB,IAAA,CAAA,WAAW,GAAwB,OAAO;AAE5C,QAAA,IAAA,CAAA,MAAM,GAAG,MAAM,CAAC,SAAS,CAAC;AAE1B,QAAA,IAAA,CAAA,KAAK,GAAG,MAAM,CAAC,cAAc,CAAC;AAE9B,QAAA,IAAA,CAAA,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;AAE/B,QAAA,IAAA,CAAA,aAAa,GAAkB;YACtC,MAAM,EAAE,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,SAAS,CAAC;AAClD,YAAA,KAAK,EAAE,SAAS;AAChB,YAAA,IAAI,EAAE,QAAQ;AACd,YAAA,OAAO,EAAE;AACP,gBAAA;AACE,oBAAA,IAAI,EAAE,MAAM;AACZ,oBAAA,IAAI,EAAE,cAAc;oBACpB,OAAO,EAAE,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,gBAAgB,CAAC;AAC1D,oBAAA,QAAQ,EAAE,MAAM,IAAI,CAAC,WAAW,EAAE;oBAClC,KAAK,EAAE,CAAC,IAA0B,KAAK,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;AAC5D,iBAAA;AACD,gBAAA;AACE,oBAAA,IAAI,EAAE,MAAM;AACZ,oBAAA,IAAI,EAAE,aAAa;oBACnB,OAAO,EAAE,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,cAAc,CAAC;oBACxD,KAAK,EAAE,CAAC,IAA0B,KAAK,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC;AAC9D,iBAAA;AACD,gBAAA;AACE,oBAAA,IAAI,EAAE,MAAM;AACZ,oBAAA,IAAI,EAAE,QAAQ;oBACd,OAAO,EAAE,IAAI,CAAC,kBAAkB,CAAC,OAAO,CACtC,oCAAoC,CACrC;oBACD,QAAQ,EAAE,MAAM,IAAI,CAAC,QAAQ,EAAE,KAAK,IAAI;oBACxC,KAAK,EAAE,CAAC,IAA0B,KAAK,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;AACzD,iBAAA;AACF,aAAA;SACF;AAkNF,IAAA;IA9MC,GAAG,GAAA;AACD,QAAA,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;IACtB;AAEA,IAAA,WAAW,CAAC,IAA0B,EAAA;AACpC,QAAA,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;IACxB;AAEQ,IAAA,QAAQ,CAAC,EAAkB,EAAA;AACjC,QAAA,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM;QACpC,IAAI,CAAC,UAAU,EAAE;AACf,YAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CACZ,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAC7B,wCAAwC,CACzC,CACF;YACD;QACF;QACA,KAAK,IAAI,CAAC;aACP,QAAQ,CAAC,CAAC,GAAG,IAAI,CAAC,QAAQ,EAAE,EAAE,CAAC,EAAE;AAChC,YAAA,UAAU,EAAE,UAAU;AACtB,YAAA,WAAW,EACT,IAAI,CAAC,WAAW,KAAK;AACnB,kBAAE,EAAE,UAAU,EAAE,SAAS;AACzB,kBAAE,SAAS;AACf,YAAA,mBAAmB,EAAE,UAAU;SAChC;aACA,KAAK,CAAC,KAAK,IAAG;AACb,YAAA,OAAO,CAAC,KAAK,CAAC,iDAAiD,EAAE,KAAK,CAAC;AACvE,YAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CACZ,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAC7B,wCAAwC,CACzC,CACF;AACH,QAAA,CAAC,CAAC;IACN;AAEA,IAAA,SAAS,CAAC,IAA0B,EAAA;AAClC,QAAA,IAAI,IAAI,CAAC,WAAW,EAAE,EAAE;YACtB;QACF;AACA,QAAA,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC;AAC1B,QAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;AAClB,QAAA,IAAI,CAAC;AACF,aAAA,gBAAgB,CAAC,IAAI,CAAC,EAAE;AACxB,aAAA,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,kBAAkB,CAAC,IAAI,CAAC,UAAU,CAAC;AACjD,aAAA,SAAS,CAAC;YACT,IAAI,EAAE,QAAQ,IAAG;AACf,gBAAA,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE;AACpB,oBAAA,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,KAAK,CAAC;oBAChC;gBACF;gBACA,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAI1B,gCAAgC,EAAE;AAClC,oBAAA,IAAI,EAAE;wBACJ,KAAK,EAAE,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,gBAAgB,CAAC;AACxD,wBAAA,OAAO,EAAE;AACP,4BAAA;AACE,gCAAA,KAAK,EAAE,QAAQ;gCACf,KAAK,EAAE,IAAI,CAAC,kBAAkB,CAAC,OAAO,CACpC,0BAA0B,CAC3B;AACF,6BAAA;AACD,4BAAA;AACE,gCAAA,KAAK,EAAE,WAAW;gCAClB,KAAK,EAAE,IAAI,CAAC,kBAAkB,CAAC,OAAO,CACpC,sCAAsC,CACvC;AACF,6BAAA;AACF,yBAAA;AACD,wBAAA,QAAQ,EAAE,QAAQ;AACnB,qBAAA;AACD,oBAAA,YAAY,EAAE,IAAI;AACnB,iBAAA,CAAC;gBACF;AACG,qBAAA,WAAW;AACX,qBAAA,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,UAAU,CAAC;qBACxC,SAAS,CAAC,MAAM,IAAG;oBAClB,IAAI,CAAC,MAAM,EAAE;AACX,wBAAA,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC;wBAC3B;oBACF;oBACA,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,MAAM,KAAK,WAAW,CAAC;AACnD,gBAAA,CAAC,CAAC;YACN,CAAC;AACD,YAAA,KAAK,EAAE,CAAC,KAAc,KAAI;AACxB,gBAAA,OAAO,CAAC,KAAK,CACX,qEAAqE,EACrE,KAAK,CACN;AACD,gBAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CACZ,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAC7B,qDAAqD,CACtD,CACF;AACD,gBAAA,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC;YAC7B,CAAC;AACF,SAAA,CAAC;IACN;IAEQ,cAAc,CACpB,IAA0B,EAC1B,eAAwB,EAAA;AAExB,QAAA,IAAI,CAAC;AACF,aAAA,gBAAgB,CAAC,IAAI,CAAC,EAAE,EAAE,eAAe;aACzC,IAAI,CACH,kBAAkB,CAAC,IAAI,CAAC,UAAU,CAAC,EACnC,QAAQ,CAAC,MAAM,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;AAE5C,aAAA,SAAS,CAAC;YACT,IAAI,EAAE,SAAS,IAAI,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC;AAC9C,YAAA,KAAK,EAAE,CAAC,KAAc,KAAI;AACxB,gBAAA,OAAO,CAAC,KAAK,CACX,sDAAsD,EACtD,KAAK,CACN;AACD,gBAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CACZ,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAC7B,qDAAqD,CACtD,CACF;YACH,CAAC;AACF,SAAA,CAAC;IACN;AAEA,IAAA,MAAM,CAAC,IAA0B,EAAA;AAC/B,QAAA,IAAI,IAAI,CAAC,QAAQ,EAAE,KAAK,IAAI,EAAE;YAC5B;QACF;QACA,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;AAC1B,QAAA,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,KAAK,UAAU;QAC3C,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,0BAA0B,EAAE;AACvD,YAAA,IAAI,EAAE;AACJ,gBAAA,KAAK,EAAE;sBACH,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,0BAA0B;sBAC1D,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,eAAe,CAAC;AACpD,gBAAA,OAAO,EAAE;sBACL,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAC7B,iFAAiF;sBAEnF,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAC7B,gEAAgE,CACjE;AACL,gBAAA,WAAW,EAAE;sBACT,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,oBAAoB;sBACpD,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,QAAQ,CAAC;AAC9C,aAAA;AACF,SAAA,CAAC;QACF;AACG,aAAA,WAAW;AACX,aAAA,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,UAAU,CAAC;aACxC,SAAS,CAAC,SAAS,IAAG;YACrB,IAAI,CAAC,SAAS,EAAE;AACd,gBAAA,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC;gBACvB;YACF;AACA,YAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;YAClB,IAAI,QAAQ,EAAE;AACZ,gBAAA,IAAI,CAAC;qBACF,wBAAwB,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,OAAO;qBAC9C,IAAI,CACH,kBAAkB,CAAC,IAAI,CAAC,UAAU,CAAC,EACnC,QAAQ,CAAC,MAAM,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;AAExC,qBAAA,SAAS,CAAC;AACT,oBAAA,IAAI,EAAE,MAAM,IAAI,CAAC,MAAM,EAAE;AACzB,oBAAA,KAAK,EAAE,CAAC,KAAc,KAAI;AACxB,wBAAA,OAAO,CAAC,KAAK,CACX,mDAAmD,EACnD,KAAK,CACN;AACD,wBAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CACZ,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAC7B,mEAAmE,CACpE,CACF;oBACH,CAAC;AACF,iBAAA,CAAC;YACN;iBAAO;AACL,gBAAA,IAAI,CAAC;qBACF,aAAa,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,OAAO;qBACnC,IAAI,CACH,kBAAkB,CAAC,IAAI,CAAC,UAAU,CAAC,EACnC,QAAQ,CAAC,MAAM,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;AAExC,qBAAA,SAAS,CAAC;AACT,oBAAA,IAAI,EAAE,MAAM,IAAI,CAAC,MAAM,EAAE;AACzB,oBAAA,KAAK,EAAE,CAAC,KAAc,KAAI;AACxB,wBAAA,OAAO,CAAC,KAAK,CACX,mDAAmD,EACnD,KAAK,CACN;AACD,wBAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CACZ,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAC7B,mEAAmE,CACpE,CACF;oBACH,CAAC;AACF,iBAAA,CAAC;YACN;AACF,QAAA,CAAC,CAAC;IACN;8GApQoB,uBAAuB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;kGAAvB,uBAAuB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;2FAAvB,uBAAuB,EAAA,UAAA,EAAA,CAAA;kBAD5C;;;ACID,MAAMA,GAAC,GAAG,WAAW,CAAC,GAAG,CAAC,qFAAqF,EAAE,EAAC,yFAAyF,EAAC,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,sFAAkE,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,sFAAkE,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,sFAAkE,CAAC,EAAE,OAAO,EAAC,EAAC,uFAAuF,EAAC,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,oFAAgE,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,oFAAgE,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,oFAAgE,CAAC,EAAE,OAAO,EAAC,EAAC,uFAAuF,EAAC,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,oFAAgE,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,oFAAgE,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,oFAAgE,CAAC,EAAE,OAAO,EAAC,EAAC,qFAAqF,EAAC,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,kFAA8D,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,kFAA8D,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,kFAA8D,CAAC,EAAE,OAAO,EAAC,EAAC,kFAAkF,EAAC,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,+EAA2D,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,+EAA2D,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,+EAA2D,CAAC,EAAE,OAAO,EAAC,EAAQ,CAAC;MAQ9nE,8BAA8B,CAAA;AAN3C,IAAA,WAAA,GAAA;AAOW,QAAA,IAAA,CAAA,CAAC,GAAGA,GAAC,CAAC,GAAG,CAAC,IAAI,CAAC;AAQP,QAAA,IAAA,CAAA,GAAG,GAAG,MAAM,CAAC,wBAAwB,CAAC;AAEtC,QAAA,IAAA,CAAA,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC;AAEvC,QAAA,IAAA,CAAA,KAAK,GAAG,MAAM,CAAyB,EAAE,iDAAC;AAE1C,QAAA,IAAA,CAAA,OAAO,GAAG,MAAM,CAAC,KAAK,mDAAC;AAEvB,QAAA,IAAA,CAAA,KAAK,GAAG,MAAM,CAAC,EAAE,iDAAC;AAElB,QAAA,IAAA,CAAA,YAAY,GAAG,MAAM,CAAC,EAAE,wDAAC;AAEzB,QAAA,IAAA,CAAA,YAAY,GAAG,MAAM,CAGpB,IAAI,wDAAC;AAEN,QAAA,IAAA,CAAA,iBAAiB,GAAG,MAAM,CAAC,EAAE,6DAAC;QAE9B,IAAA,CAAA,iBAAiB,GAAG,MAAM,EAAwB;QAE3D,IAAA,CAAA,OAAO,GAAoB,EAAE;AA0E9B,IAAA;IAxEC,QAAQ,GAAA;QACN,IAAI,CAAC,OAAO,GAAG;YACb,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE;AAC7C,YAAA,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE;AACnE,YAAA,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;AACrE,YAAA,IAAI,CAAC,aAAa;SACnB;QACD,IAAI,CAAC,MAAM,EAAE;AACb,QAAA,KAAK,IAAI,CAAC,gBAAgB,EAAE;IAC9B;AAEQ,IAAA,MAAM,gBAAgB,GAAA;AAC5B,QAAA,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,EAAE,CAAC;AAC9B,QAAA,IAAI;AACF,YAAA,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QACvE;QAAE,OAAO,KAAc,EAAE;AACvB,YAAA,OAAO,CAAC,KAAK,CACX,gEAAgE,EAChE,KAAK,CACN;AACD,YAAA,IAAI,CAAC,iBAAiB,CAAC,GAAG,CACxB,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,2CAA2C,CAAC,CAC5D;QACH;IACF;IAEA,iBAAiB,CAAC,KAAY,EAAE,IAA0B,EAAA;QACxD,KAAK,CAAC,cAAc,EAAE;AACtB,QAAA,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC;IACnC;IAEA,MAAM,GAAA;AACJ,QAAA,IAAI,IAAI,CAAC,OAAO,EAAE,EAAE;YAClB;QACF;AACA,QAAA,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC;AACtB,QAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;QAClB,IAAI,CAAC,GAAG,CAAC,gBAAgB,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE;aACrC,IAAI,CACH,kBAAkB,CAAC,IAAI,CAAC,UAAU,CAAC,EACnC,QAAQ,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;AAExC,aAAA,SAAS,CAAC;YACT,IAAI,EAAE,KAAK,IACT,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,KAAK,UAAU,CAAC,CAAC;AAClE,YAAA,KAAK,EAAE,CAAC,KAAc,KAAI;AACxB,gBAAA,OAAO,CAAC,KAAK,CACX,yDAAyD,EACzD,KAAK,CACN;AACD,gBAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CACZ,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,oDAAoD,CAAC,CACrE;YACH,CAAC;AACF,SAAA,CAAC;IACN;AAEA,IAAA,MAAM,cAAc,GAAA;AAClB,QAAA,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC;AACzB,QAAA,IAAI;AACF,YAAA,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE;AACxB,gBAAA,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC;YACrD;AACA,YAAA,MAAM,SAAS,CAAC,SAAS,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;AACrD,YAAA,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,qBAAqB,CAAC,CAAC;QAC9D;QAAE,OAAO,KAAc,EAAE;AACvB,YAAA,OAAO,CAAC,KAAK,CAAC,uDAAuD,EAAE,KAAK,CAAC;AAC7E,YAAA,IAAI,CAAC,YAAY,CAAC,GAAG,CACnB,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,sCAAsC,CAAC,CACvD;QACH;IACF;8GAvGW,8BAA8B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAA9B,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,8BAA8B,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,0BAAA,EAAA,MAAA,EAAA,EAAA,MAAA,EAAA,QAAA,EAAA,aAAA,EAAA,eAAA,EAAA,EAAA,OAAA,EAAA,EAAA,iBAAA,EAAA,mBAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EC7B3C,+mDAoDA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,ED1BY,eAAe,oXAAE,sBAAsB,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,CAAA,YAAA,EAAA,UAAA,EAAA,iBAAA,EAAA,gBAAA,EAAA,mBAAA,EAAA,sBAAA,EAAA,SAAA,EAAA,YAAA,EAAA,eAAA,EAAA,MAAA,EAAA,YAAA,EAAA,iBAAA,EAAA,sBAAA,EAAA,mBAAA,EAAA,SAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,eAAA,CAAA,EAAA,OAAA,EAAA,CAAA,iBAAA,EAAA,YAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;;2FAGtC,8BAA8B,EAAA,UAAA,EAAA,CAAA;kBAN1C,SAAS;+BACE,0BAA0B,EAAA,eAAA,EACnB,uBAAuB,CAAC,MAAM,WACtC,CAAC,eAAe,EAAE,sBAAsB,CAAC,EAAA,QAAA,EAAA,+mDAAA,EAAA;;sBAMjD,KAAK;uBAAC,EAAE,QAAQ,EAAE,IAAI,EAAE;;sBAGxB,KAAK;uBAAC,EAAE,QAAQ,EAAE,IAAI,EAAE;;;AEjCrB,SAAU,mBAAmB,CAAC,IAAwB,EAAA;IAC1D,OAAO,CAAA,gBAAA,EAAmB,IAAI,CAAA,CAAE;AAClC;AAEM,SAAU,mBAAmB,CAAC,GAAW,EAAA;IAC7C,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC,IAAI,CACjD,KAAK,IAAI,GAAG,KAAK,mBAAmB,CAAC,KAAK,CAAC,CAC5C;IACD,IAAI,CAAC,IAAI,EAAE;AACT,QAAA,OAAO,IAAI;IACb;AACA,IAAA,MAAM,MAAM,GAAuC;AACjD,QAAA,MAAM,EACJ,oEAAoE;AACtE,QAAA,KAAK,EACH,2FAA2F;AAC7F,QAAA,KAAK,EAAE,8DAA8D;AACrE,QAAA,UAAU,EACR,0EAA0E;KAC7E;IACD,MAAM,GAAG,GAAG,CAAA,mbAAA,EAAsb,MAAM,CAAC,IAAI,CAAC,YAAY;AAC1d,IAAA,OAAO,sBAAsB,kBAAkB,CAAC,GAAG,CAAC,EAAE;AACxD;AAEM,SAAU,iBAAiB,CAAC,MAAyB,EAAA;IACzD,IAAI,OAAO,GAAG,CAAC;AACf,IAAA,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,MAAM,CAAC,MAAM,EAAE,KAAK,IAAI,CAAC,EAAE;AACrD,QAAA,MAAM,SAAS,GACb,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC;AACtB,YAAA,MAAM,GAAG,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC;AAC1B,YAAA,MAAM,GAAG,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC;AAC5B,QAAA,IAAI,SAAS,GAAG,EAAE,EAAE;YAClB,OAAO,IAAI,CAAC;QACd;IACF;AACA,IAAA,OAAO,MAAM,CAAC,MAAM,GAAG,OAAO,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,CAAC;AAC1D;AAEA,SAAS,UAAU,CACjB,KAAuB,EACvB,KAAa,EACb,MAAkB,EAAA;IAElB,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,KAAI;QACrC,MAAM,OAAO,GAAG,MAAK;YACnB,YAAY,CAAC,OAAO,CAAC;AACrB,YAAA,KAAK,CAAC,mBAAmB,CAAC,KAAK,EAAE,IAAI,CAAC;AACtC,YAAA,KAAK,CAAC,mBAAmB,CAAC,OAAO,EAAE,MAAM,CAAC;AAC5C,QAAA,CAAC;QACD,MAAM,IAAI,GAAG,MAAK;AAChB,YAAA,OAAO,EAAE;AACT,YAAA,OAAO,EAAE;AACX,QAAA,CAAC;QACD,MAAM,MAAM,GAAG,MAAK;AAClB,YAAA,OAAO,EAAE;AACT,YAAA,MAAM,CAAC,IAAI,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE,OAAO,IAAI,wBAAwB,CAAC,CAAC;AACrE,QAAA,CAAC;AACD,QAAA,MAAM,OAAO,GAAG,UAAU,CAAC,MAAK;AAC9B,YAAA,OAAO,EAAE;AACT,YAAA,MAAM,CAAC,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;QAChD,CAAC,EAAE,KAAK,CAAC;AACT,QAAA,KAAK,CAAC,gBAAgB,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;AACnD,QAAA,KAAK,CAAC,gBAAgB,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;AACvD,QAAA,IAAI;AACF,YAAA,MAAM,EAAE;QACV;QAAE,OAAO,KAAc,EAAE;AACvB,YAAA,OAAO,EAAE;YACT,MAAM,CAAC,KAAK,CAAC;QACf;AACF,IAAA,CAAC,CAAC;AACJ;AAEO,eAAe,sBAAsB,CAAC,IAAU,EAAA;IACrD,MAAM,KAAK,GAAG,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC;IAC7C,MAAM,GAAG,GAAG,GAAG,CAAC,eAAe,CAAC,IAAI,CAAC;AACrC,IAAA,IAAI;AACF,QAAA,KAAK,CAAC,KAAK,GAAG,IAAI;AAClB,QAAA,KAAK,CAAC,WAAW,GAAG,IAAI;AACxB,QAAA,KAAK,CAAC,OAAO,GAAG,MAAM;AACtB,QAAA,MAAM,UAAU,CAAC,KAAK,EAAE,YAAY,EAAE,MAAK;AACzC,YAAA,KAAK,CAAC,GAAG,GAAG,GAAG;YACf,KAAK,CAAC,IAAI,EAAE;AACd,QAAA,CAAC,CAAC;QACF,IAAI,CAAC,KAAK,CAAC,UAAU,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE;AAC3C,YAAA,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC;QAC3D;QACA,MAAM,QAAQ,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC;AACjD,QAAA,QAAQ,CAAC,KAAK,GAAG,EAAE;QACnB,QAAQ,CAAC,MAAM,GAAG,IAAI,CAAC,GAAG,CACxB,CAAC,EACD,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,KAAK,CAAC,WAAW,IAAI,KAAK,CAAC,UAAU,CAAC,CACxD;AACD,QAAA,MAAM,OAAO,GAAG,QAAQ,CAAC,UAAU,CAAC,IAAI,EAAE,EAAE,kBAAkB,EAAE,IAAI,EAAE,CAAC;QACvE,IAAI,CAAC,OAAO,EAAE;AACZ,YAAA,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC;QAC3C;AACA,QAAA,MAAM,IAAI,GAAG,OAAO,IAAY,KAAI;AAClC,YAAA,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,WAAW,GAAG,IAAI,CAAC,GAAG,KAAK,EAAE;AAC9C,gBAAA,MAAM,UAAU,CAAC,KAAK,EAAE,QAAQ,EAAE,MAAK;AACrC,oBAAA,KAAK,CAAC,WAAW,GAAG,IAAI;AAC1B,gBAAA,CAAC,CAAC;YACJ;AACF,QAAA,CAAC;QACD,MAAM,GAAG,GAAG,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,QAAQ;AACxC,cAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,QAAQ,GAAG,IAAI,CAAC;cAC9C,CAAC;QACL,IAAI,QAAQ,GAAG,CAAC;AAChB,QAAA,IAAI,SAAS,GAAG,CAAC,CAAC;QAClB,IAAI,KAAK,GAAG,KAAK;AACjB,QAAA,KAAK,IAAI,IAAI,GAAG,CAAC,EAAE,IAAI,IAAI,GAAG,EAAE,IAAI,IAAI,IAAI,EAAE;AAC5C,YAAA,MAAM,IAAI,CAAC,IAAI,CAAC;AAChB,YAAA,OAAO,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC,EAAE,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC;YAC/D,MAAM,KAAK,GAAG,iBAAiB,CAC7B,OAAO,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC,IAAI,CACjE;AACD,YAAA,IAAI,KAAK,GAAG,SAAS,EAAE;gBACrB,SAAS,GAAG,KAAK;gBACjB,QAAQ,GAAG,IAAI;YACjB;;AAEA,YAAA,IAAI,KAAK,IAAI,IAAI,EAAE;gBACjB,KAAK,GAAG,IAAI;gBACZ;YACF;QACF;QACA,IAAI,CAAC,KAAK,EAAE;AACV,YAAA,MAAM,IAAI,CAAC,QAAQ,CAAC;QACtB;QACA,MAAM,MAAM,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC;QAC/C,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,GAAG,KAAK,CAAC,UAAU,EAAE,GAAG,GAAG,KAAK,CAAC,WAAW,CAAC;QAC3E,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,UAAU,GAAG,KAAK,CAAC,CAAC;QAChE,MAAM,CAAC,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,WAAW,GAAG,KAAK,CAAC,CAAC;QAClE,MAAM,MAAM,GAAG,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC;QACtC,IAAI,CAAC,MAAM,EAAE;AACX,YAAA,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC;QAC3C;AACA,QAAA,MAAM,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC;QAC1D,OAAO,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,KAAI;AACjD,YAAA,MAAM,CAAC,MAAM,CACX,IAAI,IACF;AACE,kBAAE,OAAO,CAAC,IAAI;AACd,kBAAE,MAAM,CAAC,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC,EACrD,YAAY,EACZ,IAAI,CACL;AACH,QAAA,CAAC,CAAC;IACJ;YAAU;AACR,QAAA,IAAI;YACF,KAAK,CAAC,KAAK,EAAE;AACb,YAAA,KAAK,CAAC,eAAe,CAAC,KAAK,CAAC;YAC5B,KAAK,CAAC,IAAI,EAAE;QACd;gBAAU;AACR,YAAA,GAAG,CAAC,eAAe,CAAC,GAAG,CAAC;QAC1B;IACF;AACF;;AC7IA,MAAMA,GAAC,GAAG,WAAW,CAAC,GAAG,CAAC,kFAAkF,EAAE,EAAC,yFAAyF,EAAC,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,sFAAkE,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,sFAAkE,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,sFAAkE,CAAC,EAAE,OAAO,EAAC,EAAC,uFAAuF,EAAC,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,oFAAgE,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,oFAAgE,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,oFAAgE,CAAC,EAAE,OAAO,EAAC,EAAC,uFAAuF,EAAC,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,oFAAgE,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,oFAAgE,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,oFAAgE,CAAC,EAAE,OAAO,EAAC,EAAC,qFAAqF,EAAC,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,kFAA8D,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,kFAA8D,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,kFAA8D,CAAC,EAAE,OAAO,EAAC,EAAC,kFAAkF,EAAC,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,+EAA2D,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,+EAA2D,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,+EAA2D,CAAC,EAAE,OAAO,EAAC,EAAQ,CAAC;MAqB3nE,2BAA2B,CAAA;AAnBxC,IAAA,WAAA,GAAA;AAoBW,QAAA,IAAA,CAAA,CAAC,GAAGA,GAAC,CAAC,GAAG,CAAC,IAAI,CAAC;AAKP,QAAA,IAAA,CAAA,GAAG,GAAG,MAAM,CAAC,wBAAwB,CAAC;AAEtC,QAAA,IAAA,CAAA,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC;AAEvC,QAAA,IAAA,CAAA,GAAG,GAAG,MAAM,CAAC,EAAE,+CAAC;AAEhB,QAAA,IAAA,CAAA,OAAO,GAAG,MAAM,CAAC,KAAK,mDAAC;AAEvB,QAAA,IAAA,CAAA,KAAK,GAAG,MAAM,CAAC,EAAE,iDAAC;AAuC5B,IAAA;IArCC,QAAQ,GAAA;AACN,QAAA,KAAK,IAAI,CAAC,MAAM,EAAE;IACpB;AAEA,IAAA,MAAM,MAAM,GAAA;AACV,QAAA,IAAI,IAAI,CAAC,OAAO,EAAE,EAAE;YAClB;QACF;AACA,QAAA,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC;AACtB,QAAA,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;AAChB,QAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;AAClB,QAAA,IAAI;YACF,MAAM,GAAG,GACP,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,IAAI,EAAE,CAAC;AACjD,gBAAA,MAAM,IAAI,CAAC,GAAG,CAAC,sBAAsB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;YACvD,IAAI,CAAC,GAAG,EAAE;AACR,gBAAA,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC;YAChD;AACA,YAAA,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,SAAS,EAAE;AAC9B,gBAAA,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC;YACnB;QACF;QAAE,OAAO,KAAc,EAAE;AACvB,YAAA,OAAO,CAAC,KAAK,CAAC,kDAAkD,EAAE,KAAK,CAAC;AACxE,YAAA,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,SAAS,EAAE;gBAC9B,IAAI,CAAC,MAAM,EAAE;YACf;QACF;gBAAU;AACR,YAAA,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,SAAS,EAAE;AAC9B,gBAAA,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC;YACzB;QACF;IACF;IAEA,MAAM,GAAA;AACJ,QAAA,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;AAChB,QAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,0BAA0B,CAAC,CAAC;IAC5D;8GApDW,2BAA2B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;kGAA3B,2BAA2B,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,uBAAA,EAAA,MAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECtCxC,+LAMA,EAAA,MAAA,EAAA,CAAA,mHAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EDgBY,eAAe,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,SAAA,EAAA,QAAA,EAAA,iOAAA,EAAA,MAAA,EAAA,CAAA,WAAA,CAAA,EAAA,QAAA,EAAA,CAAA,WAAA,EAAA,WAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;;2FAgBd,2BAA2B,EAAA,UAAA,EAAA,CAAA;kBAnBvC,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,uBAAuB,mBAChB,uBAAuB,CAAC,MAAM,EAAA,OAAA,EACtC,CAAC,eAAe,CAAC,EAAA,QAAA,EAAA,+LAAA,EAAA,MAAA,EAAA,CAAA,mHAAA,CAAA,EAAA;;sBAmBzB,KAAK;uBAAC,EAAE,QAAQ,EAAE,IAAI,EAAE;;;AEb3B,MAAMA,GAAC,GAAG,WAAW,CAAC,GAAG,CAAC,uFAAuF,EAAE,EAAC,yFAAyF,EAAC,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,sFAAkE,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,sFAAkE,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,sFAAkE,CAAC,EAAE,OAAO,EAAC,EAAC,uFAAuF,EAAC,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,oFAAgE,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,oFAAgE,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,oFAAgE,CAAC,EAAE,OAAO,EAAC,EAAC,uFAAuF,EAAC,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,oFAAgE,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,oFAAgE,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,oFAAgE,CAAC,EAAE,OAAO,EAAC,EAAC,qFAAqF,EAAC,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,kFAA8D,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,kFAA8D,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,kFAA8D,CAAC,EAAE,OAAO,EAAC,EAAC,kFAAkF,EAAC,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,+EAA2D,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,+EAA2D,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,+EAA2D,CAAC,EAAE,OAAO,EAAC,EAAQ,CAAC;AAoBvoE,MAAO,gCACX,SAAQ,uBAAuB,CAAA;AAnBjC,IAAA,WAAA,GAAA;;AAqBW,QAAA,IAAA,CAAA,CAAC,GAAGA,GAAC,CAAC,GAAG,CAAC,IAAI,CAAC;AAWI,QAAA,IAAA,CAAA,QAAQ,GAAG,CAAC,UAAU,CAAC;QAEvB,IAAA,CAAA,WAAW,GAAG,SAAkB;AAEnD,QAAA,IAAA,CAAA,OAAO,GAAG,MAAM,CAAyB,EAAE,mDAAC;AAE5C,QAAA,IAAA,CAAA,OAAO,GAAG,MAAM,CAAC,KAAK,mDAAC;QAEhC,IAAA,CAAA,OAAO,GAAoB,EAAE;AAmD9B,IAAA;IAjDC,QAAQ,GAAA;QACN,IAAI,CAAC,OAAO,GAAG;AACb,YAAA,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE;AAC/D,YAAA;gBACE,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC;AAC/B,gBAAA,KAAK,EAAE,cAAc;gBACrB,YAAY,EAAE,IAAI,CAAC,aAAa;AAChC,gBAAA,KAAK,EAAE,OAAO;AACf,aAAA;AACD,YAAA,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE;AACnE,YAAA;gBACE,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC;AACpC,gBAAA,KAAK,EAAE,QAAQ;AACf,gBAAA,QAAQ,EAAE,IAAI;gBACd,YAAY,EAAE,IAAI,CAAC,kBAAkB;AACtC,aAAA;AACD,YAAA,IAAI,CAAC,aAAa;AACnB,SAAA,CAAC,GAAG,CAAC,MAAM,KAAK;AACf,YAAA,GAAG,MAAM;AACT,YAAA,KAAK,EAAE,CAAC,IAA0B,KAChC,IAAI,EAAE,MAAM,KAAK,WAAW,GAAG,mBAAmB,GAAG,oBAAoB;AAC5E,SAAA,CAAC,CAAC;QACH,IAAI,CAAC,MAAM,EAAE;IACf;IAEA,MAAM,GAAA;AACJ,QAAA,IAAI,IAAI,CAAC,OAAO,EAAE,EAAE;YAClB;QACF;AACA,QAAA,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC;AACtB,QAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;AAClB,QAAA,IAAI,CAAC,wBAAwB,CAAC,WAAW;aACtC,IAAI,CACH,kBAAkB,CAAC,IAAI,CAAC,UAAU,CAAC,EACnC,QAAQ,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;AAExC,aAAA,SAAS,CAAC;AACT,YAAA,IAAI,EAAE,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC;AAC1C,YAAA,KAAK,EAAE,CAAC,KAAc,KAAI;AACxB,gBAAA,OAAO,CAAC,KAAK,CACX,qDAAqD,EACrD,KAAK,CACN;AACD,gBAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CACZ,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,oDAAoD,CAAC,CACrE;YACH,CAAC;AACF,SAAA,CAAC;IACN;8GAxEW,gCAAgC,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;kGAAhC,gCAAgC,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,4BAAA,EAAA,SAAA,EAFhC,CAAC,wBAAwB,CAAC,EAAA,WAAA,EAAA,CAAA,EAAA,YAAA,EAAA,WAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAO1B,sBAAsB,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,EAAA,YAAA,EAAA,eAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,CAAA,eAAA,CAAA,EAAA,WAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,EAAA,EAAA,YAAA,EAAA,oBAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,WAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,CAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECrDnC,00EAiEA,EAAA,MAAA,EAAA,CAAA,sNAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,ED7BI,WAAW,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAG,IAAA,CAAA,oBAAA,EAAA,QAAA,EAAA,8MAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,eAAA,EAAA,QAAA,EAAA,2CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,OAAA,EAAA,QAAA,EAAA,qDAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,SAAA,EAAA,gBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,eAAA,CAAA,EAAA,QAAA,EAAA,CAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EACX,eAAe,mXACf,kBAAkB,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,EAAA,CAAA,YAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,CAAA,oBAAA,EAAA,OAAA,EAAA,YAAA,EAAA,YAAA,EAAA,iBAAA,EAAA,WAAA,CAAA,EAAA,QAAA,EAAA,CAAA,cAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,EAAA,CAAA,QAAA,EAAA,QAAA,EAAA,WAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAClB,aAAa,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,IAAA,CAAA,OAAA,EAAA,QAAA,EAAA,UAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,SAAA,EAAA,SAAA,EAAA,UAAA,CAAA,EAAA,QAAA,EAAA,CAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EACb,cAAc,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,QAAA,EAAA,QAAA,EAAA,yHAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,IAAA,EAAA,aAAA,EAAA,MAAA,EAAA,UAAA,EAAA,MAAA,EAAA,mBAAA,EAAA,kBAAA,EAAA,OAAA,EAAA,UAAA,EAAA,qBAAA,CAAA,EAAA,QAAA,EAAA,CAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EACd,eAAe,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAE,IAAA,CAAA,SAAA,EAAA,QAAA,EAAA,YAAA,EAAA,MAAA,EAAA,CAAA,kBAAA,EAAA,YAAA,EAAA,UAAA,EAAA,eAAA,EAAA,UAAA,EAAA,8BAAA,EAAA,aAAA,EAAA,UAAA,EAAA,UAAA,EAAA,wBAAA,EAAA,aAAA,EAAA,OAAA,EAAA,YAAA,EAAA,iBAAA,EAAA,mBAAA,EAAA,2BAAA,EAAA,gBAAA,EAAA,IAAA,EAAA,YAAA,EAAA,0BAAA,CAAA,EAAA,OAAA,EAAA,CAAA,cAAA,EAAA,QAAA,EAAA,QAAA,EAAA,iBAAA,EAAA,aAAA,CAAA,EAAA,QAAA,EAAA,CAAA,WAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,SAAA,EAAA,QAAA,EAAA,YAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,IAAA,EAAA,UAAA,CAAA,EAAA,OAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,QAAA,EAAA,CAAA,WAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EACf,sBAAsB,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,CAAA,YAAA,EAAA,UAAA,EAAA,iBAAA,EAAA,gBAAA,EAAA,mBAAA,EAAA,sBAAA,EAAA,SAAA,EAAA,YAAA,EAAA,eAAA,EAAA,MAAA,EAAA,YAAA,EAAA,iBAAA,EAAA,sBAAA,EAAA,mBAAA,EAAA,SAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,eAAA,CAAA,EAAA,OAAA,EAAA,CAAA,iBAAA,EAAA,YAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EACtB,8BAA8B,EAAA,QAAA,EAAA,0BAAA,EAAA,MAAA,EAAA,CAAA,QAAA,EAAA,eAAA,CAAA,EAAA,OAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAC9B,2BAA2B,EAAA,QAAA,EAAA,uBAAA,EAAA,MAAA,EAAA,CAAA,MAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;;2FAIlB,gCAAgC,EAAA,UAAA,EAAA,CAAA;kBAlB5C,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,4BAA4B,EAAA,eAAA,EAGrB,uBAAuB,CAAC,MAAM,EAAA,OAAA,EACtC;wBACP,WAAW;wBACX,eAAe;wBACf,kBAAkB;wBAClB,aAAa;wBACb,cAAc;wBACd,eAAe;wBACf,sBAAsB;wBACtB,8BAA8B;wBAC9B,2BAA2B;qBAC5B,EAAA,SAAA,EACU,CAAC,wBAAwB,CAAC,EAAA,QAAA,EAAA,00EAAA,EAAA,MAAA,EAAA,CAAA,sNAAA,CAAA,EAAA;;sBAOpC,SAAS;uBAAC,sBAAsB;;sBAGhC,SAAS;AAAC,gBAAA,IAAA,EAAA,CAAA,eAAe,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE;;sBAG3C,SAAS;AAAC,gBAAA,IAAA,EAAA,CAAA,oBAAoB,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE;;;;;;;;AEzD5C,MAAM,6BAA6B,GAAW;AACnD,IAAA;AACE,QAAA,IAAI,EAAE,EAAE;AACR,QAAA,SAAS,EAAE,MAAM;AACjB,QAAA,aAAa,EAAE,MACb,iFAAgD,CAAC,IAAI,CACnD,CAAC,IAAI,CAAC,CAAC,gCAAgC,CACxC;AACJ,KAAA;;;ACRH,MAAM,sBAAsB,GAAG;AAC7B,IAAA,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI;CAC/C;AACD,MAAM,YAAY,GAAG,UAAU;AAC/B,MAAM,WAAW,GAAG,UAAU;AAEvB,eAAe,mBAAmB,CAAC,IAAU,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA6BlD,IAAA,QAAQ,KAAK,CAAC;AAChB;AAEA,eAAe,OAAO,CAAC,IAAU,EAAA;;;;;;;;;;AAU/B,IAAA,QAAQ,KAAK,CAAC;AAChB;AAEA,eAAe,qBAAqB,CAAC,IAAU,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA+C7C,IAAA,QAAQ,KAAK,CAAC;AAChB;AAEA,SAAS,oBAAoB,CAAC,KAAiB,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAoH7C,IAAA,QAAQ,KAAK,CAAC;AAChB;AAEA,SAAS,gBAAgB,CAAC,KAAiB,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAmLzC,IAAA,QAAQ,KAAK,CAAC;AAChB;AAEA,SAAS,QAAQ,CAAC,GAAW,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA0H3B,IAAA,QAAQ,KAAK,CAAC;AAChB;AAEA,SAAS,cAAc,CAAC,IAAY,EAAA;;;;;;;;AAQlC,IAAA,QAAQ,KAAK,CAAC;AAChB;AAEA,SAAS,UAAU,CAAC,IAAY,EAAA;;;;;;;;AAQ9B,IAAA,QAAQ,KAAK,CAAC;AAChB;AAEA,SAAS,MAAM,CAAC,MAAoB,EAAA;;;;;;;;;;AAUlC,IAAA,QAAQ,KAAK,CAAC;AAChB;;MCniBa,wBAAwB,CAAA;AAHrC,IAAA,WAAA,GAAA;AAImB,QAAA,IAAA,CAAA,OAAO,GAAG,MAAM,CAA0B,UAAU;AAClE,aAAA,aAAa;AACC,QAAA,IAAA,CAAA,SAAS,GAAG,MAAM,CAAC,YAAY,CAAC;QACzC,IAAA,CAAA,KAAK,GAAG,EAAE;QACV,IAAA,CAAA,SAAS,GAAG,KAAK;QAEhB,IAAA,CAAA,qBAAqB,GAAoB,MAAM;QAC/C,IAAA,CAAA,yBAAyB,GAAG,KAAK;AACvB,QAAA,IAAA,CAAA,qBAAqB,GAAG,IAAI,YAAY,EAAU;AAuFtE,IAAA;IArFC,IACI,eAAe,CAAC,KAAa,EAAA;AAC/B,QAAA,IAAI,KAAK,KAAK,IAAI,CAAC,KAAK,EAAE;YACxB;QACF;AACA,QAAA,IAAI,CAAC,KAAK,GAAG,KAAK;QAClB,IAAI,CAAC,MAAM,EAAE;IACf;IAGA,gBAAgB,GAAA;AACd,QAAA,IAAI,CAAC,SAAS,GAAG,IAAI;IACvB;IAGA,cAAc,GAAA;AACZ,QAAA,IAAI,CAAC,SAAS,GAAG,KAAK;QACtB,IAAI,CAAC,OAAO,EAAE;IAChB;IAGA,OAAO,GAAA;AACL,QAAA,IAAI,IAAI,CAAC,SAAS,EAAE;YAClB;QACF;AACA,QAAA,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS;AACnC,QAAA,IAAI,CAAC,KAAK;YACR,IAAI,CAAC,qBAAqB,KAAK;kBAC3B,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS;kBACpC,IAAI,CAAC;sBACH,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,GAAG;sBAC7B,IAAI;;QAEZ,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC;IAC7C;IAGA,MAAM,GAAA;QACJ,IAAI,CAAC,OAAO,EAAE;QACd,IAAI,CAAC,MAAM,EAAE;IACf;AAGA,IAAA,SAAS,CAAC,KAAoB,EAAA;QAC5B,IAAI,IAAI,CAAC,yBAAyB,IAAI,KAAK,CAAC,GAAG,KAAK,OAAO,EAAE;YAC3D,KAAK,CAAC,cAAc,EAAE;QACxB;IACF;AAGA,IAAA,OAAO,CAAC,KAAqB,EAAA;QAC3B,KAAK,CAAC,cAAc,EAAE;QACtB,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,YAAY,EAAE;QAC3D,IAAI,CAAC,SAAS,EAAE,UAAU,IAAI,CAAC,KAAK,CAAC,aAAa,EAAE;YAClD;QACF;QACA,MAAM,KAAK,GAAG,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC;AACrC,QAAA,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,uBAAuB,CAAC,EAAE;YACzD;QACF;QACA,MAAM,MAAM,GAAG,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,YAAY,CAAC;AACxD,QAAA,MAAM,IAAI,GAAG,IAAI,CAAC;cACd,MAAM,CAAC,OAAO,CAAC,WAAW,EAAE,GAAG;cAC/B,MAAM;QACV,KAAK,CAAC,cAAc,EAAE;AACtB,QAAA,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,cAAc,CAAC,IAAI,CAAC;AAC5D,QAAA,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC;AACtB,QAAA,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC;AACzB,QAAA,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC;QACpB,SAAS,CAAC,eAAe,EAAE;AAC3B,QAAA,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC;QACzB,IAAI,CAAC,OAAO,EAAE;IAChB;AAEQ,IAAA,QAAQ,CAAC,KAAa,EAAA;AAC5B,QAAA,OAAO,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,eAAe,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE;IACnE;IAEQ,MAAM,GAAA;AACZ,QAAA,IAAI,IAAI,CAAC,qBAAqB,KAAK,MAAM,EAAE;AACzC,YAAA,IAAI,CAAC,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC;QACpD;aAAO;YACL,IAAI,CAAC,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC,KAAK;QACvC;IACF;8GA/FW,wBAAwB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;kGAAxB,wBAAwB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,mBAAA,EAAA,MAAA,EAAA,EAAA,qBAAA,EAAA,uBAAA,EAAA,yBAAA,EAAA,2BAAA,EAAA,eAAA,EAAA,iBAAA,EAAA,EAAA,OAAA,EAAA,EAAA,qBAAA,EAAA,uBAAA,EAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,kBAAA,EAAA,oBAAA,EAAA,gBAAA,EAAA,kBAAA,EAAA,OAAA,EAAA,WAAA,EAAA,MAAA,EAAA,UAAA,EAAA,SAAA,EAAA,mBAAA,EAAA,OAAA,EAAA,iBAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;2FAAxB,wBAAwB,EAAA,UAAA,EAAA,CAAA;kBAHpC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,mBAAmB;AAC9B,iBAAA;;sBAQE;;sBACA;;sBACA;;sBAEA;;sBASA,YAAY;uBAAC,kBAAkB;;sBAK/B,YAAY;uBAAC,gBAAgB;;sBAM7B,YAAY;uBAAC,OAAO;;sBAgBpB,YAAY;uBAAC,MAAM;;sBAMnB,YAAY;uBAAC,SAAS,EAAE,CAAC,QAAQ,CAAC;;sBAOlC,YAAY;uBAAC,OAAO,EAAE,CAAC,QAAQ,CAAC;;;ACnEnC,MAAMP,GAAC,GAAG,WAAW,CAAC,GAAG,CAAC,uEAAuE,EAAE,EAAC,6EAA6E,EAAC,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,uFAAmE,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,uFAAmE,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,uFAAmE,CAAC,EAAE,OAAO,EAAC,EAAC,2EAA2E,EAAC,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,qFAAiE,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,qFAAiE,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,qFAAiE,CAAC,EAAE,OAAO,EAAC,EAAC,uEAAuE,EAAC,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,iFAA6D,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,iFAA6D,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,iFAA6D,CAAC,EAAE,OAAO,EAAC,EAAC,+DAA+D,EAAC,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,yEAAqD,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,yEAAqD,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,yEAAqD,CAAC,EAAE,OAAO,EAAC,EAAC,6DAA6D,EAAC,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,uEAAmD,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,uEAAmD,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,uEAAmD,CAAC,EAAE,OAAO,EAAC,EAAQ,CAAC;MAkBv+D,6BAA6B,CAAA;AAOxC,IAAA,WAAA,GAAA;AANS,QAAA,IAAA,CAAA,CAAC,GAAGA,GAAC,CAAC,GAAG,CAAC,IAAI,CAAC;AACf,QAAA,IAAA,CAAA,IAAI,GAAG,KAAK,CAAC,QAAQ,+CAAwB;AAC7C,QAAA,IAAA,CAAA,GAAG,GAAG,MAAM,CAAC,EAAE,+CAAC;AAChB,QAAA,IAAA,CAAA,KAAK,GAAG,MAAM,CAAC,EAAE,iDAAC;AACV,QAAA,IAAA,CAAA,wBAAwB,GAAG,MAAM,CAAC,wBAAwB,CAAC;QAG1E,MAAM,CAAC,SAAS,IAAG;YACjB,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC,YAAY;YACpC,IAAI,MAAM,GAAG,IAAI;YACjB,SAAS,CAAC,MAAK,EAAG,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;AACpC,YAAA,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;AAChB,YAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;YAClB,IAAI,CAAC,GAAG,EAAE;gBACR;YACF;AACA,YAAA,MAAM,WAAW,GAAG,mBAAmB,CAAC,GAAG,CAAC;YAC5C,IAAI,WAAW,EAAE;AACf,gBAAA,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,WAAW,CAAC;gBACzB;YACF;AACA,YAAA,KAAK,IAAI,CAAC,wBAAwB,CAAC,WAAW,CAAC,GAAG;iBAC/C,IAAI,CAAC,GAAG,IAAG;gBACV,IAAI,MAAM,EAAE;AACV,oBAAA,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC;gBACnB;AACF,YAAA,CAAC;AACA,iBAAA,KAAK,CAAC,CAAC,KAAc,KAAI;AACxB,gBAAA,OAAO,CAAC,KAAK,CAAC,oDAAoD,EAAE,KAAK,CAAC;gBAC1E,IAAI,MAAM,EAAE;AACV,oBAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,oCAAoC,CAAC,CAAC;gBACtE;AACF,YAAA,CAAC,CAAC;AACN,QAAA,CAAC,CAAC;IACJ;8GAnCW,6BAA6B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAA7B,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,6BAA6B,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,yBAAA,EAAA,MAAA,EAAA,EAAA,IAAA,EAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,UAAA,EAAA,MAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAb9B;;;;;;;AAOT,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,MAAA,EAAA,CAAA,iIAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;;2FAMU,6BAA6B,EAAA,UAAA,EAAA,CAAA;kBAhBzC,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,yBAAyB,EAAA,eAAA,EAClB,uBAAuB,CAAC,MAAM,EAAA,QAAA,EACrC;;;;;;;AAOT,EAAA,CAAA,EAAA,MAAA,EAAA,CAAA,iIAAA,CAAA,EAAA;;;ACKH,MAAMA,GAAC,GAAG,WAAW,CAAC,GAAG,CAAC,qFAAqF,EAAE,EAAC,uFAAuF,EAAC,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,qFAAiE,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,qFAAiE,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,qFAAiE,CAAC,EAAE,OAAO,EAAC,EAAC,qFAAqF,EAAC,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,mFAA+D,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,mFAA+D,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,mFAA+D,CAAC,EAAE,OAAO,EAAC,EAAQ,CAAC;MAU76B,+BAA+B,CAAA;AAuB1C,IAAA,WAAA,GAAA;AAtBS,QAAA,IAAA,CAAA,CAAC,GAAGA,GAAC,CAAC,GAAG,CAAC,IAAI,CAAC;AAEf,QAAA,IAAA,CAAA,IAAI,GAAG,MAAM,CAAuB,eAAe,CAAC;AAEpD,QAAA,IAAA,CAAA,SAAS,GAAG,MAAM,CAAiC,EAAE,qDAAC;AAEtD,QAAA,IAAA,CAAA,QAAQ,GAAG,MAAM,CAAgB,IAAI,oDAAC;AAEtC,QAAA,IAAA,CAAA,OAAO,GAAG,MAAM,CAAC,KAAK,mDAAC;AAEvB,QAAA,IAAA,CAAA,QAAQ,GAAG,MAAM,CAAC,KAAK,oDAAC;AAExB,QAAA,IAAA,CAAA,KAAK,GAAG,MAAM,CAAC,EAAE,iDAAC;AAEV,QAAA,IAAA,CAAA,GAAG,GAAG,MAAM,CAAC,gCAAgC,CAAC;AAE9C,QAAA,IAAA,CAAA,GAAG,GAAG,MAAM,EAC3B,YAAmE,EACpE;AAEgB,QAAA,IAAA,CAAA,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC;QAG9C,IAAI,CAAC,IAAI,EAAE;IACb;AAGA,IAAA,QAAQ,CAAC,KAAoB,EAAA;QAC3B,KAAK,CAAC,eAAe,EAAE;AACvB,QAAA,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE;IAClB;IAEA,IAAI,GAAA;QACF,IAAI,IAAI,CAAC,OAAO,EAAE,IAAI,IAAI,CAAC,QAAQ,EAAE,EAAE;YACrC;QACF;AACA,QAAA,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC;AACvB,QAAA,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC;AACtB,QAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;AAClB,QAAA,IAAI,CAAC;AACF,aAAA,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;aAC1B,IAAI,CACH,kBAAkB,CAAC,IAAI,CAAC,UAAU,CAAC,EACnC,QAAQ,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;AAExC,aAAA,SAAS,CAAC;AACT,YAAA,IAAI,EAAE,SAAS,IACb,IAAI,CAAC,SAAS,CAAC,GAAG,CAChB,CAAC,GAAG,SAAS,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,cAAc,GAAG,CAAC,CAAC,cAAc,CAAC,CACnE;AACH,YAAA,KAAK,EAAE,CAAC,KAAc,KAAI;AACxB,gBAAA,OAAO,CAAC,KAAK,CACX,sDAAsD,EACtD,KAAK,CACN;AACD,gBAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CACZ,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,kDAAkD,CAAC,CACnE;YACH,CAAC;AACF,SAAA,CAAC;IACN;IAEA,KAAK,GAAA;AACH,QAAA,MAAM,cAAc,GAAG,IAAI,CAAC,QAAQ,EAAE;QACtC,IAAI,IAAI,CAAC,OAAO,EAAE,IAAI,IAAI,CAAC,QAAQ,EAAE,EAAE;YACrC;QACF;AACA,QAAA,IAAI,cAAc,KAAK,IAAI,EAAE;AAC3B,YAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,+BAA+B,CAAC,CAAC;YAC/D;QACF;AACA,QAAA,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC;AACvB,QAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;AAClB,QAAA,IAAI,CAAC;AACF,aAAA,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE;YAC5B,cAAc;AACd,YAAA,eAAe,EAAE,IAAI,CAAC,IAAI,CAAC,OAAO;SACnC;aACA,IAAI,CACH,kBAAkB,CAAC,IAAI,CAAC,UAAU,CAAC,EACnC,QAAQ,CAAC,MAAM,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;AAEzC,aAAA,SAAS,CAAC;AACT,YAAA,IAAI,EAAE,IAAI,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC;AAClC,YAAA,KAAK,EAAE,CAAC,KAAc,KAAI;AACxB,gBAAA,OAAO,CAAC,KAAK,CACX,wDAAwD,EACxD,KAAK,CACN;AACD,gBAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CACZ,IAAI,CAAC,CAAC,CAAC,OAAO,CACZ,0GAA0G,CAC3G,CACF;YACH,CAAC;AACF,SAAA,CAAC;IACN;IAEA,MAAM,GAAA;AACJ,QAAA,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE;AACpB,YAAA,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE;QAClB;IACF;8GAvGW,+BAA+B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAA/B,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,+BAA+B,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,2BAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,yBAAA,EAAA,kBAAA,EAAA,EAAA,EAAA,SAAA,EAF/B,CAAC,gCAAgC,CAAC,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECjC/C,yvEA4EA,EAAA,MAAA,EAAA,CAAA,4JAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,ED5CsB,eAAe,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,SAAA,EAAA,QAAA,EAAA,iOAAA,EAAA,MAAA,EAAA,CAAA,WAAA,CAAA,EAAA,QAAA,EAAA,CAAA,WAAA,EAAA,WAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAE,eAAe,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAM,EAAA,CAAA,cAAA,EAAA,QAAA,EAAA,sCAAA,EAAA,MAAA,EAAA,CAAA,IAAA,CAAA,EAAA,QAAA,EAAA,CAAA,gBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,EAAA,CAAA,gBAAA,EAAA,QAAA,EAAA,8DAAA,EAAA,MAAA,EAAA,CAAA,OAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,EAAA,CAAA,gBAAA,EAAA,QAAA,EAAA,8DAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAE,cAAc,olBAA1D,QAAQ,EAAA,IAAA,EAAA,MAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;;2FAGP,+BAA+B,EAAA,UAAA,EAAA,CAAA;kBAR3C,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,2BAA2B,mBAGpB,uBAAuB,CAAC,MAAM,EAAA,OAAA,EACtC,CAAC,QAAQ,EAAE,eAAe,EAAE,eAAe,EAAE,cAAc,CAAC,EAAA,SAAA,EAC1D,CAAC,gCAAgC,CAAC,EAAA,QAAA,EAAA,yvEAAA,EAAA,MAAA,EAAA,CAAA,4JAAA,CAAA,EAAA;;sBA6B5C,YAAY;uBAAC,yBAAyB,EAAE,CAAC,QAAQ,CAAC;;;AEvCrD,MAAMN,GAAC,GAAG,WAAW,CAAC,GAAG,CAAC,qFAAqF,EAAE,EAAC,uFAAuF,EAAC,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,qFAAiE,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,qFAAiE,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,qFAAiE,CAAC,EAAE,OAAO,EAAC,EAAC,qFAAqF,EAAC,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,mFAA+D,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,mFAA+D,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,mFAA+D,CAAC,EAAE,OAAO,EAAC,EAAQ,CAAC;MAoB76B,+BAA+B,CAAA;AA2B1C,IAAA,WAAA,GAAA;AA1BS,QAAA,IAAA,CAAA,CAAC,GAAGA,GAAC,CAAC,GAAG,CAAC,IAAI,CAAC;AAEf,QAAA,IAAA,CAAA,IAAI,GAAG,MAAM,CAA6B,eAAe,CAAC;AAC1D,QAAA,IAAA,CAAA,KAAK,GAAG,MAAM,CAAyB,EAAE,iDAAC;AAC1C,QAAA,IAAA,CAAA,QAAQ,GAAG,MAAM,CAAgB,IAAI,oDAAC;AACtC,QAAA,IAAA,CAAA,KAAK,GAAG,MAAM,CAAC,EAAE,iDAAC;AAClB,QAAA,IAAA,CAAA,OAAO,GAAG,MAAM,CAAC,KAAK,mDAAC;AACvB,QAAA,IAAA,CAAA,KAAK,GAAG,MAAM,CAAC,EAAE,iDAAC;AAClB,QAAA,IAAA,CAAA,aAAa,GAAG,QAAQ,CAAC,MAAK;AACrC,YAAA,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE;AAC/C,YAAA,OAAO,IAAI,CAAC,KAAK,EAAE,CAAC,MAAM,CACxB,IAAI,IACF,IAAI,CAAC,EAAE,KAAK,IAAI,CAAC,IAAI,CAAC,MAAM;gBAC5B,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;AACxC,iBAAC,CAAC,IAAI,CAAC,IAAI,CAAC,gBAAgB;oBAC1B,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBACnD,CAAA,EAAG,IAAI,CAAC,EAAE,CAAA,CAAA,EAAI,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,IAAI,CAAA,CAAE,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,CACxE;AACH,QAAA,CAAC,yDAAC;AAEe,QAAA,IAAA,CAAA,GAAG,GAAG,MAAM,CAAC,wBAAwB,CAAC;AACtC,QAAA,IAAA,CAAA,GAAG,GAAG,MAAM,EAC3B,YAAmE,EACpE;AACgB,QAAA,IAAA,CAAA,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC;QAG9C,IAAI,CAAC,IAAI,EAAE;IACb;IAEA,IAAI,GAAA;AACF,QAAA,IAAI,IAAI,CAAC,OAAO,EAAE,EAAE;YAClB;QACF;AACA,QAAA,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC;AACtB,QAAA,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC;AACvB,QAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;QAClB,IAAI,CAAC,GAAG,CAAC;aACN,IAAI,CACH,kBAAkB,CAAC,IAAI,CAAC,UAAU,CAAC,EACnC,QAAQ,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;AAExC,aAAA,SAAS,CAAC;AACT,YAAA,IAAI,EAAE,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC;AACpC,YAAA,KAAK,EAAE,CAAC,KAAc,KAAI;AACxB,gBAAA,OAAO,CAAC,KAAK,CACX,kDAAkD,EAClD,KAAK,CACN;AACD,gBAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CACZ,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,8CAA8C,CAAC,CAC/D;YACH,CAAC;AACF,SAAA,CAAC;IACN;AAEA,IAAA,MAAM,CAAC,KAAY,EAAA;AACjB,QAAA,IAAI,KAAK,CAAC,MAAM,YAAY,gBAAgB,EAAE;YAC5C,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC;AAClC,YAAA,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC;QACzB;IACF;IAEA,MAAM,GAAA;QACJ,IAAI,IAAI,CAAC,OAAO,EAAE,IAAI,IAAI,CAAC,KAAK,EAAE,EAAE;YAClC;QACF;QACA,MAAM,IAAI,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,EAAE,KAAK,IAAI,CAAC,QAAQ,EAAE,CAAC;QAC3E,IAAI,CAAC,IAAI,EAAE;YACT,IAAI,CAAC,KAAK,CAAC,GAAG,CACZ,IAAI,CAAC,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,wBAAwB,CAAC,CACrE;YACD;QACF;AACA,QAAA,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC;IACtB;IAEA,MAAM,GAAA;AACJ,QAAA,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE;IAClB;8GAhFW,+BAA+B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;kGAA/B,+BAA+B,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,2BAAA,EAAA,SAAA,EAF/B,CAAC,wBAAwB,CAAC,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECzCvC,uqDAwDA,EAAA,MAAA,EAAA,CAAA,sTAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EDhBY,eAAe,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,SAAA,EAAA,QAAA,EAAA,iOAAA,EAAA,MAAA,EAAA,CAAA,WAAA,CAAA,EAAA,QAAA,EAAA,CAAA,WAAA,EAAA,WAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAE,eAAe,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAM,EAAA,CAAA,cAAA,EAAA,QAAA,EAAA,sCAAA,EAAA,MAAA,EAAA,CAAA,IAAA,CAAA,EAAA,QAAA,EAAA,CAAA,gBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,EAAA,CAAA,gBAAA,EAAA,QAAA,EAAA,8DAAA,EAAA,MAAA,EAAA,CAAA,OAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,EAAA,CAAA,gBAAA,EAAA,QAAA,EAAA,8DAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAE,cAAc,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAF,IAAA,CAAA,aAAA,EAAA,QAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,MAAA,EAAA,eAAA,EAAA,OAAA,EAAA,UAAA,EAAA,UAAA,EAAA,UAAA,EAAA,qBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,QAAA,CAAA,EAAA,QAAA,EAAA,CAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,cAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,IAAA,EAAA,MAAA,EAAA,YAAA,EAAA,iBAAA,EAAA,kBAAA,EAAA,eAAA,EAAA,UAAA,EAAA,SAAA,EAAA,OAAA,EAAA,eAAA,EAAA,UAAA,EAAA,UAAA,EAAA,OAAA,EAAA,qBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,QAAA,CAAA,EAAA,QAAA,EAAA,CAAA,gBAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;;2FAG/C,+BAA+B,EAAA,UAAA,EAAA,CAAA;kBAR3C,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,2BAA2B,EAAA,eAAA,EAGpB,uBAAuB,CAAC,MAAM,WACtC,CAAC,eAAe,EAAE,eAAe,EAAE,cAAc,CAAC,EAAA,SAAA,EAChD,CAAC,wBAAwB,CAAC,EAAA,QAAA,EAAA,uqDAAA,EAAA,MAAA,EAAA,CAAA,sTAAA,CAAA,EAAA;;;AEzCvC;AA+GA;AAEA,MAAMJ,GAAC,GAAG,WAAW,CAAC,GAAG,CAAC,6DAA6D,EAAE,EAAC,6EAA6E,EAAC,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,uFAAmE,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,uFAAmE,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,uFAAmE,CAAC,EAAE,OAAO,EAAC,EAAC,2EAA2E,EAAC,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,qFAAiE,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,qFAAiE,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,qFAAiE,CAAC,EAAE,OAAO,EAAC,EAAC,uEAAuE,EAAC,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,iFAA6D,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,iFAA6D,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,iFAA6D,CAAC,EAAE,OAAO,EAAC,EAAC,+DAA+D,EAAC,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,yEAAqD,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,yEAAqD,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,yEAAqD,CAAC,EAAE,OAAO,EAAC,EAAC,6DAA6D,EAAC,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,uEAAmD,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,uEAAmD,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,uEAAmD,CAAC,EAAE,OAAO,EAAC,EAAQ,CAAC;MAmD79D,oBAAoB,CAAA;AA6crB,IAAA,WAAW,CAAC,KAAiB,EAAA;QACrC,KAAK,CAAC,cAAc,EAAE;AAEtB,QAAA,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa,EAAE;AAEnC,QAAA,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,IAAI,EAAE,IAAI,IAAI,CAAC,UAAU,EAAE,EAAE;YAC/C;QACF;QAEA,WAAW,CAAC,MAAM,CAAC;IACrB;;;IAIA,eAAe,GAAA;AACb,QAAA,IAAI,IAAI,CAAC,wBAAwB,EAAE;YACjC,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC,wBAAwB,CAAC;QAChE;IACF;;;AAIA,IAAA,WAAA,GAAA;;AAjeS,QAAA,IAAA,CAAA,CAAC,GAAGA,GAAC,CAAC,GAAG,CAAC,IAAI,CAAC;AAEf,QAAA,IAAA,CAAA,IAAI,GAAG,KAAK,CAA8B,IAAI,gDAAC;AAE/C,QAAA,IAAA,CAAA,IAAI,GAAG,KAAK,CAAkB,MAAM,gDAAC;QAErC,IAAA,CAAA,OAAO,GAAG,MAAM,EAAwB;QAExC,IAAA,CAAA,OAAO,GAAG,MAAM,EAAwB;QAExC,IAAA,CAAA,iBAAiB,GAAG,MAAM,EAAwB;QAElD,IAAA,CAAA,UAAU,GAAG,MAAM,EAAwB;QAE3C,IAAA,CAAA,SAAS,GAAG,MAAM,EAAQ;QAE1B,IAAA,CAAA,qBAAqB,GAAG,MAAM,EAAwB;AAKtD,QAAA,IAAA,CAAA,WAAW,GAAG,MAAM,CAA8B,IAAI,uDAAC;QAEvD,IAAA,CAAA,qBAAqB,GAAG,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CACpD,yBAAyB,CAC1B;QAEQ,IAAA,CAAA,gBAAgB,GAAG,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC;QAEjD,IAAA,CAAA,0BAA0B,GAAG,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CACzD,kCAAkC,CACnC;QAEQ,IAAA,CAAA,wBAAwB,GAC/B,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,oBAAoB,CAAC;QAEpC,IAAA,CAAA,KAAK,GAAG,MAAM,CAAmB;YACxC,IAAI,EAAE,kBAAkB,CAAC,MAAM;AAC/B,YAAA,KAAK,EAAE,EAAE;AACT,YAAA,IAAI,EAAE,EAAE;AACR,YAAA,OAAO,EAAE,EAAE;AACX,YAAA,IAAI,EAAE,EAAE;AACR,YAAA,QAAQ,EAAE,IAAI;AACd,YAAA,QAAQ,EAAE,IAAI;AACd,YAAA,aAAa,EAAE,IAAI;AACnB,YAAA,YAAY,EAAE,IAAI;AAClB,YAAA,UAAU,EAAE,IAAI;AAChB,YAAA,MAAM,EAAE,EAAE;AACX,SAAA,EAAA,IAAA,SAAA,GAAA,CAAA,EAAA,SAAA,EAAA,OAAA,EAAA,CAAA,GAAA,EAAA,CAAA,CAAC;AAEO,QAAA,IAAA,CAAA,SAAS,GAAG;AACnB,YAAA;gBACE,KAAK,EAAE,kBAAkB,CAAC,MAAM;gBAChC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC;AACrC,aAAA;AACD,YAAA,EAAE,KAAK,EAAE,kBAAkB,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE;AACxE,YAAA,EAAE,KAAK,EAAE,kBAAkB,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE;AACxE,YAAA;gBACE,KAAK,EAAE,kBAAkB,CAAC,UAAU;gBACpC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,iBAAiB,CAAC;AACzC,aAAA;SACF;QAEQ,IAAA,CAAA,eAAe,GAAG,QAAQ,CACjC,MACE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,KAAK,KAAK,IAAI,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC;AAC7D,YAAA,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,2DACpB;AAEQ,QAAA,IAAA,CAAA,mBAAmB,GAAG,QAAQ,CAAC,MAAK;AAC3C,YAAA,QAAQ,IAAI,CAAC,KAAK,EAAE,CAAC,IAAI;gBACvB,KAAK,kBAAkB,CAAC,KAAK;AAC3B,oBAAA,OAAO,eAAe;gBACxB,KAAK,kBAAkB,CAAC,KAAK;AAC3B,oBAAA,OAAO,YAAY;gBACrB,KAAK,kBAAkB,CAAC,UAAU;AAChC,oBAAA,OAAO,aAAa;AACtB,gBAAA;AACE,oBAAA,OAAO,SAAS;;AAEtB,QAAA,CAAC,+DAAC;AAEe,QAAA,IAAA,CAAA,gBAAgB,GAAG;AAClC,YAAA;gBACE,IAAI,EAAE,kBAAkB,CAAC,KAAK;AAC9B,gBAAA,GAAG,EAAE,UAAU;gBACf,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,kBAAkB,CAAC;gBAC3C,WAAW,EAAE,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC;AAC3C,gBAAA,MAAM,EAAE,SAAS;AAClB,aAAA;AACD,YAAA;gBACE,IAAI,EAAE,kBAAkB,CAAC,KAAK;AAC9B,gBAAA,GAAG,EAAE,UAAU;gBACf,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,kBAAkB,CAAC;gBAC3C,WAAW,EAAE,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC;AAC3C,gBAAA,MAAM,EAAE,SAAS;AAClB,aAAA;AACD,YAAA;gBACE,IAAI,EAAE,kBAAkB,CAAC,UAAU;AACnC,gBAAA,GAAG,EAAE,eAAe;gBACpB,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,iBAAiB,CAAC;gBAC1C,WAAW,EAAE,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC;AAC1C,gBAAA,MAAM,EAAE,EAAE;AACX,aAAA;SACO;AAES,QAAA,IAAA,CAAA,aAAa,GAAG;AACjC,YAAA,EAAE,KAAK,EAAE,eAAe,EAAE,OAAO,EAAE,YAAY,EAAE;AACjD,YAAA,EAAE,KAAK,EAAE,eAAe,EAAE,OAAO,EAAE,WAAW,EAAE;AAChD,YAAA,EAAE,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,SAAS,EAAE;AAC3C,YAAA,EAAE,KAAK,EAAE,mBAAmB,EAAE,OAAO,EAAE,eAAe,EAAE;AACxD,YAAA,EAAE,KAAK,EAAE,kBAAkB,EAAE,OAAO,EAAE,cAAc,EAAE;AACtD,YAAA,EAAE,KAAK,EAAE,eAAe,EAAE,OAAO,EAAE,YAAY,EAAE;AACjD,YAAA,EAAE,KAAK,EAAE,cAAc,EAAE,OAAO,EAAE,WAAW,EAAE;SAChD;AAEQ,QAAA,IAAA,CAAA,eAAe,GAAG,QAAQ,CAAC,MAClC,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,EAAA,IAAA,SAAA,GAAA,CAAA,EAAA,SAAA,EAAA,iBAAA,EAAA,CAAA,GAAA,EAAA,CAAA,CACtE;AAEQ,QAAA,IAAA,CAAA,IAAI,GAAG,MAAM,CAAC,KAAK,gDAAC;AAEpB,QAAA,IAAA,CAAA,mBAAmB,GAAG,MAAM,CAAC,EAAE,+DAAC;AAEhC,QAAA,IAAA,CAAA,cAAc,GAAG,MAAM,CAAC,EAAE,0DAAC;AAEnB,QAAA,IAAA,CAAA,kBAAkB,GAAG,QAAQ,CAC5C,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC,YAAY,8DAChC;AAEgB,QAAA,IAAA,CAAA,aAAa,GAAG,QAAQ,CAAC,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC,IAAI,yDAAC;AAEzD,QAAA,IAAA,CAAA,eAAe,GAAG,MAAM,CAAC,KAAK,2DAAC;AAE/B,QAAA,IAAA,CAAA,aAAa,GAAG,MAAM,CAAC,EAAE,yDAAC;AAE1B,QAAA,IAAA,CAAA,UAAU,GAAG,MAAM,CAA0B,EAAE,sDAAC;AAEhD,QAAA,IAAA,CAAA,IAAI,GAAG,MAAM,CAAqB,EAAE,gDAAC;AAErC,QAAA,IAAA,CAAA,SAAS,GAAG,MAAM,CAAC,EAAE,qDAAC;AAEtB,QAAA,IAAA,CAAA,YAAY,GAAG,QAAQ,CAAC,MAAK;AACpC,YAAA,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE;YACnD,OAAO,IAAI,CAAC,IAAI,EAAE,CAAC,MAAM,CACvB,GAAG,IACD,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;AACrC,gBAAA,CAAA,EAAG,GAAG,CAAC,IAAI,CAAA,CAAA,EAAI,GAAG,CAAC,IAAI,CAAA,CAAE,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,CAC1D;AACH,QAAA,CAAC,wDAAC;AAEO,QAAA,IAAA,CAAA,YAAY,GAAG,QAAQ,CAAC,MAC/B,IAAI,CAAC,IAAI,EAAE,CAAC,MAAM,CAAC,GAAG,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,wDAChE;AAEgB,QAAA,IAAA,CAAA,WAAW,GAAG,MAAM,CAAC,yBAAyB,CAAC;AAE/C,QAAA,IAAA,CAAA,MAAM,GAAG,MAAM,CAAC,oBAAoB,CAAC;QAI9C,IAAA,CAAA,aAAa,GAAG,CAAC;QAEjB,IAAA,CAAA,kBAAkB,GAAG,EAAE;AAEd,QAAA,IAAA,CAAA,eAAe,GAAG,MAAM,CAG/B,IAAI,2DAAC;AAEN,QAAA,IAAA,CAAA,SAAS,GAAG,MAAM,CAAC,KAAK,qDAAC;AAEzB,QAAA,IAAA,CAAA,cAAc,GAAG,MAAM,CAAC,CAAC,0DAAC;AAE1B,QAAA,IAAA,CAAA,eAAe,GAAG,MAAM,CAAC,EAAE,2DAAC;AAE5B,QAAA,IAAA,CAAA,mBAAmB,GAAG,MAAM,CAAC,KAAK,+DAAC;AAEnC,QAAA,IAAA,CAAA,iBAAiB,GAAG,MAAM,CAAC,EAAE,6DAAC;AAEtB,QAAA,IAAA,CAAA,cAAc,GAAG,MAAM,CAAyB,EAAE,0DAAC;AAEnD,QAAA,IAAA,CAAA,oBAAoB,GAAG,MAAM,CAIpC,IAAI,gEAAC;QAEP,IAAA,CAAA,mBAAmB,GAAG,CAAC;QAEvB,IAAA,CAAA,qBAAqB,GAAG,EAAE;AAEzB,QAAA,IAAA,CAAA,UAAU,GAAG,MAAM,CAAC,KAAK,sDAAC;AAE1B,QAAA,IAAA,CAAA,KAAK,GAAG,MAAM,CAAC,EAAE,iDAAC;AAElB,QAAA,IAAA,CAAA,YAAY,GAAG,MAAM,CAAyB,EAAE,wDAAC;AAEjD,QAAA,IAAA,CAAA,mBAAmB,GAAG,MAAM,CAAC,KAAK,+DAAC;AAEnC,QAAA,IAAA,CAAA,iBAAiB,GAAG,MAAM,CAAC,EAAE,6DAAC;AAE9B,QAAA,IAAA,CAAA,gBAAgB,GAAG,MAAM,CAAC,EAAE,4DAAC;AAE7B,QAAA,IAAA,CAAA,UAAU,GAAG,MAAM,CAA8B,EAAE,sDAAC;AAEpD,QAAA,IAAA,CAAA,eAAe,GAAG,MAAM,CAAC,EAAE,2DAAC;QAE5B,IAAA,CAAA,wBAAwB,GAAG,QAAQ,CAC1C,MACE,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE;AACpB,YAAA,CAAC,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC,IAAI,EAAE;YAChC,CAAC,IAAI,CAAC,mBAAmB,EAAE;YAC3B,CAAC,IAAI,CAAC,iBAAiB,EAAE;YACzB,CAAC,IAAI,CAAC,IAAI,EAAE;YACZ,CAAC,IAAI,CAAC,UAAU,EAAE;AAClB,YAAA,IAAI,CAAC,UAAU,EAAE,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,CAAC,oEAC5D;AAEQ,QAAA,IAAA,CAAA,oBAAoB,GAAG,QAAQ,CAAC,MAAK;AAC5C,YAAA,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,EAAE;YAC/B,OAAO,KAAK,CAAC;AACX,kBAAE,IAAI,CAAC,KAAK,CACR,KAAK,CAAC,MAAM,CACV,CAAC,KAAK,EAAE,IAAI,KACV,KAAK;AACL,qBAAC,IAAI,CAAC,MAAM,KAAK,SAAS,GAAG,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,EAChE,CAAC,CACF,GAAG,KAAK,CAAC,MAAM;kBAElB,CAAC;AACP,QAAA,CAAC,gEAAC;AAEO,QAAA,IAAA,CAAA,kBAAkB,GAAG,QAAQ,CAAC,MAAK;YAC1C,MAAM,MAAM,GAAG,IAAI,CAAC,gBAAgB,EAAE,CAAC,IAAI,EAAE;YAC7C,IAAI,OAAO,GAAG,CAAC;YACf,IAAI,MAAM,EAAE;gBACV,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,YAAY,EAAE,EAAE;AACtC,oBAAA,MAAM,WAAW,GAAG,CAAA,EAAG,MAAM,GAAG;oBAChC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE;wBACvC;oBACF;AACA,oBAAA,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,WAAW,CAAC,MAAM,CAAC;AACnD,oBAAA,IAAI,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE;AACxB,wBAAA,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;AAC7B,wBAAA,IAAI,MAAM,CAAC,aAAa,CAAC,MAAM,CAAC,EAAE;4BAChC,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC;wBACrC;oBACF;gBACF;YACF;YACA,OAAO,IAAI,CAAC,UAAU,EAAE,CAAC,GAAG,CAAC,IAAI,IAAG;gBAClC,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,IAAI,IAAI,CAAC,YAAY,EAAE;oBAClD,OAAO,IAAI,CAAC,YAAY;gBAC1B;gBACA,OAAO,IAAI,CAAC;gBACZ,OAAO,MAAM,GAAG,GAAG,MAAM,CAAA,CAAA,EAAI,MAAM,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,GAAG,EAAE;AACtE,YAAA,CAAC,CAAC;AACJ,QAAA,CAAC,8DAAC;QAEM,IAAA,CAAA,iBAAiB,GAAG,CAAC;QAErB,IAAA,CAAA,wBAAwB,GAAkB,IAAI;QAE9C,IAAA,CAAA,sBAAsB,GAAG,KAAK;AAE7B,QAAA,IAAA,CAAA,UAAU,GAAG,MAAM,CAA8B,IAAI,sDAAC;AAEtD,QAAA,IAAA,CAAA,iBAAiB,GAAG,MAAM,CAAC,KAAK,6DAAC;AAEjC,QAAA,IAAA,CAAA,eAAe,GAAG,MAAM,CAAC,EAAE,2DAAC;QAE5B,IAAA,CAAA,gBAAgB,GAAG,MAAM,CAA0B;AAC1D,YAAA,iBAAiB,EAAE,IAAI;AACvB,YAAA,kBAAkB,EAAE,IAAI;AACzB,SAAA,EAAA,IAAA,SAAA,GAAA,CAAA,EAAA,SAAA,EAAA,kBAAA,EAAA,CAAA,GAAA,EAAA,CAAA,CAAC;AAEO,QAAA,IAAA,CAAA,uBAAuB,GAAG,MAAM,CAAC,KAAK,mEAAC;AAEvC,QAAA,IAAA,CAAA,qBAAqB,GAAG,MAAM,CAAC,EAAE,iEAAC;AAElC,QAAA,IAAA,CAAA,oBAAoB,GAAG,QAAQ,CAAC,MAAK;YAC5C,MAAM,MAAM,GAAG,IAAI,CAAC,WAAW,EAAE,EAAE,MAAM;YACzC,QACE,CAAC,MAAM,KAAK,OAAO,IAAI,MAAM,KAAK,UAAU;gBAC5C,CAAC,IAAI,CAAC,uBAAuB,EAAE;AAC/B,gBAAA,CAAC,IAAI,CAAC,qBAAqB,EAAE;AAEjC,QAAA,CAAC,gEAAC;AAEO,QAAA,IAAA,CAAA,qBAAqB,GAAG,QAAQ,CACvC,MACE,IAAI,CAAC,WAAW,EAAE,EAAE,MAAM,KAAK,WAAW;YAC1C,CAAC,IAAI,CAAC,uBAAuB,EAAE;AAC/B,YAAA,CAAC,IAAI,CAAC,qBAAqB,EAAE,iEAChC;AAEQ,QAAA,IAAA,CAAA,gBAAgB,GAAG,MAAM,CAAiC,EAAE,4DAAC;AAE7D,QAAA,IAAA,CAAA,uBAAuB,GAAG,MAAM,CAAC,KAAK,mEAAC;AAEvC,QAAA,IAAA,CAAA,qBAAqB,GAAG,MAAM,CAAC,EAAE,iEAAC;AAElC,QAAA,IAAA,CAAA,oBAAoB,GAAG,MAAM,CAAC,KAAK,gEAAC;AAEpC,QAAA,IAAA,CAAA,uBAAuB,GAAG,MAAM,CACvC,IAAI,mEACL;AAEQ,QAAA,IAAA,CAAA,WAAW,GAAG,MAAM,CAAyB,EAAE,uDAAC;AAEhD,QAAA,IAAA,CAAA,8BAA8B,GAAG,MAAM,CAAC,KAAK,0EAAC;AAE9C,QAAA,IAAA,CAAA,6BAA6B,GAAG,MAAM,CAAC,KAAK,yEAAC;AAE7C,QAAA,IAAA,CAAA,gBAAgB,GAAG,MAAM,CAChC,IAAI,4DACL;AAEQ,QAAA,IAAA,CAAA,iBAAiB,GAAG,MAAM,CAAC,KAAK,6DAAC;AAEjC,QAAA,IAAA,CAAA,eAAe,GAAG,MAAM,CAAC,KAAK,2DAAC;AAE/B,QAAA,IAAA,CAAA,WAAW,GAAG,MAAM,CAAiC,OAAO,uDAAC;AAE7D,QAAA,IAAA,CAAA,aAAa,GAAG,QAAQ,CAAC,MAChC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,OAAO,CAAC,yDAC1C;AAEQ,QAAA,IAAA,CAAA,gBAAgB,GAAG,QAAQ,CAAC,MACnC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,4DACvC;AAEQ,QAAA,IAAA,CAAA,gBAAgB,GAAG,MAAM,CAChC,IAAI,4DACL;AAEQ,QAAA,IAAA,CAAA,kBAAkB,GAAG,MAAM,CAAC,KAAK,8DAAC;AAElC,QAAA,IAAA,CAAA,gBAAgB,GAAG,MAAM,CAAC,EAAE,4DAAC;AAE7B,QAAA,IAAA,CAAA,iBAAiB,GAAG,MAAM,CAAyB,EAAE,6DAAC;AAEtD,QAAA,IAAA,CAAA,wBAAwB,GAAG,MAAM,CAAC,KAAK,oEAAC;AAExC,QAAA,IAAA,CAAA,sBAAsB,GAAG,MAAM,CAAC,EAAE,kEAAC;AAEnC,QAAA,IAAA,CAAA,oBAAoB,GAAG,MAAM,CAAgB,IAAI,gEAAC;AAElD,QAAA,IAAA,CAAA,oBAAoB,GAAG,QAAQ,CAAC,MAAK;YAC5C,MAAM,WAAW,GAAG,IAAI,GAAG,CACzB,IAAI,CAAC,WAAW,EAAE,CAAC,GAAG,CAAC,UAAU,IAAI,UAAU,CAAC,EAAE,CAAC,CACpD;YACD,OAAO,IAAI,CAAC,iBAAiB,EAAE,CAAC,MAAM,CACpC,UAAU,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC,CAC9C;AACH,QAAA,CAAC,gEAAC;QAEO,IAAA,CAAA,OAAO,GAAG,QAAQ,CACzB,MAAM,IAAI,CAAC,IAAI,EAAE,KAAK,MAAM,IAAI,IAAI,CAAC,IAAI,EAAE,KAAK,KAAK,mDACtD;AAEQ,QAAA,IAAA,CAAA,OAAO,GAAG,QAAQ,CACzB,MACE,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE;YAC3B,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE;YAC1B,CAAC,IAAI,CAAC,mBAAmB,EAAE;YAC3B,CAAC,IAAI,CAAC,iBAAiB,EAAE;YACzB,CAAC,IAAI,CAAC,uBAAuB,EAAE;YAC/B,CAAC,IAAI,CAAC,qBAAqB,EAAE;AAC7B,aAAC,CAAC,IAAI,CAAC,oBAAoB,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,uBAAuB,EAAE,CAAC;YAClE,CAAC,IAAI,CAAC,kBAAkB,EAAE;YAC1B,CAAC,IAAI,CAAC,gBAAgB,EAAE;YACxB,CAAC,IAAI,CAAC,eAAe,EAAE;AACvB,YAAA,CAAC,IAAI,CAAC,aAAa,EAAE,mDACxB;AAEQ,QAAA,IAAA,CAAA,WAAW,GAAG,QAAQ,CAAC,MAAK;AACnC,YAAA,MAAM,MAAM,GACV,IAAI,CAAC,IAAI,EAAE,KAAK;AACd,kBAAE,IAAI,CAAC,WAAW;mBACf,IAAI,CAAC,WAAW,EAAE,EAAE,MAAM,IAAI,OAAO,CAAC;YAC7C,QAAQ,MAAM;AACZ,gBAAA,KAAK,WAAW;oBACd,OAAO,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,mBAAmB,CAAC;AAC5C,gBAAA,KAAK,UAAU;oBACb,OAAO,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,kBAAkB,CAAC;AAC3C,gBAAA;oBACE,OAAO,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,eAAe,CAAC;;AAE5C,QAAA,CAAC,uDAAC;QAEO,IAAA,CAAA,qBAAqB,GAAG,QAAQ,CACvC,MACE,IAAI,CAAC,IAAI,EAAE;YACX,IAAI,CAAC,UAAU,EAAE;YACjB,IAAI,CAAC,iBAAiB,EAAE;YACxB,IAAI,CAAC,eAAe,EAAE;AACtB,YAAA,CAAC,CAAC,IAAI,CAAC,gBAAgB,EAAE;AACzB,aAAC,IAAI,CAAC,IAAI,EAAE,KAAK,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,iEAC9C;AAEgB,QAAA,IAAA,CAAA,GAAG,GAAG,MAAM,CAAC,wBAAwB,CAAC;AAEtC,QAAA,IAAA,CAAA,aAAa,GAAG,MAAM,CAAC,2BAA2B,CAAC;AAE3D,QAAA,IAAA,CAAA,UAAU,GAAG,MAAM,CAAC,CAAC,sDAAC;AAEtB,QAAA,IAAA,CAAA,aAAa,GAAG,MAAM,CAAgB,IAAI,yDAAC;AAE3C,QAAA,IAAA,CAAA,UAAU,GACjB,SAAS,CAAkC,YAAY,sDAAC;QAElD,IAAA,CAAA,oBAAoB,GAAG,KAAK;AAE3B,QAAA,IAAA,CAAA,cAAc,GAAY;AACjC,YAAA,CAAC,EAAE,OAAO,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,EAAE,CAAC;AACnD,YAAA,CAAC,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,QAAQ,CAAC;YACzC,CAAC,cAAc,EAAE,aAAa,CAAC;YAC/B,CAAC,YAAY,EAAE,MAAM,CAAC;YACtB,CAAC,MAAM,EAAE,OAAO,CAAC;YACjB,CAAC,YAAY,EAAE,kBAAkB,CAAC;AAClC,YAAA,CAAC,YAAY,EAAE,cAAc,EAAE,aAAa,EAAE,eAAe,CAAC;YAC9D,CAAC,iBAAiB,EAAE,cAAc,CAAC;YACnC,CAAC,MAAM,EAAE,MAAM,CAAC;SACjB;AAEQ,QAAA,IAAA,CAAA,YAAY,GAAG,QAAQ,CAAC,MAAK;AACpC,YAAA,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,EAAE;AAC1B,YAAA,OAAO,wBAAwB,CAAC,KAAK,CAAC,IAAI,EAAE;AAC1C,gBAAA,WAAW,EAAE,IAAI,CAAC,GAAG,CAAC,WAAW;gBACjC,IAAI,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE;AAC3C,gBAAA,IAAI,EAAE;oBACJ,KAAK,EAAE,KAAK,CAAC,KAAK;oBAClB,GAAG,EAAE,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,IAAI;AACxD,oBAAA,EAAE,EAAE,IAAI,CAAC,WAAW,EAAE,EAAE,EAAE;AAC1B,oBAAA,YAAY,EAAE,IAAI,CAAC,mBAAmB,EAAE,IAAI,IAAI;AACjD,iBAAA;AACF,aAAA,CAAC;AACJ,QAAA,CAAC,wDAAC;AAEe,QAAA,IAAA,CAAA,aAAa,GAAG,MAAM,CAAC,wBAAwB,CAAC;AAEhD,QAAA,IAAA,CAAA,MAAM,GAAG,MAAM,CAAC,SAAS,CAAC;AAE1B,QAAA,IAAA,CAAA,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC;QAIxC,IAAA,CAAA,iBAAiB,GAAG,CAAC;QAErB,IAAA,CAAA,iBAAiB,GAAG,CAAC;QAErB,IAAA,CAAA,uBAAuB,GAAG,CAAC;QA6BjC,MAAM,MAAM,GAAG,iBAAiB,CAAC;AAC/B,YAAA,UAAU,EAAE;gBACV,YAAY,EAAE,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC;AACzC,gBAAA,KAAK,EAAE,mBAAmB;AAC3B,aAAA;AACF,SAAA,CAAC;AAEF,QAAA,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC;QAE9B,MAAM,aAAa,GAAG,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,QAAQ,IAAG;YAC7D,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,IAAI,CAAC,oBAAoB,EAAE;gBAChD;YACF;AAEA,YAAA,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;AAC3D,QAAA,CAAC,CAAC;;QAGF,MAAM,CAAC,MAAK;AACV,YAAA,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,EAAE;YAExB,SAAS,CAAC,MAAK;AACb,gBAAA,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC;;AAGlB,gBAAA,IAAI,CAAC,oBAAoB,GAAG,IAAI;AAEhC,gBAAA,IAAI;oBACF,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC;gBACtC;wBAAU;AACR,oBAAA,IAAI,CAAC,oBAAoB,GAAG,KAAK;gBACnC;AACF,YAAA,CAAC,CAAC;AACJ,QAAA,CAAC,CAAC;;QAGF,MAAM,CAAC,MAAK;AACV,YAAA,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,EAAE,IAAI,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;AAEpE,YAAA,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC;AACnB,gBAAA,QAAQ,EAAE,MAAM,CAAC,QAAQ;AAC1B,aAAA,CAAC;AACJ,QAAA,CAAC,CAAC;;QAGF,MAAM,CAAC,MAAK;AACV,YAAA,IAAI,IAAI,CAAC,OAAO,EAAE,EAAE;gBAClB,SAAS,CAAC,MAAK;oBACb,IAAI,CAAC,oBAAoB,EAAE;oBAC3B,IAAI,CAAC,qBAAqB,EAAE;oBAC5B,IAAI,CAAC,YAAY,EAAE;AACrB,gBAAA,CAAC,CAAC;YACJ;AACF,QAAA,CAAC,CAAC;;QAGF,MAAM,CAAC,SAAS,IAAG;AACjB,YAAA,MAAM,GAAG,GAAG,IAAI,CAAC,kBAAkB,EAAE;AACrC,YAAA,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,EAAE;AAC9B,YAAA,MAAM,IAAI,GAAG,OAAO,GAAG,EAAE,GAAG,IAAI,CAAC,aAAa,EAAE;AAChD,YAAA,MAAM,MAAM,GAAG,IAAI,CAAC,eAAe,EAAE;YAErC,IAAI,MAAM,GAAG,IAAI;YAEjB,SAAS,CAAC,MAAK;gBACb,MAAM,GAAG,KAAK;AAChB,YAAA,CAAC,CAAC;AAEF,YAAA,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,CAAC;AAC3B,YAAA,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,EAAE,CAAC;YAEhC,IAAI,MAAM,IAAI,MAAM,CAAC,GAAG,KAAK,GAAG,EAAE;gBAChC,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC;gBACxC;YACF;YAEA,IAAI,CAAC,GAAG,EAAE;gBACR;YACF;AAEA,YAAA,MAAM,WAAW,GAAG,mBAAmB,CAAC,GAAG,CAAC;YAE5C,IAAI,WAAW,EAAE;AACf,gBAAA,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,WAAW,CAAC;gBACzC;YACF;AAEA,YAAA,IAAI,CAAC,OAAO,IAAI,CAAC,IAAI,EAAE;gBACrB;YACF;AAEA,YAAA,MAAM,IAAI,GAAG,YAAW;gBACtB,IAAI,OAAO,EAAE;oBACX,OAAO,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC;gBAClC;AAEA,gBAAA,IAAI;oBACF,OAAO,MAAM,IAAI,CAAC,GAAG,CAAC,sBAAsB,CAAC,IAAI,EAAE,IAAI,CAAC;gBAC1D;AAAE,gBAAA,MAAM;oBACN,OAAO,IAAI,CAAC,GAAG,CAAC,sBAAsB,CAAC,IAAI,CAAC;gBAC9C;AACF,YAAA,CAAC;AAED,YAAA,KAAK,IAAI;iBACN,IAAI,CAAC,GAAG,IAAG;gBACV,IAAI,MAAM,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,SAAS,EAAE;AACxC,oBAAA,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,GAAG,CAAC;gBACnC;AACF,YAAA,CAAC;AACA,iBAAA,KAAK,CAAC,CAAC,KAAc,KAAI;AACxB,gBAAA,OAAO,CAAC,KAAK,CAAC,0CAA0C,EAAE,KAAK,CAAC;gBAEhE,IAAI,MAAM,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,SAAS,EAAE;AACxC,oBAAA,IAAI,CAAC,cAAc,CAAC,GAAG,CACrB,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,oCAAoC,CAAC,CACrD;gBACH;AACF,YAAA,CAAC,CAAC;AACN,QAAA,CAAC,CAAC;;QAGF,MAAM,CAAC,MAAK;AACV,YAAA,MAAM,KAAK,GAAG,IAAI,CAAC,eAAe,EAAE;AACpC,YAAA,MAAM,GAAG,GAAG,KAAK,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,IAAI;YAElD,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC,IAAI;AAC9B,YAAA,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,EAAE;AAE9B,YAAA,MAAM,OAAO,GAAG,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,KAAK,KAAK;AAE7D,YAAA,MAAM,aAAa,GAAG,IAAI,CAAC,oBAAoB,EAAE;AAEjD,YAAA,IAAI,CAAC,CAAC,OAAO,IAAI,CAAC,OAAO,KAAK,CAAC,KAAK,IAAI,CAAC,GAAG,EAAE;AAC5C,gBAAA,IAAI,CAAC,qBAAqB,GAAG,EAAE;AAC/B,gBAAA,IAAI,CAAC,mBAAmB,IAAI,CAAC;AAC7B,gBAAA,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,EAAE,CAAC;AAC5B,gBAAA,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,KAAK,CAAC;AACnC,gBAAA,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,EAAE,CAAC;gBAC9B;YACF;AAEA,YAAA,IAAI,aAAa,EAAE,GAAG,KAAK,GAAG,EAAE;gBAC9B,MAAM,SAAS,GAAG,CAAA,OAAA,EAAU,GAAG,IAAI,aAAa,CAAC,GAAG,CAAA,CAAE;AAEtD,gBAAA,IAAI,SAAS,KAAK,IAAI,CAAC,qBAAqB,EAAE;oBAC5C;gBACF;AAEA,gBAAA,IAAI,CAAC,qBAAqB,GAAG,SAAS;AACtC,gBAAA,IAAI,CAAC,mBAAmB,IAAI,CAAC;gBAE7B,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,aAAa,CAAC,GAAG,CAAC;AAE3C,gBAAA,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,KAAK,CAAC;AACnC,gBAAA,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,EAAE,CAAC;gBAE9B;YACF;YAEA,IAAI,CAAC,IAAI,EAAE;AACT,gBAAA,IAAI,CAAC,qBAAqB,GAAG,EAAE;AAC/B,gBAAA,IAAI,CAAC,mBAAmB,IAAI,CAAC;AAC7B,gBAAA,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,EAAE,CAAC;AAC5B,gBAAA,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,KAAK,CAAC;AACnC,gBAAA,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,EAAE,CAAC;gBAC9B;YACF;AAEA,YAAA,MAAM,SAAS,GAAG,CAAA,EAAG,IAAI,CAAC,IAAI,EAAE,CAAA,CAAA,EAAI,KAAK,CAAC,IAAI,CAAA,CAAA,EAAI,IAAI,CAAA,CAAA,EAAI,GAAG,EAAE;AAE/D,YAAA,IAAI,SAAS,KAAK,IAAI,CAAC,qBAAqB,EAAE;gBAC5C;YACF;AAEA,YAAA,IAAI,CAAC,qBAAqB,GAAG,SAAS;AAEtC,YAAA,MAAM,SAAS,GAAG,EAAE,IAAI,CAAC,mBAAmB;AAE5C,YAAA,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,EAAE,CAAC;AAC5B,YAAA,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,IAAI,CAAC;AAClC,YAAA,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,EAAE,CAAC;YAE9B,MAAM,OAAO,GAAG;kBACZ,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI;kBAClC,IAAI,CAAC,mBAAmB,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC;AAE9C,YAAA,KAAK;iBACF,IAAI,CAAC,GAAG,IAAG;AACV,gBAAA,IACE,SAAS,KAAK,IAAI,CAAC,mBAAmB;AACtC,oBAAA,CAAC,IAAI,CAAC,UAAU,CAAC,SAAS,EAC1B;AACA,oBAAA,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,GAAG,CAAC;gBAC/B;AACF,YAAA,CAAC;AACA,iBAAA,KAAK,CAAC,CAAC,KAAc,KAAI;AACxB,gBAAA,OAAO,CAAC,KAAK,CAAC,8CAA8C,EAAE,KAAK,CAAC;AAEpE,gBAAA,IACE,SAAS,KAAK,IAAI,CAAC,mBAAmB;AACtC,oBAAA,CAAC,IAAI,CAAC,UAAU,CAAC,SAAS,EAC1B;AACA,oBAAA,IAAI,CAAC,iBAAiB,CAAC,GAAG,CACxB,IAAI,CAAC,CAAC,CAAC,OAAO,CACZ,2EAA2E,CAC5E,CACF;gBACH;AACF,YAAA,CAAC;iBACA,OAAO,CAAC,MAAK;AACZ,gBAAA,IACE,SAAS,KAAK,IAAI,CAAC,mBAAmB;AACtC,oBAAA,CAAC,IAAI,CAAC,UAAU,CAAC,SAAS,EAC1B;AACA,oBAAA,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,KAAK,CAAC;gBACrC;AACF,YAAA,CAAC,CAAC;AACN,QAAA,CAAC,CAAC;;AAGF,QAAA,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,MAAK;YAC7B,aAAa,CAAC,WAAW,EAAE;YAC3B,MAAM,CAAC,OAAO,EAAE;AAEhB,YAAA,IAAI,IAAI,CAAC,aAAa,EAAE,KAAK,MAAM,EAAE;AACnC,gBAAA,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC;YAC9B;YAEA,IAAI,CAAC,uBAAuB,EAAE;AAChC,QAAA,CAAC,CAAC;IACJ;;AAGA,IAAA,WAAW,KAAU;;IAGrB,YAAY,CAAC,oBAAoB,GAAG,KAAK,EAAA;AACvC,QAAA,IAAI,CAAC,YAAY,EAAE,WAAW,EAAE;AAChC,QAAA,MAAM,OAAO,GAAG,IAAI,CAAC,aAAa;QAClC,MAAM,MAAM,GAAG,IAAI,CAAC,WAAW,EAAE,EAAE,EAAE;AACrC,QAAA,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC;AAC9B,QAAA,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,EAAE,CAAC;AAC1B,QAAA,IAAI,CAAC,YAAY,GAAG,QAAQ,CAAC;AAC3B,YAAA,UAAU,EAAE,IAAI,CAAC,WAAW,CAAC,cAAc;AAC3C,YAAA,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,cAAc;AAChC,YAAA,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,EAAc,CAAC;SAClE;aACE,IAAI,CACH,kBAAkB,CAAC,IAAI,CAAC,UAAU,CAAC,EACnC,QAAQ,CAAC,MAAM,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;AAEhD,aAAA,SAAS,CAAC;YACT,IAAI,EAAE,MAAM,IAAG;AACb,gBAAA,IAAI,OAAO,KAAK,IAAI,CAAC,aAAa,EAAE;AAClC,oBAAA,IAAI,CAAC,UAAU,CAAC,GAAG,CACjB,MAAM,CAAC,UAAU,CAAC,IAAI,CACpB,CAAC,CAAC,EAAE,CAAC,KACH,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,CAC5D,CACF;oBACD,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC;oBAC1B,IAAI,CAAC,oBAAoB,EAAE;wBACzB,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC;oBAC3C;gBACF;YACF,CAAC;AACD,YAAA,KAAK,EAAE,CAAC,KAAc,KAAI;AACxB,gBAAA,OAAO,CAAC,KAAK,CACX,oDAAoD,EACpD,KAAK,CACN;AACD,gBAAA,IAAI,CAAC,aAAa,CAAC,GAAG,CACpB,IAAI,CAAC,CAAC,CAAC,OAAO,CACZ,4DAA4D,CAC7D,CACF;YACH,CAAC;AACF,SAAA,CAAC;IACN;;AAGA,IAAA,MAAM,CAAC,EAAU,EAAA;AACf,QAAA,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE;AACrC,YAAA,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,CAAC,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QAC1D;IACF;;;AAIA,IAAA,SAAS,CAAC,EAAU,EAAA;QAClB,IAAI,CAAC,WAAW,CACd,QAAQ,EACR,IAAI,CAAC,KAAK,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,IAAI,QAAQ,KAAK,EAAE,CAAC,CACxD;IACH;;;AAIA,IAAA,UAAU,CAAC,KAAY,EAAA;AACrB,QAAA,IAAI,KAAK,CAAC,MAAM,YAAY,gBAAgB,EAAE;YAC5C,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC;QACxC;IACF;;;AAIA,IAAA,cAAc,CAAC,QAA4B,EAAA;QACzC,IAAI,IAAI,CAAC,IAAI,EAAE,IAAI,IAAI,CAAC,UAAU,EAAE,EAAE;YACpC;QACF;AAEA,QAAA,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC;AACzB,QAAA,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,EAAE,CAAC;QAC1B,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAU1B,yCAAyC,EAAE;YAC3C,IAAI,EAAE,EAAE,QAAQ,EAAE;AAClB,YAAA,KAAK,EAAE,OAAO;AACd,YAAA,QAAQ,EAAE,MAAM;AAChB,YAAA,YAAY,EAAE,IAAI;AACnB,SAAA,CAAC;QAEF;AACG,aAAA,WAAW;AACX,aAAA,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,UAAU,CAAC;aACxC,SAAS,CAAC,MAAM,IAAG;YAClB,IAAI,CAAC,MAAM,EAAE;AACX,gBAAA,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC;gBAC1B;YACF;AAEA,YAAA,MAAM,OAAO,GACX,QAAQ,KAAK;kBACT,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM;kBAClC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC;YACpC;iBACG,IAAI,CACH,kBAAkB,CAAC,IAAI,CAAC,UAAU,CAAC,EACnC,QAAQ,CAAC,MAAM,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;AAE3C,iBAAA,SAAS,CAAC;gBACT,IAAI,EAAE,KAAK,IAAG;AACZ,oBAAA,IAAI,QAAQ,KAAK,UAAU,EAAE;wBAC3B,IAAI,CAAC,WAAW,CAAC,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC;oBAC1C;yBAAO;AACL,wBAAA,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;oBACvB;AACA,oBAAA,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC;gBACzB,CAAC;AACD,gBAAA,KAAK,EAAE,CAAC,KAAc,KAAI;oBACxB,OAAO,CAAC,KAAK,CACX,CAAA,iCAAA,EAAoC,QAAQ,CAAA,CAAE,EAC9C,KAAK,CACN;AACD,oBAAA,IAAI,CAAC,aAAa,CAAC,GAAG,CACpB,QAAQ,KAAK;0BACT,IAAI,CAAC,CAAC,CAAC,OAAO,CACZ,sDAAsD;0BAExD,IAAI,CAAC,CAAC,CAAC,OAAO,CACZ,iDAAiD,CAClD,CACN;gBACH,CAAC;AACF,aAAA,CAAC;AACN,QAAA,CAAC,CAAC;IACN;;;IAIA,qBAAqB,GAAA;AACnB,QAAA,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,IAAI,IAAI,CAAC,UAAU,EAAE,EAAE;YACvD;QACF;QACA,IAAI,CAAC,uBAAuB,EAAE;AAC9B,QAAA,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC;AAC9B,QAAA,IAAI,CAAC,WAAW,CAAC,cAAc,EAAE,mBAAmB,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,CAAC;IAC1E;;;IAIA,MAAM,iBAAiB,CAAC,KAAY,EAAA;QAClC,IAAI,EAAE,KAAK,CAAC,MAAM,YAAY,gBAAgB,CAAC,EAAE;YAC/C;QACF;AACA,QAAA,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM;QAC1B,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC;AAC7B,QAAA,KAAK,CAAC,KAAK,GAAG,EAAE;AAChB,QAAA,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,IAAI,IAAI,CAAC,UAAU,EAAE,EAAE;YAChE;QACF;QACA,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE;AACnC,YAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CACZ,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,2CAA2C,CAAC,CAC5D;YACD;QACF;AACA,QAAA,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC;AACnB,QAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;AAClB,QAAA,IAAI;YACF,MAAM,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,IAAI,CAAC,aAAa,CAAC;QACrD;QAAE,OAAO,KAAc,EAAE;AACvB,YAAA,OAAO,CAAC,KAAK,CAAC,4CAA4C,EAAE,KAAK,CAAC;AAClE,YAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CACZ,IAAI,CAAC,CAAC,CAAC,OAAO,CACZ,wDAAwD,CACzD,CACF;QACH;gBAAU;AACR,YAAA,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC;QACtB;IACF;;;AAIQ,IAAA,MAAM,cAAc,CAAC,IAAU,EAAE,OAAe,EAAA;AACtD,QAAA,IAAI,OAAO,KAAK,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,UAAU,CAAC,SAAS,EAAE;YAC/D;QACF;AACA,QAAA,MAAM,eAAe,GAAG,IAAI,CAAC,mBAAmB,EAAE;AAClD,QAAA,MAAM,cAAc,GAAG,IAAI,CAAC,eAAe,EAAE;QAC7C,MAAM,OAAO,GAAG,GAAG,CAAC,eAAe,CAAC,IAAI,CAAC;QACzC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,EAAE,GAAG,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC,YAAY,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC;AAC1E,QAAA,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,OAAO,CAAC;AACrC,QAAA,IAAI;YACF,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC;AAC/C,YAAA,IAAI,OAAO,KAAK,IAAI,CAAC,aAAa,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,SAAS,EAAE;gBAChE,IAAI,CAAC,uBAAuB,EAAE;AAC9B,gBAAA,IAAI,CAAC,kBAAkB,GAAG,OAAO;AACjC,gBAAA,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,EAAE,GAAG,EAAE,MAAM,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC;gBAC3D,IAAI,CAAC,WAAW,CAAC,cAAc,EAAE,MAAM,CAAC,GAAG,CAAC;YAC9C;QACF;QAAE,OAAO,KAAc,EAAE;AACvB,YAAA,IAAI,OAAO,KAAK,IAAI,CAAC,aAAa,EAAE;AAClC,gBAAA,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,cAAc,CAAC;AACxC,gBAAA,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,eAAe,CAAC;YAC/C;AACA,YAAA,MAAM,KAAK;QACb;gBAAU;AACR,YAAA,IAAI,IAAI,CAAC,kBAAkB,KAAK,OAAO,EAAE;AACvC,gBAAA,GAAG,CAAC,eAAe,CAAC,OAAO,CAAC;YAC9B;QACF;IACF;;;IAIQ,uBAAuB,GAAA;AAC7B,QAAA,IAAI,IAAI,CAAC,kBAAkB,EAAE;AAC3B,YAAA,GAAG,CAAC,eAAe,CAAC,IAAI,CAAC,kBAAkB,CAAC;AAC5C,YAAA,IAAI,CAAC,kBAAkB,GAAG,EAAE;QAC9B;IACF;;;IAIA,gBAAgB,GAAA;QACd,IAAI,IAAI,CAAC,IAAI,EAAE,IAAI,IAAI,CAAC,mBAAmB,EAAE,EAAE;YAC7C;QACF;AACA,QAAA,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW,EAAE;QAC/B,IAAI,CAAC,IAAI,EAAE;YACT;QACF;AACA,QAAA,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,IAAI,CAAC;AAClC,QAAA,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,EAAE,CAAC;AAC9B,QAAA,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC;AAC1B,aAAA,gBAAgB,CAAC,IAAI,CAAC,EAAE;aACxB,IAAI,CACH,kBAAkB,CAAC,IAAI,CAAC,UAAU,CAAC,EACnC,QAAQ,CAAC,MAAM,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;AAEpD,aAAA,SAAS,CAAC;AACT,YAAA,IAAI,EAAE,KAAK,IAAI,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,KAAK,CAAC;AAC3C,YAAA,KAAK,EAAE,CAAC,KAAc,KAAI;AACxB,gBAAA,OAAO,CAAC,KAAK,CAAC,8CAA8C,EAAE,KAAK,CAAC;AACpE,gBAAA,IAAI,CAAC,iBAAiB,CAAC,GAAG,CACxB,IAAI,CAAC,CAAC,CAAC,OAAO,CACZ,sDAAsD,CACvD,CACF;YACH,CAAC;AACF,SAAA,CAAC;IACN;;;;AAKQ,IAAA,cAAc,CAAC,IAAiC,EAAA;AACtD,QAAA,MAAM,OAAO,GAAG,EAAE,IAAI,CAAC,iBAAiB;AACxC,QAAA,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC;AACzB,QAAA,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,EAAE,CAAC;QAC5B,IAAI,CAAC,IAAI,EAAE;AACT,YAAA,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,KAAK,CAAC;YACjC;QACF;AACA,QAAA,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC;QAChC,KAAK,IAAI,CAAC;AACP,aAAA,aAAa,CAAC,IAAI,CAAC,EAAE;aACrB,IAAI,CAAC,MAAM,IAAG;AACb,YAAA,IAAI,OAAO,KAAK,IAAI,CAAC,iBAAiB,EAAE;AACtC,gBAAA,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC;YAC7B;AACF,QAAA,CAAC;AACA,aAAA,KAAK,CAAC,CAAC,KAAc,KAAI;AACxB,YAAA,OAAO,CAAC,KAAK,CAAC,4CAA4C,EAAE,KAAK,CAAC;AAClE,YAAA,IAAI,OAAO,KAAK,IAAI,CAAC,iBAAiB,EAAE;AACtC,gBAAA,IAAI,CAAC,eAAe,CAAC,GAAG,CACtB,IAAI,CAAC,CAAC,CAAC,OAAO,CACZ,oDAAoD,CACrD,CACF;YACH;AACF,QAAA,CAAC;aACA,OAAO,CAAC,MAAK;AACZ,YAAA,IAAI,OAAO,KAAK,IAAI,CAAC,iBAAiB,EAAE;AACtC,gBAAA,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,KAAK,CAAC;YACnC;AACF,QAAA,CAAC,CAAC;IACN;;;AAIQ,IAAA,2BAA2B,CAAC,IAAiC,EAAA;AACnE,QAAA,MAAM,OAAO,GAAG,EAAE,IAAI,CAAC,iBAAiB;AACxC,QAAA,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,IAAI,CAAC;AAC/B,QAAA,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,KAAK,CAAC;QAC/B,IAAI,CAAC,IAAI,EAAE;AACT,YAAA,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,KAAK,CAAC;YACjC;QACF;AACA,QAAA,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC;QAChC,KAAK,IAAI,CAAC;AACP,aAAA,0BAA0B,CAAC,IAAI,CAAC,EAAE;aAClC,IAAI,CAAC,aAAa,IAAG;AACpB,YAAA,IAAI,OAAO,KAAK,IAAI,CAAC,iBAAiB,EAAE;gBACtC,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,aAAa,CAAC,MAAM,CAAC;YACjD;AACF,QAAA,CAAC;AACA,aAAA,KAAK,CAAC,CAAC,KAAc,KAAI;AACxB,YAAA,OAAO,CAAC,KAAK,CACX,uDAAuD,EACvD,KAAK,CACN;AACD,YAAA,IAAI,OAAO,KAAK,IAAI,CAAC,iBAAiB,EAAE;AACtC,gBAAA,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC;AAC9B,gBAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CACZ,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,4CAA4C,CAAC,CAC7D;YACH;AACF,QAAA,CAAC;aACA,OAAO,CAAC,MAAK;AACZ,YAAA,IAAI,OAAO,KAAK,IAAI,CAAC,iBAAiB,EAAE;AACtC,gBAAA,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,KAAK,CAAC;YACnC;AACF,QAAA,CAAC,CAAC;IACN;;;AAIA,IAAA,oBAAoB,CAAC,IAAiC,EAAA;AACpD,QAAA,MAAM,OAAO,GAAG,EAAE,IAAI,CAAC,uBAAuB;AAC9C,QAAA,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC;AACxB,YAAA,iBAAiB,EAAE,IAAI;AACvB,YAAA,kBAAkB,EAAE,IAAI;AACzB,SAAA,CAAC;AACF,QAAA,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,EAAE,CAAC;QAClC,IAAI,CAAC,IAAI,EAAE;AACT,YAAA,IAAI,CAAC,uBAAuB,CAAC,GAAG,CAAC,KAAK,CAAC;YACvC;QACF;AACA,QAAA,IAAI,CAAC,uBAAuB,CAAC,GAAG,CAAC,IAAI,CAAC;QACtC,KAAK,IAAI,CAAC;AACP,aAAA,eAAe,CAAC,IAAI,CAAC,EAAE;aACvB,IAAI,CAAC,KAAK,IAAG;AACZ,YAAA,IAAI,OAAO,KAAK,IAAI,CAAC,uBAAuB,EAAE;AAC5C,gBAAA,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,KAAK,CAAC;YAClC;AACF,QAAA,CAAC;AACA,aAAA,KAAK,CAAC,CAAC,KAAc,KAAI;AACxB,YAAA,OAAO,CAAC,KAAK,CAAC,8CAA8C,EAAE,KAAK,CAAC;AACpE,YAAA,IAAI,OAAO,KAAK,IAAI,CAAC,uBAAuB,EAAE;AAC5C,gBAAA,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAC5B,IAAI,CAAC,CAAC,CAAC,OAAO,CACZ,uDAAuD,CACxD,CACF;YACH;AACF,QAAA,CAAC;aACA,OAAO,CAAC,MAAK;AACZ,YAAA,IAAI,OAAO,KAAK,IAAI,CAAC,uBAAuB,EAAE;AAC5C,gBAAA,IAAI,CAAC,uBAAuB,CAAC,GAAG,CAAC,KAAK,CAAC;YACzC;AACF,QAAA,CAAC,CAAC;IACN;;;IAIA,iBAAiB,CAAC,KAAY,EAAE,IAA0B,EAAA;QACxD,KAAK,CAAC,cAAc,EAAE;AACtB,QAAA,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC;IACnC;;;IAIA,gBAAgB,GAAA;AACd,QAAA,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW,EAAE;AAC/B,QAAA,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,EAAE;AAChC,QAAA,IACE,CAAC,IAAI,CAAC,OAAO,EAAE;AACf,YAAA,CAAC,IAAI;AACL,YAAA,CAAC,MAAM;YACP,IAAI,CAAC,IAAI,EAAE;AACX,YAAA,IAAI,CAAC,UAAU,EAAE,EACjB;YACA;QACF;AACA,QAAA,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC;AACnB,QAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;AAClB,QAAA,IAAI,CAAC;AACF,aAAA,iBAAiB,CAAC,MAAM,CAAC,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,MAAM,CAAC,OAAO;aACpD,IAAI,CACH,kBAAkB,CAAC,IAAI,CAAC,UAAU,CAAC,EACnC,QAAQ,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;AAErC,aAAA,SAAS,CAAC;YACT,IAAI,EAAE,MAAK;AACT,gBAAA,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC;gBACzB,IAAI,CAAC,eAAe,EAAE;YACxB,CAAC;AACD,YAAA,KAAK,EAAE,CAAC,KAAc,KAAI;AACxB,gBAAA,OAAO,CAAC,KAAK,CAAC,8CAA8C,EAAE,KAAK,CAAC;AACpE,gBAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CACZ,IAAI,CAAC,CAAC,CAAC,OAAO,CACZ,yDAAyD,CAC1D,CACF;YACH,CAAC;AACF,SAAA,CAAC;IACN;;;IAIA,cAAc,GAAA;AACZ,QAAA,IACE,CAAC,IAAI,CAAC,OAAO,EAAE;YACf,IAAI,CAAC,IAAI,EAAE;YACX,IAAI,CAAC,UAAU,EAAE;YACjB,IAAI,CAAC,mBAAmB,EAAE;AAC1B,YAAA,IAAI,CAAC,iBAAiB,EAAE,EACxB;YACA;QACF;AACA,QAAA,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC;QACzB,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAI1B,+BAA+B,EAAE;AACjC,YAAA,IAAI,EAAE;AACJ,gBAAA,MAAM,EAAE,IAAI,CAAC,WAAW,EAAE,EAAE,EAAE;AAC9B,gBAAA,WAAW,EAAE,IAAI,CAAC,YAAY,EAAE,CAAC,GAAG,CAAC,IAAI,IAAI,IAAI,CAAC,EAAE,CAAC;AACtD,aAAA;AACD,YAAA,KAAK,EAAE,OAAO;AACd,YAAA,QAAQ,EAAE,MAAM;AAChB,YAAA,YAAY,EAAE,IAAI;AACnB,SAAA,CAAC;QACF;AACG,aAAA,WAAW;AACX,aAAA,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,UAAU,CAAC;aACxC,SAAS,CAAC,IAAI,IAAG;AAChB,YAAA,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC;AAC1B,YAAA,IACE,IAAI;gBACJ,IAAI,CAAC,EAAE,KAAK,IAAI,CAAC,WAAW,EAAE,EAAE,EAAE;gBAClC,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC,EAC5D;AACA,gBAAA,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,KAAK,IAAI,CAAC,GAAG,KAAK,EAAE,IAAI,CAAC,CAAC;YACrD;AACF,QAAA,CAAC,CAAC;IACN;;;IAIA,YAAY,GAAA;AACV,QAAA,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW,EAAE;AAC/B,QAAA,IACE,CAAC,IAAI,CAAC,OAAO,EAAE;AACf,YAAA,CAAC,IAAI;YACL,IAAI,CAAC,IAAI,EAAE;YACX,IAAI,CAAC,UAAU,EAAE;AACjB,YAAA,IAAI,CAAC,mBAAmB,EAAE,EAC1B;YACA;QACF;AAEA,QAAA,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC;QACzB,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAI1B,+BAA+B,EAAE;YACjC,IAAI,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,EAAE,WAAW,EAAE,EAAE,EAAE;AAC1C,YAAA,KAAK,EAAE,OAAO;AACd,YAAA,QAAQ,EAAE,MAAM;AAChB,YAAA,YAAY,EAAE,IAAI;AACnB,SAAA,CAAC;QACF;AACG,aAAA,WAAW;AACX,aAAA,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,UAAU,CAAC;aACxC,SAAS,CAAC,MAAM,IAAG;AAClB,YAAA,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC;YAC1B,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE;gBAClC;YACF;AAEA,YAAA,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC;AACnB,YAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;AAClB,YAAA,IAAI,CAAC;AACF,iBAAA,cAAc,CAAC,MAAM,CAAC,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,MAAM,CAAC,OAAO;AACjD,iBAAA,IAAI,CACH,SAAS,CAAC,MACR,QAAQ,CAAC;AACP,gBAAA,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACrC,gBAAA,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;aAC1C,CAAC,CACH,EACD,kBAAkB,CAAC,IAAI,CAAC,UAAU,CAAC,EACnC,QAAQ,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;AAErC,iBAAA,SAAS,CAAC;gBACT,IAAI,EAAE,SAAS,IAAG;oBAChB,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,CAAC;oBACpC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,MAAM,CAAC;AACrC,oBAAA,IAAI,CAAC,eAAe,EAAE,WAAW,EAAE;AACnC,oBAAA,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,KAAK,CAAC;oBAClC,IAAI,CAAC,eAAe,EAAE;gBACxB,CAAC;AACD,gBAAA,KAAK,EAAE,CAAC,KAAc,KAAI;AACxB,oBAAA,OAAO,CAAC,KAAK,CACX,6CAA6C,EAC7C,KAAK,CACN;AACD,oBAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CACZ,IAAI,CAAC,CAAC,CAAC,OAAO,CACZ,yDAAyD,CAC1D,CACF;gBACH,CAAC;AACF,aAAA,CAAC;AACN,QAAA,CAAC,CAAC;IACN;;;AAIA,IAAA,mBAAmB,CAAC,KAA0C,EAAA;AAC5D,QAAA,IACE,CAAC,IAAI,CAAC,OAAO,EAAE;YACf,IAAI,CAAC,IAAI,EAAE;YACX,IAAI,CAAC,UAAU,EAAE;YACjB,IAAI,CAAC,mBAAmB,EAAE;YAC1B,IAAI,CAAC,iBAAiB,EAAE;AACxB,YAAA,KAAK,CAAC,iBAAiB,KAAK,KAAK,CAAC,SAAS,EAC3C;YACA;QACF;AACA,QAAA,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,KAAK,IAAG;AAC/B,YAAA,MAAM,SAAS,GAAG,CAAC,GAAG,KAAK,CAAC;YAC5B,eAAe,CAAC,SAAS,EAAE,KAAK,CAAC,aAAa,EAAE,KAAK,CAAC,YAAY,CAAC;AACnE,YAAA,OAAO,SAAS;AAClB,QAAA,CAAC,CAAC;IACJ;AAEA,IAAA,iBAAiB,CAAC,EAAU,EAAA;AAC1B,QAAA,IACE,CAAC,IAAI,CAAC,OAAO,EAAE;YACf,IAAI,CAAC,IAAI,EAAE;YACX,IAAI,CAAC,UAAU,EAAE;YACjB,IAAI,CAAC,mBAAmB,EAAE;AAC1B,YAAA,IAAI,CAAC,iBAAiB,EAAE,EACxB;YACA;QACF;QACA,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,KAAK,IAAI,KAAK,CAAC,MAAM,CAAC,IAAI,IAAI,IAAI,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;IACzE;;;AAIA,IAAA,iBAAiB,CAAC,IAA4B,EAAA;AAC5C,QAAA,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW,EAAE;AAC/B,QAAA,MAAM,OAAO,GACX,IAAI,KAAK;AACP,cAAE,IAAI,CAAC,oBAAoB;AAC3B,cAAE,IAAI,CAAC,qBAAqB,EAAE;AAClC,QAAA,IACE,CAAC,IAAI,CAAC,OAAO,EAAE;AACf,YAAA,CAAC,IAAI;AACL,YAAA,CAAC,OAAO;YACR,IAAI,CAAC,IAAI,EAAE;AACX,YAAA,IAAI,CAAC,UAAU,EAAE,EACjB;YACA;QACF;AACA,QAAA,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC;AACzB,QAAA,MAAM,eAAe,GAAG,IAAI,KAAK,QAAQ;QACzC,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAI1B,+BAA+B,EAAE;AACjC,YAAA,IAAI,EAAE;gBACJ,MAAM,EAAE,IAAI,CAAC,EAAE;AACf,gBAAA,WAAW,EAAE,EAAE;AACf,gBAAA,gBAAgB,EAAE;sBACd,CAAC,WAAW;AACd,sBAAE,CAAC,OAAO,EAAE,UAAU,CAAC;AACzB,gBAAA,WAAW,EAAE;sBACT,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,gCAAgC;sBAC/C,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,iCAAiC,CAAC;gBACrD,YAAY,EAAE,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,mBAAmB,CAAC;gBACjD,cAAc,EAAE,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC;gBAC9C,cAAc,EAAE,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,kCAAkC,CAAC;AACnE,aAAA;AACD,YAAA,KAAK,EAAE,OAAO;AACd,YAAA,QAAQ,EAAE,MAAM;AAChB,YAAA,YAAY,EAAE,IAAI;AACnB,SAAA,CAAC;QACF;AACG,aAAA,WAAW;AACX,aAAA,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,UAAU,CAAC;aACxC,SAAS,CAAC,WAAW,IAAG;AACvB,YAAA,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC;AAC1B,YAAA,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,EAAE;AACtC,YAAA,IAAI,CAAC,WAAW,IAAI,CAAC,WAAW,EAAE;gBAChC;YACF;AACA,YAAA,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC;AACnB,YAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;AAClB,YAAA,IAAI,CAAC;AACF,iBAAA,eAAe,CACd,WAAW,CAAC,EAAE,EACd,WAAW,CAAC,EAAE,EACd,IAAI,EACJ,WAAW,CAAC,OAAO;iBAEpB,IAAI,CACH,kBAAkB,CAAC,IAAI,CAAC,UAAU,CAAC,EACnC,QAAQ,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;AAErC,iBAAA,SAAS,CAAC;gBACT,IAAI,EAAE,WAAW,IAAG;AAClB,oBAAA,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,WAAW,CAAC;AACjC,oBAAA,IAAI,CAAC,oBAAoB,CAAC,WAAW,CAAC;gBACxC,CAAC;AACD,gBAAA,KAAK,EAAE,CAAC,KAAc,KAAI;AACxB,oBAAA,OAAO,CAAC,KAAK,CACX,6CAA6C,EAC7C,KAAK,CACN;AACD,oBAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CACZ,IAAI,CAAC,CAAC,CAAC,OAAO,CACZ,sEAAsE,CACvE,CACF;gBACH,CAAC;AACF,aAAA,CAAC;AACN,QAAA,CAAC,CAAC;IACN;;;AAIA,IAAA,iBAAiB,CAAC,IAA4B,EAAA;AAC5C,QAAA,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW,EAAE;AAC/B,QAAA,MAAM,OAAO,GACX,IAAI,KAAK;AACP,cAAE,IAAI,CAAC,oBAAoB;AAC3B,cAAE,IAAI,CAAC,qBAAqB,EAAE;AAClC,QAAA,IACE,CAAC,IAAI,CAAC,OAAO,EAAE;AACf,YAAA,CAAC,IAAI;AACL,YAAA,CAAC,OAAO;YACR,IAAI,CAAC,IAAI,EAAE;AACX,YAAA,IAAI,CAAC,UAAU,EAAE,EACjB;YACA;QACF;AACA,QAAA,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC;AACnB,QAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;AAClB,QAAA,IAAI,CAAC;aACF,iBAAiB,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,OAAO;aAC7C,IAAI,CACH,kBAAkB,CAAC,IAAI,CAAC,UAAU,CAAC,EACnC,QAAQ,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;AAErC,aAAA,SAAS,CAAC;YACT,IAAI,EAAE,WAAW,IAAG;AAClB,gBAAA,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,WAAW,CAAC;AACjC,gBAAA,IAAI,CAAC,oBAAoB,CAAC,WAAW,CAAC;YACxC,CAAC;AACD,YAAA,KAAK,EAAE,CAAC,KAAc,KAAI;AACxB,gBAAA,OAAO,CAAC,KAAK,CAAC,+CAA+C,EAAE,KAAK,CAAC;AACrE,gBAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CACZ,IAAI,CAAC,CAAC,CAAC,OAAO,CACZ,uEAAuE,CACxE,CACF;YACH,CAAC;AACF,SAAA,CAAC;IACN;;;IAIA,oBAAoB,GAAA;AAClB,QAAA,IAAI,IAAI,CAAC,uBAAuB,EAAE,EAAE;YAClC;QACF;AACA,QAAA,IAAI,CAAC,uBAAuB,CAAC,GAAG,CAAC,IAAI,CAAC;AACtC,QAAA,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,EAAE,CAAC;AAClC,QAAA,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC;AAC9B,aAAA,oBAAoB;aACpB,IAAI,CACH,kBAAkB,CAAC,IAAI,CAAC,UAAU,CAAC,EACnC,QAAQ,CAAC,MAAM,IAAI,CAAC,uBAAuB,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;AAExD,aAAA,SAAS,CAAC;YACT,IAAI,EAAE,KAAK,IAAG;AACZ,gBAAA,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,KAAK,CAAC;gBAChC,IAAI,CAAC,2BAA2B,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,KAAK,CAAC;YAC7D,CAAC;AACD,YAAA,KAAK,EAAE,CAAC,KAAc,KAAI;AACxB,gBAAA,OAAO,CAAC,KAAK,CACX,kDAAkD,EAClD,KAAK,CACN;AACD,gBAAA,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAC5B,IAAI,CAAC,CAAC,CAAC,OAAO,CACZ,0DAA0D,CAC3D,CACF;YACH,CAAC;AACF,SAAA,CAAC;IACN;;AAGA,IAAA,uBAAuB,CAAC,OAAgB,EAAA;AACtC,QAAA,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,OAAO,CAAC;IACxC;;;AAIA,IAAA,iCAAiC,CAC/B,eAA6C,EAAA;AAE7C,QAAA,QACE,eAAe,CAAC,SAAS,KAAK,IAAI;YAClC,eAAe,CAAC,SAAS,KAAK,IAAI,CAAC,WAAW,EAAE,EAAE,EAAE;IAExD;;;AAIA,IAAA,oBAAoB,CAAC,IAA4B,EAAA;AAC/C,QAAA,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE;IAChD;;;;IAKA,eAAe,GAAA;AACb,QAAA,IAAI,IAAI,CAAC,kBAAkB,EAAE,EAAE;YAC7B;QACF;AACA,QAAA,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW,EAAE;QAC/B,IAAI,CAAC,IAAI,EAAE;YACT;QACF;AACA,QAAA,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,IAAI,CAAC;AACjC,QAAA,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,EAAE,CAAC;AAC7B,QAAA,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;AACzB,aAAA,0BAA0B,CAAC,IAAI,CAAC,EAAE;aAClC,IAAI,CACH,kBAAkB,CAAC,IAAI,CAAC,UAAU,CAAC,EACnC,QAAQ,CAAC,MAAM,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;AAEnD,aAAA,SAAS,CAAC;YACT,IAAI,EAAE,aAAa,IAAG;gBACpB,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,aAAa,CAAC,WAAW,CAAC;gBAC/C,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,aAAa,CAAC,MAAM,CAAC;YACjD,CAAC;AACD,YAAA,KAAK,EAAE,CAAC,KAAc,KAAI;AACxB,gBAAA,OAAO,CAAC,KAAK,CAAC,4CAA4C,EAAE,KAAK,CAAC;AAClE,gBAAA,IAAI,CAAC,gBAAgB,CAAC,GAAG,CACvB,IAAI,CAAC,CAAC,CAAC,OAAO,CACZ,oDAAoD,CACrD,CACF;YACH,CAAC;AACF,SAAA,CAAC;IACN;;;IAIA,aAAa,GAAA;AACX,QAAA,IACE,CAAC,IAAI,CAAC,OAAO,EAAE;YACf,IAAI,CAAC,IAAI,EAAE;YACX,IAAI,CAAC,UAAU,EAAE;YACjB,IAAI,CAAC,gBAAgB,EAAE;YACvB,IAAI,CAAC,kBAAkB,EAAE;AACzB,YAAA,IAAI,CAAC,gBAAgB,EAAE,EACvB;YACA;QACF;AACA,QAAA,MAAM,YAAY,GAAG,IAAI,CAAC,oBAAoB,EAAE;AAChD,QAAA,MAAM,UAAU,GAAG,IAAI,CAAC,oBAAoB,EAAE,CAAC,IAAI,CACjD,IAAI,IAAI,IAAI,CAAC,EAAE,KAAK,YAAY,CACjC;QACD,IAAI,UAAU,EAAE;AACd,YAAA,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,WAAW,IAAI,CAAC,GAAG,WAAW,EAAE,UAAU,CAAC,CAAC;AACpE,YAAA,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,IAAI,CAAC;QACrC;IACF;;;AAIA,IAAA,gBAAgB,CAAC,EAAU,EAAA;AACzB,QAAA,IACE,CAAC,IAAI,CAAC,OAAO,EAAE;YACf,IAAI,CAAC,IAAI,EAAE;YACX,IAAI,CAAC,UAAU,EAAE;YACjB,IAAI,CAAC,gBAAgB,EAAE;YACvB,IAAI,CAAC,kBAAkB,EAAE;AACzB,YAAA,IAAI,CAAC,gBAAgB,EAAE,EACvB;YACA;QACF;QACA,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,KAAK,IAC3B,KAAK,CAAC,MAAM,CAAC,UAAU,IAAI,UAAU,CAAC,EAAE,KAAK,EAAE,CAAC,CACjD;IACH;;;IAIA,qBAAqB,GAAA;QACnB,IACE,IAAI,CAAC,wBAAwB,EAAE;YAC/B,IAAI,CAAC,iBAAiB,EAAE,CAAC,MAAM,GAAG,CAAC,EACnC;YACA;QACF;AACA,QAAA,IAAI,CAAC,wBAAwB,CAAC,GAAG,CAAC,IAAI,CAAC;AACvC,QAAA,IAAI,CAAC,sBAAsB,CAAC,GAAG,CAAC,EAAE,CAAC;QACnC,IAAI,CAAC,aAAa,CAAC;aAChB,IAAI,CACH,kBAAkB,CAAC,IAAI,CAAC,UAAU,CAAC,EACnC,QAAQ,CAAC,MAAM,IAAI,CAAC,wBAAwB,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;AAEzD,aAAA,SAAS,CAAC;AACT,YAAA,IAAI,EAAE,WAAW,IAAI,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,WAAW,CAAC;AAC5D,YAAA,KAAK,EAAE,CAAC,KAAc,KAAI;AACxB,gBAAA,OAAO,CAAC,KAAK,CACX,mDAAmD,EACnD,KAAK,CACN;AACD,gBAAA,IAAI,CAAC,sBAAsB,CAAC,GAAG,CAC7B,IAAI,CAAC,CAAC,CAAC,OAAO,CACZ,8DAA8D,CAC/D,CACF;YACH,CAAC;AACF,SAAA,CAAC;IACN;;AAGU,IAAA,kBAAkB,CAAC,OAAgB,EAAA;AAC3C,QAAA,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa,EAAE;QAEnC,QACE,CAAC,CAAC,MAAM;YACR,CAAC,IAAI,CAAC,IAAI,EAAE;YACZ,CAAC,IAAI,CAAC,UAAU,EAAE;YAClB,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC;IAE9B;IAEU,eAAe,CAAC,KAAiB,EAAE,OAAgB,EAAA;QAC3D,KAAK,CAAC,cAAc,EAAE;AAEtB,QAAA,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa,EAAE;AAEnC,QAAA,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,IAAI,EAAE,IAAI,IAAI,CAAC,UAAU,EAAE,EAAE;YAC/C;QACF;AAEA,QAAA,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI;AAExB,QAAA,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,WAAW,IAAI,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,IAAI,CAAC;QAEpE,IAAI,CAAC,KAAK,EAAE;IACd;;AAGA,IAAA,gBAAgB,CAAC,KAAY,EAAA;AAC3B,QAAA,IAAI,KAAK,CAAC,MAAM,YAAY,mBAAmB,EAAE;YAC/C,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC;QAC9C;IACF;;AAGA,IAAA,aAAa,CAAC,KAAa,EAAA;AACzB,QAAA,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa,EAAE;AACnC,QAAA,IAAI,MAAM,IAAI,IAAI,CAAC,UAAU,EAAE,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC,EAAE;YACpD,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;QACxE;AACA,QAAA,IAAI,MAAM,IAAI,KAAK,KAAK,CAAC,EAAE;AACzB,YAAA,IAAI,CAAC,oBAAoB,GAAG,IAAI;AAChC,YAAA,IAAI;gBACF,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC;YACtC;oBAAU;AACR,gBAAA,IAAI,CAAC,oBAAoB,GAAG,KAAK;YACnC;QACF;AACA,QAAA,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC;IAC5B;;;AAIA,IAAA,cAAc,CAAC,QAAiC,EAAA;AAC9C,QAAA,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,IAAI,IAAI,CAAC,UAAU,EAAE,EAAE;YACvD;QACF;AACA,QAAA,MAAM,IAAI,GAAG,CAAA,EAAA,EAAK,QAAQ,IAAI;AAC9B,QAAA,IAAI,IAAI,CAAC,UAAU,EAAE,KAAK,CAAC,EAAE;YAC3B,MAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,EAAE,EAAE,aAAa;YACjD,IAAI,QAAQ,EAAE;AACZ,gBAAA,QAAQ,CAAC,YAAY,CACnB,IAAI,EACJ,QAAQ,CAAC,cAAc,EACvB,QAAQ,CAAC,YAAY,EACrB,KAAK,CACN;gBACD,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,QAAQ,CAAC,KAAK,CAAC;gBACxC,QAAQ,CAAC,KAAK,EAAE;YAClB;QACF;AAAO,aAAA,IAAI,IAAI,CAAC,UAAU,EAAE,KAAK,CAAC,EAAE;AAClC,YAAA,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa,EAAE;YACnC,MAAM,EAAE,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE;AACxC,YAAA,MAAM,EAAE,IAAI,CAAC,KAAK,EAAE;QACtB;IACF;;;IAIA,WAAW,CACT,KAAQ,EACR,KAA0B,EAAA;QAE1B,IAAI,KAAK,KAAK,OAAO,IAAI,IAAI,CAAC,IAAI,EAAE,KAAK,KAAK,EAAE;AAC9C,YAAA,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;YAC3B,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,KAAK;AAC1B,gBAAA,GAAG,KAAK;gBACR,KAAK;AACL,gBAAA,IAAI,EAAE,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC;AACzB,aAAA,CAAC,CAAC;YACH;QACF;QACA,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,KAAK,EAAE,GAAG,KAAK,EAAE,CAAC,KAAK,GAAG,KAAK,EAAE,CAAC,CAAC;IAC5D;;;;AAKA,IAAA,sBAAsB,CAAC,KAAY,EAAA;AACjC,QAAA,IAAI,KAAK,CAAC,MAAM,YAAY,gBAAgB,EAAE;AAC5C,YAAA,IAAI,CAAC,sBAAsB,GAAG,IAAI;YAClC,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC;QAC/C;IACF;;;AAIA,IAAA,yBAAyB,CAAC,KAAY,EAAA;QACpC,IAAI,EAAE,KAAK,CAAC,MAAM,YAAY,gBAAgB,CAAC,EAAE;AAC/C,YAAA,IAAI,CAAC,eAAe,CAAC,GAAG,CACtB,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,oCAAoC,CAAC,CACrD;YACD;QACF;AACA,QAAA,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM;AAC1B,QAAA,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,IAAI,EAAE,CAAC;AAC3C,QAAA,KAAK,CAAC,KAAK,GAAG,EAAE;AAChB,QAAA,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE;YACvD;QACF;AACA,QAAA,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,EAAE,CAAC;QAC5B,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,QAAQ,IAAI;AACjC,YAAA,GAAG,QAAQ;YACX,GAAG,KAAK,CAAC,GAAG,CAAC,IAAI,KAAK;AACpB,gBAAA,EAAE,EAAE,EAAE,IAAI,CAAC,iBAAiB;gBAC5B,IAAI;AACJ,gBAAA,MAAM,EAAE,SAAkB;AAC1B,gBAAA,QAAQ,EAAE,CAAC;AACX,gBAAA,KAAK,EAAE,EAAE;AACV,aAAA,CAAC,CAAC;AACJ,SAAA,CAAC;IACJ;;;AAIA,IAAA,sBAAsB,CAAC,EAAU,EAAA;AAC/B,QAAA,IAAI,IAAI,CAAC,IAAI,EAAE,EAAE;YACf;QACF;QACA,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,KAAK,IAAI,KAAK,CAAC,MAAM,CAAC,IAAI,IAAI,IAAI,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;IACvE;;;AAIA,IAAA,MAAM,uBAAuB,GAAA;AAC3B,QAAA,MAAM,MAAM,GAAG,IAAI,CAAC,WAAW,EAAE;QACjC,MAAM,WAAW,GAAG,IAAI,CAAC,gBAAgB,EAAE,CAAC,IAAI,EAAE;AAClD,QAAA,IACE,CAAC,MAAM;AACP,YAAA,CAAC,WAAW;YACZ,IAAI,CAAC,IAAI,EAAE;AACX,YAAA,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,CAAC,EAC1D;YACA;QACF;AACA,QAAA,MAAM,YAAY,GAAG,IAAI,CAAC,UAAU;AACjC,aAAA,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;AACtC,aAAA,MAAM,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,IAAI,CAAC,MAAM,KAAK,SAAS,CAAC;AAClD,QAAA,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC;AACnB,QAAA,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,EAAE,CAAC;AAC5B,QAAA,IAAI;YACF,KAAK,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,KAAK,EAAE,IAAI,YAAY,EAAE;gBACxD,MAAM,aAAa,GAAG,IAAI,CAAC,kBAAkB,EAAE,CAAC,KAAK,CAAC;AACtD,gBAAA,IAAI,CAAC,sBAAsB,CAAC,YAAY,CAAC,EAAE,EAAE;AAC3C,oBAAA,MAAM,EAAE,YAAY;oBACpB,QAAQ,EAAE,YAAY,CAAC,OAAO,GAAG,EAAE,GAAG,CAAC;AACvC,oBAAA,KAAK,EAAE,EAAE;AACV,iBAAA,CAAC;gBACF,MAAM,IAAI,GAAG,IAAI,CAAC,oBAAoB,CAAC,YAAY,CAAC,IAAI,CAAC;gBACzD,IAAI,IAAI,GAAkB,IAAI;AAC9B,gBAAA,IAAI;AACF,oBAAA,IAAI,IAAI,KAAK,kBAAkB,CAAC,MAAM,EAAE;wBACtC,IAAI,GAAG,MAAM,mBAAmB,CAAC,YAAY,CAAC,IAAI,CAAC;AACnD,wBAAA,IAAI,CAAC,sBAAsB,CAAC,YAAY,CAAC,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;oBAChE;oBACA,IAAI,OAAO,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC,IAAI,CAClC,IAAI,IAAI,IAAI,CAAC,EAAE,KAAK,YAAY,CAAC,EAAE,CACpC,EAAE,OAAO;AACV,oBAAA,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE;wBACpB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,WAAW,CACvC,YAAY,CAAC,IAAI,EACjB,UAAU,IACR,IAAI,CAAC,sBAAsB,CAAC,YAAY,CAAC,EAAE,EAAE;AAC3C,4BAAA,QAAQ,EACN,IAAI,KAAK,kBAAkB,CAAC;kCACxB,IAAI,CAAC,KAAK,CAAC,UAAU,GAAG,IAAI;kCAC5B,IAAI,CAAC,KAAK,CAAC,UAAU,GAAG,GAAG,CAAC;AACnC,yBAAA,CAAC,CACL;AACD,wBAAA,OAAO,GAAG,EAAE,GAAG,OAAO,EAAE,MAAM,EAAE;wBAChC,IAAI,CAAC,sBAAsB,CAAC,YAAY,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC;oBAC3D;oBACA,IAAI,IAAI,KAAK,kBAAkB,CAAC,KAAK,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE;wBAC3D,MAAM,aAAa,GAAG,MAAM,sBAAsB,CAChD,YAAY,CAAC,IAAI,CAClB;AACD,wBAAA,MAAM,SAAS,GACb,aAAa,CAAC,IAAI,KAAK,YAAY,GAAG,MAAM,GAAG,KAAK;AACtD,wBAAA,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,WAAW,CAC1C,IAAI,IAAI,CAAC,CAAC,aAAa,CAAC,EAAE,CAAA,UAAA,EAAa,SAAS,EAAE,EAAE;4BAClD,IAAI,EAAE,aAAa,CAAC,IAAI;AACzB,yBAAA,CAAC,EACF,UAAU,IACR,IAAI,CAAC,sBAAsB,CAAC,YAAY,CAAC,EAAE,EAAE;4BAC3C,QAAQ,EAAE,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,GAAG,IAAI,CAAC;AAC7C,yBAAA,CAAC,CACL;AACD,wBAAA,OAAO,GAAG,EAAE,GAAG,OAAO,EAAE,SAAS,EAAE;wBACnC,IAAI,CAAC,sBAAsB,CAAC,YAAY,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC;oBAC3D;AACA,oBAAA,IAAI,CAAC,sBAAsB,CAAC,YAAY,CAAC,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;AAC9D,oBAAA,MAAM,YAAY,GAChB,IAAI,KAAK,kBAAkB,CAAC;AAC1B,0BAAE,OAAO,CAAC,SAAS,EAAE;AACrB,0BAAE,IAAI,KAAK,kBAAkB,CAAC;AAC5B,8BAAE,mBAAmB,CAAC,kBAAkB,CAAC,KAAK;AAC9C,8BAAE,mBAAmB,CAAC,kBAAkB,CAAC,MAAM,CAAC;oBACtD,IAAI,CAAC,YAAY,EAAE;AACjB,wBAAA,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC;oBAC/D;AACA,oBAAA,MAAM,YAAY,GAAG,OAAO,CAAC,MAAM;oBACnC,IAAI,CAAC,YAAY,EAAE;AACjB,wBAAA,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC;oBAC7D;AACA,oBAAA,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,kBAAkB,CAAC,MAAM,CAAC,EAAE,EAAE;wBAC1D,WAAW;wBACX,aAAa;AACb,wBAAA,QAAQ,EAAE,YAAY,CAAC,IAAI,CAAC,IAAI;AAChC,wBAAA,QAAQ,EAAE,YAAY,CAAC,IAAI,CAAC,IAAI;wBAChC,SAAS,EAAE,YAAY,CAAC,GAAG;wBAC3B,IAAI;wBACJ,IAAI;AACJ,wBAAA,QAAQ,EACN,IAAI,KAAK,kBAAkB,CAAC,KAAK,GAAG,YAAY,CAAC,GAAG,GAAG,IAAI;AAC7D,wBAAA,QAAQ,EACN,IAAI,KAAK,kBAAkB,CAAC,KAAK,GAAG,YAAY,CAAC,GAAG,GAAG,IAAI;AAC7D,wBAAA,aAAa,EACX,IAAI,KAAK,kBAAkB,CAAC,UAAU,GAAG,YAAY,CAAC,GAAG,GAAG,IAAI;wBAClE,YAAY;AACb,qBAAA,CAAC;AACF,oBAAA,IAAI,CAAC,yBAAyB,CAC5B,YAAY,CAAC,EAAE,EACf,MAAM,CAAC,KAAK,EACZ,MAAM,CAAC,aAAa,CACrB;AACD,oBAAA,IAAI,IAAI,KAAK,kBAAkB,CAAC,MAAM,EAAE;AACtC,wBAAA,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,0BAA0B,CACzD,YAAY,CAAC,EAAE,EACf,OAAO,EACP,CAAC,YAAY,CAAC,CACf;AACD,wBAAA,IAAI,aAAa,CAAC,MAAM,EAAE;AACxB,4BAAA,IAAI,CAAC,sBAAsB,CAAC,YAAY,CAAC,EAAE,EAAE;AAC3C,gCAAA,KAAK,EAAE,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC;AAC/B,6BAAA,CAAC;wBACJ;oBACF;gBACF;gBAAE,OAAO,KAAc,EAAE;AACvB,oBAAA,OAAO,CAAC,KAAK,CACX,0DAA0D,EAC1D,YAAY,CAAC,IAAI,CAAC,IAAI,EACtB,KAAK,CACN;oBACD,IAAI,YAAY,GAAkC,IAAI;AACtD,oBAAA,IAAI;AACF,wBAAA,YAAY,GAAG,MAAM,cAAc,CACjC,IAAI,CAAC,GAAG,CAAC,gBAAgB,CAAC,MAAM,CAAC,EAAE,CAAC,CACrC;AACD,wBAAA,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,YAAY,CAAC;oBACrC;oBAAE,OAAO,YAAqB,EAAE;AAC9B,wBAAA,OAAO,CAAC,KAAK,CACX,yDAAyD,EACzD,YAAY,CACb;oBACH;oBACA,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC,IAAI,CACpC,IAAI,IAAI,IAAI,CAAC,EAAE,KAAK,YAAY,CAAC,EAAE,CACpC,EAAE,OAAO;AACV,oBAAA,MAAM,aAAa,GAAG,YAAY,EAAE,IAAI,CACtC,IAAI,IACF,IAAI,CAAC,KAAK,KAAK,aAAa;AAC5B,wBAAA,IAAI,CAAC,uBAAuB,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,CAAC,CAC1D;oBACD,IAAI,aAAa,EAAE;wBACjB,IAAI,CAAC,yBAAyB,CAC5B,YAAY,CAAC,EAAE,EACf,aAAa,EACb,IAAI,CAAC,WAAW,EAAE,EAAE,OAAO,IAAI,MAAM,CAAC,OAAO,CAC9C;wBACD,IAAI,IAAI,KAAK,kBAAkB,CAAC,MAAM,IAAI,OAAO,EAAE,MAAM,EAAE;AACzD,4BAAA,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,0BAA0B,CACzD,YAAY,CAAC,EAAE,EACf,OAAO,EACP,CAAC,OAAO,CAAC,MAAM,CAAC,CACjB;AACD,4BAAA,IAAI,aAAa,CAAC,MAAM,EAAE;AACxB,gCAAA,IAAI,CAAC,sBAAsB,CAAC,YAAY,CAAC,EAAE,EAAE;AAC3C,oCAAA,KAAK,EAAE,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC;AAC/B,iCAAA,CAAC;4BACJ;wBACF;wBACA;oBACF;oBACA,MAAM,aAAa,GAAG;AACpB,0BAAE;8BACE,MAAM,IAAI,CAAC,0BAA0B,CAAC,YAAY,CAAC,EAAE,EAAE,OAAO;AAChE,8BAAE;0BACF,EAAE;AACN,oBAAA,MAAM,MAAM,GAAG,KAAK,YAAY,KAAK,GAAG,KAAK,CAAC,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC;oBACrE,MAAM,iBAAiB,GAAG;AACxB,0BAAE;0BACA,CAAA,EAAG,IAAI,CAAC,CAAC,CAAC,OAAO,CACf,2FAA2F,CAC5F,CAAA,CAAA,CAAG;AACR,oBAAA,IAAI,CAAC,sBAAsB,CAAC,YAAY,CAAC,EAAE,EAAE;AAC3C,wBAAA,MAAM,EAAE,OAAO;AACf,wBAAA,KAAK,EACH,CAAA,EAAG,iBAAiB,CAAA,EAAG,MAAM,CAAA,CAAE;AAC/B,6BAAC,aAAa,CAAC,MAAM,GAAG,IAAI,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA,CAAE,GAAG,EAAE,CAAC;AAC9D,qBAAA,CAAC;oBACF;gBACF;YACF;QACF;gBAAU;AACR,YAAA,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC;YACpB,IAAI,CAAC,gBAAgB,EAAE;QACzB;IACF;;;AAIQ,IAAA,oBAAoB,CAAC,IAAU,EAAA;AACrC,QAAA,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE;AACjE,QAAA,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE;YACrD,OAAO,kBAAkB,CAAC,MAAM;QAClC;AACA,QAAA,IACE,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC;AAC9B,YAAA;gBACE,KAAK;gBACL,KAAK;gBACL,KAAK;gBACL,KAAK;gBACL,KAAK;gBACL,KAAK;gBACL,MAAM;gBACN,KAAK;gBACL,KAAK;gBACL,MAAM;AACP,aAAA,CAAC,QAAQ,CAAC,SAAS,CAAC,EACrB;YACA,OAAO,kBAAkB,CAAC,KAAK;QACjC;AACA,QAAA,IACE,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC;AAC9B,YAAA;gBACE,KAAK;gBACL,MAAM;gBACN,KAAK;gBACL,KAAK;gBACL,KAAK;gBACL,KAAK;gBACL,MAAM;gBACN,KAAK;gBACL,MAAM;gBACN,KAAK;AACN,aAAA,CAAC,QAAQ,CAAC,SAAS,CAAC,EACrB;YACA,OAAO,kBAAkB,CAAC,KAAK;QACjC;QACA,OAAO,kBAAkB,CAAC,UAAU;IACtC;;;AAIQ,IAAA,uBAAuB,CAC7B,IAA0B,EAC1B,IAAwB,EACxB,IAAmB,EACnB,OAA8C,EAAA;AAE9C,QAAA,MAAM,YAAY,GAChB,IAAI,KAAK,kBAAkB,CAAC;AAC1B,cAAE,OAAO,EAAE,SAAS,EAAE;AACtB,cAAE,IAAI,KAAK,kBAAkB,CAAC;AAC5B,kBAAE,mBAAmB,CAAC,kBAAkB,CAAC,KAAK;AAC9C,kBAAE,mBAAmB,CAAC,kBAAkB,CAAC,MAAM,CAAC;AACtD,QAAA,QACE,IAAI,CAAC,IAAI,KAAK,IAAI;YAClB,IAAI,CAAC,IAAI,KAAK,IAAI;AAClB,YAAA,IAAI,CAAC,QAAQ;AACX,iBAAC,IAAI,KAAK,kBAAkB,CAAC,KAAK,GAAG,OAAO,EAAE,MAAM,EAAE,GAAG,GAAG,IAAI,CAAC;AACnE,YAAA,IAAI,CAAC,QAAQ;AACX,iBAAC,IAAI,KAAK,kBAAkB,CAAC,KAAK,GAAG,OAAO,EAAE,MAAM,EAAE,GAAG,GAAG,IAAI,CAAC;AACnE,YAAA,IAAI,CAAC,aAAa;AAChB,iBAAC,IAAI,KAAK,kBAAkB,CAAC;AAC3B,sBAAE,OAAO,EAAE,MAAM,EAAE;sBACjB,IAAI,CAAC;AACX,YAAA,IAAI,CAAC,YAAY,KAAK,YAAY;IAEtC;;;AAIQ,IAAA,yBAAyB,CAC/B,MAAc,EACd,KAA2B,EAC3B,aAAqB,EAAA;AAErB,QAAA,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,KAAK,IAC5B,KAAK,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,EAAE,KAAK,KAAK,CAAC,EAAE,CAAC,GAAG,KAAK,GAAG,CAAC,GAAG,KAAK,EAAE,KAAK,CAAC,CACrE;QACD,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,IAAI,IAC1B;AACE,cAAG;AACC,gBAAA,GAAG,IAAI;AACP,gBAAA,OAAO,EAAE,aAAa;AACtB,gBAAA,YAAY,EAAE,IAAI,CAAC,YAAY,EAAE;AACT;cAC1B,IAAI,CACT;AACD,QAAA,IAAI,CAAC,sBAAsB,CAAC,MAAM,EAAE;AAClC,YAAA,MAAM,EAAE,SAAS;AACjB,YAAA,QAAQ,EAAE,GAAG;YACb,YAAY,EAAE,KAAK,CAAC,KAAK;AACzB,YAAA,KAAK,EAAE,EAAE;AACT,YAAA,OAAO,EAAE,SAAS;AACnB,SAAA,CAAC;IACJ;;;AAIQ,IAAA,MAAM,0BAA0B,CACtC,MAAc,EACd,OAA0D,EAC1D,IAA0B,EAAA;QAE1B,MAAM,OAAO,GACX,IAAI;YACJ,CAAC,OAAO,CAAC,SAAS,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,CACxC,CAAC,MAAM,KAAkC,CAAC,CAAC,MAAM,CAClD;AACH,QAAA,MAAM,SAAS,GAAG,IAAI,GAAG,EAAU;QACnC,MAAM,MAAM,GAAa,EAAE;AAC3B,QAAA,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE;AAC5B,YAAA,IAAI;AACF,gBAAA,IAAI,EAAE,MAAM,IAAI,CAAC,GAAG,CAAC,qBAAqB,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE;AACvD,oBAAA,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC;AACzB,oBAAA,MAAM,CAAC,IAAI,CACT,IAAI,CAAC,CAAC,CAAC,OAAO,CACZ,iEAAiE,CAClE,CACF;gBACH;YACF;YAAE,OAAO,KAAc,EAAE;gBACvB,OAAO,CAAC,KAAK,CACX,mDAAmD,EACnD,MAAM,CAAC,GAAG,EACV,KAAK,CACN;AACD,gBAAA,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC;AACzB,gBAAA,MAAM,CAAC,IAAI,CACT,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,2CAA2C,CAAC,CAC5D;YACH;QACF;AACA,QAAA,MAAM,QAAQ,GAAG;AACf,YAAA,IAAI,OAAO,CAAC,MAAM,IAAI,SAAS,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG;AACpD,kBAAE,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM;kBACxB,EAAE,CAAC;AACP,YAAA,IAAI,OAAO,CAAC,SAAS,IAAI,SAAS,CAAC,GAAG,CAAC,OAAO,CAAC,SAAS,CAAC,GAAG;AAC1D,kBAAE,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS;kBAC9B,EAAE,CAAC;SACR;AACD,QAAA,IAAI,CAAC,sBAAsB,CAAC,MAAM,EAAE;AAClC,YAAA,OAAO,EAAE,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,MAAM,GAAG,QAAQ,GAAG,SAAS;AAC7D,SAAA,CAAC;AACF,QAAA,OAAO,MAAM;IACf;;;IAIQ,sBAAsB,CAC5B,EAAU,EACV,OAA2C,EAAA;AAE3C,QAAA,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,KAAK,IAC1B,KAAK,CAAC,GAAG,CAAC,IAAI,KAAK,IAAI,CAAC,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,IAAI,EAAE,GAAG,OAAO,EAAE,GAAG,IAAI,CAAC,CAAC,CACrE;IACH;;;IAIA,MAAM,YAAY,CAAC,KAAY,EAAA;QAC7B,IAAI,EAAE,KAAK,CAAC,MAAM,YAAY,gBAAgB,CAAC,EAAE;AAC/C,YAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,yCAAyC,CAAC,CAAC;YACzE;QACF;AACA,QAAA,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM;QAC1B,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC;QAC7B,IAAI,CAAC,IAAI,EAAE;YACT;QACF;AACA,QAAA,MAAM,KAAK,GAAG,IAAI,CAAC,eAAe,EAAE;AACpC,QAAA,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,IAAI,IAAI,CAAC,UAAU,EAAE,EAAE;AACjE,YAAA,KAAK,CAAC,KAAK,GAAG,EAAE;YAChB;QACF;AACA,QAAA,MAAM,OAAO,GAAG,IAAI,CAAC,aAAa;AAClC,QAAA,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC;AACnB,QAAA,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC;AACxB,QAAA,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC;AAC1B,QAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;AAClB,QAAA,IAAI;AACF,YAAA,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,EAAE,UAAU,IAAG;AAC3D,gBAAA,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,SAAS,EAAE;AAC9B,oBAAA,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,UAAU,CAAC;gBACrC;AACF,YAAA,CAAC,CAAC;AACF,YAAA,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,SAAS,IAAI,IAAI,CAAC,aAAa,KAAK,OAAO,EAAE;gBAChE,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,IAAI,IAAI,CAAC,IAAI;gBAC7C,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,KAAK,KAAK;AACnC,oBAAA,GAAG,KAAK;AACR,oBAAA,CAAC,MAAM,CAAC,GAAG,GAAG,QAAQ;AACvB,iBAAA,CAAC,CAAC;AACH,gBAAA,IAAI,MAAM,CAAC,WAAW,EAAE;AACtB,oBAAA,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC;wBAC5B,GAAG,EAAE,MAAM,CAAC,GAAG;AACf,wBAAA,GAAG,EAAE,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,WAAW,EAAE,KAAK,CAAC,IAAI,CAAC;wBAC1D,QAAQ;AACT,qBAAA,CAAC;gBACJ;gBACA,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,GAAG,EAAE,MAAM,CAAC,GAAG,CAAC;gBACvC,IAAI,KAAK,CAAC,IAAI,KAAK,kBAAkB,CAAC,KAAK,EAAE;AAC3C,oBAAA,IAAI;AACF,wBAAA,MAAM,IAAI,GAAG,MAAM,sBAAsB,CAAC,IAAI,CAAC;AAC/C,wBAAA,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,KAAK,YAAY,GAAG,MAAM,GAAG,KAAK;wBAC7D,MAAM,IAAI,CAAC,cAAc,CACvB,IAAI,IAAI,CAAC,CAAC,IAAI,CAAC,EAAE,CAAA,UAAA,EAAa,SAAS,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,EAC/D,OAAO,CACR;oBACH;oBAAE,OAAO,KAAc,EAAE;AACvB,wBAAA,OAAO,CAAC,KAAK,CACX,8CAA8C,EAC9C,KAAK,CACN;AACD,wBAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CACZ,IAAI,CAAC,CAAC,CAAC,OAAO,CACZ,sHAAsH,CACvH,CACF;oBACH;gBACF;YACF;QACF;QAAE,OAAO,KAAc,EAAE;AACvB,YAAA,OAAO,CAAC,KAAK,CAAC,wCAAwC,EAAE,KAAK,CAAC;AAC9D,YAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CACZ,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,oDAAoD,CAAC,CACrE;QACH;gBAAU;AACR,YAAA,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC;AACpB,YAAA,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC;AACzB,YAAA,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC;AAC1B,YAAA,KAAK,CAAC,KAAK,GAAG,EAAE;QAClB;IACF;;;IAIA,WAAW,GAAA;AACT,QAAA,MAAM,KAAK,GAAG,IAAI,CAAC,eAAe,EAAE;AACpC,QAAA,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,IAAI,IAAI,CAAC,UAAU,EAAE,EAAE;YACjE;QACF;AACA,QAAA,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,IAAI,CAAC;QACnC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC;IACnC;;;IAIQ,gBAAgB,CAAC,GAAW,EAAE,IAAwB,EAAA;AAC5D,QAAA,IAAI,IAAI,KAAK,kBAAkB,CAAC,UAAU,EAAE;AAC1C,YAAA,OAAO,GAAG;QACZ;AACA,QAAA,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC;QAC9B,SAAS,CAAC,YAAY,CAAC,GAAG,CAAC,UAAU,EAAE,MAAM,CAAC;QAC9C,OAAO,SAAS,CAAC,IAAI;IACvB;;;IAIQ,YAAY,CAClB,IAAY,EACZ,IAAwB,EAAA;QAExB,QAAQ,IAAI;YACV,KAAK,kBAAkB,CAAC,KAAK;gBAC3B,OAAO,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC;YAC1D,KAAK,kBAAkB,CAAC,KAAK;gBAC3B,OAAO,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC;YAC1D,KAAK,kBAAkB,CAAC,UAAU;gBAChC,OAAO,IAAI,CAAC,GAAG,CAAC,uBAAuB,CAAC,IAAI,CAAC;AAC/C,YAAA;gBACE,OAAO,OAAO,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC;;IAEtE;;;AAIQ,IAAA,MAAM,mBAAmB,CAC/B,IAAY,EACZ,IAAwB,EAAA;AAExB,QAAA,IAAI;YACF,QAAQ,IAAI;gBACV,KAAK,kBAAkB,CAAC,KAAK;oBAC3B,OAAO,MAAM,IAAI,CAAC,GAAG,CAAC,wBAAwB,CAAC,IAAI,CAAC;gBACtD,KAAK,kBAAkB,CAAC,KAAK;oBAC3B,OAAO,MAAM,IAAI,CAAC,GAAG,CAAC,wBAAwB,CAAC,IAAI,CAAC;gBACtD,KAAK,kBAAkB,CAAC,UAAU;oBAChC,OAAO,MAAM,IAAI,CAAC,GAAG,CAAC,6BAA6B,CAAC,IAAI,CAAC;AAC3D,gBAAA;AACE,oBAAA,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC;;QAErD;AAAE,QAAA,MAAM;YACN,OAAO,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,IAAI,CAAC;QACtC;IACF;;;AAIA,IAAA,aAAa,CAAC,GAAW,EAAA;QACvB,MAAM,QAAQ,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC,GAAG,CAAC;QAC3C,IAAI,QAAQ,EAAE;AACZ,YAAA,OAAO,QAAQ;QACjB;AACA,QAAA,MAAM,QAAQ,GAAG,IAAI,CAAC,oBAAoB,EAAE;AAC5C,QAAA,IAAI,QAAQ,EAAE,GAAG,KAAK,GAAG,EAAE;YACzB,OAAO,QAAQ,CAAC,QAAQ;QAC1B;AACA,QAAA,MAAM,UAAU,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,IAAI,GAAG;QAC9C,OAAO,UAAU,CAAC,OAAO,CAAC,mBAAmB,EAAE,EAAE,CAAC;IACpD;;;AAIA,IAAA,UAAU,CAAC,KAAY,EAAA;AACrB,QAAA,IAAI,KAAK,CAAC,MAAM,YAAY,gBAAgB,EAAE;YAC5C,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC;QAC9C;IACF;;;IAIA,IAAI,GAAA;AACF,QAAA,IAAI,IAAI,CAAC,IAAI,EAAE,KAAK,MAAM,IAAI,IAAI,CAAC,IAAI,EAAE,IAAI,IAAI,CAAC,UAAU,EAAE,EAAE;YAC9D;QACF;AACA,QAAA,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE;YACvB;QACF;AACA,QAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;AAClB,QAAA,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC;IACvB;;;IAIA,MAAM,GAAA;QACJ,IAAI,IAAI,CAAC,IAAI,EAAE,IAAI,IAAI,CAAC,UAAU,EAAE,EAAE;YACpC;QACF;QACA,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;AAChC,QAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;AAClB,QAAA,IAAI,IAAI,CAAC,OAAO,EAAE,EAAE;AAClB,YAAA,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC;QACvB;AACA,QAAA,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE;IACvB;;;IAIA,IAAI,GAAA;AACF,QAAA,IAAI,IAAI,CAAC,IAAI,EAAE,IAAI,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE;YACvD;QACF;AACA,QAAA,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE;AACnB,YAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,gCAAgC,CAAC,CAAC;YAChE;QACF;AACA,QAAA,IAAI,IAAI,CAAC,IAAI,EAAE,KAAK,KAAK,EAAE;YACzB,IAAI,CAAC,OAAO,CACV,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC;gBACrB,GAAG,IAAI,CAAC,KAAK,EAAE;AACf,gBAAA,cAAc,EAAE,IAAI,CAAC,YAAY,EAAE,CAAC,GAAG,CAAC,IAAI,IAAI,IAAI,CAAC,EAAE,CAAC;AACxD,gBAAA,aAAa,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC,GAAG,CAAC,UAAU,IAAI,UAAU,CAAC,EAAE,CAAC;AAClE,gBAAA,8BAA8B,EAAE,IAAI,CAAC,8BAA8B,EAAE;AACrE,gBAAA,6BAA6B,EAAE,IAAI,CAAC,6BAA6B,EAAE;AACnE,gBAAA,MAAM,EAAE,IAAI,CAAC,WAAW,EAAE;AAC1B,gBAAA,eAAe,EAAE,IAAI,CAAC,oBAAoB;AACxC,sBAAE,IAAI,CAAC,uBAAuB;AAC9B,sBAAE,IAAI;AACT,aAAA,CAAC,CACH;QACH;aAAO;AACL,YAAA,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW,EAAE;YAC/B,IAAI,IAAI,EAAE;gBACR,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC;YACvE;QACF;IACF;;;IAIA,YAAY,GAAA;AACV,QAAA,IAAI,IAAI,CAAC,qBAAqB,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,KAAK,YAAY,EAAE;YAChE;QACF;AACA,QAAA,MAAM,aAAa,GAAG,IAAI,CAAC,WAAW,EAAE;AACxC,QAAA,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC;QACzB,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAI1B,gCAAgC,EAAE;AAClC,YAAA,IAAI,EAAE;gBACJ,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,oBAAoB,CAAC;AAC3C,gBAAA,OAAO,EAAE;AACP,oBAAA,EAAE,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE;AAC1D,oBAAA,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE;AAClD,oBAAA,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE;AACzD,iBAAA;AACD,gBAAA,QAAQ,EAAE,aAAa;AACxB,aAAA;AACD,YAAA,YAAY,EAAE,IAAI;AACnB,SAAA,CAAC;QACF;AACG,aAAA,WAAW;AACX,aAAA,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,UAAU,CAAC;aACxC,SAAS,CAAC,MAAM,IAAG;AAClB,YAAA,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC;AAC1B,YAAA,IAAI,CAAC,MAAM,IAAI,MAAM,KAAK,aAAa,EAAE;gBACvC;YACF;AACA,YAAA,IAAI,IAAI,CAAC,IAAI,EAAE,KAAK,KAAK,EAAE;AACzB,gBAAA,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC;gBAC5B;YACF;YACA,IAAI,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE;AACrC,gBAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,gCAAgC,CAAC,CAAC;gBAChE;YACF;AACA,YAAA,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW,EAAE;YAC/B,IAAI,CAAC,IAAI,EAAE;gBACT;YACF;AACA,YAAA,IAAI,CAAC,OAAO,CACV,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,EAAE;AAC9B,gBAAA,IAAI,IAAI,CAAC,OAAO;AACd,sBAAE,IAAI,CAAC,WAAW,CAAC,IAAI;sBACrB,EAAE,eAAe,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC;gBACtC,MAAM;gBACN,IAAI,MAAM,KAAK,WAAW,IAAI,IAAI,CAAC,MAAM,KAAK;AAC5C,sBAAE,EAAE,WAAW,EAAE,IAAI,IAAI,EAAE;sBACzB,EAAE,CAAC;AACR,aAAA,CAAC,CACH;AACH,QAAA,CAAC,CAAC;IACN;;;AAIQ,IAAA,cAAc,CAAC,KAAa,EAAA;AAClC,QAAA,IAAI,sDAAsD,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;AACtE,YAAA,OAAO,KAAK;QACd;AACA,QAAA,OAAO,CAAC;AACL,aAAA,OAAO,CAAC,UAAU,EAAE,EAAE;AACtB,aAAA,OAAO,CAAC,0BAA0B,EAAE,GAAG;AACvC,aAAA,IAAI,EAAE;IACX;;AAGA,IAAA,kBAAkB,CAAC,KAAyB,EAAA;AAC1C,QAAA,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,IAAI,IAAI,CAAC,UAAU,EAAE,EAAE;YACvD;QACF;QACA,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE;QAC1C,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,EAAE;YAClC;QACF;QACA,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC;AACtE,QAAA,IAAI,KAAK,KAAK,SAAS,EAAE;YACvB,IAAI,CAAC,WAAW,CACd,SAAS,EACT,CAAA,4BAAA,EAA+B,KAAK,CAAA,8BAAA,CAAgC,CACrE;YACD;QACF;AACA,QAAA,MAAM,WAAW,GACf,CAAA,4BAAA,EAA+B,KAAK,CAAA,EAAA,CAAI;YACxC,kEAAkE;YAClE,iEAAiE;YACjE,mEAAmE;AACnE,YAAA,oCAAoC;QACtC,MAAM,kBAAkB,GAAG;AACxB,aAAA,OAAO,CAAC,IAAI,EAAE,OAAO;AACrB,aAAA,OAAO,CAAC,IAAI,EAAE,MAAM;AACpB,aAAA,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC;QACxB,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,CAAA,GAAA,EAAM,kBAAkB,CAAA,IAAA,CAAM,CAAC;AACxD,QAAA,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa,EAAE;QACnC,IAAI,MAAM,EAAE;AACV,YAAA,IAAI,CAAC,oBAAoB,GAAG,IAAI;AAChC,YAAA,IAAI;gBACF,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC;YACtC;oBAAU;AACR,gBAAA,IAAI,CAAC,oBAAoB,GAAG,KAAK;YACnC;QACF;IACF;;;;IAKA,MAAM,GAAA;AACJ,QAAA,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW,EAAE;AAC/B,QAAA,IACE,CAAC,IAAI;YACL,IAAI,CAAC,IAAI,EAAE;YACX,IAAI,CAAC,UAAU,EAAE;AACjB,YAAA,IAAI,CAAC,IAAI,EAAE,KAAK,YAAY,EAC5B;YACA;QACF;AACA,QAAA,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC;QACzB,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAI1B,+BAA+B,EAAE;AACjC,YAAA,IAAI,EAAE,IAAI;AACV,YAAA,KAAK,EAAE,OAAO;AACd,YAAA,QAAQ,EAAE,MAAM;AAChB,YAAA,YAAY,EAAE,IAAI;AACnB,SAAA,CAAC;QACF;AACG,aAAA,WAAW;AACX,aAAA,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,UAAU,CAAC;aACxC,SAAS,CAAC,QAAQ,IAAG;AACpB,YAAA,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC;YAC1B,IAAI,QAAQ,EAAE;AACZ,gBAAA,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC;YAC3B;AACF,QAAA,CAAC,CAAC;IACN;;;IAIA,MAAM,GAAA;AACJ,QAAA,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW,EAAE;AAC/B,QAAA,IACE,CAAC,IAAI;YACL,IAAI,CAAC,IAAI,EAAE;YACX,IAAI,CAAC,UAAU,EAAE;AACjB,YAAA,IAAI,CAAC,IAAI,EAAE,KAAK,YAAY;AAC5B,YAAA,IAAI,CAAC,IAAI,EAAE,KAAK,KAAK,EACrB;YACA;QACF;AACA,QAAA,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,KAAK,UAAU;AAC3C,QAAA,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC;QACzB,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,0BAA0B,EAAE;AACvD,YAAA,IAAI,EAAE;AACJ,gBAAA,KAAK,EAAE;sBACH,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,0BAA0B;sBACzC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,eAAe,CAAC;AACnC,gBAAA,OAAO,EAAE;sBACL,IAAI,CAAC,CAAC,CAAC,OAAO,CACZ,iFAAiF;sBAEnF,IAAI,CAAC,CAAC,CAAC,OAAO,CACZ,gEAAgE,CACjE;AACL,gBAAA,WAAW,EAAE;sBACT,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,oBAAoB;sBACnC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC;AAC7B,aAAA;AACF,SAAA,CAAC;QACF;AACG,aAAA,WAAW;AACX,aAAA,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,UAAU,CAAC;aACxC,SAAS,CAAC,SAAS,IAAG;AACrB,YAAA,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC;YAC1B,IAAI,SAAS,EAAE;gBACb,IAAI,CAAC,QAAQ,EAAE;oBACb,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC;oBACjE;gBACF;AACA,gBAAA,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC;AACnB,gBAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;AAClB,gBAAA,IAAI,CAAC;qBACF,wBAAwB,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,OAAO;qBAC9C,IAAI,CACH,kBAAkB,CAAC,IAAI,CAAC,UAAU,CAAC,EACnC,QAAQ,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;AAErC,qBAAA,SAAS,CAAC;oBACT,IAAI,EAAE,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC;AACnC,oBAAA,KAAK,EAAE,CAAC,KAAc,KAAI;AACxB,wBAAA,OAAO,CAAC,KAAK,CACX,mDAAmD,EACnD,KAAK,CACN;AACD,wBAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CACZ,IAAI,CAAC,CAAC,CAAC,OAAO,CACZ,4EAA4E,CAC7E,CACF;oBACH,CAAC;AACF,iBAAA,CAAC;YACN;AACF,QAAA,CAAC,CAAC;IACN;;;IAIA,SAAS,GAAA;AACP,QAAA,IAAI,IAAI,CAAC,IAAI,EAAE,IAAI,IAAI,CAAC,UAAU,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,KAAK,YAAY,EAAE;YACpE;QACF;AACA,QAAA,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW,EAAE;QAC/B,IAAI,CAAC,IAAI,EAAE;YACT;QACF;AACA,QAAA,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC;AACnB,QAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;AAClB,QAAA,IAAI,CAAC;AACF,aAAA,gBAAgB,CAAC,IAAI,CAAC,EAAE;AACxB,aAAA,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;AACjD,aAAA,SAAS,CAAC;YACT,IAAI,EAAE,QAAQ,IAAG;AACf,gBAAA,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE;AACpB,oBAAA,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,KAAK,CAAC;oBAChC;gBACF;AACA,gBAAA,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC;gBACzB,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAI1B,gCAAgC,EAAE;AAClC,oBAAA,IAAI,EAAE;wBACJ,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,gBAAgB,CAAC;AACvC,wBAAA,OAAO,EAAE;AACP,4BAAA;AACE,gCAAA,KAAK,EAAE,QAAQ;gCACf,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,0BAA0B,CAAC;AAClD,6BAAA;AACD,4BAAA;AACE,gCAAA,KAAK,EAAE,WAAW;gCAClB,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,sCAAsC,CAAC;AAC9D,6BAAA;AACF,yBAAA;AACD,wBAAA,QAAQ,EAAE,QAAQ;AACnB,qBAAA;AACD,oBAAA,YAAY,EAAE,IAAI;AACnB,iBAAA,CAAC;gBACF;AACG,qBAAA,WAAW;AACX,qBAAA,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,UAAU,CAAC;qBACxC,SAAS,CAAC,MAAM,IAAG;AAClB,oBAAA,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC;oBAC1B,IAAI,CAAC,MAAM,EAAE;AACX,wBAAA,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC;wBACpB;oBACF;oBACA,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,MAAM,KAAK,WAAW,CAAC;AACnD,gBAAA,CAAC,CAAC;YACN,CAAC;AACD,YAAA,KAAK,EAAE,CAAC,KAAc,KAAI;AACxB,gBAAA,OAAO,CAAC,KAAK,CACX,yDAAyD,EACzD,KAAK,CACN;AACD,gBAAA,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC;AACpB,gBAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CACZ,IAAI,CAAC,CAAC,CAAC,OAAO,CACZ,qDAAqD,CACtD,CACF;YACH,CAAC;AACF,SAAA,CAAC;IACN;;IAGQ,cAAc,CACpB,IAA0B,EAC1B,eAAwB,EAAA;AAExB,QAAA,IAAI,CAAC;AACF,aAAA,gBAAgB,CAAC,IAAI,CAAC,EAAE,EAAE,eAAe;aACzC,IAAI,CACH,kBAAkB,CAAC,IAAI,CAAC,UAAU,CAAC,EACnC,QAAQ,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;AAErC,aAAA,SAAS,CAAC;AACT,YAAA,IAAI,EAAE,SAAS,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC;AAClD,YAAA,KAAK,EAAE,CAAC,KAAc,KAAI;AACxB,gBAAA,OAAO,CAAC,KAAK,CAAC,0CAA0C,EAAE,KAAK,CAAC;AAChE,gBAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CACZ,IAAI,CAAC,CAAC,CAAC,OAAO,CACZ,qDAAqD,CACtD,CACF;YACH,CAAC;AACF,SAAA,CAAC;IACN;;;;AAKQ,IAAA,WAAW,CAAC,IAA0B,EAAA;QAC5C,OAAO;YACL,GAAG,IAAI,CAAC,KAAK,EAAE;AACf,YAAA,cAAc,EAAE,IAAI,CAAC,YAAY,EAAE,CAAC,GAAG,CAAC,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC;AAC9D,YAAA,IAAI,IAAI,CAAC,gBAAgB;AACvB,kBAAE;AACF,kBAAE;AACE,oBAAA,aAAa,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC,GAAG,CAAC,UAAU,IAAI,UAAU,CAAC,EAAE,CAAC;iBACnE,CAAC;AACN,YAAA,8BAA8B,EAAE,IAAI,CAAC,8BAA8B,EAAE;AACrE,YAAA,6BAA6B,EAAE,IAAI,CAAC,6BAA6B,EAAE;AACnE,YAAA,eAAe,EAAE,IAAI,CAAC,oBAAoB;AACxC,kBAAE,IAAI,CAAC,uBAAuB;AAC9B,kBAAE,IAAI;YACR,eAAe,EAAE,IAAI,CAAC,OAAO;SAC9B;IACH;;;IAIQ,WAAW,GAAA;AACjB,QAAA,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW,EAAE;QAC/B,IAAI,CAAC,IAAI,EAAE;AACT,YAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAC;QACtD;AACA,QAAA,OAAO,IAAI;IACb;;;AAIQ,IAAA,OAAO,CAAC,IAAiC,EAAA;AAC/C,QAAA,IAAI,CAAC,aAAa,IAAI,CAAC;AACvB,QAAA,IAAI,CAAC,YAAY,EAAE,WAAW,EAAE;AAChC,QAAA,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,KAAK,CAAC;AAC/B,QAAA,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,EAAE,CAAC;QAC1B,IAAI,CAAC,uBAAuB,EAAE;AAC9B,QAAA,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC;AAC9B,QAAA,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC;AACtB,QAAA,IAAI,CAAC,gBAAgB,EAAE,WAAW,EAAE;AACpC,QAAA,IAAI,CAAC,oBAAoB,EAAE,WAAW,EAAE;AACxC,QAAA,IAAI,CAAC,eAAe,EAAE,WAAW,EAAE;AACnC,QAAA,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,KAAK,CAAC;AACnC,QAAA,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,EAAE,CAAC;AAC9B,QAAA,IAAI,CAAC,uBAAuB,CAAC,GAAG,CAAC,KAAK,CAAC;AACvC,QAAA,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,EAAE,CAAC;AAClC,QAAA,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,KAAK,CAAC;AAClC,QAAA,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,EAAE,CAAC;AAC7B,QAAA,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,IAAI,CAAC;AACnC,QAAA,IAAI,CAAC,qBAAqB,GAAG,EAAE;AAC/B,QAAA,IAAI,CAAC,mBAAmB,IAAI,CAAC;AAC7B,QAAA,IAAI,CAAC,IAAI,EAAE,EAAE,IAAI,IAAI,MAAM,IAAI,CAAC,wBAAwB,EAAE;YACxD,IAAI,CAAC,wBAAwB,GAAG,IAAI,EAAE,EAAE,IAAI,IAAI;AAChD,YAAA,IAAI,CAAC,sBAAsB,GAAG,KAAK;AACnC,YAAA,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,IAAI,GAAG,GAAG,IAAI,CAAC,KAAK,CAAA,MAAA,CAAQ,GAAG,EAAE,CAAC;AAC5D,YAAA,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;AACvB,YAAA,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,EAAE,CAAC;QAC9B;AAAO,aAAA,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,sBAAsB,EAAE;YAC/C,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAA,EAAG,IAAI,CAAC,KAAK,CAAA,MAAA,CAAQ,CAAC;QAClD;AACA,QAAA,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC;QAC1B,IAAI,CAAC,2BAA2B,CAC9B,IAAI,IAAI,IAAI,CAAC,IAAI,EAAE,KAAK,YAAY,GAAG,IAAI,GAAG,IAAI,CACnD;QACD,IAAI,CAAC,cAAc,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,EAAE,KAAK,YAAY,GAAG,IAAI,GAAG,IAAI,CAAC;QACvE,IAAI,CAAC,oBAAoB,CACvB,IAAI,IAAI,IAAI,CAAC,IAAI,EAAE,KAAK,YAAY,GAAG,IAAI,GAAG,IAAI,CACnD;QACD,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,EAAE,YAAY,IAAI,EAAE,CAAC;QAC/C,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,EAAE,WAAW,IAAI,EAAE,CAAC;AAC7C,QAAA,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,IAAI,CAAC;QAC/B,IAAI,CAAC,8BAA8B,CAAC,GAAG,CACrC,IAAI,EAAE,8BAA8B,IAAI,KAAK,CAC9C;QACD,IAAI,CAAC,6BAA6B,CAAC,GAAG,CACpC,IAAI,EAAE,6BAA6B,IAAI,KAAK,CAC7C;AACD,QAAA,IAAI,CAAC,WAAW,CAAC,GAAG,CAClB,IAAI,EAAE,MAAM,KAAK,WAAW,IAAI,IAAI,EAAE,MAAM,KAAK;cAC7C,IAAI,CAAC;cACL,OAAO,CACZ;AACD,QAAA,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,IAAI,CAAC;QACnC,IAAI,CAAC,2BAA2B,CAAC,IAAI,EAAE,IAAI,CAAC,gBAAgB,EAAE,CAAC;AAC/D,QAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC;AACb,YAAA,IAAI,EAAE,IAAI,EAAE,IAAI,IAAI,kBAAkB,CAAC,MAAM;AAC7C,YAAA,KAAK,EAAE,IAAI,EAAE,KAAK,IAAI,EAAE;AACxB,YAAA,IAAI,EAAE,IAAI,EAAE,IAAI,IAAI,EAAE;AACtB,YAAA,OAAO,EAAE,IAAI,EAAE,OAAO,IAAI,EAAE;AAC5B,YAAA,IAAI,EAAE,IAAI,EAAE,IAAI,IAAI,EAAE;AACtB,YAAA,QAAQ,EAAE,IAAI,EAAE,QAAQ,IAAI,IAAI;AAChC,YAAA,QAAQ,EAAE,IAAI,EAAE,QAAQ,IAAI,IAAI;AAChC,YAAA,aAAa,EAAE,IAAI,EAAE,aAAa,IAAI,IAAI;AAC1C,YAAA,YAAY,EAAE,IAAI,EAAE,YAAY,IAAI,IAAI;AACxC,YAAA,UAAU,EAAE,IAAI,EAAE,UAAU,IAAI,IAAI;AACpC,YAAA,MAAM,EAAE,EAAE;AACX,SAAA,CAAC;AACF,QAAA,IACE,IAAI;YACJ,IAAI,CAAC,YAAY,KAAK,SAAS;AAC/B,YAAA,IAAI,CAAC,IAAI,EAAE,KAAK,YAAY,EAC5B;YACA,IAAI,CAAC,gBAAgB,EAAE;QACzB;QACA,IAAI,IAAI,IAAI,IAAI,CAAC,IAAI,EAAE,KAAK,YAAY,EAAE;YACxC,IAAI,CAAC,eAAe,EAAE;QACxB;AACA,QAAA,IAAI,IAAI,CAAC,OAAO,EAAE,EAAE;YAClB,IAAI,CAAC,YAAY,EAAE;QACrB;IACF;;;IAIQ,2BAA2B,CACjC,IAAiC,EACjC,KAAqC,EAAA;AAErC,QAAA,MAAM,YAAY,GAChB,IAAI,EAAE,eAAe,KAAK;AACxB,cAAE,IAAI,CAAC,eAAe,EAAE;AACxB,cAAE,KAAK,CAAC,IAAI,CAAC,eAAe,IAAI,eAAe,CAAC,SAAS,KAAK,IAAI,EAAE,EAAE;AAClE,kBAAE,IAAI;QACd,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAC,CAAC,YAAY,CAAC;QAC7C,IAAI,CAAC,uBAAuB,CAAC,GAAG,CAAC,YAAY,IAAI,IAAI,CAAC;IACxD;;;AAIQ,IAAA,UAAU,CAAC,IAA0B,EAAA;AAC3C,QAAA,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC;AAClB,QAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;AAClB,QAAA,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC;AACrB,QAAA,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC;IACzB;;;AAIQ,IAAA,OAAO,CACb,OAAyC,EACzC,QAAQ,GAAG,KAAK,EAAA;AAEhB,QAAA,IAAI,IAAI,CAAC,IAAI,EAAE,IAAI,IAAI,CAAC,UAAU,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,KAAK,YAAY,EAAE;YACpE;QACF;AACA,QAAA,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC;AACnB,QAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;QAClB;aACG,IAAI,CACH,kBAAkB,CAAC,IAAI,CAAC,UAAU,CAAC,EACnC,QAAQ,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;AAErC,aAAA,SAAS,CAAC;YACT,IAAI,EAAE,IAAI,IAAG;AACX,gBAAA,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;gBACrB,IAAI,QAAQ,EAAE;AACZ,oBAAA,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC;gBACzB;YACF,CAAC;AACD,YAAA,KAAK,EAAE,CAAC,KAAc,KAAI;AACxB,gBAAA,OAAO,CAAC,KAAK,CAAC,qCAAqC,EAAE,KAAK,CAAC;AAC3D,gBAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CACZ,IAAI,CAAC,CAAC,CAAC,OAAO,CACZ,yIAAyI,CAC1I,CACF;YACH,CAAC;AACF,SAAA,CAAC;IACN;8GAjsFW,oBAAoB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAApB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,oBAAoB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,eAAA,EAAA,MAAA,EAAA,EAAA,IAAA,EAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,UAAA,EAAA,MAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,IAAA,EAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,UAAA,EAAA,MAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,OAAA,EAAA,EAAA,IAAA,EAAA,YAAA,EAAA,OAAA,EAAA,SAAA,EAAA,OAAA,EAAA,SAAA,EAAA,iBAAA,EAAA,mBAAA,EAAA,UAAA,EAAA,YAAA,EAAA,SAAA,EAAA,WAAA,EAAA,qBAAA,EAAA,uBAAA,EAAA,EAAA,SAAA,EARpB;YACT,wBAAwB;YACxB,2BAA2B;YAC3B,wBAAwB;YACxB,yBAAyB;YACzB,oBAAoB;AACrB,SAAA,EAAA,WAAA,EAAA,CAAA,EAAA,YAAA,EAAA,YAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,CAAA,YAAA,CAAA,EAAA,WAAA,EAAA,IAAA,EAAA,QAAA,EAAA,IAAA,EAAA,EAAA,EAAA,YAAA,EAAA,0BAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,CAAA,uBAAA,CAAA,EAAA,WAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EClKH,+zjDA2vCA,EAAA,MAAA,EAAA,CAAA,29JAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EDrnCI,eAAe,0iBACf,iBAAiB,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAM,IAAA,CAAA,WAAA,EAAA,QAAA,EAAA,cAAA,EAAA,MAAA,EAAA,CAAA,YAAA,EAAA,iBAAA,EAAA,kBAAA,EAAA,eAAA,EAAA,eAAA,EAAA,WAAA,EAAA,IAAA,EAAA,UAAA,EAAA,eAAA,EAAA,MAAA,EAAA,OAAA,EAAA,eAAA,EAAA,UAAA,EAAA,OAAA,EAAA,qBAAA,EAAA,SAAA,EAAA,UAAA,EAAA,eAAA,CAAA,EAAA,OAAA,EAAA,CAAA,QAAA,EAAA,qBAAA,CAAA,EAAA,QAAA,EAAA,CAAA,aAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EACjB,aAAa,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAF,IAAA,CAAA,OAAA,EAAA,QAAA,EAAA,UAAA,EAAA,MAAA,EAAA,CAAA,YAAA,CAAA,EAAA,QAAA,EAAA,CAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EACb,kBAAkB,+nBAClB,kBAAkB,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAK,EAAA,CAAA,YAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,CAAA,oBAAA,EAAA,OAAA,EAAA,YAAA,EAAA,YAAA,EAAA,iBAAA,EAAA,WAAA,CAAA,EAAA,QAAA,EAAA,CAAA,cAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,EAAA,CAAA,QAAA,EAAA,QAAA,EAAA,WAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAClB,aAAa,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAF,IAAA,CAAA,OAAA,EAAA,QAAA,EAAA,UAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,SAAA,EAAA,SAAA,EAAA,UAAA,CAAA,EAAA,QAAA,EAAA,CAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EACb,cAAc,iYACd,aAAa,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,UAAA,EAAA,MAAA,EAAA,CAAA,eAAA,EAAA,YAAA,EAAA,iBAAA,EAAA,kBAAA,EAAA,WAAA,EAAA,WAAA,EAAA,gBAAA,EAAA,aAAA,EAAA,OAAA,EAAA,WAAA,CAAA,EAAA,OAAA,EAAA,CAAA,QAAA,EAAA,OAAA,CAAA,EAAA,QAAA,EAAA,CAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,WAAA,EAAA,QAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,eAAA,CAAA,EAAA,QAAA,EAAA,CAAA,aAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,cAAA,EAAA,QAAA,EAAA,6CAAA,EAAA,MAAA,EAAA,CAAA,sBAAA,EAAA,mBAAA,EAAA,oBAAA,EAAA,4BAAA,CAAA,EAAA,OAAA,EAAA,CAAA,YAAA,EAAA,YAAA,EAAA,YAAA,EAAA,aAAA,CAAA,EAAA,QAAA,EAAA,CAAA,gBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EACb,aAAa,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,MAAA,EAAA,QAAA,EAAA,SAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,OAAA,EAAA,YAAA,EAAA,iBAAA,EAAA,YAAA,EAAA,WAAA,EAAA,IAAA,CAAA,EAAA,QAAA,EAAA,CAAA,QAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,WAAA,EAAA,QAAA,EAAA,eAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,oBAAA,EAAA,kBAAA,EAAA,gBAAA,EAAA,eAAA,EAAA,eAAA,EAAA,gBAAA,EAAA,mBAAA,EAAA,iBAAA,EAAA,mBAAA,EAAA,eAAA,EAAA,iBAAA,EAAA,iBAAA,EAAA,YAAA,EAAA,iBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,qBAAA,EAAA,aAAA,EAAA,eAAA,EAAA,mBAAA,CAAA,EAAA,QAAA,EAAA,CAAA,aAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EACb,eAAe,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,GAAA,CAAA,kBAAA,EAAA,QAAA,EAAA,YAAA,EAAA,MAAA,EAAA,CAAA,QAAA,EAAA,cAAA,EAAA,aAAA,CAAA,EAAA,OAAA,EAAA,CAAA,UAAA,EAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,GAAA,CAAA,aAAA,EAAA,QAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,cAAA,EAAA,UAAA,EAAA,QAAA,EAAA,eAAA,EAAA,mBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EACf,cAAc,ygBACd,oBAAoB,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,GAAA,CAAA,cAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,OAAA,EAAA,aAAA,EAAA,MAAA,CAAA,EAAA,OAAA,EAAA,CAAA,cAAA,CAAA,EAAA,QAAA,EAAA,CAAA,gBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EACpB,cAAc,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAG,IAAA,CAAA,aAAA,EAAA,QAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,MAAA,EAAA,eAAA,EAAA,OAAA,EAAA,UAAA,EAAA,UAAA,EAAA,UAAA,EAAA,qBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,QAAA,CAAA,EAAA,QAAA,EAAA,CAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,cAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,IAAA,EAAA,MAAA,EAAA,YAAA,EAAA,iBAAA,EAAA,kBAAA,EAAA,eAAA,EAAA,UAAA,EAAA,SAAA,EAAA,OAAA,EAAA,eAAA,EAAA,UAAA,EAAA,UAAA,EAAA,OAAA,EAAA,qBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,QAAA,CAAA,EAAA,QAAA,EAAA,CAAA,gBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EACd,eAAe,mtBACf,gBAAgB,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,GAAA,CAAA,UAAA,EAAA,QAAA,EAAA,cAAA,EAAA,MAAA,EAAA,CAAA,oBAAA,EAAA,4BAAA,EAAA,oBAAA,EAAA,qBAAA,EAAA,qBAAA,EAAA,yBAAA,EAAA,YAAA,EAAA,iBAAA,CAAA,EAAA,QAAA,EAAA,CAAA,YAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAChB,wBAAwB,EAAA,QAAA,EAAA,mBAAA,EAAA,MAAA,EAAA,CAAA,uBAAA,EAAA,2BAAA,EAAA,iBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,uBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EACxB,wBAAwB,qFACxB,gBAAgB,EAAA,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,CAAA,yBAAA,EAAA,kBAAA,EAAA,0BAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAChB,gBAAgB,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,GAAA,CAAA,UAAA,EAAA,QAAA,EAAA,aAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,OAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAChB,cAAc,uoCACd,6BAA6B,EAAA,QAAA,EAAA,yBAAA,EAAA,MAAA,EAAA,CAAA,MAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;;2FAUpB,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBApChC,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,eAAe,EAAA,eAAA,EAGR,uBAAuB,CAAC,MAAM,EAAA,OAAA,EACtC;wBACP,eAAe;wBACf,iBAAiB;wBACjB,aAAa;wBACb,kBAAkB;wBAClB,kBAAkB;wBAClB,aAAa;wBACb,cAAc;wBACd,aAAa;wBACb,aAAa;wBACb,eAAe;wBACf,cAAc;wBACd,oBAAoB;wBACpB,cAAc;wBACd,eAAe;wBACf,gBAAgB;wBAChB,wBAAwB;wBACxB,wBAAwB;wBACxB,gBAAgB;wBAChB,gBAAgB;wBAChB,cAAc;wBACd,6BAA6B;qBAC9B,EAAA,SAAA,EACU;wBACT,wBAAwB;wBACxB,2BAA2B;wBAC3B,wBAAwB;wBACxB,yBAAyB;wBACzB,oBAAoB;AACrB,qBAAA,EAAA,QAAA,EAAA,+zjDAAA,EAAA,MAAA,EAAA,CAAA,29JAAA,CAAA,EAAA;;sBAsBA,SAAS;uBAAC,uBAAuB;0DAyYW,YAAY,EAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,CAAA,EAAA,EAAA,CAAA;;;;;;;AE9jB3D;AAEO,MAAM,iBAAiB,GAAW;AACvC,IAAA;AACE,QAAA,IAAI,EAAE,EAAE;AACR,QAAA,aAAa,EAAE,MACb,qEAAmC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,oBAAoB,CAAC;AAEvE,QAAA,QAAQ,EAAE;;;;;;;;;AAST,SAAA;AACF,KAAA;;AAGH;;;;AAIG;AACH;;ACXA,MAAMV,GAAC,GAAG,WAAW,CAAC,GAAG,CAAC,uFAAuF,EAAE,EAAC,uFAAuF,EAAC,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,oFAAgE,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,oFAAgE,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,oFAAgE,CAAC,EAAE,OAAO,EAAC,EAAQ,CAAC;MA4BhhB,+BAA+B,CAAA;AAwB1C,IAAA,WAAA,GAAA;AAvBS,QAAA,IAAA,CAAA,CAAC,GAAGA,GAAC,CAAC,GAAG,CAAC,IAAI,CAAC;AAEP,QAAA,IAAA,CAAA,KAAK,GAAG,MAAM,CAAC,cAAc,CAAC;AAE9B,QAAA,IAAA,CAAA,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;AAEvB,QAAA,IAAA,CAAA,oBAAoB,GAAG,MAAM,CAC5C,6BAA6B,CAC9B;AAEgB,QAAA,IAAA,CAAA,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC;QAEvC,IAAA,CAAA,KAAK,GAAG,aAAa,CAAC;YAC7B,IAAI,CAAC,KAAK,CAAC,IAAI;YACf,IAAI,CAAC,KAAK,CAAC,aAAa;AACzB,SAAA,CAAC,CAAC,IAAI,CACLC,KAAG,CAAC,CAAC,CAAC,IAAI,EAAE,WAAW,CAAC,MAAM;AAC5B,YAAA,MAAM,EAAE,IAAI,CAAC,YAAY,CAAC,KAAK,IAAI;AACnC,YAAA,IAAI,EAAG,IAAI,CAAC,MAAM,CAAsC,IAAI,IAAI;YAChE,WAAW,EAAE,WAAW,CAAC,GAAG,CAAC,YAAY,CAAC,KAAK,SAAS;SACzD,CAAC,CAAC,CACJ;AAGC,QAAA,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,MAAM,IAAI,CAAC,oBAAoB,CAAC,WAAW,EAAE,CAAC;IAC1E;AAEA,IAAA,iBAAiB,CAAC,QAA8B,EAAA;AAC9C,QAAA,IAAI,CAAC,oBAAoB,CAAC,WAAW,CAAC,QAAQ,CAAC;IACjD;AAEA,IAAA,MAAM,CAAC,WAAoB,EAAA;QACzB,KAAK,IAAI,CAAC;AACP,aAAA,QAAQ,CAAC,CAAC,WAAW,GAAG,eAAe,GAAG,KAAK,CAAC,EAAE;YACjD,UAAU,EAAE,IAAI,CAAC,KAAK;AACtB,YAAA,WAAW,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE;AACjC,YAAA,mBAAmB,EAAE,OAAO;SAC7B;aACA,KAAK,CAAC,KAAK,IAAG;AACb,YAAA,OAAO,CAAC,KAAK,CAAC,sDAAsD,EAAE,KAAK,CAAC;AAC9E,QAAA,CAAC,CAAC;IACN;IAEA,SAAS,CAAC,IAA0B,EAAE,MAAe,EAAA;QACnD,IAAI,MAAM,EAAE;AACV,YAAA,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;QACrB;IACF;AAEA,IAAA,QAAQ,CAAC,IAA0B,EAAA;QACjC,KAAK,IAAI,CAAC;aACP,QAAQ,CAAC,CAAC,KAAK,EAAE,IAAI,CAAC,EAAE,CAAC,EAAE;YAC1B,UAAU,EAAE,IAAI,CAAC,KAAK;AACtB,YAAA,mBAAmB,EAAE,UAAU;SAChC;aACA,KAAK,CAAC,KAAK,IAAG;AACb,YAAA,OAAO,CAAC,KAAK,CAAC,kDAAkD,EAAE,KAAK,CAAC;AAC1E,QAAA,CAAC,CAAC;IACN;AAEA,IAAA,WAAW,CAAC,MAAe,EAAA;QACzB,IAAI,MAAM,EAAE;YACV,KAAK,IAAI,CAAC;AACP,iBAAA,QAAQ,CAAC,CAAC,KAAK,CAAC,EAAE;gBACjB,UAAU,EAAE,IAAI,CAAC,KAAK;AACtB,gBAAA,mBAAmB,EAAE,UAAU;aAChC;iBACA,KAAK,CAAC,KAAK,IAAG;AACb,gBAAA,OAAO,CAAC,KAAK,CACX,6DAA6D,EAC7D,KAAK,CACN;AACH,YAAA,CAAC,CAAC;QACN;IACF;8GA3EW,+BAA+B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAA/B,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,+BAA+B,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,4BAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAtBhC;;;;;;;;;;;;;;;;;;;;AAoBT,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EArBoB,eAAe,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,SAAA,EAAA,QAAA,EAAA,iOAAA,EAAA,MAAA,EAAA,CAAA,WAAA,CAAA,EAAA,QAAA,EAAA,CAAA,WAAA,EAAA,WAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAE,oBAAoB,EAAA,QAAA,EAAA,eAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,MAAA,CAAA,EAAA,OAAA,EAAA,CAAA,YAAA,EAAA,SAAA,EAAA,SAAA,EAAA,mBAAA,EAAA,YAAA,EAAA,WAAA,EAAA,uBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAhD,SAAS,EAAA,IAAA,EAAA,OAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;;2FAuBR,+BAA+B,EAAA,UAAA,EAAA,CAAA;kBA1B3C,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,4BAA4B;oBACtC,eAAe,EAAE,uBAAuB,CAAC,MAAM;AAC/C,oBAAA,OAAO,EAAE,CAAC,SAAS,EAAE,eAAe,EAAE,oBAAoB,CAAC;AAC3D,oBAAA,QAAQ,EAAE;;;;;;;;;;;;;;;;;;;;AAoBT,EAAA,CAAA;AACF,iBAAA;;;;;;;;AC7CD;AAoBA;AAEA,MAAMD,GAAC,GAAG,WAAW,CAAC,GAAG,CAAC,qFAAqF,EAAE,EAAC,uFAAuF,EAAC,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,qFAAiE,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,qFAAiE,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,qFAAiE,CAAC,EAAE,OAAO,EAAC,EAAC,uFAAuF,EAAC,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,qFAAiE,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,qFAAiE,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,qFAAiE,CAAC,EAAE,OAAO,EAAC,EAAC,qFAAqF,EAAC,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,mFAA+D,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,mFAA+D,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,mFAA+D,CAAC,EAAE,OAAO,EAAC,EAAC,kFAAkF,EAAC,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,gFAA4D,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,gFAA4D,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,gFAA4D,CAAC,EAAE,OAAO,EAAC,EAAQ,CAAC;AAiBxuD,MAAO,+BAAgC,SAAQ,uBAAuB,CAAA;AAf5E,IAAA,WAAA,GAAA;;AAgBW,QAAA,IAAA,CAAA,CAAC,GAAGA,GAAC,CAAC,GAAG,CAAC,IAAI,CAAC;AAKf,QAAA,IAAA,CAAA,KAAK,GAAG,MAAM,CAAyB,EAAE,iDAAC;AAE1C,QAAA,IAAA,CAAA,OAAO,GAAG,MAAM,CAAC,KAAK,mDAAC;AAMvB,QAAA,IAAA,CAAA,OAAO,GAAoB;YAClC,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE;AAC7C,YAAA,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE;AACnE,YAAA,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE;AACjE,YAAA,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;AACrE,YAAA,IAAI,CAAC,aAAa;SACnB;AASF,IAAA;AAnBC,IAAA,IAAW,IAAI,GAAA;AACb,QAAA,OAAO,IAAI,CAAC,wBAAwB,CAAC,cAAc;IACrD;IAUA,MAAM,GAAA;AACJ,QAAA,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE;IACzB;IAEA,eAAe,GAAA;QACb,IAAI,CAAC,MAAM,EAAE;IACf;8GA5BW,+BAA+B,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAA/B,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,+BAA+B,4EAF/B,CAAC,wBAAwB,CAAC,EAAA,WAAA,EAAA,CAAA,EAAA,YAAA,EAAA,WAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAK1B,sBAAsB,uEC1CnC,krDAkDA,EAAA,MAAA,EAAA,CAAA,wBAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EDpBI,WAAW,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAG,IAAA,CAAA,oBAAA,EAAA,QAAA,EAAA,8MAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,eAAA,EAAA,QAAA,EAAA,2CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,OAAA,EAAA,QAAA,EAAA,qDAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,SAAA,EAAA,gBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,eAAA,CAAA,EAAA,QAAA,EAAA,CAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EACX,eAAe,8BACf,kBAAkB,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAG,EAAA,CAAA,YAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,CAAA,oBAAA,EAAA,OAAA,EAAA,YAAA,EAAA,YAAA,EAAA,iBAAA,EAAA,WAAA,CAAA,EAAA,QAAA,EAAA,CAAA,cAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,EAAA,CAAA,QAAA,EAAA,QAAA,EAAA,WAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAClB,cAAc,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAF,EAAA,CAAA,QAAA,EAAA,QAAA,EAAA,yHAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,IAAA,EAAA,aAAA,EAAA,MAAA,EAAA,UAAA,EAAA,MAAA,EAAA,mBAAA,EAAA,kBAAA,EAAA,OAAA,EAAA,UAAA,EAAA,qBAAA,CAAA,EAAA,QAAA,EAAA,CAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EACd,eAAe,otBACf,sBAAsB,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,CAAA,YAAA,EAAA,UAAA,EAAA,iBAAA,EAAA,gBAAA,EAAA,mBAAA,EAAA,sBAAA,EAAA,SAAA,EAAA,YAAA,EAAA,eAAA,EAAA,MAAA,EAAA,YAAA,EAAA,iBAAA,EAAA,sBAAA,EAAA,mBAAA,EAAA,SAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,eAAA,CAAA,EAAA,OAAA,EAAA,CAAA,iBAAA,EAAA,YAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;;2FAIb,+BAA+B,EAAA,UAAA,EAAA,CAAA;kBAf3C,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,+BAA+B,EAAA,eAAA,EAGxB,uBAAuB,CAAC,MAAM,EAAA,OAAA,EACtC;wBACP,WAAW;wBACX,eAAe;wBACf,kBAAkB;wBAClB,cAAc;wBACd,eAAe;wBACf,sBAAsB;qBACvB,EAAA,SAAA,EACU,CAAC,wBAAwB,CAAC,EAAA,QAAA,EAAA,krDAAA,EAAA,MAAA,EAAA,CAAA,wBAAA,CAAA,EAAA;;sBAKpC,SAAS;uBAAC,sBAAsB;;;;;;;;AE1CnC;AASA;AAEA,MAAMJ,GAAC,GAAG,WAAW,CAAC,GAAG,CAAC,kFAAkF,EAAE,EAAC,uFAAuF,EAAC,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,qFAAiE,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,qFAAiE,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,qFAAiE,CAAC,EAAE,OAAO,EAAC,EAAC,uFAAuF,EAAC,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,qFAAiE,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,qFAAiE,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,qFAAiE,CAAC,EAAE,OAAO,EAAC,EAAC,qFAAqF,EAAC,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,mFAA+D,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,mFAA+D,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,mFAA+D,CAAC,EAAE,OAAO,EAAC,EAAC,kFAAkF,EAAC,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,gFAA4D,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,gFAA4D,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,gFAA4D,CAAC,EAAE,OAAO,EAAC,EAAQ,CAAC;AAE3uD,MAAM,WAAW,GAAoC,OAAM,KAAK,KAAG;AACjE,IAAA,MAAM,EAAE,GAAG,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;AAC3C,IAAA,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE;QACxC,MAAM,IAAI,KAAK,CAACA,GAAC,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC;IAC/C;AACA,IAAA,MAAM,wBAAwB,GAAG,MAAM,CAAC,wBAAwB,CAAC;IACjE,MAAM,IAAI,GAAG,MAAM,wBAAwB,CAAC,OAAO,CAAC,EAAE,CAAC;IACvD,IAAI,CAAC,IAAI,EAAE;QACT,MAAM,IAAI,KAAK,CAACA,GAAC,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC;IAC9C;AACA,IAAA,OAAO,IAAI;AACb,CAAC;AAEM,MAAM,4BAA4B,GAAW;AAClD,IAAA;AACE,QAAA,IAAI,EAAE,EAAE;AACR,QAAA,SAAS,EAAE,MAAM;AACjB,QAAA,aAAa,EAAE,MACb,gFAA+C,CAAC,IAAI,CAClD,CAAC,IAAI,CAAC,CAAC,+BAA+B,CACvC;AACJ,KAAA;AACD,IAAA;AACE,QAAA,IAAI,EAAE,KAAK;QACX,IAAI,EAAE,EAAE,gBAAgB,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE;AAClD,QAAA,aAAa,EAAE,MACb,gFAA4E,CAAC,IAAI,CAC/E,CAAC,IAAI,CAAC,CAAC,+BAA+B,CACvC;AACJ,KAAA;AACD,IAAA;AACE,QAAA,IAAI,EAAE,KAAK;AACX,QAAA,IAAI,EAAE,EAAE,gBAAgB,EAAE,IAAI,EAAE;QAChC,SAAS,EAAE,CAAC,wBAAwB,CAAC;AACrC,QAAA,OAAO,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE;AAC9B,QAAA,aAAa,EAAE,MACb,gFAA4E,CAAC,IAAI,CAC/E,CAAC,IAAI,CAAC,CAAC,+BAA+B,CACvC;AACJ,KAAA;;AAGH;;;;AAIG;AACH;;AC5DA;AAOA;AAGM,MAAO,kCAAmC,SAAQ,sBAAsB,CAAA;AAD9E,IAAA,WAAA,GAAA;;AAEU,QAAA,IAAA,CAAA,6BAA6B,GAAG,IAAI,CAAC,cAAc,CAAC,6BAA6B,CAAC;AAU3F,IAAA;AARC,IAAA,IAAI,cAAc,GAAA;AAChB,QAAA,OAAO,IAAI,CAAC,6BAA6B,CAAC,kCAAkC;IAC9E;IAEA,KAAK,GAAA;QACH,MAAM,MAAM,GAAG,IAAI,CAAC,6BAA6B,CAAC,KAAK,EAAE;AACzD,QAAA,OAAO,MAAM;IACf;8GAVW,kCAAkC,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;kHAAlC,kCAAkC,EAAA,CAAA,CAAA;;2FAAlC,kCAAkC,EAAA,UAAA,EAAA,CAAA;kBAD9C;;;ACLD,MAAMA,GAAC,GAAG,WAAW,CAAC,GAAG,CAAC,sHAAsH,EAAE,EAAC,sHAAsH,EAAC,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,kFAA8D,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,kFAA8D,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,kFAA8D,CAAC,EAAE,OAAO,EAAC,EAAC,uHAAuH,EAAC,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,mFAA+D,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,mFAA+D,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,mFAA+D,CAAC,EAAE,OAAO,EAAC,EAAQ,CAAC;AAE5gC,MAAM,mCAAmC,GAAG;AACjD,IAAA,OAAO,EAAE,IAAI;;IAGH;AAAZ,CAAA,UAAY,2BAA2B,EAAA;AACrC,IAAA,2BAAA,CAAA,gCAAA,CAAA,GAAA,gCAAiE;AACnE,CAAC,EAFW,2BAA2B,KAA3B,2BAA2B,GAAA,EAAA,CAAA,CAAA;AAIhC,MAAM,wCAAwC,GAAG,IAAI,GAAG,CAAC;IAC9D,CAAC,2BAA2B,CAAC,8BAA8B,EAAEA,GAAC,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC;AAC5F,CAAA;;AChBK,IAAW;AAAjB,CAAA,UAAiB,2BAA2B,EAAA;AAO1C,IAAA,IAAY,0BAGX;AAHD,IAAA,CAAA,UAAY,0BAA0B,EAAA;AACpC,QAAA,0BAAA,CAAA,QAAA,CAAA,GAAA,QAAiB;AACjB,QAAA,0BAAA,CAAA,UAAA,CAAA,GAAA,UAAqB;AACvB,IAAA,CAAC,EAHW,0BAA0B,GAA1B,2BAAA,CAAA,0BAA0B,KAA1B,sDAA0B,GAAA,EAAA,CAAA,CAAA;AAIxC,CAAC,EAXgB,2BAA2B,KAA3B,2BAA2B,GAAA,EAAA,CAAA,CAAA;;ACGtC,IAAW;AAAjB,CAAA,UAAiB,+BAA+B,EAAA;;AAE9C;;AAEG;AACU,IAAA,+BAAA,CAAA,sBAAsB,GAAgB,CACjD,OAAwB,KACG;QAC3B,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC;QACxC,MAAM,cAAc,GAAG,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC;AAEpD,QAAA,IAAI,CAAC,QAAQ,IAAI,CAAC,cAAc,EAAE;AAChC,YAAA,OAAO,IAAI;QACb;AAEA,QAAA,OAAO,QAAQ,CAAC,KAAK,KAAK,cAAc,CAAC;AACvC,cAAE;cACA,EAAE,CAAC,2BAA2B,CAAC,8BAA8B,GAAG,IAAI,EAAE;AAC5E,IAAA,CAAC;;AAGH,CAAC,EArBgB,+BAA+B,KAA/B,+BAA+B,GAAA,EAAA,CAAA,CAAA;;ACHhD;AAYA;AAEA,MAAMA,GAAC,GAAG,WAAW,CAAC,GAAG,CAAC,sJAAsJ,EAAE,EAAC,wJAAwJ,EAAC,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,oGAAgF,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,oGAAgF,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,oGAAgF,CAAC,EAAE,OAAO,EAAC,EAAC,sJAAsJ,EAAC,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,kGAA8E,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,kGAA8E,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,kGAA8E,CAAC,EAAE,OAAO,EAAC,EAAQ,CAAC;MAU1sC,4CAA4C,CAAA;AARzD,IAAA,WAAA,GAAA;AASE,QAAA,IAAA,CAAA,CAAC,GAAGA,GAAC,CAAC,GAAG,CAAC,IAAI,CAAC;AAEE,QAAA,IAAA,CAAA,GAAG,GAAG,MAAM,CAAC,wBAAwB,CAAC;AAE9C,QAAA,IAAA,CAAA,QAAQ,GAAG,MAAM,CAAoB,EAAE,oDAAC;AAExC,QAAA,IAAA,CAAA,UAAU,GAAG,MAAM,CAAC,CAAC,sDAAC;QAEtB,IAAA,CAAA,QAAQ,GAAG,EAAE;AAEb,QAAA,IAAA,CAAA,KAAK,GAAG,MAAM,CAAC,CAAC,iDAAC;AAEjB,QAAA,IAAA,CAAA,OAAO,GAAG,MAAM,CAAC,KAAK,mDAAC;AAEvB,QAAA,IAAA,CAAA,KAAK,GAAG,MAAM,CAAC,EAAE,iDAAC;AAElB,QAAA,IAAA,CAAA,QAAQ,GAAG,MAAM,CAAC,EAAE,oDAAC;AAErB,QAAA,IAAA,CAAA,UAAU,GAAG,MAAM,CAAC,EAAE,sDAAC;AAEvB,QAAA,IAAA,CAAA,YAAY,GAAG,MAAM,CAAC,EAAE,wDAAC;AAEzB,QAAA,IAAA,CAAA,OAAO,GAAoB;YAClC,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE;AAC/E,YAAA,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,KAAK,EAAE,YAAY,EAAE;AACzD,YAAA;gBACE,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC;AACjC,gBAAA,KAAK,EAAE,MAAM;AACb,gBAAA,SAAS,EAAE,CAAC,OAAwB,KAClC,OAAO,CAAC,IAAI,CAAC,MAAM,GAAG,GAAG,GAAG,CAAA,EAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,KAAK,GAAG,OAAO,CAAC,IAAI;AAChF,aAAA;AACD,YAAA,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE;AACtD,YAAA,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE;AAC9D,YAAA,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE;AAC5D,YAAA,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC,EAAE,KAAK,EAAE,aAAa,EAAE;SACjE;AAuDF,IAAA;IArDC,QAAQ,GAAA;AACN,QAAA,KAAK,IAAI,CAAC,MAAM,EAAE;IACpB;AAEA,IAAA,MAAM,MAAM,GAAA;AACV,QAAA,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC;AACtB,QAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;AAClB,QAAA,IAAI;YACF,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,qBAAqB,CAAC;AAClD,gBAAA,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE;gBAC7B,QAAQ,EAAE,IAAI,CAAC,QAAQ;AACvB,gBAAA,EAAE,EAAE,IAAI,CAAC,QAAQ,EAAE;AACnB,gBAAA,IAAI,EAAE,IAAI,CAAC,UAAU,EAAE;AACvB,gBAAA,MAAM,EAAE,IAAI,CAAC,YAAY,EAAE;AAC5B,aAAA,CAAC;YACF,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC;YAC/B,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC;QAC9B;QAAE,OAAO,KAAK,EAAE;AACd,YAAA,OAAO,CAAC,KAAK,CAAC,mDAAmD,EAAE,KAAK,CAAC;YACzE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,YAAY,KAAK,GAAG,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,+BAA+B,CAAC,CAAC;QAC1G;gBAAU;AACR,YAAA,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC;QACzB;IACF;IAEA,YAAY,GAAA;AACV,QAAA,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC;AACtB,QAAA,KAAK,IAAI,CAAC,MAAM,EAAE;IACpB;IAEA,YAAY,GAAA;AACV,QAAA,IAAI,IAAI,CAAC,UAAU,EAAE,GAAG,CAAC,EAAE;AACzB,YAAA,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,IAAI,IAAI,GAAG,CAAC,CAAC;AACxC,YAAA,KAAK,IAAI,CAAC,MAAM,EAAE;QACpB;IACF;IAEA,QAAQ,GAAA;AACN,QAAA,IAAI,IAAI,CAAC,UAAU,EAAE,GAAG,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,KAAK,EAAE,EAAE;AACpD,YAAA,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,IAAI,IAAI,GAAG,CAAC,CAAC;AACxC,YAAA,KAAK,IAAI,CAAC,MAAM,EAAE;QACpB;IACF;IAEA,MAAM,MAAM,CAAC,OAAwB,EAAA;AACnC,QAAA,IAAI;YACF,MAAM,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,OAAO,CAAC,EAAE,CAAC;AACxC,YAAA,MAAM,IAAI,CAAC,MAAM,EAAE;QACrB;QAAE,OAAO,KAAK,EAAE;AACd,YAAA,OAAO,CAAC,KAAK,CAAC,oDAAoD,EAAE,KAAK,CAAC;YAC1E,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,YAAY,KAAK,GAAG,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,mCAAmC,CAAC,CAAC;QAC9G;IACF;8GA1FW,4CAA4C,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAA5C,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,4CAA4C,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,8CAAA,EAAA,SAAA,EAF5C,CAAC,wBAAwB,CAAC,0BCtBvC,6qEAsDM,EAAA,MAAA,EAAA,CAAA,wBAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EDjC2B,WAAW,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAG,IAAA,CAAA,aAAA,EAAA,QAAA,EAAA,8CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,oBAAA,EAAA,QAAA,EAAA,8MAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,eAAA,EAAA,QAAA,EAAA,2CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,oBAAA,EAAA,QAAA,EAAA,sGAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,OAAA,EAAA,QAAA,EAAA,qDAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,SAAA,EAAA,gBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,eAAA,CAAA,EAAA,QAAA,EAAA,CAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,MAAA,EAAA,QAAA,EAAA,yEAAA,EAAA,MAAA,EAAA,CAAA,eAAA,CAAA,EAAA,OAAA,EAAA,CAAA,UAAA,CAAA,EAAA,QAAA,EAAA,CAAA,QAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAE,eAAe,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAG,EAAA,CAAA,SAAA,EAAA,QAAA,EAAA,iOAAA,EAAA,MAAA,EAAA,CAAA,WAAA,CAAA,EAAA,QAAA,EAAA,CAAA,WAAA,EAAA,WAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAE,UAAU,EAAA,QAAA,EAAA,cAAA,EAAA,MAAA,EAAA,CAAA,QAAA,EAAA,aAAA,EAAA,UAAA,EAAA,qBAAA,EAAA,OAAA,EAAA,MAAA,EAAA,YAAA,EAAA,kBAAA,EAAA,oBAAA,EAAA,YAAA,EAAA,YAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAE,sBAAsB,+YAA1E,QAAQ,EAAA,IAAA,EAAA,MAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;;2FAGlB,4CAA4C,EAAA,UAAA,EAAA,CAAA;kBARxD,SAAS;+BACE,8CAA8C,EAAA,eAAA,EAGvC,uBAAuB,CAAC,MAAM,WACtC,CAAC,SAAS,EAAE,QAAQ,EAAE,WAAW,EAAE,eAAe,EAAE,UAAU,EAAE,sBAAsB,CAAC,EAAA,SAAA,EACrF,CAAC,wBAAwB,CAAC,EAAA,QAAA,EAAA,6qEAAA,EAAA,MAAA,EAAA,CAAA,wBAAA,CAAA,EAAA;;;;;;;;AEnBvC;AAEO,MAAM,yCAAyC,GAAW;AAC/D,IAAA;AACE,QAAA,IAAI,EAAE,EAAE;AACR,QAAA,aAAa,EAAE,MACb,6FAA8D,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,4CAA4C,CAAC;AAE1H,QAAA,QAAQ,EAAE;;;;;;;;;AAST,SAAA;AACF,KAAA;;AAGH;;;;AAIG;AACH;;;;;;;ACtBA,MAAMN,GAAC,GAAG,WAAW,CAAC,GAAG,CAAC,oIAAoI,EAAE,EAAC,sIAAsI,EAAC,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,2FAAuE,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,2FAAuE,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,2FAAuE,CAAC,EAAE,OAAO,EAAC,EAAC,oIAAoI,EAAC,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,yFAAqE,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,yFAAqE,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,yFAAqE,CAAC,EAAE,OAAO,EAAC,EAAQ,CAAC;MAU9lC,sCAAsC,CAAA;AARnD,IAAA,WAAA,GAAA;AASW,QAAA,IAAA,CAAA,CAAC,GAAGA,GAAC,CAAC,GAAG,CAAC,IAAI,CAAC;AAEP,QAAA,IAAA,CAAA,GAAG,GAAG,MAAM,CAAC,wBAAwB,CAAC;AAE9C,QAAA,IAAA,CAAA,YAAY,GAAG,MAAM,CAAmC,EAAE,wDAAC;AAE3D,QAAA,IAAA,CAAA,MAAM,GAAG,MAAM,CAAC,EAAE,kDAAC;AAEnB,QAAA,IAAA,CAAA,IAAI,GAAG,MAAM,CAAC,CAAC,gDAAC;QAEhB,IAAA,CAAA,QAAQ,GAAG,EAAE;AAEb,QAAA,IAAA,CAAA,KAAK,GAAG,MAAM,CAAC,EAAE,iDAAC;AAElB,QAAA,IAAA,CAAA,OAAO,GAAG,MAAM,CAAC,KAAK,mDAAC;AAwDjC,IAAA;IAtDC,QAAQ,GAAA;AACN,QAAA,KAAK,IAAI,CAAC,MAAM,EAAE;IACpB;AAEA,IAAA,IAAI,YAAY,GAAA;AACd,QAAA,MAAM,KAAK,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,CAAC,IAAI,IAAI,CAAC,QAAQ;AAC/C,QAAA,OAAO,IAAI,CAAC,YAAY,EAAE,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC;IAChE;AAEA,IAAA,MAAM,MAAM,GAAA;AACV,QAAA,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC;AACtB,QAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;AAClB,QAAA,IAAI;AACF,YAAA,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,eAAe,EAAE,CAAC;QACzD;QAAE,OAAO,KAAK,EAAE;AACd,YAAA,OAAO,CAAC,KAAK,CAAC,kDAAkD,EAAE,KAAK,CAAC;YACxE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,YAAY,KAAK,GAAG,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,oCAAoC,CAAC,CAAC;QAC/G;gBAAU;AACR,YAAA,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC;QACzB;IACF;AAEA,IAAA,MAAM,KAAK,GAAA;QACT,MAAM,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;AAChC,QAAA,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE;AACxC,YAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,wBAAwB,CAAC,CAAC;YACxD;QACF;QACA,MAAM,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,IAAI,CAAC;IAC7B;IAEA,MAAM,OAAO,CAAC,MAAc,EAAA;QAC1B,MAAM,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC;IAClC;IAEA,MAAM,UAAU,CAAC,MAAc,EAAA;QAC7B,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,EAAE,GAAG,MAAM;QACjC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC9E,IAAI,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,GAAG,EAAE;AAC5B,YAAA,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC;QACrB;IACF;AAEQ,IAAA,MAAM,MAAM,CAAC,MAAc,EAAE,OAAgB,EAAA;AACnD,QAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;AAClB,QAAA,IAAI;YACF,MAAM,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,MAAM,EAAE,OAAO,CAAC;AAC9C,YAAA,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC;AACnB,YAAA,MAAM,IAAI,CAAC,MAAM,EAAE;QACrB;QAAE,OAAO,KAAK,EAAE;AACd,YAAA,OAAO,CAAC,KAAK,CAAC,0DAA0D,EAAE,KAAK,CAAC;YAChF,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,YAAY,KAAK,GAAG,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,sCAAsC,CAAC,CAAC;QACjH;IACF;8GAtEW,sCAAsC,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;kGAAtC,sCAAsC,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,qCAAA,EAAA,SAAA,EAFtC,CAAC,wBAAwB,CAAC,0BCfvC,4/CAkCM,EAAA,MAAA,EAAA,CAAA,wBAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EDpBM,WAAW,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAG,IAAA,CAAA,aAAA,EAAA,QAAA,EAAA,8CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,oBAAA,EAAA,QAAA,EAAA,8MAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,eAAA,EAAA,QAAA,EAAA,2CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,oBAAA,EAAA,QAAA,EAAA,sGAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,OAAA,EAAA,QAAA,EAAA,qDAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,SAAA,EAAA,gBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,eAAA,CAAA,EAAA,QAAA,EAAA,CAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,MAAA,EAAA,QAAA,EAAA,yEAAA,EAAA,MAAA,EAAA,CAAA,eAAA,CAAA,EAAA,OAAA,EAAA,CAAA,UAAA,CAAA,EAAA,QAAA,EAAA,CAAA,QAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAE,eAAe,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAG,EAAA,CAAA,SAAA,EAAA,QAAA,EAAA,iOAAA,EAAA,MAAA,EAAA,CAAA,WAAA,CAAA,EAAA,QAAA,EAAA,CAAA,WAAA,EAAA,WAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;;2FAG3B,sCAAsC,EAAA,UAAA,EAAA,CAAA;kBARlD,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,qCAAqC,EAAA,eAAA,EAG9B,uBAAuB,CAAC,MAAM,EAAA,OAAA,EACtC,CAAC,WAAW,EAAE,eAAe,CAAC,EAAA,SAAA,EAC5B,CAAC,wBAAwB,CAAC,EAAA,QAAA,EAAA,4/CAAA,EAAA,MAAA,EAAA,CAAA,wBAAA,CAAA,EAAA;;;;;;;;AEZvC;AAEO,MAAM,iCAAiC,GAAW;AACvD,IAAA;AACE,QAAA,IAAI,EAAE,EAAE;AACR,QAAA,aAAa,EAAE,MACb,qFAAqD,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,sCAAsC,CAAC;AAE3G,QAAA,QAAQ,EAAE;;;;;;;;;AAST,SAAA;AACF,KAAA;;AAGH;;;;AAIG;AACH;;;;;;;ACtBA,MAAM,CAAC,GAAG,WAAW,CAAC,GAAG,CAAC,0IAA0I,EAAE,EAAC,4IAA4I,EAAC,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,8FAA0E,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,8FAA0E,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,8FAA0E,CAAC,EAAE,OAAO,EAAC,EAAC,0IAA0I,EAAC,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,4FAAwE,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,4FAAwE,CAAC,EAAE,OAAO,EAAC,OAAO,EAAC,YAAY,CAAC,MAAM,OAAO,4FAAwE,CAAC,EAAE,OAAO,EAAC,EAAQ,CAAC;MAUloC,uCAAuC,CAAA;AARpD,IAAA,WAAA,GAAA;AASW,QAAA,IAAA,CAAA,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC;AAEP,QAAA,IAAA,CAAA,GAAG,GAAG,MAAM,CAAC,wBAAwB,CAAC;AAE9C,QAAA,IAAA,CAAA,OAAO,GAAG,MAAM,CAAmC,EAAE,mDAAC;AAEtD,QAAA,IAAA,CAAA,MAAM,GAAG,MAAM,CAAC,EAAE,kDAAC;AAEnB,QAAA,IAAA,CAAA,KAAK,GAAG,MAAM,CAAC,EAAE,iDAAC;AAElB,QAAA,IAAA,CAAA,OAAO,GAAG,MAAM,CAAC,KAAK,mDAAC;AA6CjC,IAAA;IA3CC,QAAQ,GAAA;AACN,QAAA,KAAK,IAAI,CAAC,MAAM,EAAE;IACpB;AAEA,IAAA,MAAM,MAAM,GAAA;AACV,QAAA,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC;AACtB,QAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;AAClB,QAAA,IAAI;AACF,YAAA,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,iBAAiB,EAAE,CAAC;QACtD;QAAE,OAAO,KAAK,EAAE;AACd,YAAA,OAAO,CAAC,KAAK,CAAC,sDAAsD,EAAE,KAAK,CAAC;YAC5E,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,YAAY,KAAK,GAAG,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,sCAAsC,CAAC,CAAC;QACjH;gBAAU;AACR,YAAA,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC;QACzB;IACF;AAEA,IAAA,MAAM,GAAG,GAAA;QACP,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE;QACnC,IAAI,CAAC,MAAM,EAAE;YACX;QACF;AACA,QAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;AAClB,QAAA,IAAI;YACF,MAAM,IAAI,CAAC,GAAG,CAAC,gBAAgB,CAAC,MAAM,CAAC;AACvC,YAAA,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC;AACnB,YAAA,MAAM,IAAI,CAAC,MAAM,EAAE;QACrB;QAAE,OAAO,KAAK,EAAE;AACd,YAAA,OAAO,CAAC,KAAK,CAAC,oDAAoD,EAAE,KAAK,CAAC;YAC1E,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,YAAY,KAAK,GAAG,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,gCAAgC,CAAC,CAAC;QAC3G;IACF;IAEA,MAAM,MAAM,CAAC,EAAU,EAAA;AACrB,QAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;AAClB,QAAA,IAAI;YACF,MAAM,IAAI,CAAC,GAAG,CAAC,mBAAmB,CAAC,EAAE,CAAC;AACtC,YAAA,MAAM,IAAI,CAAC,MAAM,EAAE;QACrB;QAAE,OAAO,KAAK,EAAE;AACd,YAAA,OAAO,CAAC,KAAK,CAAC,uDAAuD,EAAE,KAAK,CAAC;YAC7E,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,YAAY,KAAK,GAAG,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,kCAAkC,CAAC,CAAC;QAC7G;IACF;8GAvDW,uCAAuC,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;kGAAvC,uCAAuC,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,wCAAA,EAAA,SAAA,EAFvC,CAAC,wBAAwB,CAAC,0BCfvC,s6BAwBK,EAAA,MAAA,EAAA,CAAA,wBAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EDVO,WAAW,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAH,IAAA,CAAA,aAAA,EAAA,QAAA,EAAA,8CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,oBAAA,EAAA,QAAA,EAAA,8MAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,eAAA,EAAA,QAAA,EAAA,2CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,oBAAA,EAAA,QAAA,EAAA,sGAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,OAAA,EAAA,QAAA,EAAA,qDAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,SAAA,EAAA,gBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,eAAA,CAAA,EAAA,QAAA,EAAA,CAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,MAAA,EAAA,QAAA,EAAA,yEAAA,EAAA,MAAA,EAAA,CAAA,eAAA,CAAA,EAAA,OAAA,EAAA,CAAA,UAAA,CAAA,EAAA,QAAA,EAAA,CAAA,QAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAE,eAAe,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAG,EAAA,CAAA,SAAA,EAAA,QAAA,EAAA,iOAAA,EAAA,MAAA,EAAA,CAAA,WAAA,CAAA,EAAA,QAAA,EAAA,CAAA,WAAA,EAAA,WAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;;2FAG3B,uCAAuC,EAAA,UAAA,EAAA,CAAA;kBARnD,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,wCAAwC,EAAA,eAAA,EAGjC,uBAAuB,CAAC,MAAM,EAAA,OAAA,EACtC,CAAC,WAAW,EAAE,eAAe,CAAC,EAAA,SAAA,EAC5B,CAAC,wBAAwB,CAAC,EAAA,QAAA,EAAA,s6BAAA,EAAA,MAAA,EAAA,CAAA,wBAAA,CAAA,EAAA;;;;;;;;AEZvC;AAEO,MAAM,oCAAoC,GAAW;AAC1D,IAAA;AACE,QAAA,IAAI,EAAE,EAAE;AACR,QAAA,aAAa,EAAE,MACb,wFAAwD,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,uCAAuC,CAAC;AAE/G,QAAA,QAAQ,EAAE;;;;;;;;;AAST,SAAA;AACF,KAAA;;AAGH;;;;AAIG;AACH;;;;;;;AC7BA;AACA;AACA;AACA;AACA;;ACAA;AACA,YAAe,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACLjB;;AAEG;;"}
|