nuxt-og-image 5.1.10 → 5.1.12

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 (195) hide show
  1. package/dist/client/200.html +1 -0
  2. package/dist/client/404.html +1 -0
  3. package/dist/client/_nuxt/B8PEiB0p.js +1 -0
  4. package/dist/client/_nuxt/CD9VIl4i.js +4062 -0
  5. package/dist/client/_nuxt/CI_lqgv7.js +1 -0
  6. package/dist/client/_nuxt/CVO1_9PV.js +1 -0
  7. package/dist/client/_nuxt/Cp-IABpG.js +1 -0
  8. package/dist/client/_nuxt/D0r3Knsf.js +1 -0
  9. package/dist/client/_nuxt/Dz8kdfgF.js +1 -0
  10. package/dist/client/_nuxt/builds/latest.json +1 -0
  11. package/dist/client/_nuxt/builds/meta/71b0f7ea-9aae-4c28-bbd9-8eea71b82dfb.json +1 -0
  12. package/dist/client/_nuxt/entry.DNM8P-MU.css +1 -0
  13. package/dist/client/_nuxt/error-404.C2mGI6Vt.css +1 -0
  14. package/dist/client/_nuxt/error-500.ClHbVBiL.css +1 -0
  15. package/dist/client/_nuxt/l5rcX3cq.js +8 -0
  16. package/dist/client/index.html +1 -0
  17. package/dist/content.cjs +22 -0
  18. package/dist/content.d.cts +46 -0
  19. package/dist/content.d.mts +46 -0
  20. package/dist/content.d.ts +46 -0
  21. package/dist/content.mjs +18 -0
  22. package/dist/module.cjs +1027 -0
  23. package/dist/module.d.cts +109 -0
  24. package/dist/module.d.mts +109 -0
  25. package/dist/module.d.ts +109 -0
  26. package/dist/module.json +12 -0
  27. package/dist/module.mjs +1007 -0
  28. package/dist/runtime/app/components/OgImage/OgImage.d.ts +3 -0
  29. package/dist/runtime/app/components/OgImage/OgImage.js +10 -0
  30. package/dist/runtime/app/components/OgImage/OgImageScreenshot.d.ts +3 -0
  31. package/dist/runtime/app/components/OgImage/OgImageScreenshot.js +10 -0
  32. package/dist/runtime/app/components/Templates/Community/BrandedLogo.d.vue.ts +13 -0
  33. package/dist/runtime/app/components/Templates/Community/BrandedLogo.vue +22 -0
  34. package/dist/runtime/app/components/Templates/Community/BrandedLogo.vue.d.ts +13 -0
  35. package/dist/runtime/app/components/Templates/Community/Frame.d.vue.ts +21 -0
  36. package/dist/runtime/app/components/Templates/Community/Frame.vue +58 -0
  37. package/dist/runtime/app/components/Templates/Community/Frame.vue.d.ts +21 -0
  38. package/dist/runtime/app/components/Templates/Community/Nuxt.d.vue.ts +12 -0
  39. package/dist/runtime/app/components/Templates/Community/Nuxt.vue +179 -0
  40. package/dist/runtime/app/components/Templates/Community/Nuxt.vue.d.ts +12 -0
  41. package/dist/runtime/app/components/Templates/Community/NuxtSeo.d.vue.ts +15 -0
  42. package/dist/runtime/app/components/Templates/Community/NuxtSeo.vue +103 -0
  43. package/dist/runtime/app/components/Templates/Community/NuxtSeo.vue.d.ts +15 -0
  44. package/dist/runtime/app/components/Templates/Community/Pergel.d.vue.ts +12 -0
  45. package/dist/runtime/app/components/Templates/Community/Pergel.vue +98 -0
  46. package/dist/runtime/app/components/Templates/Community/Pergel.vue.d.ts +12 -0
  47. package/dist/runtime/app/components/Templates/Community/SimpleBlog.d.vue.ts +9 -0
  48. package/dist/runtime/app/components/Templates/Community/SimpleBlog.vue +27 -0
  49. package/dist/runtime/app/components/Templates/Community/SimpleBlog.vue.d.ts +9 -0
  50. package/dist/runtime/app/components/Templates/Community/UnJs.d.vue.ts +21 -0
  51. package/dist/runtime/app/components/Templates/Community/UnJs.vue +99 -0
  52. package/dist/runtime/app/components/Templates/Community/UnJs.vue.d.ts +21 -0
  53. package/dist/runtime/app/components/Templates/Community/Wave.d.vue.ts +11 -0
  54. package/dist/runtime/app/components/Templates/Community/Wave.vue +28 -0
  55. package/dist/runtime/app/components/Templates/Community/Wave.vue.d.ts +11 -0
  56. package/dist/runtime/app/components/Templates/Community/WithEmoji.d.vue.ts +13 -0
  57. package/dist/runtime/app/components/Templates/Community/WithEmoji.vue +21 -0
  58. package/dist/runtime/app/components/Templates/Community/WithEmoji.vue.d.ts +13 -0
  59. package/dist/runtime/app/composables/defineOgImage.d.ts +2 -0
  60. package/dist/runtime/app/composables/defineOgImage.js +43 -0
  61. package/dist/runtime/app/composables/defineOgImageComponent.d.ts +3 -0
  62. package/dist/runtime/app/composables/defineOgImageComponent.js +8 -0
  63. package/dist/runtime/app/composables/defineOgImageScreenshot.d.ts +2 -0
  64. package/dist/runtime/app/composables/defineOgImageScreenshot.js +14 -0
  65. package/dist/runtime/app/composables/mock.d.ts +5 -0
  66. package/dist/runtime/app/composables/mock.js +20 -0
  67. package/dist/runtime/app/plugins/__zero-runtime/og-image-canonical-urls.server.d.ts +2 -0
  68. package/dist/runtime/app/plugins/__zero-runtime/og-image-canonical-urls.server.js +9 -0
  69. package/dist/runtime/app/plugins/__zero-runtime/route-rule-og-image.server.d.ts +2 -0
  70. package/dist/runtime/app/plugins/__zero-runtime/route-rule-og-image.server.js +9 -0
  71. package/dist/runtime/app/plugins/og-image-canonical-urls.server.d.ts +2 -0
  72. package/dist/runtime/app/plugins/og-image-canonical-urls.server.js +7 -0
  73. package/dist/runtime/app/plugins/route-rule-og-image.server.d.ts +2 -0
  74. package/dist/runtime/app/plugins/route-rule-og-image.server.js +7 -0
  75. package/dist/runtime/app/utils/plugins.d.ts +3 -0
  76. package/dist/runtime/app/utils/plugins.js +92 -0
  77. package/dist/runtime/app/utils.d.ts +7 -0
  78. package/dist/runtime/app/utils.js +94 -0
  79. package/dist/runtime/assets/Inter-normal-400.ttf.base64 +1 -0
  80. package/dist/runtime/assets/Inter-normal-700.ttf.base64 +1 -0
  81. package/dist/runtime/logger.d.ts +2 -0
  82. package/dist/runtime/logger.js +8 -0
  83. package/dist/runtime/mock/empty.d.ts +2 -0
  84. package/dist/runtime/mock/empty.js +2 -0
  85. package/dist/runtime/mock/proxy-cjs.d.ts +2 -0
  86. package/dist/runtime/mock/proxy-cjs.js +2 -0
  87. package/dist/runtime/server/og-image/bindings/chromium/chrome-launcher.d.ts +2 -0
  88. package/dist/runtime/server/og-image/bindings/chromium/chrome-launcher.js +9 -0
  89. package/dist/runtime/server/og-image/bindings/chromium/on-demand.d.ts +2 -0
  90. package/dist/runtime/server/og-image/bindings/chromium/on-demand.js +40 -0
  91. package/dist/runtime/server/og-image/bindings/chromium/playwright.d.ts +2 -0
  92. package/dist/runtime/server/og-image/bindings/chromium/playwright.js +6 -0
  93. package/dist/runtime/server/og-image/bindings/css-inline/node.d.ts +8 -0
  94. package/dist/runtime/server/og-image/bindings/css-inline/node.js +7 -0
  95. package/dist/runtime/server/og-image/bindings/css-inline/wasm-fs.d.ts +7 -0
  96. package/dist/runtime/server/og-image/bindings/css-inline/wasm-fs.js +8 -0
  97. package/dist/runtime/server/og-image/bindings/css-inline/wasm.d.ts +7 -0
  98. package/dist/runtime/server/og-image/bindings/css-inline/wasm.js +7 -0
  99. package/dist/runtime/server/og-image/bindings/resvg/node.d.ts +6 -0
  100. package/dist/runtime/server/og-image/bindings/resvg/node.js +5 -0
  101. package/dist/runtime/server/og-image/bindings/resvg/wasm-fs.d.ts +40 -0
  102. package/dist/runtime/server/og-image/bindings/resvg/wasm-fs.js +6 -0
  103. package/dist/runtime/server/og-image/bindings/resvg/wasm.d.ts +40 -0
  104. package/dist/runtime/server/og-image/bindings/resvg/wasm.js +5 -0
  105. package/dist/runtime/server/og-image/bindings/satori/node.d.ts +6 -0
  106. package/dist/runtime/server/og-image/bindings/satori/node.js +5 -0
  107. package/dist/runtime/server/og-image/bindings/satori/wasm-fs.d.ts +6 -0
  108. package/dist/runtime/server/og-image/bindings/satori/wasm-fs.js +13 -0
  109. package/dist/runtime/server/og-image/bindings/satori/wasm.d.ts +6 -0
  110. package/dist/runtime/server/og-image/bindings/satori/wasm.js +13 -0
  111. package/dist/runtime/server/og-image/bindings/sharp/node.d.ts +2 -0
  112. package/dist/runtime/server/og-image/bindings/sharp/node.js +2 -0
  113. package/dist/runtime/server/og-image/cache/lru.d.ts +9 -0
  114. package/dist/runtime/server/og-image/cache/lru.js +15 -0
  115. package/dist/runtime/server/og-image/cache/mock.d.ts +9 -0
  116. package/dist/runtime/server/og-image/cache/mock.js +9 -0
  117. package/dist/runtime/server/og-image/chromium/renderer.d.ts +3 -0
  118. package/dist/runtime/server/og-image/chromium/renderer.js +24 -0
  119. package/dist/runtime/server/og-image/chromium/screenshot.d.ts +4 -0
  120. package/dist/runtime/server/og-image/chromium/screenshot.js +54 -0
  121. package/dist/runtime/server/og-image/context.d.ts +5 -0
  122. package/dist/runtime/server/og-image/context.js +283 -0
  123. package/dist/runtime/server/og-image/instances.d.ts +2 -0
  124. package/dist/runtime/server/og-image/instances.js +10 -0
  125. package/dist/runtime/server/og-image/satori/font.d.ts +3 -0
  126. package/dist/runtime/server/og-image/satori/font.js +40 -0
  127. package/dist/runtime/server/og-image/satori/instances.d.ts +41 -0
  128. package/dist/runtime/server/og-image/satori/instances.js +23 -0
  129. package/dist/runtime/server/og-image/satori/plugins/classes.d.ts +2 -0
  130. package/dist/runtime/server/og-image/satori/plugins/classes.js +17 -0
  131. package/dist/runtime/server/og-image/satori/plugins/emojis.d.ts +2 -0
  132. package/dist/runtime/server/og-image/satori/plugins/emojis.js +28 -0
  133. package/dist/runtime/server/og-image/satori/plugins/encoding.d.ts +2 -0
  134. package/dist/runtime/server/og-image/satori/plugins/encoding.js +17 -0
  135. package/dist/runtime/server/og-image/satori/plugins/flex.d.ts +2 -0
  136. package/dist/runtime/server/og-image/satori/plugins/flex.js +60 -0
  137. package/dist/runtime/server/og-image/satori/plugins/imageSrc.d.ts +2 -0
  138. package/dist/runtime/server/og-image/satori/plugins/imageSrc.js +107 -0
  139. package/dist/runtime/server/og-image/satori/plugins/nuxt-icon.d.ts +2 -0
  140. package/dist/runtime/server/og-image/satori/plugins/nuxt-icon.js +20 -0
  141. package/dist/runtime/server/og-image/satori/plugins/unocss.d.ts +2 -0
  142. package/dist/runtime/server/og-image/satori/plugins/unocss.js +55 -0
  143. package/dist/runtime/server/og-image/satori/renderer.d.ts +4 -0
  144. package/dist/runtime/server/og-image/satori/renderer.js +123 -0
  145. package/dist/runtime/server/og-image/satori/transforms/emojis.d.ts +3 -0
  146. package/dist/runtime/server/og-image/satori/transforms/emojis.js +3595 -0
  147. package/dist/runtime/server/og-image/satori/transforms/inlineCss.d.ts +3 -0
  148. package/dist/runtime/server/og-image/satori/transforms/inlineCss.js +51 -0
  149. package/dist/runtime/server/og-image/satori/utils.d.ts +3 -0
  150. package/dist/runtime/server/og-image/satori/utils.js +24 -0
  151. package/dist/runtime/server/og-image/satori/vnodes.d.ts +2 -0
  152. package/dist/runtime/server/og-image/satori/vnodes.js +40 -0
  153. package/dist/runtime/server/og-image/templates/html.d.ts +2 -0
  154. package/dist/runtime/server/og-image/templates/html.js +112 -0
  155. package/dist/runtime/server/plugins/__zero-runtime/nuxt-content-v2.d.ts +2 -0
  156. package/dist/runtime/server/plugins/__zero-runtime/nuxt-content-v2.js +9 -0
  157. package/dist/runtime/server/plugins/nuxt-content-v2.d.ts +2 -0
  158. package/dist/runtime/server/plugins/nuxt-content-v2.js +5 -0
  159. package/dist/runtime/server/plugins/prerender.d.ts +2 -0
  160. package/dist/runtime/server/plugins/prerender.js +38 -0
  161. package/dist/runtime/server/routes/__zero-runtime/font.d.ts +2 -0
  162. package/dist/runtime/server/routes/__zero-runtime/font.js +8 -0
  163. package/dist/runtime/server/routes/__zero-runtime/image.d.ts +2 -0
  164. package/dist/runtime/server/routes/__zero-runtime/image.js +8 -0
  165. package/dist/runtime/server/routes/debug.json.d.ts +7 -0
  166. package/dist/runtime/server/routes/debug.json.js +15 -0
  167. package/dist/runtime/server/routes/font.d.ts +2 -0
  168. package/dist/runtime/server/routes/font.js +3 -0
  169. package/dist/runtime/server/routes/image.d.ts +2 -0
  170. package/dist/runtime/server/routes/image.js +3 -0
  171. package/dist/runtime/server/tsconfig.json +3 -0
  172. package/dist/runtime/server/util/cache.d.ts +10 -0
  173. package/dist/runtime/server/util/cache.js +74 -0
  174. package/dist/runtime/server/util/encoding.d.ts +3 -0
  175. package/dist/runtime/server/util/encoding.js +15 -0
  176. package/dist/runtime/server/util/eventHandlers.d.ts +3 -0
  177. package/dist/runtime/server/util/eventHandlers.js +156 -0
  178. package/dist/runtime/server/util/kit.d.ts +6 -0
  179. package/dist/runtime/server/util/kit.js +32 -0
  180. package/dist/runtime/server/util/logger.d.ts +1 -0
  181. package/dist/runtime/server/util/logger.js +6 -0
  182. package/dist/runtime/server/util/options.d.ts +2 -0
  183. package/dist/runtime/server/util/options.js +18 -0
  184. package/dist/runtime/server/util/plugins.d.ts +2 -0
  185. package/dist/runtime/server/util/plugins.js +56 -0
  186. package/dist/runtime/server/util/wasm.d.ts +2 -0
  187. package/dist/runtime/server/util/wasm.js +16 -0
  188. package/dist/runtime/server/utils.d.ts +4 -0
  189. package/dist/runtime/server/utils.js +20 -0
  190. package/dist/runtime/shared.d.ts +15 -0
  191. package/dist/runtime/shared.js +132 -0
  192. package/dist/runtime/types.d.ts +187 -0
  193. package/dist/runtime/types.js +0 -0
  194. package/dist/types.d.mts +9 -0
  195. package/package.json +32 -32
@@ -0,0 +1,98 @@
1
+ <script setup>
2
+ import { computed } from "vue";
3
+ const props = defineProps({
4
+ title: { type: String, required: false, default: "title" },
5
+ description: { type: String, required: false, default: "description" },
6
+ headline: { type: String, required: false, default: "headline" }
7
+ });
8
+ const title = computed(() => props.title.slice(0, 60));
9
+ </script>
10
+
11
+ <template>
12
+ <div class="w-full h-full flex flex-col justify-center bg-[#212121]">
13
+ <svg class="absolute top-0 right-0" width="1200" height="675" viewBox="0 0 1200 675" fill="none" xmlns="http://www.w3.org/2000/svg">
14
+ <g style="mix-blend-mode:overlay" opacity="0.7" filter="url(#filter0_f_448_25)">
15
+ <circle cx="901.5" cy="45.5" r="199.5" fill="#FFA7A7" />
16
+ <circle cx="600.5" cy="216.5" r="199.5" fill="#FFCC49" />
17
+ <circle cx="179.5" cy="317.5" r="199.5" fill="#FFA149" />
18
+ </g>
19
+ <defs>
20
+ <filter id="filter0_f_448_25" x="-240" y="-374" width="1561" height="1111" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">
21
+ <feFlood flood-opacity="0" result="BackgroundImageFix" />
22
+ <feBlend mode="normal" in="SourceGraphic" in2="BackgroundImageFix" result="shape" />
23
+ <feGaussianBlur stdDeviation="110" result="effect1_foregroundBlur_448_25" />
24
+ </filter>
25
+ </defs>
26
+ </svg>
27
+
28
+ <div class="w-[600px] pl-[100px]">
29
+ <p v-if="headline" class="uppercase text-[24px] text-[#FEC476] mb-4 font-semibold">
30
+ {{ headline }}
31
+ </p>
32
+ <h1 class="w-[600px] m-0 text-[75px] font-semibold mb-4 text-white" style="display: block; line-clamp: 2; text-overflow: ellipsis;">
33
+ {{ title }}
34
+ </h1>
35
+ <p class="text-[32px] text-[#E4E4E7] leading-tight" style="display: block; line-clamp: 3; text-overflow: ellipsis;">
36
+ {{ description }}
37
+ </p>
38
+ </div>
39
+
40
+ <svg class="absolute top-[250px] right-[190px]" width="241" height="184" viewBox="0 0 241 184" fill="none" xmlns="http://www.w3.org/2000/svg">
41
+ <g filter="url(#filter0_ddd_563_6)">
42
+ <path d="M204.852 126.822C204.852 127.098 204.677 128.114 202.583 129.748C200.551 131.335 197.276 133.034 192.613 134.687C183.325 137.979 169.872 140.62 153.875 142.19C137.92 143.755 120.334 144.166 103.363 143.367C86.3776 142.566 70.8801 140.594 58.8213 137.738C52.7901 136.31 47.8449 134.713 44.0617 133.037C40.1988 131.325 37.891 129.679 36.7621 128.335C36.2309 127.702 36.0703 127.267 36.0227 127.035C35.9829 126.842 35.9842 126.629 36.1192 126.305C36.459 125.488 37.6413 124.038 40.7165 122.28C46.7614 118.823 57.5073 115.641 71.9244 113.359C86.2251 111.096 103.109 109.879 120.426 109.879" stroke="url(#paint0_angular_563_6)" stroke-width="8" />
43
+ </g>
44
+ <g clip-path="url(#clip0_563_6)">
45
+ <g filter="url(#filter1_i_563_6)">
46
+ <path d="M211.514 112.29L209.41 124.066L200.573 115.781L182.897 61.0337C186.772 60.5223 190.442 59.2291 193.777 57.2455L211.514 112.29ZM196.523 35.7822C195.733 40.2018 193.22 44.1268 189.537 46.6936C185.853 49.2604 181.301 50.2588 176.881 49.4691L174.437 49.0324L131.693 103.474L120.534 108.187L122.638 96.4106L165.598 41.721C160.708 33.7969 163.149 23.3421 171.139 18.407C174.615 16.2766 178.781 15.416 182.836 16.1405L184.821 5.03095C186.294 5.29416 187.603 6.13183 188.458 7.35968C189.314 8.58752 189.647 10.105 189.383 11.5782L188.212 18.1328C194.461 21.6568 197.783 28.7276 196.523 35.7822ZM185.413 33.7973C185.677 32.3241 185.344 30.8066 184.488 29.5788C183.633 28.3509 182.324 27.5133 180.851 27.25C179.378 26.9868 177.861 27.3196 176.633 28.1752C175.405 29.0308 174.567 30.3391 174.304 31.8123C174.041 33.2856 174.374 34.803 175.229 36.0308C176.085 37.2587 177.393 38.0964 178.866 38.3596C180.339 38.6228 181.857 38.29 183.085 37.4344C184.313 36.5788 185.15 35.2705 185.413 33.7973Z" fill="url(#paint1_diamond_563_6)" />
47
+ </g>
48
+ </g>
49
+ <defs>
50
+ <filter id="filter0_ddd_563_6" x="-3.8147e-05" y="77.8786" width="240.852" height="105.886" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">
51
+ <feFlood flood-opacity="0" result="BackgroundImageFix" />
52
+ <feColorMatrix in="SourceAlpha" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0" result="hardAlpha" />
53
+ <feOffset dy="3.62319" />
54
+ <feGaussianBlur stdDeviation="7.24638" />
55
+ <feComposite in2="hardAlpha" operator="out" />
56
+ <feColorMatrix type="matrix" values="0 0 0 0 1 0 0 0 0 0.667391 0 0 0 0 0.3625 0 0 0 0.75 0" />
57
+ <feBlend mode="normal" in2="BackgroundImageFix" result="effect1_dropShadow_563_6" />
58
+ <feColorMatrix in="SourceAlpha" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0" result="hardAlpha" />
59
+ <feOffset dy="4" />
60
+ <feGaussianBlur stdDeviation="16" />
61
+ <feComposite in2="hardAlpha" operator="out" />
62
+ <feColorMatrix type="matrix" values="0 0 0 0 1 0 0 0 0 0.854792 0 0 0 0 0.4875 0 0 0 0.25 0" />
63
+ <feBlend mode="normal" in2="effect1_dropShadow_563_6" result="effect2_dropShadow_563_6" />
64
+ <feColorMatrix in="SourceAlpha" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0" result="hardAlpha" />
65
+ <feOffset dy="4" />
66
+ <feGaussianBlur stdDeviation="2" />
67
+ <feComposite in2="hardAlpha" operator="out" />
68
+ <feColorMatrix type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.25 0" />
69
+ <feBlend mode="normal" in2="effect2_dropShadow_563_6" result="effect3_dropShadow_563_6" />
70
+ <feBlend mode="normal" in="SourceGraphic" in2="effect3_dropShadow_563_6" result="shape" />
71
+ </filter>
72
+ <filter id="filter1_i_563_6" x="120.534" y="5.03094" width="94.9804" height="123.035" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">
73
+ <feFlood flood-opacity="0" result="BackgroundImageFix" />
74
+ <feBlend mode="normal" in="SourceGraphic" in2="BackgroundImageFix" result="shape" />
75
+ <feColorMatrix in="SourceAlpha" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0" result="hardAlpha" />
76
+ <feOffset dx="7" dy="5" />
77
+ <feGaussianBlur stdDeviation="2" />
78
+ <feComposite in2="hardAlpha" operator="arithmetic" k2="-1" k3="1" />
79
+ <feColorMatrix type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.25 0" />
80
+ <feBlend mode="normal" in2="shape" result="effect1_innerShadow_563_6" />
81
+ </filter>
82
+ <radialGradient id="paint0_angular_563_6" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="translate(120.426 126.822) rotate(90) scale(20.943 88.4261)">
83
+ <stop offset="0.0677083" stop-color="#FFE092" />
84
+ <stop offset="0.333333" stop-color="#FFD792" />
85
+ <stop offset="0.666667" stop-color="#FFD192" />
86
+ <stop offset="1" stop-color="#FFAC5F" />
87
+ </radialGradient>
88
+ <radialGradient id="paint1_diamond_563_6" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="translate(303.899 145.741) rotate(-155.036) scale(253.361 239.508)">
89
+ <stop offset="0.333674" stop-color="#FEC479" />
90
+ <stop offset="1" stop-color="white" stop-opacity="0" />
91
+ </radialGradient>
92
+ <clipPath id="clip0_563_6">
93
+ <rect width="135.426" height="135.426" fill="white" transform="translate(96.5743)" />
94
+ </clipPath>
95
+ </defs>
96
+ </svg>
97
+ </div>
98
+ </template>
@@ -0,0 +1,12 @@
1
+ type __VLS_Props = {
2
+ title?: string;
3
+ description?: string;
4
+ headline?: string;
5
+ };
6
+ declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {
7
+ title: string;
8
+ description: string;
9
+ headline: string;
10
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
11
+ declare const _default: typeof __VLS_export;
12
+ export default _default;
@@ -0,0 +1,9 @@
1
+ type __VLS_Props = {
2
+ title?: string;
3
+ website?: string;
4
+ };
5
+ declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {
6
+ title: string;
7
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
8
+ declare const _default: typeof __VLS_export;
9
+ export default _default;
@@ -0,0 +1,27 @@
1
+ <script setup>
2
+ import { useSiteConfig } from "#site-config/app/composables";
3
+ import { parseURL } from "ufo";
4
+ import { computed } from "vue";
5
+ const props = defineProps({
6
+ title: { type: String, required: false, default: "title" },
7
+ website: { type: String, required: false }
8
+ });
9
+ const website = computed(() => {
10
+ return props.website || parseURL(useSiteConfig().url).host;
11
+ });
12
+ </script>
13
+
14
+ <template>
15
+ <div class="h-full w-full flex items-start justify-start border-solid border-blue-500 border-[12px] bg-gray-50">
16
+ <div class="flex items-start justify-start h-full">
17
+ <div class="flex flex-col justify-between w-full h-full">
18
+ <h1 class="text-[80px] p-20 font-black text-left" style="display: block; line-clamp: 2; text-overflow: ellipsis;">
19
+ {{ title }}
20
+ </h1>
21
+ <p class="text-2xl pb-10 px-20 font-bold mb-0" style="display: block; line-clamp: 3; text-overflow: ellipsis;">
22
+ {{ website }}
23
+ </p>
24
+ </div>
25
+ </div>
26
+ </div>
27
+ </template>
@@ -0,0 +1,9 @@
1
+ type __VLS_Props = {
2
+ title?: string;
3
+ website?: string;
4
+ };
5
+ declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {
6
+ title: string;
7
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
8
+ declare const _default: typeof __VLS_export;
9
+ export default _default;
@@ -0,0 +1,21 @@
1
+ /**
2
+ * @credits UnJS <https://unjs.io/>
3
+ */
4
+ type __VLS_Props = {
5
+ title?: string;
6
+ description?: string;
7
+ emoji?: string;
8
+ downloads?: string | number;
9
+ stars?: string | number;
10
+ contributors?: string | number;
11
+ };
12
+ declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {
13
+ title: string;
14
+ description: string;
15
+ emoji: string;
16
+ downloads: string | number;
17
+ stars: string | number;
18
+ contributors: string | number;
19
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
20
+ declare const _default: typeof __VLS_export;
21
+ export default _default;
@@ -0,0 +1,99 @@
1
+ <script setup>
2
+ import { computed } from "vue";
3
+ const props = defineProps({
4
+ title: { type: String, required: false, default: "unjs/h3" },
5
+ description: { type: String, required: false, default: "Minimal H(TTP) framework built for high performance and portability" },
6
+ emoji: { type: String, required: false, default: "\u26A1" },
7
+ downloads: { type: [String, Number], required: false, default: "2500000" },
8
+ stars: { type: [String, Number], required: false, default: "2400" },
9
+ contributors: { type: [String, Number], required: false, default: "30" }
10
+ });
11
+ const org = computed(() => props.title.split("/")[0]);
12
+ const repo = computed(() => props.title.split("/")[1]);
13
+ const stars = computed(() => {
14
+ return new Intl.NumberFormat("en-US", { notation: "compact", compactDisplay: "short" }).format(Number(props.stars || 0));
15
+ });
16
+ const downloads = computed(
17
+ () => new Intl.NumberFormat("en-US", { notation: "compact", compactDisplay: "short" }).format(Number(props.downloads || 0))
18
+ );
19
+ const description = computed(() => (props.description || "").slice(0, 200));
20
+ </script>
21
+
22
+ <template>
23
+ <div class="w-full h-full flex flex-col bg-white">
24
+ <div class="pt-[60px] pb-[70px] px-[6.75rem] h-full flex flex-col justify-between">
25
+ <div class="flex flex-row justify-between">
26
+ <div class="max-w-[700px]">
27
+ <h1 class="mb-[30px] max-w-[700px] text-[60px] text-gray-900 font-normal flex flex-row">
28
+ <p style="display: block; overflow: hidden; line-clamp: 1; text-overflow: clip;">
29
+ {{ org }}
30
+ </p>
31
+ <p v-if="repo" style="display: block; overflow: hidden; line-clamp: 1; text-overflow: clip;" class="ml-2">
32
+ /
33
+ </p>
34
+ <p v-if="repo" style="display: block; overflow: hidden; line-clamp: 1; text-overflow: clip;" class="ml-2 font-bold">
35
+ {{ repo }}
36
+ </p>
37
+ </h1>
38
+ <p class="text-gray-500 max-w-[700px] text-[35px] leading-[60px]" style="display: block; line-clamp: 3; text-overflow: ellipsis;">
39
+ {{ description }}
40
+ </p>
41
+ </div>
42
+ <div class="text-[200px]">
43
+ {{ emoji }}
44
+ </div>
45
+ </div>
46
+ <div class="flex flex-row items-center justify-between">
47
+ <div class="flex flex-row text-[40px]">
48
+ <div class="flex flex-row pr-10">
49
+ <svg xmlns="http://www.w3.org/2000/svg" width="1em" height="1em" viewBox="0 0 32 32"><path fill="#888888" d="m4.67 28l6.39-12l7.3 6.49a2 2 0 0 0 1.7.47a2 2 0 0 0 1.42-1.07L27 10.9l-1.82-.9l-5.49 11l-7.3-6.49a2 2 0 0 0-1.68-.51a2 2 0 0 0-1.42 1L4 25V2H2v26a2 2 0 0 0 2 2h26v-2Z" /></svg>
50
+ <div class="pl-2">
51
+ <div>{{ downloads }}</div>
52
+ <div class="text-lg text-gray-600">
53
+ Monthly Downloads
54
+ </div>
55
+ </div>
56
+ </div>
57
+ <div class="flex flex-row pr-10">
58
+ <svg xmlns="http://www.w3.org/2000/svg" width="1em" height="1em" viewBox="0 0 32 32"><path fill="#888888" d="m16 6.52l2.76 5.58l.46 1l1 .15l6.16.89l-4.38 4.3l-.75.73l.18 1l1.05 6.13l-5.51-2.89L16 23l-.93.49l-5.51 2.85l1-6.13l.18-1l-.74-.77l-4.42-4.35l6.16-.89l1-.15l.46-1L16 6.52M16 2l-4.55 9.22l-10.17 1.47l7.36 7.18L6.9 30l9.1-4.78L25.1 30l-1.74-10.13l7.36-7.17l-10.17-1.48Z" /></svg>
59
+ <div class="pl-2">
60
+ <div>{{ stars }}</div>
61
+ <div class="text-lg text-gray-600">
62
+ Stars
63
+ </div>
64
+ </div>
65
+ </div>
66
+ <div class="flex flex-row pr-10">
67
+ <svg xmlns="http://www.w3.org/2000/svg" width="1em" height="1em" viewBox="0 0 32 32"><path fill="#888888" d="M22.45 6a5.47 5.47 0 0 1 3.91 1.64a5.7 5.7 0 0 1 0 8L16 26.13L5.64 15.64a5.7 5.7 0 0 1 0-8a5.48 5.48 0 0 1 7.82 0l2.54 2.6l2.53-2.58A5.44 5.44 0 0 1 22.45 6m0-2a7.47 7.47 0 0 0-5.34 2.24L16 7.36l-1.11-1.12a7.49 7.49 0 0 0-10.68 0a7.72 7.72 0 0 0 0 10.82L16 29l11.79-11.94a7.72 7.72 0 0 0 0-10.82A7.49 7.49 0 0 0 22.45 4Z" /></svg>
68
+ <div class="pl-2">
69
+ <div>{{ contributors }}</div>
70
+ <div class="text-lg text-gray-600">
71
+ Contributors
72
+ </div>
73
+ </div>
74
+ </div>
75
+ </div>
76
+ <div class="flex flex-row">
77
+ <svg width="100" height="100" class="rounded-[0.25rem] w-[100px] h-[100px]" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg">
78
+ <g clip-path="url(#clip0_206_4645)">
79
+ <mask id="mask0_206_4645" style="mask-type:luminance" maskUnits="userSpaceOnUse" x="0" y="0" width="32" height="32">
80
+ <path d="M32 0H0V32H32V0Z" fill="white" />
81
+ </mask>
82
+ <g mask="url(#mask0_206_4645)">
83
+ <path d="M31.9142 32.0223C21.2766 32.0223 10.6506 32.0223 0.0246745 32.0223C0.0238272 32.0194 0.0222373 32.0166 0.0222373 32.0137C0.0221323 21.3508 0.0221329 10.688 0.0221329 0.0236816C10.6877 0.0236816 21.3534 0.0236816 32.0206 0.0236816C32.0206 10.6878 32.0206 21.3533 32.0206 32.0223C31.9901 32.0223 31.958 32.0223 31.9142 32.0223ZM26.4121 20.9345C26.361 20.8762 26.3128 20.8153 26.2585 20.7601C25.6577 20.1492 24.9011 20.0218 24.0955 20.0946C23.3969 20.1577 22.7984 20.4652 22.2811 20.9345C22.2532 20.9598 22.2227 20.9823 22.1824 21.0151C22.1824 20.9497 22.185 20.902 22.182 20.8546C22.1669 20.6225 22.0579 20.4465 21.8514 20.3407C21.649 20.2371 21.4421 20.247 21.2512 20.3689C21.0389 20.5045 20.9665 20.713 20.9667 20.958C20.9682 22.7933 20.9675 24.6286 20.9675 26.4639C20.9675 26.5784 20.9652 26.693 20.968 26.8074C20.9751 27.102 21.1313 27.3354 21.3685 27.4101C21.7847 27.5411 22.1817 27.2525 22.1823 26.8136C22.1839 25.5543 22.1836 24.2951 22.1824 23.0359C22.1821 22.6812 22.2717 22.356 22.4979 22.0791C23.025 21.434 23.7075 21.1616 24.5332 21.2556C24.9353 21.3015 25.2602 21.4881 25.4831 21.8327C25.6923 22.1561 25.7639 22.5212 25.7668 22.8971C25.7747 23.9347 25.7716 24.9724 25.7727 26.01C25.7731 26.2943 25.7683 26.5788 25.7739 26.863C25.7826 27.3076 26.2605 27.5828 26.6518 27.3716C26.9007 27.2373 26.9891 27.0176 26.9888 26.7463C26.9873 25.5683 26.9907 24.3903 26.9862 23.2123C26.9852 22.9326 26.9757 22.6511 26.9432 22.3735C26.883 21.8589 26.7401 21.3697 26.4121 20.9345ZM18.7519 20.2768C18.6788 20.282 18.6027 20.2759 18.5331 20.2944C18.2433 20.3715 18.0835 20.6019 18.0833 20.9365C18.0826 22.1367 18.0851 23.337 18.081 24.5372C18.0803 24.7357 18.07 24.9372 18.035 25.1319C17.9425 25.6461 17.6668 26.0312 17.1721 26.2263C16.6902 26.4164 16.194 26.423 15.695 26.2875C15.3165 26.1848 15.0263 25.9676 14.8367 25.6226C14.7009 25.3752 14.6347 25.1055 14.6298 24.8266C14.6199 24.2617 14.6232 23.6966 14.6226 23.1316C14.6218 22.4004 14.6236 21.6691 14.6219 20.9379C14.6211 20.5778 14.3819 20.295 14.069 20.2767C13.6814 20.254 13.4081 20.518 13.4076 20.9221C13.4063 22.1556 13.4047 23.389 13.4085 24.6225C13.4099 25.0635 13.4572 25.4984 13.6251 25.9135C13.9436 26.701 14.5379 27.1764 15.3353 27.4077C15.8372 27.5533 16.3542 27.5622 16.8722 27.5012C17.2723 27.4541 17.6549 27.3449 18.0035 27.1424C18.8265 26.6641 19.2453 25.9203 19.2718 24.9916C19.3108 23.63 19.2949 22.2667 19.2963 20.9041C19.2968 20.5622 19.0957 20.3353 18.7519 20.2768Z" fill="#ECDC5A" />
84
+ <path d="M26.4164 20.9411C26.7401 21.3697 26.883 21.8589 26.9432 22.3735C26.9757 22.6511 26.9852 22.9326 26.9862 23.2123C26.9907 24.3903 26.9873 25.5683 26.9888 26.7463C26.9891 27.0176 26.9007 27.2373 26.6518 27.3716C26.2605 27.5828 25.7825 27.3076 25.7739 26.863C25.7683 26.5787 25.773 26.2943 25.7728 26.01C25.7716 24.9723 25.7746 23.9347 25.7668 22.8971C25.7639 22.5212 25.6923 22.1561 25.4831 21.8327C25.2603 21.488 24.9353 21.3014 24.5332 21.2556C23.7076 21.1616 23.025 21.434 22.4979 22.0791C22.2718 22.356 22.182 22.6812 22.1824 23.0358C22.1836 24.2951 22.1839 25.5543 22.1823 26.8136C22.1817 27.2525 21.7847 27.5411 21.3686 27.4101C21.1313 27.3354 20.9751 27.102 20.968 26.8074C20.9653 26.6929 20.9676 26.5784 20.9676 26.4639C20.9676 24.6286 20.9682 22.7933 20.9667 20.9579C20.9665 20.713 21.039 20.5045 21.2512 20.3689C21.4421 20.2469 21.649 20.2371 21.8513 20.3407C22.0578 20.4465 22.1669 20.6224 22.182 20.8546C22.185 20.9019 22.1824 20.9497 22.1824 21.015C22.2227 20.9823 22.2532 20.9598 22.2811 20.9344C22.7984 20.4652 23.3969 20.1577 24.0955 20.0946C24.901 20.0218 25.6577 20.1492 26.2585 20.7601C26.3127 20.8153 26.361 20.8762 26.4164 20.9411Z" fill="#111827" />
85
+ <path d="M18.7618 20.2773C19.0957 20.3354 19.2968 20.5622 19.2963 20.9041C19.2949 22.2667 19.3108 23.63 19.2718 24.9916C19.2453 25.9204 18.8265 26.6641 18.0035 27.1424C17.6549 27.345 17.2723 27.4542 16.8722 27.5012C16.3542 27.5622 15.8372 27.5534 15.3353 27.4078C14.5379 27.1764 13.9436 26.701 13.6251 25.9135C13.4572 25.4984 13.4099 25.0635 13.4085 24.6225C13.4047 23.3891 13.4063 22.1556 13.4076 20.9221C13.4081 20.518 13.6814 20.2541 14.069 20.2767C14.3819 20.2951 14.6211 20.5779 14.6219 20.938C14.6236 21.6692 14.6218 22.4004 14.6226 23.1316C14.6232 23.6966 14.6199 24.2618 14.6298 24.8266C14.6347 25.1055 14.7009 25.3753 14.8367 25.6226C15.0263 25.9677 15.3165 26.1848 15.695 26.2876C16.1939 26.423 16.6902 26.4164 17.1721 26.2263C17.6668 26.0313 17.9425 25.6461 18.035 25.132C18.07 24.9372 18.0803 24.7358 18.081 24.5373C18.0851 23.337 18.0826 22.1368 18.0833 20.9366C18.0835 20.602 18.2433 20.3715 18.5331 20.2944C18.6027 20.2759 18.6788 20.282 18.7618 20.2773Z" fill="#111827" />
86
+ </g>
87
+ </g>
88
+ <defs>
89
+ <clipPath id="clip0_206_4645">
90
+ <rect width="32" height="32" rx="2" fill="white" />
91
+ </clipPath>
92
+ </defs>
93
+ </svg>
94
+ </div>
95
+ </div>
96
+ </div>
97
+ <div class="absolute bottom-0 w-full h-8 bg-[#ECDC5A]" />
98
+ </div>
99
+ </template>
@@ -0,0 +1,21 @@
1
+ /**
2
+ * @credits UnJS <https://unjs.io/>
3
+ */
4
+ type __VLS_Props = {
5
+ title?: string;
6
+ description?: string;
7
+ emoji?: string;
8
+ downloads?: string | number;
9
+ stars?: string | number;
10
+ contributors?: string | number;
11
+ };
12
+ declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {
13
+ title: string;
14
+ description: string;
15
+ emoji: string;
16
+ downloads: string | number;
17
+ stars: string | number;
18
+ contributors: string | number;
19
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
20
+ declare const _default: typeof __VLS_export;
21
+ export default _default;
@@ -0,0 +1,11 @@
1
+ /**
2
+ * @credits Full Stack Heroes <https://fullstackheroes.com/>
3
+ */
4
+ type __VLS_Props = {
5
+ title?: string;
6
+ };
7
+ declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {
8
+ title: string;
9
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
10
+ declare const _default: typeof __VLS_export;
11
+ export default _default;
@@ -0,0 +1,28 @@
1
+ <script setup>
2
+ defineProps({
3
+ title: { type: String, required: false, default: "title" }
4
+ });
5
+ </script>
6
+
7
+ <template>
8
+ <div class="h-full w-full flex items-start justify-start bg-yellow-50 relative">
9
+ <h1 class="text-7xl p-20 font-bold text-left text-gray-900" style="display: block; line-clamp: 2; text-overflow: ellipsis;">
10
+ {{ title }}
11
+ </h1>
12
+
13
+ <svg
14
+ class="absolute bottom-0 left-0 right-0"
15
+ viewBox="0 0 1200 627"
16
+ width="1200"
17
+ height="627"
18
+ xmlns="http://www.w3.org/2000/svg"
19
+ >
20
+ <path
21
+ d="M0 513L28.5 509.8C57 506.7 114 500.3 171.2 484.5C228.3 468.7 285.7 443.3 342.8 435C400 426.7 457 435.3 514.2 447.3C571.3 459.3 628.7 474.7 685.8 490.7C743 506.7 800 523.3 857.2 522.5C914.3 521.7 971.7 503.3 1028.8 491.8C1086 480.3 1143 475.7 1171.5 473.3L1200 471L1200 628L1171.5 628C1143 628 1086 628 1028.8 628C971.7 628 914.3 628 857.2 628C800 628 743 628 685.8 628C628.7 628 571.3 628 514.2 628C457 628 400 628 342.8 628C285.7 628 228.3 628 171.2 628C114 628 57 628 28.5 628L0 628Z"
22
+ fill="#fbbf24"
23
+ strokeLinecap="round"
24
+ strokeLinejoin="miter"
25
+ />
26
+ </svg>
27
+ </div>
28
+ </template>
@@ -0,0 +1,11 @@
1
+ /**
2
+ * @credits Full Stack Heroes <https://fullstackheroes.com/>
3
+ */
4
+ type __VLS_Props = {
5
+ title?: string;
6
+ };
7
+ declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {
8
+ title: string;
9
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
10
+ declare const _default: typeof __VLS_export;
11
+ export default _default;
@@ -0,0 +1,13 @@
1
+ /**
2
+ * @credits Full Stack Heroes <https://fullstackheroes.com/>
3
+ */
4
+ type __VLS_Props = {
5
+ emoji?: string;
6
+ title?: string;
7
+ };
8
+ declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {
9
+ title: string;
10
+ emoji: string;
11
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
12
+ declare const _default: typeof __VLS_export;
13
+ export default _default;
@@ -0,0 +1,21 @@
1
+ <script setup>
2
+ defineProps({
3
+ emoji: { type: String, required: false, default: "\u{1F44B}" },
4
+ title: { type: String, required: false, default: "title" }
5
+ });
6
+ </script>
7
+
8
+ <template>
9
+ <div class="h-full w-full flex items-start justify-start bg-sky-50">
10
+ <div class="flex items-start justify-start h-full">
11
+ <div class="flex flex-col justify-center items-center px-20 w-full h-full text-center">
12
+ <p class="text-[120px] mx-auto text-center font-bold mb-0">
13
+ {{ emoji }}
14
+ </p>
15
+ <h1 class="text-[60px] font-bold" style="display: block; line-clamp: 2; text-overflow: ellipsis;">
16
+ {{ title }}
17
+ </h1>
18
+ </div>
19
+ </div>
20
+ </div>
21
+ </template>
@@ -0,0 +1,13 @@
1
+ /**
2
+ * @credits Full Stack Heroes <https://fullstackheroes.com/>
3
+ */
4
+ type __VLS_Props = {
5
+ emoji?: string;
6
+ title?: string;
7
+ };
8
+ declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {
9
+ title: string;
10
+ emoji: string;
11
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
12
+ declare const _default: typeof __VLS_export;
13
+ export default _default;
@@ -0,0 +1,2 @@
1
+ import type { DefineOgImageInput } from '../../types.js';
2
+ export declare function defineOgImage(_options?: DefineOgImageInput): void;
@@ -0,0 +1,43 @@
1
+ import { appendHeader } from "h3";
2
+ import { createError, useNuxtApp, useRequestEvent, useRoute, useState } from "nuxt/app";
3
+ import { ref, toValue } from "vue";
4
+ import { createOgImageMeta, getOgImagePath, setHeadOgImagePrebuilt, useOgImageRuntimeConfig } from "../utils.js";
5
+ export function defineOgImage(_options = {}) {
6
+ const nuxtApp = useNuxtApp();
7
+ const route = useRoute();
8
+ const basePath = route.path || "/";
9
+ if (nuxtApp.payload.path === basePath) {
10
+ const state = import.meta.dev ? useState(`og-image:ssr-exists:${basePath}`, () => false) : ref(false);
11
+ if (import.meta.dev && !import.meta.server) {
12
+ if (!state.value) {
13
+ throw createError({ message: "You are using a defineOgImage() function in a client-only context. You must call this function within your root component setup, see https://github.com/nuxt-modules/og-image/pull/293." });
14
+ }
15
+ return;
16
+ }
17
+ state.value = true;
18
+ }
19
+ if (!import.meta.server) {
20
+ return;
21
+ }
22
+ const { defaults } = useOgImageRuntimeConfig();
23
+ const options = toValue(_options);
24
+ if (options === false) {
25
+ return;
26
+ }
27
+ const validOptions = options;
28
+ for (const key in defaults) {
29
+ if (validOptions[key] === void 0)
30
+ validOptions[key] = defaults[key];
31
+ }
32
+ if (route.query)
33
+ validOptions._query = route.query;
34
+ if (validOptions.url) {
35
+ setHeadOgImagePrebuilt(validOptions);
36
+ return;
37
+ }
38
+ const path = getOgImagePath(basePath, validOptions);
39
+ if (import.meta.prerender) {
40
+ appendHeader(useRequestEvent(nuxtApp), "x-nitro-prerender", path);
41
+ }
42
+ createOgImageMeta(path, validOptions, nuxtApp.ssrContext);
43
+ }
@@ -0,0 +1,3 @@
1
+ import type { OgImageComponents } from '#og-image/components';
2
+ import type { ExtractComponentProps, OgImageOptions } from '../../types.js';
3
+ export declare function defineOgImageComponent<T extends keyof OgImageComponents>(component: T, props?: Partial<ExtractComponentProps<OgImageComponents[T]>>, options?: OgImageOptions): void;
@@ -0,0 +1,8 @@
1
+ import { defineOgImage } from "./defineOgImage.js";
2
+ export function defineOgImageComponent(component, props = {}, options = {}) {
3
+ return defineOgImage({
4
+ ...options,
5
+ component,
6
+ props
7
+ });
8
+ }
@@ -0,0 +1,2 @@
1
+ import type { OgImagePageScreenshotOptions } from '../../types.js';
2
+ export declare function defineOgImageScreenshot(options?: OgImagePageScreenshotOptions): void;
@@ -0,0 +1,14 @@
1
+ import { useRouter } from "#app";
2
+ import { defineOgImage } from "./defineOgImage.js";
3
+ export function defineOgImageScreenshot(options = {}) {
4
+ const router = useRouter();
5
+ const route = router.currentRoute.value?.path || "/";
6
+ return defineOgImage({
7
+ alt: `Web page screenshot${route ? ` of ${route}` : ""}.`,
8
+ renderer: "chromium",
9
+ extension: "jpeg",
10
+ component: "PageScreenshot",
11
+ // this is an alias
12
+ ...options
13
+ });
14
+ }
@@ -0,0 +1,5 @@
1
+ import type { OgImageComponents } from '#og-image/components';
2
+ import type { DefineOgImageInput, ExtractComponentProps, OgImageOptions, OgImagePageScreenshotOptions } from '../../types.js';
3
+ export declare function defineOgImage(_options?: DefineOgImageInput): void;
4
+ export declare function defineOgImageComponent<T extends keyof OgImageComponents>(component: T, props?: Partial<ExtractComponentProps<OgImageComponents[T]>>, options?: OgImageOptions): void;
5
+ export declare function defineOgImageScreenshot(options?: OgImagePageScreenshotOptions): void;
@@ -0,0 +1,20 @@
1
+ import { useRuntimeConfig } from "nuxt/app";
2
+ export function defineOgImage(_options = {}) {
3
+ if (import.meta.dev) {
4
+ console.warn("`defineOgImage()` is skipped as the OG Image module is not enabled.");
5
+ }
6
+ }
7
+ export function defineOgImageComponent(component, props = {}, options = {}) {
8
+ if (import.meta.dev) {
9
+ console.warn("`defineOgImageComponent()` is skipped as the OG Image module is not enabled.");
10
+ }
11
+ }
12
+ export function defineOgImageScreenshot(options = {}) {
13
+ if (import.meta.dev) {
14
+ if (useRuntimeConfig()["nuxt-og-image"]) {
15
+ console.warn("`defineOgImageScreenshot()` is skipped as the `chromium` compatibility is disabled.");
16
+ } else {
17
+ console.warn("`defineOgImageScreenshot()` is skipped as the OG Image module is not enabled.");
18
+ }
19
+ }
20
+ }
@@ -0,0 +1,2 @@
1
+ declare const _default: import("nuxt/app").Plugin<Record<string, unknown>> & import("nuxt/app").ObjectPlugin<Record<string, unknown>>;
2
+ export default _default;
@@ -0,0 +1,9 @@
1
+ import { defineNuxtPlugin } from "#app";
2
+ import { ogImageCanonicalUrls as setup } from "../../utils/plugins.js";
3
+ export default defineNuxtPlugin({
4
+ setup(nuxtApp) {
5
+ if (import.meta.dev || import.meta.prerender) {
6
+ setup(nuxtApp);
7
+ }
8
+ }
9
+ });
@@ -0,0 +1,2 @@
1
+ declare const _default: import("nuxt/app").Plugin<Record<string, unknown>> & import("nuxt/app").ObjectPlugin<Record<string, unknown>>;
2
+ export default _default;
@@ -0,0 +1,9 @@
1
+ import { defineNuxtPlugin } from "#app";
2
+ import { routeRuleOgImage as setup } from "../../utils/plugins.js";
3
+ export default defineNuxtPlugin({
4
+ setup(nuxtApp) {
5
+ if (import.meta.dev || import.meta.prerender) {
6
+ setup(nuxtApp);
7
+ }
8
+ }
9
+ });
@@ -0,0 +1,2 @@
1
+ declare const _default: import("nuxt/app").Plugin<Record<string, unknown>> & import("nuxt/app").ObjectPlugin<Record<string, unknown>>;
2
+ export default _default;
@@ -0,0 +1,7 @@
1
+ import { defineNuxtPlugin } from "#app";
2
+ import { ogImageCanonicalUrls as setup } from "../utils/plugins.js";
3
+ export default defineNuxtPlugin({
4
+ setup(nuxtApp) {
5
+ setup(nuxtApp);
6
+ }
7
+ });
@@ -0,0 +1,2 @@
1
+ declare const _default: import("nuxt/app").Plugin<Record<string, unknown>> & import("nuxt/app").ObjectPlugin<Record<string, unknown>>;
2
+ export default _default;
@@ -0,0 +1,7 @@
1
+ import { defineNuxtPlugin } from "#app";
2
+ import { routeRuleOgImage as setup } from "../utils/plugins.js";
3
+ export default defineNuxtPlugin({
4
+ setup(nuxtApp) {
5
+ setup(nuxtApp);
6
+ }
7
+ });
@@ -0,0 +1,3 @@
1
+ import type { NuxtSSRContext } from '#app/nuxt';
2
+ export declare function ogImageCanonicalUrls(nuxtApp: NuxtSSRContext['nuxt']): void;
3
+ export declare function routeRuleOgImage(nuxtApp: NuxtSSRContext['nuxt']): void;