@paroicms/server 1.102.3 → 1.104.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 +1 -16
- package/ddl/main.ddl.sql +91 -0
- package/dist/admin-backend/account/account.queries.d.ts +3 -3
- package/dist/admin-backend/account/account.queries.js.map +1 -1
- package/dist/admin-backend/account/account.resolver.d.ts +1 -1
- package/dist/admin-backend/account/account.resolver.js +9 -0
- package/dist/admin-backend/account/account.resolver.js.map +1 -1
- package/dist/admin-backend/auth/auth.service.d.ts +12 -3
- package/dist/admin-backend/auth/auth.service.js +7 -7
- package/dist/admin-backend/auth/auth.service.js.map +1 -1
- package/dist/admin-backend/backup/backup.controller.js +2 -1
- package/dist/admin-backend/backup/backup.controller.js.map +1 -1
- package/dist/admin-backend/backup/backup.resolver.d.ts +1 -1
- package/dist/admin-backend/backup/backup.resolver.js +2 -0
- package/dist/admin-backend/backup/backup.resolver.js.map +1 -1
- package/dist/admin-backend/backup/hardened-backup.service.js +2 -1
- package/dist/admin-backend/backup/hardened-backup.service.js.map +1 -1
- package/dist/admin-backend/document/document.resolver.d.ts +1 -1
- package/dist/admin-backend/document/document.resolver.extend.d.ts +1 -1
- package/dist/admin-backend/document/document.resolver.extend.js +2 -0
- package/dist/admin-backend/document/document.resolver.extend.js.map +1 -1
- package/dist/admin-backend/document/document.resolver.js +12 -2
- package/dist/admin-backend/document/document.resolver.js.map +1 -1
- package/dist/admin-backend/document/load-documents.queries.d.ts +1 -1
- package/dist/admin-backend/document/load-documents.queries.js.map +1 -1
- package/dist/admin-backend/document/save-documents.queries.js +55 -12
- package/dist/admin-backend/document/save-documents.queries.js.map +1 -1
- package/dist/admin-backend/fields/fields.resolver.d.ts +1 -1
- package/dist/admin-backend/fields/fields.resolver.js +10 -2
- package/dist/admin-backend/fields/fields.resolver.js.map +1 -1
- package/dist/admin-backend/fields/load-fields.queries.d.ts +2 -2
- package/dist/admin-backend/fields/load-fields.queries.js +1 -1
- package/dist/admin-backend/fields/load-fields.queries.js.map +1 -1
- package/dist/admin-backend/lnode/lnode-wrap.resolver.d.ts +1 -1
- package/dist/admin-backend/lnode/lnode-wrap.resolver.js +14 -1
- package/dist/admin-backend/lnode/lnode-wrap.resolver.js.map +1 -1
- package/dist/admin-backend/lnode/lnode.queries.d.ts +2 -0
- package/dist/admin-backend/lnode/lnode.queries.js +27 -54
- package/dist/admin-backend/lnode/lnode.queries.js.map +1 -1
- package/dist/admin-backend/login/login.controller.d.ts +2 -2
- package/dist/admin-backend/login/login.controller.js +17 -5
- package/dist/admin-backend/login/login.controller.js.map +1 -1
- package/dist/admin-backend/media/media-upload.controller.js +3 -9
- package/dist/admin-backend/media/media-upload.controller.js.map +1 -1
- package/dist/admin-backend/media/media.resolver.d.ts +1 -1
- package/dist/admin-backend/media/media.resolver.extend.d.ts +1 -1
- package/dist/admin-backend/media/media.resolver.extend.js +2 -0
- package/dist/admin-backend/media/media.resolver.extend.js.map +1 -1
- package/dist/admin-backend/media/media.resolver.js +11 -0
- package/dist/admin-backend/media/media.resolver.js.map +1 -1
- package/dist/admin-backend/migration/migration.resolver.d.ts +3 -0
- package/dist/admin-backend/migration/migration.resolver.js +38 -0
- package/dist/admin-backend/migration/migration.resolver.js.map +1 -0
- package/dist/admin-backend/node/node-cte.queries.d.ts +25 -0
- package/dist/admin-backend/node/node-cte.queries.js +116 -0
- package/dist/admin-backend/node/node-cte.queries.js.map +1 -0
- package/dist/admin-backend/node/node.queries.d.ts +1 -3
- package/dist/admin-backend/node/node.queries.js +5 -19
- package/dist/admin-backend/node/node.queries.js.map +1 -1
- package/dist/admin-backend/node/node.resolver.d.ts +1 -1
- package/dist/admin-backend/node/node.resolver.extend.d.ts +1 -1
- package/dist/admin-backend/node/node.resolver.extend.js +2 -0
- package/dist/admin-backend/node/node.resolver.extend.js.map +1 -1
- package/dist/admin-backend/node/node.resolver.js +7 -2
- package/dist/admin-backend/node/node.resolver.js.map +1 -1
- package/dist/admin-backend/part/part.queries.js +1 -1
- package/dist/admin-backend/part/part.queries.js.map +1 -1
- package/dist/admin-backend/part/part.resolver.d.ts +1 -1
- package/dist/admin-backend/part/part.resolver.extend.d.ts +1 -1
- package/dist/admin-backend/part/part.resolver.extend.js +3 -0
- package/dist/admin-backend/part/part.resolver.extend.js.map +1 -1
- package/dist/admin-backend/part/part.resolver.js +7 -0
- package/dist/admin-backend/part/part.resolver.js.map +1 -1
- package/dist/admin-backend/routing-cluster/cluster-management.d.ts +8 -0
- package/dist/admin-backend/routing-cluster/cluster-management.js +217 -0
- package/dist/admin-backend/routing-cluster/cluster-management.js.map +1 -0
- package/dist/admin-backend/routing-cluster/cluster-validation.d.ts +7 -0
- package/dist/admin-backend/routing-cluster/cluster-validation.js +48 -0
- package/dist/admin-backend/routing-cluster/cluster-validation.js.map +1 -0
- package/dist/admin-backend/routing-cluster/routing-cluster.queries.d.ts +3 -0
- package/dist/admin-backend/routing-cluster/routing-cluster.queries.js +34 -0
- package/dist/admin-backend/routing-cluster/routing-cluster.queries.js.map +1 -0
- package/dist/admin-backend/routing-cluster/routing-cluster.resolver.d.ts +3 -0
- package/dist/admin-backend/routing-cluster/routing-cluster.resolver.js +72 -0
- package/dist/admin-backend/routing-cluster/routing-cluster.resolver.js.map +1 -0
- package/dist/admin-backend/site-constants/site-constants.resolver.d.ts +1 -1
- package/dist/admin-backend/site-constants/site-constants.resolver.js +6 -5
- package/dist/admin-backend/site-constants/site-constants.resolver.js.map +1 -1
- package/dist/admin-backend/unprotected/unprotected.resolver.js +14 -3
- package/dist/admin-backend/unprotected/unprotected.resolver.js.map +1 -1
- package/dist/common/data-format.d.ts +1 -1
- package/dist/common/data-format.js.map +1 -1
- package/dist/common/media-handles.helpers.d.ts +3 -3
- package/dist/common/media-handles.helpers.js +3 -3
- package/dist/common/media-handles.helpers.js.map +1 -1
- package/dist/common/medias/media-lib.js +1 -1
- package/dist/common/medias/media-lib.js.map +1 -1
- package/dist/connector/app-conf/app-conf-formatter.d.ts +3 -0
- package/dist/connector/app-conf/app-conf-formatter.js +144 -0
- package/dist/connector/app-conf/app-conf-formatter.js.map +1 -0
- package/dist/connector/app-conf/app-conf-reader.d.ts +3 -0
- package/dist/connector/app-conf/app-conf-reader.js +11 -0
- package/dist/connector/app-conf/app-conf-reader.js.map +1 -0
- package/dist/connector/app-conf/app-conf.types.d.ts +45 -0
- package/dist/connector/app-conf/app-conf.types.js +2 -0
- package/dist/connector/app-conf/app-conf.types.js.map +1 -0
- package/dist/connector/db-init/db-constants.d.ts +2 -0
- package/dist/connector/db-init/db-constants.js +3 -0
- package/dist/connector/db-init/db-constants.js.map +1 -0
- package/dist/connector/db-init/db-init.d.ts +10 -0
- package/dist/connector/db-init/db-init.js +42 -0
- package/dist/connector/db-init/db-init.js.map +1 -0
- package/dist/connector/db-init/ddl-migration.d.ts +6 -0
- package/dist/connector/db-init/ddl-migration.js +190 -0
- package/dist/connector/db-init/ddl-migration.js.map +1 -0
- package/dist/connector/db-init/init-node-queries.d.ts +11 -0
- package/dist/connector/db-init/init-node-queries.js +103 -0
- package/dist/connector/db-init/init-node-queries.js.map +1 -0
- package/dist/connector/db-init/load-routing-cluster.queries.d.ts +36 -0
- package/dist/connector/db-init/load-routing-cluster.queries.js +265 -0
- package/dist/connector/db-init/load-routing-cluster.queries.js.map +1 -0
- package/dist/connector/db-init/populate-routing-documents.d.ts +9 -0
- package/dist/connector/db-init/populate-routing-documents.js +66 -0
- package/dist/connector/db-init/populate-routing-documents.js.map +1 -0
- package/dist/connector/media-storage.d.ts +4 -0
- package/dist/connector/media-storage.js +14 -0
- package/dist/connector/media-storage.js.map +1 -0
- package/dist/connector/plugin-loader/init-plugins.d.ts +8 -0
- package/dist/connector/plugin-loader/init-plugins.js +98 -0
- package/dist/connector/plugin-loader/init-plugins.js.map +1 -0
- package/dist/connector/plugin-loader/plugin-loader.d.ts +8 -0
- package/dist/connector/plugin-loader/plugin-loader.js +76 -0
- package/dist/connector/plugin-loader/plugin-loader.js.map +1 -0
- package/dist/connector/plugin-loader/plugin-public-helpers.d.ts +2 -0
- package/dist/connector/plugin-loader/plugin-public-helpers.js +4 -0
- package/dist/connector/plugin-loader/plugin-public-helpers.js.map +1 -0
- package/dist/connector/plugin-loader/plugin-types.d.ts +53 -0
- package/dist/connector/plugin-loader/plugin-types.js +2 -0
- package/dist/connector/plugin-loader/plugin-types.js.map +1 -0
- package/dist/connector/public-site-context-types.d.ts +16 -0
- package/dist/connector/public-site-context-types.js +2 -0
- package/dist/connector/public-site-context-types.js.map +1 -0
- package/dist/connector/row-types.d.ts +58 -0
- package/dist/connector/row-types.js +2 -0
- package/dist/connector/row-types.js.map +1 -0
- package/dist/connector/single-site-builder/default-config.d.ts +3 -0
- package/dist/connector/single-site-builder/default-config.js +24 -0
- package/dist/connector/single-site-builder/default-config.js.map +1 -0
- package/dist/connector/single-site-builder/default-readme.d.ts +1 -0
- package/dist/connector/single-site-builder/default-readme.js +4 -0
- package/dist/connector/single-site-builder/default-readme.js.map +1 -0
- package/dist/connector/single-site-builder/site-builder.d.ts +27 -0
- package/dist/connector/single-site-builder/site-builder.js +91 -0
- package/dist/connector/single-site-builder/site-builder.js.map +1 -0
- package/dist/connector/site-backup/archiver.helper.d.ts +12 -0
- package/dist/connector/site-backup/archiver.helper.js +36 -0
- package/dist/connector/site-backup/archiver.helper.js.map +1 -0
- package/dist/connector/site-backup/backup-tasks.d.ts +14 -0
- package/dist/connector/site-backup/backup-tasks.js +42 -0
- package/dist/connector/site-backup/backup-tasks.js.map +1 -0
- package/dist/connector/site-backup/backup.d.ts +12 -0
- package/dist/connector/site-backup/backup.helper.d.ts +3 -0
- package/dist/connector/site-backup/backup.helper.js +8 -0
- package/dist/connector/site-backup/backup.helper.js.map +1 -0
- package/dist/connector/site-backup/backup.js +34 -0
- package/dist/connector/site-backup/backup.js.map +1 -0
- package/dist/connector/site-conf/site-conf.d.ts +8 -0
- package/dist/connector/site-conf/site-conf.js +117 -0
- package/dist/connector/site-conf/site-conf.js.map +1 -0
- package/dist/connector/site-conf/site-place-types.d.ts +5 -0
- package/dist/connector/site-conf/site-place-types.js +2 -0
- package/dist/connector/site-conf/site-place-types.js.map +1 -0
- package/dist/connector/site-schema/common-schema-reader.d.ts +2 -0
- package/dist/connector/site-schema/common-schema-reader.js +56 -0
- package/dist/connector/site-schema/common-schema-reader.js.map +1 -0
- package/dist/connector/site-schema/common-schema-types.d.ts +13 -0
- package/dist/connector/site-schema/common-schema-types.js +2 -0
- package/dist/connector/site-schema/common-schema-types.js.map +1 -0
- package/dist/connector/site-schema/default-media-policy.d.ts +3 -0
- package/dist/connector/site-schema/default-media-policy.js +21 -0
- package/dist/connector/site-schema/default-media-policy.js.map +1 -0
- package/dist/connector/site-schema/read-locales.d.ts +23 -0
- package/dist/connector/site-schema/read-locales.js +214 -0
- package/dist/connector/site-schema/read-locales.js.map +1 -0
- package/dist/connector/site-schema/schema-lib.d.ts +29 -0
- package/dist/connector/site-schema/schema-lib.js +62 -0
- package/dist/connector/site-schema/schema-lib.js.map +1 -0
- package/dist/connector/site-schema/site-configuration.d.ts +4 -0
- package/dist/connector/site-schema/site-configuration.js +2 -0
- package/dist/connector/site-schema/site-configuration.js.map +1 -0
- package/dist/connector/site-schema/site-schema-factory.d.ts +21 -0
- package/dist/connector/site-schema/site-schema-factory.js +601 -0
- package/dist/connector/site-schema/site-schema-factory.js.map +1 -0
- package/dist/connector/site-schema/site-schema-helpers.d.ts +3 -0
- package/dist/connector/site-schema/site-schema-helpers.js +7 -0
- package/dist/connector/site-schema/site-schema-helpers.js.map +1 -0
- package/dist/connector/site-schema/site-schema-lib-reader.d.ts +8 -0
- package/dist/connector/site-schema/site-schema-lib-reader.js +42 -0
- package/dist/connector/site-schema/site-schema-lib-reader.js.map +1 -0
- package/dist/connector/site-schema/site-schema-public-helpers.d.ts +3 -0
- package/dist/connector/site-schema/site-schema-public-helpers.js +15 -0
- package/dist/connector/site-schema/site-schema-public-helpers.js.map +1 -0
- package/dist/connector/theme-conf/theme-conf-reader.d.ts +4 -0
- package/dist/connector/theme-conf/theme-conf-reader.js +31 -0
- package/dist/connector/theme-conf/theme-conf-reader.js.map +1 -0
- package/dist/context.d.ts +3 -3
- package/dist/context.js +3 -3
- package/dist/context.js.map +1 -1
- package/dist/express/http-helpers.d.ts +3 -3
- package/dist/express/http-redirection-url.d.ts +1 -1
- package/dist/express/local-testing-route.js +5 -1
- package/dist/express/local-testing-route.js.map +1 -1
- package/dist/express/route-handler-wrapper.d.ts +9 -1
- package/dist/express/route-handler-wrapper.js +25 -2
- package/dist/express/route-handler-wrapper.js.map +1 -1
- package/dist/express/site-middleware.js +3 -6
- package/dist/express/site-middleware.js.map +1 -1
- package/dist/express/static-files.req-handler.d.ts +2 -2
- package/dist/express/static-files.req-handler.js +3 -3
- package/dist/express/static-files.req-handler.js.map +1 -1
- package/dist/graphql/apollo-server-init.js +4 -0
- package/dist/graphql/apollo-server-init.js.map +1 -1
- package/dist/graphql/graphql.types.d.ts +7 -2
- package/dist/graphql/graphql.types.js +6 -1
- package/dist/graphql/graphql.types.js.map +1 -1
- package/dist/helpers/special-account.helpers.d.ts +1 -1
- package/dist/helpers/special-account.helpers.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +2 -1
- package/dist/index.js.map +1 -1
- package/dist/liquidjs-tools/liquidjs-drop.d.ts +5 -5
- package/dist/liquidjs-tools/liquidjs-drop.js +16 -4
- package/dist/liquidjs-tools/liquidjs-drop.js.map +1 -1
- package/dist/liquidjs-tools/liquidjs-utils.d.ts +0 -2
- package/dist/liquidjs-tools/liquidjs-utils.js +0 -7
- package/dist/liquidjs-tools/liquidjs-utils.js.map +1 -1
- package/dist/maintenance/maintenance-task.js +4 -2
- package/dist/maintenance/maintenance-task.js.map +1 -1
- package/dist/plugin-services/make-backend-plugin-service.d.ts +1 -1
- package/dist/plugin-services/make-backend-plugin-service.js +3 -3
- package/dist/plugin-services/make-backend-plugin-service.js.map +1 -1
- package/dist/public-api/password-reset/password-reset.service.js.map +1 -1
- package/dist/public-api/public-api-rendering.js +13 -0
- package/dist/public-api/public-api-rendering.js.map +1 -1
- package/dist/rendered-site/feed/feed-generator.js +1 -1
- package/dist/rendered-site/feed/feed-generator.js.map +1 -1
- package/dist/rendered-site/liquidjs-filters/head-tags-filter.d.ts +1 -1
- package/dist/rendered-site/liquidjs-filters/head-tags-filter.js +7 -3
- package/dist/rendered-site/liquidjs-filters/head-tags-filter.js.map +1 -1
- package/dist/rendered-site/liquidjs-filters/info-filter.js +4 -2
- package/dist/rendered-site/liquidjs-filters/info-filter.js.map +1 -1
- package/dist/rendered-site/liquidjs-filters/inject-menu-items-data.js +2 -1
- package/dist/rendered-site/liquidjs-filters/inject-menu-items-data.js.map +1 -1
- package/dist/rendered-site/liquidjs-filters/open-graph-filter.d.ts +1 -1
- package/dist/rendered-site/liquidjs-filters/plugin-asset-url-filter.js +1 -1
- package/dist/rendered-site/liquidjs-filters/plugin-asset-url-filter.js.map +1 -1
- package/dist/rendered-site/liquidjs-tags/get-docs-tag.js +1 -1
- package/dist/rendered-site/liquidjs-tags/get-docs-tag.js.map +1 -1
- package/dist/rendered-site/liquidjs-tags/get-paginated-docs-tag.js +1 -1
- package/dist/rendered-site/liquidjs-tags/get-paginated-docs-tag.js.map +1 -1
- package/dist/rendered-site/page-route/make-url.d.ts +5 -2
- package/dist/rendered-site/page-route/make-url.js +48 -112
- package/dist/rendered-site/page-route/make-url.js.map +1 -1
- package/dist/rendered-site/page-route/page-route-parser.d.ts +10 -5
- package/dist/rendered-site/page-route/page-route-parser.js +288 -75
- package/dist/rendered-site/page-route/page-route-parser.js.map +1 -1
- package/dist/rendered-site/page-route/raw-document-payload.js +16 -25
- package/dist/rendered-site/page-route/raw-document-payload.js.map +1 -1
- package/dist/rendered-site/serve-document/serve-document.js.map +1 -1
- package/dist/rendering-payload/breadcrumb.queries.js +6 -2
- package/dist/rendering-payload/breadcrumb.queries.js.map +1 -1
- package/dist/rendering-payload/cluster-payloads.d.ts +7 -0
- package/dist/rendering-payload/cluster-payloads.js +50 -0
- package/dist/rendering-payload/cluster-payloads.js.map +1 -0
- package/dist/rendering-payload/create-doc-drop.d.ts +1 -1
- package/dist/rendering-payload/create-doc-drop.js +127 -120
- package/dist/rendering-payload/create-doc-drop.js.map +1 -1
- package/dist/rendering-payload/create-part-drop.js +1 -2
- package/dist/rendering-payload/create-part-drop.js.map +1 -1
- package/dist/rendering-payload/doc-values.queries.js +1 -1
- package/dist/rendering-payload/doc-values.queries.js.map +1 -1
- package/dist/rendering-payload/excerpt.queries.js +1 -1
- package/dist/rendering-payload/excerpt.queries.js.map +1 -1
- package/dist/rendering-payload/field-values.d.ts +1 -6
- package/dist/rendering-payload/field-values.js +2 -58
- package/dist/rendering-payload/field-values.js.map +1 -1
- package/dist/rendering-payload/get-siblings.queries.d.ts +3 -2
- package/dist/rendering-payload/get-siblings.queries.js +42 -27
- package/dist/rendering-payload/get-siblings.queries.js.map +1 -1
- package/dist/rendering-payload/make-public-payload.d.ts +1 -4
- package/dist/rendering-payload/make-public-payload.js +3 -0
- package/dist/rendering-payload/make-public-payload.js.map +1 -1
- package/dist/rendering-payload/parts.queries.js +1 -1
- package/dist/rendering-payload/parts.queries.js.map +1 -1
- package/dist/rendering-payload/rendering-payload.types.d.ts +21 -15
- package/dist/rendering-payload/site-payload.d.ts +2 -3
- package/dist/rendering-payload/site-payload.js +43 -37
- package/dist/rendering-payload/site-payload.js.map +1 -1
- package/dist/rendering-payload/translations.queries.js +2 -3
- package/dist/rendering-payload/translations.queries.js.map +1 -1
- package/dist/running-server/running-server-connector.d.ts +2 -0
- package/dist/{helpers/running-instance-connector.js → running-server/running-server-connector.js} +20 -8
- package/dist/running-server/running-server-connector.js.map +1 -0
- package/dist/running-server/single-site-generator.d.ts +2 -0
- package/dist/running-server/single-site-generator.js +23 -0
- package/dist/running-server/single-site-generator.js.map +1 -0
- package/dist/site-context/core-plugin/core-hooks.d.ts +1 -1
- package/dist/site-context/core-plugin/create-core-plugin.d.ts +1 -1
- package/dist/site-context/core-plugin/create-core-plugin.js.map +1 -1
- package/dist/site-context/load-site-context.d.ts +2 -2
- package/dist/site-context/load-site-context.js +65 -7
- package/dist/site-context/load-site-context.js.map +1 -1
- package/dist/site-context/refresh-site-context.d.ts +1 -0
- package/dist/site-context/refresh-site-context.js +15 -0
- package/dist/site-context/refresh-site-context.js.map +1 -0
- package/dist/site-context/site-context.d.ts +7 -7
- package/dist/site-context/site-context.js +17 -7
- package/dist/site-context/site-context.js.map +1 -1
- package/dist/site-context/site-context.types.d.ts +28 -4
- package/dist/site-context/site-values-for-site-context.d.ts +1 -1
- package/dist/site-context/site-values-for-site-context.js.map +1 -1
- package/dist/site-schema-migration/migrations/site-schema-migration-6-to-7.d.ts +9 -0
- package/dist/site-schema-migration/migrations/site-schema-migration-6-to-7.js +61 -0
- package/dist/site-schema-migration/migrations/site-schema-migration-6-to-7.js.map +1 -0
- package/dist/site-schema-migration/migrations/site-schema-migration-7-to-8.d.ts +9 -0
- package/dist/site-schema-migration/migrations/site-schema-migration-7-to-8.js +54 -0
- package/dist/site-schema-migration/migrations/site-schema-migration-7-to-8.js.map +1 -0
- package/dist/site-schema-migration/migrations/site-schema-migration-8-to-9.d.ts +9 -0
- package/dist/site-schema-migration/migrations/site-schema-migration-8-to-9.js +44 -0
- package/dist/site-schema-migration/migrations/site-schema-migration-8-to-9.js.map +1 -0
- package/dist/site-schema-migration/site-schema-migration.d.ts +3 -0
- package/dist/site-schema-migration/site-schema-migration.js +43 -0
- package/dist/site-schema-migration/site-schema-migration.js.map +1 -0
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +16 -12
- package/schema.graphql +48 -2
- package/site-schema-lib/common-schema.json +40 -0
- package/site-schema-lib/common-schema.l10n.de.json +10 -0
- package/site-schema-lib/common-schema.l10n.en.json +10 -0
- package/site-schema-lib/common-schema.l10n.es.json +10 -0
- package/site-schema-lib/common-schema.l10n.fr.json +10 -0
- package/site-schema-lib/common-schema.l10n.it.json +10 -0
- package/site-schema-lib/common-schema.l10n.pt.json +10 -0
- package/site-schema-lib/field-lib.site-schema.json +84 -0
- package/site-schema-lib/field-lib.site-schema.l10n.de.json +38 -0
- package/site-schema-lib/field-lib.site-schema.l10n.en.json +38 -0
- package/site-schema-lib/field-lib.site-schema.l10n.es.json +38 -0
- package/site-schema-lib/field-lib.site-schema.l10n.fr.json +41 -0
- package/site-schema-lib/field-lib.site-schema.l10n.it.json +38 -0
- package/site-schema-lib/field-lib.site-schema.l10n.pt.json +38 -0
- package/dist/admin-backend/document/document.helper.d.ts +0 -2
- package/dist/admin-backend/document/document.helper.js +0 -6
- package/dist/admin-backend/document/document.helper.js.map +0 -1
- package/dist/helpers/running-instance-connector.d.ts +0 -2
- package/dist/helpers/running-instance-connector.js.map +0 -1
|
@@ -0,0 +1,214 @@
|
|
|
1
|
+
import { pathExists } from "@paroicms/internal-server-lib";
|
|
2
|
+
import { coreLanguages, languageLabelIn, } from "@paroicms/public-anywhere-lib";
|
|
3
|
+
import { jsonTypeValidator } from "@paroicms/public-server-lib";
|
|
4
|
+
import { readFile } from "node:fs/promises";
|
|
5
|
+
import { join } from "node:path";
|
|
6
|
+
export function createEmptySchemaLocales(languages, commonLanguageLabels) {
|
|
7
|
+
const locales = {};
|
|
8
|
+
for (const language of languages) {
|
|
9
|
+
locales[language] = {
|
|
10
|
+
languageLabel: commonLanguageLabels[language] ?? language,
|
|
11
|
+
nodeTypes: {},
|
|
12
|
+
};
|
|
13
|
+
}
|
|
14
|
+
return locales;
|
|
15
|
+
}
|
|
16
|
+
export function createEmptyLocalizedTranslations(languages) {
|
|
17
|
+
const locales = {};
|
|
18
|
+
for (const language of languages) {
|
|
19
|
+
locales[language] = {};
|
|
20
|
+
}
|
|
21
|
+
const onlyUnsupportedLanguages = !languages.some((language) => coreLanguages.includes(language));
|
|
22
|
+
if (onlyUnsupportedLanguages && !locales.en) {
|
|
23
|
+
locales.en = {};
|
|
24
|
+
}
|
|
25
|
+
return locales;
|
|
26
|
+
}
|
|
27
|
+
export function mergeL10nDepth2(from, to) {
|
|
28
|
+
for (const language of Object.keys(to)) {
|
|
29
|
+
const locales = from[language];
|
|
30
|
+
if (!locales)
|
|
31
|
+
continue;
|
|
32
|
+
for (const [key1, val1] of Object.entries(locales)) {
|
|
33
|
+
if (typeof val1 === "string") {
|
|
34
|
+
if (to[language][key1]) {
|
|
35
|
+
throw new Error(`duplicate '${key1}', for language '${language}'`);
|
|
36
|
+
}
|
|
37
|
+
to[language][key1] = val1;
|
|
38
|
+
continue;
|
|
39
|
+
}
|
|
40
|
+
if (!to[language][key1]) {
|
|
41
|
+
to[language][key1] = {};
|
|
42
|
+
}
|
|
43
|
+
else if (typeof to[language][key1] === "string") {
|
|
44
|
+
throw new Error(`translation type conflict '${key1}', for language '${language}'`);
|
|
45
|
+
}
|
|
46
|
+
for (const [key2, val2] of Object.entries(val1)) {
|
|
47
|
+
if (to[language][key1][key2]) {
|
|
48
|
+
throw new Error(`duplicate '${key1}.${key2}', for language '${language}'`);
|
|
49
|
+
}
|
|
50
|
+
to[language][key1][key2] = val2;
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
export function importPartOfL10n(options) {
|
|
56
|
+
const languages = Object.keys(options.to);
|
|
57
|
+
for (const language of languages) {
|
|
58
|
+
importPartOfL10nForLanguage(options, language);
|
|
59
|
+
}
|
|
60
|
+
const onlyUnsupportedLanguages = !languages.some((language) => coreLanguages.includes(language));
|
|
61
|
+
if (onlyUnsupportedLanguages && !options.to.en) {
|
|
62
|
+
options.to.en = {
|
|
63
|
+
languageLabel: languageLabelIn("en", "en"),
|
|
64
|
+
nodeTypes: {},
|
|
65
|
+
};
|
|
66
|
+
importPartOfL10nForLanguage(options, "en");
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
function importPartOfL10nForLanguage(options, language) {
|
|
70
|
+
const { from, fromPath, to, ifDuplicate } = options;
|
|
71
|
+
const toPath = options.toPath ?? fromPath;
|
|
72
|
+
const fromLocales = from[language];
|
|
73
|
+
if (!fromLocales)
|
|
74
|
+
return;
|
|
75
|
+
let fromCurrent = fromLocales;
|
|
76
|
+
for (const token of fromPath) {
|
|
77
|
+
const cur = fromCurrent[token];
|
|
78
|
+
if (!cur || typeof cur === "string")
|
|
79
|
+
return;
|
|
80
|
+
fromCurrent = cur;
|
|
81
|
+
}
|
|
82
|
+
if (!fromCurrent)
|
|
83
|
+
return;
|
|
84
|
+
const toParentPath = [...toPath];
|
|
85
|
+
const lastKey = toParentPath.pop();
|
|
86
|
+
if (!lastKey)
|
|
87
|
+
throw new Error("toPath should not be empty");
|
|
88
|
+
let toCurrent = to[language];
|
|
89
|
+
for (const token of toParentPath) {
|
|
90
|
+
let cur = toCurrent[token];
|
|
91
|
+
if (typeof cur === "string")
|
|
92
|
+
throw new Error(`should not be a string '${cur}'`);
|
|
93
|
+
if (!cur) {
|
|
94
|
+
toCurrent[token] = cur = {};
|
|
95
|
+
}
|
|
96
|
+
toCurrent = cur;
|
|
97
|
+
}
|
|
98
|
+
const copy = deepCopyLabelLocales(fromCurrent);
|
|
99
|
+
if (!toCurrent[lastKey]) {
|
|
100
|
+
toCurrent[lastKey] = copy;
|
|
101
|
+
}
|
|
102
|
+
else if (ifDuplicate === "overwrite") {
|
|
103
|
+
toCurrent[lastKey] = copy;
|
|
104
|
+
}
|
|
105
|
+
else if (ifDuplicate === "merge") {
|
|
106
|
+
Object.assign(toCurrent[lastKey], copy);
|
|
107
|
+
}
|
|
108
|
+
else {
|
|
109
|
+
throw new Error(`duplicate '${toPath.join(".")}', for language '${language}'`);
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
function deepCopyLabelLocales(obj) {
|
|
113
|
+
const result = {};
|
|
114
|
+
for (const key of Object.keys(obj)) {
|
|
115
|
+
const val = obj[key];
|
|
116
|
+
result[key] = typeof val === "string" ? val : deepCopyLabelLocales(val);
|
|
117
|
+
}
|
|
118
|
+
return result;
|
|
119
|
+
}
|
|
120
|
+
export async function appendToSchemaLocales({ dir, baseFileName, jsonTOnly, }, l10n) {
|
|
121
|
+
const languages = Object.keys(l10n);
|
|
122
|
+
for (const language of languages) {
|
|
123
|
+
const file = join(dir, `${baseFileName}.${language}.json`);
|
|
124
|
+
const jsonData = (await readJsonLocalesFile(file, { jsonTOnly }));
|
|
125
|
+
if (!jsonData)
|
|
126
|
+
continue;
|
|
127
|
+
for (const key1 of Object.keys(jsonData)) {
|
|
128
|
+
const val1 = jsonData[key1];
|
|
129
|
+
if (typeof val1 === "string") {
|
|
130
|
+
if (l10n[language][key1]) {
|
|
131
|
+
throw new Error(`translation for '${key1}' already exists, for language '${language}'`);
|
|
132
|
+
}
|
|
133
|
+
l10n[language][key1] = val1;
|
|
134
|
+
continue;
|
|
135
|
+
}
|
|
136
|
+
if (!l10n[language][key1]) {
|
|
137
|
+
l10n[language][key1] = {};
|
|
138
|
+
}
|
|
139
|
+
else if (typeof l10n[language][key1] === "string") {
|
|
140
|
+
throw new Error(`translation for '${key1}' already exists, for language '${language}'`);
|
|
141
|
+
}
|
|
142
|
+
for (const name of Object.keys(val1)) {
|
|
143
|
+
if (l10n[language][key1][name])
|
|
144
|
+
throw new Error(`translation for '${name}' already exists`);
|
|
145
|
+
l10n[language][key1][name] = val1[name];
|
|
146
|
+
}
|
|
147
|
+
}
|
|
148
|
+
}
|
|
149
|
+
}
|
|
150
|
+
async function readJsonLocalesFile(file, { jsonTOnly }) {
|
|
151
|
+
if (!(await pathExists(file)))
|
|
152
|
+
return;
|
|
153
|
+
const jsonContent = await readFile(file, "utf8");
|
|
154
|
+
const jsonData = JSON.parse(jsonContent);
|
|
155
|
+
const result = jsonTypeValidator.validate(jsonTOnly, jsonData);
|
|
156
|
+
if (!result.valid) {
|
|
157
|
+
throw new Error(`invalid site-schema '${file}': ${result.error ?? "(missing message)"}`);
|
|
158
|
+
}
|
|
159
|
+
return jsonData;
|
|
160
|
+
}
|
|
161
|
+
export async function completeSchemaLocales(dir, l10n) {
|
|
162
|
+
const languages = Object.keys(l10n);
|
|
163
|
+
const onlyUnsupportedLanguages = !languages.some((lang) => coreLanguages.includes(lang));
|
|
164
|
+
if (onlyUnsupportedLanguages && !l10n.en) {
|
|
165
|
+
l10n.en = {
|
|
166
|
+
languageLabel: languageLabelIn("en", "en"),
|
|
167
|
+
nodeTypes: {},
|
|
168
|
+
};
|
|
169
|
+
}
|
|
170
|
+
for (const language of Object.keys(l10n)) {
|
|
171
|
+
const file = join(dir, `site-schema.l10n.${language}.json`);
|
|
172
|
+
const jsonData = await readJsonLocalesFile(file, { jsonTOnly: "JtSiteSchemaTranslations" });
|
|
173
|
+
if (!jsonData)
|
|
174
|
+
continue;
|
|
175
|
+
if (typeof jsonData.siteTheme === "string") {
|
|
176
|
+
l10n[language].siteTheme = jsonData.siteTheme;
|
|
177
|
+
}
|
|
178
|
+
if (typeof jsonData.nodeTypes === "object") {
|
|
179
|
+
recursivelyMergeLocales(jsonData.nodeTypes, l10n[language].nodeTypes);
|
|
180
|
+
}
|
|
181
|
+
}
|
|
182
|
+
}
|
|
183
|
+
function recursivelyMergeLocales(from, to, debug = []) {
|
|
184
|
+
if (!from)
|
|
185
|
+
return;
|
|
186
|
+
for (const key of Object.keys(from)) {
|
|
187
|
+
const fromVal = from[key];
|
|
188
|
+
if (to[key]) {
|
|
189
|
+
const fromValType = typeof fromVal;
|
|
190
|
+
if (fromValType !== typeof to[key]) {
|
|
191
|
+
throw new Error(`inconsistant locales '${to[key]}' and '${fromVal}'`);
|
|
192
|
+
}
|
|
193
|
+
if (fromValType === "string") {
|
|
194
|
+
to[key] = fromVal;
|
|
195
|
+
}
|
|
196
|
+
else
|
|
197
|
+
recursivelyMergeLocales(fromVal, to[key], [
|
|
198
|
+
...debug,
|
|
199
|
+
key,
|
|
200
|
+
]);
|
|
201
|
+
}
|
|
202
|
+
else {
|
|
203
|
+
to[key] = fromVal;
|
|
204
|
+
}
|
|
205
|
+
}
|
|
206
|
+
}
|
|
207
|
+
export function makeSiteLanguageLabels(languages, commonLanguageLabels) {
|
|
208
|
+
const newLabels = {};
|
|
209
|
+
for (const language of languages) {
|
|
210
|
+
newLabels[language] = commonLanguageLabels[language] ?? language;
|
|
211
|
+
}
|
|
212
|
+
return newLabels;
|
|
213
|
+
}
|
|
214
|
+
//# sourceMappingURL=read-locales.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"read-locales.js","sourceRoot":"","sources":["../../../src/connector/site-schema/read-locales.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import type { AppLogger, JtFieldType, JtImageCompressionQualityPolicyStep, JtMediaPolicy, JtNodeType, JtPluginRef, PluginStaticConfigurations, RegisteredSite } from "@paroicms/public-server-lib";
|
|
2
|
+
import type { InitializingSitePlugin } from "../plugin-loader/plugin-types.js";
|
|
3
|
+
import type { CommonSchema, CommonSchemaLibrary } from "./common-schema-types.js";
|
|
4
|
+
import { type LocalizedTranslations } from "./read-locales.js";
|
|
5
|
+
export interface MergedSchemaLib {
|
|
6
|
+
common: CommonSchema;
|
|
7
|
+
plugins?: Map<string, InitializingSitePlugin> | undefined;
|
|
8
|
+
schema: {
|
|
9
|
+
nodeTypes: {
|
|
10
|
+
[typeName: string]: JtNodeType;
|
|
11
|
+
};
|
|
12
|
+
fieldTypes: {
|
|
13
|
+
[fieldName: string]: JtFieldType;
|
|
14
|
+
};
|
|
15
|
+
mediaPolicies: {
|
|
16
|
+
[policyName: string]: JtMediaPolicy;
|
|
17
|
+
};
|
|
18
|
+
imageQualityPolicy?: JtImageCompressionQualityPolicyStep[];
|
|
19
|
+
};
|
|
20
|
+
l10n: LocalizedTranslations;
|
|
21
|
+
}
|
|
22
|
+
export declare function prepareLib(options: {
|
|
23
|
+
logger: AppLogger;
|
|
24
|
+
regSite: RegisteredSite;
|
|
25
|
+
pluginStaticConfigurations: PluginStaticConfigurations;
|
|
26
|
+
commonSchemaLib: CommonSchemaLibrary;
|
|
27
|
+
languages: string[];
|
|
28
|
+
pluginNamesOrRefs: (string | JtPluginRef)[] | undefined;
|
|
29
|
+
}): Promise<MergedSchemaLib>;
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
import { initialiseSitePlugins } from "../plugin-loader/init-plugins.js";
|
|
2
|
+
import { createEmptyLocalizedTranslations, mergeL10nDepth2, } from "./read-locales.js";
|
|
3
|
+
import { readSiteSchemaLibrary } from "./site-schema-lib-reader.js";
|
|
4
|
+
const libByDirectories = new Map();
|
|
5
|
+
export async function prepareLib(options) {
|
|
6
|
+
const { commonSchemaLib, languages, ...pluginOptions } = options;
|
|
7
|
+
const plugins = await initialiseSitePlugins(pluginOptions);
|
|
8
|
+
const allParsedSchema = [...commonSchemaLib.defaultLib];
|
|
9
|
+
for (const plugin of plugins) {
|
|
10
|
+
for (const dir of plugin.initData.siteSchemaLibraryDirectories) {
|
|
11
|
+
let cached = libByDirectories.get(dir);
|
|
12
|
+
if (!cached) {
|
|
13
|
+
cached = await readSiteSchemaLibrary(dir);
|
|
14
|
+
libByDirectories.set(dir, cached);
|
|
15
|
+
}
|
|
16
|
+
allParsedSchema.push(...cached);
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
const result = {
|
|
20
|
+
common: commonSchemaLib.common,
|
|
21
|
+
plugins: new Map(plugins.map((p) => [p.pluginName, p])),
|
|
22
|
+
schema: {
|
|
23
|
+
fieldTypes: {},
|
|
24
|
+
nodeTypes: {},
|
|
25
|
+
mediaPolicies: {},
|
|
26
|
+
},
|
|
27
|
+
l10n: createEmptyLocalizedTranslations(languages),
|
|
28
|
+
};
|
|
29
|
+
for (const parsed of allParsedSchema) {
|
|
30
|
+
const { module, l10n } = parsed;
|
|
31
|
+
if (parsed.module.imageQualityPolicy) {
|
|
32
|
+
if (result.schema.imageQualityPolicy) {
|
|
33
|
+
throw new Error("duplicated 'imageQualityPolicy' in site-schema");
|
|
34
|
+
}
|
|
35
|
+
result.schema.imageQualityPolicy = parsed.module.imageQualityPolicy;
|
|
36
|
+
}
|
|
37
|
+
for (const item of module.fieldTypes ?? []) {
|
|
38
|
+
if (result.schema.fieldTypes[item.name]) {
|
|
39
|
+
throw new Error(`duplicate site field '${item.name}'`);
|
|
40
|
+
}
|
|
41
|
+
result.schema.fieldTypes[item.name] = item;
|
|
42
|
+
}
|
|
43
|
+
for (const item of module.nodeTypes ?? []) {
|
|
44
|
+
const typeName = item.kind === "site" ? "_site" : item.typeName;
|
|
45
|
+
if (result.schema.nodeTypes[typeName]) {
|
|
46
|
+
throw new Error(`duplicate node type '${typeName}'`);
|
|
47
|
+
}
|
|
48
|
+
result.schema.nodeTypes[typeName] = item;
|
|
49
|
+
}
|
|
50
|
+
for (const item of module.mediaPolicies ?? []) {
|
|
51
|
+
if (typeof item === "string")
|
|
52
|
+
continue;
|
|
53
|
+
if (result.schema.mediaPolicies[item.policyName]) {
|
|
54
|
+
throw new Error(`duplicate media policy '${item.policyName}'`);
|
|
55
|
+
}
|
|
56
|
+
result.schema.mediaPolicies[item.policyName] = item;
|
|
57
|
+
}
|
|
58
|
+
mergeL10nDepth2(l10n, result.l10n);
|
|
59
|
+
}
|
|
60
|
+
return result;
|
|
61
|
+
}
|
|
62
|
+
//# sourceMappingURL=schema-lib.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"schema-lib.js","sourceRoot":"","sources":["../../../src/connector/site-schema/schema-lib.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"site-configuration.js","sourceRoot":"","sources":["../../../src/connector/site-schema/site-configuration.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import type { ScSiteSchema } from "@paroicms/public-anywhere-lib";
|
|
2
|
+
import { type AppLogger, type PluginStaticConfigurations, type RegisteredSite } from "@paroicms/public-server-lib";
|
|
3
|
+
import type { InitializingSitePlugin } from "../plugin-loader/plugin-types.js";
|
|
4
|
+
import type { CommonSchemaLibrary } from "./common-schema-types.js";
|
|
5
|
+
import type { SiteConfiguration } from "./site-configuration.js";
|
|
6
|
+
export declare function loadSiteSchema({ logger, regSite, commonSchemaLib, pluginStaticConfigurations, trusted, }: {
|
|
7
|
+
logger: AppLogger;
|
|
8
|
+
regSite: RegisteredSite;
|
|
9
|
+
commonSchemaLib: CommonSchemaLibrary;
|
|
10
|
+
pluginStaticConfigurations: PluginStaticConfigurations;
|
|
11
|
+
trusted: boolean;
|
|
12
|
+
}): Promise<{
|
|
13
|
+
upToDate: true;
|
|
14
|
+
siteSchema: ScSiteSchema;
|
|
15
|
+
plugins: InitializingSitePlugin[];
|
|
16
|
+
siteConfiguration: SiteConfiguration;
|
|
17
|
+
} | {
|
|
18
|
+
upToDate: false;
|
|
19
|
+
siteSchemaFormatVersion: string;
|
|
20
|
+
oldSchema: unknown;
|
|
21
|
+
}>;
|