@paroicms/server 1.102.3 → 1.103.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 (278) hide show
  1. package/README.md +1 -16
  2. package/ddl/main.ddl.sql +92 -0
  3. package/dist/admin-backend/account/account.queries.d.ts +3 -3
  4. package/dist/admin-backend/account/account.queries.js.map +1 -1
  5. package/dist/admin-backend/account/account.resolver.d.ts +1 -1
  6. package/dist/admin-backend/account/account.resolver.js +9 -0
  7. package/dist/admin-backend/account/account.resolver.js.map +1 -1
  8. package/dist/admin-backend/auth/auth.service.d.ts +12 -3
  9. package/dist/admin-backend/auth/auth.service.js +7 -7
  10. package/dist/admin-backend/auth/auth.service.js.map +1 -1
  11. package/dist/admin-backend/backup/backup.controller.js +2 -1
  12. package/dist/admin-backend/backup/backup.controller.js.map +1 -1
  13. package/dist/admin-backend/backup/backup.resolver.d.ts +1 -1
  14. package/dist/admin-backend/backup/backup.resolver.js +2 -0
  15. package/dist/admin-backend/backup/backup.resolver.js.map +1 -1
  16. package/dist/admin-backend/backup/hardened-backup.service.js +2 -1
  17. package/dist/admin-backend/backup/hardened-backup.service.js.map +1 -1
  18. package/dist/admin-backend/document/document.resolver.d.ts +1 -1
  19. package/dist/admin-backend/document/document.resolver.extend.d.ts +1 -1
  20. package/dist/admin-backend/document/document.resolver.extend.js +2 -0
  21. package/dist/admin-backend/document/document.resolver.extend.js.map +1 -1
  22. package/dist/admin-backend/document/document.resolver.js +9 -0
  23. package/dist/admin-backend/document/document.resolver.js.map +1 -1
  24. package/dist/admin-backend/document/load-documents.queries.d.ts +1 -1
  25. package/dist/admin-backend/document/load-documents.queries.js.map +1 -1
  26. package/dist/admin-backend/document/save-documents.queries.js +1 -1
  27. package/dist/admin-backend/document/save-documents.queries.js.map +1 -1
  28. package/dist/admin-backend/fields/fields.resolver.d.ts +1 -1
  29. package/dist/admin-backend/fields/fields.resolver.js +8 -0
  30. package/dist/admin-backend/fields/fields.resolver.js.map +1 -1
  31. package/dist/admin-backend/lnode/lnode-wrap.resolver.d.ts +1 -1
  32. package/dist/admin-backend/lnode/lnode-wrap.resolver.js +9 -0
  33. package/dist/admin-backend/lnode/lnode-wrap.resolver.js.map +1 -1
  34. package/dist/admin-backend/lnode/lnode.queries.js +1 -1
  35. package/dist/admin-backend/lnode/lnode.queries.js.map +1 -1
  36. package/dist/admin-backend/login/login.controller.d.ts +2 -2
  37. package/dist/admin-backend/login/login.controller.js +17 -5
  38. package/dist/admin-backend/login/login.controller.js.map +1 -1
  39. package/dist/admin-backend/media/media.resolver.d.ts +1 -1
  40. package/dist/admin-backend/media/media.resolver.extend.d.ts +1 -1
  41. package/dist/admin-backend/media/media.resolver.extend.js +2 -0
  42. package/dist/admin-backend/media/media.resolver.extend.js.map +1 -1
  43. package/dist/admin-backend/media/media.resolver.js +11 -0
  44. package/dist/admin-backend/media/media.resolver.js.map +1 -1
  45. package/dist/admin-backend/migration/migration.resolver.d.ts +3 -0
  46. package/dist/admin-backend/migration/migration.resolver.js +38 -0
  47. package/dist/admin-backend/migration/migration.resolver.js.map +1 -0
  48. package/dist/admin-backend/node/node.queries.js +1 -1
  49. package/dist/admin-backend/node/node.queries.js.map +1 -1
  50. package/dist/admin-backend/node/node.resolver.d.ts +1 -1
  51. package/dist/admin-backend/node/node.resolver.extend.d.ts +1 -1
  52. package/dist/admin-backend/node/node.resolver.extend.js +2 -0
  53. package/dist/admin-backend/node/node.resolver.extend.js.map +1 -1
  54. package/dist/admin-backend/node/node.resolver.js +5 -0
  55. package/dist/admin-backend/node/node.resolver.js.map +1 -1
  56. package/dist/admin-backend/part/part.queries.js +1 -1
  57. package/dist/admin-backend/part/part.queries.js.map +1 -1
  58. package/dist/admin-backend/part/part.resolver.d.ts +1 -1
  59. package/dist/admin-backend/part/part.resolver.extend.d.ts +1 -1
  60. package/dist/admin-backend/part/part.resolver.extend.js +3 -0
  61. package/dist/admin-backend/part/part.resolver.extend.js.map +1 -1
  62. package/dist/admin-backend/part/part.resolver.js +7 -0
  63. package/dist/admin-backend/part/part.resolver.js.map +1 -1
  64. package/dist/admin-backend/site-constants/site-constants.resolver.d.ts +1 -1
  65. package/dist/admin-backend/site-constants/site-constants.resolver.js +7 -1
  66. package/dist/admin-backend/site-constants/site-constants.resolver.js.map +1 -1
  67. package/dist/admin-backend/unprotected/unprotected.resolver.js +14 -3
  68. package/dist/admin-backend/unprotected/unprotected.resolver.js.map +1 -1
  69. package/dist/common/data-format.d.ts +1 -1
  70. package/dist/common/data-format.js.map +1 -1
  71. package/dist/connector/app-conf/app-conf-formatter.d.ts +3 -0
  72. package/dist/connector/app-conf/app-conf-formatter.js +144 -0
  73. package/dist/connector/app-conf/app-conf-formatter.js.map +1 -0
  74. package/dist/connector/app-conf/app-conf-reader.d.ts +3 -0
  75. package/dist/connector/app-conf/app-conf-reader.js +11 -0
  76. package/dist/connector/app-conf/app-conf-reader.js.map +1 -0
  77. package/dist/connector/app-conf/app-conf.types.d.ts +45 -0
  78. package/dist/connector/app-conf/app-conf.types.js +2 -0
  79. package/dist/connector/app-conf/app-conf.types.js.map +1 -0
  80. package/dist/connector/db-init/db-constants.d.ts +2 -0
  81. package/dist/connector/db-init/db-constants.js +3 -0
  82. package/dist/connector/db-init/db-constants.js.map +1 -0
  83. package/dist/connector/db-init/db-init.d.ts +10 -0
  84. package/dist/connector/db-init/db-init.js +42 -0
  85. package/dist/connector/db-init/db-init.js.map +1 -0
  86. package/dist/connector/db-init/ddl-migration.d.ts +6 -0
  87. package/dist/connector/db-init/ddl-migration.js +185 -0
  88. package/dist/connector/db-init/ddl-migration.js.map +1 -0
  89. package/dist/connector/db-init/init-node-queries.d.ts +12 -0
  90. package/dist/connector/db-init/init-node-queries.js +96 -0
  91. package/dist/connector/db-init/init-node-queries.js.map +1 -0
  92. package/dist/connector/db-init/load-routing-documents.d.ts +3 -0
  93. package/dist/connector/db-init/load-routing-documents.js +85 -0
  94. package/dist/connector/db-init/load-routing-documents.js.map +1 -0
  95. package/dist/connector/db-init/populate-routing-documents.d.ts +4 -0
  96. package/dist/connector/db-init/populate-routing-documents.js +68 -0
  97. package/dist/connector/db-init/populate-routing-documents.js.map +1 -0
  98. package/dist/connector/media-storage.d.ts +4 -0
  99. package/dist/connector/media-storage.js +14 -0
  100. package/dist/connector/media-storage.js.map +1 -0
  101. package/dist/connector/plugin-loader/init-plugins.d.ts +8 -0
  102. package/dist/connector/plugin-loader/init-plugins.js +98 -0
  103. package/dist/connector/plugin-loader/init-plugins.js.map +1 -0
  104. package/dist/connector/plugin-loader/plugin-loader.d.ts +8 -0
  105. package/dist/connector/plugin-loader/plugin-loader.js +76 -0
  106. package/dist/connector/plugin-loader/plugin-loader.js.map +1 -0
  107. package/dist/connector/plugin-loader/plugin-public-helpers.d.ts +2 -0
  108. package/dist/connector/plugin-loader/plugin-public-helpers.js +4 -0
  109. package/dist/connector/plugin-loader/plugin-public-helpers.js.map +1 -0
  110. package/dist/connector/plugin-loader/plugin-types.d.ts +53 -0
  111. package/dist/connector/plugin-loader/plugin-types.js +2 -0
  112. package/dist/connector/plugin-loader/plugin-types.js.map +1 -0
  113. package/dist/connector/public-site-context-types.d.ts +16 -0
  114. package/dist/connector/public-site-context-types.js +2 -0
  115. package/dist/connector/public-site-context-types.js.map +1 -0
  116. package/dist/connector/row-types.d.ts +59 -0
  117. package/dist/connector/row-types.js +2 -0
  118. package/dist/connector/row-types.js.map +1 -0
  119. package/dist/connector/single-site-builder/default-config.d.ts +3 -0
  120. package/dist/connector/single-site-builder/default-config.js +24 -0
  121. package/dist/connector/single-site-builder/default-config.js.map +1 -0
  122. package/dist/connector/single-site-builder/default-readme.d.ts +1 -0
  123. package/dist/connector/single-site-builder/default-readme.js +4 -0
  124. package/dist/connector/single-site-builder/default-readme.js.map +1 -0
  125. package/dist/connector/single-site-builder/site-builder.d.ts +27 -0
  126. package/dist/connector/single-site-builder/site-builder.js +91 -0
  127. package/dist/connector/single-site-builder/site-builder.js.map +1 -0
  128. package/dist/connector/site-backup/archiver.helper.d.ts +12 -0
  129. package/dist/connector/site-backup/archiver.helper.js +36 -0
  130. package/dist/connector/site-backup/archiver.helper.js.map +1 -0
  131. package/dist/connector/site-backup/backup-tasks.d.ts +14 -0
  132. package/dist/connector/site-backup/backup-tasks.js +42 -0
  133. package/dist/connector/site-backup/backup-tasks.js.map +1 -0
  134. package/dist/connector/site-backup/backup.d.ts +12 -0
  135. package/dist/connector/site-backup/backup.helper.d.ts +3 -0
  136. package/dist/connector/site-backup/backup.helper.js +8 -0
  137. package/dist/connector/site-backup/backup.helper.js.map +1 -0
  138. package/dist/connector/site-backup/backup.js +34 -0
  139. package/dist/connector/site-backup/backup.js.map +1 -0
  140. package/dist/connector/site-conf/site-conf.d.ts +8 -0
  141. package/dist/connector/site-conf/site-conf.js +117 -0
  142. package/dist/connector/site-conf/site-conf.js.map +1 -0
  143. package/dist/connector/site-conf/site-place-types.d.ts +5 -0
  144. package/dist/connector/site-conf/site-place-types.js +2 -0
  145. package/dist/connector/site-conf/site-place-types.js.map +1 -0
  146. package/dist/connector/site-schema/common-schema-reader.d.ts +2 -0
  147. package/dist/connector/site-schema/common-schema-reader.js +56 -0
  148. package/dist/connector/site-schema/common-schema-reader.js.map +1 -0
  149. package/dist/connector/site-schema/common-schema-types.d.ts +13 -0
  150. package/dist/connector/site-schema/common-schema-types.js +2 -0
  151. package/dist/connector/site-schema/common-schema-types.js.map +1 -0
  152. package/dist/connector/site-schema/default-media-policy.d.ts +3 -0
  153. package/dist/connector/site-schema/default-media-policy.js +21 -0
  154. package/dist/connector/site-schema/default-media-policy.js.map +1 -0
  155. package/dist/connector/site-schema/read-locales.d.ts +23 -0
  156. package/dist/connector/site-schema/read-locales.js +214 -0
  157. package/dist/connector/site-schema/read-locales.js.map +1 -0
  158. package/dist/connector/site-schema/schema-lib.d.ts +29 -0
  159. package/dist/connector/site-schema/schema-lib.js +62 -0
  160. package/dist/connector/site-schema/schema-lib.js.map +1 -0
  161. package/dist/connector/site-schema/site-configuration.d.ts +4 -0
  162. package/dist/connector/site-schema/site-configuration.js +2 -0
  163. package/dist/connector/site-schema/site-configuration.js.map +1 -0
  164. package/dist/connector/site-schema/site-schema-factory.d.ts +21 -0
  165. package/dist/connector/site-schema/site-schema-factory.js +574 -0
  166. package/dist/connector/site-schema/site-schema-factory.js.map +1 -0
  167. package/dist/connector/site-schema/site-schema-helpers.d.ts +3 -0
  168. package/dist/connector/site-schema/site-schema-helpers.js +7 -0
  169. package/dist/connector/site-schema/site-schema-helpers.js.map +1 -0
  170. package/dist/connector/site-schema/site-schema-lib-reader.d.ts +8 -0
  171. package/dist/connector/site-schema/site-schema-lib-reader.js +42 -0
  172. package/dist/connector/site-schema/site-schema-lib-reader.js.map +1 -0
  173. package/dist/connector/site-schema/site-schema-public-helpers.d.ts +3 -0
  174. package/dist/connector/site-schema/site-schema-public-helpers.js +15 -0
  175. package/dist/connector/site-schema/site-schema-public-helpers.js.map +1 -0
  176. package/dist/connector/theme-conf/theme-conf-reader.d.ts +4 -0
  177. package/dist/connector/theme-conf/theme-conf-reader.js +31 -0
  178. package/dist/connector/theme-conf/theme-conf-reader.js.map +1 -0
  179. package/dist/context.d.ts +3 -3
  180. package/dist/context.js +3 -3
  181. package/dist/context.js.map +1 -1
  182. package/dist/express/http-helpers.d.ts +3 -3
  183. package/dist/express/http-redirection-url.d.ts +1 -1
  184. package/dist/express/local-testing-route.js +5 -1
  185. package/dist/express/local-testing-route.js.map +1 -1
  186. package/dist/express/route-handler-wrapper.d.ts +9 -1
  187. package/dist/express/route-handler-wrapper.js +25 -2
  188. package/dist/express/route-handler-wrapper.js.map +1 -1
  189. package/dist/express/site-middleware.js +3 -6
  190. package/dist/express/site-middleware.js.map +1 -1
  191. package/dist/express/static-files.req-handler.d.ts +2 -2
  192. package/dist/express/static-files.req-handler.js +3 -3
  193. package/dist/express/static-files.req-handler.js.map +1 -1
  194. package/dist/graphql/apollo-server-init.js +2 -0
  195. package/dist/graphql/apollo-server-init.js.map +1 -1
  196. package/dist/graphql/graphql.types.d.ts +7 -2
  197. package/dist/graphql/graphql.types.js +6 -1
  198. package/dist/graphql/graphql.types.js.map +1 -1
  199. package/dist/helpers/special-account.helpers.d.ts +1 -1
  200. package/dist/helpers/special-account.helpers.js.map +1 -1
  201. package/dist/index.d.ts +1 -1
  202. package/dist/index.js +2 -1
  203. package/dist/index.js.map +1 -1
  204. package/dist/maintenance/maintenance-task.js +4 -2
  205. package/dist/maintenance/maintenance-task.js.map +1 -1
  206. package/dist/plugin-services/make-backend-plugin-service.d.ts +1 -1
  207. package/dist/plugin-services/make-backend-plugin-service.js +3 -3
  208. package/dist/plugin-services/make-backend-plugin-service.js.map +1 -1
  209. package/dist/public-api/password-reset/password-reset.service.js.map +1 -1
  210. package/dist/rendered-site/feed/feed-generator.js +1 -1
  211. package/dist/rendered-site/feed/feed-generator.js.map +1 -1
  212. package/dist/rendered-site/liquidjs-filters/head-tags-filter.d.ts +1 -1
  213. package/dist/rendered-site/liquidjs-filters/open-graph-filter.d.ts +1 -1
  214. package/dist/rendered-site/liquidjs-filters/plugin-asset-url-filter.js +1 -1
  215. package/dist/rendered-site/liquidjs-filters/plugin-asset-url-filter.js.map +1 -1
  216. package/dist/rendered-site/liquidjs-tags/get-docs-tag.js +1 -1
  217. package/dist/rendered-site/liquidjs-tags/get-docs-tag.js.map +1 -1
  218. package/dist/rendered-site/liquidjs-tags/get-paginated-docs-tag.js +1 -1
  219. package/dist/rendered-site/liquidjs-tags/get-paginated-docs-tag.js.map +1 -1
  220. package/dist/rendered-site/page-route/make-url.js +1 -1
  221. package/dist/rendered-site/page-route/make-url.js.map +1 -1
  222. package/dist/rendering-payload/doc-values.queries.js +1 -1
  223. package/dist/rendering-payload/doc-values.queries.js.map +1 -1
  224. package/dist/rendering-payload/excerpt.queries.js +1 -1
  225. package/dist/rendering-payload/excerpt.queries.js.map +1 -1
  226. package/dist/rendering-payload/get-siblings.queries.js +1 -1
  227. package/dist/rendering-payload/get-siblings.queries.js.map +1 -1
  228. package/dist/rendering-payload/parts.queries.js +1 -1
  229. package/dist/rendering-payload/parts.queries.js.map +1 -1
  230. package/dist/rendering-payload/translations.queries.js +1 -1
  231. package/dist/rendering-payload/translations.queries.js.map +1 -1
  232. package/dist/running-server/running-server-connector.d.ts +2 -0
  233. package/dist/{helpers/running-instance-connector.js → running-server/running-server-connector.js} +17 -5
  234. package/dist/running-server/running-server-connector.js.map +1 -0
  235. package/dist/running-server/single-site-generator.d.ts +2 -0
  236. package/dist/running-server/single-site-generator.js +23 -0
  237. package/dist/running-server/single-site-generator.js.map +1 -0
  238. package/dist/site-context/core-plugin/core-hooks.d.ts +1 -1
  239. package/dist/site-context/core-plugin/create-core-plugin.d.ts +1 -1
  240. package/dist/site-context/core-plugin/create-core-plugin.js.map +1 -1
  241. package/dist/site-context/load-site-context.d.ts +2 -2
  242. package/dist/site-context/load-site-context.js +54 -3
  243. package/dist/site-context/load-site-context.js.map +1 -1
  244. package/dist/site-context/site-context.d.ts +7 -7
  245. package/dist/site-context/site-context.js +17 -7
  246. package/dist/site-context/site-context.js.map +1 -1
  247. package/dist/site-context/site-context.types.d.ts +26 -3
  248. package/dist/site-schema-migration/migrations/site-schema-migration-6-to-7.d.ts +9 -0
  249. package/dist/site-schema-migration/migrations/site-schema-migration-6-to-7.js +61 -0
  250. package/dist/site-schema-migration/migrations/site-schema-migration-6-to-7.js.map +1 -0
  251. package/dist/site-schema-migration/migrations/site-schema-migration-7-to-8.d.ts +9 -0
  252. package/dist/site-schema-migration/migrations/site-schema-migration-7-to-8.js +54 -0
  253. package/dist/site-schema-migration/migrations/site-schema-migration-7-to-8.js.map +1 -0
  254. package/dist/site-schema-migration/migrations/site-schema-migration-8-to-9.d.ts +9 -0
  255. package/dist/site-schema-migration/migrations/site-schema-migration-8-to-9.js +44 -0
  256. package/dist/site-schema-migration/migrations/site-schema-migration-8-to-9.js.map +1 -0
  257. package/dist/site-schema-migration/site-schema-migration.d.ts +3 -0
  258. package/dist/site-schema-migration/site-schema-migration.js +43 -0
  259. package/dist/site-schema-migration/site-schema-migration.js.map +1 -0
  260. package/dist/tsconfig.tsbuildinfo +1 -1
  261. package/package.json +11 -9
  262. package/schema.graphql +21 -0
  263. package/site-schema-lib/common-schema.json +40 -0
  264. package/site-schema-lib/common-schema.l10n.de.json +10 -0
  265. package/site-schema-lib/common-schema.l10n.en.json +10 -0
  266. package/site-schema-lib/common-schema.l10n.es.json +10 -0
  267. package/site-schema-lib/common-schema.l10n.fr.json +10 -0
  268. package/site-schema-lib/common-schema.l10n.it.json +10 -0
  269. package/site-schema-lib/common-schema.l10n.pt.json +10 -0
  270. package/site-schema-lib/field-lib.site-schema.json +84 -0
  271. package/site-schema-lib/field-lib.site-schema.l10n.de.json +38 -0
  272. package/site-schema-lib/field-lib.site-schema.l10n.en.json +38 -0
  273. package/site-schema-lib/field-lib.site-schema.l10n.es.json +38 -0
  274. package/site-schema-lib/field-lib.site-schema.l10n.fr.json +41 -0
  275. package/site-schema-lib/field-lib.site-schema.l10n.it.json +38 -0
  276. package/site-schema-lib/field-lib.site-schema.l10n.pt.json +38 -0
  277. package/dist/helpers/running-instance-connector.d.ts +0 -2
  278. package/dist/helpers/running-instance-connector.js.map +0 -1
@@ -0,0 +1,43 @@
1
+ import { readFile } from "node:fs/promises";
2
+ import { join } from "node:path";
3
+ import { appConf, registeredSites } from "../context.js";
4
+ import { migrateFrom6To7 } from "./migrations/site-schema-migration-6-to-7.js";
5
+ import { migrateFrom7To8 } from "./migrations/site-schema-migration-7-to-8.js";
6
+ import { migrateFrom8To9 } from "./migrations/site-schema-migration-8-to-9.js";
7
+ export async function migrateSiteSchema(siteContext) {
8
+ await migrateDirectory(siteContext.siteDir);
9
+ }
10
+ export async function migrateSiteSchemas() {
11
+ let directories;
12
+ if (appConf.kind === "multisite") {
13
+ directories = Array.from(registeredSites.values()).map((site) => site.siteDir);
14
+ }
15
+ else {
16
+ directories = [process.cwd()];
17
+ }
18
+ for (const directory of directories) {
19
+ await migrateDirectory(directory);
20
+ }
21
+ }
22
+ async function migrateDirectory(directory) {
23
+ const targetVersion = "9";
24
+ console.info(`Migrating site-schema in directory "${directory}"`);
25
+ let siteSchema = JSON.parse(await readFile(join(directory, "site-schema.json"), "utf-8"));
26
+ if (siteSchema.ParoiCMSSiteSchemaFormatVersion === targetVersion) {
27
+ console.info(`… already at version ${targetVersion}`);
28
+ return;
29
+ }
30
+ if (siteSchema.version === "6") {
31
+ siteSchema = await migrateFrom6To7(directory, siteSchema);
32
+ console.info("… migrated from version 6 to 7");
33
+ }
34
+ if (siteSchema.version === "7") {
35
+ siteSchema = await migrateFrom7To8(directory, siteSchema);
36
+ console.info("… migrated from version 7 to 8");
37
+ }
38
+ if (siteSchema.version === "8") {
39
+ siteSchema = await migrateFrom8To9(directory, siteSchema);
40
+ console.info("… migrated from version 8 to 9");
41
+ }
42
+ }
43
+ //# sourceMappingURL=site-schema-migration.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"site-schema-migration.js","sourceRoot":"","sources":["../../src/site-schema-migration/site-schema-migration.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAEzD,OAAO,EAAE,eAAe,EAAE,MAAM,8CAA8C,CAAC;AAC/E,OAAO,EAAE,eAAe,EAAE,MAAM,8CAA8C,CAAC;AAC/E,OAAO,EAAE,eAAe,EAAE,MAAM,8CAA8C,CAAC;AAE/E,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,WAAkD;IACxF,MAAM,gBAAgB,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;AAC9C,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,kBAAkB;IACtC,IAAI,WAAqB,CAAC;IAC1B,IAAI,OAAO,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;QACjC,WAAW,GAAG,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACjF,CAAC;SAAM,CAAC;QACN,WAAW,GAAG,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;IAChC,CAAC;IAED,KAAK,MAAM,SAAS,IAAI,WAAW,EAAE,CAAC;QACpC,MAAM,gBAAgB,CAAC,SAAS,CAAC,CAAC;IACpC,CAAC;AACH,CAAC;AAED,KAAK,UAAU,gBAAgB,CAAC,SAAiB;IAC/C,MAAM,aAAa,GAAG,GAAG,CAAC;IAE1B,OAAO,CAAC,IAAI,CAAC,uCAAuC,SAAS,GAAG,CAAC,CAAC;IAClE,IAAI,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,QAAQ,CAAC,IAAI,CAAC,SAAS,EAAE,kBAAkB,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC;IAE1F,IAAI,UAAU,CAAC,+BAA+B,KAAK,aAAa,EAAE,CAAC;QACjE,OAAO,CAAC,IAAI,CAAC,wBAAwB,aAAa,EAAE,CAAC,CAAC;QACtD,OAAO;IACT,CAAC;IAED,IAAI,UAAU,CAAC,OAAO,KAAK,GAAG,EAAE,CAAC;QAC/B,UAAU,GAAG,MAAM,eAAe,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;QAC1D,OAAO,CAAC,IAAI,CAAC,gCAAgC,CAAC,CAAC;IACjD,CAAC;IACD,IAAI,UAAU,CAAC,OAAO,KAAK,GAAG,EAAE,CAAC;QAC/B,UAAU,GAAG,MAAM,eAAe,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;QAC1D,OAAO,CAAC,IAAI,CAAC,gCAAgC,CAAC,CAAC;IACjD,CAAC;IACD,IAAI,UAAU,CAAC,OAAO,KAAK,GAAG,EAAE,CAAC;QAC/B,UAAU,GAAG,MAAM,eAAe,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;QAC1D,OAAO,CAAC,IAAI,CAAC,gCAAgC,CAAC,CAAC;IACjD,CAAC;AACH,CAAC"}