@studio-fes/create-fes-app 0.1.1

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 (284) hide show
  1. package/README.md +70 -0
  2. package/bin/create-fes-app.mjs +180 -0
  3. package/package.json +28 -0
  4. package/templates/craft/.env +6 -0
  5. package/templates/craft/.env.example +9 -0
  6. package/templates/craft/.nuxt/app.config.mjs +25 -0
  7. package/templates/craft/.nuxt/components.d.ts +212 -0
  8. package/templates/craft/.nuxt/eslint.config.d.mts +9 -0
  9. package/templates/craft/.nuxt/eslint.config.mjs +77 -0
  10. package/templates/craft/.nuxt/fetch.d.ts +1 -0
  11. package/templates/craft/.nuxt/graphql-operations/index.d.ts +2064 -0
  12. package/templates/craft/.nuxt/graphql-operations/index.js +0 -0
  13. package/templates/craft/.nuxt/i18n-route-resources.mjs +8 -0
  14. package/templates/craft/.nuxt/image/providers.d.ts +53 -0
  15. package/templates/craft/.nuxt/imports.d.ts +128 -0
  16. package/templates/craft/.nuxt/link-checker/routes.json +1 -0
  17. package/templates/craft/.nuxt/manifest/meta/8c7a2100-6449-4269-93f2-c4a4d3c46ac1.json +1 -0
  18. package/templates/craft/.nuxt/module/nuxt-schema-org.d.ts +14 -0
  19. package/templates/craft/.nuxt/module/nuxt-seo-utils.assets.d.ts +25 -0
  20. package/templates/craft/.nuxt/module/nuxt-seo-utils.d.ts +36 -0
  21. package/templates/craft/.nuxt/module/nuxt-site-config.d.ts +46 -0
  22. package/templates/craft/.nuxt/nuxt-graphql-middleware/client-options.d.ts +7 -0
  23. package/templates/craft/.nuxt/nuxt-graphql-middleware/client-options.js +4 -0
  24. package/templates/craft/.nuxt/nuxt-graphql-middleware/config.d.ts +7 -0
  25. package/templates/craft/.nuxt/nuxt-graphql-middleware/config.js +7 -0
  26. package/templates/craft/.nuxt/nuxt-graphql-middleware/documents.d.ts +12 -0
  27. package/templates/craft/.nuxt/nuxt-graphql-middleware/graphql.config.d.ts +10 -0
  28. package/templates/craft/.nuxt/nuxt-graphql-middleware/graphql.config.js +21 -0
  29. package/templates/craft/.nuxt/nuxt-graphql-middleware/helpers.d.ts +5 -0
  30. package/templates/craft/.nuxt/nuxt-graphql-middleware/helpers.js +7 -0
  31. package/templates/craft/.nuxt/nuxt-graphql-middleware/hook-documents.graphql +0 -0
  32. package/templates/craft/.nuxt/nuxt-graphql-middleware/hook-files.d.ts +4 -0
  33. package/templates/craft/.nuxt/nuxt-graphql-middleware/hook-files.js +4 -0
  34. package/templates/craft/.nuxt/nuxt-graphql-middleware/mcp.d.ts +15 -0
  35. package/templates/craft/.nuxt/nuxt-graphql-middleware/mcp.js +74 -0
  36. package/templates/craft/.nuxt/nuxt-graphql-middleware/nitro.d.ts +27 -0
  37. package/templates/craft/.nuxt/nuxt-graphql-middleware/operation-hashes.d.ts +6 -0
  38. package/templates/craft/.nuxt/nuxt-graphql-middleware/operation-types.d.ts +46 -0
  39. package/templates/craft/.nuxt/nuxt-graphql-middleware/operation-types.js +4 -0
  40. package/templates/craft/.nuxt/nuxt-graphql-middleware/operation-variables.d.ts +4 -0
  41. package/templates/craft/.nuxt/nuxt-graphql-middleware/operation-variables.js +29 -0
  42. package/templates/craft/.nuxt/nuxt-graphql-middleware/response.d.ts +22 -0
  43. package/templates/craft/.nuxt/nuxt-graphql-middleware/server-options.d.ts +11 -0
  44. package/templates/craft/.nuxt/nuxt-graphql-middleware/server-options.js +5 -0
  45. package/templates/craft/.nuxt/nuxt-graphql-middleware/sources.d.ts +4 -0
  46. package/templates/craft/.nuxt/nuxt-graphql-middleware/sources.js +9 -0
  47. package/templates/craft/.nuxt/nuxt-multi-cache/config.d.ts +57 -0
  48. package/templates/craft/.nuxt/nuxt-multi-cache/config.js +10 -0
  49. package/templates/craft/.nuxt/nuxt-multi-cache/nitro.d.ts +46 -0
  50. package/templates/craft/.nuxt/nuxt-multi-cache/server-options.d.ts +3 -0
  51. package/templates/craft/.nuxt/nuxt-multi-cache/server-options.js +2 -0
  52. package/templates/craft/.nuxt/nuxt.d.ts +59 -0
  53. package/templates/craft/.nuxt/nuxt.node.d.ts +29 -0
  54. package/templates/craft/.nuxt/nuxt.shared.d.ts +8 -0
  55. package/templates/craft/.nuxt/schema/nuxt.schema.d.ts +17 -0
  56. package/templates/craft/.nuxt/schema/nuxt.schema.json +3 -0
  57. package/templates/craft/.nuxt/tsconfig.app.json +461 -0
  58. package/templates/craft/.nuxt/tsconfig.json +471 -0
  59. package/templates/craft/.nuxt/tsconfig.node.json +245 -0
  60. package/templates/craft/.nuxt/tsconfig.server.json +336 -0
  61. package/templates/craft/.nuxt/tsconfig.shared.json +267 -0
  62. package/templates/craft/.nuxt/types/app.config.d.ts +39 -0
  63. package/templates/craft/.nuxt/types/build.d.ts +60 -0
  64. package/templates/craft/.nuxt/types/builder-env.d.ts +1 -0
  65. package/templates/craft/.nuxt/types/components.d.ts +217 -0
  66. package/templates/craft/.nuxt/types/i18n-plugin.d.ts +133 -0
  67. package/templates/craft/.nuxt/types/imports.d.ts +1132 -0
  68. package/templates/craft/.nuxt/types/layouts.d.ts +20 -0
  69. package/templates/craft/.nuxt/types/middleware.d.ts +7 -0
  70. package/templates/craft/.nuxt/types/modules.d.ts +589 -0
  71. package/templates/craft/.nuxt/types/nitro-config.d.ts +14 -0
  72. package/templates/craft/.nuxt/types/nitro-imports.d.ts +222 -0
  73. package/templates/craft/.nuxt/types/nitro-layouts.d.ts +17 -0
  74. package/templates/craft/.nuxt/types/nitro-middleware.d.ts +11 -0
  75. package/templates/craft/.nuxt/types/nitro-nuxt.d.ts +90 -0
  76. package/templates/craft/.nuxt/types/nitro-routes.d.ts +59 -0
  77. package/templates/craft/.nuxt/types/nitro.d.ts +3 -0
  78. package/templates/craft/.nuxt/types/nuxt-robots-nitro.d.ts +65 -0
  79. package/templates/craft/.nuxt/types/nuxt-robots-nuxt.d.ts +10 -0
  80. package/templates/craft/.nuxt/types/nuxt-scripts-augments.d.ts +15 -0
  81. package/templates/craft/.nuxt/types/nuxt-sitemap-augments.d.ts +61 -0
  82. package/templates/craft/.nuxt/types/nuxt-sitemap-virtual.d.ts +23 -0
  83. package/templates/craft/.nuxt/types/plugins.d.ts +61 -0
  84. package/templates/craft/.nuxt/types/runtime-config.d.ts +236 -0
  85. package/templates/craft/.nuxt/types/shared-app.config.d.ts +32 -0
  86. package/templates/craft/.nuxt/types/shared-imports.d.ts +10 -0
  87. package/templates/craft/.nuxt/types/vue-shim.d.ts +0 -0
  88. package/templates/craft/.vscode/extensions.json +7 -0
  89. package/templates/craft/.vscode/launch.json +15 -0
  90. package/templates/craft/.vscode/settings.json +73 -0
  91. package/templates/craft/.vscode/unocss.json +25 -0
  92. package/templates/craft/Dockerfile +37 -0
  93. package/templates/craft/README.md +75 -0
  94. package/templates/craft/_gitignore +24 -0
  95. package/templates/craft/app/app.vue +11 -0
  96. package/templates/craft/app/components/.gitkeep +0 -0
  97. package/templates/craft/app/components/LocaleSwitcher.vue +14 -0
  98. package/templates/craft/app/pages/[slug].vue +23 -0
  99. package/templates/craft/app/pages/index.vue +29 -0
  100. package/templates/craft/app/plugins/gsap-reduced-motion.client.ts +11 -0
  101. package/templates/craft/app/plugins/org-schema.server.ts +15 -0
  102. package/templates/craft/app/plugins/site-config.server.ts +17 -0
  103. package/templates/craft/eslint.config.js +73 -0
  104. package/templates/craft/graphql.config.ts +4 -0
  105. package/templates/craft/i18n/index.ts +6 -0
  106. package/templates/craft/i18n/locales/en.ts +3 -0
  107. package/templates/craft/i18n/locales/index.ts +17 -0
  108. package/templates/craft/i18n/locales/it.ts +3 -0
  109. package/templates/craft/i18n.config.ts +9 -0
  110. package/templates/craft/node_modules/.bin/acorn +43 -0
  111. package/templates/craft/node_modules/.bin/browserslist +43 -0
  112. package/templates/craft/node_modules/.bin/esbuild +34 -0
  113. package/templates/craft/node_modules/.bin/eslint +43 -0
  114. package/templates/craft/node_modules/.bin/eslint-config +43 -0
  115. package/templates/craft/node_modules/.bin/jiti +43 -0
  116. package/templates/craft/node_modules/.bin/nuxi +43 -0
  117. package/templates/craft/node_modules/.bin/nuxt +43 -0
  118. package/templates/craft/node_modules/.bin/rolldown +43 -0
  119. package/templates/craft/node_modules/.bin/rollup +43 -0
  120. package/templates/craft/node_modules/.bin/rollup-plugin-visualizer +43 -0
  121. package/templates/craft/node_modules/.bin/terser +43 -0
  122. package/templates/craft/node_modules/.bin/tsc +43 -0
  123. package/templates/craft/node_modules/.bin/vite +43 -0
  124. package/templates/craft/node_modules/.bin/webpack +43 -0
  125. package/templates/craft/node_modules/.bin/yaml +43 -0
  126. package/templates/craft/node_modules/.cache/jiti/craft-nuxt.config.96899b85.mjs +39 -0
  127. package/templates/craft/node_modules/.cache/jiti/i18n-index.2e90cf09.mjs +6 -0
  128. package/templates/craft/node_modules/.cache/jiti/i18n-index.a093f66a.mjs +6 -0
  129. package/templates/craft/node_modules/.cache/jiti/layer-base-nuxt.config.5fd074c8.mjs +75 -0
  130. package/templates/craft/node_modules/.cache/jiti/layer-craft-nuxt.config.c163264b.mjs +36 -0
  131. package/templates/craft/node_modules/.cache/jiti/layer-craft-parse-env.a47fc157.mjs +23 -0
  132. package/templates/craft/node_modules/.cache/jiti/locales-index.3d828a7c.mjs +16 -0
  133. package/templates/craft/node_modules/.cache/jiti/locales-index.c7376a42.mjs +16 -0
  134. package/templates/craft/node_modules/.cache/jiti/modules-og-image-detect.3072b6e2.mjs +25 -0
  135. package/templates/craft/node_modules/.cache/jiti/modules-og-image-detect.e32906d8.mjs +25 -0
  136. package/templates/craft/node_modules/.cache/jiti/starter-craft-nuxt.config.573fb392.mjs +39 -0
  137. package/templates/craft/node_modules/.cache/nuxt/chrome-workspace.json +1 -0
  138. package/templates/craft/nuxt.config.ts +39 -0
  139. package/templates/craft/package.json +26 -0
  140. package/templates/craft/public/_robots.txt +2 -0
  141. package/templates/craft/public/favicon.ico +0 -0
  142. package/templates/craft/public/og-image.jpg +0 -0
  143. package/templates/craft/queries/Entries.gql +35 -0
  144. package/templates/craft/queries/Entry.gql +22 -0
  145. package/templates/craft/queries/OrgSchema.gql +21 -0
  146. package/templates/craft/queries/Page.gql +6 -0
  147. package/templates/craft/queries/SiteConfig.gql +6 -0
  148. package/templates/craft/queries/fragments/Interfaces.gql +25 -0
  149. package/templates/craft/queries/fragments/Media.gql +11 -0
  150. package/templates/craft/queries/fragments/OrgSchemaField.gql +3 -0
  151. package/templates/craft/queries/fragments/SEO.gql +27 -0
  152. package/templates/craft/schema.graphql +12283 -0
  153. package/templates/craft/tsconfig.json +18 -0
  154. package/templates/craft/uno.config.ts +15 -0
  155. package/templates/strapi/.env +7 -0
  156. package/templates/strapi/.env.example +6 -0
  157. package/templates/strapi/.nuxt/app.config.mjs +25 -0
  158. package/templates/strapi/.nuxt/components.d.ts +216 -0
  159. package/templates/strapi/.nuxt/eslint.config.d.mts +9 -0
  160. package/templates/strapi/.nuxt/eslint.config.mjs +77 -0
  161. package/templates/strapi/.nuxt/fetch.d.ts +1 -0
  162. package/templates/strapi/.nuxt/graphql-operations/index.d.ts +315 -0
  163. package/templates/strapi/.nuxt/graphql-operations/index.js +31 -0
  164. package/templates/strapi/.nuxt/i18n-route-resources.mjs +5 -0
  165. package/templates/strapi/.nuxt/image/providers.d.ts +53 -0
  166. package/templates/strapi/.nuxt/imports.d.ts +126 -0
  167. package/templates/strapi/.nuxt/link-checker/routes.json +1 -0
  168. package/templates/strapi/.nuxt/manifest/meta/7053ffc6-a484-4262-9af2-d3139913c2af.json +1 -0
  169. package/templates/strapi/.nuxt/module/nuxt-schema-org.d.ts +14 -0
  170. package/templates/strapi/.nuxt/module/nuxt-seo-utils.assets.d.ts +25 -0
  171. package/templates/strapi/.nuxt/module/nuxt-seo-utils.d.ts +36 -0
  172. package/templates/strapi/.nuxt/module/nuxt-site-config.d.ts +46 -0
  173. package/templates/strapi/.nuxt/nuxt-graphql-middleware/client-options.d.ts +7 -0
  174. package/templates/strapi/.nuxt/nuxt-graphql-middleware/client-options.js +4 -0
  175. package/templates/strapi/.nuxt/nuxt-graphql-middleware/config.d.ts +7 -0
  176. package/templates/strapi/.nuxt/nuxt-graphql-middleware/config.js +7 -0
  177. package/templates/strapi/.nuxt/nuxt-graphql-middleware/documents.d.ts +12 -0
  178. package/templates/strapi/.nuxt/nuxt-graphql-middleware/graphql.config.d.ts +10 -0
  179. package/templates/strapi/.nuxt/nuxt-graphql-middleware/graphql.config.js +21 -0
  180. package/templates/strapi/.nuxt/nuxt-graphql-middleware/helpers.d.ts +5 -0
  181. package/templates/strapi/.nuxt/nuxt-graphql-middleware/helpers.js +7 -0
  182. package/templates/strapi/.nuxt/nuxt-graphql-middleware/hook-documents.graphql +0 -0
  183. package/templates/strapi/.nuxt/nuxt-graphql-middleware/hook-files.d.ts +4 -0
  184. package/templates/strapi/.nuxt/nuxt-graphql-middleware/hook-files.js +4 -0
  185. package/templates/strapi/.nuxt/nuxt-graphql-middleware/mcp.d.ts +15 -0
  186. package/templates/strapi/.nuxt/nuxt-graphql-middleware/mcp.js +74 -0
  187. package/templates/strapi/.nuxt/nuxt-graphql-middleware/nitro.d.ts +19 -0
  188. package/templates/strapi/.nuxt/nuxt-graphql-middleware/operation-hashes.d.ts +6 -0
  189. package/templates/strapi/.nuxt/nuxt-graphql-middleware/operation-types.d.ts +32 -0
  190. package/templates/strapi/.nuxt/nuxt-graphql-middleware/operation-types.js +4 -0
  191. package/templates/strapi/.nuxt/nuxt-graphql-middleware/operation-variables.d.ts +4 -0
  192. package/templates/strapi/.nuxt/nuxt-graphql-middleware/operation-variables.js +12 -0
  193. package/templates/strapi/.nuxt/nuxt-graphql-middleware/response.d.ts +18 -0
  194. package/templates/strapi/.nuxt/nuxt-graphql-middleware/server-options.d.ts +8 -0
  195. package/templates/strapi/.nuxt/nuxt-graphql-middleware/server-options.js +5 -0
  196. package/templates/strapi/.nuxt/nuxt-graphql-middleware/sources.d.ts +4 -0
  197. package/templates/strapi/.nuxt/nuxt-graphql-middleware/sources.js +7 -0
  198. package/templates/strapi/.nuxt/nuxt-multi-cache/config.d.ts +57 -0
  199. package/templates/strapi/.nuxt/nuxt-multi-cache/config.js +10 -0
  200. package/templates/strapi/.nuxt/nuxt-multi-cache/nitro.d.ts +46 -0
  201. package/templates/strapi/.nuxt/nuxt-multi-cache/server-options.d.ts +3 -0
  202. package/templates/strapi/.nuxt/nuxt-multi-cache/server-options.js +2 -0
  203. package/templates/strapi/.nuxt/nuxt.d.ts +58 -0
  204. package/templates/strapi/.nuxt/nuxt.node.d.ts +28 -0
  205. package/templates/strapi/.nuxt/nuxt.shared.d.ts +8 -0
  206. package/templates/strapi/.nuxt/schema/nuxt.schema.d.ts +17 -0
  207. package/templates/strapi/.nuxt/schema/nuxt.schema.json +3 -0
  208. package/templates/strapi/.nuxt/tsconfig.app.json +456 -0
  209. package/templates/strapi/.nuxt/tsconfig.json +466 -0
  210. package/templates/strapi/.nuxt/tsconfig.node.json +243 -0
  211. package/templates/strapi/.nuxt/tsconfig.server.json +334 -0
  212. package/templates/strapi/.nuxt/tsconfig.shared.json +267 -0
  213. package/templates/strapi/.nuxt/types/app.config.d.ts +39 -0
  214. package/templates/strapi/.nuxt/types/build.d.ts +60 -0
  215. package/templates/strapi/.nuxt/types/builder-env.d.ts +1 -0
  216. package/templates/strapi/.nuxt/types/components.d.ts +221 -0
  217. package/templates/strapi/.nuxt/types/i18n-plugin.d.ts +133 -0
  218. package/templates/strapi/.nuxt/types/imports.d.ts +1120 -0
  219. package/templates/strapi/.nuxt/types/layouts.d.ts +20 -0
  220. package/templates/strapi/.nuxt/types/middleware.d.ts +7 -0
  221. package/templates/strapi/.nuxt/types/modules.d.ts +569 -0
  222. package/templates/strapi/.nuxt/types/nitro-config.d.ts +14 -0
  223. package/templates/strapi/.nuxt/types/nitro-imports.d.ts +220 -0
  224. package/templates/strapi/.nuxt/types/nitro-layouts.d.ts +17 -0
  225. package/templates/strapi/.nuxt/types/nitro-middleware.d.ts +11 -0
  226. package/templates/strapi/.nuxt/types/nitro-nuxt.d.ts +90 -0
  227. package/templates/strapi/.nuxt/types/nitro-routes.d.ts +44 -0
  228. package/templates/strapi/.nuxt/types/nitro.d.ts +3 -0
  229. package/templates/strapi/.nuxt/types/nuxt-robots-nitro.d.ts +65 -0
  230. package/templates/strapi/.nuxt/types/nuxt-robots-nuxt.d.ts +10 -0
  231. package/templates/strapi/.nuxt/types/nuxt-scripts-augments.d.ts +15 -0
  232. package/templates/strapi/.nuxt/types/nuxt-sitemap-augments.d.ts +61 -0
  233. package/templates/strapi/.nuxt/types/nuxt-sitemap-virtual.d.ts +23 -0
  234. package/templates/strapi/.nuxt/types/plugins.d.ts +58 -0
  235. package/templates/strapi/.nuxt/types/runtime-config.d.ts +244 -0
  236. package/templates/strapi/.nuxt/types/shared-app.config.d.ts +32 -0
  237. package/templates/strapi/.nuxt/types/shared-imports.d.ts +10 -0
  238. package/templates/strapi/.nuxt/types/vue-shim.d.ts +0 -0
  239. package/templates/strapi/README.md +75 -0
  240. package/templates/strapi/_gitignore +24 -0
  241. package/templates/strapi/app/app.vue +5 -0
  242. package/templates/strapi/app/components/DynamicZone.vue +75 -0
  243. package/templates/strapi/app/components/SectionSingleImage.vue +39 -0
  244. package/templates/strapi/app/components/VideoProgress.vue +34 -0
  245. package/templates/strapi/app/pages/[slug].vue +28 -0
  246. package/templates/strapi/app/pages/index.vue +12 -0
  247. package/templates/strapi/app/plugins/gsap-reduced-motion.client.ts +11 -0
  248. package/templates/strapi/app/plugins/site-config.server.ts +17 -0
  249. package/templates/strapi/eslint.config.js +74 -0
  250. package/templates/strapi/node_modules/.bin/esbuild +34 -0
  251. package/templates/strapi/node_modules/.bin/jiti +43 -0
  252. package/templates/strapi/node_modules/.bin/nuxi +43 -0
  253. package/templates/strapi/node_modules/.bin/nuxt +43 -0
  254. package/templates/strapi/node_modules/.bin/rolldown +43 -0
  255. package/templates/strapi/node_modules/.bin/rollup +43 -0
  256. package/templates/strapi/node_modules/.bin/rollup-plugin-visualizer +43 -0
  257. package/templates/strapi/node_modules/.bin/terser +43 -0
  258. package/templates/strapi/node_modules/.bin/tsc +43 -0
  259. package/templates/strapi/node_modules/.bin/vite +43 -0
  260. package/templates/strapi/node_modules/.bin/webpack +43 -0
  261. package/templates/strapi/node_modules/.bin/yaml +43 -0
  262. package/templates/strapi/node_modules/.cache/jiti/layer-base-nuxt.config.5fd074c8.mjs +75 -0
  263. package/templates/strapi/node_modules/.cache/jiti/layer-strapi-nuxt.config.29354bb2.mjs +33 -0
  264. package/templates/strapi/node_modules/.cache/jiti/layer-strapi-parse-env.46647a07.mjs +23 -0
  265. package/templates/strapi/node_modules/.cache/jiti/modules-og-image-detect.3072b6e2.mjs +25 -0
  266. package/templates/strapi/node_modules/.cache/jiti/modules-vue-strapi-blocks-renderer.5518edfe.mjs +22 -0
  267. package/templates/strapi/node_modules/.cache/jiti/starter-strapi-nuxt.config.b85f8ac6.mjs +15 -0
  268. package/templates/strapi/node_modules/.cache/jiti/strapi-nuxt.config.5d4f493c.mjs +15 -0
  269. package/templates/strapi/node_modules/.cache/nuxt/chrome-workspace.json +1 -0
  270. package/templates/strapi/nuxt.config.ts +15 -0
  271. package/templates/strapi/package.json +19 -0
  272. package/templates/strapi/public/_robots.txt +2 -0
  273. package/templates/strapi/public/favicon.ico +0 -0
  274. package/templates/strapi/public/og-image.jpg +0 -0
  275. package/templates/strapi/queries/PageCustomPage.gql +5 -0
  276. package/templates/strapi/queries/PageHome.gql +15 -0
  277. package/templates/strapi/queries/fragments/MetaSocial.gql +9 -0
  278. package/templates/strapi/queries/fragments/PageCustomPage.gql +32 -0
  279. package/templates/strapi/queries/fragments/SectionError.gql +4 -0
  280. package/templates/strapi/queries/fragments/SectionSingleImage.gql +7 -0
  281. package/templates/strapi/queries/fragments/SeoMeta.gql +16 -0
  282. package/templates/strapi/queries/fragments/StrapiFile.gql +8 -0
  283. package/templates/strapi/schema.graphql +1091 -0
  284. package/templates/strapi/tsconfig.json +18 -0
@@ -0,0 +1,23 @@
1
+ declare module '#sitemap-virtual/read-sources.mjs' {
2
+ export function readSourcesFromFilesystem(filename: string): Promise<any | null>
3
+ }
4
+
5
+ declare module '#sitemap-virtual/global-sources.mjs' {
6
+ import type { SitemapSourceBase, SitemapSourceResolved } from '#sitemap/types'
7
+
8
+ export const sources: (SitemapSourceBase | SitemapSourceResolved)[]
9
+ }
10
+
11
+ declare module '#sitemap-virtual/child-sources.mjs' {
12
+ import type { SitemapSourceBase, SitemapSourceResolved } from '#sitemap/types'
13
+
14
+ export const sources: Record<string, (SitemapSourceBase | SitemapSourceResolved)[]>
15
+ }
16
+
17
+ declare module '#sitemap/content-filters' {
18
+ export const filters: Map<string, (entry: any) => boolean>
19
+ }
20
+
21
+ declare module '#sitemap/content-on-url' {
22
+ export const onUrlFns: Map<string, (url: Record<string, unknown>, entry: any, collection: string) => void>
23
+ }
@@ -0,0 +1,58 @@
1
+ // Generated by Nuxt'
2
+ import type { Plugin } from '#app'
3
+
4
+ type Decorate<T extends Record<string, any>> = { [K in keyof T as K extends string ? `$${K}` : never]: T[K] }
5
+
6
+ type InjectionType<A extends Plugin> = A extends {default: Plugin<infer T>} ? Decorate<T> : unknown
7
+
8
+ type NuxtAppInjections =
9
+ InjectionType<typeof import("../../../../../../node_modules/.pnpm/nuxt-graphql-middleware@5.4.0_@parcel+watcher@2.5.6_@types+node@26.1.2_crossws@0.3.5_gr_8fe58dc693672128ff08154465028eed/node_modules/nuxt-graphql-middleware/dist/runtime/plugins/provideState.js")> &
10
+ InjectionType<typeof import("../../../../../../node_modules/.pnpm/nuxt@4.5.1_@babel+plugin-syntax-jsx@7.28.6_@babel+core@7.29.0_supports-color@10.2.2___@_d7c1e993a9447722d68d14b51eddb8d4/node_modules/nuxt/dist/app/plugins/revive-payload.client.js")> &
11
+ InjectionType<typeof import("../../../../../../node_modules/.pnpm/nuxt-site-config@4.1.2_44b3c45ac015ae8f841a172548867a1f/node_modules/nuxt-site-config/dist/runtime/app/plugins/0.siteConfig.js")> &
12
+ InjectionType<typeof import("../../../../../../node_modules/.pnpm/nuxt@4.5.1_@babel+plugin-syntax-jsx@7.28.6_@babel+core@7.29.0_supports-color@10.2.2___@_d7c1e993a9447722d68d14b51eddb8d4/node_modules/nuxt/dist/head/runtime/plugins/unhead.server.js")> &
13
+ InjectionType<typeof import("../../../../../../node_modules/.pnpm/nuxt@4.5.1_@babel+plugin-syntax-jsx@7.28.6_@babel+core@7.29.0_supports-color@10.2.2___@_d7c1e993a9447722d68d14b51eddb8d4/node_modules/nuxt/dist/head/runtime/plugins/unhead.client.js")> &
14
+ InjectionType<typeof import("../../../../../../node_modules/.pnpm/nuxt@4.5.1_@babel+plugin-syntax-jsx@7.28.6_@babel+core@7.29.0_supports-color@10.2.2___@_d7c1e993a9447722d68d14b51eddb8d4/node_modules/nuxt/dist/pages/runtime/plugins/router.js")> &
15
+ InjectionType<typeof import("../../app/plugins/site-config.server")> &
16
+ InjectionType<typeof import("../../../../../../node_modules/.pnpm/nuxt@4.5.1_@babel+plugin-syntax-jsx@7.28.6_@babel+core@7.29.0_supports-color@10.2.2___@_d7c1e993a9447722d68d14b51eddb8d4/node_modules/nuxt/dist/app/plugins/payload.client.js")> &
17
+ InjectionType<typeof import("../../../../../../node_modules/.pnpm/nuxt@4.5.1_@babel+plugin-syntax-jsx@7.28.6_@babel+core@7.29.0_supports-color@10.2.2___@_d7c1e993a9447722d68d14b51eddb8d4/node_modules/nuxt/dist/app/plugins/navigation-repaint.client.js")> &
18
+ InjectionType<typeof import("../../../../../../node_modules/.pnpm/nuxt@4.5.1_@babel+plugin-syntax-jsx@7.28.6_@babel+core@7.29.0_supports-color@10.2.2___@_d7c1e993a9447722d68d14b51eddb8d4/node_modules/nuxt/dist/app/plugins/check-outdated-build.client.js")> &
19
+ InjectionType<typeof import("../../../../../../node_modules/.pnpm/nuxt@4.5.1_@babel+plugin-syntax-jsx@7.28.6_@babel+core@7.29.0_supports-color@10.2.2___@_d7c1e993a9447722d68d14b51eddb8d4/node_modules/nuxt/dist/app/plugins/revive-payload.server.js")> &
20
+ InjectionType<typeof import("../../../../../../node_modules/.pnpm/nuxt@4.5.1_@babel+plugin-syntax-jsx@7.28.6_@babel+core@7.29.0_supports-color@10.2.2___@_d7c1e993a9447722d68d14b51eddb8d4/node_modules/nuxt/dist/app/plugins/chunk-reload-crawler.client.js")> &
21
+ InjectionType<typeof import("../../../../../../node_modules/.pnpm/nuxt@4.5.1_@babel+plugin-syntax-jsx@7.28.6_@babel+core@7.29.0_supports-color@10.2.2___@_d7c1e993a9447722d68d14b51eddb8d4/node_modules/nuxt/dist/app/plugins/chunk-reload.client.js")> &
22
+ InjectionType<typeof import("../../../../../../node_modules/.pnpm/nuxt-seo-utils@8.3.2_8aa416604512f5db5026b20b83114716/node_modules/nuxt-seo-utils/dist/runtime/app/plugins/siteConfig.js")> &
23
+ InjectionType<typeof import("../../../../../../node_modules/.pnpm/nuxt-seo-utils@8.3.2_8aa416604512f5db5026b20b83114716/node_modules/nuxt-seo-utils/dist/runtime/app/plugins/inferSeoMetaPlugin.js")> &
24
+ InjectionType<typeof import("../../../../../../node_modules/.pnpm/nuxt-seo-utils@8.3.2_8aa416604512f5db5026b20b83114716/node_modules/nuxt-seo-utils/dist/runtime/app/plugins/titlesWaitI18n.js")> &
25
+ InjectionType<typeof import("../../../../../../node_modules/.pnpm/nuxt-seo-utils@8.3.2_8aa416604512f5db5026b20b83114716/node_modules/nuxt-seo-utils/dist/runtime/app/plugins/defaultsWaitI18n.js")> &
26
+ InjectionType<typeof import("../../../../../../node_modules/.pnpm/nuxt-schema-org@6.2.7_39cdad3a51b8a9ff9ec34ed48066340c/node_modules/nuxt-schema-org/dist/runtime/app/plugins/defaults.js")> &
27
+ InjectionType<typeof import("../../../../../../node_modules/.pnpm/nuxt-schema-org@6.2.7_39cdad3a51b8a9ff9ec34ed48066340c/node_modules/nuxt-schema-org/dist/runtime/app/plugins/init.js")> &
28
+ InjectionType<typeof import("../../../../../../node_modules/.pnpm/@nuxtjs+robots@6.1.3_44b3c45ac015ae8f841a172548867a1f/node_modules/@nuxtjs/robots/dist/runtime/app/plugins/robot-meta.server.js")> &
29
+ InjectionType<typeof import("../../../../../../node_modules/.pnpm/nuxt-site-config@4.1.2_44b3c45ac015ae8f841a172548867a1f/node_modules/nuxt-site-config/dist/runtime/app/plugins/i18n.js")> &
30
+ InjectionType<typeof import("../../../../../../node_modules/.pnpm/nuxt@4.5.1_@babel+plugin-syntax-jsx@7.28.6_@babel+core@7.29.0_supports-color@10.2.2___@_d7c1e993a9447722d68d14b51eddb8d4/node_modules/nuxt/dist/pages/runtime/plugins/prefetch.client.js")> &
31
+ InjectionType<typeof import("../../../../../../node_modules/.pnpm/nuxt-multi-cache@4.0.3/node_modules/nuxt-multi-cache/dist/runtime/plugins/applyCDNHeaders.js")> &
32
+ InjectionType<typeof import("../../../../../../node_modules/.pnpm/@nuxtjs+i18n@10.5.0_@vue+compiler-dom@3.5.40_db0@0.3.4_esbuild@0.28.1_eslint@10.8.0_jit_55a063e349fcb2849e964b682c9622d7/node_modules/@nuxtjs/i18n/dist/runtime/plugins/switch-locale-path-ssr.js")> &
33
+ InjectionType<typeof import("../../../../../../node_modules/.pnpm/@nuxtjs+i18n@10.5.0_@vue+compiler-dom@3.5.40_db0@0.3.4_esbuild@0.28.1_eslint@10.8.0_jit_55a063e349fcb2849e964b682c9622d7/node_modules/@nuxtjs/i18n/dist/runtime/plugins/route-locale-detect.js")> &
34
+ InjectionType<typeof import("../../../../../../node_modules/.pnpm/@nuxtjs+i18n@10.5.0_@vue+compiler-dom@3.5.40_db0@0.3.4_esbuild@0.28.1_eslint@10.8.0_jit_55a063e349fcb2849e964b682c9622d7/node_modules/@nuxtjs/i18n/dist/runtime/plugins/preload.js")> &
35
+ InjectionType<typeof import("../../../../../../node_modules/.pnpm/@nuxtjs+i18n@10.5.0_@vue+compiler-dom@3.5.40_db0@0.3.4_esbuild@0.28.1_eslint@10.8.0_jit_55a063e349fcb2849e964b682c9622d7/node_modules/@nuxtjs/i18n/dist/runtime/plugins/dev.js")> &
36
+ InjectionType<typeof import("../../../../../../node_modules/.pnpm/@nuxtjs+i18n@10.5.0_@vue+compiler-dom@3.5.40_db0@0.3.4_esbuild@0.28.1_eslint@10.8.0_jit_55a063e349fcb2849e964b682c9622d7/node_modules/@nuxtjs/i18n/dist/runtime/plugins/i18n.js")> &
37
+ InjectionType<typeof import("../../../../../layer-base/app/plugins/custom-easings.client")> &
38
+ InjectionType<typeof import("../../../../../layer-base/app/plugins/interpolation")> &
39
+ InjectionType<typeof import("../../app/plugins/gsap-reduced-motion.client")> &
40
+ InjectionType<typeof import("../../../../../../node_modules/.pnpm/nuxt-seo-utils@8.3.2_8aa416604512f5db5026b20b83114716/node_modules/nuxt-seo-utils/dist/runtime/app/plugins/minifyScripts.server.js")> &
41
+ InjectionType<typeof import("../../../../../../node_modules/.pnpm/nuxt-seo-utils@8.3.2_8aa416604512f5db5026b20b83114716/node_modules/nuxt-seo-utils/dist/runtime/app/plugins/1.absoluteImageUrls.server.js")> &
42
+ InjectionType<typeof import("../../../../../../node_modules/.pnpm/nuxt-seo-utils@8.3.2_8aa416604512f5db5026b20b83114716/node_modules/nuxt-seo-utils/dist/runtime/app/plugins/0.routeRules.js")> &
43
+ InjectionType<typeof import("../../../../../../node_modules/.pnpm/gsap-nuxt-module@1.2.4_magicast@0.5.3/node_modules/gsap-nuxt-module/dist/runtime/plugin.js")> &
44
+ InjectionType<typeof import("../../../../../../node_modules/.pnpm/@nuxtjs+i18n@10.5.0_@vue+compiler-dom@3.5.40_db0@0.3.4_esbuild@0.28.1_eslint@10.8.0_jit_55a063e349fcb2849e964b682c9622d7/node_modules/@nuxtjs/i18n/dist/runtime/plugins/ssg-detect.js")>
45
+
46
+ declare module '#app' {
47
+ interface NuxtApp extends NuxtAppInjections { }
48
+
49
+ interface NuxtAppLiterals {
50
+ pluginName: 'nuxt-graphql-middleware-provide-state' | 'nuxt:revive-payload:client' | 'nuxt-site-config:init' | 'nuxt:head' | 'nuxt:head' | 'nuxt:router' | 'site-config' | 'nuxt:payload' | 'nuxt:revive-payload:server' | 'nuxt:chunk-reload-crawler' | 'nuxt:chunk-reload' | 'nuxt-seo:fallback-titles' | 'nuxt-seo:defaults' | 'nuxt-schema-org:defaults' | 'nuxt-schema-org:init' | 'nuxt-site-config:i18n' | 'nuxt:global-components' | 'nuxt:prefetch' | 'nuxt-multi-cache:cdn-headers' | 'i18n:plugin:switch-locale-path-ssr' | 'i18n:plugin:route-locale-detect' | 'i18n:plugin:preload' | 'i18n:dev' | 'i18n:plugin' | 'custom-easing' | 'gsap-nuxt-module' | 'i18n:plugin:ssg-detect'
51
+ }
52
+ }
53
+
54
+ declare module 'vue' {
55
+ interface ComponentCustomProperties extends NuxtAppInjections { }
56
+ }
57
+
58
+ export { }
@@ -0,0 +1,244 @@
1
+ import { RuntimeConfig as UserRuntimeConfig, PublicRuntimeConfig as UserPublicRuntimeConfig } from 'nuxt/schema'
2
+ interface SharedRuntimeConfig {
3
+ app: {
4
+ buildId: string,
5
+
6
+ baseURL: string,
7
+
8
+ buildAssetsDir: string,
9
+
10
+ cdnURL: string,
11
+ },
12
+
13
+ multiCacheEnabled: boolean,
14
+
15
+ "nuxt-scripts": {
16
+ version: string,
17
+
18
+ googleStaticMapsProxy: any,
19
+ },
20
+
21
+ graphqlMiddleware: {
22
+ graphqlEndpoint: string,
23
+ },
24
+
25
+ multiCache: {
26
+ cdn: boolean,
27
+
28
+ component: boolean,
29
+
30
+ data: boolean,
31
+
32
+ route: boolean,
33
+
34
+ api: {
35
+ enabled: boolean,
36
+
37
+ authorizationToken: string,
38
+
39
+ authorizationDisabled: boolean,
40
+ },
41
+ },
42
+
43
+ sitemap: {
44
+ cacheMaxAgeSeconds: number,
45
+
46
+ debug: boolean,
47
+ },
48
+
49
+ "nuxt-schema-org": {
50
+ reactive: boolean,
51
+
52
+ minify: boolean,
53
+
54
+ scriptAttributes: {
55
+ "data-nuxt-schema-org": boolean,
56
+ },
57
+
58
+ identity: any,
59
+
60
+ version: string,
61
+ },
62
+
63
+ "nuxt-site-config": {
64
+ stack: Array<{
65
+
66
+ }>,
67
+
68
+ version: string,
69
+
70
+ debug: boolean,
71
+
72
+ multiTenancy: Array<any>,
73
+ },
74
+
75
+ "nuxt-robots": {
76
+ version: string,
77
+
78
+ isNuxtContentV2: boolean,
79
+
80
+ debug: boolean,
81
+
82
+ credits: boolean,
83
+
84
+ groups: Array<{
85
+
86
+ }>,
87
+
88
+ sitemap: Array<string>,
89
+
90
+ header: boolean,
91
+
92
+ robotsEnabledValue: string,
93
+
94
+ robotsDisabledValue: string,
95
+
96
+ cacheControl: string,
97
+
98
+ botDetection: boolean,
99
+
100
+ pageMetaRobots: any,
101
+ },
102
+ }
103
+ interface SharedPublicRuntimeConfig {
104
+ backendUrl: string,
105
+
106
+ baseUrl: string,
107
+
108
+ "nuxt-scripts": {
109
+ version: any,
110
+
111
+ prefix: string,
112
+
113
+ defaultScriptOptions: {
114
+ trigger: string,
115
+ },
116
+
117
+ googleStaticMapsProxy: any,
118
+
119
+ endpoints: any,
120
+ },
121
+
122
+ gsap: {
123
+ plugins: Array<string>,
124
+ },
125
+
126
+ ogImageFallback: string,
127
+
128
+ "nuxt-seo-utils-version": string,
129
+
130
+ "seo-utils": {
131
+ canonicalQueryWhitelist: Array<string>,
132
+
133
+ canonicalLowercase: boolean,
134
+
135
+ tagPriority: string,
136
+
137
+ separator: any,
138
+
139
+ titleSeparator: any,
140
+ },
141
+
142
+ i18n: {
143
+ baseUrl: string,
144
+
145
+ defaultLocale: string,
146
+
147
+ rootRedirect: any,
148
+
149
+ redirectStatusCode: number,
150
+
151
+ skipSettingLocaleOnNavigate: boolean,
152
+
153
+ locales: Array<any>,
154
+
155
+ detectBrowserLanguage: {
156
+ alwaysRedirect: boolean,
157
+
158
+ cookieCrossOrigin: boolean,
159
+
160
+ cookieDomain: any,
161
+
162
+ cookieKey: string,
163
+
164
+ cookieSecure: boolean,
165
+
166
+ fallbackLocale: string,
167
+
168
+ redirectOn: string,
169
+
170
+ useCookie: boolean,
171
+ },
172
+
173
+ experimental: {
174
+ localeDetector: string,
175
+
176
+ typedPages: boolean,
177
+
178
+ typedOptionsAndMessages: boolean,
179
+
180
+ alternateLinkCanonicalQueries: boolean,
181
+
182
+ devCache: boolean,
183
+
184
+ cacheLifetime: any,
185
+
186
+ stripMessagesPayload: boolean,
187
+
188
+ preload: boolean,
189
+
190
+ strictSeo: boolean,
191
+
192
+ nitroContextDetection: boolean,
193
+
194
+ httpCacheDuration: number,
195
+
196
+ compactRoutes: boolean,
197
+
198
+ prerenderMessages: boolean,
199
+ },
200
+
201
+ domainLocales: any,
202
+ },
203
+
204
+ "nuxt-robots": {
205
+ version: string,
206
+
207
+ isNuxtContentV2: boolean,
208
+
209
+ debug: boolean,
210
+
211
+ credits: boolean,
212
+
213
+ groups: Array<{
214
+
215
+ }>,
216
+
217
+ sitemap: Array<string>,
218
+
219
+ header: boolean,
220
+
221
+ robotsEnabledValue: string,
222
+
223
+ robotsDisabledValue: string,
224
+
225
+ cacheControl: string,
226
+
227
+ botDetection: boolean,
228
+
229
+ pageMetaRobots: any,
230
+ },
231
+ }
232
+ declare module '@nuxt/schema' {
233
+ interface RuntimeConfig extends UserRuntimeConfig {}
234
+ interface PublicRuntimeConfig extends UserPublicRuntimeConfig {}
235
+ }
236
+ declare module 'nuxt/schema' {
237
+ interface RuntimeConfig extends SharedRuntimeConfig {}
238
+ interface PublicRuntimeConfig extends SharedPublicRuntimeConfig {}
239
+ }
240
+ declare module 'vue' {
241
+ interface ComponentCustomProperties {
242
+ $config: UserRuntimeConfig
243
+ }
244
+ }
@@ -0,0 +1,32 @@
1
+
2
+ import type { CustomAppConfig } from 'nuxt/schema'
3
+
4
+ declare const inlineConfig = {
5
+ "nuxt": {},
6
+ "graphqlMiddleware": {
7
+ "clientCacheEnabled": true,
8
+ "clientCacheMaxSize": 100
9
+ }
10
+ }
11
+ type IsAny<T> = 0 extends 1 & T ? true : false
12
+
13
+ type MergedAppConfig<Resolved extends Record<string, unknown>, Custom extends Record<string, unknown>> = {
14
+ [K in keyof (Resolved & Custom)]: K extends keyof Custom
15
+ ? unknown extends Custom[K]
16
+ ? Resolved[K]
17
+ : IsAny<Custom[K]> extends true
18
+ ? Resolved[K]
19
+ : Custom[K] extends Record<string, any>
20
+ ? Resolved[K] extends Record<string, any>
21
+ ? MergedAppConfig<Resolved[K], Custom[K]>
22
+ : Exclude<Custom[K], undefined>
23
+ : Exclude<Custom[K], undefined>
24
+ : Resolved[K]
25
+ }
26
+
27
+ declare module 'nuxt/schema' {
28
+ interface AppConfig extends MergedAppConfig<typeof inlineConfig, CustomAppConfig> { }
29
+ }
30
+ declare module '@nuxt/schema' {
31
+ interface AppConfig extends MergedAppConfig<typeof inlineConfig, CustomAppConfig> { }
32
+ }
@@ -0,0 +1,10 @@
1
+ // Generated by auto imports
2
+ export {}
3
+ declare global {
4
+ const useRuntimeConfig: (event?: import('h3').H3Event) => import('nuxt/schema').RuntimeConfig
5
+ const useAppConfig: () => import('nuxt/schema').AppConfig
6
+ const defineAppConfig: <C extends import('nuxt/schema').AppConfigInput>(config: C) => C
7
+ const createError: typeof import('h3')['createError']
8
+ const setResponseStatus: typeof import('h3')['setResponseStatus']
9
+
10
+ }
File without changes
@@ -0,0 +1,75 @@
1
+ # Nuxt Minimal Starter
2
+
3
+ Look at the [Nuxt documentation](https://nuxt.com/docs/getting-started/introduction) to learn more.
4
+
5
+ ## Setup
6
+
7
+ Make sure to install dependencies:
8
+
9
+ ```bash
10
+ # npm
11
+ npm install
12
+
13
+ # pnpm
14
+ pnpm install
15
+
16
+ # yarn
17
+ yarn install
18
+
19
+ # bun
20
+ bun install
21
+ ```
22
+
23
+ ## Development Server
24
+
25
+ Start the development server on `http://localhost:3000`:
26
+
27
+ ```bash
28
+ # npm
29
+ npm run dev
30
+
31
+ # pnpm
32
+ pnpm dev
33
+
34
+ # yarn
35
+ yarn dev
36
+
37
+ # bun
38
+ bun run dev
39
+ ```
40
+
41
+ ## Production
42
+
43
+ Build the application for production:
44
+
45
+ ```bash
46
+ # npm
47
+ npm run build
48
+
49
+ # pnpm
50
+ pnpm build
51
+
52
+ # yarn
53
+ yarn build
54
+
55
+ # bun
56
+ bun run build
57
+ ```
58
+
59
+ Locally preview production build:
60
+
61
+ ```bash
62
+ # npm
63
+ npm run preview
64
+
65
+ # pnpm
66
+ pnpm preview
67
+
68
+ # yarn
69
+ yarn preview
70
+
71
+ # bun
72
+ bun run preview
73
+ ```
74
+
75
+ Check out the [deployment documentation](https://nuxt.com/docs/getting-started/deployment) for more information.
@@ -0,0 +1,24 @@
1
+ # Nuxt dev/build outputs
2
+ .output
3
+ .data
4
+ .nuxt
5
+ .nitro
6
+ .cache
7
+ dist
8
+
9
+ # Node dependencies
10
+ node_modules
11
+
12
+ # Logs
13
+ logs
14
+ *.log
15
+
16
+ # Misc
17
+ .DS_Store
18
+ .fleet
19
+ .idea
20
+
21
+ # Local env files
22
+ .env
23
+ .env.*
24
+ !.env.example
@@ -0,0 +1,5 @@
1
+ <template>
2
+ <NuxtLayout>
3
+ <NuxtPage />
4
+ </NuxtLayout>
5
+ </template>
@@ -0,0 +1,75 @@
1
+ <script setup lang="ts">
2
+ import type { ConcreteComponent, PropType } from 'vue'
3
+
4
+ export type DynamicZoneSection = (Record<string, unknown> & { __typename: string })
5
+
6
+ const props = defineProps({
7
+ direction: { type: String as PropType<'horizontal' | 'vertical'>, default: 'horizontal' },
8
+ sections: { type: Array as PropType<DynamicZoneSection[]>, default: () => [] },
9
+ timeline: { type: Object as PropType<gsap.core.Timeline> },
10
+ })
11
+
12
+ const componentConfig: Record<string, {
13
+ component: ConcreteComponent | string
14
+ indexable?: boolean
15
+ }> = {
16
+ ComponentMediaSingleImage: {
17
+ component: resolveComponent('SectionSingleImage'),
18
+ },
19
+ // ComponentEditorialExpandableList: {
20
+ // component: resolveComponent('SectionExpandableList'),
21
+ // indexable: true,
22
+ // },
23
+ // ComponentEditorialExpandedList: {
24
+ // component: resolveComponent('SectionExpandedList'),
25
+ // },
26
+ // ComponentEditorialListPeople: {
27
+ // component: resolveComponent('SectionListPeople'),
28
+ // },
29
+ // ComponentEditorialExpandedServices: {
30
+ // component: resolveComponent('SectionListServices'),
31
+ // },
32
+ // ComponentEditorialTextAndImage: {
33
+ // component: resolveComponent('SectionTextAndImage'),
34
+ // },
35
+ // ComponentEditorialTextBlock: {
36
+ // component: resolveComponent('SectionTextBlock'),
37
+ // indexable: true,
38
+ // },
39
+ }
40
+
41
+ const components = computed(() => {
42
+ let index = 0
43
+
44
+ return (props.sections || []).reduce((acc, section, i) => {
45
+ if ('__typename' in section) {
46
+ const { __typename, ...bindings } = section
47
+ const config = componentConfig[__typename]
48
+
49
+ if (config) {
50
+ acc.push({
51
+ bindings,
52
+ is: config.component,
53
+ key: `section-${i}-${__typename.toLowerCase()}`,
54
+ index: config.indexable ? index++ : undefined,
55
+ })
56
+ }
57
+ }
58
+ return acc
59
+ }, [] as { bindings: Record<string, unknown>, is: ConcreteComponent | string, key: string, index?: number }[])
60
+ })
61
+ </script>
62
+
63
+ <template>
64
+ <template v-if="components.length">
65
+ <component
66
+ :is="is"
67
+ v-for="({ bindings, is, key, index }) in components"
68
+ :key="key"
69
+ :data="bindings"
70
+ :direction
71
+ :timeline
72
+ :index
73
+ />
74
+ </template>
75
+ </template>
@@ -0,0 +1,39 @@
1
+ <script setup lang="ts">
2
+ import type { SectionSingleImageFragment } from '#graphql-operations'
3
+
4
+ interface SectionSingleImageProps {
5
+ data: SectionSingleImageFragment
6
+ }
7
+
8
+ const props = defineProps<SectionSingleImageProps>()
9
+ </script>
10
+
11
+ <template>
12
+ <section
13
+ class="singleImage"
14
+ >
15
+ <StrapiMedia
16
+ v-if="data.image"
17
+ :media="data.image"
18
+ class="w-full"
19
+ :video-props="{
20
+ autoplay: true,
21
+ muted: true,
22
+ playsinline: true,
23
+ loop: true,
24
+ ratio: 1410 / 792
25
+ }"
26
+ >
27
+ <template #media-chrome="{ isPlaying, progress }">
28
+ <media-play-button slot="centered-chrome">
29
+ <VideoProgress
30
+ :is-playing="isPlaying"
31
+ :progress="progress"
32
+ class="size-10"
33
+ slot="tooltip"
34
+ />
35
+ </media-play-button>
36
+ </template>
37
+ </StrapiMedia>
38
+ </section>
39
+ </template>
@@ -0,0 +1,34 @@
1
+ <script setup lang="ts">
2
+ const props = defineProps<{
3
+ progress: number
4
+ }>()
5
+
6
+ const radius = 95
7
+ const circumference = 2 * Math.PI * radius
8
+
9
+ const dashoffset = computed(() =>
10
+ circumference - (circumference * props.progress),
11
+ )
12
+ </script>
13
+
14
+ <template>
15
+ <span class="absolute rounded-full aspect-square block cursor-pointer transition duration-300 items-center justify-center overflow-hidden bg-transparent">
16
+ <svg class="inset-0 absolute z-1" viewBox="0 0 200 200" xmlns="http://www.w3.org/2000/svg">
17
+ <circle
18
+ cx="100"
19
+ cy="100"
20
+ :r="radius"
21
+ class="stroke-athens-gray/40 fill-none stroke-8"
22
+ />
23
+ <circle
24
+ cx="100"
25
+ cy="100"
26
+ :r="radius"
27
+ :stroke-dasharray="circumference"
28
+ :stroke-dashoffset="dashoffset"
29
+ transform="rotate(-90 100 100)"
30
+ class="z-1 fill-none stroke-8 stroke-white"
31
+ />
32
+ </svg>
33
+ </span>
34
+ </template>
@@ -0,0 +1,28 @@
1
+ <script setup lang="ts">
2
+ import type { DynamicZoneSection } from '~/components/DynamicZone.vue'
3
+
4
+ definePageMeta({
5
+ templateName: 'page',
6
+ })
7
+
8
+ const slug = useRoute().params.slug as string
9
+
10
+ const { data } = await useAsyncGraphqlQuery('PageCustomPage', {
11
+ status: 'PUBLISHED',
12
+ slug,
13
+ })
14
+
15
+ const page = data.value?.data.pages?.[0]
16
+ const sections = (page?.sections as unknown || []) as DynamicZoneSection[]
17
+ </script>
18
+
19
+ <template>
20
+ <div v-if="page">
21
+ <div class="space-y-20">
22
+ <DynamicZone
23
+ :sections
24
+ direction="vertical"
25
+ />
26
+ </div>
27
+ </div>
28
+ </template>
@@ -0,0 +1,12 @@
1
+ <script setup lang="ts">
2
+ import type { PageHomeFragment } from '#graphql-operations'
3
+
4
+ const data = await useStrapiPage<{ pageHome: PageHomeFragment }>('PageHome' as never)
5
+ useStrapiSEO(data.pageHome.seo)
6
+ </script>
7
+
8
+ <template>
9
+ <div>
10
+ <StrapiBlocks :content="data.pageHome.introText" />
11
+ </div>
12
+ </template>