nuxt-og-image 3.0.0-rc.26 → 3.0.0-rc.28

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 (235) hide show
  1. package/dist/client/200.html +221 -6
  2. package/dist/client/404.html +221 -6
  3. package/dist/client/_nuxt/IconCSS.UISSK5sv.css +1 -0
  4. package/dist/client/_nuxt/{IconCSS.JDMnogn5.js → IconCSS.hYtKsgTY.js} +1 -1
  5. package/dist/client/_nuxt/abap.bJqzlTLD.js +816 -0
  6. package/dist/client/_nuxt/actionscript-3.NUzLYz6e.js +1 -0
  7. package/dist/client/_nuxt/ada.HSb8VHJ5.js +1 -0
  8. package/dist/client/_nuxt/andromeeda.TE0Toi4a.js +1 -0
  9. package/dist/client/_nuxt/angular-html.ngCY688K.js +16 -0
  10. package/dist/client/_nuxt/angular-ts.JfRveWw0.js +666 -0
  11. package/dist/client/_nuxt/apache.TpqIaH_y.js +1 -0
  12. package/dist/client/_nuxt/apex.rLr5RF8N.js +274 -0
  13. package/dist/client/_nuxt/apl.ojEktQcO.js +87 -0
  14. package/dist/client/_nuxt/applescript.uEUaUzem.js +38 -0
  15. package/dist/client/_nuxt/ara.yxVemEif.js +21 -0
  16. package/dist/client/_nuxt/asm.N3zWSyW8.js +1 -0
  17. package/dist/client/_nuxt/astro.bVipJGkW.js +1 -0
  18. package/dist/client/_nuxt/aurora-x.23vffHpO.js +1 -0
  19. package/dist/client/_nuxt/awk.tQAliBPt.js +1 -0
  20. package/dist/client/_nuxt/ayu-dark.09-XTo9D.js +1 -0
  21. package/dist/client/_nuxt/ballerina.j08zL6tL.js +62 -0
  22. package/dist/client/_nuxt/bat.4hprCtpO.js +1 -0
  23. package/dist/client/_nuxt/beancount.B4bgLeBI.js +1 -0
  24. package/dist/client/_nuxt/berry.99Qqo7Pl.js +1 -0
  25. package/dist/client/_nuxt/bibtex.PUS4KD1G.js +1 -0
  26. package/dist/client/_nuxt/bicep.U1vZFTkg.js +1 -0
  27. package/dist/client/_nuxt/blade.HvKjdph-.js +831 -0
  28. package/dist/client/_nuxt/builds/latest.json +1 -1
  29. package/dist/client/_nuxt/builds/meta/13223ac0-70d7-47ae-9e5a-caa3af9b9ae7.json +1 -0
  30. package/dist/client/_nuxt/c.1HqcaTLZ.js +81 -0
  31. package/dist/client/_nuxt/cadence.wPBjDAPG.js +1 -0
  32. package/dist/client/_nuxt/catppuccin-frappe.3zzElYQH.js +1 -0
  33. package/dist/client/_nuxt/catppuccin-latte.7_seQpm6.js +1 -0
  34. package/dist/client/_nuxt/catppuccin-macchiato.xyLZ1Mzm.js +1 -0
  35. package/dist/client/_nuxt/catppuccin-mocha.sKQhYBeR.js +1 -0
  36. package/dist/client/_nuxt/clarity.9V3ikNUm.js +1 -0
  37. package/dist/client/_nuxt/clojure.m464_LIc.js +1 -0
  38. package/dist/client/_nuxt/cmake.YiKLaZ9A.js +1 -0
  39. package/dist/client/_nuxt/cobol.DIpfQcy2.js +1 -0
  40. package/dist/client/_nuxt/codeql.i7fhVOvX.js +1 -0
  41. package/dist/client/_nuxt/coffee.09Ode5TL.js +100 -0
  42. package/dist/client/_nuxt/cpp.UIU91NPT.js +186 -0
  43. package/dist/client/_nuxt/crystal.KqWgScGa.js +25 -0
  44. package/dist/client/_nuxt/csharp.SlsguwGx.js +755 -0
  45. package/dist/client/_nuxt/css.tuEqSfZX.js +505 -0
  46. package/dist/client/_nuxt/csv.REIP-dDb.js +1 -0
  47. package/dist/client/_nuxt/cue.ts9p4IYJ.js +1 -0
  48. package/dist/client/_nuxt/cypher.y2dXjvht.js +1 -0
  49. package/dist/client/_nuxt/d.91KOtcJM.js +1 -0
  50. package/dist/client/_nuxt/dark-plus.kgh98KCl.js +1 -0
  51. package/dist/client/_nuxt/dart.ATU8nP6d.js +1 -0
  52. package/dist/client/_nuxt/dax.M4oDHFBw.js +29 -0
  53. package/dist/client/_nuxt/diff.-l9-nN5b.js +1 -0
  54. package/dist/client/_nuxt/docker.FKXxym4E.js +1 -0
  55. package/dist/client/_nuxt/dracula-soft.E92bUq8i.js +1 -0
  56. package/dist/client/_nuxt/dracula.mNVTF5-9.js +1 -0
  57. package/dist/client/_nuxt/dream-maker.5lPMrnJr.js +52 -0
  58. package/dist/client/_nuxt/elixir.Q1fiwhg2.js +17 -0
  59. package/dist/client/_nuxt/elm.AR6G1sGv.js +1 -0
  60. package/dist/client/_nuxt/entry.Lz330WCU.js +134 -0
  61. package/dist/client/_nuxt/{entry.Cr1VFkjV.css → entry.OczI2MjB.css} +1 -1
  62. package/dist/client/_nuxt/erb.K_ppY6Ln.js +1 -0
  63. package/dist/client/_nuxt/erlang._Br9gip-.js +1 -0
  64. package/dist/client/_nuxt/{error-404.OfPMiLAv.js → error-404.kJhjXFVq.js} +1 -1
  65. package/dist/client/_nuxt/{error-500.hTKDxJwt.js → error-500.-HiG0K69.js} +1 -1
  66. package/dist/client/_nuxt/fish.k6NZEVUm.js +5 -0
  67. package/dist/client/_nuxt/fsharp.37PDbGQ_.js +1 -0
  68. package/dist/client/_nuxt/gdresource.7GKJFf55.js +1 -0
  69. package/dist/client/_nuxt/gdscript.E1_SGClP.js +44 -0
  70. package/dist/client/_nuxt/gdshader.6pjKCTQy.js +1 -0
  71. package/dist/client/_nuxt/gherkin.hgsyILVZ.js +1 -0
  72. package/dist/client/_nuxt/git-commit.RtAxFnK2.js +1 -0
  73. package/dist/client/_nuxt/git-rebase.-_3Z3F37.js +1 -0
  74. package/dist/client/_nuxt/github-dark-dimmed.yDYFqRVv.js +1 -0
  75. package/dist/client/_nuxt/github-dark.WrpzPehD.js +1 -0
  76. package/dist/client/_nuxt/github-light.QjB713Ax.js +1 -0
  77. package/dist/client/_nuxt/glimmer-js.OxCy_kio.js +1 -0
  78. package/dist/client/_nuxt/glimmer-ts.ZLbawe8H.js +1 -0
  79. package/dist/client/_nuxt/glsl.yLv_V-GM.js +1 -0
  80. package/dist/client/_nuxt/gnuplot.fIlAWhXw.js +266 -0
  81. package/dist/client/_nuxt/go.2bJKq9hO.js +1 -0
  82. package/dist/client/_nuxt/graphql.Mw2TwDQV.js +4 -0
  83. package/dist/client/_nuxt/groovy.Z1Lrhk2B.js +37 -0
  84. package/dist/client/_nuxt/hack.8bxbrxw3.js +86 -0
  85. package/dist/client/_nuxt/haml.9njXWWYk.js +1 -0
  86. package/dist/client/_nuxt/handlebars.e6aZXt-Z.js +1 -0
  87. package/dist/client/_nuxt/haskell.HW0BBkRd.js +559 -0
  88. package/dist/client/_nuxt/hcl.M9siRbiv.js +1 -0
  89. package/dist/client/_nuxt/hjson.fLk7JbZa.js +50 -0
  90. package/dist/client/_nuxt/hlsl.Do_j-o-7.js +1 -0
  91. package/dist/client/_nuxt/html.q2IluNCo.js +74 -0
  92. package/dist/client/_nuxt/http.suDZEQUg.js +1 -0
  93. package/dist/client/_nuxt/imba.Shm_xfQD.js +223 -0
  94. package/dist/client/_nuxt/ini.T6bxBy5-.js +1 -0
  95. package/dist/client/_nuxt/java.tY-NU26U.js +68 -0
  96. package/dist/client/_nuxt/javascript.4rbEI_qn.js +699 -0
  97. package/dist/client/_nuxt/jinja.E4nwqofd.js +1 -0
  98. package/dist/client/_nuxt/jison.gkHJeffy.js +1 -0
  99. package/dist/client/_nuxt/json.xL80yL3n.js +25 -0
  100. package/dist/client/_nuxt/json5.NRuQoh_0.js +17 -0
  101. package/dist/client/_nuxt/jsonc.Bb1R3obU.js +25 -0
  102. package/dist/client/_nuxt/jsonl.Yjg0VwMG.js +25 -0
  103. package/dist/client/_nuxt/jsonnet.WK26vH-O.js +1 -0
  104. package/dist/client/_nuxt/jssm.eioTUq4-.js +1 -0
  105. package/dist/client/_nuxt/jsx.O5ZRGASz.js +699 -0
  106. package/dist/client/_nuxt/julia.ku4F-e-8.js +9 -0
  107. package/dist/client/_nuxt/kotlin.1iwCeGA4.js +1 -0
  108. package/dist/client/_nuxt/kusto.UpRCclYC.js +1 -0
  109. package/dist/client/_nuxt/latex.6xV8tHRw.js +3 -0
  110. package/dist/client/_nuxt/less.Mq8TrjER.js +159 -0
  111. package/dist/client/_nuxt/light-plus.TzXGjDsL.js +1 -0
  112. package/dist/client/_nuxt/liquid.O0W9gNJ1.js +14 -0
  113. package/dist/client/_nuxt/lisp.iIZdsWzX.js +1 -0
  114. package/dist/client/_nuxt/logo.WuHqTpFy.js +1 -0
  115. package/dist/client/_nuxt/lua.OGbZEs3U.js +1 -0
  116. package/dist/client/_nuxt/make.8zIAVqFD.js +1 -0
  117. package/dist/client/_nuxt/markdown.Y8p9X7h3.js +129 -0
  118. package/dist/client/_nuxt/marko.sELZHXF6.js +8 -0
  119. package/dist/client/_nuxt/material-theme-darker.e1lAwchJ.js +1 -0
  120. package/dist/client/_nuxt/material-theme-lighter.y77yPuAI.js +1 -0
  121. package/dist/client/_nuxt/material-theme-ocean.oIMAIpse.js +1 -0
  122. package/dist/client/_nuxt/material-theme-palenight.Z44VU5rQ.js +1 -0
  123. package/dist/client/_nuxt/material-theme.49YjOoAR.js +1 -0
  124. package/dist/client/_nuxt/matlab.LaB98_jd.js +70 -0
  125. package/dist/client/_nuxt/mdc.NowVT77H.js +76 -0
  126. package/dist/client/_nuxt/mdx.VhCSg2DJ.js +1 -0
  127. package/dist/client/_nuxt/mermaid.WuNnVULj.js +1 -0
  128. package/dist/client/_nuxt/min-dark._Ja8ZF5C.js +1 -0
  129. package/dist/client/_nuxt/min-light.N1m_6E3S.js +1 -0
  130. package/dist/client/_nuxt/mojo.zLNDSfD9.js +519 -0
  131. package/dist/client/_nuxt/monokai.WLw4Glvg.js +1 -0
  132. package/dist/client/_nuxt/narrat.KYi2rZr0.js +7 -0
  133. package/dist/client/_nuxt/nextflow.lYJjOZ_l.js +1 -0
  134. package/dist/client/_nuxt/nginx.CrBM8z2W.js +1 -0
  135. package/dist/client/_nuxt/night-owl.GWZK5Ce7.js +1 -0
  136. package/dist/client/_nuxt/nim.OZ1TiK9r.js +1 -0
  137. package/dist/client/_nuxt/nix.z3u_V08Q.js +1 -0
  138. package/dist/client/_nuxt/nord.1NrVtx79.js +1 -0
  139. package/dist/client/_nuxt/nushell.GDk9yul-.js +1 -0
  140. package/dist/client/_nuxt/objective-c.Eci2Q5FN.js +109 -0
  141. package/dist/client/_nuxt/objective-cpp.nGsV46Zk.js +239 -0
  142. package/dist/client/_nuxt/ocaml.oQRvlYTD.js +1 -0
  143. package/dist/client/_nuxt/one-dark-pro.qlkgvdEn.js +1 -0
  144. package/dist/client/_nuxt/onig.mBJmD8D5.js +1 -0
  145. package/dist/client/_nuxt/pascal.aIRIFbih.js +1 -0
  146. package/dist/client/_nuxt/perl.CaKiGeyl.js +1 -0
  147. package/dist/client/_nuxt/php.Q2jqa0n_.js +771 -0
  148. package/dist/client/_nuxt/plsql.vhhXsReo.js +1 -0
  149. package/dist/client/_nuxt/poimandres.oZrO-I17.js +1 -0
  150. package/dist/client/_nuxt/postcss.57yKeRpx.js +1 -0
  151. package/dist/client/_nuxt/powerquery.wBQvr9E-.js +1 -0
  152. package/dist/client/_nuxt/powershell.6Y_bsqLY.js +1 -0
  153. package/dist/client/_nuxt/prisma.fG9Ut-9i.js +1 -0
  154. package/dist/client/_nuxt/prolog.vggnm0Hd.js +1 -0
  155. package/dist/client/_nuxt/proto.yigfBmiL.js +1 -0
  156. package/dist/client/_nuxt/pug.dmyiUMO7.js +1 -0
  157. package/dist/client/_nuxt/puppet.NqXa_cO1.js +1 -0
  158. package/dist/client/_nuxt/purescript.NA5qsvV2.js +7 -0
  159. package/dist/client/_nuxt/python.V9Nu427R.js +518 -0
  160. package/dist/client/_nuxt/r.xMXDrvl2.js +1 -0
  161. package/dist/client/_nuxt/raku.NSWyGF40.js +1 -0
  162. package/dist/client/_nuxt/razor.X4IfBpol.js +40 -0
  163. package/dist/client/_nuxt/red.sV5NnIRC.js +1 -0
  164. package/dist/client/_nuxt/reg.Dr-lXfN9.js +1 -0
  165. package/dist/client/_nuxt/rel.vATIbX_E.js +1 -0
  166. package/dist/client/_nuxt/riscv.L73dAZEB.js +13 -0
  167. package/dist/client/_nuxt/rose-pine-dawn.qPi4euik.js +1 -0
  168. package/dist/client/_nuxt/rose-pine-moon.Im6VgKOx.js +1 -0
  169. package/dist/client/_nuxt/rose-pine._tQyNI4L.js +1 -0
  170. package/dist/client/_nuxt/rst.GKtlS3h3.js +1 -0
  171. package/dist/client/_nuxt/ruby.P9eGVNW4.js +80 -0
  172. package/dist/client/_nuxt/rust.FLHuhIzG.js +1 -0
  173. package/dist/client/_nuxt/sas.fTu4QUYF.js +1 -0
  174. package/dist/client/_nuxt/sass.URKSWxt9.js +2 -0
  175. package/dist/client/_nuxt/scala.7DKpDMtV.js +5 -0
  176. package/dist/client/_nuxt/scheme.S0VUhbaV.js +136 -0
  177. package/dist/client/_nuxt/scss.9u5wOjnF.js +90 -0
  178. package/dist/client/_nuxt/shaderlab.MYTNW71C.js +1 -0
  179. package/dist/client/_nuxt/shellscript.82BvnTib.js +4 -0
  180. package/dist/client/_nuxt/shellsession.e2TODbDv.js +1 -0
  181. package/dist/client/_nuxt/slack-dark.1ZggNzwg.js +1 -0
  182. package/dist/client/_nuxt/slack-ochin.IcMt0x71.js +1 -0
  183. package/dist/client/_nuxt/smalltalk.ymyryZ3T.js +1 -0
  184. package/dist/client/_nuxt/solarized-dark.3DcwRX9o.js +1 -0
  185. package/dist/client/_nuxt/solarized-light.iUVMuJ2F.js +1 -0
  186. package/dist/client/_nuxt/solidity.rGqtk2dD.js +1 -0
  187. package/dist/client/_nuxt/sparql.b6B4dWwT.js +1 -0
  188. package/dist/client/_nuxt/splunk.OYnOZZCZ.js +1 -0
  189. package/dist/client/_nuxt/sql.KWFjTZGI.js +21 -0
  190. package/dist/client/_nuxt/ssh-config.jdYjUr9x.js +1 -0
  191. package/dist/client/_nuxt/stata.cF_ucIcM.js +3 -0
  192. package/dist/client/_nuxt/stylus.sPHLw37c.js +15 -0
  193. package/dist/client/_nuxt/svelte.6zdtIlwM.js +1 -0
  194. package/dist/client/_nuxt/swift.YwiPyWKn.js +544 -0
  195. package/dist/client/_nuxt/synthwave-84.QD7ZGwpp.js +1 -0
  196. package/dist/client/_nuxt/system-verilog.gwJe9XJI.js +9 -0
  197. package/dist/client/_nuxt/tasl.IM3fg-4x.js +1 -0
  198. package/dist/client/_nuxt/tcl.h_zrCUh3.js +1 -0
  199. package/dist/client/_nuxt/tex.uNByjuDB.js +1 -0
  200. package/dist/client/_nuxt/tokyo-night.3j08uV2M.js +1 -0
  201. package/dist/client/_nuxt/toml.p_xIKQcU.js +69 -0
  202. package/dist/client/_nuxt/tsx.vbVEYvAd.js +699 -0
  203. package/dist/client/_nuxt/turtle.qvOLXpiq.js +1 -0
  204. package/dist/client/_nuxt/twig.h5iAhXmS.js +40 -0
  205. package/dist/client/_nuxt/typescript.IWNmnGsa.js +666 -0
  206. package/dist/client/_nuxt/v.BcVLQyAr.js +1 -0
  207. package/dist/client/_nuxt/vanilla-picker.P0dws0ou.js +8 -0
  208. package/dist/client/_nuxt/vb.nfm3ZogP.js +1 -0
  209. package/dist/client/_nuxt/verilog.32GaFvLA.js +1 -0
  210. package/dist/client/_nuxt/vhdl.BgfvI7C9.js +515 -0
  211. package/dist/client/_nuxt/viml.Ob-szSvk.js +1 -0
  212. package/dist/client/_nuxt/vitesse-black.uLlG6AUB.js +1 -0
  213. package/dist/client/_nuxt/vitesse-dark.5VceXvs6.js +1 -0
  214. package/dist/client/_nuxt/vitesse-light.HOMMxGxw.js +1 -0
  215. package/dist/client/_nuxt/vue-html.B2XvVFLk.js +1 -0
  216. package/dist/client/_nuxt/vue.CmUal76M.js +6 -0
  217. package/dist/client/_nuxt/vyper.0ItMHLZu.js +575 -0
  218. package/dist/client/_nuxt/wasm.5qeU6UJI.js +1 -0
  219. package/dist/client/_nuxt/wenyan.gl1zQYA8.js +1 -0
  220. package/dist/client/_nuxt/wgsl.KpVp-DWl.js +1 -0
  221. package/dist/client/_nuxt/wolfram.K_QzNdW-.js +1 -0
  222. package/dist/client/_nuxt/xml.GygmfNh9.js +1 -0
  223. package/dist/client/_nuxt/xsl.TptR0G-3.js +1 -0
  224. package/dist/client/_nuxt/yaml.zytfnWoA.js +200 -0
  225. package/dist/client/_nuxt/zenscript.htRIWiQY.js +2 -0
  226. package/dist/client/_nuxt/zig.VzlkOal1.js +1 -0
  227. package/dist/client/index.html +221 -6
  228. package/dist/module.json +1 -1
  229. package/dist/runtime/core/html/applyInlineCss.mjs +4 -1
  230. package/dist/runtime/core/renderers/satori/plugins/imageSrc.mjs +49 -40
  231. package/package.json +35 -17
  232. package/dist/client/_nuxt/IconCSS.6oz918NR.css +0 -1
  233. package/dist/client/_nuxt/builds/meta/3ca7da46-fb9e-4d74-a5c1-713506e57638.json +0 -1
  234. package/dist/client/_nuxt/entry.Aqnm8nUG.js +0 -114
  235. package/dist/client/_nuxt/vanilla-picker-NKbIFE8h.vtyeXros.js +0 -8
@@ -8,55 +8,54 @@ import { useNitroOrigin } from "#imports";
8
8
  export default defineSatoriTransformer([
9
9
  // fix <img src="">
10
10
  {
11
- filter: (node) => node.type === "img",
11
+ filter: (node) => node.type === "img" && node.props?.src,
12
12
  transform: async (node, { e }) => {
13
- const src = node.props?.src;
14
- const isRelative = src?.startsWith("/");
15
- if (src) {
16
- let updated = false;
17
- let dimensions;
18
- let imageBuffer;
19
- let valid = true;
13
+ const src = node.props.src;
14
+ const isRelative = src.startsWith("/");
15
+ let dimensions;
16
+ let imageBuffer;
17
+ if (isRelative) {
20
18
  if (import.meta.prerender || import.meta.dev) {
21
19
  const key = `root:public${src.replace("./", ":").replace("/", ":")}`;
22
- if (await useStorage().hasItem(key)) {
20
+ if (await useStorage().hasItem(key))
23
21
  imageBuffer = await useStorage().getItemRaw(key);
24
- updated = !!imageBuffer;
25
- }
26
- }
27
- if (!import.meta.prerender && !updated) {
22
+ } else {
28
23
  imageBuffer = await e.$fetch(src, {
29
24
  baseURL: useNitroOrigin(e),
30
25
  responseType: "arrayBuffer"
31
26
  }).catch(() => {
32
- valid = false;
33
27
  });
34
- valid = !!imageBuffer;
35
28
  }
36
- if (valid) {
37
- node.props.src = toBase64Image(src, imageBuffer);
38
- try {
39
- const imageSize = sizeOf(Buffer.from(imageBuffer));
40
- dimensions = { width: imageSize.width, height: imageSize.height };
41
- } catch (e2) {
42
- }
43
- updated = true;
44
- }
45
- if (dimensions?.width && dimensions?.height) {
46
- const naturalAspectRatio = dimensions.width / dimensions.height;
47
- if (node.props.width && !node.props.height) {
48
- node.props.height = Math.round(node.props.width / naturalAspectRatio);
49
- } else if (node.props.height && !node.props.width) {
50
- node.props.width = Math.round(node.props.height * naturalAspectRatio);
51
- } else if (!node.props.width && !node.props.height) {
52
- node.props.width = dimensions.width;
53
- node.props.height = dimensions.height;
54
- }
29
+ } else {
30
+ imageBuffer = await $fetch(src, {
31
+ responseType: "arrayBuffer"
32
+ }).catch(() => {
33
+ });
34
+ }
35
+ if (imageBuffer)
36
+ imageBuffer = Buffer.from(imageBuffer);
37
+ if (imageBuffer) {
38
+ node.props.src = toBase64Image(src, imageBuffer);
39
+ try {
40
+ const imageSize = sizeOf(imageBuffer);
41
+ dimensions = { width: imageSize.width, height: imageSize.height };
42
+ } catch (e2) {
55
43
  }
56
- if (!updated && isRelative) {
57
- node.props.src = `${withBase(src, `${useNitroOrigin(e)}`)}?${Date.now()}`;
44
+ }
45
+ if (dimensions?.width && dimensions?.height) {
46
+ const naturalAspectRatio = dimensions.width / dimensions.height;
47
+ if (node.props.width && !node.props.height) {
48
+ node.props.height = Math.round(node.props.width / naturalAspectRatio);
49
+ } else if (node.props.height && !node.props.width) {
50
+ node.props.width = Math.round(node.props.height * naturalAspectRatio);
51
+ } else if (!node.props.width && !node.props.height) {
52
+ node.props.width = dimensions.width;
53
+ node.props.height = dimensions.height;
58
54
  }
59
55
  }
56
+ if (node.props.src.startsWith("/")) {
57
+ node.props.src = `${withBase(src, `${useNitroOrigin(e)}`)}?${Date.now()}`;
58
+ }
60
59
  }
61
60
  },
62
61
  // fix style="background-image: url('')"
@@ -64,11 +63,21 @@ export default defineSatoriTransformer([
64
63
  filter: (node) => node.props?.style?.backgroundImage?.includes("url("),
65
64
  transform: async (node, { e }) => {
66
65
  const backgroundImage = node.props.style.backgroundImage;
67
- if (backgroundImage) {
68
- const src = backgroundImage.replace(/^url\(['"]?/, "").replace(/['"]?\)$/, "");
69
- const isRelative = src?.startsWith("/");
70
- if (isRelative)
66
+ const src = backgroundImage.replace(/^url\(['"]?/, "").replace(/['"]?\)$/, "");
67
+ const isRelative = src?.startsWith("/");
68
+ if (isRelative) {
69
+ if (import.meta.prerender || import.meta.dev) {
70
+ const key = `root:public${src.replace("./", ":").replace("/", ":")}`;
71
+ if (await useStorage().hasItem(key)) {
72
+ const imageBuffer = await useStorage().getItemRaw(key);
73
+ if (imageBuffer) {
74
+ const base64 = toBase64Image(src, Buffer.from(imageBuffer));
75
+ node.props.style.backgroundImage = `url(${base64})`;
76
+ }
77
+ }
78
+ } else {
71
79
  node.props.style.backgroundImage = `url(${withBase(src, `${useNitroOrigin(e)}`)}?${Date.now()})`;
80
+ }
72
81
  }
73
82
  }
74
83
  }
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "nuxt-og-image",
3
3
  "type": "module",
4
- "version": "3.0.0-rc.26",
4
+ "version": "3.0.0-rc.28",
5
5
  "packageManager": "pnpm@8.14.1",
6
6
  "description": "Enlightened OG Image generation for Nuxt.",
7
7
  "author": {
@@ -33,11 +33,17 @@
33
33
  "virtual.d.ts"
34
34
  ],
35
35
  "dependencies": {
36
- "@css-inline/css-inline": "^0.12.1",
37
- "@css-inline/css-inline-wasm": "^0.12.1",
36
+ "flatted": "^3.2.9",
37
+ "json-editor-vue": "^0.12.0",
38
+ "nuxt-icon": "^0.6.8",
39
+ "shikiji": "^0.10.0-beta.9",
40
+ "splitpanes": "^3.1.5",
41
+ "vanilla-jsoneditor": "^0.21.3",
42
+ "@css-inline/css-inline": "^0.13.0",
43
+ "@css-inline/css-inline-wasm": "^0.13.0",
38
44
  "@iconify-json/noto": "^1.1.18",
39
45
  "@nuxt/devtools-kit": "^1.0.8",
40
- "@nuxt/kit": "^3.9.1",
46
+ "@nuxt/kit": "^3.9.3",
41
47
  "@resvg/resvg-js": "^2.6.0",
42
48
  "@resvg/resvg-wasm": "^2.6.0",
43
49
  "@unocss/core": "^0.58.3",
@@ -46,16 +52,16 @@
46
52
  "chrome-launcher": "^1.1.0",
47
53
  "defu": "^6.1.4",
48
54
  "execa": "^8.0.1",
49
- "floating-vue": "5.0.3",
55
+ "floating-vue": "5.2.0",
50
56
  "image-size": "^1.1.1",
51
- "nuxt-site-config": "^2.2.5",
52
- "nuxt-site-config-kit": "^2.2.5",
57
+ "nuxt-site-config": "^2.2.7",
58
+ "nuxt-site-config-kit": "^2.2.7",
53
59
  "nypm": "^0.3.4",
54
60
  "ofetch": "^1.3.3",
55
61
  "ohash": "^1.1.3",
56
62
  "pathe": "^1.1.2",
57
63
  "pkg-types": "^1.0.3",
58
- "playwright-core": "^1.40.1",
64
+ "playwright-core": "^1.41.1",
59
65
  "radix3": "^1.1.0",
60
66
  "satori": "0.10.11",
61
67
  "satori-html": "^0.3.2",
@@ -66,27 +72,39 @@
66
72
  "yoga-wasm-web": "^0.3.3"
67
73
  },
68
74
  "devDependencies": {
69
- "@antfu/eslint-config": "2.6.2",
75
+ "@antfu/eslint-config": "2.6.3",
70
76
  "@img/sharp-linux-x64": "0.33.2",
71
77
  "@nuxt/content": "^2.10.0",
72
78
  "@nuxt/devtools": "1.0.8",
73
79
  "@nuxt/module-builder": "^0.5.5",
74
- "@nuxt/test-utils": "3.9.0",
75
- "@nuxt/ui": "^2.12.0",
80
+ "@nuxt/test-utils": "3.10.0",
81
+ "@nuxt/ui": "^2.12.3",
76
82
  "@nuxtjs/eslint-config-typescript": "^12.1.0",
77
83
  "@nuxtjs/i18n": "8.0.0",
78
- "@nuxtjs/tailwindcss": "^6.10.4",
84
+ "@nuxtjs/tailwindcss": "^6.11.0",
79
85
  "@unocss/nuxt": "^0.58.3",
80
- "bumpp": "^9.2.1",
86
+ "bumpp": "^9.3.0",
81
87
  "eslint": "8.56.0",
82
88
  "jest-image-snapshot": "^6.4.0",
83
- "nuxt": "^3.9.1",
89
+ "nuxt": "^3.9.3",
84
90
  "nuxt-icon": "0.6.8",
85
- "playwright": "^1.40.1",
86
- "sass": "^1.69.7",
91
+ "playwright": "^1.41.1",
92
+ "sass": "^1.70.0",
87
93
  "sharp": "^0.33.2",
88
94
  "typescript": "^5.3.3",
89
- "vitest": "^1.2.0"
95
+ "vitest": "^1.2.1",
96
+ "@headlessui/vue": "^1.7.17",
97
+ "@iconify-json/carbon": "^1.1.27",
98
+ "@iconify-json/logos": "^1.1.42",
99
+ "@iconify-json/ri": "^1.1.19",
100
+ "@iconify-json/tabler": "^1.1.104",
101
+ "@nuxt/devtools-ui-kit": "^1.0.8",
102
+ "@nuxtjs/color-mode": "^3.3.2",
103
+ "@unocss/preset-icons": "^0.58.3",
104
+ "@unocss/preset-uno": "^0.58.3",
105
+ "@unocss/runtime": "^0.58.3",
106
+ "@vueuse/nuxt": "^10.7.2",
107
+ "unocss": "^0.58.3"
90
108
  },
91
109
  "build": {
92
110
  "externals": [
@@ -1 +0,0 @@
1
- span[data-v-f7bd87a9]{background-color:currentColor;display:inline-block;-webkit-mask-image:var(--1b6a0df6);mask-image:var(--1b6a0df6);-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%;vertical-align:middle}
@@ -1 +0,0 @@
1
- {"id":"3ca7da46-fb9e-4d74-a5c1-713506e57638","timestamp":1705207550933,"matcher":{"static":{},"wildcard":{},"dynamic":{}},"prerendered":[]}