@paroicms/server 0.146.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +3 -0
- package/ddl/main.ddl.sql +84 -0
- package/dist/backup/site/archiver.helper.d.ts +12 -0
- package/dist/backup/site/archiver.helper.js +46 -0
- package/dist/backup/site/archiver.helper.js.map +1 -0
- package/dist/backup/site/backup.d.ts +5 -0
- package/dist/backup/site/backup.js +118 -0
- package/dist/backup/site/backup.js.map +1 -0
- package/dist/cli.d.ts +2 -0
- package/dist/cli.js +5 -0
- package/dist/cli.js.map +1 -0
- package/dist/common/child-ordering-query.d.ts +13 -0
- package/dist/common/child-ordering-query.js +107 -0
- package/dist/common/child-ordering-query.js.map +1 -0
- package/dist/common/data-format.d.ts +19 -0
- package/dist/common/data-format.js +86 -0
- package/dist/common/data-format.js.map +1 -0
- package/dist/common/mail/html-helpers.d.ts +7 -0
- package/dist/common/mail/html-helpers.js +46 -0
- package/dist/common/mail/html-helpers.js.map +1 -0
- package/dist/common/mail/sendMail.helpers.d.ts +14 -0
- package/dist/common/mail/sendMail.helpers.js +51 -0
- package/dist/common/mail/sendMail.helpers.js.map +1 -0
- package/dist/common/media-handles.helpers.d.ts +19 -0
- package/dist/common/media-handles.helpers.js +52 -0
- package/dist/common/media-handles.helpers.js.map +1 -0
- package/dist/common/serve-html-or.d.ts +16 -0
- package/dist/common/serve-html-or.js +72 -0
- package/dist/common/serve-html-or.js.map +1 -0
- package/dist/common/text-cache.d.ts +57 -0
- package/dist/common/text-cache.js +87 -0
- package/dist/common/text-cache.js.map +1 -0
- package/dist/common/tracker-report.d.ts +2 -0
- package/dist/common/tracker-report.js +27 -0
- package/dist/common/tracker-report.js.map +1 -0
- package/dist/context.d.ts +29 -0
- package/dist/context.js +60 -0
- package/dist/context.js.map +1 -0
- package/dist/express/http-helpers.d.ts +16 -0
- package/dist/express/http-helpers.js +44 -0
- package/dist/express/http-helpers.js.map +1 -0
- package/dist/express/static-middlewares.d.ts +3 -0
- package/dist/express/static-middlewares.js +114 -0
- package/dist/express/static-middlewares.js.map +1 -0
- package/dist/helpers/configuration.helpers.d.ts +2 -0
- package/dist/helpers/configuration.helpers.js +8 -0
- package/dist/helpers/configuration.helpers.js.map +1 -0
- package/dist/helpers/excerpt.helpers.d.ts +2 -0
- package/dist/helpers/excerpt.helpers.js +31 -0
- package/dist/helpers/excerpt.helpers.js.map +1 -0
- package/dist/helpers/excerpt.helpers.spec.d.ts +1 -0
- package/dist/helpers/excerpt.helpers.spec.js +133 -0
- package/dist/helpers/excerpt.helpers.spec.js.map +1 -0
- package/dist/helpers/jwt-secret.helpers.d.ts +2 -0
- package/dist/helpers/jwt-secret.helpers.js +30 -0
- package/dist/helpers/jwt-secret.helpers.js.map +1 -0
- package/dist/helpers/label-translator.helper.d.ts +9 -0
- package/dist/helpers/label-translator.helper.js +14 -0
- package/dist/helpers/label-translator.helper.js.map +1 -0
- package/dist/helpers/passwordEncrypt-helper.d.ts +2 -0
- package/dist/helpers/passwordEncrypt-helper.js +37 -0
- package/dist/helpers/passwordEncrypt-helper.js.map +1 -0
- package/dist/helpers/relative-id-helper.d.ts +10 -0
- package/dist/helpers/relative-id-helper.js +37 -0
- package/dist/helpers/relative-id-helper.js.map +1 -0
- package/dist/helpers/search-text-helper.d.ts +7 -0
- package/dist/helpers/search-text-helper.js +27 -0
- package/dist/helpers/search-text-helper.js.map +1 -0
- package/dist/helpers/simple-i18n.d.ts +14 -0
- package/dist/helpers/simple-i18n.js +82 -0
- package/dist/helpers/simple-i18n.js.map +1 -0
- package/dist/helpers/special-account.helpers.d.ts +9 -0
- package/dist/helpers/special-account.helpers.js +43 -0
- package/dist/helpers/special-account.helpers.js.map +1 -0
- package/dist/helpers/url.helpers.d.ts +2 -0
- package/dist/helpers/url.helpers.js +12 -0
- package/dist/helpers/url.helpers.js.map +1 -0
- package/dist/helpers/utils-helper.d.ts +4 -0
- package/dist/helpers/utils-helper.js +32 -0
- package/dist/helpers/utils-helper.js.map +1 -0
- package/dist/index.d.ts +7 -0
- package/dist/index.js +67 -0
- package/dist/index.js.map +1 -0
- package/dist/maintenance/maintenance-task.d.ts +4 -0
- package/dist/maintenance/maintenance-task.js +27 -0
- package/dist/maintenance/maintenance-task.js.map +1 -0
- package/dist/maintenance/shutdown.d.ts +7 -0
- package/dist/maintenance/shutdown.js +51 -0
- package/dist/maintenance/shutdown.js.map +1 -0
- package/dist/modules/app.controller.d.ts +5 -0
- package/dist/modules/app.controller.js +89 -0
- package/dist/modules/app.controller.js.map +1 -0
- package/dist/modules/app.module.d.ts +2 -0
- package/dist/modules/app.module.js +48 -0
- package/dist/modules/app.module.js.map +1 -0
- package/dist/modules/core/account/account.model.d.ts +18 -0
- package/dist/modules/core/account/account.model.js +59 -0
- package/dist/modules/core/account/account.model.js.map +1 -0
- package/dist/modules/core/account/account.module.d.ts +2 -0
- package/dist/modules/core/account/account.module.js +20 -0
- package/dist/modules/core/account/account.module.js.map +1 -0
- package/dist/modules/core/account/account.queries.d.ts +18 -0
- package/dist/modules/core/account/account.queries.js +150 -0
- package/dist/modules/core/account/account.queries.js.map +1 -0
- package/dist/modules/core/account/account.resolver.d.ts +11 -0
- package/dist/modules/core/account/account.resolver.js +107 -0
- package/dist/modules/core/account/account.resolver.js.map +1 -0
- package/dist/modules/core/account/account.schema.d.ts +24 -0
- package/dist/modules/core/account/account.schema.js +114 -0
- package/dist/modules/core/account/account.schema.js.map +1 -0
- package/dist/modules/core/account-auth/account-auth.controller.d.ts +5 -0
- package/dist/modules/core/account-auth/account-auth.controller.js +46 -0
- package/dist/modules/core/account-auth/account-auth.controller.js.map +1 -0
- package/dist/modules/core/account-auth/account-auth.module.d.ts +2 -0
- package/dist/modules/core/account-auth/account-auth.module.js +24 -0
- package/dist/modules/core/account-auth/account-auth.module.js.map +1 -0
- package/dist/modules/core/account-auth/account-auth.service.d.ts +5 -0
- package/dist/modules/core/account-auth/account-auth.service.js +41 -0
- package/dist/modules/core/account-auth/account-auth.service.js.map +1 -0
- package/dist/modules/core/account-auth/account-auth.strategy.d.ts +10 -0
- package/dist/modules/core/account-auth/account-auth.strategy.js +49 -0
- package/dist/modules/core/account-auth/account-auth.strategy.js.map +1 -0
- package/dist/modules/core/auth/auth.module.d.ts +2 -0
- package/dist/modules/core/auth/auth.module.js +35 -0
- package/dist/modules/core/auth/auth.module.js.map +1 -0
- package/dist/modules/core/auth/auth.service.d.ts +11 -0
- package/dist/modules/core/auth/auth.service.js +164 -0
- package/dist/modules/core/auth/auth.service.js.map +1 -0
- package/dist/modules/core/auth/auth.types.d.ts +27 -0
- package/dist/modules/core/auth/auth.types.js +3 -0
- package/dist/modules/core/auth/auth.types.js.map +1 -0
- package/dist/modules/core/auth/jwt.auth.guard.d.ts +6 -0
- package/dist/modules/core/auth/jwt.auth.guard.js +23 -0
- package/dist/modules/core/auth/jwt.auth.guard.js.map +1 -0
- package/dist/modules/core/auth/jwt.strategy.d.ts +10 -0
- package/dist/modules/core/auth/jwt.strategy.js +35 -0
- package/dist/modules/core/auth/jwt.strategy.js.map +1 -0
- package/dist/modules/core/backup/backup.controller.d.ts +7 -0
- package/dist/modules/core/backup/backup.controller.js +61 -0
- package/dist/modules/core/backup/backup.controller.js.map +1 -0
- package/dist/modules/core/backup/backup.module.d.ts +2 -0
- package/dist/modules/core/backup/backup.module.js +22 -0
- package/dist/modules/core/backup/backup.module.js.map +1 -0
- package/dist/modules/core/backup/backup.resolver.d.ts +8 -0
- package/dist/modules/core/backup/backup.resolver.js +54 -0
- package/dist/modules/core/backup/backup.resolver.js.map +1 -0
- package/dist/modules/core/backup/backup.shema.d.ts +4 -0
- package/dist/modules/core/backup/backup.shema.js +30 -0
- package/dist/modules/core/backup/backup.shema.js.map +1 -0
- package/dist/modules/core/core.module.d.ts +2 -0
- package/dist/modules/core/core.module.js +50 -0
- package/dist/modules/core/core.module.js.map +1 -0
- package/dist/modules/core/document/document.helper.d.ts +2 -0
- package/dist/modules/core/document/document.helper.js +10 -0
- package/dist/modules/core/document/document.helper.js.map +1 -0
- package/dist/modules/core/document/document.model.d.ts +9 -0
- package/dist/modules/core/document/document.model.js +59 -0
- package/dist/modules/core/document/document.model.js.map +1 -0
- package/dist/modules/core/document/document.module.d.ts +2 -0
- package/dist/modules/core/document/document.module.js +25 -0
- package/dist/modules/core/document/document.module.js.map +1 -0
- package/dist/modules/core/document/document.resolver.d.ts +12 -0
- package/dist/modules/core/document/document.resolver.extend.d.ts +10 -0
- package/dist/modules/core/document/document.resolver.extend.js +69 -0
- package/dist/modules/core/document/document.resolver.extend.js.map +1 -0
- package/dist/modules/core/document/document.resolver.js +154 -0
- package/dist/modules/core/document/document.resolver.js.map +1 -0
- package/dist/modules/core/document/document.schema.d.ts +39 -0
- package/dist/modules/core/document/document.schema.js +181 -0
- package/dist/modules/core/document/document.schema.js.map +1 -0
- package/dist/modules/core/document/load-documents.queries.d.ts +17 -0
- package/dist/modules/core/document/load-documents.queries.js +119 -0
- package/dist/modules/core/document/load-documents.queries.js.map +1 -0
- package/dist/modules/core/document/save-documents.queries.d.ts +18 -0
- package/dist/modules/core/document/save-documents.queries.js +199 -0
- package/dist/modules/core/document/save-documents.queries.js.map +1 -0
- package/dist/modules/core/document/search-document-item.resolver.d.ts +7 -0
- package/dist/modules/core/document/search-document-item.resolver.js +58 -0
- package/dist/modules/core/document/search-document-item.resolver.js.map +1 -0
- package/dist/modules/core/fields/_fields.helpers.d.ts +2 -0
- package/dist/modules/core/fields/_fields.helpers.js +12 -0
- package/dist/modules/core/fields/_fields.helpers.js.map +1 -0
- package/dist/modules/core/fields/fields.model.d.ts +17 -0
- package/dist/modules/core/fields/fields.model.js +99 -0
- package/dist/modules/core/fields/fields.model.js.map +1 -0
- package/dist/modules/core/fields/fields.module.d.ts +2 -0
- package/dist/modules/core/fields/fields.module.js +20 -0
- package/dist/modules/core/fields/fields.module.js.map +1 -0
- package/dist/modules/core/fields/fields.resolver.d.ts +14 -0
- package/dist/modules/core/fields/fields.resolver.js +165 -0
- package/dist/modules/core/fields/fields.resolver.js.map +1 -0
- package/dist/modules/core/fields/load-fields.queries.d.ts +20 -0
- package/dist/modules/core/fields/load-fields.queries.js +233 -0
- package/dist/modules/core/fields/load-fields.queries.js.map +1 -0
- package/dist/modules/core/fields/quill-delta.d.ts +1 -0
- package/dist/modules/core/fields/quill-delta.js +40 -0
- package/dist/modules/core/fields/quill-delta.js.map +1 -0
- package/dist/modules/core/fields/save-fields.queries.d.ts +9 -0
- package/dist/modules/core/fields/save-fields.queries.js +135 -0
- package/dist/modules/core/fields/save-fields.queries.js.map +1 -0
- package/dist/modules/core/leaf/leaf.model.d.ts +9 -0
- package/dist/modules/core/leaf/leaf.model.js +61 -0
- package/dist/modules/core/leaf/leaf.model.js.map +1 -0
- package/dist/modules/core/leaf/leaf.module.d.ts +2 -0
- package/dist/modules/core/leaf/leaf.module.js +21 -0
- package/dist/modules/core/leaf/leaf.module.js.map +1 -0
- package/dist/modules/core/leaf/leaf.queries.d.ts +21 -0
- package/dist/modules/core/leaf/leaf.queries.js +143 -0
- package/dist/modules/core/leaf/leaf.queries.js.map +1 -0
- package/dist/modules/core/leaf/leaf.resolver.d.ts +9 -0
- package/dist/modules/core/leaf/leaf.resolver.extend.d.ts +6 -0
- package/dist/modules/core/leaf/leaf.resolver.extend.js +42 -0
- package/dist/modules/core/leaf/leaf.resolver.extend.js.map +1 -0
- package/dist/modules/core/leaf/leaf.resolver.js +84 -0
- package/dist/modules/core/leaf/leaf.resolver.js.map +1 -0
- package/dist/modules/core/leaf/leaf.schema.d.ts +7 -0
- package/dist/modules/core/leaf/leaf.schema.js +45 -0
- package/dist/modules/core/leaf/leaf.schema.js.map +1 -0
- package/dist/modules/core/leaf-item/leaf-item.model.d.ts +6 -0
- package/dist/modules/core/leaf-item/leaf-item.model.js +44 -0
- package/dist/modules/core/leaf-item/leaf-item.model.js.map +1 -0
- package/dist/modules/core/leaf-item/leaf-item.queries.d.ts +9 -0
- package/dist/modules/core/leaf-item/leaf-item.queries.js +120 -0
- package/dist/modules/core/leaf-item/leaf-item.queries.js.map +1 -0
- package/dist/modules/core/login/login.controller.d.ts +8 -0
- package/dist/modules/core/login/login.controller.js +54 -0
- package/dist/modules/core/login/login.controller.js.map +1 -0
- package/dist/modules/core/login/login.module.d.ts +2 -0
- package/dist/modules/core/login/login.module.js +22 -0
- package/dist/modules/core/login/login.module.js.map +1 -0
- package/dist/modules/core/media/media-upload.controller.d.ts +21 -0
- package/dist/modules/core/media/media-upload.controller.js +160 -0
- package/dist/modules/core/media/media-upload.controller.js.map +1 -0
- package/dist/modules/core/media/media.d.ts +22 -0
- package/dist/modules/core/media/media.js +53 -0
- package/dist/modules/core/media/media.js.map +1 -0
- package/dist/modules/core/media/media.module.d.ts +2 -0
- package/dist/modules/core/media/media.module.js +22 -0
- package/dist/modules/core/media/media.module.js.map +1 -0
- package/dist/modules/core/media/media.resolver.d.ts +14 -0
- package/dist/modules/core/media/media.resolver.js +199 -0
- package/dist/modules/core/media/media.resolver.js.map +1 -0
- package/dist/modules/core/media/media.schema.d.ts +30 -0
- package/dist/modules/core/media/media.schema.js +144 -0
- package/dist/modules/core/media/media.schema.js.map +1 -0
- package/dist/modules/core/part/part.model.d.ts +6 -0
- package/dist/modules/core/part/part.model.js +44 -0
- package/dist/modules/core/part/part.model.js.map +1 -0
- package/dist/modules/core/part/part.module.d.ts +2 -0
- package/dist/modules/core/part/part.module.js +21 -0
- package/dist/modules/core/part/part.module.js.map +1 -0
- package/dist/modules/core/part/part.queries.d.ts +22 -0
- package/dist/modules/core/part/part.queries.js +167 -0
- package/dist/modules/core/part/part.queries.js.map +1 -0
- package/dist/modules/core/part/part.resolver.d.ts +14 -0
- package/dist/modules/core/part/part.resolver.extend.d.ts +5 -0
- package/dist/modules/core/part/part.resolver.extend.js +49 -0
- package/dist/modules/core/part/part.resolver.extend.js.map +1 -0
- package/dist/modules/core/part/part.resolver.js +135 -0
- package/dist/modules/core/part/part.resolver.js.map +1 -0
- package/dist/modules/core/part/part.schema.d.ts +12 -0
- package/dist/modules/core/part/part.schema.js +66 -0
- package/dist/modules/core/part/part.schema.js.map +1 -0
- package/dist/modules/core/section/section-wrap.resolver.d.ts +11 -0
- package/dist/modules/core/section/section-wrap.resolver.js +168 -0
- package/dist/modules/core/section/section-wrap.resolver.js.map +1 -0
- package/dist/modules/core/section/section.model.d.ts +6 -0
- package/dist/modules/core/section/section.model.js +44 -0
- package/dist/modules/core/section/section.model.js.map +1 -0
- package/dist/modules/core/section/section.module.d.ts +2 -0
- package/dist/modules/core/section/section.module.js +21 -0
- package/dist/modules/core/section/section.module.js.map +1 -0
- package/dist/modules/core/section/section.queries.d.ts +51 -0
- package/dist/modules/core/section/section.queries.js +228 -0
- package/dist/modules/core/section/section.queries.js.map +1 -0
- package/dist/modules/core/section/section.resolver.d.ts +7 -0
- package/dist/modules/core/section/section.resolver.js +78 -0
- package/dist/modules/core/section/section.resolver.js.map +1 -0
- package/dist/modules/core/section/section.schema.d.ts +27 -0
- package/dist/modules/core/section/section.schema.js +129 -0
- package/dist/modules/core/section/section.schema.js.map +1 -0
- package/dist/modules/core/site-fields/site-fields.model.d.ts +4 -0
- package/dist/modules/core/site-fields/site-fields.model.js +30 -0
- package/dist/modules/core/site-fields/site-fields.model.js.map +1 -0
- package/dist/modules/core/site-fields/site-fields.module.d.ts +2 -0
- package/dist/modules/core/site-fields/site-fields.module.js +20 -0
- package/dist/modules/core/site-fields/site-fields.module.js.map +1 -0
- package/dist/modules/core/site-fields/site-fields.queries.d.ts +9 -0
- package/dist/modules/core/site-fields/site-fields.queries.js +123 -0
- package/dist/modules/core/site-fields/site-fields.queries.js.map +1 -0
- package/dist/modules/core/site-fields/site-fields.resolver.d.ts +5 -0
- package/dist/modules/core/site-fields/site-fields.resolver.js +56 -0
- package/dist/modules/core/site-fields/site-fields.resolver.js.map +1 -0
- package/dist/modules/core/site-info/site-info.module.d.ts +2 -0
- package/dist/modules/core/site-info/site-info.module.js +20 -0
- package/dist/modules/core/site-info/site-info.module.js.map +1 -0
- package/dist/modules/core/site-info/site-info.resolver.d.ts +5 -0
- package/dist/modules/core/site-info/site-info.resolver.js +44 -0
- package/dist/modules/core/site-info/site-info.resolver.js.map +1 -0
- package/dist/modules/core/site-info/site-info.schema.d.ts +6 -0
- package/dist/modules/core/site-info/site-info.schema.js +36 -0
- package/dist/modules/core/site-info/site-info.schema.js.map +1 -0
- package/dist/modules/core/site-schema/site-schema.module.d.ts +2 -0
- package/dist/modules/core/site-schema/site-schema.module.js +20 -0
- package/dist/modules/core/site-schema/site-schema.module.js.map +1 -0
- package/dist/modules/core/site-schema/site-schema.resolver.d.ts +4 -0
- package/dist/modules/core/site-schema/site-schema.resolver.js +35 -0
- package/dist/modules/core/site-schema/site-schema.resolver.js.map +1 -0
- package/dist/modules/core/term-flag/term-flag.model.d.ts +6 -0
- package/dist/modules/core/term-flag/term-flag.model.js +45 -0
- package/dist/modules/core/term-flag/term-flag.model.js.map +1 -0
- package/dist/modules/core/term-flag/term-flag.module.d.ts +2 -0
- package/dist/modules/core/term-flag/term-flag.module.js +20 -0
- package/dist/modules/core/term-flag/term-flag.module.js.map +1 -0
- package/dist/modules/core/term-flag/term-flag.queries.d.ts +7 -0
- package/dist/modules/core/term-flag/term-flag.queries.js +44 -0
- package/dist/modules/core/term-flag/term-flag.queries.js.map +1 -0
- package/dist/modules/core/term-flag/term-flag.resolver.d.ts +5 -0
- package/dist/modules/core/term-flag/term-flag.resolver.js +47 -0
- package/dist/modules/core/term-flag/term-flag.resolver.js.map +1 -0
- package/dist/modules/core/term-flag/term-flag.schema.d.ts +9 -0
- package/dist/modules/core/term-flag/term-flag.schema.js +51 -0
- package/dist/modules/core/term-flag/term-flag.schema.js.map +1 -0
- package/dist/modules/core/term-flag/term-flag.service.d.ts +9 -0
- package/dist/modules/core/term-flag/term-flag.service.js +50 -0
- package/dist/modules/core/term-flag/term-flag.service.js.map +1 -0
- package/dist/modules/core/unprotected/unprotected.module.d.ts +2 -0
- package/dist/modules/core/unprotected/unprotected.module.js +20 -0
- package/dist/modules/core/unprotected/unprotected.module.js.map +1 -0
- package/dist/modules/core/unprotected/unprotected.resolver.d.ts +8 -0
- package/dist/modules/core/unprotected/unprotected.resolver.js +106 -0
- package/dist/modules/core/unprotected/unprotected.resolver.js.map +1 -0
- package/dist/modules/core/unprotected/unprotected.schema.d.ts +19 -0
- package/dist/modules/core/unprotected/unprotected.schema.js +93 -0
- package/dist/modules/core/unprotected/unprotected.schema.js.map +1 -0
- package/dist/modules/graphql.types.d.ts +6 -0
- package/dist/modules/graphql.types.js +3 -0
- package/dist/modules/graphql.types.js.map +1 -0
- package/dist/modules/private-api.module.d.ts +2 -0
- package/dist/modules/private-api.module.js +50 -0
- package/dist/modules/private-api.module.js.map +1 -0
- package/dist/modules/public-api/class-validator-options.d.ts +7 -0
- package/dist/modules/public-api/class-validator-options.js +11 -0
- package/dist/modules/public-api/class-validator-options.js.map +1 -0
- package/dist/modules/public-api/mail/contact-form-mail.d.ts +8 -0
- package/dist/modules/public-api/mail/contact-form-mail.js +96 -0
- package/dist/modules/public-api/mail/contact-form-mail.js.map +1 -0
- package/dist/modules/public-api/mail/mail.dto.d.ts +8 -0
- package/dist/modules/public-api/mail/mail.dto.js +56 -0
- package/dist/modules/public-api/mail/mail.dto.js.map +1 -0
- package/dist/modules/public-api/partials/partials-params.dto.d.ts +6 -0
- package/dist/modules/public-api/partials/partials-params.dto.js +45 -0
- package/dist/modules/public-api/partials/partials-params.dto.js.map +1 -0
- package/dist/modules/public-api/password-reset/password-reset.controller.d.ts +11 -0
- package/dist/modules/public-api/password-reset/password-reset.controller.js +59 -0
- package/dist/modules/public-api/password-reset/password-reset.controller.js.map +1 -0
- package/dist/modules/public-api/password-reset/password-reset.dto.d.ts +9 -0
- package/dist/modules/public-api/password-reset/password-reset.dto.js +55 -0
- package/dist/modules/public-api/password-reset/password-reset.dto.js.map +1 -0
- package/dist/modules/public-api/password-reset/password-reset.module.d.ts +2 -0
- package/dist/modules/public-api/password-reset/password-reset.module.js +22 -0
- package/dist/modules/public-api/password-reset/password-reset.module.js.map +1 -0
- package/dist/modules/public-api/password-reset/password-reset.service.d.ts +14 -0
- package/dist/modules/public-api/password-reset/password-reset.service.js +56 -0
- package/dist/modules/public-api/password-reset/password-reset.service.js.map +1 -0
- package/dist/modules/public-api/public-api-controller.d.ts +32 -0
- package/dist/modules/public-api/public-api-controller.js +198 -0
- package/dist/modules/public-api/public-api-controller.js.map +1 -0
- package/dist/modules/public-api/public-api.module.d.ts +2 -0
- package/dist/modules/public-api/public-api.module.js +22 -0
- package/dist/modules/public-api/public-api.module.js.map +1 -0
- package/dist/modules/public-api/search-text/search-text.dto.d.ts +7 -0
- package/dist/modules/public-api/search-text/search-text.dto.js +50 -0
- package/dist/modules/public-api/search-text/search-text.dto.js.map +1 -0
- package/dist/modules/public-api/search-text/search-text.queries.d.ts +14 -0
- package/dist/modules/public-api/search-text/search-text.queries.js +58 -0
- package/dist/modules/public-api/search-text/search-text.queries.js.map +1 -0
- package/dist/modules/public-site/app-exception-filter.d.ts +4 -0
- package/dist/modules/public-site/app-exception-filter.js +41 -0
- package/dist/modules/public-site/app-exception-filter.js.map +1 -0
- package/dist/modules/public-site/google-auth.controller.d.ts +10 -0
- package/dist/modules/public-site/google-auth.controller.js +127 -0
- package/dist/modules/public-site/google-auth.controller.js.map +1 -0
- package/dist/modules/public-site/helpers/format-date.helper.d.ts +3 -0
- package/dist/modules/public-site/helpers/format-date.helper.js +35 -0
- package/dist/modules/public-site/helpers/format-date.helper.js.map +1 -0
- package/dist/modules/public-site/helpers/format-date.helper.spec.d.ts +1 -0
- package/dist/modules/public-site/helpers/format-date.helper.spec.js +37 -0
- package/dist/modules/public-site/helpers/format-date.helper.spec.js.map +1 -0
- package/dist/modules/public-site/helpers/medias.helpers.d.ts +3 -0
- package/dist/modules/public-site/helpers/medias.helpers.js +16 -0
- package/dist/modules/public-site/helpers/medias.helpers.js.map +1 -0
- package/dist/modules/public-site/helpers/obfuscate.helper.d.ts +2 -0
- package/dist/modules/public-site/helpers/obfuscate.helper.js +27 -0
- package/dist/modules/public-site/helpers/obfuscate.helper.js.map +1 -0
- package/dist/modules/public-site/helpers/public-field-values.d.ts +10 -0
- package/dist/modules/public-site/helpers/public-field-values.js +76 -0
- package/dist/modules/public-site/helpers/public-field-values.js.map +1 -0
- package/dist/modules/public-site/liquidjs-filters/format-date.d.ts +2 -0
- package/dist/modules/public-site/liquidjs-filters/format-date.js +14 -0
- package/dist/modules/public-site/liquidjs-filters/format-date.js.map +1 -0
- package/dist/modules/public-site/liquidjs-filters/format-number.d.ts +2 -0
- package/dist/modules/public-site/liquidjs-filters/format-number.js +18 -0
- package/dist/modules/public-site/liquidjs-filters/format-number.js.map +1 -0
- package/dist/modules/public-site/liquidjs-filters/info-filter.d.ts +2 -0
- package/dist/modules/public-site/liquidjs-filters/info-filter.js +144 -0
- package/dist/modules/public-site/liquidjs-filters/info-filter.js.map +1 -0
- package/dist/modules/public-site/liquidjs-filters/inject-facebook-chat.d.ts +2 -0
- package/dist/modules/public-site/liquidjs-filters/inject-facebook-chat.js +38 -0
- package/dist/modules/public-site/liquidjs-filters/inject-facebook-chat.js.map +1 -0
- package/dist/modules/public-site/liquidjs-filters/inject-menu-items-data.d.ts +3 -0
- package/dist/modules/public-site/liquidjs-filters/inject-menu-items-data.js +21 -0
- package/dist/modules/public-site/liquidjs-filters/inject-menu-items-data.js.map +1 -0
- package/dist/modules/public-site/liquidjs-filters/make-excerpt.d.ts +2 -0
- package/dist/modules/public-site/liquidjs-filters/make-excerpt.js +10 -0
- package/dist/modules/public-site/liquidjs-filters/make-excerpt.js.map +1 -0
- package/dist/modules/public-site/liquidjs-filters/obfuscate.d.ts +3 -0
- package/dist/modules/public-site/liquidjs-filters/obfuscate.js +15 -0
- package/dist/modules/public-site/liquidjs-filters/obfuscate.js.map +1 -0
- package/dist/modules/public-site/liquidjs-filters/open-graph-filter.d.ts +4 -0
- package/dist/modules/public-site/liquidjs-filters/open-graph-filter.js +39 -0
- package/dist/modules/public-site/liquidjs-filters/open-graph-filter.js.map +1 -0
- package/dist/modules/public-site/liquidjs-filters/translate-filter.1.d.ts +3 -0
- package/dist/modules/public-site/liquidjs-filters/translate-filter.1.js +12 -0
- package/dist/modules/public-site/liquidjs-filters/translate-filter.1.js.map +1 -0
- package/dist/modules/public-site/liquidjs-filters/translate-filter.d.ts +3 -0
- package/dist/modules/public-site/liquidjs-filters/translate-filter.js +12 -0
- package/dist/modules/public-site/liquidjs-filters/translate-filter.js.map +1 -0
- package/dist/modules/public-site/liquidjs-rendering/render-clone/collection.d.ts +1 -0
- package/dist/modules/public-site/liquidjs-rendering/render-clone/collection.js +18 -0
- package/dist/modules/public-site/liquidjs-rendering/render-clone/collection.js.map +1 -0
- package/dist/modules/public-site/liquidjs-rendering/render-clone/forloop-drop.d.ts +15 -0
- package/dist/modules/public-site/liquidjs-rendering/render-clone/forloop-drop.js +40 -0
- package/dist/modules/public-site/liquidjs-rendering/render-clone/forloop-drop.js.map +1 -0
- package/dist/modules/public-site/liquidjs-rendering/render-clone/render.d.ts +13 -0
- package/dist/modules/public-site/liquidjs-rendering/render-clone/render.js +108 -0
- package/dist/modules/public-site/liquidjs-rendering/render-clone/render.js.map +1 -0
- package/dist/modules/public-site/liquidjs-rendering/render-liquidjs.d.ts +6 -0
- package/dist/modules/public-site/liquidjs-rendering/render-liquidjs.js +40 -0
- package/dist/modules/public-site/liquidjs-rendering/render-liquidjs.js.map +1 -0
- package/dist/modules/public-site/liquidjs-rendering/rendering-context.d.ts +27 -0
- package/dist/modules/public-site/liquidjs-rendering/rendering-context.js +46 -0
- package/dist/modules/public-site/liquidjs-rendering/rendering-context.js.map +1 -0
- package/dist/modules/public-site/liquidjs-tags/get-breadcrumb-liquidjs-tag.d.ts +13 -0
- package/dist/modules/public-site/liquidjs-tags/get-breadcrumb-liquidjs-tag.js +49 -0
- package/dist/modules/public-site/liquidjs-tags/get-breadcrumb-liquidjs-tag.js.map +1 -0
- package/dist/modules/public-site/liquidjs-tags/get-page-tag.d.ts +13 -0
- package/dist/modules/public-site/liquidjs-tags/get-page-tag.js +68 -0
- package/dist/modules/public-site/liquidjs-tags/get-page-tag.js.map +1 -0
- package/dist/modules/public-site/liquidjs-tags/get-pages-tag.d.ts +13 -0
- package/dist/modules/public-site/liquidjs-tags/get-pages-tag.js +94 -0
- package/dist/modules/public-site/liquidjs-tags/get-pages-tag.js.map +1 -0
- package/dist/modules/public-site/liquidjs-tags/get-siblings-liquidjs-tag.d.ts +13 -0
- package/dist/modules/public-site/liquidjs-tags/get-siblings-liquidjs-tag.js +61 -0
- package/dist/modules/public-site/liquidjs-tags/get-siblings-liquidjs-tag.js.map +1 -0
- package/dist/modules/public-site/liquidjs-tags/use-image-tag.d.ts +13 -0
- package/dist/modules/public-site/liquidjs-tags/use-image-tag.js +53 -0
- package/dist/modules/public-site/liquidjs-tags/use-image-tag.js.map +1 -0
- package/dist/modules/public-site/media-serve/_media-serve-helpers.d.ts +11 -0
- package/dist/modules/public-site/media-serve/_media-serve-helpers.js +26 -0
- package/dist/modules/public-site/media-serve/_media-serve-helpers.js.map +1 -0
- package/dist/modules/public-site/media-serve/media-serve.controller.d.ts +4 -0
- package/dist/modules/public-site/media-serve/media-serve.controller.js +140 -0
- package/dist/modules/public-site/media-serve/media-serve.controller.js.map +1 -0
- package/dist/modules/public-site/media-serve/media-serve.module.d.ts +2 -0
- package/dist/modules/public-site/media-serve/media-serve.module.js +20 -0
- package/dist/modules/public-site/media-serve/media-serve.module.js.map +1 -0
- package/dist/modules/public-site/oauth2-client.controller.d.ts +10 -0
- package/dist/modules/public-site/oauth2-client.controller.js +144 -0
- package/dist/modules/public-site/oauth2-client.controller.js.map +1 -0
- package/dist/modules/public-site/public-route/make-url.d.ts +11 -0
- package/dist/modules/public-site/public-route/make-url.js +150 -0
- package/dist/modules/public-site/public-route/make-url.js.map +1 -0
- package/dist/modules/public-site/public-route/public-route-parser.d.ts +16 -0
- package/dist/modules/public-site/public-route/public-route-parser.js +154 -0
- package/dist/modules/public-site/public-route/public-route-parser.js.map +1 -0
- package/dist/modules/public-site/public-route/raw-document-payload.d.ts +8 -0
- package/dist/modules/public-site/public-route/raw-document-payload.js +86 -0
- package/dist/modules/public-site/public-route/raw-document-payload.js.map +1 -0
- package/dist/modules/public-site/public-site.controller.d.ts +7 -0
- package/dist/modules/public-site/public-site.controller.js +58 -0
- package/dist/modules/public-site/public-site.controller.js.map +1 -0
- package/dist/modules/public-site/public-site.middleware.d.ts +5 -0
- package/dist/modules/public-site/public-site.middleware.js +67 -0
- package/dist/modules/public-site/public-site.middleware.js.map +1 -0
- package/dist/modules/public-site/public-site.module.d.ts +4 -0
- package/dist/modules/public-site/public-site.module.js +27 -0
- package/dist/modules/public-site/public-site.module.js.map +1 -0
- package/dist/modules/public-site/serve-document/serve-document.d.ts +20 -0
- package/dist/modules/public-site/serve-document/serve-document.js +60 -0
- package/dist/modules/public-site/serve-document/serve-document.js.map +1 -0
- package/dist/modules/security/app-throttler-guard.d.ts +8 -0
- package/dist/modules/security/app-throttler-guard.js +18 -0
- package/dist/modules/security/app-throttler-guard.js.map +1 -0
- package/dist/modules/security/complexity-plugin.d.ts +8 -0
- package/dist/modules/security/complexity-plugin.js +46 -0
- package/dist/modules/security/complexity-plugin.js.map +1 -0
- package/dist/modules/security/gqlThrottlerGuard.d.ts +8 -0
- package/dist/modules/security/gqlThrottlerGuard.js +24 -0
- package/dist/modules/security/gqlThrottlerGuard.js.map +1 -0
- package/dist/nest-custom-logger.d.ts +8 -0
- package/dist/nest-custom-logger.js +23 -0
- package/dist/nest-custom-logger.js.map +1 -0
- package/dist/public-payload/breadcrumb.queries.d.ts +5 -0
- package/dist/public-payload/breadcrumb.queries.js +26 -0
- package/dist/public-payload/breadcrumb.queries.js.map +1 -0
- package/dist/public-payload/create-page-drop.d.ts +11 -0
- package/dist/public-payload/create-page-drop.js +160 -0
- package/dist/public-payload/create-page-drop.js.map +1 -0
- package/dist/public-payload/create-page-part-drop.d.ts +7 -0
- package/dist/public-payload/create-page-part-drop.js +39 -0
- package/dist/public-payload/create-page-part-drop.js.map +1 -0
- package/dist/public-payload/create-page-payload-drop.d.ts +10 -0
- package/dist/public-payload/create-page-payload-drop.js +143 -0
- package/dist/public-payload/create-page-payload-drop.js.map +1 -0
- package/dist/public-payload/excerpt.queries.d.ts +10 -0
- package/dist/public-payload/excerpt.queries.js +38 -0
- package/dist/public-payload/excerpt.queries.js.map +1 -0
- package/dist/public-payload/field-values.d.ts +9 -0
- package/dist/public-payload/field-values.js +99 -0
- package/dist/public-payload/field-values.js.map +1 -0
- package/dist/public-payload/get-siblings.queries.d.ts +5 -0
- package/dist/public-payload/get-siblings.queries.js +117 -0
- package/dist/public-payload/get-siblings.queries.js.map +1 -0
- package/dist/public-payload/liquidjs-drop.d.ts +31 -0
- package/dist/public-payload/liquidjs-drop.js +45 -0
- package/dist/public-payload/liquidjs-drop.js.map +1 -0
- package/dist/public-payload/load-default-image.d.ts +8 -0
- package/dist/public-payload/load-default-image.js +52 -0
- package/dist/public-payload/load-default-image.js.map +1 -0
- package/dist/public-payload/make-basic-payload.d.ts +6 -0
- package/dist/public-payload/make-basic-payload.js +19 -0
- package/dist/public-payload/make-basic-payload.js.map +1 -0
- package/dist/public-payload/make-image-available.d.ts +26 -0
- package/dist/public-payload/make-image-available.js +38 -0
- package/dist/public-payload/make-image-available.js.map +1 -0
- package/dist/public-payload/page-values.queries.d.ts +27 -0
- package/dist/public-payload/page-values.queries.js +110 -0
- package/dist/public-payload/page-values.queries.js.map +1 -0
- package/dist/public-payload/parts.queries.d.ts +6 -0
- package/dist/public-payload/parts.queries.js +123 -0
- package/dist/public-payload/parts.queries.js.map +1 -0
- package/dist/public-payload/public-payload.types.d.ts +130 -0
- package/dist/public-payload/public-payload.types.js +3 -0
- package/dist/public-payload/public-payload.types.js.map +1 -0
- package/dist/public-payload/site-payload.d.ts +4 -0
- package/dist/public-payload/site-payload.js +43 -0
- package/dist/public-payload/site-payload.js.map +1 -0
- package/dist/public-payload/taxonomies.queries.d.ts +13 -0
- package/dist/public-payload/taxonomies.queries.js +45 -0
- package/dist/public-payload/taxonomies.queries.js.map +1 -0
- package/dist/public-payload/translations.queries.d.ts +7 -0
- package/dist/public-payload/translations.queries.js +62 -0
- package/dist/public-payload/translations.queries.js.map +1 -0
- package/dist/public.types.d.ts +5 -0
- package/dist/public.types.js +3 -0
- package/dist/public.types.js.map +1 -0
- package/dist/share/pino-app-log.d.ts +26 -0
- package/dist/share/pino-app-log.js +138 -0
- package/dist/share/pino-app-log.js.map +1 -0
- package/dist/share/read-configuration.d.ts +7 -0
- package/dist/share/read-configuration.js +31 -0
- package/dist/share/read-configuration.js.map +1 -0
- package/dist/site-backup/archiver.helper.d.ts +12 -0
- package/dist/site-backup/archiver.helper.js +43 -0
- package/dist/site-backup/archiver.helper.js.map +1 -0
- package/dist/site-backup/backup-tasks.d.ts +11 -0
- package/dist/site-backup/backup-tasks.js +98 -0
- package/dist/site-backup/backup-tasks.js.map +1 -0
- package/dist/site-backup/backup.d.ts +11 -0
- package/dist/site-backup/backup.helper.d.ts +3 -0
- package/dist/site-backup/backup.helper.js +13 -0
- package/dist/site-backup/backup.helper.js.map +1 -0
- package/dist/site-backup/backup.js +34 -0
- package/dist/site-backup/backup.js.map +1 -0
- package/dist/site-backup/default-data/default-config.d.ts +1 -0
- package/dist/site-backup/default-data/default-config.js +50 -0
- package/dist/site-backup/default-data/default-config.js.map +1 -0
- package/dist/site-backup/default-data/default-readme.d.ts +1 -0
- package/dist/site-backup/default-data/default-readme.js +8 -0
- package/dist/site-backup/default-data/default-readme.js.map +1 -0
- package/dist/site-context/db-init/db-init.d.ts +11 -0
- package/dist/site-context/db-init/db-init.js +37 -0
- package/dist/site-context/db-init/db-init.js.map +1 -0
- package/dist/site-context/db-init/ddl-migration.d.ts +13 -0
- package/dist/site-context/db-init/ddl-migration.js +26 -0
- package/dist/site-context/db-init/ddl-migration.js.map +1 -0
- package/dist/site-context/db-init/init-routing-points.d.ts +4 -0
- package/dist/site-context/db-init/init-routing-points.js +147 -0
- package/dist/site-context/db-init/init-routing-points.js.map +1 -0
- package/dist/site-context/site-conf.d.ts +17 -0
- package/dist/site-context/site-conf.js +103 -0
- package/dist/site-context/site-conf.js.map +1 -0
- package/dist/site-context/site-context.d.ts +11 -0
- package/dist/site-context/site-context.js +234 -0
- package/dist/site-context/site-context.js.map +1 -0
- package/dist/site-context/site-context.types.d.ts +46 -0
- package/dist/site-context/site-context.types.js +3 -0
- package/dist/site-context/site-context.types.js.map +1 -0
- package/dist/site-context/theme-conf-reader.d.ts +4 -0
- package/dist/site-context/theme-conf-reader.js +33 -0
- package/dist/site-context/theme-conf-reader.js.map +1 -0
- package/dist/site-context/theme-conf-types.d.ts +4 -0
- package/dist/site-context/theme-conf-types.js +3 -0
- package/dist/site-context/theme-conf-types.js.map +1 -0
- package/dist/site-schema/common-schema-reader.d.ts +6 -0
- package/dist/site-schema/common-schema-reader.js +29 -0
- package/dist/site-schema/common-schema-reader.js.map +1 -0
- package/dist/site-schema/merged-schema-lib.d.ts +30 -0
- package/dist/site-schema/merged-schema-lib.js +118 -0
- package/dist/site-schema/merged-schema-lib.js.map +1 -0
- package/dist/site-schema/read-locales.d.ts +24 -0
- package/dist/site-schema/read-locales.js +171 -0
- package/dist/site-schema/read-locales.js.map +1 -0
- package/dist/site-schema/site-schema-factory.d.ts +2 -0
- package/dist/site-schema/site-schema-factory.js +382 -0
- package/dist/site-schema/site-schema-factory.js.map +1 -0
- package/dist/site-schema/site-schema-helpers.d.ts +5 -0
- package/dist/site-schema/site-schema-helpers.js +27 -0
- package/dist/site-schema/site-schema-helpers.js.map +1 -0
- package/dist/site-schema/site-schema-lib-reader.d.ts +14 -0
- package/dist/site-schema/site-schema-lib-reader.js +48 -0
- package/dist/site-schema/site-schema-lib-reader.js.map +1 -0
- package/dist/start.d.ts +1 -0
- package/dist/start.js +5 -0
- package/dist/start.js.map +1 -0
- package/dist/types.to.json +1 -0
- package/locales/en.json +18 -0
- package/locales/fr.json +18 -0
- package/package.json +99 -0
- package/schema.gql +293 -0
- package/site-schema-lib/common-schema.json +36 -0
- package/site-schema-lib/common-schema.l10n.en.json +10 -0
- package/site-schema-lib/common-schema.l10n.fr.json +10 -0
- package/site-schema-lib/fields.site-schema.json +79 -0
- package/site-schema-lib/fields.site-schema.l10n.en.json +26 -0
- package/site-schema-lib/fields.site-schema.l10n.fr.json +26 -0
- package/site-schema-lib/gallery-page.site-schema.json +19 -0
- package/site-schema-lib/gallery-page.site-schema.l10n.en.json +11 -0
- package/site-schema-lib/gallery-page.site-schema.l10n.fr.json +11 -0
- package/site-schema-lib/lowcost.site-schema.json +84 -0
- package/site-schema-lib/lowcost.site-schema.l10n.en.json +30 -0
- package/site-schema-lib/lowcost.site-schema.l10n.fr.json +30 -0
- package/site-schema-lib/media-policies.site-schema.json +26 -0
- package/site-schema-lib/portfolio.site-schema.json +28 -0
- package/site-schema-lib/portfolio.site-schema.l10n.en.json +16 -0
- package/site-schema-lib/portfolio.site-schema.l10n.fr.json +16 -0
- package/site-schema-lib/post.site-schema.json +48 -0
- package/site-schema-lib/post.site-schema.l10n.en.json +28 -0
- package/site-schema-lib/post.site-schema.l10n.fr.json +27 -0
- package/site-schema-lib/simple-pages.site-schema.json +19 -0
- package/site-schema-lib/simple-pages.site-schema.l10n.en.json +11 -0
- package/site-schema-lib/simple-pages.site-schema.l10n.fr.json +11 -0
- package/site-schema-lib/special-page.site-schema.json +42 -0
- package/site-schema-lib/special-page.site-schema.l10n.en.json +16 -0
- package/site-schema-lib/special-page.site-schema.l10n.fr.json +16 -0
- package/site-schema-lib/tour.site-schema.json +70 -0
- package/site-schema-lib/tour.site-schema.l10n.en.json +37 -0
- package/site-schema-lib/tour.site-schema.l10n.fr.json +37 -0
package/README.md
ADDED
package/ddl/main.ddl.sql
ADDED
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
PRAGMA journal_mode = TRUNCATE;
|
|
2
|
+
PRAGMA foreign_keys = 1;
|
|
3
|
+
|
|
4
|
+
create table PaDbMetadata (
|
|
5
|
+
dbSchema varchar(100) not null primary key,
|
|
6
|
+
dbVersion integer not null
|
|
7
|
+
);
|
|
8
|
+
|
|
9
|
+
insert into PaDbMetadata (dbSchema, dbVersion) values ('main', 5);
|
|
10
|
+
|
|
11
|
+
create table PaAccount (
|
|
12
|
+
id integer not null primary key autoincrement,
|
|
13
|
+
email varchar(200) not null unique,
|
|
14
|
+
name varchar(200),
|
|
15
|
+
preferences text,
|
|
16
|
+
passwordHash varchar(200),
|
|
17
|
+
passwordResetToken varchar(200)
|
|
18
|
+
);
|
|
19
|
+
|
|
20
|
+
create table PaLeaf (
|
|
21
|
+
id integer not null primary key autoincrement,
|
|
22
|
+
leafType varchar(100) not null,
|
|
23
|
+
parentId integer references PaLeaf (id),
|
|
24
|
+
depth smallint not null,
|
|
25
|
+
relativeId varchar(36) not null,
|
|
26
|
+
publishDate timestamp,
|
|
27
|
+
unique (parentId, relativeId)
|
|
28
|
+
);
|
|
29
|
+
|
|
30
|
+
create index PaLeaf_leafType_index on PaLeaf (leafType);
|
|
31
|
+
|
|
32
|
+
create table PaLeafItem (
|
|
33
|
+
leafId integer not null primary key references PaLeaf (id) on delete cascade,
|
|
34
|
+
listName varchar(100) not null,
|
|
35
|
+
itemNum integer
|
|
36
|
+
);
|
|
37
|
+
|
|
38
|
+
create index PaLeafItem_listName_index on PaLeafItem (listName);
|
|
39
|
+
|
|
40
|
+
create table PaTermFlag (
|
|
41
|
+
termId integer not null references PaLeaf (id) on delete cascade,
|
|
42
|
+
flaggedId integer not null references PaLeaf (id) on delete cascade,
|
|
43
|
+
lead tinyint(1) not null default 0,
|
|
44
|
+
primary key (termId, flaggedId)
|
|
45
|
+
);
|
|
46
|
+
|
|
47
|
+
create table PaSection (
|
|
48
|
+
leafId integer not null references PaLeaf (id),
|
|
49
|
+
lang char(2) not null,
|
|
50
|
+
ready tinyint(1) not null default 0,
|
|
51
|
+
primary key (leafId, lang)
|
|
52
|
+
);
|
|
53
|
+
|
|
54
|
+
create table PaDocument (
|
|
55
|
+
leafId integer not null,
|
|
56
|
+
lang char(2) not null,
|
|
57
|
+
title varchar(500),
|
|
58
|
+
slug varchar(200),
|
|
59
|
+
metaDescription varchar(500),
|
|
60
|
+
metaKeywords varchar(500),
|
|
61
|
+
primary key (leafId, lang),
|
|
62
|
+
foreign key (leafId, lang) references PaSection (leafId, lang)
|
|
63
|
+
);
|
|
64
|
+
|
|
65
|
+
create table PaFieldVarchar (
|
|
66
|
+
field varchar(100) not null,
|
|
67
|
+
leafId integer not null references PaLeaf (id) on delete cascade,
|
|
68
|
+
-- the value '.' represents any language
|
|
69
|
+
lang varchar(2) not null,
|
|
70
|
+
dataType varchar(100) not null,
|
|
71
|
+
val varchar(5000),
|
|
72
|
+
primary key (field, leafId, lang)
|
|
73
|
+
);
|
|
74
|
+
|
|
75
|
+
create table PaFieldText (
|
|
76
|
+
field varchar(100) not null,
|
|
77
|
+
leafId integer not null references PaLeaf (id) on delete cascade,
|
|
78
|
+
-- the value '.' represents any language
|
|
79
|
+
lang varchar(2) not null,
|
|
80
|
+
dataType varchar(100) not null,
|
|
81
|
+
val text,
|
|
82
|
+
excerpt varchar(500),
|
|
83
|
+
primary key (field, leafId, lang)
|
|
84
|
+
);
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { AppLog } from "@paroicms/server-lib";
|
|
2
|
+
export interface ZipDirectoryOptions {
|
|
3
|
+
sourceDir: string;
|
|
4
|
+
destDir: string;
|
|
5
|
+
fileName: string;
|
|
6
|
+
appLog: AppLog;
|
|
7
|
+
}
|
|
8
|
+
export declare function zipDirectory({ sourceDir, destDir, fileName, appLog, }: ZipDirectoryOptions): Promise<{
|
|
9
|
+
archivePath: string;
|
|
10
|
+
completeArchiveName: string;
|
|
11
|
+
archiveWeight: number;
|
|
12
|
+
}>;
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.zipDirectory = void 0;
|
|
7
|
+
const archiver_1 = __importDefault(require("archiver"));
|
|
8
|
+
const fs_1 = require("fs");
|
|
9
|
+
const path_1 = require("path");
|
|
10
|
+
const utils_helper_1 = require("../../helpers/utils-helper");
|
|
11
|
+
function zipDirectory({ sourceDir, destDir, fileName, appLog, }) {
|
|
12
|
+
if (!(0, utils_helper_1.pathExistsSync)(sourceDir) || !(0, utils_helper_1.pathExistsSync)(destDir)) {
|
|
13
|
+
throw new Error(`[zip-archive-builder] invalid source (${sourceDir}) or destination (${destDir}) directory path.`);
|
|
14
|
+
}
|
|
15
|
+
const zipFileName = `${fileName}.zip`;
|
|
16
|
+
const archivePath = (0, path_1.join)(destDir, zipFileName);
|
|
17
|
+
return new Promise((resolve, reject) => {
|
|
18
|
+
const output = (0, fs_1.createWriteStream)(archivePath);
|
|
19
|
+
const archive = (0, archiver_1.default)("zip", {
|
|
20
|
+
zlib: { level: 9 },
|
|
21
|
+
});
|
|
22
|
+
output.on("close", () => {
|
|
23
|
+
resolve({
|
|
24
|
+
archivePath,
|
|
25
|
+
completeArchiveName: zipFileName,
|
|
26
|
+
archiveWeight: archive.pointer(),
|
|
27
|
+
});
|
|
28
|
+
});
|
|
29
|
+
archive.on("warning", (error) => {
|
|
30
|
+
if (error.code === "ENOENT") {
|
|
31
|
+
appLog.warn(`[zip-archive-builder] zip build warning: ${error}`);
|
|
32
|
+
}
|
|
33
|
+
else {
|
|
34
|
+
reject(new Error(`[zip-archive-builder] error to build zip archive: ${error}`));
|
|
35
|
+
}
|
|
36
|
+
});
|
|
37
|
+
archive.on("error", (error) => {
|
|
38
|
+
reject(new Error(`[zip-archive-builder] error to build zip archive: ${error}`));
|
|
39
|
+
});
|
|
40
|
+
archive.pipe(output);
|
|
41
|
+
archive.directory(sourceDir, false);
|
|
42
|
+
archive.finalize();
|
|
43
|
+
});
|
|
44
|
+
}
|
|
45
|
+
exports.zipDirectory = zipDirectory;
|
|
46
|
+
//# sourceMappingURL=archiver.helper.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"archiver.helper.js","sourceRoot":"","sources":["../../../src/backup/site/archiver.helper.ts"],"names":[],"mappings":";;;;;;AACA,wDAAgC;AAChC,2BAAuC;AACvC,+BAA4B;AAC5B,6DAA4D;AAS5D,SAAgB,YAAY,CAAC,EAC3B,SAAS,EACT,OAAO,EACP,QAAQ,EACR,MAAM,GACc;IAKpB,IAAI,CAAC,IAAA,6BAAc,EAAC,SAAS,CAAC,IAAI,CAAC,IAAA,6BAAc,EAAC,OAAO,CAAC,EAAE,CAAC;QAC3D,MAAM,IAAI,KAAK,CACb,yCAAyC,SAAS,qBAAqB,OAAO,mBAAmB,CAClG,CAAC;IACJ,CAAC;IAED,MAAM,WAAW,GAAG,GAAG,QAAQ,MAAM,CAAC;IACtC,MAAM,WAAW,GAAG,IAAA,WAAI,EAAC,OAAO,EAAE,WAAW,CAAC,CAAC;IAE/C,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,MAAM,MAAM,GAAG,IAAA,sBAAiB,EAAC,WAAW,CAAC,CAAC;QAC9C,MAAM,OAAO,GAAG,IAAA,kBAAQ,EAAC,KAAK,EAAE;YAC9B,IAAI,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE;SACnB,CAAC,CAAC;QAEH,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE;YACtB,OAAO,CAAC;gBACN,WAAW;gBACX,mBAAmB,EAAE,WAAW;gBAChC,aAAa,EAAE,OAAO,CAAC,OAAO,EAAE;aACjC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC,KAAK,EAAE,EAAE;YAC9B,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBAC5B,MAAM,CAAC,IAAI,CAAC,4CAA4C,KAAK,EAAE,CAAC,CAAC;YACnE,CAAC;iBAAM,CAAC;gBACN,MAAM,CAAC,IAAI,KAAK,CAAC,qDAAqD,KAAK,EAAE,CAAC,CAAC,CAAC;YAClF,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;YAC5B,MAAM,CAAC,IAAI,KAAK,CAAC,qDAAqD,KAAK,EAAE,CAAC,CAAC,CAAC;QAClF,CAAC,CAAC,CAAC;QAEH,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACrB,OAAO,CAAC,SAAS,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;QACpC,OAAO,CAAC,QAAQ,EAAE,CAAC;IACrB,CAAC,CAAC,CAAC;AACL,CAAC;AAjDD,oCAiDC"}
|
|
@@ -0,0 +1,118 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.initNewBackup = void 0;
|
|
7
|
+
const dayjs_1 = __importDefault(require("dayjs"));
|
|
8
|
+
const promises_1 = require("fs/promises");
|
|
9
|
+
const path_1 = require("path");
|
|
10
|
+
const process_1 = require("process");
|
|
11
|
+
const context_1 = require("../../context");
|
|
12
|
+
const jwt_secret_helpers_1 = require("../../helpers/jwt-secret.helpers");
|
|
13
|
+
const utils_helper_1 = require("../../helpers/utils-helper");
|
|
14
|
+
const archiver_helper_1 = require("./archiver.helper");
|
|
15
|
+
async function initNewBackup(siteContext) {
|
|
16
|
+
const tmpPath = await makeDir(siteContext.cacheDir, "tmp");
|
|
17
|
+
const { dirPath: backupTempDir, dirName: backupArchiveName } = await makeBackupTempDir(siteContext.fqdn, tmpPath);
|
|
18
|
+
const { zipFilePath, zipFileWeight, zipFileName } = await buildSiteBackup(siteContext, backupTempDir, backupArchiveName);
|
|
19
|
+
const backupDir = (0, path_1.join)((0, process_1.cwd)(), "src/backup");
|
|
20
|
+
const fqdnBackupDirPath = (0, path_1.join)(backupDir, siteContext.fqdn);
|
|
21
|
+
await makeDir(backupDir, siteContext.fqdn);
|
|
22
|
+
await (0, promises_1.copyFile)(zipFilePath, (0, path_1.join)(fqdnBackupDirPath, zipFileName));
|
|
23
|
+
await (0, promises_1.rm)(backupTempDir, { recursive: true, force: true });
|
|
24
|
+
await (0, promises_1.rm)(zipFilePath);
|
|
25
|
+
return {
|
|
26
|
+
zipFilePath,
|
|
27
|
+
zipFileWeight,
|
|
28
|
+
};
|
|
29
|
+
}
|
|
30
|
+
exports.initNewBackup = initNewBackup;
|
|
31
|
+
async function buildSiteBackup({ siteDir, dataDir, siteSchema }, backupTempDir, archiveBaseName) {
|
|
32
|
+
const themeDir = (0, path_1.join)(siteDir, "theme");
|
|
33
|
+
const defaultDataDir = (0, path_1.join)((0, process_1.cwd)(), "src/backup/site/default-data");
|
|
34
|
+
try {
|
|
35
|
+
await copyThemeFiles(themeDir, backupTempDir);
|
|
36
|
+
await makeDefaultCacheDir(backupTempDir, defaultDataDir);
|
|
37
|
+
await makeDataDir(backupTempDir, dataDir);
|
|
38
|
+
await makePackageJsonFile(backupTempDir, siteDir);
|
|
39
|
+
await makeDefaultConfigJsonFile(backupTempDir, defaultDataDir);
|
|
40
|
+
await copySiteSchemaFiles(siteSchema, siteDir, backupTempDir);
|
|
41
|
+
const tempArchiveDir = (0, path_1.normalize)(`${backupTempDir}/../`);
|
|
42
|
+
const { archivePath, archiveWeight, completeArchiveName } = await (0, archiver_helper_1.zipDirectory)({
|
|
43
|
+
sourceDir: backupTempDir,
|
|
44
|
+
destDir: tempArchiveDir,
|
|
45
|
+
fileName: archiveBaseName,
|
|
46
|
+
appLog: context_1.appLog,
|
|
47
|
+
});
|
|
48
|
+
return {
|
|
49
|
+
zipFilePath: archivePath,
|
|
50
|
+
zipFileWeight: archiveWeight,
|
|
51
|
+
zipFileName: completeArchiveName,
|
|
52
|
+
};
|
|
53
|
+
}
|
|
54
|
+
catch (error) {
|
|
55
|
+
throw new Error(`[backup]: failed to build backup file: ${error}`);
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
async function copyThemeFiles(themeDir, backupTempDir) {
|
|
59
|
+
const backupThemeDir = await makeDir(backupTempDir, "theme");
|
|
60
|
+
await (0, promises_1.cp)(themeDir, backupThemeDir, { recursive: true });
|
|
61
|
+
}
|
|
62
|
+
async function copySiteSchemaFiles(siteSchema, siteDir, backupTempDir) {
|
|
63
|
+
await (0, promises_1.copyFile)((0, path_1.join)(siteDir, "site-schema.json"), (0, path_1.join)(backupTempDir, "site-schema.json"));
|
|
64
|
+
for (const lang of siteSchema.langs) {
|
|
65
|
+
const translateFilePath = (0, path_1.join)(siteDir, `site-schema.l10n.${lang}.json`);
|
|
66
|
+
if ((0, utils_helper_1.pathExistsSync)(translateFilePath)) {
|
|
67
|
+
await (0, promises_1.copyFile)(translateFilePath, (0, path_1.join)(backupTempDir, `site-schema.l10n.${lang}.json`));
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
async function makePackageJsonFile(backupTempDir, siteDir) {
|
|
72
|
+
const originalPackageJsonPath = (0, path_1.join)(siteDir, "package.json");
|
|
73
|
+
const fileContent = await (0, promises_1.readFile)(originalPackageJsonPath, { encoding: "utf-8" });
|
|
74
|
+
const contentParsed = JSON.parse(fileContent);
|
|
75
|
+
contentParsed.main = undefined;
|
|
76
|
+
const backupPackageJsonPath = (0, path_1.join)(backupTempDir, "package.json");
|
|
77
|
+
await (0, promises_1.writeFile)(backupPackageJsonPath, JSON.stringify(contentParsed));
|
|
78
|
+
return backupPackageJsonPath;
|
|
79
|
+
}
|
|
80
|
+
async function makeDefaultConfigJsonFile(backupTempDir, defaultDataDir) {
|
|
81
|
+
const defaultContentDir = (0, path_1.join)(defaultDataDir, "config.sample.json");
|
|
82
|
+
const configJsonContent = await (0, promises_1.readFile)(defaultContentDir, { encoding: "utf-8" });
|
|
83
|
+
const backupConfigJsonFilePath = (0, path_1.join)(backupTempDir, "config.json");
|
|
84
|
+
await (0, promises_1.writeFile)(backupConfigJsonFilePath, configJsonContent);
|
|
85
|
+
return backupConfigJsonFilePath;
|
|
86
|
+
}
|
|
87
|
+
async function makeDefaultCacheDir(backupTempDir, defaultDataDir) {
|
|
88
|
+
const cacheDir = await makeDir(backupTempDir, "cache");
|
|
89
|
+
const defaultContentDir = (0, path_1.join)(defaultDataDir, "README.sample.md");
|
|
90
|
+
const readmeContent = await (0, promises_1.readFile)(defaultContentDir, { encoding: "utf-8" });
|
|
91
|
+
const readmeFilePath = (0, path_1.join)(cacheDir, "README.md");
|
|
92
|
+
await (0, promises_1.writeFile)(readmeFilePath, readmeContent);
|
|
93
|
+
}
|
|
94
|
+
async function makeDataDir(backupTempDir, dbDir) {
|
|
95
|
+
const dataDir = await makeDir(backupTempDir, "data");
|
|
96
|
+
await (0, promises_1.copyFile)((0, path_1.join)(dbDir, "main.sqlite"), (0, path_1.join)(dataDir, "main.sqlite"));
|
|
97
|
+
await (0, promises_1.copyFile)((0, path_1.join)(dbDir, "medias.sqlite"), (0, path_1.join)(dataDir, "medias.sqlite"));
|
|
98
|
+
}
|
|
99
|
+
async function makeBackupTempDir(siteFqdn, tmpDir) {
|
|
100
|
+
const randomKey = (0, jwt_secret_helpers_1.makeSecret)(3);
|
|
101
|
+
const dirName = `${(0, dayjs_1.default)().format("YYYYMMDD-hhmm")}-${siteFqdn}-${randomKey}`;
|
|
102
|
+
const dirPath = await makeDir(tmpDir, dirName);
|
|
103
|
+
return { dirName, dirPath };
|
|
104
|
+
}
|
|
105
|
+
async function makeDir(path, dirName) {
|
|
106
|
+
const dirPath = (0, path_1.join)(path, dirName);
|
|
107
|
+
if (!(0, utils_helper_1.pathExistsSync)(dirPath)) {
|
|
108
|
+
try {
|
|
109
|
+
await (0, promises_1.mkdir)(dirPath);
|
|
110
|
+
return dirPath;
|
|
111
|
+
}
|
|
112
|
+
catch (error) {
|
|
113
|
+
throw new Error("failed to create a directory");
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
return dirPath;
|
|
117
|
+
}
|
|
118
|
+
//# sourceMappingURL=backup.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"backup.js","sourceRoot":"","sources":["../../../src/backup/site/backup.ts"],"names":[],"mappings":"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"}
|
package/dist/cli.d.ts
ADDED
package/dist/cli.js
ADDED
package/dist/cli.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";;;AACA,mBAAiB"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { ChildOrdering, DocumentSchema } from "@paroicms/anywhere-lib";
|
|
2
|
+
import { SelectQueryBuilder } from "typeorm";
|
|
3
|
+
import { SiteContext } from "../site-context/site-context.types";
|
|
4
|
+
export declare function applyChildOrderingOnQuery(siteContext: Pick<SiteContext, "mainCn" | "siteSchema">, options: {
|
|
5
|
+
query: SelectQueryBuilder<any>;
|
|
6
|
+
parentDocumentType: DocumentSchema;
|
|
7
|
+
childOrdering?: ChildOrdering;
|
|
8
|
+
leftJoinDocument?: boolean;
|
|
9
|
+
orderByAsString?: boolean;
|
|
10
|
+
}): {
|
|
11
|
+
ordered: boolean;
|
|
12
|
+
orderBy?: string;
|
|
13
|
+
};
|
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.applyChildOrderingOnQuery = void 0;
|
|
4
|
+
const anywhere_lib_1 = require("@paroicms/anywhere-lib");
|
|
5
|
+
const context_1 = require("../context");
|
|
6
|
+
function applyChildOrderingOnQuery(siteContext, options) {
|
|
7
|
+
const { query, parentDocumentType, leftJoinDocument, orderByAsString } = options;
|
|
8
|
+
const childOrdering = options.childOrdering ?? parentDocumentType.childOrdering;
|
|
9
|
+
if (!childOrdering)
|
|
10
|
+
return { ordered: false };
|
|
11
|
+
const orderPropertiesMap = makeMapOfOrderProperties(siteContext, parentDocumentType.children);
|
|
12
|
+
const orderByQb = orderByAsString ? makeOrderByAsStringQB() : query;
|
|
13
|
+
if (childOrdering === "manual") {
|
|
14
|
+
query.leftJoin("PaLeafItem", "i", "i.leafId = l.id and i.listName = :listName", {
|
|
15
|
+
listName: "documents",
|
|
16
|
+
});
|
|
17
|
+
orderByQb.orderBy("i.itemNum", "ASC").addOrderBy("l.id", "ASC");
|
|
18
|
+
}
|
|
19
|
+
else {
|
|
20
|
+
let index = 0;
|
|
21
|
+
for (const [fieldName, direction] of childOrdering) {
|
|
22
|
+
if (fieldName === "title") {
|
|
23
|
+
if (leftJoinDocument) {
|
|
24
|
+
query.leftJoin("PaDocument", "d", "d.leafId = s.leafId and d.lang = s.lang");
|
|
25
|
+
}
|
|
26
|
+
orderByQb.addOrderBy("d.title", formatTypeOrmOrder(direction));
|
|
27
|
+
}
|
|
28
|
+
else if (fieldName === "publishDate") {
|
|
29
|
+
orderByQb.addOrderBy("l.publishDate", formatTypeOrmOrder(direction));
|
|
30
|
+
}
|
|
31
|
+
else {
|
|
32
|
+
const orderProperties = orderPropertiesMap.get(fieldName);
|
|
33
|
+
if (!orderProperties)
|
|
34
|
+
throw new Error(`unknown field '${fieldName}'`);
|
|
35
|
+
const { dataType, storedOn } = orderProperties;
|
|
36
|
+
let orderByField;
|
|
37
|
+
if (dataType === "string" || dataType === "boolean") {
|
|
38
|
+
orderByField = `f${index}.val`;
|
|
39
|
+
}
|
|
40
|
+
else if (dataType === "number" || dataType === "currency") {
|
|
41
|
+
orderByField = `cast(f${index}.val as float)`;
|
|
42
|
+
}
|
|
43
|
+
else {
|
|
44
|
+
throw new Error(`invalid data type '${dataType}'`);
|
|
45
|
+
}
|
|
46
|
+
const langJoinCrit = storedOn === "section" ? `f${index}.lang = s.lang` : `f${index}.lang = :dbAnyLang`;
|
|
47
|
+
const critParams = storedOn === "section" ? { fieldName } : { fieldName, dbAnyLang: context_1.dbAnyLang };
|
|
48
|
+
query.leftJoin("PaFieldVarchar", `f${index}`, `f${index}.field = :fieldName and f${index}.leafId = s.leafId and ${langJoinCrit}`, critParams);
|
|
49
|
+
orderByQb.addOrderBy(orderByField, formatTypeOrmOrder(direction));
|
|
50
|
+
}
|
|
51
|
+
++index;
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
return {
|
|
55
|
+
ordered: true,
|
|
56
|
+
orderBy: orderByAsString ? orderByQb.getAsString() : undefined,
|
|
57
|
+
};
|
|
58
|
+
}
|
|
59
|
+
exports.applyChildOrderingOnQuery = applyChildOrderingOnQuery;
|
|
60
|
+
function makeMapOfOrderProperties(siteContext, children) {
|
|
61
|
+
const orderProperties = new Map();
|
|
62
|
+
for (const child of children ?? []) {
|
|
63
|
+
const documentSchema = (0, anywhere_lib_1.getDocumentTypeByLeafType)(siteContext.siteSchema, child);
|
|
64
|
+
for (const field of documentSchema.fields ?? []) {
|
|
65
|
+
if (field.storedAs !== "varchar")
|
|
66
|
+
continue;
|
|
67
|
+
const prev = orderProperties.get(field.name);
|
|
68
|
+
if (prev) {
|
|
69
|
+
if (prev.dataType !== field.dataType) {
|
|
70
|
+
throw new Error(`Cannot order on '${field.name}': inconsistent data types '${prev.dataType}' and '${field.dataType}'`);
|
|
71
|
+
}
|
|
72
|
+
if (prev.storedOn !== field.storedOn) {
|
|
73
|
+
throw new Error(`Cannot order on '${field.name}': inconsistent storedOn`);
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
else {
|
|
77
|
+
orderProperties.set(field.name, { dataType: field.dataType, storedOn: field.storedOn });
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
return orderProperties;
|
|
82
|
+
}
|
|
83
|
+
function makeOrderByAsStringQB() {
|
|
84
|
+
let arr = [];
|
|
85
|
+
const qb = {
|
|
86
|
+
orderBy(column, direction) {
|
|
87
|
+
arr = [`${column} ${direction}`];
|
|
88
|
+
return qb;
|
|
89
|
+
},
|
|
90
|
+
addOrderBy(column, direction) {
|
|
91
|
+
arr.push(`${column} ${direction}`);
|
|
92
|
+
return qb;
|
|
93
|
+
},
|
|
94
|
+
getAsString() {
|
|
95
|
+
return arr.join(", ");
|
|
96
|
+
},
|
|
97
|
+
};
|
|
98
|
+
return qb;
|
|
99
|
+
}
|
|
100
|
+
function formatTypeOrmOrder(direction) {
|
|
101
|
+
if (direction === "asc")
|
|
102
|
+
return "ASC";
|
|
103
|
+
if (direction === "desc")
|
|
104
|
+
return "DESC";
|
|
105
|
+
throw new Error(`Invalid direction ${direction}`);
|
|
106
|
+
}
|
|
107
|
+
//# sourceMappingURL=child-ordering-query.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"child-ordering-query.js","sourceRoot":"","sources":["../../src/common/child-ordering-query.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { AccountEntity, AccountModel } from "../modules/core/account/account.model";
|
|
2
|
+
import { AccountObjectType, AccountPreferencesObjectType } from "../modules/core/account/account.schema";
|
|
3
|
+
import { DocumentEntity } from "../modules/core/document/document.model";
|
|
4
|
+
import { DocumentObjectType } from "../modules/core/document/document.schema";
|
|
5
|
+
import { LeafEntity } from "../modules/core/leaf/leaf.model";
|
|
6
|
+
import { LeafObjectType } from "../modules/core/leaf/leaf.schema";
|
|
7
|
+
import { SectionEntity } from "../modules/core/section/section.model";
|
|
8
|
+
import { SectionObjectType, SectionWrapObjectType } from "../modules/core/section/section.schema";
|
|
9
|
+
import { TermFlagObjectType } from "../modules/core/term-flag/term-flag.schema";
|
|
10
|
+
import { SiteContext } from "../site-context/site-context.types";
|
|
11
|
+
export declare function leafEntityToObjectType(leaf: LeafEntity): LeafObjectType;
|
|
12
|
+
export declare function sectionEntityToObjectType(section: SectionEntity): SectionObjectType;
|
|
13
|
+
export declare function documentToObjectType(document: DocumentEntity): DocumentObjectType;
|
|
14
|
+
export declare function sectionWrapToObjectType({ lang, leafId }: SectionEntity): SectionWrapObjectType;
|
|
15
|
+
export declare function formatTermFlagObjectType(data: any): TermFlagObjectType;
|
|
16
|
+
export declare function formatAccountPreferences(data: string): AccountPreferencesObjectType;
|
|
17
|
+
export declare function formatToAccountObjectType(data: AccountEntity | AccountModel): AccountObjectType;
|
|
18
|
+
export declare function getAssetsBaseUrl(siteContext: Pick<SiteContext, "version">): string;
|
|
19
|
+
export declare function getSiteAppBaseUrl(): string;
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getSiteAppBaseUrl = exports.getAssetsBaseUrl = exports.formatToAccountObjectType = exports.formatAccountPreferences = exports.formatTermFlagObjectType = exports.sectionWrapToObjectType = exports.documentToObjectType = exports.sectionEntityToObjectType = exports.leafEntityToObjectType = void 0;
|
|
4
|
+
const data_formatters_lib_1 = require("@paroi/data-formatters-lib");
|
|
5
|
+
const anywhere_lib_1 = require("@paroicms/anywhere-lib");
|
|
6
|
+
const site_app_1 = require("@paroicms/site-app");
|
|
7
|
+
const context_1 = require("../context");
|
|
8
|
+
const media_handles_helpers_1 = require("./media-handles.helpers");
|
|
9
|
+
function leafEntityToObjectType(leaf) {
|
|
10
|
+
return {
|
|
11
|
+
id: leaf.id,
|
|
12
|
+
parentId: leaf.parentId,
|
|
13
|
+
leafType: leaf.leafType,
|
|
14
|
+
publishDate: leaf.publishDate,
|
|
15
|
+
relativeId: leaf.relativeId,
|
|
16
|
+
};
|
|
17
|
+
}
|
|
18
|
+
exports.leafEntityToObjectType = leafEntityToObjectType;
|
|
19
|
+
function sectionEntityToObjectType(section) {
|
|
20
|
+
return {
|
|
21
|
+
sectionId: (0, anywhere_lib_1.encodeSectionId)({
|
|
22
|
+
lang: section.lang,
|
|
23
|
+
leafId: section.leafId,
|
|
24
|
+
}),
|
|
25
|
+
ready: section.ready,
|
|
26
|
+
lang: section.lang,
|
|
27
|
+
leafId: section.leafId,
|
|
28
|
+
};
|
|
29
|
+
}
|
|
30
|
+
exports.sectionEntityToObjectType = sectionEntityToObjectType;
|
|
31
|
+
function documentToObjectType(document) {
|
|
32
|
+
return {
|
|
33
|
+
sectionId: (0, anywhere_lib_1.encodeSectionId)({
|
|
34
|
+
lang: document.lang,
|
|
35
|
+
leafId: document.leafId,
|
|
36
|
+
}),
|
|
37
|
+
lang: document.lang,
|
|
38
|
+
leafId: document.leafId,
|
|
39
|
+
metaDescription: document.metaDescription,
|
|
40
|
+
title: document.title,
|
|
41
|
+
slug: document.slug,
|
|
42
|
+
metaKeywords: document.metaKeywords,
|
|
43
|
+
featuredImageHandle: (0, media_handles_helpers_1.getHandleOfFeaturedImage)(document.leafId),
|
|
44
|
+
};
|
|
45
|
+
}
|
|
46
|
+
exports.documentToObjectType = documentToObjectType;
|
|
47
|
+
function sectionWrapToObjectType({ lang, leafId }) {
|
|
48
|
+
return {
|
|
49
|
+
lang,
|
|
50
|
+
leafId,
|
|
51
|
+
sectionId: (0, anywhere_lib_1.encodeSectionId)({ lang, leafId }),
|
|
52
|
+
};
|
|
53
|
+
}
|
|
54
|
+
exports.sectionWrapToObjectType = sectionWrapToObjectType;
|
|
55
|
+
function formatTermFlagObjectType(data) {
|
|
56
|
+
return {
|
|
57
|
+
isLead: (0, data_formatters_lib_1.boolVal)(data.lead),
|
|
58
|
+
taxonomyLeafType: (0, data_formatters_lib_1.strVal)(data.parentLeafType),
|
|
59
|
+
termId: (0, data_formatters_lib_1.strVal)(data.termId),
|
|
60
|
+
};
|
|
61
|
+
}
|
|
62
|
+
exports.formatTermFlagObjectType = formatTermFlagObjectType;
|
|
63
|
+
function formatAccountPreferences(data) {
|
|
64
|
+
const parsedData = JSON.parse(data);
|
|
65
|
+
return {
|
|
66
|
+
lang: (0, data_formatters_lib_1.strValOrUndef)(parsedData.lang),
|
|
67
|
+
};
|
|
68
|
+
}
|
|
69
|
+
exports.formatAccountPreferences = formatAccountPreferences;
|
|
70
|
+
function formatToAccountObjectType(data) {
|
|
71
|
+
return {
|
|
72
|
+
...data,
|
|
73
|
+
preferences: data.preferences ? formatAccountPreferences(data.preferences) : undefined,
|
|
74
|
+
hasPasswordResetToken: data.passwordResetToken ? true : false,
|
|
75
|
+
};
|
|
76
|
+
}
|
|
77
|
+
exports.formatToAccountObjectType = formatToAccountObjectType;
|
|
78
|
+
function getAssetsBaseUrl(siteContext) {
|
|
79
|
+
return `/assets/${siteContext.version ?? context_1.appVersion}`;
|
|
80
|
+
}
|
|
81
|
+
exports.getAssetsBaseUrl = getAssetsBaseUrl;
|
|
82
|
+
function getSiteAppBaseUrl() {
|
|
83
|
+
return `/assets/site-app/${site_app_1.version}`;
|
|
84
|
+
}
|
|
85
|
+
exports.getSiteAppBaseUrl = getSiteAppBaseUrl;
|
|
86
|
+
//# sourceMappingURL=data-format.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"data-format.js","sourceRoot":"","sources":["../../src/common/data-format.ts"],"names":[],"mappings":";;;AAAA,oEAA4E;AAC5E,yDAAyD;AACzD,iDAA+D;AAC/D,wCAAwC;AAcxC,mEAAmE;AAEnE,SAAgB,sBAAsB,CAAC,IAAgB;IACrD,OAAO;QACL,EAAE,EAAE,IAAI,CAAC,EAAE;QACX,QAAQ,EAAE,IAAI,CAAC,QAAQ;QACvB,QAAQ,EAAE,IAAI,CAAC,QAAQ;QACvB,WAAW,EAAE,IAAI,CAAC,WAAW;QAC7B,UAAU,EAAE,IAAI,CAAC,UAAU;KAC5B,CAAC;AACJ,CAAC;AARD,wDAQC;AAED,SAAgB,yBAAyB,CAAC,OAAsB;IAC9D,OAAO;QACL,SAAS,EAAE,IAAA,8BAAe,EAAC;YACzB,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,MAAM,EAAE,OAAO,CAAC,MAAM;SACvB,CAAC;QACF,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,MAAM,EAAE,OAAO,CAAC,MAAM;KACvB,CAAC;AACJ,CAAC;AAVD,8DAUC;AAED,SAAgB,oBAAoB,CAAC,QAAwB;IAC3D,OAAO;QACL,SAAS,EAAE,IAAA,8BAAe,EAAC;YACzB,IAAI,EAAE,QAAQ,CAAC,IAAI;YACnB,MAAM,EAAE,QAAQ,CAAC,MAAM;SACxB,CAAC;QACF,IAAI,EAAE,QAAQ,CAAC,IAAI;QACnB,MAAM,EAAE,QAAQ,CAAC,MAAM;QACvB,eAAe,EAAE,QAAQ,CAAC,eAAe;QACzC,KAAK,EAAE,QAAQ,CAAC,KAAK;QACrB,IAAI,EAAE,QAAQ,CAAC,IAAI;QACnB,YAAY,EAAE,QAAQ,CAAC,YAAY;QACnC,mBAAmB,EAAE,IAAA,gDAAwB,EAAC,QAAQ,CAAC,MAAM,CAAC;KAC/D,CAAC;AACJ,CAAC;AAdD,oDAcC;AAED,SAAgB,uBAAuB,CAAC,EAAE,IAAI,EAAE,MAAM,EAAiB;IACrE,OAAO;QACL,IAAI;QACJ,MAAM;QACN,SAAS,EAAE,IAAA,8BAAe,EAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;KAC7C,CAAC;AACJ,CAAC;AAND,0DAMC;AAED,SAAgB,wBAAwB,CAAC,IAAS;IAChD,OAAO;QACL,MAAM,EAAE,IAAA,6BAAO,EAAC,IAAI,CAAC,IAAI,CAAC;QAC1B,gBAAgB,EAAE,IAAA,4BAAM,EAAC,IAAI,CAAC,cAAc,CAAC;QAC7C,MAAM,EAAE,IAAA,4BAAM,EAAC,IAAI,CAAC,MAAM,CAAC;KAC5B,CAAC;AACJ,CAAC;AAND,4DAMC;AAED,SAAgB,wBAAwB,CAAC,IAAY;IACnD,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACpC,OAAO;QACL,IAAI,EAAE,IAAA,mCAAa,EAAC,UAAU,CAAC,IAAI,CAAC;KACrC,CAAC;AACJ,CAAC;AALD,4DAKC;AAED,SAAgB,yBAAyB,CAAC,IAAkC;IAC1E,OAAO;QACL,GAAG,IAAI;QACP,WAAW,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,wBAAwB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,SAAS;QACtF,qBAAqB,EAAE,IAAI,CAAC,kBAAkB,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK;KAC9D,CAAC;AACJ,CAAC;AAND,8DAMC;AAED,SAAgB,gBAAgB,CAAC,WAAyC;IACxE,OAAO,WAAW,WAAW,CAAC,OAAO,IAAI,oBAAU,EAAE,CAAC;AACxD,CAAC;AAFD,4CAEC;AAED,SAAgB,iBAAiB;IAC/B,OAAO,oBAAoB,kBAAc,EAAE,CAAC;AAC9C,CAAC;AAFD,8CAEC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export declare function escapeHtml(text: string, options?: {
|
|
2
|
+
newLinesToBr?: boolean;
|
|
3
|
+
}): string;
|
|
4
|
+
export declare function newLinesToBr(text: string): string;
|
|
5
|
+
export declare function htmlToText(html: string): string;
|
|
6
|
+
export declare function stripHtmlTags(html: string): string;
|
|
7
|
+
export declare function replaceLinks(html: string): string;
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.replaceLinks = exports.stripHtmlTags = exports.htmlToText = exports.newLinesToBr = exports.escapeHtml = void 0;
|
|
4
|
+
const htmlEntities = {
|
|
5
|
+
"&": "&",
|
|
6
|
+
"<": "<",
|
|
7
|
+
">": ">",
|
|
8
|
+
'"': """,
|
|
9
|
+
"'": "'",
|
|
10
|
+
};
|
|
11
|
+
function escapeHtml(text, options = {}) {
|
|
12
|
+
let val = text;
|
|
13
|
+
val = val.replace(/[&<>"']/g, (m) => htmlEntities[m]);
|
|
14
|
+
if (options.newLinesToBr) {
|
|
15
|
+
val = newLinesToBr(val);
|
|
16
|
+
}
|
|
17
|
+
return val;
|
|
18
|
+
}
|
|
19
|
+
exports.escapeHtml = escapeHtml;
|
|
20
|
+
function newLinesToBr(text) {
|
|
21
|
+
return text.replace(/(?:\r\n|\r|\n)/g, "<br>\n");
|
|
22
|
+
}
|
|
23
|
+
exports.newLinesToBr = newLinesToBr;
|
|
24
|
+
function htmlToText(html) {
|
|
25
|
+
return stripHtmlTags(replaceLinks(html));
|
|
26
|
+
}
|
|
27
|
+
exports.htmlToText = htmlToText;
|
|
28
|
+
const tagBody = "(?:[^\"'>]|\"[^\"]*\"|'[^']*')*";
|
|
29
|
+
const tagOrComment = new RegExp(`<(?:!--(?:(?:-*[^->])*--+|-?)|script\\b${tagBody}>[\\s\\S]*?</script\\s*|style\\b${tagBody}>[\\s\\S]*?</style\\s*|/?[a-z]${tagBody})>`, "gi");
|
|
30
|
+
function stripHtmlTags(html) {
|
|
31
|
+
let val = html;
|
|
32
|
+
let oldHtml;
|
|
33
|
+
do {
|
|
34
|
+
oldHtml = val;
|
|
35
|
+
val = val.replace(tagOrComment, "");
|
|
36
|
+
} while (val !== oldHtml);
|
|
37
|
+
return val.replace(/</g, "<");
|
|
38
|
+
}
|
|
39
|
+
exports.stripHtmlTags = stripHtmlTags;
|
|
40
|
+
function replaceLinks(html) {
|
|
41
|
+
return html.replace(/<a\s+[^>]*href="([^"]*)"[^>]*>([\s\S]*)<\/a>/gi, (_, url, label) => {
|
|
42
|
+
return `${label.trim()} ( ${url} )`;
|
|
43
|
+
});
|
|
44
|
+
}
|
|
45
|
+
exports.replaceLinks = replaceLinks;
|
|
46
|
+
//# sourceMappingURL=html-helpers.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"html-helpers.js","sourceRoot":"","sources":["../../../src/common/mail/html-helpers.ts"],"names":[],"mappings":";;;AAMA,MAAM,YAAY,GAAG;IACnB,GAAG,EAAE,OAAO;IACZ,GAAG,EAAE,MAAM;IACX,GAAG,EAAE,MAAM;IACX,GAAG,EAAE,QAAQ;IACb,GAAG,EAAE,QAAQ;CACd,CAAC;AAEF,SAAgB,UAAU,CAAC,IAAY,EAAE,UAAsC,EAAE;IAC/E,IAAI,GAAG,GAAG,IAAI,CAAC;IACf,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,YAAY,CAAC,CAA8B,CAAC,CAAC,CAAC;IACnF,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC;QACzB,GAAG,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC;IAC1B,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAPD,gCAOC;AAED,SAAgB,YAAY,CAAC,IAAY;IACvC,OAAO,IAAI,CAAC,OAAO,CAAC,iBAAiB,EAAE,QAAQ,CAAC,CAAC;AACnD,CAAC;AAFD,oCAEC;AAED,SAAgB,UAAU,CAAC,IAAY;IACrC,OAAO,aAAa,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC;AAC3C,CAAC;AAFD,gCAEC;AAKD,MAAM,OAAO,GAAG,iCAAiC,CAAC;AAClD,MAAM,YAAY,GAAG,IAAI,MAAM,CAC7B,0CAA0C,OAAO,mCAAmC,OAAO,iCAAiC,OAAO,IAAI,EACvI,IAAI,CACL,CAAC;AAEF,SAAgB,aAAa,CAAC,IAAY;IACxC,IAAI,GAAG,GAAG,IAAI,CAAC;IACf,IAAI,OAAe,CAAC;IACpB,GAAG,CAAC;QACF,OAAO,GAAG,GAAG,CAAC;QACd,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC;IACtC,CAAC,QAAQ,GAAG,KAAK,OAAO,EAAE;IAC1B,OAAO,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;AACnC,CAAC;AARD,sCAQC;AAED,SAAgB,YAAY,CAAC,IAAY;IACvC,OAAO,IAAI,CAAC,OAAO,CAAC,gDAAgD,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE;QACtF,OAAO,GAAG,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACtC,CAAC,CAAC,CAAC;AACL,CAAC;AAJD,oCAIC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { AppLog } from "@paroicms/server-lib";
|
|
2
|
+
export interface MailData {
|
|
3
|
+
subject: string;
|
|
4
|
+
html: string;
|
|
5
|
+
replyTo?: ReplyTo;
|
|
6
|
+
to: string;
|
|
7
|
+
}
|
|
8
|
+
export interface ReplyTo {
|
|
9
|
+
email: string;
|
|
10
|
+
name: string;
|
|
11
|
+
}
|
|
12
|
+
export declare function sendMail({ subject, html, replyTo, to }: MailData, { appLog }: {
|
|
13
|
+
appLog: AppLog;
|
|
14
|
+
}): Promise<void>;
|