@taon-dev/cms 21.0.3 → 21.0.6
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.mjs +2864 -433
- package/browser/fesm2022/cms-browser.mjs.map +1 -1
- package/browser/package.json +1 -1
- package/browser/types/cms-browser.d.ts +439 -70
- package/browser-prod/fesm2022/cms-browser-prod.mjs +2866 -432
- 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 +437 -70
- package/html/app/baseline-backoffice/taon-baseline-backoffice.component.html +23 -0
- package/html/app/cms-example/cms-example.component.html +2 -0
- package/html/app/session-example/session-example.component.html +2 -0
- package/html/assets/generated/pwa/html-pwa.html +53 -53
- package/html/lib/taon-cms-backoffice/taon-cms-backoffice.component.html +9 -4
- package/html/lib/taon-posts/taon-cms-post/taon-cms-post.component.html +183 -0
- package/html/lib/taon-posts/taon-cms-post-edit-dialog/taon-cms-post-edit-dialog.component.html +12 -0
- package/html/lib/taon-posts/taon-cms-posts-backoffice/taon-cms-posts-backoffice.component.html +14 -0
- package/html/lib/taon-posts/taon-cms-revision-chooser/taon-cms-revision-chooser.component.html +35 -0
- package/html/lib/taon-posts/taon-related-post-chooser/taon-related-post-chooser.component.html +27 -0
- package/i18n/app.ts.en-US.i18n.data.d.ts +0 -8
- package/i18n/app.ts.pl-PL.i18n.data.d.ts +0 -8
- package/lib/app.data.d.ts +22 -0
- package/lib/app.data.js +23 -0
- package/lib/app.data.js.map +1 -0
- package/lib/build-info._auto-generated_.d.ts +1 -1
- package/lib/build-info._auto-generated_.js +1 -1
- package/lib/env/env.angular-node-app.d.ts +3 -0
- package/lib/env/env.angular-node-app.js +10 -2
- package/lib/env/env.angular-node-app.js.map +1 -1
- package/lib/env/env.docs-webapp.d.ts +3 -0
- package/lib/env/env.docs-webapp.js +10 -2
- package/lib/env/env.docs-webapp.js.map +1 -1
- package/lib/env/env.electron-app.d.ts +3 -0
- package/lib/env/env.electron-app.js +10 -2
- package/lib/env/env.electron-app.js.map +1 -1
- package/lib/env/env.mobile-app.d.ts +3 -0
- package/lib/env/env.mobile-app.js +10 -2
- package/lib/env/env.mobile-app.js.map +1 -1
- package/lib/env/env.npm-lib-and-cli-tool.d.ts +3 -0
- package/lib/env/env.npm-lib-and-cli-tool.js +10 -2
- package/lib/env/env.npm-lib-and-cli-tool.js.map +1 -1
- package/lib/env/env.vscode-plugin.d.ts +3 -0
- package/lib/env/env.vscode-plugin.js +10 -2
- package/lib/env/env.vscode-plugin.js.map +1 -1
- package/lib/index._auto-generated_.d.ts +18 -1
- package/lib/index._auto-generated_.js +17 -0
- package/lib/index._auto-generated_.js.map +1 -1
- package/lib/index.d.ts +3 -1
- package/lib/index.js +2 -0
- package/lib/index.js.map +1 -1
- package/lib/migrations/1791132517216_initial.d.ts +7 -0
- package/lib/migrations/1791132517216_initial.js +74 -0
- package/lib/migrations/1791132517216_initial.js.map +1 -0
- package/lib/migrations/migrations_index._auto-generated_.d.ts +4 -0
- package/lib/migrations/migrations_index._auto-generated_.js +7 -0
- package/lib/migrations/migrations_index._auto-generated_.js.map +1 -1
- package/lib/package.json +1 -1
- package/lib/taon-cms-assets-backoffice/taon-cms-assets-backoffice.component.d.ts +10 -0
- package/lib/taon-cms-assets-backoffice/taon-cms-assets-backoffice.routes.d.ts +2 -0
- package/lib/taon-cms-backoffice/index.js +2 -2
- package/lib/taon-cms-backoffice/taon-cms-backoffice.component.d.ts +3 -0
- package/lib/taon-cms-category/taon-cms-category-api.service.d.ts +0 -1
- package/lib/taon-cms-category/taon-cms-category.controller.d.ts +1 -5
- package/lib/taon-cms-category/taon-cms-category.controller.js +3 -33
- package/lib/taon-cms-category/taon-cms-category.controller.js.map +1 -1
- package/lib/taon-cms-category/taon-cms-category.repository.d.ts +2 -4
- package/lib/taon-cms-category/taon-cms-category.repository.js +8 -11
- package/lib/taon-cms-category/taon-cms-category.repository.js.map +1 -1
- package/lib/taon-cms-content/index.d.ts +1 -0
- package/lib/taon-cms-content/index.js +1 -0
- package/lib/taon-cms-content/index.js.map +1 -1
- package/lib/taon-cms-content/taon-cms-content-api.service.d.ts +18 -3
- package/lib/taon-cms-content/taon-cms-content-storage.controller.d.ts +7 -0
- package/lib/taon-cms-content/taon-cms-content-storage.controller.js +41 -0
- package/lib/taon-cms-content/taon-cms-content-storage.controller.js.map +1 -0
- package/lib/taon-cms-content/taon-cms-content.abstract.context.js +16 -5
- package/lib/taon-cms-content/taon-cms-content.abstract.context.js.map +1 -1
- package/lib/taon-cms-content/taon-cms-content.config.service.d.ts +5 -0
- package/lib/taon-cms-content/taon-cms-content.constants.js +5 -0
- package/lib/taon-cms-content/taon-cms-content.constants.js.map +1 -1
- package/lib/taon-cms-content/taon-cms-content.controller.d.ts +12 -4
- package/lib/taon-cms-content/taon-cms-content.controller.js +125 -21
- package/lib/taon-cms-content/taon-cms-content.controller.js.map +1 -1
- package/lib/taon-cms-content/taon-cms-content.entity.d.ts +8 -1
- package/lib/taon-cms-content/taon-cms-content.entity.js +59 -3
- package/lib/taon-cms-content/taon-cms-content.entity.js.map +1 -1
- package/lib/taon-cms-content/taon-cms-content.models.d.ts +40 -0
- package/lib/taon-cms-content/taon-cms-content.models.js +8 -1
- package/lib/taon-cms-content/taon-cms-content.models.js.map +1 -1
- package/lib/taon-cms-content/taon-cms-content.provider.js.map +1 -1
- package/lib/taon-cms-content/taon-cms-content.repository.d.ts +27 -0
- package/lib/taon-cms-content/taon-cms-content.repository.js +326 -0
- package/lib/taon-cms-content/taon-cms-content.repository.js.map +1 -1
- package/lib/taon-cms-content/taon-cms-content.validation.d.ts +9 -0
- package/lib/taon-cms-content/taon-cms-content.validation.js +79 -0
- package/lib/taon-cms-content/taon-cms-content.validation.js.map +1 -0
- package/lib/taon-cms-content-revision/taon-cms-content-revision-api.service.d.ts +5 -1
- package/lib/taon-cms-content-revision/taon-cms-content-revision.controller.d.ts +1 -5
- package/lib/taon-cms-content-revision/taon-cms-content-revision.controller.js +3 -33
- package/lib/taon-cms-content-revision/taon-cms-content-revision.controller.js.map +1 -1
- package/lib/taon-cms-content-revision/taon-cms-content-revision.entity.d.ts +2 -0
- package/lib/taon-cms-content-revision/taon-cms-content-revision.entity.js +9 -0
- package/lib/taon-cms-content-revision/taon-cms-content-revision.entity.js.map +1 -1
- package/lib/taon-cms-content-revision/taon-cms-content-revision.repository.d.ts +6 -4
- package/lib/taon-cms-content-revision/taon-cms-content-revision.repository.js +33 -10
- package/lib/taon-cms-content-revision/taon-cms-content-revision.repository.js.map +1 -1
- package/lib/taon-cms-content-tag/taon-cms-content-tag-api.service.d.ts +0 -1
- package/lib/taon-cms-content-tag/taon-cms-content-tag.controller.d.ts +1 -5
- package/lib/taon-cms-content-tag/taon-cms-content-tag.controller.js +3 -33
- package/lib/taon-cms-content-tag/taon-cms-content-tag.controller.js.map +1 -1
- package/lib/taon-cms-content-tag/taon-cms-content-tag.repository.d.ts +3 -4
- package/lib/taon-cms-content-tag/taon-cms-content-tag.repository.js +15 -11
- package/lib/taon-cms-content-tag/taon-cms-content-tag.repository.js.map +1 -1
- package/lib/taon-cms-tag/taon-cms-tag.repository.d.ts +2 -0
- package/lib/taon-cms-tag/taon-cms-tag.repository.js +13 -0
- package/lib/taon-cms-tag/taon-cms-tag.repository.js.map +1 -1
- package/lib/taon-cms.abstract.context.js +4 -2
- package/lib/taon-cms.abstract.context.js.map +1 -1
- package/lib/taon-posts/taon-cms-post/index.d.ts +1 -0
- package/lib/taon-posts/taon-cms-post/index.js +5 -0
- package/lib/taon-posts/taon-cms-post/index.js.map +1 -0
- package/lib/taon-posts/taon-cms-post/taon-cms-editable.directive.d.ts +19 -0
- package/lib/taon-posts/taon-cms-post/taon-cms-post.component.d.ts +84 -0
- package/lib/taon-posts/taon-cms-post/taon-cms-post.models.d.ts +8 -0
- package/lib/taon-posts/taon-cms-post/taon-cms-post.models.js +3 -0
- package/lib/taon-posts/taon-cms-post/taon-cms-post.models.js.map +1 -0
- package/lib/taon-posts/taon-cms-post/taon-cms-post.routes.d.ts +7 -0
- package/lib/taon-posts/taon-cms-post-details-page/taon-cms-post-details-page.component.d.ts +4 -0
- package/lib/taon-posts/taon-cms-post-edit-dialog/index.d.ts +1 -0
- package/lib/taon-posts/taon-cms-post-edit-dialog/index.js +5 -0
- package/lib/taon-posts/taon-cms-post-edit-dialog/index.js.map +1 -0
- package/lib/taon-posts/taon-cms-post-edit-dialog/taon-cms-post-edit-dialog.component.d.ts +15 -0
- package/lib/taon-posts/taon-cms-posts-backoffice/index.d.ts +1 -0
- package/lib/taon-posts/taon-cms-posts-backoffice/index.js +5 -0
- package/lib/taon-posts/taon-cms-posts-backoffice/index.js.map +1 -0
- package/lib/taon-posts/taon-cms-posts-backoffice/taon-cms-posts-backoffice.component.d.ts +26 -0
- package/lib/taon-posts/taon-cms-posts-backoffice/taon-cms-posts-backoffice.models.d.ts +1 -0
- package/lib/taon-posts/taon-cms-posts-backoffice/taon-cms-posts-backoffice.models.js +3 -0
- package/lib/taon-posts/taon-cms-posts-backoffice/taon-cms-posts-backoffice.models.js.map +1 -0
- package/lib/taon-posts/taon-cms-posts-backoffice/taon-cms-posts-backoffice.routes.d.ts +7 -0
- package/lib/taon-posts/taon-cms-revision-chooser/index.d.ts +1 -0
- package/lib/taon-posts/taon-cms-revision-chooser/index.js +5 -0
- package/lib/taon-posts/taon-cms-revision-chooser/index.js.map +1 -0
- package/lib/taon-posts/taon-cms-revision-chooser/taon-cms-revision-chooser.component.d.ts +17 -0
- package/lib/taon-posts/taon-related-post-chooser/index.d.ts +1 -0
- package/lib/taon-posts/taon-related-post-chooser/index.js +5 -0
- package/lib/taon-posts/taon-related-post-chooser/index.js.map +1 -0
- package/lib/taon-posts/taon-related-post-chooser/taon-related-post-chooser.component.d.ts +22 -0
- package/lib-esm/app/baseline-backoffice/index.d.ts +0 -0
- package/lib-esm/app/baseline-backoffice/index.js +2 -0
- package/lib-esm/app/baseline-backoffice/index.js.map +1 -0
- package/lib-esm/app/baseline-backoffice/taon-baseline-backoffice.component.d.ts +0 -0
- package/lib-esm/app/baseline-backoffice/taon-baseline-backoffice.component.js +2 -0
- package/lib-esm/app/baseline-backoffice/taon-baseline-backoffice.component.js.map +1 -0
- package/lib-esm/app/baseline-backoffice/taon-baseline-backoffice.models.d.ts +0 -0
- package/lib-esm/app/baseline-backoffice/taon-baseline-backoffice.models.js +2 -0
- package/lib-esm/app/baseline-backoffice/taon-baseline-backoffice.models.js.map +1 -0
- package/lib-esm/app/baseline-backoffice/taon-baseline-backoffice.routes.d.ts +0 -0
- package/lib-esm/app/baseline-backoffice/taon-baseline-backoffice.routes.js +2 -0
- package/lib-esm/app/baseline-backoffice/taon-baseline-backoffice.routes.js.map +1 -0
- package/lib-esm/app/cms-example/cms-example.component.d.ts +0 -0
- package/lib-esm/app/cms-example/cms-example.component.js +2 -0
- package/lib-esm/app/cms-example/cms-example.component.js.map +1 -0
- package/lib-esm/app/cms-example/cms-example.models.d.ts +0 -0
- package/lib-esm/app/cms-example/cms-example.models.js +2 -0
- package/lib-esm/app/cms-example/cms-example.models.js.map +1 -0
- package/lib-esm/app/cms-example/cms-example.routes.d.ts +0 -0
- package/lib-esm/app/cms-example/cms-example.routes.js +2 -0
- package/lib-esm/app/cms-example/cms-example.routes.js.map +1 -0
- package/lib-esm/app/cms-example/index.d.ts +0 -0
- package/lib-esm/app/cms-example/index.js +2 -0
- package/lib-esm/app/cms-example/index.js.map +1 -0
- package/lib-esm/app/session-example/index.d.ts +0 -0
- package/lib-esm/app/session-example/index.js +2 -0
- package/lib-esm/app/session-example/index.js.map +1 -0
- package/lib-esm/app/session-example/session-example.component.d.ts +0 -0
- package/lib-esm/app/session-example/session-example.component.js +2 -0
- package/lib-esm/app/session-example/session-example.component.js.map +1 -0
- package/lib-esm/app/session-example/session-example.models.d.ts +0 -0
- package/lib-esm/app/session-example/session-example.models.js +2 -0
- package/lib-esm/app/session-example/session-example.models.js.map +1 -0
- package/lib-esm/app/session-example/session-example.routes.d.ts +0 -0
- package/lib-esm/app/session-example/session-example.routes.js +2 -0
- package/lib-esm/app/session-example/session-example.routes.js.map +1 -0
- package/lib-esm/lib/app.data.d.ts +22 -0
- package/lib-esm/lib/app.data.js +20 -0
- package/lib-esm/lib/app.data.js.map +1 -0
- 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/env/env.angular-node-app.d.ts +3 -0
- package/lib-esm/lib/env/env.angular-node-app.js +6 -0
- package/lib-esm/lib/env/env.angular-node-app.js.map +1 -1
- package/lib-esm/lib/env/env.docs-webapp.d.ts +3 -0
- package/lib-esm/lib/env/env.docs-webapp.js +6 -0
- package/lib-esm/lib/env/env.docs-webapp.js.map +1 -1
- package/lib-esm/lib/env/env.electron-app.d.ts +3 -0
- package/lib-esm/lib/env/env.electron-app.js +6 -0
- package/lib-esm/lib/env/env.electron-app.js.map +1 -1
- package/lib-esm/lib/env/env.mobile-app.d.ts +3 -0
- package/lib-esm/lib/env/env.mobile-app.js +6 -0
- package/lib-esm/lib/env/env.mobile-app.js.map +1 -1
- package/lib-esm/lib/env/env.npm-lib-and-cli-tool.d.ts +3 -0
- package/lib-esm/lib/env/env.npm-lib-and-cli-tool.js +6 -0
- package/lib-esm/lib/env/env.npm-lib-and-cli-tool.js.map +1 -1
- package/lib-esm/lib/env/env.vscode-plugin.d.ts +3 -0
- package/lib-esm/lib/env/env.vscode-plugin.js +6 -0
- package/lib-esm/lib/env/env.vscode-plugin.js.map +1 -1
- package/lib-esm/lib/index._auto-generated_.d.ts +5 -0
- package/lib-esm/lib/index._auto-generated_.js +17 -0
- package/lib-esm/lib/index._auto-generated_.js.map +1 -1
- package/lib-esm/lib/index.d.ts +1 -0
- package/lib-esm/lib/index.js +2 -0
- package/lib-esm/lib/index.js.map +1 -1
- package/lib-esm/lib/migrations/1791132517216_initial.d.ts +7 -0
- package/lib-esm/lib/migrations/1791132517216_initial.js +65 -0
- package/lib-esm/lib/migrations/1791132517216_initial.js.map +1 -0
- package/lib-esm/lib/migrations/migrations_index._auto-generated_.d.ts +4 -0
- package/lib-esm/lib/migrations/migrations_index._auto-generated_.js +4 -0
- package/lib-esm/lib/migrations/migrations_index._auto-generated_.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-category/taon-cms-category.controller.d.ts +1 -5
- package/lib-esm/lib/taon-cms-category/taon-cms-category.controller.js +4 -28
- package/lib-esm/lib/taon-cms-category/taon-cms-category.controller.js.map +1 -1
- package/lib-esm/lib/taon-cms-category/taon-cms-category.repository.d.ts +2 -4
- package/lib-esm/lib/taon-cms-category/taon-cms-category.repository.js +8 -11
- package/lib-esm/lib/taon-cms-category/taon-cms-category.repository.js.map +1 -1
- package/lib-esm/lib/taon-cms-content/index.d.ts +1 -0
- package/lib-esm/lib/taon-cms-content/index.js +1 -0
- package/lib-esm/lib/taon-cms-content/index.js.map +1 -1
- package/lib-esm/lib/taon-cms-content/taon-cms-content-storage.controller.d.ts +7 -0
- package/lib-esm/lib/taon-cms-content/taon-cms-content-storage.controller.js +32 -0
- package/lib-esm/lib/taon-cms-content/taon-cms-content-storage.controller.js.map +1 -0
- package/lib-esm/lib/taon-cms-content/taon-cms-content.abstract.context.js +16 -5
- package/lib-esm/lib/taon-cms-content/taon-cms-content.abstract.context.js.map +1 -1
- package/lib-esm/lib/taon-cms-content/taon-cms-content.constants.js +5 -0
- package/lib-esm/lib/taon-cms-content/taon-cms-content.constants.js.map +1 -1
- package/lib-esm/lib/taon-cms-content/taon-cms-content.controller.d.ts +12 -4
- package/lib-esm/lib/taon-cms-content/taon-cms-content.controller.js +126 -22
- 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 +8 -1
- package/lib-esm/lib/taon-cms-content/taon-cms-content.entity.js +60 -4
- 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 +40 -0
- package/lib-esm/lib/taon-cms-content/taon-cms-content.models.js +7 -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.provider.js.map +1 -1
- package/lib-esm/lib/taon-cms-content/taon-cms-content.repository.d.ts +27 -0
- package/lib-esm/lib/taon-cms-content/taon-cms-content.repository.js +327 -1
- 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.validation.d.ts +9 -0
- package/lib-esm/lib/taon-cms-content/taon-cms-content.validation.js +73 -0
- package/lib-esm/lib/taon-cms-content/taon-cms-content.validation.js.map +1 -0
- package/lib-esm/lib/taon-cms-content-revision/taon-cms-content-revision.controller.d.ts +1 -5
- package/lib-esm/lib/taon-cms-content-revision/taon-cms-content-revision.controller.js +4 -28
- package/lib-esm/lib/taon-cms-content-revision/taon-cms-content-revision.controller.js.map +1 -1
- package/lib-esm/lib/taon-cms-content-revision/taon-cms-content-revision.entity.d.ts +2 -0
- package/lib-esm/lib/taon-cms-content-revision/taon-cms-content-revision.entity.js +9 -0
- package/lib-esm/lib/taon-cms-content-revision/taon-cms-content-revision.entity.js.map +1 -1
- package/lib-esm/lib/taon-cms-content-revision/taon-cms-content-revision.repository.d.ts +6 -4
- package/lib-esm/lib/taon-cms-content-revision/taon-cms-content-revision.repository.js +33 -10
- package/lib-esm/lib/taon-cms-content-revision/taon-cms-content-revision.repository.js.map +1 -1
- package/lib-esm/lib/taon-cms-content-tag/taon-cms-content-tag.controller.d.ts +1 -5
- package/lib-esm/lib/taon-cms-content-tag/taon-cms-content-tag.controller.js +4 -28
- package/lib-esm/lib/taon-cms-content-tag/taon-cms-content-tag.controller.js.map +1 -1
- package/lib-esm/lib/taon-cms-content-tag/taon-cms-content-tag.repository.d.ts +3 -4
- package/lib-esm/lib/taon-cms-content-tag/taon-cms-content-tag.repository.js +15 -11
- package/lib-esm/lib/taon-cms-content-tag/taon-cms-content-tag.repository.js.map +1 -1
- package/lib-esm/lib/taon-cms-tag/taon-cms-tag.repository.d.ts +2 -0
- package/lib-esm/lib/taon-cms-tag/taon-cms-tag.repository.js +13 -0
- package/lib-esm/lib/taon-cms-tag/taon-cms-tag.repository.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-post/index.d.ts +1 -0
- package/lib-esm/lib/taon-posts/taon-cms-post/index.js +2 -0
- package/lib-esm/lib/taon-posts/taon-cms-post/index.js.map +1 -0
- package/lib-esm/lib/taon-posts/taon-cms-post/taon-cms-post.models.d.ts +8 -0
- package/lib-esm/lib/taon-posts/taon-cms-post/taon-cms-post.models.js +2 -0
- package/lib-esm/lib/taon-posts/taon-cms-post/taon-cms-post.models.js.map +1 -0
- package/lib-esm/lib/taon-posts/taon-cms-post-edit-dialog/index.d.ts +1 -0
- package/lib-esm/lib/taon-posts/taon-cms-post-edit-dialog/index.js +2 -0
- package/lib-esm/lib/taon-posts/taon-cms-post-edit-dialog/index.js.map +1 -0
- package/lib-esm/lib/taon-posts/taon-cms-posts-backoffice/index.d.ts +1 -0
- package/lib-esm/lib/taon-posts/taon-cms-posts-backoffice/index.js +2 -0
- package/lib-esm/lib/taon-posts/taon-cms-posts-backoffice/index.js.map +1 -0
- package/lib-esm/lib/taon-posts/taon-cms-posts-backoffice/taon-cms-posts-backoffice.models.d.ts +1 -0
- package/lib-esm/lib/taon-posts/taon-cms-posts-backoffice/taon-cms-posts-backoffice.models.js +2 -0
- package/lib-esm/lib/taon-posts/taon-cms-posts-backoffice/taon-cms-posts-backoffice.models.js.map +1 -0
- package/lib-esm/lib/taon-posts/taon-cms-revision-chooser/index.d.ts +1 -0
- package/lib-esm/lib/taon-posts/taon-cms-revision-chooser/index.js +2 -0
- package/lib-esm/lib/taon-posts/taon-cms-revision-chooser/index.js.map +1 -0
- package/lib-esm/lib/taon-posts/taon-related-post-chooser/index.d.ts +1 -0
- package/lib-esm/lib/taon-posts/taon-related-post-chooser/index.js +2 -0
- package/lib-esm/lib/taon-posts/taon-related-post-chooser/index.js.map +1 -0
- package/lib-prod/app.data.d.ts +22 -0
- package/lib-prod/app.data.js +20 -0
- package/lib-prod/app.data.js.map +1 -0
- package/lib-prod/build-info._auto-generated_.d.ts +1 -1
- package/lib-prod/build-info._auto-generated_.js +1 -1
- package/lib-prod/env/env.angular-node-app.d.ts +3 -0
- package/lib-prod/env/env.angular-node-app.js +6 -0
- package/lib-prod/env/env.angular-node-app.js.map +1 -1
- package/lib-prod/env/env.docs-webapp.d.ts +3 -0
- package/lib-prod/env/env.docs-webapp.js +6 -0
- package/lib-prod/env/env.docs-webapp.js.map +1 -1
- package/lib-prod/env/env.electron-app.d.ts +3 -0
- package/lib-prod/env/env.electron-app.js +6 -0
- package/lib-prod/env/env.electron-app.js.map +1 -1
- package/lib-prod/env/env.mobile-app.d.ts +3 -0
- package/lib-prod/env/env.mobile-app.js +6 -0
- package/lib-prod/env/env.mobile-app.js.map +1 -1
- package/lib-prod/env/env.npm-lib-and-cli-tool.d.ts +3 -0
- package/lib-prod/env/env.npm-lib-and-cli-tool.js +6 -0
- package/lib-prod/env/env.npm-lib-and-cli-tool.js.map +1 -1
- package/lib-prod/env/env.vscode-plugin.d.ts +3 -0
- package/lib-prod/env/env.vscode-plugin.js +6 -0
- package/lib-prod/env/env.vscode-plugin.js.map +1 -1
- package/lib-prod/index._auto-generated_.d.ts +5 -0
- package/lib-prod/index._auto-generated_.js +17 -0
- package/lib-prod/index._auto-generated_.js.map +1 -1
- package/lib-prod/index.d.ts +1 -0
- package/lib-prod/index.js +2 -0
- package/lib-prod/index.js.map +1 -1
- package/lib-prod/migrations/1791132517216_initial.d.ts +7 -0
- package/lib-prod/migrations/1791132517216_initial.js +65 -0
- package/lib-prod/migrations/1791132517216_initial.js.map +1 -0
- package/lib-prod/migrations/migrations_index._auto-generated_.d.ts +4 -0
- package/lib-prod/migrations/migrations_index._auto-generated_.js +4 -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/index.d.ts +1 -1
- package/lib-prod/taon-cms-backoffice/index.js +1 -1
- package/lib-prod/taon-cms-category/taon-cms-category.controller.d.ts +1 -5
- package/lib-prod/taon-cms-category/taon-cms-category.controller.js +4 -28
- package/lib-prod/taon-cms-category/taon-cms-category.controller.js.map +1 -1
- package/lib-prod/taon-cms-category/taon-cms-category.repository.d.ts +2 -4
- package/lib-prod/taon-cms-category/taon-cms-category.repository.js +8 -11
- package/lib-prod/taon-cms-category/taon-cms-category.repository.js.map +1 -1
- package/lib-prod/taon-cms-content/index.d.ts +1 -0
- package/lib-prod/taon-cms-content/index.js +1 -0
- package/lib-prod/taon-cms-content/index.js.map +1 -1
- package/lib-prod/taon-cms-content/taon-cms-content-storage.controller.d.ts +7 -0
- package/lib-prod/taon-cms-content/taon-cms-content-storage.controller.js +32 -0
- package/lib-prod/taon-cms-content/taon-cms-content-storage.controller.js.map +1 -0
- package/lib-prod/taon-cms-content/taon-cms-content.abstract.context.js +16 -5
- package/lib-prod/taon-cms-content/taon-cms-content.abstract.context.js.map +1 -1
- package/lib-prod/taon-cms-content/taon-cms-content.constants.js +5 -0
- package/lib-prod/taon-cms-content/taon-cms-content.constants.js.map +1 -1
- package/lib-prod/taon-cms-content/taon-cms-content.controller.d.ts +12 -4
- package/lib-prod/taon-cms-content/taon-cms-content.controller.js +126 -22
- 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 +8 -1
- package/lib-prod/taon-cms-content/taon-cms-content.entity.js +60 -4
- 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 +40 -0
- package/lib-prod/taon-cms-content/taon-cms-content.models.js +7 -0
- package/lib-prod/taon-cms-content/taon-cms-content.models.js.map +1 -1
- package/lib-prod/taon-cms-content/taon-cms-content.provider.js.map +1 -1
- package/lib-prod/taon-cms-content/taon-cms-content.repository.d.ts +27 -0
- package/lib-prod/taon-cms-content/taon-cms-content.repository.js +327 -1
- package/lib-prod/taon-cms-content/taon-cms-content.repository.js.map +1 -1
- package/lib-prod/taon-cms-content/taon-cms-content.validation.d.ts +9 -0
- package/lib-prod/taon-cms-content/taon-cms-content.validation.js +73 -0
- package/lib-prod/taon-cms-content/taon-cms-content.validation.js.map +1 -0
- package/lib-prod/taon-cms-content-revision/taon-cms-content-revision.controller.d.ts +1 -5
- package/lib-prod/taon-cms-content-revision/taon-cms-content-revision.controller.js +4 -28
- package/lib-prod/taon-cms-content-revision/taon-cms-content-revision.controller.js.map +1 -1
- package/lib-prod/taon-cms-content-revision/taon-cms-content-revision.entity.d.ts +2 -0
- package/lib-prod/taon-cms-content-revision/taon-cms-content-revision.entity.js +9 -0
- package/lib-prod/taon-cms-content-revision/taon-cms-content-revision.entity.js.map +1 -1
- package/lib-prod/taon-cms-content-revision/taon-cms-content-revision.repository.d.ts +6 -4
- package/lib-prod/taon-cms-content-revision/taon-cms-content-revision.repository.js +33 -10
- package/lib-prod/taon-cms-content-revision/taon-cms-content-revision.repository.js.map +1 -1
- package/lib-prod/taon-cms-content-tag/taon-cms-content-tag.controller.d.ts +1 -5
- package/lib-prod/taon-cms-content-tag/taon-cms-content-tag.controller.js +4 -28
- package/lib-prod/taon-cms-content-tag/taon-cms-content-tag.controller.js.map +1 -1
- package/lib-prod/taon-cms-content-tag/taon-cms-content-tag.repository.d.ts +3 -4
- package/lib-prod/taon-cms-content-tag/taon-cms-content-tag.repository.js +15 -11
- package/lib-prod/taon-cms-content-tag/taon-cms-content-tag.repository.js.map +1 -1
- package/lib-prod/taon-cms-tag/taon-cms-tag.repository.d.ts +2 -0
- package/lib-prod/taon-cms-tag/taon-cms-tag.repository.js +13 -0
- package/lib-prod/taon-cms-tag/taon-cms-tag.repository.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-post/index.d.ts +1 -0
- package/lib-prod/taon-posts/taon-cms-post/index.js +2 -0
- package/lib-prod/taon-posts/taon-cms-post/index.js.map +1 -0
- package/lib-prod/taon-posts/taon-cms-post/taon-cms-post.models.d.ts +8 -0
- package/lib-prod/taon-posts/taon-cms-post/taon-cms-post.models.js +2 -0
- package/lib-prod/taon-posts/taon-cms-post/taon-cms-post.models.js.map +1 -0
- package/lib-prod/taon-posts/taon-cms-post-edit-dialog/index.d.ts +1 -0
- package/lib-prod/taon-posts/taon-cms-post-edit-dialog/index.js +2 -0
- package/lib-prod/taon-posts/taon-cms-post-edit-dialog/index.js.map +1 -0
- package/lib-prod/taon-posts/taon-cms-posts-backoffice/index.d.ts +1 -0
- package/lib-prod/taon-posts/taon-cms-posts-backoffice/index.js +2 -0
- package/lib-prod/taon-posts/taon-cms-posts-backoffice/index.js.map +1 -0
- package/lib-prod/taon-posts/taon-cms-posts-backoffice/taon-cms-posts-backoffice.models.d.ts +0 -0
- package/lib-prod/taon-posts/taon-cms-posts-backoffice/taon-cms-posts-backoffice.models.js +3 -0
- package/lib-prod/taon-posts/taon-cms-posts-backoffice/taon-cms-posts-backoffice.models.js.map +1 -0
- package/lib-prod/taon-posts/taon-cms-revision-chooser/index.d.ts +1 -0
- package/lib-prod/taon-posts/taon-cms-revision-chooser/index.js +2 -0
- package/lib-prod/taon-posts/taon-cms-revision-chooser/index.js.map +1 -0
- package/lib-prod/taon-posts/taon-related-post-chooser/index.d.ts +1 -0
- package/lib-prod/taon-posts/taon-related-post-chooser/index.js +2 -0
- package/lib-prod/taon-posts/taon-related-post-chooser/index.js.map +1 -0
- package/package.json +1 -1
- package/scss/app/baseline-backoffice/taon-baseline-backoffice.component.scss +3 -0
- package/scss/app/cms-example/cms-example.component.scss +3 -0
- package/scss/app/session-example/session-example.component.scss +3 -0
- package/scss/global.scss +4 -1
- package/scss/lib/taon-posts/taon-cms-post/taon-cms-post.component.scss +132 -0
- package/scss/lib/taon-posts/taon-cms-post-edit-dialog/taon-cms-post-edit-dialog.component.scss +19 -0
- package/scss/lib/taon-posts/taon-cms-posts-backoffice/taon-cms-posts-backoffice.component.scss +3 -0
- package/scss/lib/taon-posts/taon-cms-revision-chooser/taon-cms-revision-chooser.component.scss +15 -0
- package/scss/lib/taon-posts/taon-related-post-chooser/taon-related-post-chooser.component.scss +25 -0
- package/websql/fesm2022/cms-websql.mjs +2992 -600
- package/websql/fesm2022/cms-websql.mjs.map +1 -1
- package/websql/package.json +1 -1
- package/websql/types/cms-websql.d.ts +439 -70
- package/websql-prod/fesm2022/cms-websql-prod.mjs +2995 -600
- 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 +437 -70
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
<taon-backoffice-notifications [filter]="filter" />
|
|
2
|
+
<taon-admin-layout
|
|
3
|
+
[routes]="adminRoutes"
|
|
4
|
+
[outlet]="outlet"
|
|
5
|
+
basePath="/backoffice">
|
|
6
|
+
<div
|
|
7
|
+
header
|
|
8
|
+
class="flex h-16 items-center px-6">
|
|
9
|
+
<strong>{{ title }}</strong>
|
|
10
|
+
</div>
|
|
11
|
+
|
|
12
|
+
<div
|
|
13
|
+
asideFooter
|
|
14
|
+
class="text-xs text-gray-500">
|
|
15
|
+
Taon Admin v1.0
|
|
16
|
+
</div>
|
|
17
|
+
|
|
18
|
+
<div
|
|
19
|
+
contentFooter
|
|
20
|
+
class="text-xs text-gray-500">
|
|
21
|
+
fixed content here
|
|
22
|
+
</div>
|
|
23
|
+
</taon-admin-layout>
|
|
@@ -1,60 +1,60 @@
|
|
|
1
|
-
<link rel="icon" type="image/x-icon" href="/assets/assets-for
|
|
2
|
-
<link rel="icon" type="image/png" sizes="16x16" href="/assets/assets-for
|
|
3
|
-
<link rel="icon" type="image/png" sizes="32x32" href="/assets/assets-for
|
|
4
|
-
<link rel="icon" type="image/png" sizes="48x48" href="/assets/assets-for
|
|
5
|
-
<link rel="manifest" href="/assets/assets-for
|
|
1
|
+
<link rel="icon" type="image/x-icon" href="/assets/assets-for/cms/assets/generated/pwa/favicon.ico">
|
|
2
|
+
<link rel="icon" type="image/png" sizes="16x16" href="/assets/assets-for/cms/assets/generated/pwa/favicon-16x16.png">
|
|
3
|
+
<link rel="icon" type="image/png" sizes="32x32" href="/assets/assets-for/cms/assets/generated/pwa/favicon-32x32.png">
|
|
4
|
+
<link rel="icon" type="image/png" sizes="48x48" href="/assets/assets-for/cms/assets/generated/pwa/favicon-48x48.png">
|
|
5
|
+
<link rel="manifest" href="/assets/assets-for/cms/assets/generated/pwa/manifest.webmanifest">
|
|
6
6
|
<meta name="mobile-web-app-capable" content="yes">
|
|
7
7
|
<meta name="theme-color" content="#fff">
|
|
8
8
|
<meta name="application-name">
|
|
9
|
-
<link rel="apple-touch-icon" sizes="57x57" href="/assets/assets-for
|
|
10
|
-
<link rel="apple-touch-icon" sizes="60x60" href="/assets/assets-for
|
|
11
|
-
<link rel="apple-touch-icon" sizes="72x72" href="/assets/assets-for
|
|
12
|
-
<link rel="apple-touch-icon" sizes="76x76" href="/assets/assets-for
|
|
13
|
-
<link rel="apple-touch-icon" sizes="114x114" href="/assets/assets-for
|
|
14
|
-
<link rel="apple-touch-icon" sizes="120x120" href="/assets/assets-for
|
|
15
|
-
<link rel="apple-touch-icon" sizes="144x144" href="/assets/assets-for
|
|
16
|
-
<link rel="apple-touch-icon" sizes="152x152" href="/assets/assets-for
|
|
17
|
-
<link rel="apple-touch-icon" sizes="167x167" href="/assets/assets-for
|
|
18
|
-
<link rel="apple-touch-icon" sizes="180x180" href="/assets/assets-for
|
|
19
|
-
<link rel="apple-touch-icon" sizes="1024x1024" href="/assets/assets-for
|
|
9
|
+
<link rel="apple-touch-icon" sizes="57x57" href="/assets/assets-for/cms/assets/generated/pwa/apple-touch-icon-57x57.png">
|
|
10
|
+
<link rel="apple-touch-icon" sizes="60x60" href="/assets/assets-for/cms/assets/generated/pwa/apple-touch-icon-60x60.png">
|
|
11
|
+
<link rel="apple-touch-icon" sizes="72x72" href="/assets/assets-for/cms/assets/generated/pwa/apple-touch-icon-72x72.png">
|
|
12
|
+
<link rel="apple-touch-icon" sizes="76x76" href="/assets/assets-for/cms/assets/generated/pwa/apple-touch-icon-76x76.png">
|
|
13
|
+
<link rel="apple-touch-icon" sizes="114x114" href="/assets/assets-for/cms/assets/generated/pwa/apple-touch-icon-114x114.png">
|
|
14
|
+
<link rel="apple-touch-icon" sizes="120x120" href="/assets/assets-for/cms/assets/generated/pwa/apple-touch-icon-120x120.png">
|
|
15
|
+
<link rel="apple-touch-icon" sizes="144x144" href="/assets/assets-for/cms/assets/generated/pwa/apple-touch-icon-144x144.png">
|
|
16
|
+
<link rel="apple-touch-icon" sizes="152x152" href="/assets/assets-for/cms/assets/generated/pwa/apple-touch-icon-152x152.png">
|
|
17
|
+
<link rel="apple-touch-icon" sizes="167x167" href="/assets/assets-for/cms/assets/generated/pwa/apple-touch-icon-167x167.png">
|
|
18
|
+
<link rel="apple-touch-icon" sizes="180x180" href="/assets/assets-for/cms/assets/generated/pwa/apple-touch-icon-180x180.png">
|
|
19
|
+
<link rel="apple-touch-icon" sizes="1024x1024" href="/assets/assets-for/cms/assets/generated/pwa/apple-touch-icon-1024x1024.png">
|
|
20
20
|
<meta name="apple-mobile-web-app-capable" content="yes">
|
|
21
21
|
<meta name="apple-mobile-web-app-status-bar-style" content="black-translucent">
|
|
22
22
|
<meta name="apple-mobile-web-app-title">
|
|
23
|
-
<link rel="apple-touch-startup-image" media="(device-width: 320px) and (device-height: 568px) and (-webkit-device-pixel-ratio: 2) and (orientation: portrait)" href="/assets/assets-for
|
|
24
|
-
<link rel="apple-touch-startup-image" media="(device-width: 320px) and (device-height: 568px) and (-webkit-device-pixel-ratio: 2) and (orientation: landscape)" href="/assets/assets-for
|
|
25
|
-
<link rel="apple-touch-startup-image" media="(device-width: 375px) and (device-height: 667px) and (-webkit-device-pixel-ratio: 2) and (orientation: portrait)" href="/assets/assets-for
|
|
26
|
-
<link rel="apple-touch-startup-image" media="(device-width: 375px) and (device-height: 667px) and (-webkit-device-pixel-ratio: 2) and (orientation: landscape)" href="/assets/assets-for
|
|
27
|
-
<link rel="apple-touch-startup-image" media="(device-width: 375px) and (device-height: 812px) and (-webkit-device-pixel-ratio: 3) and (orientation: portrait)" href="/assets/assets-for
|
|
28
|
-
<link rel="apple-touch-startup-image" media="(device-width: 375px) and (device-height: 812px) and (-webkit-device-pixel-ratio: 3) and (orientation: landscape)" href="/assets/assets-for
|
|
29
|
-
<link rel="apple-touch-startup-image" media="(device-width: 390px) and (device-height: 844px) and (-webkit-device-pixel-ratio: 3) and (orientation: portrait)" href="/assets/assets-for
|
|
30
|
-
<link rel="apple-touch-startup-image" media="(device-width: 390px) and (device-height: 844px) and (-webkit-device-pixel-ratio: 3) and (orientation: landscape)" href="/assets/assets-for
|
|
31
|
-
<link rel="apple-touch-startup-image" media="(device-width: 393px) and (device-height: 852px) and (-webkit-device-pixel-ratio: 3) and (orientation: portrait)" href="/assets/assets-for
|
|
32
|
-
<link rel="apple-touch-startup-image" media="(device-width: 393px) and (device-height: 852px) and (-webkit-device-pixel-ratio: 3) and (orientation: landscape)" href="/assets/assets-for
|
|
33
|
-
<link rel="apple-touch-startup-image" media="(device-width: 414px) and (device-height: 896px) and (-webkit-device-pixel-ratio: 2) and (orientation: portrait)" href="/assets/assets-for
|
|
34
|
-
<link rel="apple-touch-startup-image" media="(device-width: 414px) and (device-height: 896px) and (-webkit-device-pixel-ratio: 2) and (orientation: landscape)" href="/assets/assets-for
|
|
35
|
-
<link rel="apple-touch-startup-image" media="(device-width: 414px) and (device-height: 896px) and (-webkit-device-pixel-ratio: 3) and (orientation: portrait)" href="/assets/assets-for
|
|
36
|
-
<link rel="apple-touch-startup-image" media="(device-width: 414px) and (device-height: 896px) and (-webkit-device-pixel-ratio: 3) and (orientation: landscape)" href="/assets/assets-for
|
|
37
|
-
<link rel="apple-touch-startup-image" media="(device-width: 414px) and (device-height: 736px) and (-webkit-device-pixel-ratio: 3) and (orientation: portrait)" href="/assets/assets-for
|
|
38
|
-
<link rel="apple-touch-startup-image" media="(device-width: 414px) and (device-height: 736px) and (-webkit-device-pixel-ratio: 3) and (orientation: landscape)" href="/assets/assets-for
|
|
39
|
-
<link rel="apple-touch-startup-image" media="(device-width: 428px) and (device-height: 926px) and (-webkit-device-pixel-ratio: 3) and (orientation: portrait)" href="/assets/assets-for
|
|
40
|
-
<link rel="apple-touch-startup-image" media="(device-width: 428px) and (device-height: 926px) and (-webkit-device-pixel-ratio: 3) and (orientation: landscape)" href="/assets/assets-for
|
|
41
|
-
<link rel="apple-touch-startup-image" media="(device-width: 430px) and (device-height: 932px) and (-webkit-device-pixel-ratio: 3) and (orientation: portrait)" href="/assets/assets-for
|
|
42
|
-
<link rel="apple-touch-startup-image" media="(device-width: 430px) and (device-height: 932px) and (-webkit-device-pixel-ratio: 3) and (orientation: landscape)" href="/assets/assets-for
|
|
43
|
-
<link rel="apple-touch-startup-image" media="(device-width: 744px) and (device-height: 1133px) and (-webkit-device-pixel-ratio: 2) and (orientation: portrait)" href="/assets/assets-for
|
|
44
|
-
<link rel="apple-touch-startup-image" media="(device-width: 744px) and (device-height: 1133px) and (-webkit-device-pixel-ratio: 2) and (orientation: landscape)" href="/assets/assets-for
|
|
45
|
-
<link rel="apple-touch-startup-image" media="(device-width: 768px) and (device-height: 1024px) and (-webkit-device-pixel-ratio: 2) and (orientation: portrait)" href="/assets/assets-for
|
|
46
|
-
<link rel="apple-touch-startup-image" media="(device-width: 768px) and (device-height: 1024px) and (-webkit-device-pixel-ratio: 2) and (orientation: landscape)" href="/assets/assets-for
|
|
47
|
-
<link rel="apple-touch-startup-image" media="(device-width: 810px) and (device-height: 1080px) and (-webkit-device-pixel-ratio: 2) and (orientation: portrait)" href="/assets/assets-for
|
|
48
|
-
<link rel="apple-touch-startup-image" media="(device-width: 810px) and (device-height: 1080px) and (-webkit-device-pixel-ratio: 2) and (orientation: landscape)" href="/assets/assets-for
|
|
49
|
-
<link rel="apple-touch-startup-image" media="(device-width: 820px) and (device-height: 1080px) and (-webkit-device-pixel-ratio: 2) and (orientation: portrait)" href="/assets/assets-for
|
|
50
|
-
<link rel="apple-touch-startup-image" media="(device-width: 820px) and (device-height: 1080px) and (-webkit-device-pixel-ratio: 2) and (orientation: landscape)" href="/assets/assets-for
|
|
51
|
-
<link rel="apple-touch-startup-image" media="(device-width: 834px) and (device-height: 1194px) and (-webkit-device-pixel-ratio: 2) and (orientation: portrait)" href="/assets/assets-for
|
|
52
|
-
<link rel="apple-touch-startup-image" media="(device-width: 834px) and (device-height: 1194px) and (-webkit-device-pixel-ratio: 2) and (orientation: landscape)" href="/assets/assets-for
|
|
53
|
-
<link rel="apple-touch-startup-image" media="(device-width: 834px) and (device-height: 1112px) and (-webkit-device-pixel-ratio: 2) and (orientation: portrait)" href="/assets/assets-for
|
|
54
|
-
<link rel="apple-touch-startup-image" media="(device-width: 834px) and (device-height: 1112px) and (-webkit-device-pixel-ratio: 2) and (orientation: landscape)" href="/assets/assets-for
|
|
55
|
-
<link rel="apple-touch-startup-image" media="(device-width: 1024px) and (device-height: 1366px) and (-webkit-device-pixel-ratio: 2) and (orientation: portrait)" href="/assets/assets-for
|
|
56
|
-
<link rel="apple-touch-startup-image" media="(device-width: 1024px) and (device-height: 1366px) and (-webkit-device-pixel-ratio: 2) and (orientation: landscape)" href="/assets/assets-for
|
|
23
|
+
<link rel="apple-touch-startup-image" media="(device-width: 320px) and (device-height: 568px) and (-webkit-device-pixel-ratio: 2) and (orientation: portrait)" href="/assets/assets-for/cms/assets/generated/pwa/apple-touch-startup-image-640x1136.png">
|
|
24
|
+
<link rel="apple-touch-startup-image" media="(device-width: 320px) and (device-height: 568px) and (-webkit-device-pixel-ratio: 2) and (orientation: landscape)" href="/assets/assets-for/cms/assets/generated/pwa/apple-touch-startup-image-1136x640.png">
|
|
25
|
+
<link rel="apple-touch-startup-image" media="(device-width: 375px) and (device-height: 667px) and (-webkit-device-pixel-ratio: 2) and (orientation: portrait)" href="/assets/assets-for/cms/assets/generated/pwa/apple-touch-startup-image-750x1334.png">
|
|
26
|
+
<link rel="apple-touch-startup-image" media="(device-width: 375px) and (device-height: 667px) and (-webkit-device-pixel-ratio: 2) and (orientation: landscape)" href="/assets/assets-for/cms/assets/generated/pwa/apple-touch-startup-image-1334x750.png">
|
|
27
|
+
<link rel="apple-touch-startup-image" media="(device-width: 375px) and (device-height: 812px) and (-webkit-device-pixel-ratio: 3) and (orientation: portrait)" href="/assets/assets-for/cms/assets/generated/pwa/apple-touch-startup-image-1125x2436.png">
|
|
28
|
+
<link rel="apple-touch-startup-image" media="(device-width: 375px) and (device-height: 812px) and (-webkit-device-pixel-ratio: 3) and (orientation: landscape)" href="/assets/assets-for/cms/assets/generated/pwa/apple-touch-startup-image-2436x1125.png">
|
|
29
|
+
<link rel="apple-touch-startup-image" media="(device-width: 390px) and (device-height: 844px) and (-webkit-device-pixel-ratio: 3) and (orientation: portrait)" href="/assets/assets-for/cms/assets/generated/pwa/apple-touch-startup-image-1170x2532.png">
|
|
30
|
+
<link rel="apple-touch-startup-image" media="(device-width: 390px) and (device-height: 844px) and (-webkit-device-pixel-ratio: 3) and (orientation: landscape)" href="/assets/assets-for/cms/assets/generated/pwa/apple-touch-startup-image-2532x1170.png">
|
|
31
|
+
<link rel="apple-touch-startup-image" media="(device-width: 393px) and (device-height: 852px) and (-webkit-device-pixel-ratio: 3) and (orientation: portrait)" href="/assets/assets-for/cms/assets/generated/pwa/apple-touch-startup-image-1179x2556.png">
|
|
32
|
+
<link rel="apple-touch-startup-image" media="(device-width: 393px) and (device-height: 852px) and (-webkit-device-pixel-ratio: 3) and (orientation: landscape)" href="/assets/assets-for/cms/assets/generated/pwa/apple-touch-startup-image-2556x1179.png">
|
|
33
|
+
<link rel="apple-touch-startup-image" media="(device-width: 414px) and (device-height: 896px) and (-webkit-device-pixel-ratio: 2) and (orientation: portrait)" href="/assets/assets-for/cms/assets/generated/pwa/apple-touch-startup-image-828x1792.png">
|
|
34
|
+
<link rel="apple-touch-startup-image" media="(device-width: 414px) and (device-height: 896px) and (-webkit-device-pixel-ratio: 2) and (orientation: landscape)" href="/assets/assets-for/cms/assets/generated/pwa/apple-touch-startup-image-1792x828.png">
|
|
35
|
+
<link rel="apple-touch-startup-image" media="(device-width: 414px) and (device-height: 896px) and (-webkit-device-pixel-ratio: 3) and (orientation: portrait)" href="/assets/assets-for/cms/assets/generated/pwa/apple-touch-startup-image-1242x2688.png">
|
|
36
|
+
<link rel="apple-touch-startup-image" media="(device-width: 414px) and (device-height: 896px) and (-webkit-device-pixel-ratio: 3) and (orientation: landscape)" href="/assets/assets-for/cms/assets/generated/pwa/apple-touch-startup-image-2688x1242.png">
|
|
37
|
+
<link rel="apple-touch-startup-image" media="(device-width: 414px) and (device-height: 736px) and (-webkit-device-pixel-ratio: 3) and (orientation: portrait)" href="/assets/assets-for/cms/assets/generated/pwa/apple-touch-startup-image-1242x2208.png">
|
|
38
|
+
<link rel="apple-touch-startup-image" media="(device-width: 414px) and (device-height: 736px) and (-webkit-device-pixel-ratio: 3) and (orientation: landscape)" href="/assets/assets-for/cms/assets/generated/pwa/apple-touch-startup-image-2208x1242.png">
|
|
39
|
+
<link rel="apple-touch-startup-image" media="(device-width: 428px) and (device-height: 926px) and (-webkit-device-pixel-ratio: 3) and (orientation: portrait)" href="/assets/assets-for/cms/assets/generated/pwa/apple-touch-startup-image-1284x2778.png">
|
|
40
|
+
<link rel="apple-touch-startup-image" media="(device-width: 428px) and (device-height: 926px) and (-webkit-device-pixel-ratio: 3) and (orientation: landscape)" href="/assets/assets-for/cms/assets/generated/pwa/apple-touch-startup-image-2778x1284.png">
|
|
41
|
+
<link rel="apple-touch-startup-image" media="(device-width: 430px) and (device-height: 932px) and (-webkit-device-pixel-ratio: 3) and (orientation: portrait)" href="/assets/assets-for/cms/assets/generated/pwa/apple-touch-startup-image-1290x2796.png">
|
|
42
|
+
<link rel="apple-touch-startup-image" media="(device-width: 430px) and (device-height: 932px) and (-webkit-device-pixel-ratio: 3) and (orientation: landscape)" href="/assets/assets-for/cms/assets/generated/pwa/apple-touch-startup-image-2796x1290.png">
|
|
43
|
+
<link rel="apple-touch-startup-image" media="(device-width: 744px) and (device-height: 1133px) and (-webkit-device-pixel-ratio: 2) and (orientation: portrait)" href="/assets/assets-for/cms/assets/generated/pwa/apple-touch-startup-image-1488x2266.png">
|
|
44
|
+
<link rel="apple-touch-startup-image" media="(device-width: 744px) and (device-height: 1133px) and (-webkit-device-pixel-ratio: 2) and (orientation: landscape)" href="/assets/assets-for/cms/assets/generated/pwa/apple-touch-startup-image-2266x1488.png">
|
|
45
|
+
<link rel="apple-touch-startup-image" media="(device-width: 768px) and (device-height: 1024px) and (-webkit-device-pixel-ratio: 2) and (orientation: portrait)" href="/assets/assets-for/cms/assets/generated/pwa/apple-touch-startup-image-1536x2048.png">
|
|
46
|
+
<link rel="apple-touch-startup-image" media="(device-width: 768px) and (device-height: 1024px) and (-webkit-device-pixel-ratio: 2) and (orientation: landscape)" href="/assets/assets-for/cms/assets/generated/pwa/apple-touch-startup-image-2048x1536.png">
|
|
47
|
+
<link rel="apple-touch-startup-image" media="(device-width: 810px) and (device-height: 1080px) and (-webkit-device-pixel-ratio: 2) and (orientation: portrait)" href="/assets/assets-for/cms/assets/generated/pwa/apple-touch-startup-image-1620x2160.png">
|
|
48
|
+
<link rel="apple-touch-startup-image" media="(device-width: 810px) and (device-height: 1080px) and (-webkit-device-pixel-ratio: 2) and (orientation: landscape)" href="/assets/assets-for/cms/assets/generated/pwa/apple-touch-startup-image-2160x1620.png">
|
|
49
|
+
<link rel="apple-touch-startup-image" media="(device-width: 820px) and (device-height: 1080px) and (-webkit-device-pixel-ratio: 2) and (orientation: portrait)" href="/assets/assets-for/cms/assets/generated/pwa/apple-touch-startup-image-1640x2160.png">
|
|
50
|
+
<link rel="apple-touch-startup-image" media="(device-width: 820px) and (device-height: 1080px) and (-webkit-device-pixel-ratio: 2) and (orientation: landscape)" href="/assets/assets-for/cms/assets/generated/pwa/apple-touch-startup-image-2160x1640.png">
|
|
51
|
+
<link rel="apple-touch-startup-image" media="(device-width: 834px) and (device-height: 1194px) and (-webkit-device-pixel-ratio: 2) and (orientation: portrait)" href="/assets/assets-for/cms/assets/generated/pwa/apple-touch-startup-image-1668x2388.png">
|
|
52
|
+
<link rel="apple-touch-startup-image" media="(device-width: 834px) and (device-height: 1194px) and (-webkit-device-pixel-ratio: 2) and (orientation: landscape)" href="/assets/assets-for/cms/assets/generated/pwa/apple-touch-startup-image-2388x1668.png">
|
|
53
|
+
<link rel="apple-touch-startup-image" media="(device-width: 834px) and (device-height: 1112px) and (-webkit-device-pixel-ratio: 2) and (orientation: portrait)" href="/assets/assets-for/cms/assets/generated/pwa/apple-touch-startup-image-1668x2224.png">
|
|
54
|
+
<link rel="apple-touch-startup-image" media="(device-width: 834px) and (device-height: 1112px) and (-webkit-device-pixel-ratio: 2) and (orientation: landscape)" href="/assets/assets-for/cms/assets/generated/pwa/apple-touch-startup-image-2224x1668.png">
|
|
55
|
+
<link rel="apple-touch-startup-image" media="(device-width: 1024px) and (device-height: 1366px) and (-webkit-device-pixel-ratio: 2) and (orientation: portrait)" href="/assets/assets-for/cms/assets/generated/pwa/apple-touch-startup-image-2048x2732.png">
|
|
56
|
+
<link rel="apple-touch-startup-image" media="(device-width: 1024px) and (device-height: 1366px) and (-webkit-device-pixel-ratio: 2) and (orientation: landscape)" href="/assets/assets-for/cms/assets/generated/pwa/apple-touch-startup-image-2732x2048.png">
|
|
57
57
|
<meta name="msapplication-TileColor" content="#fff">
|
|
58
|
-
<meta name="msapplication-TileImage" content="/assets/assets-for
|
|
59
|
-
<meta name="msapplication-config" content="/assets/assets-for
|
|
60
|
-
<link rel="yandex-tableau-widget" href="/assets/assets-for
|
|
58
|
+
<meta name="msapplication-TileImage" content="/assets/assets-for/cms/assets/generated/pwa/mstile-144x144.png">
|
|
59
|
+
<meta name="msapplication-config" content="/assets/assets-for/cms/assets/generated/pwa/browserconfig.xml">
|
|
60
|
+
<link rel="yandex-tableau-widget" href="/assets/assets-for/cms/assets/generated/pwa/yandex-browser-manifest.json">
|
|
@@ -1,4 +1,9 @@
|
|
|
1
|
-
|
|
2
|
-
<
|
|
3
|
-
|
|
4
|
-
</
|
|
1
|
+
@if (!componentLoaded) {
|
|
2
|
+
<code>
|
|
3
|
+
In CMS you can manage content and settings for your website.
|
|
4
|
+
</code>
|
|
5
|
+
}
|
|
6
|
+
|
|
7
|
+
<router-outlet
|
|
8
|
+
(activate)="onRouteActivate($event)"
|
|
9
|
+
(deactivate)="onRouteDeactivate($event)"></router-outlet>
|
|
@@ -0,0 +1,183 @@
|
|
|
1
|
+
@if (mode() !== 'view-clean') {
|
|
2
|
+
<header class="post-actions">
|
|
3
|
+
<span class="post-status">{{ mode() === 'add' ? 'New draft' : currentPost()?.status }}</span>
|
|
4
|
+
<div class="buttons">
|
|
5
|
+
@if (editing()) {
|
|
6
|
+
<button mat-flat-button type="button" [disabled]="busy() || dialogOpen() || !canSave()" (click)="save()">
|
|
7
|
+
{{ mode() === 'add' ? 'Add' : 'Save' }}
|
|
8
|
+
</button>
|
|
9
|
+
<button mat-button type="button" [disabled]="busy() || dialogOpen()" (click)="cancel()">Cancel</button>
|
|
10
|
+
} @else if (currentPost()) {
|
|
11
|
+
<button mat-button type="button" [disabled]="busy() || dialogOpen()" (click)="edit()">
|
|
12
|
+
<mat-icon>edit</mat-icon> Edit
|
|
13
|
+
</button>
|
|
14
|
+
}
|
|
15
|
+
@if (mode() !== 'add' && currentPost()) {
|
|
16
|
+
@if (canPublish()) {
|
|
17
|
+
<button mat-flat-button type="button" [disabled]="busy() || dialogOpen() || (editing() && !canSave())" (click)="publish()">Publish</button>
|
|
18
|
+
}
|
|
19
|
+
<button mat-button type="button" [disabled]="busy() || dialogOpen()" (click)="revert()">
|
|
20
|
+
<mat-icon>history</mat-icon> Revert
|
|
21
|
+
</button>
|
|
22
|
+
@if (currentPost()?.status !== 'archived') {
|
|
23
|
+
<button mat-button type="button" [disabled]="busy() || dialogOpen()" (click)="delete()">
|
|
24
|
+
<mat-icon>delete</mat-icon> Delete
|
|
25
|
+
</button>
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
</div>
|
|
29
|
+
@if (busy()) {
|
|
30
|
+
<span role="status">{{ uploading() ? 'Uploading...' : 'Saving...' }}</span>
|
|
31
|
+
}
|
|
32
|
+
</header>
|
|
33
|
+
@if (error()) {
|
|
34
|
+
<p class="error" role="alert">{{ error() }}</p>
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
<article class="post-article" [attr.aria-busy]="busy()">
|
|
39
|
+
@if (editing()) {
|
|
40
|
+
<mat-radio-group
|
|
41
|
+
class="post-type-selector"
|
|
42
|
+
aria-label="Post type"
|
|
43
|
+
[value]="draft().type"
|
|
44
|
+
[disabled]="busy() || dialogOpen()"
|
|
45
|
+
(change)="updateDraft('type', $event.value)">
|
|
46
|
+
@for (type of postTypes; track type.value) {
|
|
47
|
+
<mat-radio-button [value]="type.value">{{ type.label }}</mat-radio-button>
|
|
48
|
+
}
|
|
49
|
+
</mat-radio-group>
|
|
50
|
+
<div
|
|
51
|
+
class="post-title editable"
|
|
52
|
+
contenteditable="true"
|
|
53
|
+
role="textbox"
|
|
54
|
+
aria-label="Post title"
|
|
55
|
+
aria-required="true"
|
|
56
|
+
data-placeholder="Title"
|
|
57
|
+
[attr.contenteditable]="!busy() && !dialogOpen()"
|
|
58
|
+
[taonCmsEditableSingleLine]="true"
|
|
59
|
+
[taonCmsEditable]="draft().title"
|
|
60
|
+
(taonCmsEditableChange)="updateDraft('title', $event)"></div>
|
|
61
|
+
<div
|
|
62
|
+
class="post-excerpt editable"
|
|
63
|
+
contenteditable="true"
|
|
64
|
+
role="textbox"
|
|
65
|
+
aria-label="Post excerpt"
|
|
66
|
+
aria-multiline="true"
|
|
67
|
+
data-placeholder="A short introduction..."
|
|
68
|
+
[attr.contenteditable]="!busy() && !dialogOpen()"
|
|
69
|
+
[taonCmsEditable]="draft().excerpt"
|
|
70
|
+
(taonCmsEditableChange)="updateDraft('excerpt', $event)"></div>
|
|
71
|
+
<div
|
|
72
|
+
class="post-body editable"
|
|
73
|
+
contenteditable="true"
|
|
74
|
+
role="textbox"
|
|
75
|
+
aria-label="Post body"
|
|
76
|
+
aria-multiline="true"
|
|
77
|
+
data-placeholder="Tell your story..."
|
|
78
|
+
[attr.contenteditable]="!busy() && !dialogOpen()"
|
|
79
|
+
taonCmsEditableFormat="html"
|
|
80
|
+
[taonCmsEditable]="draft().body"
|
|
81
|
+
(taonCmsEditableChange)="updateDraft('body', $event)"></div>
|
|
82
|
+
<label class="slug-field">
|
|
83
|
+
<span>URL slug</span>
|
|
84
|
+
<input aria-label="URL slug" [value]="draft().slug" [disabled]="busy() || dialogOpen()" (input)="updateSlug($event)" placeholder="my-post" />
|
|
85
|
+
</label>
|
|
86
|
+
@if (mediaAttachment(); as media) {
|
|
87
|
+
<section class="media-attachment" aria-labelledby="media-attachment-heading">
|
|
88
|
+
<h2 id="media-attachment-heading">{{ media.heading }}</h2>
|
|
89
|
+
@if (draft()[media.key]; as key) {
|
|
90
|
+
<p>Attached file: {{ key }}</p>
|
|
91
|
+
<button mat-button type="button" [disabled]="busy() || dialogOpen()" (click)="removeMedia()">Remove</button>
|
|
92
|
+
} @else {
|
|
93
|
+
<input
|
|
94
|
+
#mediaInput
|
|
95
|
+
hidden
|
|
96
|
+
type="file"
|
|
97
|
+
[accept]="media.accept"
|
|
98
|
+
[disabled]="busy() || dialogOpen()"
|
|
99
|
+
(change)="fileSelected($event)" />
|
|
100
|
+
<button mat-button type="button" [disabled]="busy() || dialogOpen()" (click)="mediaInput.click()">{{ media.uploadLabel }}</button>
|
|
101
|
+
}
|
|
102
|
+
</section>
|
|
103
|
+
}
|
|
104
|
+
<section class="related-posts" aria-labelledby="related-posts-heading">
|
|
105
|
+
<h2 id="related-posts-heading">Related posts</h2>
|
|
106
|
+
@if (relatedPostsLoading()) {
|
|
107
|
+
<p role="status">Loading related posts...</p>
|
|
108
|
+
} @else if (relatedPostsError()) {
|
|
109
|
+
<p class="error" role="alert">{{ relatedPostsError() }}</p>
|
|
110
|
+
<button mat-button type="button" [disabled]="busy() || dialogOpen()" (click)="loadRelatedPosts()">Try again</button>
|
|
111
|
+
} @else {
|
|
112
|
+
<ul>
|
|
113
|
+
@for (post of relatedPosts(); track post.id) {
|
|
114
|
+
<li>
|
|
115
|
+
<span>#{{ post.id }} - {{ post.title }}</span>
|
|
116
|
+
<button mat-icon-button type="button" [attr.aria-label]="'Remove related post ' + post.title" [disabled]="busy() || dialogOpen()" (click)="removeRelatedPost(post.id)">
|
|
117
|
+
<mat-icon>close</mat-icon>
|
|
118
|
+
</button>
|
|
119
|
+
</li>
|
|
120
|
+
} @empty {
|
|
121
|
+
<li>No related posts yet.</li>
|
|
122
|
+
}
|
|
123
|
+
</ul>
|
|
124
|
+
<button mat-button type="button" [disabled]="busy() || dialogOpen()" (click)="addRelatedPost()">
|
|
125
|
+
<mat-icon>add</mat-icon> Add related post
|
|
126
|
+
</button>
|
|
127
|
+
}
|
|
128
|
+
</section>
|
|
129
|
+
<section class="post-permissions" aria-labelledby="post-permissions-heading">
|
|
130
|
+
<h2 id="post-permissions-heading">Allow Read only with Permissions</h2>
|
|
131
|
+
@if (permissionsLoading()) {
|
|
132
|
+
<p role="status">Loading assigned permissions...</p>
|
|
133
|
+
} @else if (permissionsError()) {
|
|
134
|
+
<p class="error" role="alert">{{ permissionsError() }}</p>
|
|
135
|
+
<button mat-button type="button" [disabled]="busy() || dialogOpen()" (click)="loadPermissions()">Try again</button>
|
|
136
|
+
} @else {
|
|
137
|
+
<ul>
|
|
138
|
+
@for (permission of permissions(); track permission.id) {
|
|
139
|
+
<li>
|
|
140
|
+
<span>{{ permission.name }} ({{ permission.code }})</span>
|
|
141
|
+
<button mat-icon-button type="button" [attr.aria-label]="'Remove permission ' + permission.name" [disabled]="busy() || dialogOpen()" (click)="removePermission(permission.id)">
|
|
142
|
+
<mat-icon>close</mat-icon>
|
|
143
|
+
</button>
|
|
144
|
+
</li>
|
|
145
|
+
} @empty {
|
|
146
|
+
<li>No permissions assigned.</li>
|
|
147
|
+
}
|
|
148
|
+
</ul>
|
|
149
|
+
@if (permissionOptionsError()) {
|
|
150
|
+
<p class="error" role="alert">{{ permissionOptionsError() }}</p>
|
|
151
|
+
<button mat-button type="button" [disabled]="busy() || dialogOpen() || permissionOptionsLoading()" (click)="loadPermissionOptions()">Try again</button>
|
|
152
|
+
} @else {
|
|
153
|
+
<div class="permission-assignment">
|
|
154
|
+
<mat-form-field appearance="outline" subscriptSizing="dynamic">
|
|
155
|
+
<mat-label>Permission</mat-label>
|
|
156
|
+
<mat-select
|
|
157
|
+
[value]="selectedPermissionId()"
|
|
158
|
+
[disabled]="busy() || dialogOpen() || permissionOptionsLoading()"
|
|
159
|
+
(selectionChange)="selectedPermissionId.set($event.value)">
|
|
160
|
+
@for (permission of availablePermissions(); track permission.id) {
|
|
161
|
+
<mat-option [value]="permission.id">{{ permission.name }} ({{ permission.code }})</mat-option>
|
|
162
|
+
} @empty {
|
|
163
|
+
<mat-option [disabled]="true">No permissions available</mat-option>
|
|
164
|
+
}
|
|
165
|
+
</mat-select>
|
|
166
|
+
</mat-form-field>
|
|
167
|
+
<button mat-button type="button" [disabled]="busy() || dialogOpen() || !selectedPermissionId()" (click)="addPermission()">
|
|
168
|
+
<mat-icon>add</mat-icon> Assign permission
|
|
169
|
+
</button>
|
|
170
|
+
</div>
|
|
171
|
+
}
|
|
172
|
+
}
|
|
173
|
+
</section>
|
|
174
|
+
} @else if (currentPost(); as post) {
|
|
175
|
+
<h1 class="post-title">{{ post.title }}</h1>
|
|
176
|
+
@if (post.excerpt) {
|
|
177
|
+
<p class="post-excerpt">{{ post.excerpt }}</p>
|
|
178
|
+
}
|
|
179
|
+
<div class="post-body" [innerHTML]="post.body"></div>
|
|
180
|
+
} @else {
|
|
181
|
+
<p role="status">No post is loaded.</p>
|
|
182
|
+
}
|
|
183
|
+
</article>
|
package/html/lib/taon-posts/taon-cms-post-edit-dialog/taon-cms-post-edit-dialog.component.html
ADDED
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
<header class="dialog-header">
|
|
2
|
+
<h2>{{ data.mode === 'add' ? 'Add post' : 'Manage post' }}</h2>
|
|
3
|
+
<button mat-icon-button type="button" aria-label="Close post editor" [disabled]="editor()?.busy() || editor()?.dialogOpen()" (click)="close()">
|
|
4
|
+
<mat-icon>close</mat-icon>
|
|
5
|
+
</button>
|
|
6
|
+
</header>
|
|
7
|
+
<taon-cms-post
|
|
8
|
+
[post]="data.post ?? null"
|
|
9
|
+
[mode]="data.mode"
|
|
10
|
+
(changed)="changed.emit($event)"
|
|
11
|
+
(deleted)="deleted($event)"
|
|
12
|
+
(cancelled)="close()" />
|
package/html/lib/taon-posts/taon-cms-posts-backoffice/taon-cms-posts-backoffice.component.html
ADDED
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
<h1>CMS posts</h1>
|
|
2
|
+
@if (loading()) {
|
|
3
|
+
<p role="status">Loading posts...</p>
|
|
4
|
+
}
|
|
5
|
+
@if (error()) {
|
|
6
|
+
<p role="alert">{{ error() }}</p>
|
|
7
|
+
}
|
|
8
|
+
<taon-datatable
|
|
9
|
+
[entityCrudController]="crud"
|
|
10
|
+
[columns]="columns"
|
|
11
|
+
[allowedColumns]="['id', 'title', 'status']"
|
|
12
|
+
searchMode="advanced"
|
|
13
|
+
(addingItem)="add()">
|
|
14
|
+
</taon-datatable>
|
package/html/lib/taon-posts/taon-cms-revision-chooser/taon-cms-revision-chooser.component.html
ADDED
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
<h2 mat-dialog-title>Restore a revision</h2>
|
|
2
|
+
<mat-dialog-content>
|
|
3
|
+
<p>Restoring replaces the post, including its status, with the selected revision.</p>
|
|
4
|
+
@if (loading()) {
|
|
5
|
+
<p role="status">Loading revisions...</p>
|
|
6
|
+
} @else {
|
|
7
|
+
<mat-radio-group aria-label="Post revisions" [value]="selected()" (change)="selected.set($event.value)" [disabled]="applying()">
|
|
8
|
+
@for (revision of revisions(); track revision.id) {
|
|
9
|
+
<mat-radio-button [value]="revision.revisionNumber" [disabled]="!revision.snapshot">
|
|
10
|
+
<strong>Revision {{ revision.revisionNumber }}</strong>
|
|
11
|
+
<span>{{ revision.createdAt | date: 'medium' }}</span>
|
|
12
|
+
@if (revision.createdByUserId !== null && revision.createdByUserId !== undefined) {
|
|
13
|
+
<span>User {{ revision.createdByUserId }}</span>
|
|
14
|
+
}
|
|
15
|
+
@if (!revision.snapshot) {
|
|
16
|
+
<span>Legacy revision - cannot be restored</span>
|
|
17
|
+
}
|
|
18
|
+
</mat-radio-button>
|
|
19
|
+
} @empty {
|
|
20
|
+
<p>No revisions are available.</p>
|
|
21
|
+
}
|
|
22
|
+
</mat-radio-group>
|
|
23
|
+
}
|
|
24
|
+
@if (error()) {
|
|
25
|
+
<p role="alert">{{ error() }}</p>
|
|
26
|
+
<button mat-button type="button" [disabled]="loading() || applying()" (click)="load()">Reload revisions</button>
|
|
27
|
+
}
|
|
28
|
+
@if (applying()) {
|
|
29
|
+
<p role="status">Restoring...</p>
|
|
30
|
+
}
|
|
31
|
+
</mat-dialog-content>
|
|
32
|
+
<mat-dialog-actions align="end">
|
|
33
|
+
<button mat-button type="button" [disabled]="applying()" (click)="cancel()">Cancel</button>
|
|
34
|
+
<button mat-flat-button type="button" [disabled]="loading() || applying() || selected() === null" (click)="apply()">Apply</button>
|
|
35
|
+
</mat-dialog-actions>
|
package/html/lib/taon-posts/taon-related-post-chooser/taon-related-post-chooser.component.html
ADDED
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
<h2 mat-dialog-title>Add related post</h2>
|
|
2
|
+
<mat-dialog-content>
|
|
3
|
+
<label class="search-field">
|
|
4
|
+
<span>Search posts</span>
|
|
5
|
+
<input type="search" aria-label="Search posts by ID, title or slug" [value]="query()" [disabled]="loading()" (input)="search($event)" />
|
|
6
|
+
</label>
|
|
7
|
+
@if (loading()) {
|
|
8
|
+
<p role="status">Loading posts...</p>
|
|
9
|
+
} @else if (error()) {
|
|
10
|
+
<p class="error" role="alert">{{ error() }}</p>
|
|
11
|
+
<button mat-button type="button" (click)="load()">Try again</button>
|
|
12
|
+
} @else {
|
|
13
|
+
<mat-radio-group aria-label="Related post" [value]="selected()" (change)="selected.set($event.value)">
|
|
14
|
+
@for (post of filteredPosts(); track post.id) {
|
|
15
|
+
<mat-radio-button [value]="post.id">
|
|
16
|
+
#{{ post.id }} - {{ post.title }} <span class="slug">{{ post.slug }}</span>
|
|
17
|
+
</mat-radio-button>
|
|
18
|
+
} @empty {
|
|
19
|
+
<p>No matching posts available.</p>
|
|
20
|
+
}
|
|
21
|
+
</mat-radio-group>
|
|
22
|
+
}
|
|
23
|
+
</mat-dialog-content>
|
|
24
|
+
<mat-dialog-actions align="end">
|
|
25
|
+
<button mat-button type="button" (click)="cancel()">Cancel</button>
|
|
26
|
+
<button mat-flat-button type="button" [disabled]="loading() || !!error() || selected() === null" (click)="choose()">Add related post</button>
|
|
27
|
+
</mat-dialog-actions>
|
|
@@ -1,15 +1,7 @@
|
|
|
1
1
|
export interface EnUsTraslationOverrideSrcAppTs {
|
|
2
2
|
"en-US": {
|
|
3
3
|
"": {
|
|
4
|
-
"Add new example user with random name"?: string;
|
|
5
|
-
"Angular version:"?: string;
|
|
6
|
-
"Basic app info"?: string;
|
|
7
|
-
"Copyright"?: string;
|
|
8
|
-
"Example hello world from backend API:"?: string;
|
|
9
4
|
"Example users from backend API:"?: string;
|
|
10
|
-
"Name"?: string;
|
|
11
|
-
"Taon backend:"?: string;
|
|
12
|
-
"hello world from backend:"?: string;
|
|
13
5
|
};
|
|
14
6
|
};
|
|
15
7
|
}
|
|
@@ -1,15 +1,7 @@
|
|
|
1
1
|
export interface PlPlTraslationOverrideSrcAppTs {
|
|
2
2
|
"pl-PL": {
|
|
3
3
|
"": {
|
|
4
|
-
"Add new example user with random name"?: string;
|
|
5
|
-
"Angular version:"?: string;
|
|
6
|
-
"Basic app info"?: string;
|
|
7
|
-
"Copyright"?: string;
|
|
8
|
-
"Example hello world from backend API:"?: string;
|
|
9
4
|
"Example users from backend API:"?: string;
|
|
10
|
-
"Name"?: string;
|
|
11
|
-
"Taon backend:"?: string;
|
|
12
|
-
"hello world from backend:"?: string;
|
|
13
5
|
};
|
|
14
6
|
};
|
|
15
7
|
}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { TaonAuthorizationSchema } from '@taon-dev/session';
|
|
2
|
+
export declare enum MyAppGroup {
|
|
3
|
+
Administrator = "administrator",
|
|
4
|
+
Customers = "customers"
|
|
5
|
+
}
|
|
6
|
+
export declare enum MyAppRole {
|
|
7
|
+
MangePosts = "manage-posts",
|
|
8
|
+
Customer = "Customer",
|
|
9
|
+
CustomerPremium = "CustomerPremium",
|
|
10
|
+
BlogReader = "BlogReader"
|
|
11
|
+
}
|
|
12
|
+
export declare enum MyAppPermission {
|
|
13
|
+
AccessToAllEmails = "AccessToAllEmails",
|
|
14
|
+
AccessCourseP1 = "AccessCourseP1",
|
|
15
|
+
AccessCourseP2 = "AccessCourseP2",
|
|
16
|
+
AccessCoursePremium = "AccessCoursePremium"
|
|
17
|
+
}
|
|
18
|
+
export interface MyAppAuthorization extends TaonAuthorizationSchema {
|
|
19
|
+
group: MyAppGroup;
|
|
20
|
+
role: MyAppRole;
|
|
21
|
+
permission: MyAppPermission;
|
|
22
|
+
}
|
package/lib/app.data.js
ADDED
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.MyAppPermission = exports.MyAppRole = exports.MyAppGroup = void 0;
|
|
4
|
+
var MyAppGroup;
|
|
5
|
+
(function (MyAppGroup) {
|
|
6
|
+
MyAppGroup["Administrator"] = "administrator";
|
|
7
|
+
MyAppGroup["Customers"] = "customers";
|
|
8
|
+
})(MyAppGroup || (exports.MyAppGroup = MyAppGroup = {}));
|
|
9
|
+
var MyAppRole;
|
|
10
|
+
(function (MyAppRole) {
|
|
11
|
+
MyAppRole["MangePosts"] = "manage-posts";
|
|
12
|
+
MyAppRole["Customer"] = "Customer";
|
|
13
|
+
MyAppRole["CustomerPremium"] = "CustomerPremium";
|
|
14
|
+
MyAppRole["BlogReader"] = "BlogReader";
|
|
15
|
+
})(MyAppRole || (exports.MyAppRole = MyAppRole = {}));
|
|
16
|
+
var MyAppPermission;
|
|
17
|
+
(function (MyAppPermission) {
|
|
18
|
+
MyAppPermission["AccessToAllEmails"] = "AccessToAllEmails";
|
|
19
|
+
MyAppPermission["AccessCourseP1"] = "AccessCourseP1";
|
|
20
|
+
MyAppPermission["AccessCourseP2"] = "AccessCourseP2";
|
|
21
|
+
MyAppPermission["AccessCoursePremium"] = "AccessCoursePremium";
|
|
22
|
+
})(MyAppPermission || (exports.MyAppPermission = MyAppPermission = {}));
|
|
23
|
+
//# sourceMappingURL=app.data.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"app.data.js","sourceRoot":"","sources":[""],"names":[],"mappings":";;;AAEA,IAAY,UAGX;AAHD,WAAY,UAAU;IACpB,6CAA+B,CAAA;IAC/B,qCAAuB,CAAA;AACzB,CAAC,EAHW,UAAU,0BAAV,UAAU,QAGrB;AAED,IAAY,SAKX;AALD,WAAY,SAAS;IACnB,wCAA2B,CAAA;IAC3B,kCAAqB,CAAA;IACrB,gDAAmC,CAAA;IACnC,sCAAyB,CAAA;AAC3B,CAAC,EALW,SAAS,yBAAT,SAAS,QAKpB;AAED,IAAY,eAKX;AALD,WAAY,eAAe;IACzB,0DAAuC,CAAA;IACvC,oDAAiC,CAAA;IACjC,oDAAiC,CAAA;IACjC,8DAA2C,CAAA;AAC7C,CAAC,EALW,eAAe,+BAAf,eAAe,QAK1B"}
|
|
@@ -25,6 +25,6 @@ exports.CURRENT_PACKAGE_TAON_VERSION = 'v21';
|
|
|
25
25
|
/**
|
|
26
26
|
* Autogenerated by current cli tool. Use *tnp release* to bump version.
|
|
27
27
|
*/
|
|
28
|
-
exports.CURRENT_PACKAGE_VERSION = '21.0.
|
|
28
|
+
exports.CURRENT_PACKAGE_VERSION = '21.0.6';
|
|
29
29
|
// THIS FILE IS GENERATED - DO NOT MODIFY
|
|
30
30
|
//# sourceMappingURL=build-info._auto-generated_.js.map
|
|
@@ -1,3 +1,6 @@
|
|
|
1
|
+
export declare const ENV_ANGULAR_NODE_APP_CONFIG_SUPER_USERS: () => Promise<string>;
|
|
2
|
+
export declare const ENV_ANGULAR_NODE_APP_CONFIG_GOOGLE_SECRET: () => Promise<string>;
|
|
3
|
+
export declare const ENV_ANGULAR_NODE_APP_CONFIG_GOOGLE_CLIENT_ID = "289576612173-2mh31b67pmq2qdes5jedno9tr1m542es.apps.googleusercontent.com";
|
|
1
4
|
export declare const ENV_ANGULAR_NODE_APP_LOADING_PRE_ANGULAR_BOOTSTRAP_BACKGROUND = "#fdebed";
|
|
2
5
|
export declare const ENV_ANGULAR_NODE_APP_LOADING_PRE_ANGULAR_BOOTSTRAP_LOADER_NAME = "lds-default";
|
|
3
6
|
export declare const ENV_ANGULAR_NODE_APP_WEBSITE_DOMAIN = "cms.example.domain.com";
|