@paroicms/server 1.99.0 → 1.101.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.
Files changed (52) hide show
  1. package/dist/admin-backend/fields/fields.resolver.js +7 -3
  2. package/dist/admin-backend/fields/fields.resolver.js.map +1 -1
  3. package/dist/admin-backend/fields/load-fields-of.queries.js +7 -3
  4. package/dist/admin-backend/fields/load-fields-of.queries.js.map +1 -1
  5. package/dist/admin-backend/fields/save-fields.queries.js +13 -6
  6. package/dist/admin-backend/fields/save-fields.queries.js.map +1 -1
  7. package/dist/admin-backend/part/part.queries.js +4 -11
  8. package/dist/admin-backend/part/part.queries.js.map +1 -1
  9. package/dist/express/pa-http-context.js.map +1 -1
  10. package/dist/express/public-api.req-handler.js +1 -1
  11. package/dist/express/public-api.req-handler.js.map +1 -1
  12. package/dist/liquidjs-tools/liquidjs-filter.js +2 -1
  13. package/dist/liquidjs-tools/liquidjs-filter.js.map +1 -1
  14. package/dist/plugin-services/before-save-values-hook.d.ts +7 -0
  15. package/dist/plugin-services/before-save-values-hook.js +47 -0
  16. package/dist/plugin-services/before-save-values-hook.js.map +1 -0
  17. package/dist/{helpers → plugin-services}/make-backend-plugin-service.d.ts +5 -1
  18. package/dist/{helpers → plugin-services}/make-backend-plugin-service.js +56 -18
  19. package/dist/plugin-services/make-backend-plugin-service.js.map +1 -0
  20. package/dist/plugin-services/rendering-hook.d.ts +12 -0
  21. package/dist/plugin-services/rendering-hook.js +54 -0
  22. package/dist/plugin-services/rendering-hook.js.map +1 -0
  23. package/dist/rendered-site/feed/feed-generator.js +7 -3
  24. package/dist/rendered-site/feed/feed-generator.js.map +1 -1
  25. package/dist/rendered-site/liquidjs-filters/open-graph-filter.js +2 -1
  26. package/dist/rendered-site/liquidjs-filters/open-graph-filter.js.map +1 -1
  27. package/dist/rendered-site/liquidjs-tags/liquid-tag-wrapper.js +2 -4
  28. package/dist/rendered-site/liquidjs-tags/liquid-tag-wrapper.js.map +1 -1
  29. package/dist/rendering-payload/field-values.js +13 -5
  30. package/dist/rendering-payload/field-values.js.map +1 -1
  31. package/dist/site-context/core-plugin/core-hooks.d.ts +2 -0
  32. package/dist/site-context/core-plugin/core-hooks.js +17 -0
  33. package/dist/site-context/core-plugin/core-hooks.js.map +1 -0
  34. package/dist/site-context/core-plugin/create-core-plugin.d.ts +2 -0
  35. package/dist/site-context/core-plugin/create-core-plugin.js +157 -0
  36. package/dist/site-context/core-plugin/create-core-plugin.js.map +1 -0
  37. package/dist/site-context/core-plugin/normalize-typography-fr-FR.d.ts +1 -0
  38. package/dist/site-context/core-plugin/normalize-typography-fr-FR.js +48 -0
  39. package/dist/site-context/core-plugin/normalize-typography-fr-FR.js.map +1 -0
  40. package/dist/site-context/liquid-init.d.ts +2 -0
  41. package/dist/site-context/liquid-init.js +23 -0
  42. package/dist/site-context/liquid-init.js.map +1 -0
  43. package/dist/site-context/load-site-context.d.ts +1 -0
  44. package/dist/site-context/load-site-context.js +57 -117
  45. package/dist/site-context/load-site-context.js.map +1 -1
  46. package/dist/site-context/site-context.types.d.ts +5 -4
  47. package/dist/tsconfig.tsbuildinfo +1 -1
  48. package/package.json +12 -12
  49. package/dist/admin-backend/fields/preprocess-fields.d.ts +0 -5
  50. package/dist/admin-backend/fields/preprocess-fields.js +0 -52
  51. package/dist/admin-backend/fields/preprocess-fields.js.map +0 -1
  52. package/dist/helpers/make-backend-plugin-service.js.map +0 -1
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@paroicms/server",
3
- "version": "1.99.0",
3
+ "version": "1.101.0",
4
4
  "description": "The ParoiCMS server",
5
5
  "keywords": [
6
6
  "cms",
@@ -26,8 +26,8 @@
26
26
  "tsc:watch": "tsc --watch --preserveWatchOutput",
27
27
  "dev": "turbo dev",
28
28
  "clear": "rimraf dist/*",
29
- "test": "vitest",
30
- "test:once": "vitest run",
29
+ "test:watch": "vitest",
30
+ "test": "vitest run",
31
31
  "_pino-pretty": "pino-pretty -U false -x 'stats:25' -X 'stats:grey' -t 'yyyy-mm-dd HH:MM:ss.l' -i 'hostname,pid,fqdn' -o '{if fqdn}[{fqdn}] {end}{msg}'",
32
32
  "graphql:generate-types": "npm run _graphql:generate-types && npm run _patch-graphql-types",
33
33
  "_graphql:generate-types": "graphql-codegen --config scripts/codegen.ts",
@@ -37,15 +37,15 @@
37
37
  "@apollo/server": "~4.12.2",
38
38
  "@as-integrations/express5": "~1.1.0",
39
39
  "@aws-sdk/client-ses": "~3.828.0",
40
- "@paroicms/admin-ui": "1.77.0",
41
- "@paroicms/connector": "0.44.0",
42
- "@paroicms/internal-anywhere-lib": "1.31.10",
43
- "@paroicms/internal-server-lib": "1.18.11",
44
- "@paroicms/public-anywhere-lib": "0.31.0",
45
- "@paroicms/public-server-lib": "0.40.0",
46
- "@paroicms/server-database-media-storage": "1.21.6",
47
- "@paroicms/server-image-cache-engine": "1.25.11",
48
- "@paroicms/server-text-cache-system": "1.18.11",
40
+ "@paroicms/admin-ui": "1.79.0",
41
+ "@paroicms/connector": "0.46.0",
42
+ "@paroicms/internal-anywhere-lib": "1.32.0",
43
+ "@paroicms/internal-server-lib": "1.18.13",
44
+ "@paroicms/public-anywhere-lib": "0.33.0",
45
+ "@paroicms/public-server-lib": "0.42.0",
46
+ "@paroicms/server-database-media-storage": "1.21.8",
47
+ "@paroicms/server-image-cache-engine": "1.26.0",
48
+ "@paroicms/server-text-cache-system": "1.18.13",
49
49
  "arktype": "~2.1.20",
50
50
  "bcrypt": "~6.0.0",
51
51
  "compression": "~1.8.0",
@@ -1,5 +0,0 @@
1
- import { type ReadFieldValue, type ReadFieldValueOrWGallery, type ReadFieldValues, type ReadFieldValuesOrWGalleries, type ScFieldType } from "@paroicms/public-anywhere-lib";
2
- import type { FieldPreprocessorOptions } from "@paroicms/public-server-lib";
3
- import type { RenderingContext } from "../../liquidjs-tools/liquidjs-rendering/rendering-context.js";
4
- export declare function preprocessFields(renderingContext: RenderingContext, values: ReadFieldValuesOrWGalleries, fieldTypes: ScFieldType[], options?: FieldPreprocessorOptions): Promise<ReadFieldValues>;
5
- export declare function preprocessFieldForExcerpt(renderingContext: RenderingContext, value: ReadFieldValueOrWGallery | undefined, fieldType: ScFieldType, options?: FieldPreprocessorOptions): Promise<ReadFieldValue | undefined>;
@@ -1,52 +0,0 @@
1
- import { unwrapReadFieldValue, } from "@paroicms/public-anywhere-lib";
2
- import { createBackendPluginService, createPluginRenderingService, } from "../../helpers/make-backend-plugin-service.js";
3
- export async function preprocessFields(renderingContext, values, fieldTypes, options = {}) {
4
- const { siteContext } = renderingContext;
5
- const result = Object.fromEntries(Object.entries(values).map(([name, value]) => [name, unwrapReadFieldValue(value).value]));
6
- for (const fieldType of fieldTypes) {
7
- if (fieldType.storedAs === "labeling")
8
- continue;
9
- const { name, pluginName } = fieldType;
10
- if (!pluginName)
11
- continue;
12
- const plugin = siteContext.plugins.get(pluginName);
13
- if (!plugin)
14
- continue;
15
- const fieldPreprocessors = siteContext.fieldPreprocessors.get(pluginName);
16
- if (!fieldPreprocessors)
17
- continue;
18
- let value = result[name];
19
- for (const { preprocessor } of fieldPreprocessors) {
20
- if (value === undefined)
21
- break;
22
- const service = createPluginRenderingService(renderingContext, createBackendPluginService(siteContext, plugin));
23
- value = await preprocessor(service, value, options);
24
- }
25
- if (value !== undefined) {
26
- result[name] = value;
27
- }
28
- }
29
- return result;
30
- }
31
- export async function preprocessFieldForExcerpt(renderingContext, value, fieldType, options = {}) {
32
- const { siteContext } = renderingContext;
33
- if (value === undefined)
34
- return;
35
- let fieldValue = unwrapReadFieldValue(value).value;
36
- if (!fieldType.pluginName)
37
- return fieldValue;
38
- const plugin = siteContext.plugins.get(fieldType.pluginName);
39
- if (!plugin)
40
- return fieldValue;
41
- const fieldPreprocessors = siteContext.fieldPreprocessors.get(fieldType.pluginName);
42
- if (!fieldPreprocessors)
43
- return fieldValue;
44
- for (const { preprocessor } of fieldPreprocessors) {
45
- if (fieldValue === undefined)
46
- break;
47
- const service = createPluginRenderingService(renderingContext, createBackendPluginService(siteContext, plugin));
48
- fieldValue = await preprocessor(service, fieldValue, options);
49
- }
50
- return fieldValue;
51
- }
52
- //# sourceMappingURL=preprocess-fields.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"preprocess-fields.js","sourceRoot":"","sources":["../../../src/admin-backend/fields/preprocess-fields.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"make-backend-plugin-service.js","sourceRoot":"","sources":["../../src/helpers/make-backend-plugin-service.ts"],"names":[],"mappings":"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"}