nuxt-og-image 3.0.0-rc.30 → 3.0.0-rc.32

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 (203) hide show
  1. package/dist/client/200.html +52 -50
  2. package/dist/client/404.html +52 -50
  3. package/dist/client/_nuxt/IconCSS.avVk0m4D.css +1 -0
  4. package/dist/client/_nuxt/{IconCSS.CZ8ZjA39.js → IconCSS.jqwm8rK5.js} +1 -1
  5. package/dist/client/_nuxt/{angular-html.ngCY688K.js → angular-html.ulaXK71i.js} +1 -1
  6. package/dist/client/_nuxt/{angular-ts.JfRveWw0.js → angular-ts.CpB8xVpe.js} +2 -2
  7. package/dist/client/_nuxt/{apl.ojEktQcO.js → apl.XB4V8Q_3.js} +1 -1
  8. package/dist/client/_nuxt/{astro.bVipJGkW.js → astro.5Up4Y-tq.js} +1 -1
  9. package/dist/client/_nuxt/{blade.HvKjdph-.js → blade.dLd1FX1V.js} +1 -1
  10. package/dist/client/_nuxt/builds/latest.json +1 -1
  11. package/dist/client/_nuxt/builds/meta/79d607f6-b171-4ce5-99be-52f02213b160.json +1 -0
  12. package/dist/client/_nuxt/{cobol.DIpfQcy2.js → cobol.yHzQax91.js} +1 -1
  13. package/dist/client/_nuxt/{coffee.09Ode5TL.js → coffee.UjKhX0iS.js} +1 -1
  14. package/dist/client/_nuxt/{crystal.KqWgScGa.js → crystal.ePodXjZr.js} +1 -1
  15. package/dist/client/_nuxt/{csharp.SlsguwGx.js → csharp.xHVQI8QI.js} +5 -4
  16. package/dist/client/_nuxt/{elixir.Q1fiwhg2.js → elixir.dYoE9A9d.js} +1 -1
  17. package/dist/client/_nuxt/{entry.OczI2MjB.css → entry.DjkITzvC.css} +1 -1
  18. package/dist/client/_nuxt/{entry.v1zp98GR.js → entry.nulbTWcg.js} +59 -59
  19. package/dist/client/_nuxt/{erb.K_ppY6Ln.js → erb.vCu37omy.js} +1 -1
  20. package/dist/client/_nuxt/{error-404.VV5ycc25.js → error-404.JU1SsGot.js} +1 -1
  21. package/dist/client/_nuxt/{error-500.VNY3c4OJ.js → error-500.QWp95-mE.js} +1 -1
  22. package/dist/client/_nuxt/fortran-fixed-form.5oVt_150.js +1 -0
  23. package/dist/client/_nuxt/fortran-free-form.l6j6vfmD.js +1 -0
  24. package/dist/client/_nuxt/fsharp.5TASvPJ1.js +1 -0
  25. package/dist/client/_nuxt/glimmer-js.8faD3vw8.js +13 -0
  26. package/dist/client/_nuxt/glimmer-ts.I8Eofu1P.js +13 -0
  27. package/dist/client/_nuxt/go.U2NlzxIl.js +1 -0
  28. package/dist/client/_nuxt/{graphql.Mw2TwDQV.js → graphql.aYTh5yPU.js} +1 -1
  29. package/dist/client/_nuxt/{hack.8bxbrxw3.js → hack.9pFjhnG2.js} +1 -1
  30. package/dist/client/_nuxt/{haml.9njXWWYk.js → haml.DYCf5dhF.js} +1 -1
  31. package/dist/client/_nuxt/{handlebars.e6aZXt-Z.js → handlebars.Z9TIkDUw.js} +1 -1
  32. package/dist/client/_nuxt/{html.q2IluNCo.js → html.ZVb9jHrO.js} +1 -1
  33. package/dist/client/_nuxt/{http.suDZEQUg.js → http.McgS7Vpm.js} +1 -1
  34. package/dist/client/_nuxt/{imba.Shm_xfQD.js → imba.guICF3zN.js} +1 -1
  35. package/dist/client/_nuxt/{javascript.4rbEI_qn.js → javascript.JMZ6uy5M.js} +1 -1
  36. package/dist/client/_nuxt/{jinja.E4nwqofd.js → jinja.H2a5aKFq.js} +1 -1
  37. package/dist/client/_nuxt/{jison.gkHJeffy.js → jison.hEN1Pilr.js} +1 -1
  38. package/dist/client/_nuxt/{jsx.O5ZRGASz.js → jsx.3LZ_BoLB.js} +1 -1
  39. package/dist/client/_nuxt/{julia.ku4F-e-8.js → julia.zN5MNt1V.js} +2 -2
  40. package/dist/client/_nuxt/latex.Pwsy_OsJ.js +3 -0
  41. package/dist/client/_nuxt/{liquid.O0W9gNJ1.js → liquid.UuwAmqmc.js} +1 -1
  42. package/dist/client/_nuxt/{marko.sELZHXF6.js → marko.gbQhFTQa.js} +1 -1
  43. package/dist/client/_nuxt/{nim.OZ1TiK9r.js → nim.16czfBCm.js} +1 -1
  44. package/dist/client/_nuxt/{perl.CaKiGeyl.js → perl._x09KDDb.js} +1 -1
  45. package/dist/client/_nuxt/{php.Q2jqa0n_.js → php.2PDLwZAX.js} +1 -1
  46. package/dist/client/_nuxt/{pug.dmyiUMO7.js → pug.ieZS468c.js} +1 -1
  47. package/dist/client/_nuxt/{razor.X4IfBpol.js → razor.wPI2afgP.js} +1 -1
  48. package/dist/client/_nuxt/{rst.GKtlS3h3.js → rst.Nzb5IGfi.js} +1 -1
  49. package/dist/client/_nuxt/{ruby.P9eGVNW4.js → ruby.oOCDDplm.js} +1 -1
  50. package/dist/client/_nuxt/rust.yNm59Dur.js +1 -0
  51. package/dist/client/_nuxt/{svelte.6zdtIlwM.js → svelte.j-bqdsch.js} +1 -1
  52. package/dist/client/_nuxt/{tsx.vbVEYvAd.js → tsx.7LxggtAE.js} +1 -1
  53. package/dist/client/_nuxt/{twig.h5iAhXmS.js → twig.p6WenPmw.js} +1 -1
  54. package/dist/client/_nuxt/{typescript.IWNmnGsa.js → typescript.HpdcmTOD.js} +1 -1
  55. package/dist/client/_nuxt/{vue-html.B2XvVFLk.js → vue-html.TGyjH-sv.js} +1 -1
  56. package/dist/client/_nuxt/{vue.CmUal76M.js → vue.AKvPdve9.js} +1 -1
  57. package/dist/client/index.html +52 -50
  58. package/dist/module.d.mts +6 -0
  59. package/dist/module.d.ts +6 -0
  60. package/dist/module.json +1 -1
  61. package/dist/module.mjs +96 -44
  62. package/dist/runtime/{core → nitro/og-image}/bindings/css-inline/wasm-fs.mjs +1 -1
  63. package/dist/runtime/{core → nitro/og-image}/bindings/css-inline/wasm.mjs +1 -1
  64. package/dist/runtime/{core → nitro/og-image}/bindings/resvg/wasm-fs.mjs +1 -1
  65. package/dist/runtime/{core → nitro/og-image}/bindings/resvg/wasm.mjs +1 -1
  66. package/dist/runtime/{core → nitro/og-image}/bindings/satori/wasm-fs.mjs +1 -1
  67. package/dist/runtime/{core → nitro/og-image}/bindings/satori/wasm.mjs +1 -1
  68. package/dist/runtime/nitro/og-image/cache.d.ts +7 -0
  69. package/dist/runtime/{core/cache/htmlPayload.mjs → nitro/og-image/cache.mjs} +3 -0
  70. package/dist/runtime/{core/renderers → nitro/og-image}/chromium/screenshot.mjs +1 -1
  71. package/dist/runtime/nitro/og-image/context.d.ts +5 -0
  72. package/dist/runtime/nitro/og-image/context.mjs +177 -0
  73. package/dist/runtime/nitro/og-image/instances.d.ts +2 -0
  74. package/dist/runtime/nitro/og-image/instances.mjs +10 -0
  75. package/dist/runtime/{core/font/fetch.d.ts → nitro/og-image/satori/font.d.ts} +1 -1
  76. package/dist/runtime/nitro/og-image/satori/font.mjs +32 -0
  77. package/dist/runtime/{core/renderers → nitro/og-image}/satori/instances.d.ts +0 -2
  78. package/dist/runtime/{core/renderers → nitro/og-image}/satori/instances.mjs +0 -10
  79. package/dist/runtime/{core/renderers → nitro/og-image}/satori/plugins/encoding.mjs +1 -1
  80. package/dist/runtime/{core/renderers → nitro/og-image}/satori/plugins/imageSrc.mjs +2 -4
  81. package/dist/runtime/{core/renderers/satori/index.mjs → nitro/og-image/satori/renderer.mjs} +24 -12
  82. package/dist/runtime/{core/html/applyEmojis.d.ts → nitro/og-image/satori/transforms/emojis.d.ts} +3 -1
  83. package/dist/runtime/{core/html/applyEmojis.mjs → nitro/og-image/satori/transforms/emojis.mjs} +6 -2
  84. package/dist/runtime/{core/html/applyInlineCss.d.ts → nitro/og-image/satori/transforms/inlineCss.d.ts} +1 -1
  85. package/dist/runtime/{core/html/applyInlineCss.mjs → nitro/og-image/satori/transforms/inlineCss.mjs} +1 -1
  86. package/dist/runtime/{core/renderers → nitro/og-image}/satori/vnodes.mjs +5 -5
  87. package/dist/runtime/nitro/og-image/templates/html.d.ts +2 -0
  88. package/dist/runtime/{core/html/devIframeTemplate.mjs → nitro/og-image/templates/html.mjs} +15 -8
  89. package/dist/runtime/nitro/plugins/nuxt-content.mjs +1 -1
  90. package/dist/runtime/nitro/plugins/prerender.mjs +4 -5
  91. package/dist/runtime/nitro/routes/{__og-image__/debug.json.d.ts → debug.json.d.ts} +1 -1
  92. package/dist/runtime/nitro/routes/{__og-image__/debug.json.mjs → debug.json.mjs} +1 -1
  93. package/dist/runtime/nitro/routes/{__og-image__/font-[name]-[weight].[extension].mjs → font.mjs} +2 -9
  94. package/dist/runtime/nitro/routes/{__og-image__/image.mjs → image.mjs} +6 -10
  95. package/dist/runtime/{cache.d.ts → nitro/util/cache.d.ts} +1 -1
  96. package/dist/runtime/nitro/util/encoding.d.ts +3 -0
  97. package/dist/runtime/nitro/util/encoding.mjs +15 -0
  98. package/dist/runtime/nitro/util/kit.d.ts +6 -0
  99. package/dist/runtime/nitro/{kit.mjs → util/kit.mjs} +9 -0
  100. package/dist/runtime/{components → nuxt/components}/OgImage/OgImage.d.ts +1 -1
  101. package/dist/runtime/{components → nuxt/components}/OgImage/OgImageScreenshot.d.ts +1 -1
  102. package/dist/runtime/{components → nuxt/components}/Templates/Community/NuxtSeo.vue +1 -1
  103. package/dist/runtime/{composables → nuxt/composables}/defineOgImage.d.ts +1 -1
  104. package/dist/runtime/{composables → nuxt/composables}/defineOgImage.mjs +3 -3
  105. package/dist/runtime/{composables → nuxt/composables}/defineOgImageComponent.d.ts +1 -1
  106. package/dist/runtime/{composables → nuxt/composables}/defineOgImageScreenshot.d.ts +1 -1
  107. package/dist/runtime/nuxt/composables/mock.d.ts +0 -0
  108. package/dist/runtime/nuxt/composables/mock.mjs +6 -0
  109. package/dist/runtime/nuxt/plugins/og-image-canonical-urls.server.mjs +1 -1
  110. package/dist/runtime/nuxt/plugins/route-rule-og-image.server.mjs +1 -1
  111. package/dist/runtime/nuxt/utils.d.ts +1 -1
  112. package/dist/runtime/nuxt/utils.mjs +1 -1
  113. package/dist/runtime/{utils.pure.d.ts → pure.d.ts} +1 -0
  114. package/dist/runtime/{utils.pure.mjs → pure.mjs} +10 -0
  115. package/dist/runtime/{utils.d.ts → shared.d.ts} +1 -1
  116. package/dist/runtime/{utils.mjs → shared.mjs} +1 -1
  117. package/dist/runtime/types.d.ts +4 -0
  118. package/package.json +13 -11
  119. package/dist/client/_nuxt/IconCSS.UISSK5sv.css +0 -1
  120. package/dist/client/_nuxt/builds/meta/bb98bdc4-cb43-44eb-b961-cca8b9050d48.json +0 -1
  121. package/dist/client/_nuxt/fsharp.37PDbGQ_.js +0 -1
  122. package/dist/client/_nuxt/glimmer-js.OxCy_kio.js +0 -1
  123. package/dist/client/_nuxt/glimmer-ts.ZLbawe8H.js +0 -1
  124. package/dist/client/_nuxt/go.2bJKq9hO.js +0 -1
  125. package/dist/client/_nuxt/latex.6xV8tHRw.js +0 -3
  126. package/dist/client/_nuxt/rust.FLHuhIzG.js +0 -1
  127. package/dist/runtime/core/cache/emojis.d.ts +0 -1
  128. package/dist/runtime/core/cache/emojis.mjs +0 -5
  129. package/dist/runtime/core/cache/fonts.d.ts +0 -3
  130. package/dist/runtime/core/cache/fonts.mjs +0 -6
  131. package/dist/runtime/core/cache/htmlPayload.d.ts +0 -5
  132. package/dist/runtime/core/cache/prerender.d.ts +0 -2
  133. package/dist/runtime/core/cache/prerender.mjs +0 -5
  134. package/dist/runtime/core/env/assets.d.ts +0 -1
  135. package/dist/runtime/core/env/assets.mjs +0 -11
  136. package/dist/runtime/core/font/fetch.mjs +0 -39
  137. package/dist/runtime/core/html/devIframeTemplate.d.ts +0 -2
  138. package/dist/runtime/core/html/fetchIsland.d.ts +0 -3
  139. package/dist/runtime/core/html/fetchIsland.mjs +0 -17
  140. package/dist/runtime/core/options/extract.d.ts +0 -4
  141. package/dist/runtime/core/options/extract.mjs +0 -58
  142. package/dist/runtime/core/options/fetch.d.ts +0 -3
  143. package/dist/runtime/core/options/fetch.mjs +0 -32
  144. package/dist/runtime/core/utils/resolveRendererContext.d.ts +0 -3
  145. package/dist/runtime/core/utils/resolveRendererContext.mjs +0 -92
  146. package/dist/runtime/nitro/kit.d.ts +0 -3
  147. package/dist/runtime/nitro/utils.d.ts +0 -2
  148. package/dist/runtime/nitro/utils.mjs +0 -16
  149. package/dist/runtime/server/assets/inter-latin-ext-400-normal.woff +0 -0
  150. package/dist/runtime/server/assets/inter-latin-ext-700-normal.woff +0 -0
  151. /package/dist/runtime/{core → nitro/og-image}/bindings/chromium/chrome-launcher.d.ts +0 -0
  152. /package/dist/runtime/{core → nitro/og-image}/bindings/chromium/chrome-launcher.mjs +0 -0
  153. /package/dist/runtime/{core → nitro/og-image}/bindings/chromium/on-demand.d.ts +0 -0
  154. /package/dist/runtime/{core → nitro/og-image}/bindings/chromium/on-demand.mjs +0 -0
  155. /package/dist/runtime/{core → nitro/og-image}/bindings/chromium/playwright.d.ts +0 -0
  156. /package/dist/runtime/{core → nitro/og-image}/bindings/chromium/playwright.mjs +0 -0
  157. /package/dist/runtime/{core → nitro/og-image}/bindings/css-inline/node.d.ts +0 -0
  158. /package/dist/runtime/{core → nitro/og-image}/bindings/css-inline/node.mjs +0 -0
  159. /package/dist/runtime/{core → nitro/og-image}/bindings/css-inline/wasm-fs.d.ts +0 -0
  160. /package/dist/runtime/{core → nitro/og-image}/bindings/css-inline/wasm.d.ts +0 -0
  161. /package/dist/runtime/{core → nitro/og-image}/bindings/resvg/node.d.ts +0 -0
  162. /package/dist/runtime/{core → nitro/og-image}/bindings/resvg/node.mjs +0 -0
  163. /package/dist/runtime/{core → nitro/og-image}/bindings/resvg/wasm-fs.d.ts +0 -0
  164. /package/dist/runtime/{core → nitro/og-image}/bindings/resvg/wasm.d.ts +0 -0
  165. /package/dist/runtime/{core → nitro/og-image}/bindings/satori/node.d.ts +0 -0
  166. /package/dist/runtime/{core → nitro/og-image}/bindings/satori/node.mjs +0 -0
  167. /package/dist/runtime/{core → nitro/og-image}/bindings/satori/wasm-fs.d.ts +0 -0
  168. /package/dist/runtime/{core → nitro/og-image}/bindings/satori/wasm.d.ts +0 -0
  169. /package/dist/runtime/{core → nitro/og-image}/bindings/sharp/node.d.ts +0 -0
  170. /package/dist/runtime/{core → nitro/og-image}/bindings/sharp/node.mjs +0 -0
  171. /package/dist/runtime/{core/renderers/chromium/index.d.ts → nitro/og-image/chromium/renderer.d.ts} +0 -0
  172. /package/dist/runtime/{core/renderers/chromium/index.mjs → nitro/og-image/chromium/renderer.mjs} +0 -0
  173. /package/dist/runtime/{core/renderers → nitro/og-image}/chromium/screenshot.d.ts +0 -0
  174. /package/dist/runtime/{core/renderers → nitro/og-image}/satori/plugins/emojis.d.ts +0 -0
  175. /package/dist/runtime/{core/renderers → nitro/og-image}/satori/plugins/emojis.mjs +0 -0
  176. /package/dist/runtime/{core/renderers → nitro/og-image}/satori/plugins/encoding.d.ts +0 -0
  177. /package/dist/runtime/{core/renderers → nitro/og-image}/satori/plugins/flex.d.ts +0 -0
  178. /package/dist/runtime/{core/renderers → nitro/og-image}/satori/plugins/flex.mjs +0 -0
  179. /package/dist/runtime/{core/renderers → nitro/og-image}/satori/plugins/imageSrc.d.ts +0 -0
  180. /package/dist/runtime/{core/renderers → nitro/og-image}/satori/plugins/twClasses.d.ts +0 -0
  181. /package/dist/runtime/{core/renderers → nitro/og-image}/satori/plugins/twClasses.mjs +0 -0
  182. /package/dist/runtime/{core/renderers → nitro/og-image}/satori/plugins/unocss.d.ts +0 -0
  183. /package/dist/runtime/{core/renderers → nitro/og-image}/satori/plugins/unocss.mjs +0 -0
  184. /package/dist/runtime/{core/renderers/satori/index.d.ts → nitro/og-image/satori/renderer.d.ts} +0 -0
  185. /package/dist/runtime/{core/renderers → nitro/og-image}/satori/utils.d.ts +0 -0
  186. /package/dist/runtime/{core/renderers → nitro/og-image}/satori/utils.mjs +0 -0
  187. /package/dist/runtime/{core/renderers → nitro/og-image}/satori/vnodes.d.ts +0 -0
  188. /package/dist/runtime/nitro/routes/{__og-image__/font-[name]-[weight].[extension].d.ts → font.d.ts} +0 -0
  189. /package/dist/runtime/nitro/routes/{__og-image__/image.d.ts → image.d.ts} +0 -0
  190. /package/dist/runtime/{cache.mjs → nitro/util/cache.mjs} +0 -0
  191. /package/dist/runtime/{core/utils → nitro/util}/wasm.d.ts +0 -0
  192. /package/dist/runtime/{core/utils → nitro/util}/wasm.mjs +0 -0
  193. /package/dist/runtime/{components → nuxt/components}/OgImage/OgImage.mjs +0 -0
  194. /package/dist/runtime/{components → nuxt/components}/OgImage/OgImageScreenshot.mjs +0 -0
  195. /package/dist/runtime/{components → nuxt/components}/Templates/Community/BrandedLogo.vue +0 -0
  196. /package/dist/runtime/{components → nuxt/components}/Templates/Community/Nuxt.vue +0 -0
  197. /package/dist/runtime/{components → nuxt/components}/Templates/Community/Pergel.vue +0 -0
  198. /package/dist/runtime/{components → nuxt/components}/Templates/Community/SimpleBlog.vue +0 -0
  199. /package/dist/runtime/{components → nuxt/components}/Templates/Community/UnJs.vue +0 -0
  200. /package/dist/runtime/{components → nuxt/components}/Templates/Community/Wave.vue +0 -0
  201. /package/dist/runtime/{components → nuxt/components}/Templates/Community/WithEmoji.vue +0 -0
  202. /package/dist/runtime/{composables → nuxt/composables}/defineOgImageComponent.mjs +0 -0
  203. /package/dist/runtime/{composables → nuxt/composables}/defineOgImageScreenshot.mjs +0 -0
@@ -1,33 +1,33 @@
1
1
  <!DOCTYPE html><html><head><meta charset="utf-8">
2
2
  <meta name="viewport" content="width=device-width, initial-scale=1">
3
- <link rel="stylesheet" href="/__nuxt-og-image/_nuxt/entry.OczI2MjB.css">
4
- <link rel="modulepreload" as="script" crossorigin href="/__nuxt-og-image/_nuxt/entry.v1zp98GR.js">
3
+ <link rel="stylesheet" href="/__nuxt-og-image/_nuxt/entry.DjkITzvC.css">
4
+ <link rel="modulepreload" as="script" crossorigin href="/__nuxt-og-image/_nuxt/entry.nulbTWcg.js">
5
5
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/onig.mBJmD8D5.js">
6
6
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/abap.bJqzlTLD.js">
7
7
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/actionscript-3.NUzLYz6e.js">
8
8
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/ada.HSb8VHJ5.js">
9
- <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/angular-html.ngCY688K.js">
10
- <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/html.q2IluNCo.js">
11
- <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/javascript.4rbEI_qn.js">
9
+ <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/angular-html.ulaXK71i.js">
10
+ <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/html.ZVb9jHrO.js">
11
+ <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/javascript.JMZ6uy5M.js">
12
12
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/css.tuEqSfZX.js">
13
- <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/angular-ts.JfRveWw0.js">
13
+ <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/angular-ts.CpB8xVpe.js">
14
14
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/scss.9u5wOjnF.js">
15
15
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/apache.TpqIaH_y.js">
16
16
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/apex.rLr5RF8N.js">
17
- <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/apl.ojEktQcO.js">
17
+ <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/apl.XB4V8Q_3.js">
18
18
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/xml.GygmfNh9.js">
19
19
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/java.tY-NU26U.js">
20
20
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/json.xL80yL3n.js">
21
21
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/applescript.uEUaUzem.js">
22
22
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/ara.yxVemEif.js">
23
23
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/asm.N3zWSyW8.js">
24
- <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/astro.bVipJGkW.js">
25
- <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/typescript.IWNmnGsa.js">
24
+ <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/astro.5Up4Y-tq.js">
25
+ <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/typescript.HpdcmTOD.js">
26
26
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/stylus.sPHLw37c.js">
27
27
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/sass.URKSWxt9.js">
28
28
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/less.Mq8TrjER.js">
29
29
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/postcss.57yKeRpx.js">
30
- <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/tsx.vbVEYvAd.js">
30
+ <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/tsx.7LxggtAE.js">
31
31
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/awk.tQAliBPt.js">
32
32
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/ballerina.j08zL6tL.js">
33
33
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/bat.4hprCtpO.js">
@@ -35,21 +35,21 @@
35
35
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/berry.99Qqo7Pl.js">
36
36
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/bibtex.PUS4KD1G.js">
37
37
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/bicep.U1vZFTkg.js">
38
- <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/blade.HvKjdph-.js">
38
+ <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/blade.dLd1FX1V.js">
39
39
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/sql.KWFjTZGI.js">
40
40
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/c.1HqcaTLZ.js">
41
41
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/cadence.wPBjDAPG.js">
42
42
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/clarity.9V3ikNUm.js">
43
43
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/clojure.m464_LIc.js">
44
44
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/cmake.YiKLaZ9A.js">
45
- <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/cobol.DIpfQcy2.js">
45
+ <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/cobol.yHzQax91.js">
46
46
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/codeql.i7fhVOvX.js">
47
- <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/coffee.09Ode5TL.js">
47
+ <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/coffee.UjKhX0iS.js">
48
48
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/cpp.UIU91NPT.js">
49
49
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/glsl.yLv_V-GM.js">
50
- <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/crystal.KqWgScGa.js">
50
+ <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/crystal.ePodXjZr.js">
51
51
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/shellscript.82BvnTib.js">
52
- <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/csharp.SlsguwGx.js">
52
+ <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/csharp.xHVQI8QI.js">
53
53
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/csv.REIP-dDb.js">
54
54
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/cue.ts9p4IYJ.js">
55
55
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/cypher.y2dXjvht.js">
@@ -59,14 +59,16 @@
59
59
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/diff.-l9-nN5b.js">
60
60
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/docker.FKXxym4E.js">
61
61
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/dream-maker.5lPMrnJr.js">
62
- <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/elixir.Q1fiwhg2.js">
62
+ <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/elixir.dYoE9A9d.js">
63
63
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/elm.AR6G1sGv.js">
64
- <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/erb.K_ppY6Ln.js">
65
- <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/ruby.P9eGVNW4.js">
64
+ <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/erb.vCu37omy.js">
65
+ <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/ruby.oOCDDplm.js">
66
66
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/lua.OGbZEs3U.js">
67
67
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/erlang._Br9gip-.js">
68
68
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/fish.k6NZEVUm.js">
69
- <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/fsharp.37PDbGQ_.js">
69
+ <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/fortran-fixed-form.5oVt_150.js">
70
+ <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/fortran-free-form.l6j6vfmD.js">
71
+ <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/fsharp.5TASvPJ1.js">
70
72
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/markdown.Y8p9X7h3.js">
71
73
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/gdresource.7GKJFf55.js">
72
74
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/gdshader.6pjKCTQy.js">
@@ -74,45 +76,45 @@
74
76
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/gherkin.hgsyILVZ.js">
75
77
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/git-commit.RtAxFnK2.js">
76
78
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/git-rebase.-_3Z3F37.js">
77
- <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/glimmer-js.OxCy_kio.js">
78
- <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/handlebars.e6aZXt-Z.js">
79
- <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/yaml.zytfnWoA.js">
80
- <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/glimmer-ts.ZLbawe8H.js">
79
+ <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/glimmer-js.8faD3vw8.js">
80
+ <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/glimmer-ts.I8Eofu1P.js">
81
81
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/gnuplot.fIlAWhXw.js">
82
- <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/go.2bJKq9hO.js">
83
- <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/graphql.Mw2TwDQV.js">
84
- <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/jsx.O5ZRGASz.js">
82
+ <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/go.U2NlzxIl.js">
83
+ <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/graphql.aYTh5yPU.js">
84
+ <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/jsx.3LZ_BoLB.js">
85
85
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/groovy.Z1Lrhk2B.js">
86
- <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/hack.8bxbrxw3.js">
87
- <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/haml.9njXWWYk.js">
86
+ <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/hack.9pFjhnG2.js">
87
+ <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/haml.DYCf5dhF.js">
88
+ <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/handlebars.Z9TIkDUw.js">
89
+ <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/yaml.zytfnWoA.js">
88
90
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/haskell.HW0BBkRd.js">
89
91
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/hcl.M9siRbiv.js">
90
92
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/hjson.fLk7JbZa.js">
91
93
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/hlsl.Do_j-o-7.js">
92
- <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/http.suDZEQUg.js">
93
- <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/imba.Shm_xfQD.js">
94
+ <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/http.McgS7Vpm.js">
95
+ <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/imba.guICF3zN.js">
94
96
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/ini.T6bxBy5-.js">
95
- <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/jinja.E4nwqofd.js">
96
- <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/jison.gkHJeffy.js">
97
+ <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/jinja.H2a5aKFq.js">
98
+ <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/jison.hEN1Pilr.js">
97
99
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/json5.NRuQoh_0.js">
98
100
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/jsonc.Bb1R3obU.js">
99
101
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/jsonl.Yjg0VwMG.js">
100
102
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/jsonnet.WK26vH-O.js">
101
103
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/jssm.eioTUq4-.js">
102
- <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/julia.ku4F-e-8.js">
104
+ <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/julia.zN5MNt1V.js">
103
105
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/python.V9Nu427R.js">
104
106
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/r.xMXDrvl2.js">
105
107
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/kotlin.1iwCeGA4.js">
106
108
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/kusto.UpRCclYC.js">
107
- <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/latex.6xV8tHRw.js">
109
+ <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/latex.Pwsy_OsJ.js">
108
110
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/tex.uNByjuDB.js">
109
- <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/rust.FLHuhIzG.js">
111
+ <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/rust.yNm59Dur.js">
110
112
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/scala.7DKpDMtV.js">
111
- <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/liquid.O0W9gNJ1.js">
113
+ <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/liquid.UuwAmqmc.js">
112
114
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/lisp.iIZdsWzX.js">
113
115
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/logo.WuHqTpFy.js">
114
116
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/make.8zIAVqFD.js">
115
- <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/marko.sELZHXF6.js">
117
+ <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/marko.gbQhFTQa.js">
116
118
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/matlab.LaB98_jd.js">
117
119
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/mdc.NowVT77H.js">
118
120
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/mdx.VhCSg2DJ.js">
@@ -121,30 +123,30 @@
121
123
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/narrat.KYi2rZr0.js">
122
124
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/nextflow.lYJjOZ_l.js">
123
125
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/nginx.CrBM8z2W.js">
124
- <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/nim.OZ1TiK9r.js">
126
+ <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/nim.16czfBCm.js">
125
127
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/nix.z3u_V08Q.js">
126
128
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/nushell.GDk9yul-.js">
127
129
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/objective-c.Eci2Q5FN.js">
128
130
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/objective-cpp.nGsV46Zk.js">
129
131
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/ocaml.oQRvlYTD.js">
130
132
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/pascal.aIRIFbih.js">
131
- <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/perl.CaKiGeyl.js">
132
- <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/php.Q2jqa0n_.js">
133
+ <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/perl._x09KDDb.js">
134
+ <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/php.2PDLwZAX.js">
133
135
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/plsql.vhhXsReo.js">
134
136
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/powerquery.wBQvr9E-.js">
135
137
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/powershell.6Y_bsqLY.js">
136
138
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/prisma.fG9Ut-9i.js">
137
139
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/prolog.vggnm0Hd.js">
138
140
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/proto.yigfBmiL.js">
139
- <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/pug.dmyiUMO7.js">
141
+ <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/pug.ieZS468c.js">
140
142
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/puppet.NqXa_cO1.js">
141
143
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/purescript.NA5qsvV2.js">
142
144
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/raku.NSWyGF40.js">
143
- <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/razor.X4IfBpol.js">
145
+ <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/razor.wPI2afgP.js">
144
146
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/reg.Dr-lXfN9.js">
145
147
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/rel.vATIbX_E.js">
146
148
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/riscv.L73dAZEB.js">
147
- <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/rst.GKtlS3h3.js">
149
+ <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/rst.Nzb5IGfi.js">
148
150
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/sas.fTu4QUYF.js">
149
151
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/scheme.S0VUhbaV.js">
150
152
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/shaderlab.MYTNW71C.js">
@@ -156,20 +158,20 @@
156
158
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/splunk.OYnOZZCZ.js">
157
159
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/ssh-config.jdYjUr9x.js">
158
160
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/stata.cF_ucIcM.js">
159
- <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/svelte.6zdtIlwM.js">
161
+ <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/svelte.j-bqdsch.js">
160
162
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/swift.YwiPyWKn.js">
161
163
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/system-verilog.gwJe9XJI.js">
162
164
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/tasl.IM3fg-4x.js">
163
165
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/tcl.h_zrCUh3.js">
164
166
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/toml.p_xIKQcU.js">
165
- <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/twig.h5iAhXmS.js">
167
+ <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/twig.p6WenPmw.js">
166
168
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/v.BcVLQyAr.js">
167
169
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/vb.nfm3ZogP.js">
168
170
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/verilog.32GaFvLA.js">
169
171
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/vhdl.BgfvI7C9.js">
170
172
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/viml.Ob-szSvk.js">
171
- <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/vue.CmUal76M.js">
172
- <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/vue-html.B2XvVFLk.js">
173
+ <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/vue.AKvPdve9.js">
174
+ <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/vue-html.TGyjH-sv.js">
173
175
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/vyper.0ItMHLZu.js">
174
176
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/wasm.5qeU6UJI.js">
175
177
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/wenyan.gl1zQYA8.js">
@@ -219,9 +221,9 @@
219
221
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/vitesse-light.HOMMxGxw.js">
220
222
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/vanilla-picker.P0dws0ou.js">
221
223
  <link rel="prefetch" as="style" href="/__nuxt-og-image/_nuxt/error-404.DkXpI38i.css">
222
- <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/error-404.VV5ycc25.js">
224
+ <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/error-404.JU1SsGot.js">
223
225
  <link rel="prefetch" as="style" href="/__nuxt-og-image/_nuxt/error-500.SLhS9LVu.css">
224
- <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/error-500.VNY3c4OJ.js">
225
- <script type="module" src="/__nuxt-og-image/_nuxt/entry.v1zp98GR.js" crossorigin></script><script>"use strict";(()=>{const a=window,e=document.documentElement,m=["dark","light"],c=window&&window.localStorage&&window.localStorage.getItem&&window.localStorage.getItem("nuxt-color-mode")||"system";let n=c==="system"?d():c;const l=e.getAttribute("data-color-mode-forced");l&&(n=l),i(n),a["__NUXT_COLOR_MODE__"]={preference:c,value:n,getColorScheme:d,addColorScheme:i,removeColorScheme:f};function i(o){const t=""+o+"",s="";e.classList?e.classList.add(t):e.className+=" "+t,s&&e.setAttribute("data-"+s,o)}function f(o){const t=""+o+"",s="";e.classList?e.classList.remove(t):e.className=e.className.replace(new RegExp(t,"g"),""),s&&e.removeAttribute("data-"+s)}function r(o){return a.matchMedia("(prefers-color-scheme"+o+")")}function d(){if(a.matchMedia&&r("").media!=="not all"){for(const o of m)if(r(":"+o).matches)return o}return"light"}})();
226
+ <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/error-500.QWp95-mE.js">
227
+ <script type="module" src="/__nuxt-og-image/_nuxt/entry.nulbTWcg.js" crossorigin></script><script>"use strict";(()=>{const a=window,e=document.documentElement,m=["dark","light"],c=window&&window.localStorage&&window.localStorage.getItem&&window.localStorage.getItem("nuxt-color-mode")||"system";let n=c==="system"?d():c;const l=e.getAttribute("data-color-mode-forced");l&&(n=l),i(n),a["__NUXT_COLOR_MODE__"]={preference:c,value:n,getColorScheme:d,addColorScheme:i,removeColorScheme:f};function i(o){const t=""+o+"",s="";e.classList?e.classList.add(t):e.className+=" "+t,s&&e.setAttribute("data-"+s,o)}function f(o){const t=""+o+"",s="";e.classList?e.classList.remove(t):e.className=e.className.replace(new RegExp(t,"g"),""),s&&e.removeAttribute("data-"+s)}function r(o){return a.matchMedia("(prefers-color-scheme"+o+")")}function d(){if(a.matchMedia&&r("").media!=="not all"){for(const o of m)if(r(":"+o).matches)return o}return"light"}})();
226
228
  </script></head><body><div id="__nuxt"></div><script type="application/json" id="__NUXT_DATA__" data-ssr="false">[{"_errors":1,"serverRendered":2,"data":3,"state":4,"once":5},{},false,{},{},["Set"]]</script>
227
229
  <script>window.__NUXT__={};window.__NUXT__.config={public:{},app:{baseURL:"/__nuxt-og-image",buildAssetsDir:"/_nuxt/",cdnURL:""}}</script></body></html>
package/dist/module.d.mts CHANGED
@@ -181,6 +181,12 @@ interface ModuleOptions {
181
181
  * Manually modify the compatibility.
182
182
  */
183
183
  compatibility?: CompatibilityFlagEnvOverrides;
184
+ /**
185
+ * Use an alternative host for downloading Google Fonts. This is used to support China where Google Fonts is blocked.
186
+ *
187
+ * When `true` is set will use `fonts.font.im`, otherwise will use a string as the host.
188
+ */
189
+ googleFontMirror?: true | string;
184
190
  }
185
191
  interface ModuleHooks {
186
192
  'nuxt-og-image:components': (ctx: {
package/dist/module.d.ts CHANGED
@@ -181,6 +181,12 @@ interface ModuleOptions {
181
181
  * Manually modify the compatibility.
182
182
  */
183
183
  compatibility?: CompatibilityFlagEnvOverrides;
184
+ /**
185
+ * Use an alternative host for downloading Google Fonts. This is used to support China where Google Fonts is blocked.
186
+ *
187
+ * When `true` is set will use `fonts.font.im`, otherwise will use a string as the host.
188
+ */
189
+ googleFontMirror?: true | string;
184
190
  }
185
191
  interface ModuleHooks {
186
192
  'nuxt-og-image:components': (ctx: {
package/dist/module.json CHANGED
@@ -5,5 +5,5 @@
5
5
  "bridge": false
6
6
  },
7
7
  "configKey": "ogImage",
8
- "version": "3.0.0-rc.29"
8
+ "version": "3.0.0-rc.31"
9
9
  }
package/dist/module.mjs CHANGED
@@ -1,17 +1,21 @@
1
1
  import * as fs from 'node:fs';
2
2
  import { existsSync } from 'node:fs';
3
- import { useNuxt, addTemplate, loadNuxtModuleInstance, createResolver, resolvePath, tryResolveModule, defineNuxtModule, useLogger, hasNuxtModule, addServerPlugin, addServerHandler, addImports, addComponentsDir, addComponent, addPlugin } from '@nuxt/kit';
3
+ import { readFile, writeFile } from 'node:fs/promises';
4
+ import { useNuxt, addTemplate, loadNuxtModuleInstance, createResolver, resolvePath, tryResolveModule, defineNuxtModule, useLogger, addImports, hasNuxtModule, addServerPlugin, addServerHandler, addComponentsDir, addComponent, addPlugin } from '@nuxt/kit';
4
5
  import { assertSiteConfig, installNuxtSiteConfig } from 'nuxt-site-config-kit';
5
6
  import { provider, env, isCI, isDevelopment } from 'std-env';
6
7
  import { hash } from 'ohash';
7
- import { relative, dirname } from 'pathe';
8
+ import { relative, dirname, basename, join } from 'pathe';
8
9
  import { defu } from 'defu';
9
10
  import { readPackageJSON } from 'pkg-types';
11
+ import { createStorage } from 'unstorage';
12
+ import fsDriver from 'unstorage/drivers/fs';
13
+ import { withoutLeadingSlash } from 'ufo';
10
14
  import { ensureDependencyInstalled } from 'nypm';
11
15
  import { onDevToolsInitialized, extendServerRpc } from '@nuxt/devtools-kit';
12
- import { readFile, writeFile } from 'node:fs/promises';
13
16
  import { createHash } from 'node:crypto';
14
17
  import { Launcher } from 'chrome-launcher';
18
+ import { $fetch } from 'ofetch';
15
19
 
16
20
  const autodetectableProviders = {
17
21
  azure_static: "azure",
@@ -123,8 +127,8 @@ function applyNitroPresetCompatibility(nitroConfig, options) {
123
127
  const { resolve } = options;
124
128
  const satoriEnabled = typeof options.compatibility?.satori !== "undefined" ? !!options.compatibility.satori : !!compatibility.satori;
125
129
  const chromiumEnabled = typeof options.compatibility?.chromium !== "undefined" ? !!options.compatibility.chromium : !!compatibility.chromium;
126
- nitroConfig.alias["#nuxt-og-image/renderers/satori"] = satoriEnabled ? resolve("./runtime/core/renderers/satori") : "unenv/runtime/mock/empty";
127
- nitroConfig.alias["#nuxt-og-image/renderers/chromium"] = chromiumEnabled ? resolve("./runtime/core/renderers/chromium") : "unenv/runtime/mock/empty";
130
+ nitroConfig.alias["#nuxt-og-image/renderers/satori"] = satoriEnabled ? resolve("./runtime/nitro/og-image/satori/renderer") : "unenv/runtime/mock/empty";
131
+ nitroConfig.alias["#nuxt-og-image/renderers/chromium"] = chromiumEnabled ? resolve("./runtime/nitro/og-image/chromium/renderer") : "unenv/runtime/mock/empty";
128
132
  const resolvedCompatibility = {};
129
133
  function applyBinding(key) {
130
134
  let binding = options.compatibility?.[key];
@@ -134,7 +138,7 @@ function applyNitroPresetCompatibility(nitroConfig, options) {
134
138
  binding = "playwright";
135
139
  resolvedCompatibility[key] = binding;
136
140
  return {
137
- [`#nuxt-og-image/bindings/${key}`]: binding === false ? "unenv/runtime/mock/empty" : resolve(`./runtime/core/bindings/${key}/${binding}`)
141
+ [`#nuxt-og-image/bindings/${key}`]: binding === false ? "unenv/runtime/mock/empty" : resolve(`./runtime/nitro/og-image/bindings/${key}/${binding}`)
138
142
  };
139
143
  }
140
144
  nitroConfig.alias = defu(
@@ -206,6 +210,12 @@ export {}
206
210
  nuxt.hooks.hook("prepare:types", ({ references }) => {
207
211
  references.push({ path: resolve(nuxt.options.buildDir, `module/${module}.d.ts`) });
208
212
  });
213
+ nuxt.hooks.hook("nitro:config", (config) => {
214
+ config.typescript = config.typescript || {};
215
+ config.typescript.tsConfig = config.typescript.tsConfig || {};
216
+ config.typescript.tsConfig.include = config.typescript.tsConfig.include || [];
217
+ config.typescript.tsConfig.include.push(`./module/${module}.d.ts`);
218
+ });
209
219
  }
210
220
  function isNuxtGenerate(nuxt = useNuxt()) {
211
221
  return nuxt.options._generate || nuxt.options.nitro.static || nuxt.options.nitro.preset === "static";
@@ -300,8 +310,6 @@ function setupGenerateHandler(options, resolve, nuxt = useNuxt()) {
300
310
  function setupPrerenderHandler(options, resolve, nuxt = useNuxt()) {
301
311
  nuxt.hooks.hook("nitro:init", async (nitro) => {
302
312
  nitro.hooks.hook("prerender:config", async (nitroConfig) => {
303
- nitroConfig.serverAssets = nitroConfig.serverAssets || [];
304
- nitroConfig.serverAssets.push({ baseName: "nuxt-og-image:fonts", dir: resolve("./runtime/server/assets") });
305
313
  applyNitroPresetCompatibility(nitroConfig, { compatibility: options.compatibility?.prerender, resolve });
306
314
  nitroConfig.wasm = nitroConfig.wasm || {};
307
315
  nitroConfig.wasm.esmImport = false;
@@ -365,6 +373,33 @@ function checkLocalChrome() {
365
373
  async function checkPlaywrightDependency() {
366
374
  return !!await tryResolveModule("playwright");
367
375
  }
376
+ async function downloadFont(font, storage, mirror) {
377
+ const { name, weight } = font;
378
+ const key = `${name}-${weight}.ttf.base64`;
379
+ if (await storage.hasItem(key))
380
+ return true;
381
+ const host = typeof mirror === "undefined" ? "fonts.googleapis.com" : mirror === true ? "fonts.font.im" : mirror;
382
+ const css = await $fetch(`https://${host}/css2?family=${name}:wght@${weight}`, {
383
+ timeout: 10 * 1e3,
384
+ // 10 second timeout
385
+ headers: {
386
+ // Make sure it returns TTF.
387
+ "User-Agent": "Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_6_8; de-at) AppleWebKit/533.21.1 (KHTML, like Gecko) Version/5.0.5 Safari/533.21.1"
388
+ }
389
+ }).catch(() => {
390
+ return false;
391
+ });
392
+ if (!css)
393
+ return false;
394
+ const ttfResource = css.match(/src: url\((.+)\) format\('(opentype|truetype)'\)/);
395
+ if (ttfResource?.[1]) {
396
+ const buf = await $fetch(ttfResource[1], { baseURL: host, responseType: "arrayBuffer" });
397
+ const base64Font = Buffer.from(buf).toString("base64");
398
+ await storage.setItem(key, base64Font);
399
+ return true;
400
+ }
401
+ return false;
402
+ }
368
403
 
369
404
  function normaliseFontInput(fonts) {
370
405
  return fonts.map((f) => {
@@ -422,6 +457,9 @@ const module = defineNuxtModule({
422
457
  logger.level = config.debug || nuxt.options.debug ? 4 : 3;
423
458
  if (config.enabled === false) {
424
459
  logger.debug("The module is disabled, skipping setup.");
460
+ ["defineOgImage", "defineOgImageComponent", "defineOgImageScreenshot"].forEach((name2) => {
461
+ addImports({ name: name2, from: resolve(`./runtime/nuxt/composables/mock`) });
462
+ });
425
463
  return;
426
464
  }
427
465
  if (config.enabled && !nuxt.options.ssr) {
@@ -493,67 +531,78 @@ const module = defineNuxtModule({
493
531
  await installNuxtSiteConfig();
494
532
  if (hasNuxtModule("@nuxt/content"))
495
533
  addServerPlugin(resolve("./runtime/nitro/plugins/nuxt-content"));
496
- if (!config.fonts.length)
497
- config.fonts = ["Inter:400", "Inter:700"];
498
- if (preset === "cloudflare" || preset === "cloudflare-module") {
499
- config.fonts = config.fonts.filter((f) => {
500
- if (typeof f !== "string" && f.path) {
501
- logger.warn(`The ${f.name}:${f.weight} font was skipped because remote fonts are not available in Cloudflare Workers, please use a Google font.`);
534
+ if (!config.fonts.length) {
535
+ config.fonts = [
536
+ { name: "Inter", weight: 400, path: resolve("./assets/Inter-400.ttf.base64") },
537
+ { name: "Inter", weight: 700, path: resolve("./assets/Inter-700.ttf.base64") }
538
+ ];
539
+ }
540
+ const serverFontsDir = resolve(nuxt.options.buildDir, "cache", `nuxt-og-image@${version}`, "_fonts");
541
+ const fontStorage = createStorage({
542
+ driver: fsDriver({
543
+ base: serverFontsDir
544
+ })
545
+ });
546
+ config.fonts = (await Promise.all(normaliseFontInput(config.fonts).map(async (f) => {
547
+ if (!f.key && !f.path) {
548
+ if (preset === "stackblitz") {
549
+ logger.warn(`The ${f.name}:${f.weight} font was skipped because remote fonts are not available in StackBlitz, please use a local font.`);
502
550
  return false;
503
551
  }
504
- return true;
505
- });
506
- }
507
- if (preset === "stackblitz") {
508
- config.fonts = config.fonts.map((f) => {
509
- if (typeof f === "string" && f.startsWith("Inter:")) {
510
- const [_, weight] = f.split(":");
511
- return {
512
- name: "Inter",
513
- weight,
514
- // nuxt server assets
515
- key: `nuxt-og-image:fonts:inter-latin-ext-${weight}-normal.woff`
516
- };
552
+ if (await downloadFont(f, fontStorage, config.googleFontMirror)) {
553
+ f.key = `nuxt-og-image:fonts:${f.name}-${f.weight}.ttf.base64`;
554
+ } else {
555
+ logger.warn(`Failed to download font ${f.name}:${f.weight}. You may be offline or behind a firewall blocking Google. Consider setting \`googleFontMirror: true\`.`);
556
+ return false;
517
557
  }
518
- if (typeof f === "string" || !f.path && !f.key) {
519
- logger.warn(`The ${typeof f === "string" ? f : `${f.name}:${f.weight}`} font was skipped because remote fonts are not available in StackBlitz, please use a local font.`);
558
+ } else if (f.path) {
559
+ const extension = basename(f.path).split(".").pop();
560
+ if (!["woff", "ttf", "otf", "base64"].includes(extension)) {
561
+ logger.warn(`The ${f.name}:${f.weight} font was skipped because the file extension ${extension} is not supported. Only woff, ttf and otf are supported.`);
520
562
  return false;
521
563
  }
522
- return f;
523
- }).filter(Boolean);
524
- nuxt.hooks.hook("nitro:config", (nitroConfig) => {
525
- nitroConfig.serverAssets = nitroConfig.serverAssets || [];
526
- nitroConfig.serverAssets.push({ baseName: "nuxt-og-image:fonts", dir: resolve("./runtime/server/assets") });
527
- });
528
- }
564
+ f.path = join(nuxt.options.rootDir, nuxt.options.dir.public, withoutLeadingSlash(f.path));
565
+ if (!existsSync(f.path)) {
566
+ logger.warn(`The ${f.name}:${f.weight} font was skipped because the file does not exist at path ${f.path}.`);
567
+ return false;
568
+ }
569
+ const fontData = await readFile(f.path, "base64");
570
+ f.key = `nuxt-og-image:fonts:${f.name}-${f.weight}.ttf.base64`;
571
+ await fontStorage.setItem(`${basename(f.path)}.base64`, fontData);
572
+ delete f.path;
573
+ }
574
+ return f;
575
+ }))).filter(Boolean);
576
+ nuxt.options.nitro.serverAssets = nuxt.options.nitro.serverAssets || [];
577
+ nuxt.options.nitro.serverAssets.push({ baseName: "nuxt-og-image:fonts", dir: serverFontsDir });
529
578
  nuxt.options.experimental.componentIslands = true;
530
579
  addServerHandler({
531
580
  lazy: true,
532
581
  route: "/__og-image__/font/**",
533
- handler: resolve("./runtime/nitro/routes/__og-image__/font-[name]-[weight].[extension]")
582
+ handler: resolve("./runtime/nitro/routes/font")
534
583
  });
535
584
  if (config.debug || nuxt.options.dev) {
536
585
  addServerHandler({
537
586
  lazy: true,
538
587
  route: "/__og-image__/debug.json",
539
- handler: resolve("./runtime/nitro/routes/__og-image__/debug.json")
588
+ handler: resolve("./runtime/nitro/routes/debug.json")
540
589
  });
541
590
  }
542
591
  addServerHandler({
543
592
  lazy: true,
544
593
  route: "/__og-image__/image/**",
545
- handler: resolve("./runtime/nitro/routes/__og-image__/image")
594
+ handler: resolve("./runtime/nitro/routes/image")
546
595
  });
547
596
  nuxt.options.optimization.treeShake.composables.client["nuxt-og-image"] = [];
548
597
  ["defineOgImage", "defineOgImageComponent", "defineOgImageScreenshot"].forEach((name2) => {
549
598
  addImports({
550
599
  name: name2,
551
- from: resolve(`./runtime/composables/${name2}`)
600
+ from: resolve(`./runtime/nuxt/composables/${name2}`)
552
601
  });
553
602
  nuxt.options.optimization.treeShake.composables.client["nuxt-og-image"].push(name2);
554
603
  });
555
604
  await addComponentsDir({
556
- path: resolve("./runtime/components/Templates/Community"),
605
+ path: resolve("./runtime/nuxt/components/Templates/Community"),
557
606
  island: true,
558
607
  watch: true
559
608
  });
@@ -564,7 +613,7 @@ const module = defineNuxtModule({
564
613
  ].forEach((name2) => {
565
614
  addComponent({
566
615
  name: name2,
567
- filePath: resolve(`./runtime/components/OgImage/${name2}`),
616
+ filePath: resolve(`./runtime/nuxt/components/OgImage/${name2}`),
568
617
  ...config.componentOptions
569
618
  });
570
619
  });
@@ -579,13 +628,13 @@ const module = defineNuxtModule({
579
628
  if (component.pascalName.startsWith(dir) || component.kebabName.startsWith(dir) || component.shortPath.includes(`/${dir}/`))
580
629
  valid = true;
581
630
  });
582
- if (component.filePath.includes(resolve("./runtime/components/Templates")))
631
+ if (component.filePath.includes(resolve("./runtime/nuxt/components/Templates")))
583
632
  valid = true;
584
633
  if (valid && fs.existsSync(component.filePath)) {
585
634
  component.island = true;
586
635
  component.mode = "server";
587
636
  let category = "app";
588
- if (component.filePath.includes(resolve("./runtime/components/Templates/Community")))
637
+ if (component.filePath.includes(resolve("./runtime/nuxt/components/Templates/Community")))
589
638
  category = "community";
590
639
  const componentFile = fs.readFileSync(component.filePath, "utf-8");
591
640
  const credits = componentFile.split("\n").find((line) => line.startsWith(" * @credits"))?.replace("* @credits", "").trim();
@@ -650,6 +699,9 @@ declare module '#nuxt-og-image/components' {
650
699
  ${componentImports}
651
700
  }
652
701
  }
702
+ declare module '#nuxt-og-image/unocss-config' {
703
+ export type theme = any
704
+ }
653
705
  `;
654
706
  });
655
707
  const cacheEnabled = typeof config.runtimeCacheStorage !== "undefined" && config.runtimeCacheStorage !== false;
@@ -1,5 +1,5 @@
1
1
  import { initWasm, inline } from "@css-inline/css-inline-wasm";
2
- import { readWasmFile } from "../../utils/wasm.mjs";
2
+ import { readWasmFile } from "../../../util/wasm.mjs";
3
3
  export default {
4
4
  initWasmPromise: initWasm(readWasmFile("@css-inline/css-inline-wasm/index_bg.wasm")),
5
5
  cssInline: {
@@ -1,5 +1,5 @@
1
1
  import { initWasm, inline } from "@css-inline/css-inline-wasm";
2
- import { importWasm } from "../../utils/wasm.mjs";
2
+ import { importWasm } from "../../../util/wasm.mjs";
3
3
  export default {
4
4
  initWasmPromise: initWasm(importWasm(import("@css-inline/css-inline-wasm/index_bg.wasm"))),
5
5
  cssInline: {
@@ -1,5 +1,5 @@
1
1
  import { Resvg as _Resvg, initWasm } from "@resvg/resvg-wasm";
2
- import { readWasmFile } from "../../utils/wasm.mjs";
2
+ import { readWasmFile } from "../../../util/wasm.mjs";
3
3
  export default {
4
4
  initWasmPromise: initWasm(readWasmFile("@resvg/resvg-wasm/index_bg.wasm")),
5
5
  Resvg: _Resvg
@@ -1,5 +1,5 @@
1
1
  import { Resvg as _Resvg, initWasm } from "@resvg/resvg-wasm";
2
- import { importWasm } from "../../utils/wasm.mjs";
2
+ import { importWasm } from "../../../util/wasm.mjs";
3
3
  export default {
4
4
  initWasmPromise: initWasm(importWasm(import("@resvg/resvg-wasm/index_bg.wasm"))),
5
5
  Resvg: _Resvg
@@ -1,6 +1,6 @@
1
1
  import _satori, { init } from "satori/wasm";
2
2
  import initYoga from "yoga-wasm-web";
3
- import { readWasmFile } from "../../utils/wasm.mjs";
3
+ import { readWasmFile } from "../../../util/wasm.mjs";
4
4
  const wasm = readWasmFile("yoga-wasm-web/dist/yoga.wasm").then(async (yoga) => await initYoga(yoga));
5
5
  export default {
6
6
  initWasmPromise: new Promise((resolve) => {
@@ -1,7 +1,7 @@
1
1
  import _satori from "satori/wasm";
2
2
  import initYoga from "yoga-wasm-web";
3
3
  import { init } from "satori";
4
- import { importWasm } from "../../utils/wasm.mjs";
4
+ import { importWasm } from "../../../util/wasm.mjs";
5
5
  const wasm = importWasm(import("yoga-wasm-web/dist/yoga.wasm")).then(async (yoga) => await initYoga(yoga));
6
6
  export default {
7
7
  initWasmPromise: new Promise((resolve) => {
@@ -0,0 +1,7 @@
1
+ import type { Storage } from 'unstorage';
2
+ import type { OgImageOptions } from '../../types';
3
+ export declare const htmlPayloadCache: Storage<{
4
+ expiresAt: number;
5
+ value: OgImageOptions;
6
+ }>;
7
+ export declare const prerenderOptionsCache: Storage<OgImageOptions> | undefined;