@nuxt/scripts 1.0.0-beta.7 → 1.0.0-rc.2

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 (270) hide show
  1. package/dist/devtools-client/200.html +1 -0
  2. package/dist/devtools-client/404.html +1 -0
  3. package/dist/devtools-client/_fonts/4ppnHhMi-pBsWSPo7mY0avYxlDoAg1N3PTzCwXLZ5rA-d9oibkGnTd1JL3tc_xnaVgBLYmOB8kjrK2cvZaqwj9s.woff2 +0 -0
  4. package/dist/devtools-client/_fonts/4qBuU9MRVUlPZNPSF7Xom_sK8RBEnfYu-9VXFrdq8A8-8TDwLE1HAj1sQn7XxVWtM_7sIaPM-DTdO3Pf8U2DF1U.woff2 +0 -0
  5. package/dist/devtools-client/_fonts/6dYsbWUd_BpKJ7mdDihgOcya1gHXLpJBuMYXux3WMjE-q3fYNS8YbW5n7ZeXI2vSNgkRWW5VDPKAl51SNTjG2qk.woff2 +0 -0
  6. package/dist/devtools-client/_fonts/Lr-hqqZZsYmCt0ITUlr1CUrWim9fsKvoDFZliMxgNHY-iTa_Yt_PzhOY9TX7ZXdSlEPim6iRt92xhECwaxWxd5w.woff2 +0 -0
  7. package/dist/devtools-client/_fonts/OknHvWI6KtYn1JQBzX7eSpNDBQ8520F9TvSUJYkVf6A-xeZn9253svK_8Q2LD0XEruY_MnEsuCRO5LenPoggC0Y.woff2 +0 -0
  8. package/dist/devtools-client/_fonts/PV2hrQG6wq5BlIPDjdL1IcOflycaghyt5MHzlBqZtlo-lb_WexLz3VZqfTN0oi554iBH5tT2j2UFEV-XErCAS3E.woff2 +0 -0
  9. package/dist/devtools-client/_fonts/UA7OtwYHwGN_HjcVGTdmiQxUit7FlqkCwxVUWSeXVnQ-B4OXCFOL_tWrYODpQTc07aMaj0c2cewTOmBRWR9tD-A.woff2 +0 -0
  10. package/dist/devtools-client/_fonts/VE4cDVCv5MxbFM7ZLoLCGbIpNd71zhp7MDI9lmN5Y7I-xZyDYCUVrd6LV8eVGF3Um3UZjBFuUtDGtvdyTBBRYBo.woff2 +0 -0
  11. package/dist/devtools-client/_fonts/fVoGbnMbBFd5L9BBp9fUPavUSkZ_EmsQNSyadkT-108-U4T0khaeLQSIhtt9eVvaCEKJjtWJ4ioRJOf8hvqkWY0.woff2 +0 -0
  12. package/dist/devtools-client/_fonts/lQAxeCEs1R0Lw-H9XRU1RlOARQN8J6npRsPjyEDMe5s-_DUSLEkO3tKTuun_gSnDLoQPVEnpOnyqZMOw0ByZ6PA.woff2 +0 -0
  13. package/dist/devtools-client/_fonts/lntlqNHKLV2n82yTwMde70QqOjcfLE2XJ5oKZ3vRPWc-z6TxpIZQdWXztWLr9_OFWqt_WJJoeGtuK_-XQMZGQwE.woff2 +0 -0
  14. package/dist/devtools-client/_fonts/qxAYvKsXWeYv731eb-h5TRurcdIP_W44mpNdX-HABAk-zUDeMEFlNtNbrwvT9JxLEBg0TphGy70O6RfIoIX_ZwU.woff2 +0 -0
  15. package/dist/devtools-client/_nuxt/B3kN3DAy.js +1 -0
  16. package/dist/devtools-client/_nuxt/B8PEiB0p.js +1 -0
  17. package/dist/devtools-client/_nuxt/C8jhSQ8l.js +1 -0
  18. package/dist/devtools-client/_nuxt/CJD6wrkT.js +188 -0
  19. package/dist/devtools-client/_nuxt/CfOsp0mU.js +1 -0
  20. package/dist/devtools-client/_nuxt/DKL6PHO3.js +1 -0
  21. package/dist/devtools-client/_nuxt/ajngqPCs.js +1 -0
  22. package/dist/devtools-client/_nuxt/builds/latest.json +1 -0
  23. package/dist/devtools-client/_nuxt/builds/meta/cb4e67c6-e8b7-4205-95b7-708fd96ffab6.json +1 -0
  24. package/dist/devtools-client/_nuxt/dlaR8P-P.js +1 -0
  25. package/dist/devtools-client/_nuxt/entry.BwpOBArY.css +1 -0
  26. package/dist/devtools-client/_nuxt/error-404.CvOVjXeC.css +1 -0
  27. package/dist/devtools-client/_nuxt/error-500.BIm53nmx.css +1 -0
  28. package/dist/devtools-client/_nuxt/first-party.C8Ha4JLM.css +1 -0
  29. package/dist/devtools-client/_nuxt/index.CA-OpSj0.css +1 -0
  30. package/dist/devtools-client/_nuxt/registry.B9lnjF_b.css +1 -0
  31. package/dist/devtools-client/_nuxt/wDzz0qaB.js +1 -0
  32. package/dist/devtools-client/docs/index.html +1 -0
  33. package/dist/devtools-client/first-party/index.html +1 -0
  34. package/dist/devtools-client/index.html +1 -0
  35. package/dist/devtools-client/registry/index.html +1 -0
  36. package/dist/module.d.mts +29 -84
  37. package/dist/module.d.ts +121 -0
  38. package/dist/module.json +1 -1
  39. package/dist/module.mjs +940 -755
  40. package/dist/registry.d.mts +91 -4
  41. package/dist/registry.d.ts +93 -0
  42. package/dist/registry.mjs +668 -326
  43. package/dist/runtime/components/GoogleMaps/ScriptGoogleMaps.d.vue.ts +19 -87
  44. package/dist/runtime/components/GoogleMaps/ScriptGoogleMaps.vue +79 -180
  45. package/dist/runtime/components/GoogleMaps/ScriptGoogleMaps.vue.d.ts +19 -87
  46. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsAdvancedMarkerElement.d.vue.ts +6 -55
  47. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsAdvancedMarkerElement.vue +12 -83
  48. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsAdvancedMarkerElement.vue.d.ts +6 -55
  49. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsCircle.d.vue.ts +5 -1
  50. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsCircle.vue +24 -38
  51. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsCircle.vue.d.ts +5 -1
  52. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsGeoJson.d.vue.ts +43 -0
  53. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsGeoJson.vue +60 -0
  54. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsGeoJson.vue.d.ts +43 -0
  55. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsHeatmapLayer.d.vue.ts +4 -0
  56. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsHeatmapLayer.vue +22 -26
  57. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsHeatmapLayer.vue.d.ts +4 -0
  58. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsInfoWindow.d.vue.ts +11 -8
  59. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsInfoWindow.vue +57 -57
  60. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsInfoWindow.vue.d.ts +11 -8
  61. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsMarker.d.vue.ts +24 -42
  62. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsMarker.vue +70 -73
  63. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsMarker.vue.d.ts +24 -42
  64. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsMarkerClusterer.d.vue.ts +42 -5
  65. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsMarkerClusterer.vue +83 -37
  66. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsMarkerClusterer.vue.d.ts +42 -5
  67. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsOverlayView.d.vue.ts +77 -0
  68. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsOverlayView.vue +223 -0
  69. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsOverlayView.vue.d.ts +77 -0
  70. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsPinElement.d.vue.ts +10 -3
  71. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsPinElement.vue +9 -41
  72. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsPinElement.vue.d.ts +10 -3
  73. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsPolygon.d.vue.ts +7 -3
  74. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsPolygon.vue +23 -38
  75. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsPolygon.vue.d.ts +7 -3
  76. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsPolyline.d.vue.ts +7 -3
  77. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsPolyline.vue +23 -38
  78. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsPolyline.vue.d.ts +7 -3
  79. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsRectangle.d.vue.ts +7 -3
  80. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsRectangle.vue +24 -38
  81. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsRectangle.vue.d.ts +7 -3
  82. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsStaticMap.d.vue.ts +200 -0
  83. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsStaticMap.vue +166 -0
  84. package/dist/runtime/components/GoogleMaps/ScriptGoogleMapsStaticMap.vue.d.ts +200 -0
  85. package/dist/runtime/components/GoogleMaps/bindGoogleMapsEvents.d.ts +13 -0
  86. package/dist/runtime/components/GoogleMaps/bindGoogleMapsEvents.js +8 -0
  87. package/dist/runtime/components/GoogleMaps/injectionKeys.d.ts +10 -0
  88. package/dist/runtime/components/GoogleMaps/injectionKeys.js +2 -0
  89. package/dist/runtime/components/GoogleMaps/useGoogleMapsResource.d.ts +48 -0
  90. package/dist/runtime/components/GoogleMaps/useGoogleMapsResource.js +51 -0
  91. package/dist/runtime/components/ScriptBlueskyEmbed.d.vue.ts +84 -0
  92. package/dist/runtime/components/ScriptBlueskyEmbed.vue +89 -0
  93. package/dist/runtime/components/ScriptBlueskyEmbed.vue.d.ts +84 -0
  94. package/dist/runtime/components/ScriptCarbonAds.d.vue.ts +4 -7
  95. package/dist/runtime/components/ScriptCarbonAds.vue +1 -0
  96. package/dist/runtime/components/ScriptCarbonAds.vue.d.ts +4 -7
  97. package/dist/runtime/components/ScriptCrisp.d.vue.ts +7 -11
  98. package/dist/runtime/components/ScriptCrisp.vue +2 -1
  99. package/dist/runtime/components/ScriptCrisp.vue.d.ts +7 -11
  100. package/dist/runtime/components/ScriptGoogleAdsense.d.vue.ts +4 -7
  101. package/dist/runtime/components/ScriptGoogleAdsense.vue +2 -1
  102. package/dist/runtime/components/ScriptGoogleAdsense.vue.d.ts +4 -7
  103. package/dist/runtime/components/ScriptGravatar.d.vue.ts +22 -0
  104. package/dist/runtime/components/ScriptGravatar.vue +46 -0
  105. package/dist/runtime/components/ScriptGravatar.vue.d.ts +22 -0
  106. package/dist/runtime/components/ScriptInstagramEmbed.d.vue.ts +12 -15
  107. package/dist/runtime/components/ScriptInstagramEmbed.vue +9 -3
  108. package/dist/runtime/components/ScriptInstagramEmbed.vue.d.ts +12 -15
  109. package/dist/runtime/components/ScriptIntercom.d.vue.ts +7 -11
  110. package/dist/runtime/components/ScriptIntercom.vue +5 -3
  111. package/dist/runtime/components/ScriptIntercom.vue.d.ts +7 -11
  112. package/dist/runtime/components/ScriptLemonSqueezy.d.vue.ts +2 -3
  113. package/dist/runtime/components/ScriptLemonSqueezy.vue +1 -0
  114. package/dist/runtime/components/ScriptLemonSqueezy.vue.d.ts +2 -3
  115. package/dist/runtime/components/ScriptPayPalButtons.d.vue.ts +43 -37
  116. package/dist/runtime/components/ScriptPayPalButtons.vue +49 -79
  117. package/dist/runtime/components/ScriptPayPalButtons.vue.d.ts +43 -37
  118. package/dist/runtime/components/ScriptPayPalMessages.d.vue.ts +37 -28
  119. package/dist/runtime/components/ScriptPayPalMessages.vue +47 -50
  120. package/dist/runtime/components/ScriptPayPalMessages.vue.d.ts +37 -28
  121. package/dist/runtime/components/ScriptStripePricingTable.d.vue.ts +5 -9
  122. package/dist/runtime/components/ScriptStripePricingTable.vue +3 -2
  123. package/dist/runtime/components/ScriptStripePricingTable.vue.d.ts +5 -9
  124. package/dist/runtime/components/ScriptVimeoPlayer.d.vue.ts +17 -11
  125. package/dist/runtime/components/ScriptVimeoPlayer.vue +14 -10
  126. package/dist/runtime/components/ScriptVimeoPlayer.vue.d.ts +17 -11
  127. package/dist/runtime/components/ScriptXEmbed.d.vue.ts +10 -13
  128. package/dist/runtime/components/ScriptXEmbed.vue +15 -8
  129. package/dist/runtime/components/ScriptXEmbed.vue.d.ts +10 -13
  130. package/dist/runtime/components/ScriptYouTubePlayer.d.vue.ts +10 -15
  131. package/dist/runtime/components/ScriptYouTubePlayer.vue +12 -5
  132. package/dist/runtime/components/ScriptYouTubePlayer.vue.d.ts +10 -15
  133. package/dist/runtime/composables/useScript.js +148 -8
  134. package/dist/runtime/composables/useScriptEventPage.js +2 -2
  135. package/dist/runtime/composables/useScriptTriggerConsent.d.ts +10 -0
  136. package/dist/runtime/composables/useScriptTriggerConsent.js +33 -20
  137. package/dist/runtime/composables/useScriptTriggerElement.js +1 -1
  138. package/dist/runtime/composables/useScriptTriggerIdleTimeout.js +1 -1
  139. package/dist/runtime/devtools-standalone-bridge.client.d.ts +8 -0
  140. package/dist/runtime/devtools-standalone-bridge.client.js +50 -0
  141. package/dist/runtime/registry/bing-uet.d.ts +20 -0
  142. package/dist/runtime/registry/bing-uet.js +29 -0
  143. package/dist/runtime/registry/bluesky-embed.d.ts +116 -0
  144. package/dist/runtime/registry/bluesky-embed.js +72 -0
  145. package/dist/runtime/registry/clarity.d.ts +10 -15
  146. package/dist/runtime/registry/clarity.js +22 -31
  147. package/dist/runtime/registry/cloudflare-web-analytics.d.ts +2 -13
  148. package/dist/runtime/registry/cloudflare-web-analytics.js +2 -14
  149. package/dist/runtime/registry/crisp.d.ts +10 -40
  150. package/dist/runtime/registry/crisp.js +2 -33
  151. package/dist/runtime/registry/databuddy-analytics.d.ts +2 -35
  152. package/dist/runtime/registry/databuddy-analytics.js +20 -45
  153. package/dist/runtime/registry/fathom-analytics.d.ts +7 -26
  154. package/dist/runtime/registry/fathom-analytics.js +3 -25
  155. package/dist/runtime/registry/google-adsense.d.ts +3 -11
  156. package/dist/runtime/registry/google-adsense.js +2 -11
  157. package/dist/runtime/registry/google-analytics.d.ts +3 -5
  158. package/dist/runtime/registry/google-analytics.js +3 -8
  159. package/dist/runtime/registry/google-maps.d.ts +3 -9
  160. package/dist/runtime/registry/google-maps.js +2 -8
  161. package/dist/runtime/registry/google-recaptcha.d.ts +2 -6
  162. package/dist/runtime/registry/google-recaptcha.js +4 -12
  163. package/dist/runtime/registry/google-sign-in.d.ts +2 -13
  164. package/dist/runtime/registry/google-sign-in.js +2 -22
  165. package/dist/runtime/registry/google-tag-manager.d.ts +3 -28
  166. package/dist/runtime/registry/google-tag-manager.js +4 -27
  167. package/dist/runtime/registry/gravatar.d.ts +26 -0
  168. package/dist/runtime/registry/gravatar.js +36 -0
  169. package/dist/runtime/registry/hotjar.d.ts +4 -6
  170. package/dist/runtime/registry/hotjar.js +2 -5
  171. package/dist/runtime/registry/instagram-embed.d.ts +3 -18
  172. package/dist/runtime/registry/instagram-embed.js +4 -19
  173. package/dist/runtime/registry/intercom.d.ts +5 -13
  174. package/dist/runtime/registry/intercom.js +2 -12
  175. package/dist/runtime/registry/matomo-analytics.d.ts +3 -12
  176. package/dist/runtime/registry/matomo-analytics.js +3 -12
  177. package/dist/runtime/registry/meta-pixel.d.ts +4 -6
  178. package/dist/runtime/registry/meta-pixel.js +2 -4
  179. package/dist/runtime/registry/mixpanel-analytics.d.ts +22 -0
  180. package/dist/runtime/registry/mixpanel-analytics.js +46 -0
  181. package/dist/runtime/registry/npm.d.ts +3 -7
  182. package/dist/runtime/registry/npm.js +2 -9
  183. package/dist/runtime/registry/paypal.d.ts +4 -25
  184. package/dist/runtime/registry/paypal.js +3 -66
  185. package/dist/runtime/registry/plausible-analytics.js +19 -14
  186. package/dist/runtime/registry/posthog.d.ts +10 -12
  187. package/dist/runtime/registry/posthog.js +3 -12
  188. package/dist/runtime/registry/reddit-pixel.d.ts +5 -6
  189. package/dist/runtime/registry/reddit-pixel.js +2 -4
  190. package/dist/runtime/registry/rybbit-analytics.d.ts +2 -14
  191. package/dist/runtime/registry/rybbit-analytics.js +10 -20
  192. package/dist/runtime/registry/schemas.d.ts +982 -0
  193. package/dist/runtime/registry/schemas.js +937 -0
  194. package/dist/runtime/registry/segment.d.ts +2 -5
  195. package/dist/runtime/registry/segment.js +2 -5
  196. package/dist/runtime/registry/snapchat-pixel.d.ts +5 -34
  197. package/dist/runtime/registry/snapchat-pixel.js +2 -20
  198. package/dist/runtime/registry/stripe.d.ts +3 -4
  199. package/dist/runtime/registry/stripe.js +2 -4
  200. package/dist/runtime/registry/tiktok-pixel.d.ts +4 -7
  201. package/dist/runtime/registry/tiktok-pixel.js +2 -6
  202. package/dist/runtime/registry/umami-analytics.d.ts +2 -31
  203. package/dist/runtime/registry/umami-analytics.js +2 -36
  204. package/dist/runtime/registry/vercel-analytics.d.ts +29 -0
  205. package/dist/runtime/registry/vercel-analytics.js +84 -0
  206. package/dist/runtime/registry/vimeo-player.d.ts +2 -2
  207. package/dist/runtime/registry/vimeo-player.js +1 -1
  208. package/dist/runtime/registry/x-embed.d.ts +3 -17
  209. package/dist/runtime/registry/x-embed.js +3 -18
  210. package/dist/runtime/registry/x-pixel.d.ts +4 -7
  211. package/dist/runtime/registry/x-pixel.js +2 -5
  212. package/dist/runtime/registry/youtube-player.d.ts +7 -7
  213. package/dist/runtime/registry/youtube-player.js +1 -1
  214. package/dist/runtime/server/bluesky-embed-image.d.ts +2 -0
  215. package/dist/runtime/server/bluesky-embed-image.js +7 -0
  216. package/dist/runtime/server/bluesky-embed.d.ts +16 -0
  217. package/dist/runtime/server/bluesky-embed.js +59 -0
  218. package/dist/runtime/server/google-maps-geocode-proxy.d.ts +2 -0
  219. package/dist/runtime/server/google-maps-geocode-proxy.js +34 -0
  220. package/dist/runtime/server/google-static-maps-proxy.js +2 -13
  221. package/dist/runtime/server/gravatar-proxy.d.ts +2 -0
  222. package/dist/runtime/server/gravatar-proxy.js +46 -0
  223. package/dist/runtime/server/instagram-embed-asset.js +8 -41
  224. package/dist/runtime/server/instagram-embed-image.js +6 -53
  225. package/dist/runtime/server/instagram-embed.d.ts +16 -0
  226. package/dist/runtime/server/instagram-embed.js +176 -35
  227. package/dist/runtime/server/proxy-handler.js +101 -83
  228. package/dist/runtime/server/utils/image-proxy.d.ts +12 -0
  229. package/dist/runtime/server/utils/image-proxy.js +70 -0
  230. package/dist/runtime/server/utils/privacy.d.ts +1 -10
  231. package/dist/runtime/server/utils/privacy.js +60 -40
  232. package/dist/runtime/server/x-embed-image.js +5 -49
  233. package/dist/runtime/server/x-embed.js +3 -2
  234. package/dist/runtime/types.d.ts +277 -53
  235. package/dist/runtime/types.js +0 -2
  236. package/dist/runtime/utils/pure.d.ts +1 -1
  237. package/dist/runtime/utils.d.ts +6 -4
  238. package/dist/runtime/utils.js +31 -14
  239. package/dist/stats.d.mts +202 -0
  240. package/dist/stats.d.ts +202 -0
  241. package/dist/stats.mjs +3875 -0
  242. package/dist/types-source.d.mts +17 -0
  243. package/dist/types-source.d.ts +17 -0
  244. package/dist/types-source.mjs +3835 -0
  245. package/dist/types.d.mts +4 -2
  246. package/package.json +35 -61
  247. package/README.md +0 -86
  248. package/dist/client/200.html +0 -1
  249. package/dist/client/404.html +0 -1
  250. package/dist/client/_nuxt/BJa0m50V.js +0 -1
  251. package/dist/client/_nuxt/BPQ3VLAy.js +0 -1
  252. package/dist/client/_nuxt/Ci5iXYuB.js +0 -1
  253. package/dist/client/_nuxt/DaI2y8Uz.js +0 -162
  254. package/dist/client/_nuxt/builds/latest.json +0 -1
  255. package/dist/client/_nuxt/builds/meta/9b4fb16a-3c62-48b0-8295-126cb077b5d3.json +0 -1
  256. package/dist/client/_nuxt/entry.D45OuV0w.css +0 -1
  257. package/dist/client/_nuxt/error-404.B57D-jUQ.css +0 -1
  258. package/dist/client/_nuxt/error-500.DTHUW7BI.css +0 -1
  259. package/dist/client/_nuxt/vPLZfVXe.js +0 -1
  260. package/dist/client/index.html +0 -1
  261. package/dist/runtime/components/ScriptPayPalMarks.d.vue.ts +0 -52
  262. package/dist/runtime/components/ScriptPayPalMarks.vue +0 -69
  263. package/dist/runtime/components/ScriptPayPalMarks.vue.d.ts +0 -52
  264. package/dist/runtime/validation/mock.d.ts +0 -42
  265. package/dist/runtime/validation/mock.js +0 -21
  266. package/dist/runtime/validation/valibot.d.ts +0 -1
  267. package/dist/runtime/validation/valibot.js +0 -1
  268. /package/dist/{client → devtools-client}/_nuxt/CVO1_9PV.js +0 -0
  269. /package/dist/{client → devtools-client}/_nuxt/Cp-IABpG.js +0 -0
  270. /package/dist/{client → devtools-client}/_nuxt/D0r3Knsf.js +0 -0
@@ -0,0 +1,51 @@
1
+ import { whenever } from "@vueuse/core";
2
+ import { inject, onUnmounted, ref, shallowRef } from "vue";
3
+ export const MAP_INJECTION_KEY = Symbol("map");
4
+ export const MARKER_INJECTION_KEY = Symbol("marker");
5
+ export function bindGoogleMapsEvents(instance, emit, config) {
6
+ config.noPayload?.forEach((event) => {
7
+ instance.addListener(event, () => emit(event));
8
+ });
9
+ config.withPayload?.forEach((event) => {
10
+ instance.addListener(event, (payload) => emit(event, payload));
11
+ });
12
+ }
13
+ export function useGoogleMapsResource({
14
+ ready,
15
+ create,
16
+ cleanup
17
+ }) {
18
+ const mapContext = inject(MAP_INJECTION_KEY, void 0);
19
+ const resource = shallowRef(void 0);
20
+ const isUnmounted = ref(false);
21
+ whenever(
22
+ () => mapContext?.map.value && mapContext.mapsApi.value && (!ready || ready()),
23
+ () => {
24
+ Promise.resolve(create({
25
+ map: mapContext.map.value,
26
+ mapsApi: mapContext.mapsApi.value
27
+ })).then((result) => {
28
+ if (isUnmounted.value) {
29
+ if (cleanup && mapContext?.mapsApi.value) {
30
+ cleanup(result, { mapsApi: mapContext.mapsApi.value });
31
+ }
32
+ return;
33
+ }
34
+ resource.value = result;
35
+ }).catch((err) => {
36
+ if (import.meta.dev) {
37
+ console.error("[nuxt-scripts] Google Maps resource creation failed:", err);
38
+ }
39
+ });
40
+ },
41
+ { immediate: true, once: true }
42
+ );
43
+ onUnmounted(() => {
44
+ isUnmounted.value = true;
45
+ if (resource.value && cleanup && mapContext?.mapsApi.value) {
46
+ cleanup(resource.value, { mapsApi: mapContext.mapsApi.value });
47
+ }
48
+ resource.value = void 0;
49
+ });
50
+ return resource;
51
+ }
@@ -0,0 +1,84 @@
1
+ import type { HTMLAttributes } from 'vue';
2
+ import type { BlueskyEmbedPostData } from '../registry/bluesky-embed.js';
3
+ type __VLS_Props = {
4
+ /**
5
+ * The Bluesky post URL to embed
6
+ * @example 'https://bsky.app/profile/bsky.app/post/3mgnwwvj3u22a'
7
+ */
8
+ postUrl: string;
9
+ /**
10
+ * Custom API endpoint for fetching post data
11
+ */
12
+ apiEndpoint?: string;
13
+ /**
14
+ * Custom image proxy endpoint
15
+ */
16
+ imageProxyEndpoint?: string;
17
+ /**
18
+ * Root element attributes
19
+ */
20
+ rootAttrs?: HTMLAttributes;
21
+ };
22
+ type __VLS_Slots = {
23
+ default?: (props: NonNullable<typeof slotProps.value>) => any;
24
+ loading?: () => any;
25
+ error?: (props: {
26
+ error: typeof error.value;
27
+ }) => any;
28
+ };
29
+ declare const error: import("vue").Ref<import("nuxt/app").NuxtError<unknown> | undefined, import("nuxt/app").NuxtError<unknown> | undefined>;
30
+ declare const slotProps: import("vue").ComputedRef<{
31
+ post: BlueskyEmbedPostData;
32
+ displayName: string;
33
+ handle: string;
34
+ avatar: string;
35
+ avatarOriginal: string;
36
+ isVerified: boolean;
37
+ text: string;
38
+ richText: string;
39
+ langs: string[] | undefined;
40
+ datetime: string;
41
+ createdAt: Date;
42
+ likes: number;
43
+ likesFormatted: string;
44
+ reposts: number;
45
+ repostsFormatted: string;
46
+ replies: number;
47
+ repliesFormatted: string;
48
+ quotes: number;
49
+ quotesFormatted: string;
50
+ images: {
51
+ thumb: string;
52
+ fullsize: string;
53
+ alt: string;
54
+ aspectRatio: {
55
+ width: number;
56
+ height: number;
57
+ } | undefined;
58
+ }[] | undefined;
59
+ externalEmbed: {
60
+ uri: string;
61
+ title: string;
62
+ description: string;
63
+ thumb: string | undefined;
64
+ } | undefined;
65
+ postUrl: string;
66
+ authorUrl: string;
67
+ proxyImage: (url: string) => string;
68
+ } | null>;
69
+ declare const __VLS_base: import("vue").DefineComponent<__VLS_Props, {
70
+ post: import("vue").Ref<BlueskyEmbedPostData | undefined, BlueskyEmbedPostData | undefined>;
71
+ status: import("vue").Ref<import("nuxt/app").AsyncDataRequestStatus, import("nuxt/app").AsyncDataRequestStatus>;
72
+ error: import("vue").Ref<import("nuxt/app").NuxtError<unknown> | undefined, import("nuxt/app").NuxtError<unknown> | undefined>;
73
+ }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {
74
+ apiEndpoint: string;
75
+ imageProxyEndpoint: string;
76
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
77
+ declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
78
+ declare const _default: typeof __VLS_export;
79
+ export default _default;
80
+ type __VLS_WithSlots<T, S> = T & {
81
+ new (): {
82
+ $slots: S;
83
+ };
84
+ };
@@ -0,0 +1,89 @@
1
+ <script setup>
2
+ import { useAsyncData } from "nuxt/app";
3
+ import { computed } from "vue";
4
+ import { extractBlueskyPostId, facetsToHtml, formatBlueskyDate, formatCount, proxyBlueskyImageUrl } from "../registry/bluesky-embed";
5
+ import { requireRegistryEndpoint, scriptsPrefix } from "../utils";
6
+ const props = defineProps({
7
+ postUrl: { type: String, required: true },
8
+ apiEndpoint: { type: String, required: false, default: void 0 },
9
+ imageProxyEndpoint: { type: String, required: false, default: void 0 },
10
+ rootAttrs: { type: Object, required: false }
11
+ });
12
+ defineSlots();
13
+ const prefix = scriptsPrefix();
14
+ const resolvedApiEndpoint = computed(() => props.apiEndpoint || `${prefix}/embed/bluesky`);
15
+ const resolvedImageProxyEndpoint = computed(() => props.imageProxyEndpoint || `${prefix}/embed/bluesky-image`);
16
+ if (!props.apiEndpoint)
17
+ requireRegistryEndpoint("ScriptBlueskyEmbed", "blueskyEmbed");
18
+ const postId = computed(() => extractBlueskyPostId(props.postUrl));
19
+ const cacheKey = computed(() => `bluesky-embed-${postId.value?.actor}-${postId.value?.rkey}`);
20
+ const { data: post, status, error } = useAsyncData(
21
+ cacheKey,
22
+ () => $fetch(`${resolvedApiEndpoint.value}?url=${encodeURIComponent(props.postUrl)}`)
23
+ );
24
+ const slotProps = computed(() => {
25
+ if (!post.value)
26
+ return null;
27
+ const p = post.value;
28
+ return {
29
+ // Raw data
30
+ post: p,
31
+ // Author info
32
+ displayName: p.author.displayName,
33
+ handle: p.author.handle,
34
+ avatar: proxyBlueskyImageUrl(p.author.avatar, resolvedImageProxyEndpoint.value),
35
+ avatarOriginal: p.author.avatar,
36
+ isVerified: p.author.verification?.verifiedStatus === "valid",
37
+ // Post content
38
+ text: p.record.text,
39
+ richText: facetsToHtml(p.record.text, p.record.facets),
40
+ langs: p.record.langs,
41
+ // Formatted values
42
+ datetime: formatBlueskyDate(p.record.createdAt),
43
+ createdAt: new Date(p.record.createdAt),
44
+ likes: p.likeCount,
45
+ likesFormatted: formatCount(p.likeCount),
46
+ reposts: p.repostCount,
47
+ repostsFormatted: formatCount(p.repostCount),
48
+ replies: p.replyCount,
49
+ repliesFormatted: formatCount(p.replyCount),
50
+ quotes: p.quoteCount,
51
+ quotesFormatted: formatCount(p.quoteCount),
52
+ // Media
53
+ images: p.embed?.images?.map((img) => ({
54
+ thumb: proxyBlueskyImageUrl(img.thumb, resolvedImageProxyEndpoint.value),
55
+ fullsize: proxyBlueskyImageUrl(img.fullsize, resolvedImageProxyEndpoint.value),
56
+ alt: img.alt,
57
+ aspectRatio: img.aspectRatio
58
+ })),
59
+ externalEmbed: p.embed?.external ? {
60
+ uri: p.embed.external.uri,
61
+ title: p.embed.external.title,
62
+ description: p.embed.external.description,
63
+ thumb: p.embed.external.thumb ? proxyBlueskyImageUrl(p.embed.external.thumb, resolvedImageProxyEndpoint.value) : void 0
64
+ } : void 0,
65
+ // Links
66
+ postUrl: props.postUrl,
67
+ authorUrl: `https://bsky.app/profile/${p.author.handle}`,
68
+ // Helpers
69
+ proxyImage: (url) => proxyBlueskyImageUrl(url, resolvedImageProxyEndpoint.value)
70
+ };
71
+ });
72
+ defineExpose({
73
+ post,
74
+ status,
75
+ error
76
+ });
77
+ </script>
78
+
79
+ <template>
80
+ <div v-bind="rootAttrs">
81
+ <slot v-if="status === 'pending'" name="loading">
82
+ <div>Loading Bluesky post...</div>
83
+ </slot>
84
+ <slot v-else-if="status === 'error'" name="error" :error="error">
85
+ <div>Failed to load Bluesky post</div>
86
+ </slot>
87
+ <slot v-else-if="slotProps" v-bind="slotProps" />
88
+ </div>
89
+ </template>
@@ -0,0 +1,84 @@
1
+ import type { HTMLAttributes } from 'vue';
2
+ import type { BlueskyEmbedPostData } from '../registry/bluesky-embed.js';
3
+ type __VLS_Props = {
4
+ /**
5
+ * The Bluesky post URL to embed
6
+ * @example 'https://bsky.app/profile/bsky.app/post/3mgnwwvj3u22a'
7
+ */
8
+ postUrl: string;
9
+ /**
10
+ * Custom API endpoint for fetching post data
11
+ */
12
+ apiEndpoint?: string;
13
+ /**
14
+ * Custom image proxy endpoint
15
+ */
16
+ imageProxyEndpoint?: string;
17
+ /**
18
+ * Root element attributes
19
+ */
20
+ rootAttrs?: HTMLAttributes;
21
+ };
22
+ type __VLS_Slots = {
23
+ default?: (props: NonNullable<typeof slotProps.value>) => any;
24
+ loading?: () => any;
25
+ error?: (props: {
26
+ error: typeof error.value;
27
+ }) => any;
28
+ };
29
+ declare const error: import("vue").Ref<import("nuxt/app").NuxtError<unknown> | undefined, import("nuxt/app").NuxtError<unknown> | undefined>;
30
+ declare const slotProps: import("vue").ComputedRef<{
31
+ post: BlueskyEmbedPostData;
32
+ displayName: string;
33
+ handle: string;
34
+ avatar: string;
35
+ avatarOriginal: string;
36
+ isVerified: boolean;
37
+ text: string;
38
+ richText: string;
39
+ langs: string[] | undefined;
40
+ datetime: string;
41
+ createdAt: Date;
42
+ likes: number;
43
+ likesFormatted: string;
44
+ reposts: number;
45
+ repostsFormatted: string;
46
+ replies: number;
47
+ repliesFormatted: string;
48
+ quotes: number;
49
+ quotesFormatted: string;
50
+ images: {
51
+ thumb: string;
52
+ fullsize: string;
53
+ alt: string;
54
+ aspectRatio: {
55
+ width: number;
56
+ height: number;
57
+ } | undefined;
58
+ }[] | undefined;
59
+ externalEmbed: {
60
+ uri: string;
61
+ title: string;
62
+ description: string;
63
+ thumb: string | undefined;
64
+ } | undefined;
65
+ postUrl: string;
66
+ authorUrl: string;
67
+ proxyImage: (url: string) => string;
68
+ } | null>;
69
+ declare const __VLS_base: import("vue").DefineComponent<__VLS_Props, {
70
+ post: import("vue").Ref<BlueskyEmbedPostData | undefined, BlueskyEmbedPostData | undefined>;
71
+ status: import("vue").Ref<import("nuxt/app").AsyncDataRequestStatus, import("nuxt/app").AsyncDataRequestStatus>;
72
+ error: import("vue").Ref<import("nuxt/app").NuxtError<unknown> | undefined, import("nuxt/app").NuxtError<unknown> | undefined>;
73
+ }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {
74
+ apiEndpoint: string;
75
+ imageProxyEndpoint: string;
76
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
77
+ declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
78
+ declare const _default: typeof __VLS_export;
79
+ export default _default;
80
+ type __VLS_WithSlots<T, S> = T & {
81
+ new (): {
82
+ $slots: S;
83
+ };
84
+ };
@@ -8,13 +8,10 @@ type __VLS_Props = {
8
8
  */
9
9
  trigger?: ElementScriptTrigger;
10
10
  };
11
- declare var __VLS_1: {}, __VLS_3: {}, __VLS_5: {};
12
- type __VLS_Slots = {} & {
13
- awaitingLoad?: (props: typeof __VLS_1) => any;
14
- } & {
15
- loading?: (props: typeof __VLS_3) => any;
16
- } & {
17
- error?: (props: typeof __VLS_5) => any;
11
+ type __VLS_Slots = {
12
+ awaitingLoad?: () => any;
13
+ loading?: () => any;
14
+ error?: () => any;
18
15
  };
19
16
  declare const __VLS_base: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
20
17
  error: (error: string | Event) => any;
@@ -9,6 +9,7 @@ const props = defineProps({
9
9
  trigger: { type: [String, Array, Boolean], required: false }
10
10
  });
11
11
  const emit = defineEmits(["error", "ready"]);
12
+ defineSlots();
12
13
  const attrId = `_carbonads_js`;
13
14
  const carbonadsEl = ref(import.meta.client ? document.getElementById(attrId) : null);
14
15
  const status = ref("awaitingLoad");
@@ -8,13 +8,10 @@ type __VLS_Props = {
8
8
  */
9
9
  trigger?: ElementScriptTrigger;
10
10
  };
11
- declare var __VLS_1: {}, __VLS_3: {}, __VLS_5: {};
12
- type __VLS_Slots = {} & {
13
- awaitingLoad?: (props: typeof __VLS_1) => any;
14
- } & {
15
- loading?: (props: typeof __VLS_3) => any;
16
- } & {
17
- error?: (props: typeof __VLS_5) => any;
11
+ type __VLS_Slots = {
12
+ awaitingLoad?: () => any;
13
+ loading?: () => any;
14
+ error?: () => any;
18
15
  };
19
16
  declare const __VLS_base: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
20
17
  error: (error: string | Event) => any;
@@ -12,17 +12,13 @@ type __VLS_Props = {
12
12
  cookieDomain?: string;
13
13
  cookieExpiry?: number;
14
14
  };
15
- declare var __VLS_1: {
16
- ready: boolean;
17
- }, __VLS_3: {}, __VLS_5: {}, __VLS_7: {};
18
- type __VLS_Slots = {} & {
19
- default?: (props: typeof __VLS_1) => any;
20
- } & {
21
- awaitingLoad?: (props: typeof __VLS_3) => any;
22
- } & {
23
- loading?: (props: typeof __VLS_5) => any;
24
- } & {
25
- error?: (props: typeof __VLS_7) => any;
15
+ type __VLS_Slots = {
16
+ default?: (props: {
17
+ ready: boolean;
18
+ }) => any;
19
+ awaitingLoad?: () => any;
20
+ loading?: () => any;
21
+ error?: () => any;
26
22
  };
27
23
  declare const __VLS_base: import("vue").DefineComponent<__VLS_Props, {
28
24
  crisp: import("#nuxt-scripts/types").UseScriptContext<import("../registry/crisp.js").CrispApi>;
@@ -1,5 +1,5 @@
1
1
  <script setup>
2
- import { ref, onMounted, onBeforeUnmount, watch, computed } from "vue";
2
+ import { computed, onBeforeUnmount, onMounted, ref, watch } from "vue";
3
3
  import { useScriptTriggerElement } from "../composables/useScriptTriggerElement";
4
4
  import { useScriptCrisp } from "../registry/crisp";
5
5
  const props = defineProps({
@@ -11,6 +11,7 @@ const props = defineProps({
11
11
  cookieExpiry: { type: Number, required: false }
12
12
  });
13
13
  const emits = defineEmits(["ready", "error"]);
14
+ defineSlots();
14
15
  const rootEl = ref(null);
15
16
  const trigger = useScriptTriggerElement({ trigger: props.trigger, el: rootEl });
16
17
  const isReady = ref(false);
@@ -12,17 +12,13 @@ type __VLS_Props = {
12
12
  cookieDomain?: string;
13
13
  cookieExpiry?: number;
14
14
  };
15
- declare var __VLS_1: {
16
- ready: boolean;
17
- }, __VLS_3: {}, __VLS_5: {}, __VLS_7: {};
18
- type __VLS_Slots = {} & {
19
- default?: (props: typeof __VLS_1) => any;
20
- } & {
21
- awaitingLoad?: (props: typeof __VLS_3) => any;
22
- } & {
23
- loading?: (props: typeof __VLS_5) => any;
24
- } & {
25
- error?: (props: typeof __VLS_7) => any;
15
+ type __VLS_Slots = {
16
+ default?: (props: {
17
+ ready: boolean;
18
+ }) => any;
19
+ awaitingLoad?: () => any;
20
+ loading?: () => any;
21
+ error?: () => any;
26
22
  };
27
23
  declare const __VLS_base: import("vue").DefineComponent<__VLS_Props, {
28
24
  crisp: import("#nuxt-scripts/types").UseScriptContext<import("../registry/crisp.js").CrispApi>;
@@ -10,13 +10,10 @@ type __VLS_Props = {
10
10
  */
11
11
  trigger?: ElementScriptTrigger;
12
12
  };
13
- declare var __VLS_1: {}, __VLS_3: {}, __VLS_5: {};
14
- type __VLS_Slots = {} & {
15
- awaitingLoad?: (props: typeof __VLS_1) => any;
16
- } & {
17
- loading?: (props: typeof __VLS_3) => any;
18
- } & {
19
- error?: (props: typeof __VLS_5) => any;
13
+ type __VLS_Slots = {
14
+ awaitingLoad?: () => any;
15
+ loading?: () => any;
16
+ error?: () => any;
20
17
  };
21
18
  declare const __VLS_base: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
22
19
  error: () => any;
@@ -1,6 +1,6 @@
1
1
  <script setup>
2
- import { computed, onMounted, ref, watch } from "vue";
3
2
  import { callOnce } from "nuxt/app";
3
+ import { computed, onMounted, ref, watch } from "vue";
4
4
  import { useScriptTriggerElement } from "../composables/useScriptTriggerElement";
5
5
  import { useScriptGoogleAdsense } from "../registry/google-adsense";
6
6
  import { scriptRuntimeConfig } from "../utils";
@@ -13,6 +13,7 @@ const props = defineProps({
13
13
  trigger: { type: [String, Array, Boolean], required: false }
14
14
  });
15
15
  const emits = defineEmits(["ready", "error"]);
16
+ defineSlots();
16
17
  const rootEl = ref(null);
17
18
  const trigger = useScriptTriggerElement({ trigger: props.trigger, el: rootEl });
18
19
  const scriptConfig = scriptRuntimeConfig("googleAdsense");
@@ -10,13 +10,10 @@ type __VLS_Props = {
10
10
  */
11
11
  trigger?: ElementScriptTrigger;
12
12
  };
13
- declare var __VLS_1: {}, __VLS_3: {}, __VLS_5: {};
14
- type __VLS_Slots = {} & {
15
- awaitingLoad?: (props: typeof __VLS_1) => any;
16
- } & {
17
- loading?: (props: typeof __VLS_3) => any;
18
- } & {
19
- error?: (props: typeof __VLS_5) => any;
13
+ type __VLS_Slots = {
14
+ awaitingLoad?: () => any;
15
+ loading?: () => any;
16
+ error?: () => any;
20
17
  };
21
18
  declare const __VLS_base: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
22
19
  error: () => any;
@@ -0,0 +1,22 @@
1
+ type __VLS_Props = {
2
+ /** Email address — sent to your server proxy for hashing, not sent to Gravatar */
3
+ email?: string;
4
+ /** Pre-computed SHA256 hash of the email */
5
+ hash?: string;
6
+ /** Avatar size in pixels */
7
+ size?: number;
8
+ /** Default avatar style when no Gravatar exists */
9
+ default?: string;
10
+ /** Content rating filter */
11
+ rating?: string;
12
+ /** Enable hovercards on hover */
13
+ hovercards?: boolean;
14
+ };
15
+ declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {
16
+ default: string;
17
+ size: number;
18
+ rating: string;
19
+ hovercards: boolean;
20
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
21
+ declare const _default: typeof __VLS_export;
22
+ export default _default;
@@ -0,0 +1,46 @@
1
+ <script setup>
2
+ import { computed, onMounted, ref, useAttrs } from "vue";
3
+ import { useScriptGravatar } from "../registry/gravatar";
4
+ const props = defineProps({
5
+ email: { type: String, required: false },
6
+ hash: { type: String, required: false },
7
+ size: { type: Number, required: false, default: 80 },
8
+ default: { type: String, required: false, default: "mp" },
9
+ rating: { type: String, required: false, default: "g" },
10
+ hovercards: { type: Boolean, required: false, default: false }
11
+ });
12
+ const attrs = useAttrs();
13
+ const imgSrc = ref("");
14
+ const { onLoaded } = useScriptGravatar();
15
+ const queryOverrides = computed(() => ({
16
+ size: props.size,
17
+ default: props.default,
18
+ rating: props.rating
19
+ }));
20
+ onMounted(() => {
21
+ onLoaded((api) => {
22
+ if (props.email) {
23
+ imgSrc.value = api.getAvatarUrlFromEmail(props.email, queryOverrides.value);
24
+ } else if (props.hash) {
25
+ imgSrc.value = api.getAvatarUrl(props.hash, queryOverrides.value);
26
+ }
27
+ });
28
+ });
29
+ </script>
30
+
31
+ <template>
32
+ <img
33
+ v-if="imgSrc"
34
+ :src="imgSrc"
35
+ :width="size"
36
+ :height="size"
37
+ :class="{ hovercard: hovercards }"
38
+ v-bind="attrs"
39
+ :alt="attrs.alt || 'Gravatar avatar'"
40
+ loading="lazy"
41
+ >
42
+ <span
43
+ v-else
44
+ :style="{ display: 'inline-block', width: `${size}px`, height: `${size}px`, borderRadius: '50%', background: '#e0e0e0' }"
45
+ />
46
+ </template>
@@ -0,0 +1,22 @@
1
+ type __VLS_Props = {
2
+ /** Email address — sent to your server proxy for hashing, not sent to Gravatar */
3
+ email?: string;
4
+ /** Pre-computed SHA256 hash of the email */
5
+ hash?: string;
6
+ /** Avatar size in pixels */
7
+ size?: number;
8
+ /** Default avatar style when no Gravatar exists */
9
+ default?: string;
10
+ /** Content rating filter */
11
+ rating?: string;
12
+ /** Enable hovercards on hover */
13
+ hovercards?: boolean;
14
+ };
15
+ declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {
16
+ default: string;
17
+ size: number;
18
+ rating: string;
19
+ hovercards: boolean;
20
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
21
+ declare const _default: typeof __VLS_export;
22
+ export default _default;
@@ -12,7 +12,6 @@ type __VLS_Props = {
12
12
  captions?: boolean;
13
13
  /**
14
14
  * Custom API endpoint for fetching embed HTML
15
- * @default '/api/_scripts/instagram-embed'
16
15
  */
17
16
  apiEndpoint?: string;
18
17
  /**
@@ -20,28 +19,26 @@ type __VLS_Props = {
20
19
  */
21
20
  rootAttrs?: HTMLAttributes;
22
21
  };
23
- declare var __VLS_1: {}, __VLS_3: {
24
- error: import("nuxt/app").NuxtError<unknown> | undefined;
25
- }, __VLS_5: {
26
- html: string;
27
- shortcode: string | undefined;
28
- postUrl: string;
29
- };
30
- type __VLS_Slots = {} & {
31
- loading?: (props: typeof __VLS_1) => any;
32
- } & {
33
- error?: (props: typeof __VLS_3) => any;
34
- } & {
35
- default?: (props: typeof __VLS_5) => any;
22
+ type __VLS_Slots = {
23
+ default?: (props: {
24
+ html: string;
25
+ shortcode: string | undefined;
26
+ postUrl: string;
27
+ }) => any;
28
+ loading?: () => any;
29
+ error?: (props: {
30
+ error: typeof error.value;
31
+ }) => any;
36
32
  };
33
+ declare const error: import("vue").Ref<import("nuxt/app").NuxtError<unknown> | undefined, import("nuxt/app").NuxtError<unknown> | undefined>;
37
34
  declare const __VLS_base: import("vue").DefineComponent<__VLS_Props, {
38
35
  html: import("vue").Ref<string | undefined, string | undefined>;
39
36
  status: import("vue").Ref<import("nuxt/app").AsyncDataRequestStatus, import("nuxt/app").AsyncDataRequestStatus>;
40
37
  error: import("vue").Ref<import("nuxt/app").NuxtError<unknown> | undefined, import("nuxt/app").NuxtError<unknown> | undefined>;
41
38
  shortcode: import("vue").ComputedRef<string | undefined>;
42
39
  }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {
43
- captions: boolean;
44
40
  apiEndpoint: string;
41
+ captions: boolean;
45
42
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
46
43
  declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
47
44
  declare const _default: typeof __VLS_export;
@@ -1,17 +1,23 @@
1
1
  <script setup>
2
- import { computed } from "vue";
3
2
  import { useAsyncData } from "nuxt/app";
3
+ import { computed } from "vue";
4
4
  import { extractInstagramShortcode } from "../registry/instagram-embed";
5
+ import { requireRegistryEndpoint, scriptsPrefix } from "../utils";
5
6
  const props = defineProps({
6
7
  postUrl: { type: String, required: true },
7
8
  captions: { type: Boolean, required: false, default: true },
8
- apiEndpoint: { type: String, required: false, default: "/api/_scripts/instagram-embed" },
9
+ apiEndpoint: { type: String, required: false, default: void 0 },
9
10
  rootAttrs: { type: Object, required: false }
10
11
  });
12
+ defineSlots();
13
+ const prefix = scriptsPrefix();
14
+ const apiEndpoint = computed(() => props.apiEndpoint || `${prefix}/embed/instagram`);
15
+ if (!props.apiEndpoint)
16
+ requireRegistryEndpoint("ScriptInstagramEmbed", "instagramEmbed");
11
17
  const shortcode = computed(() => extractInstagramShortcode(props.postUrl));
12
18
  const { data: html, status, error } = useAsyncData(
13
19
  `instagram-embed-${props.postUrl}`,
14
- () => $fetch(`${props.apiEndpoint}?url=${encodeURIComponent(props.postUrl)}&captions=${props.captions}`),
20
+ () => $fetch(`${apiEndpoint.value}?url=${encodeURIComponent(props.postUrl)}&captions=${props.captions}`),
15
21
  { watch: [() => props.postUrl, () => props.captions] }
16
22
  );
17
23
  defineExpose({