@paroicms/server 1.87.3 → 1.88.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 (168) hide show
  1. package/dist/bo-backend/document/document.resolver.js +2 -3
  2. package/dist/bo-backend/document/document.resolver.js.map +1 -1
  3. package/dist/bo-backend/document/save-documents.queries.js +2 -2
  4. package/dist/bo-backend/document/save-documents.queries.js.map +1 -1
  5. package/dist/bo-backend/fields/fields.resolver.js +3 -1
  6. package/dist/bo-backend/fields/fields.resolver.js.map +1 -1
  7. package/dist/bo-backend/fields/load-fields-of.queries.js +4 -1
  8. package/dist/bo-backend/fields/load-fields-of.queries.js.map +1 -1
  9. package/dist/bo-backend/fields/preprocess-fields.d.ts +2 -3
  10. package/dist/bo-backend/fields/preprocess-fields.js +7 -5
  11. package/dist/bo-backend/fields/preprocess-fields.js.map +1 -1
  12. package/dist/bo-backend/fields/save-fields.queries.js +3 -2
  13. package/dist/bo-backend/fields/save-fields.queries.js.map +1 -1
  14. package/dist/bo-backend/media/add-media-to-node.d.ts +3 -3
  15. package/dist/bo-backend/media/add-media-to-node.js +7 -24
  16. package/dist/bo-backend/media/add-media-to-node.js.map +1 -1
  17. package/dist/bo-backend/media/media-upload.controller.d.ts +2 -1
  18. package/dist/bo-backend/media/media-upload.controller.js +24 -7
  19. package/dist/bo-backend/media/media-upload.controller.js.map +1 -1
  20. package/dist/bo-backend/media/media.resolver.extend.js +8 -1
  21. package/dist/bo-backend/media/media.resolver.extend.js.map +1 -1
  22. package/dist/bo-backend/media/media.resolver.js +78 -92
  23. package/dist/bo-backend/media/media.resolver.js.map +1 -1
  24. package/dist/bo-backend/part/part.queries.js +2 -2
  25. package/dist/bo-backend/part/part.queries.js.map +1 -1
  26. package/dist/bo-backend/site-constants/site-constants.resolver.js +3 -7
  27. package/dist/bo-backend/site-constants/site-constants.resolver.js.map +1 -1
  28. package/dist/bo-backend/unprotected/unprotected.resolver.d.ts +0 -6
  29. package/dist/bo-backend/unprotected/unprotected.resolver.js +9 -36
  30. package/dist/bo-backend/unprotected/unprotected.resolver.js.map +1 -1
  31. package/dist/common/medias/media-lib.d.ts +41 -0
  32. package/dist/common/medias/media-lib.js +160 -0
  33. package/dist/common/medias/media-lib.js.map +1 -0
  34. package/dist/common/medias/to-media-values.d.ts +40 -0
  35. package/dist/common/medias/to-media-values.js +109 -0
  36. package/dist/common/medias/to-media-values.js.map +1 -0
  37. package/dist/common/serve-text-or.js +8 -3
  38. package/dist/common/serve-text-or.js.map +1 -1
  39. package/dist/common/text-cache.d.ts +5 -0
  40. package/dist/common/text-cache.js +6 -0
  41. package/dist/common/text-cache.js.map +1 -1
  42. package/dist/context.d.ts +1 -2
  43. package/dist/context.js +3 -3
  44. package/dist/context.js.map +1 -1
  45. package/dist/express/public-api.req-handler.js +3 -3
  46. package/dist/express/public-api.req-handler.js.map +1 -1
  47. package/dist/express/serve-file.js +2 -2
  48. package/dist/express/serve-file.js.map +1 -1
  49. package/dist/express/site-middleware.js +5 -6
  50. package/dist/express/site-middleware.js.map +1 -1
  51. package/dist/helpers/make-backend-plugin-service.d.ts +7 -4
  52. package/dist/helpers/make-backend-plugin-service.js +130 -39
  53. package/dist/helpers/make-backend-plugin-service.js.map +1 -1
  54. package/dist/helpers/running-instance-connector.js +2 -2
  55. package/dist/helpers/url-helpers.d.ts +45 -0
  56. package/dist/helpers/url-helpers.js +37 -0
  57. package/dist/helpers/url-helpers.js.map +1 -0
  58. package/dist/helpers/utils-helper.d.ts +1 -1
  59. package/dist/helpers/utils-helper.js +3 -3
  60. package/dist/index.js +1 -2
  61. package/dist/index.js.map +1 -1
  62. package/dist/liquidjs-tools/liquidjs-drop.d.ts +7 -2
  63. package/dist/liquidjs-tools/liquidjs-drop.js +22 -2
  64. package/dist/liquidjs-tools/liquidjs-drop.js.map +1 -1
  65. package/dist/liquidjs-tools/liquidjs-rendering/render-liquidjs.d.ts +1 -2
  66. package/dist/liquidjs-tools/liquidjs-rendering/render-liquidjs.js +2 -1
  67. package/dist/liquidjs-tools/liquidjs-rendering/render-liquidjs.js.map +1 -1
  68. package/dist/liquidjs-tools/liquidjs-rendering/rendering-context.d.ts +17 -6
  69. package/dist/liquidjs-tools/liquidjs-rendering/rendering-context.js +30 -4
  70. package/dist/liquidjs-tools/liquidjs-rendering/rendering-context.js.map +1 -1
  71. package/dist/oauth/oauth2-client.controller.js +2 -1
  72. package/dist/oauth/oauth2-client.controller.js.map +1 -1
  73. package/dist/public-api/public-api-rendering.d.ts +3 -3
  74. package/dist/public-api/public-api-rendering.js +21 -36
  75. package/dist/public-api/public-api-rendering.js.map +1 -1
  76. package/dist/rendered-site/common-routes.controller.d.ts +2 -2
  77. package/dist/rendered-site/common-routes.controller.js +7 -29
  78. package/dist/rendered-site/common-routes.controller.js.map +1 -1
  79. package/dist/rendered-site/feed/feed-generator.d.ts +1 -1
  80. package/dist/rendered-site/feed/feed-generator.js +19 -24
  81. package/dist/rendered-site/feed/feed-generator.js.map +1 -1
  82. package/dist/rendered-site/feed/feed.req-handler.d.ts +1 -1
  83. package/dist/rendered-site/feed/feed.req-handler.js +4 -2
  84. package/dist/rendered-site/feed/feed.req-handler.js.map +1 -1
  85. package/dist/rendered-site/helpers/medias.helpers.d.ts +4 -4
  86. package/dist/rendered-site/helpers/medias.helpers.js +4 -3
  87. package/dist/rendered-site/helpers/medias.helpers.js.map +1 -1
  88. package/dist/rendered-site/liquidjs-filters/head-tags-filter.d.ts +1 -3
  89. package/dist/rendered-site/liquidjs-filters/head-tags-filter.js +9 -10
  90. package/dist/rendered-site/liquidjs-filters/head-tags-filter.js.map +1 -1
  91. package/dist/rendered-site/liquidjs-filters/info-filter.js +18 -6
  92. package/dist/rendered-site/liquidjs-filters/info-filter.js.map +1 -1
  93. package/dist/rendered-site/liquidjs-filters/inject-menu-items-data.d.ts +1 -3
  94. package/dist/rendered-site/liquidjs-filters/inject-menu-items-data.js +2 -1
  95. package/dist/rendered-site/liquidjs-filters/inject-menu-items-data.js.map +1 -1
  96. package/dist/rendered-site/liquidjs-filters/open-graph-filter.d.ts +2 -4
  97. package/dist/rendered-site/liquidjs-filters/open-graph-filter.js +8 -14
  98. package/dist/rendered-site/liquidjs-filters/open-graph-filter.js.map +1 -1
  99. package/dist/rendered-site/liquidjs-tags/get-doc-tag.d.ts +2 -2
  100. package/dist/rendered-site/liquidjs-tags/get-doc-tag.js +4 -3
  101. package/dist/rendered-site/liquidjs-tags/get-doc-tag.js.map +1 -1
  102. package/dist/rendered-site/liquidjs-tags/get-docs-tag.d.ts +2 -2
  103. package/dist/rendered-site/liquidjs-tags/get-docs-tag.js +6 -5
  104. package/dist/rendered-site/liquidjs-tags/get-docs-tag.js.map +1 -1
  105. package/dist/rendered-site/liquidjs-tags/get-paginated-docs-tag.d.ts +3 -3
  106. package/dist/rendered-site/liquidjs-tags/get-paginated-docs-tag.js +5 -4
  107. package/dist/rendered-site/liquidjs-tags/get-paginated-docs-tag.js.map +1 -1
  108. package/dist/rendered-site/liquidjs-tags/grouping-media-query.d.ts +10 -0
  109. package/dist/rendered-site/liquidjs-tags/grouping-media-query.js +125 -0
  110. package/dist/rendered-site/liquidjs-tags/grouping-media-query.js.map +1 -0
  111. package/dist/rendered-site/liquidjs-tags/use-image-tag.d.ts +14 -2
  112. package/dist/rendered-site/liquidjs-tags/use-image-tag.js +89 -39
  113. package/dist/rendered-site/liquidjs-tags/use-image-tag.js.map +1 -1
  114. package/dist/rendered-site/media-serve/_media-serve-helpers.d.ts +9 -3
  115. package/dist/rendered-site/media-serve/_media-serve-helpers.js +25 -5
  116. package/dist/rendered-site/media-serve/_media-serve-helpers.js.map +1 -1
  117. package/dist/rendered-site/media-serve/media-serve.controller.d.ts +10 -2
  118. package/dist/rendered-site/media-serve/media-serve.controller.js +122 -124
  119. package/dist/rendered-site/media-serve/media-serve.controller.js.map +1 -1
  120. package/dist/rendered-site/serve-document/serve-document.js +6 -3
  121. package/dist/rendered-site/serve-document/serve-document.js.map +1 -1
  122. package/dist/rendered-site/serve-index-page.js +8 -3
  123. package/dist/rendered-site/serve-index-page.js.map +1 -1
  124. package/dist/rendering-payload/breadcrumb.queries.d.ts +1 -2
  125. package/dist/rendering-payload/breadcrumb.queries.js +2 -1
  126. package/dist/rendering-payload/breadcrumb.queries.js.map +1 -1
  127. package/dist/rendering-payload/create-doc-drop.d.ts +2 -3
  128. package/dist/rendering-payload/create-doc-drop.js +54 -39
  129. package/dist/rendering-payload/create-doc-drop.js.map +1 -1
  130. package/dist/rendering-payload/create-part-drop.d.ts +1 -2
  131. package/dist/rendering-payload/create-part-drop.js +14 -12
  132. package/dist/rendering-payload/create-part-drop.js.map +1 -1
  133. package/dist/rendering-payload/doc-values.queries.d.ts +2 -2
  134. package/dist/rendering-payload/doc-values.queries.js +5 -3
  135. package/dist/rendering-payload/doc-values.queries.js.map +1 -1
  136. package/dist/rendering-payload/field-values.d.ts +3 -6
  137. package/dist/rendering-payload/field-values.js +41 -41
  138. package/dist/rendering-payload/field-values.js.map +1 -1
  139. package/dist/rendering-payload/get-siblings.queries.d.ts +1 -2
  140. package/dist/rendering-payload/get-siblings.queries.js +4 -3
  141. package/dist/rendering-payload/get-siblings.queries.js.map +1 -1
  142. package/dist/rendering-payload/load-default-image.d.ts +4 -5
  143. package/dist/rendering-payload/load-default-image.js +6 -5
  144. package/dist/rendering-payload/load-default-image.js.map +1 -1
  145. package/dist/rendering-payload/make-image-available.d.ts +14 -23
  146. package/dist/rendering-payload/make-image-available.js +83 -54
  147. package/dist/rendering-payload/make-image-available.js.map +1 -1
  148. package/dist/rendering-payload/make-public-payload.d.ts +2 -3
  149. package/dist/rendering-payload/make-public-payload.js +7 -5
  150. package/dist/rendering-payload/make-public-payload.js.map +1 -1
  151. package/dist/rendering-payload/rendering-payload.types.d.ts +48 -15
  152. package/dist/rendering-payload/site-payload.d.ts +1 -2
  153. package/dist/rendering-payload/site-payload.js +4 -3
  154. package/dist/rendering-payload/site-payload.js.map +1 -1
  155. package/dist/rendering-payload/translations.queries.d.ts +1 -1
  156. package/dist/rendering-payload/translations.queries.js +4 -3
  157. package/dist/rendering-payload/translations.queries.js.map +1 -1
  158. package/dist/site-context/create-site-context.js +9 -10
  159. package/dist/site-context/create-site-context.js.map +1 -1
  160. package/dist/tsconfig.tsbuildinfo +1 -1
  161. package/package.json +14 -15
  162. package/schema.graphql +41 -48
  163. package/dist/bo-backend/media/media.d.ts +0 -21
  164. package/dist/bo-backend/media/media.js +0 -61
  165. package/dist/bo-backend/media/media.js.map +0 -1
  166. package/dist/rendered-site/liquidjs-filters/image-zoom-url.d.ts +0 -6
  167. package/dist/rendered-site/liquidjs-filters/image-zoom-url.js +0 -22
  168. package/dist/rendered-site/liquidjs-filters/image-zoom-url.js.map +0 -1
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@paroicms/server",
3
- "version": "1.87.3",
3
+ "version": "1.88.0",
4
4
  "description": "The ParoiCMS server",
5
5
  "keywords": [
6
6
  "cms",
@@ -22,12 +22,12 @@
22
22
  "start": "node dist/start.js | npm run _pino-pretty",
23
23
  "build": "npm run graphql:generate-types && npm run tsc",
24
24
  "tsc": "tsc",
25
- "nodemon": "NODE_ENV=development nodemon --delay 1 --watch dist --watch config.json --watch site-schema-lib --watch 'sites/*/*.json' --watch '../../packages/[!bo-]*/dist/*' --watch '../../packages/[!bo-]*/dist-cjs/*' --watch '../../plugins/*/*-backend/dist/*' dist/start.js | npm run _pino-pretty",
25
+ "nodemon": "NODE_ENV=development nodemon --delay 1 --watch dist --watch config.json --watch site-schema-lib --watch 'sites/*/*.json' --watch '../../packages/[!bo-]*/dist/*' --watch '../../packages/[!bo-]*/dist-cjs/*' --watch '../../plugins/*/*backend/dist/*' dist/start.js | npm run _pino-pretty",
26
26
  "tsc:watch": "tsc --watch --preserveWatchOutput",
27
27
  "dev": "turbo dev",
28
28
  "clear": "rimraf dist/*",
29
29
  "test": "vitest",
30
- "test:run": "vitest run",
30
+ "test:once": "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.11.3",
38
38
  "@aws-sdk/client-ses": "~3.731.1",
39
39
  "@paroi/data-formatters-lib": "~0.4.0",
40
- "@paroicms/internal-anywhere-lib": "1.28.0",
41
- "@paroicms/bo": "1.68.3",
42
- "@paroicms/public-anywhere-lib": "0.22.0",
43
- "@paroicms/public-server-lib": "0.33.0",
44
- "@paroicms/server-database-media-storage": "1.18.5",
45
- "@paroicms/server-image-cache-engine": "1.22.5",
46
- "@paroicms/internal-server-lib": "1.15.5",
47
- "@paroicms/server-text-cache-system": "1.15.1",
48
- "@paroicms/connector": "0.33.1",
40
+ "@paroicms/internal-anywhere-lib": "1.29.0",
41
+ "@paroicms/bo": "1.69.0",
42
+ "@paroicms/public-anywhere-lib": "0.23.0",
43
+ "@paroicms/public-server-lib": "0.34.0",
44
+ "@paroicms/server-database-media-storage": "1.19.0",
45
+ "@paroicms/server-image-cache-engine": "1.23.0",
46
+ "@paroicms/internal-server-lib": "1.16.0",
47
+ "@paroicms/server-text-cache-system": "1.16.0",
48
+ "@paroicms/connector": "0.34.0",
49
49
  "@types/express": "~4.17.21",
50
50
  "bcrypt": "~5.1.1",
51
51
  "compression": "~1.7.5",
@@ -59,9 +59,8 @@
59
59
  "graphql-query-complexity": "~1.1.0",
60
60
  "html-minifier-terser": "~7.2.0",
61
61
  "jsonwebtoken": "~9.0.2",
62
- "liquidjs": "~10.20.2",
63
- "mime": "~4.0.6",
64
- "mime-types": "~2.1.35",
62
+ "liquidjs": "~10.21.0",
63
+ "mime": "~4.0.7",
65
64
  "multer": "^1.4.5-lts.1",
66
65
  "passport": "~0.7.0",
67
66
  "passport-google-oauth20": "~2.0.0",
package/schema.graphql CHANGED
@@ -10,7 +10,6 @@ type Query {
10
10
  document(id: ID!): Document!
11
11
  partsOf(documentId: ID!): [PartOrPlaceholder!]
12
12
  translationsOf(nodeId: ID!): [String!]!
13
- getMediaByUid(mediaUid: String!): Media!
14
13
  media(handle: ID!): Media
15
14
  medias(handle: ID!): [Media!]!
16
15
  pagedNodelWraps(limit: Int!, orderBy: [OrderByItem!], parentNodelId: ID!, start: Int!): PagedNodelWraps!
@@ -22,9 +21,11 @@ type Query {
22
21
  nodelWrap(nodelId: ID!): NodelWrap!
23
22
  nodelWraps(parentNodelId: ID!): [NodelWrap!]!
24
23
  siteConstants: SiteConstants!
24
+ """A stringified `ReadFieldValues`"""
25
25
  fieldValues(nodelId: String!, fieldNames: [String!], preprocess: Boolean): String!
26
26
  fieldValuesOfList(parentNodelId: String!, listName: String, fieldNames: [String!], preprocess: Boolean): [FieldValuesOfList!]!
27
27
  siteFieldValues(language: String, fieldNames: [String!], preprocess: Boolean): String!
28
+ getUsedRawSizesByMedia(mediaId: ID!): [UsedRawSize!]!
28
29
  }
29
30
 
30
31
  type Account {
@@ -74,20 +75,9 @@ type Document {
74
75
  url: String!
75
76
  }
76
77
 
77
- type FTextImage {
78
- displaySize: String!
79
- realSize: String!
80
- }
81
-
82
- type FaviconThumb {
83
- height: Int!
84
- mediaType: String!
85
- url: String!
86
- width: Int!
87
- }
88
-
89
78
  type FieldValuesOfList {
90
79
  nodelId: String!
80
+ """A stringified `ReadFieldValues`"""
91
81
  fieldValues: String!
92
82
  }
93
83
 
@@ -106,14 +96,17 @@ type Node {
106
96
  }
107
97
 
108
98
  type Media {
109
- attachedData: String
110
- mediaType: String!
111
- modifiedTs: DateTime!
112
- originalName: String
113
- thumbImage: ThumbImageProperties
114
- uid: ID!
115
- url: String!
116
- weightB: Int!
99
+ """A stringified `MSourceMedia`"""
100
+ source: String!
101
+ """A stringified `MImageVariant`, when the source is an image"""
102
+ thumb: String
103
+ }
104
+
105
+ type ImageVariant {
106
+ """A stringified `MSourceImage`"""
107
+ source: String!
108
+ """A stringified `MImageVariant`"""
109
+ variant: String!
117
110
  }
118
111
 
119
112
  type PagedNodelWraps {
@@ -136,6 +129,7 @@ type Part {
136
129
  publishDate: DateTime
137
130
  language: String!
138
131
  scheduled: Boolean!
132
+ """A stringified `ReadFieldValues`"""
139
133
  fieldValues(fieldNames: [String!], preprocess: Boolean): String!
140
134
  parts: [PartOrPlaceholder!]
141
135
  }
@@ -157,8 +151,10 @@ type Plugin {
157
151
  }
158
152
 
159
153
  type PublicSiteConstants {
160
- boFaviconThumb: FaviconThumb
161
- faviconThumb: FaviconThumb
154
+ """A stringified `MImageVariant`"""
155
+ boFaviconThumb: String
156
+ """A stringified `MImageVariant`"""
157
+ faviconThumb: String
162
158
  languageWithLabels: [LanguageWithLabel!]!
163
159
  platformAuthUrl: String
164
160
  publicSiteUrl: String!
@@ -177,6 +173,7 @@ type NodelWrap {
177
173
  translatedInto: [String!]!
178
174
  breadcrumb: [BreadcrumbItem!]!
179
175
  document: Document
176
+ """A stringified `ReadFieldValues`"""
180
177
  fieldValues(fieldNames: [String!], preprocess: Boolean): String!
181
178
  node: Node!
182
179
  parts: [PartOrPlaceholder!]
@@ -201,27 +198,13 @@ type TermDocument {
201
198
  }
202
199
 
203
200
  type ThemeConf {
204
- fTextImages: [FTextImage!]!
201
+ fTextImageResizeRules: [String!]!
205
202
  pixelRatio: Float!
206
203
  }
207
204
 
208
- type ThumbImageProperties {
209
- height: Int!
210
- mediaType: String!
211
- originalHeight: Int!
212
- originalLossless: Boolean
213
- originalWidth: Int!
214
- url: String!
215
- width: Int!
216
- }
217
-
218
- type UsedImage {
219
- displayHeight: Int!
220
- displayWidth: Int!
221
- mediaType: String!
222
- realHeight: Int!
223
- realWidth: Int!
224
- url: String!
205
+ type UsedRawSize {
206
+ rawResizeR: String!
207
+ rawSizeName: String!
225
208
  }
226
209
 
227
210
  type Mutation {
@@ -234,7 +217,7 @@ type Mutation {
234
217
  deleteDocument(nodelId: String!): Boolean!
235
218
  deleteNodeAndDocuments(nodelId: String!): Boolean!
236
219
  deleteMedia(handle: ID!): String!
237
- deleteMediaFromGallery(handle: ID!, uid: ID!): String!
220
+ deleteMediaFromGallery(handle: ID!, mediaId: ID!): String!
238
221
  deletePart(
239
222
  """language:nodeId"""
240
223
  nodelId: ID!
@@ -250,10 +233,13 @@ type Mutation {
250
233
  setNodelReady(ready: Boolean!, nodelId: ID!): Boolean!
251
234
  setSiteFieldValues(language: String, values: String!): Boolean!
252
235
  updateAccount(accountId: ID!, values: UpdateAccountValues!): Account!
253
- updateAttachedData(mediaUid: ID!, values: String!): Media!
236
+ """value parameter is a stringified `MLocalizedAttachedData`"""
237
+ updateMediaAttachedData(mediaId: ID!, language: String!, value: String): Boolean!
238
+ updateMediaPixelRatio(mediaId: ID!, pixelRatio: Float): Boolean!
254
239
  updateDocumentMeta(id: ID!, values: UpdateDocumentMetaValues!): Document!
255
240
  updateDocumentTitle(id: ID!, values: UpdateDocumentTitleValues!): Document!
256
- useImage(input: UseImageInput!): UsedImage!
241
+ useBackOfficeImage(input: UseBackOfficeImageInput!): ImageVariant!
242
+ useFTextImage(input: UseFTextImageInput!): ImageVariant!
257
243
  }
258
244
 
259
245
  input AccountPreferencesValues {
@@ -286,7 +272,7 @@ input OrderByItem {
286
272
 
287
273
  input ReorderMediasInput {
288
274
  handle: ID!
289
- mediaUids: [ID!]!
275
+ mediaIds: [ID!]!
290
276
  }
291
277
 
292
278
  input UpdateAccountValues {
@@ -304,7 +290,14 @@ input UpdateDocumentTitleValues {
304
290
  title: String
305
291
  }
306
292
 
307
- input UseImageInput {
308
- imageSize: String!
309
- uid: ID!
293
+ input UseBackOfficeImageInput {
294
+ mediaId: ID!
295
+ resizeRule: String!
296
+ pixelRatio: Float
297
+ mediaType: String
298
+ }
299
+
300
+ input UseFTextImageInput {
301
+ mediaId: ID!
302
+ resizeRule: String!
310
303
  }
@@ -1,21 +0,0 @@
1
- import type { ImageSize } from "@paroicms/public-anywhere-lib";
2
- import { type ImageRef } from "@paroicms/server-image-cache-engine";
3
- import type { SiteContext } from "../../site-context/site-context.types.js";
4
- export interface RegisteredImageVariant {
5
- url: string;
6
- width: number;
7
- height: number;
8
- mediaType: string;
9
- }
10
- export declare function registerImageVariant(siteContext: Pick<SiteContext, "imageCache" | "siteUrl">, { imageRef, realSize, slug, autoCrop, versionedUrl, absoluteUrl, dependsOnUsedKey, originalName, }: {
11
- imageRef: ImageRef;
12
- realSize: ImageSize;
13
- slug?: string;
14
- autoCrop?: boolean;
15
- versionedUrl: boolean;
16
- absoluteUrl: boolean;
17
- dependsOnUsedKey: string;
18
- originalName?: string;
19
- }): Promise<RegisteredImageVariant>;
20
- export declare function createBoFaviconFrom(siteContext: SiteContext, binaryFile: Buffer): Promise<void>;
21
- export declare function toSvgRegisteredImageVariant(siteContext: Pick<SiteContext, "siteUrl">, imageRef: ImageRef, originalName?: string): RegisteredImageVariant;
@@ -1,61 +0,0 @@
1
- import { makeUrlOfImageVariant, makeUrlOfMediaFile } from "@paroicms/public-server-lib";
2
- import { computeVariantSize, createDefaultBoFavicon, } from "@paroicms/server-image-cache-engine";
3
- import { getHandleOfSiteBoFavicon } from "../../common/media-handles.helpers.js";
4
- import { thumbRealSize } from "../../context.js";
5
- export async function registerImageVariant(siteContext, { imageRef, realSize, slug, autoCrop = false, versionedUrl, absoluteUrl, dependsOnUsedKey, originalName, }) {
6
- if (imageRef.mediaType === "image/svg+xml") {
7
- return toSvgRegisteredImageVariant(siteContext, imageRef, originalName);
8
- }
9
- const { width, height, variantName, mediaType, resourceVersion } = await siteContext.imageCache.makeImageAvailable({
10
- imageRef,
11
- imageSize: realSize,
12
- autoCrop,
13
- dependsOnUsedKey,
14
- slug,
15
- });
16
- return {
17
- url: makeUrlOfImageVariant(siteContext, {
18
- mediaUid: imageRef.imageUid,
19
- mediaType,
20
- variantName,
21
- resourceVersion: versionedUrl ? resourceVersion : undefined,
22
- slug,
23
- absoluteUrl,
24
- }),
25
- width,
26
- height,
27
- mediaType,
28
- };
29
- }
30
- export async function createBoFaviconFrom(siteContext, binaryFile) {
31
- const result = await createDefaultBoFavicon(binaryFile);
32
- await siteContext.mediaStorage.addMedia({
33
- binaryFile: result.binaryFile,
34
- mediaType: result.mediaType,
35
- weightB: result.weightB,
36
- handle: getHandleOfSiteBoFavicon(),
37
- originalName: "bo-favicon",
38
- image: {
39
- width: result.width,
40
- height: result.height,
41
- lossless: result.lossless,
42
- },
43
- replace: true,
44
- nodeId: siteContext.siteIds.siteNodeId,
45
- });
46
- }
47
- export function toSvgRegisteredImageVariant(siteContext, imageRef, originalName) {
48
- const { width, height } = computeVariantSize({ imageRef, imageSize: thumbRealSize });
49
- return {
50
- url: makeUrlOfMediaFile(siteContext, {
51
- absoluteUrl: true,
52
- mediaType: imageRef.mediaType,
53
- mediaUid: imageRef.imageUid,
54
- originalName,
55
- }),
56
- width,
57
- height,
58
- mediaType: "image/svg+xml",
59
- };
60
- }
61
- //# sourceMappingURL=media.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"media.js","sourceRoot":"","sources":["../../../src/bo-backend/media/media.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,qBAAqB,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AACxF,OAAO,EAEL,kBAAkB,EAClB,sBAAsB,GACvB,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EAAE,wBAAwB,EAAE,MAAM,uCAAuC,CAAC;AACjF,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAUjD,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,WAAwD,EACxD,EACE,QAAQ,EACR,QAAQ,EACR,IAAI,EACJ,QAAQ,GAAG,KAAK,EAChB,YAAY,EACZ,WAAW,EACX,gBAAgB,EAChB,YAAY,GAUb;IAED,IAAI,QAAQ,CAAC,SAAS,KAAK,eAAe,EAAE,CAAC;QAC3C,OAAO,2BAA2B,CAAC,WAAW,EAAE,QAAQ,EAAE,YAAY,CAAC,CAAC;IAC1E,CAAC;IAED,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,SAAS,EAAE,eAAe,EAAE,GAC9D,MAAM,WAAW,CAAC,UAAU,CAAC,kBAAkB,CAAC;QAC9C,QAAQ;QACR,SAAS,EAAE,QAAQ;QACnB,QAAQ;QACR,gBAAgB;QAChB,IAAI;KACL,CAAC,CAAC;IAEL,OAAO;QACL,GAAG,EAAE,qBAAqB,CAAC,WAAW,EAAE;YACtC,QAAQ,EAAE,QAAQ,CAAC,QAAQ;YAC3B,SAAS;YACT,WAAW;YACX,eAAe,EAAE,YAAY,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,SAAS;YAC3D,IAAI;YACJ,WAAW;SACZ,CAAC;QACF,KAAK;QACL,MAAM;QACN,SAAS;KACV,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,mBAAmB,CAAC,WAAwB,EAAE,UAAkB;IACpF,MAAM,MAAM,GAAG,MAAM,sBAAsB,CAAC,UAAU,CAAC,CAAC;IACxD,MAAM,WAAW,CAAC,YAAY,CAAC,QAAQ,CAAC;QACtC,UAAU,EAAE,MAAM,CAAC,UAAU;QAC7B,SAAS,EAAE,MAAM,CAAC,SAAS;QAC3B,OAAO,EAAE,MAAM,CAAC,OAAO;QACvB,MAAM,EAAE,wBAAwB,EAAE;QAClC,YAAY,EAAE,YAAY;QAC1B,KAAK,EAAE;YACL,KAAK,EAAE,MAAM,CAAC,KAAK;YACnB,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,QAAQ,EAAE,MAAM,CAAC,QAAQ;SAC1B;QACD,OAAO,EAAE,IAAI;QACb,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,UAAU;KACvC,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,2BAA2B,CACzC,WAAyC,EACzC,QAAkB,EAClB,YAAqB;IAErB,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,kBAAkB,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,aAAa,EAAE,CAAC,CAAC;IACrF,OAAO;QACL,GAAG,EAAE,kBAAkB,CAAC,WAAW,EAAE;YACnC,WAAW,EAAE,IAAI;YACjB,SAAS,EAAE,QAAQ,CAAC,SAAS;YAC7B,QAAQ,EAAE,QAAQ,CAAC,QAAQ;YAC3B,YAAY;SACb,CAAC;QACF,KAAK;QACL,MAAM;QACN,SAAS,EAAE,eAAe;KAC3B,CAAC;AACJ,CAAC"}
@@ -1,6 +0,0 @@
1
- import type { Context } from "liquidjs";
2
- import type { SiteContext } from "../../site-context/site-context.types.js";
3
- export declare function imageZoomUrlLiquidJsFilter(val: unknown, { ctx, siteContext }: {
4
- ctx: Context;
5
- siteContext: SiteContext;
6
- }): Promise<string>;
@@ -1,22 +0,0 @@
1
- import { strValOrUndef } from "@paroi/data-formatters-lib";
2
- import { applyRatioToImageSize } from "@paroicms/public-server-lib";
3
- import { makeTagCacheKeyForRendering } from "../../liquidjs-tools/liquidjs-rendering/rendering-context.js";
4
- import { extractRenderingContext } from "../../liquidjs-tools/liquidjs-utils.js";
5
- import { makeImageAvailable } from "../../rendering-payload/make-image-available.js";
6
- export async function imageZoomUrlLiquidJsFilter(val, { ctx, siteContext }) {
7
- const uid = strValOrUndef(val);
8
- if (!uid)
9
- return "";
10
- const cacheKey = makeTagCacheKeyForRendering("imageZoomUrl", { tagParameters: uid });
11
- const renderingContext = extractRenderingContext(ctx);
12
- const cacheVal = renderingContext.getValueFromCache(cacheKey);
13
- if (cacheVal.found)
14
- return cacheVal.val;
15
- const zoomImage = await makeImageAvailable(siteContext, renderingContext, {
16
- imageSel: { uid },
17
- size: applyRatioToImageSize("x1900x", siteContext.themeConf.pixelRatio),
18
- });
19
- renderingContext.setValueIntoCache(cacheKey, zoomImage.url);
20
- return zoomImage.url;
21
- }
22
- //# sourceMappingURL=image-zoom-url.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"image-zoom-url.js","sourceRoot":"","sources":["../../../src/rendered-site/liquidjs-filters/image-zoom-url.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AAEpE,OAAO,EAAE,2BAA2B,EAAE,MAAM,8DAA8D,CAAC;AAC3G,OAAO,EAAE,uBAAuB,EAAE,MAAM,wCAAwC,CAAC;AACjF,OAAO,EAAE,kBAAkB,EAAE,MAAM,iDAAiD,CAAC;AAGrF,MAAM,CAAC,KAAK,UAAU,0BAA0B,CAC9C,GAAY,EACZ,EAAE,GAAG,EAAE,WAAW,EAA8C;IAEhE,MAAM,GAAG,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC;IAC/B,IAAI,CAAC,GAAG;QAAE,OAAO,EAAE,CAAC;IAEpB,MAAM,QAAQ,GAAG,2BAA2B,CAAC,cAAc,EAAE,EAAE,aAAa,EAAE,GAAG,EAAE,CAAC,CAAC;IACrF,MAAM,gBAAgB,GAAG,uBAAuB,CAAC,GAAG,CAAC,CAAC;IACtD,MAAM,QAAQ,GAAG,gBAAgB,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC;IAC9D,IAAI,QAAQ,CAAC,KAAK;QAAE,OAAO,QAAQ,CAAC,GAAG,CAAC;IAExC,MAAM,SAAS,GAAG,MAAM,kBAAkB,CAAC,WAAW,EAAE,gBAAgB,EAAE;QACxE,QAAQ,EAAE,EAAE,GAAG,EAAE;QACjB,IAAI,EAAE,qBAAqB,CAAC,QAAQ,EAAE,WAAW,CAAC,SAAS,CAAC,UAAU,CAAC;KACxE,CAAC,CAAC;IAEH,gBAAgB,CAAC,iBAAiB,CAAC,QAAQ,EAAE,SAAS,CAAC,GAAG,CAAC,CAAC;IAC5D,OAAO,SAAS,CAAC,GAAG,CAAC;AACvB,CAAC"}