nuxt-og-image 3.1.1 → 4.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/client/200.html +8 -8
- package/dist/client/404.html +8 -8
- package/dist/client/_nuxt/{BeUwqJEY.js → CbgzOxfU.js} +1 -1
- package/dist/client/_nuxt/{DwSUWO6N.js → Lr4bgMV6.js} +1 -1
- package/dist/client/_nuxt/builds/latest.json +1 -1
- package/dist/client/_nuxt/builds/meta/a089ef48-3edd-438e-9106-89949d355348.json +1 -0
- package/dist/client/_nuxt/entry.0k2jyAbH.css +1 -0
- package/dist/client/_nuxt/error-404.LcFwT6vm.css +1 -0
- package/dist/client/_nuxt/error-500.DzDak7Sw.css +1 -0
- package/dist/client/_nuxt/{Ce3NjAxN.js → spWmiL_5.js} +78 -78
- package/dist/client/index.html +8 -8
- package/dist/module.d.mts +105 -1
- package/dist/module.d.ts +105 -1
- package/dist/module.json +1 -1
- package/dist/module.mjs +1 -14
- package/dist/runtime/server/og-image/context.js +10 -1
- package/dist/runtime/server/og-image/satori/plugins/unocss.js +2 -10
- package/dist/runtime/types.d.ts +4 -1
- package/package.json +28 -28
- package/dist/client/_nuxt/builds/meta/52ed68a4-7100-435e-b5ed-e39bac0de095.json +0 -1
- package/dist/client/_nuxt/entry.CGZ3zn-m.css +0 -1
- package/dist/client/_nuxt/error-404.CSJ9Dkgh.css +0 -1
- package/dist/client/_nuxt/error-500.BJcKCN8F.css +0 -1
package/dist/client/index.html
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
<!DOCTYPE html><html data-capo=""><head><meta charset="utf-8">
|
|
2
2
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
|
3
|
-
<link rel="stylesheet" href="/__nuxt-og-image/_nuxt/entry.
|
|
4
|
-
<link rel="modulepreload" as="script" crossorigin href="/__nuxt-og-image/_nuxt/
|
|
3
|
+
<link rel="stylesheet" href="/__nuxt-og-image/_nuxt/entry.0k2jyAbH.css" crossorigin>
|
|
4
|
+
<link rel="modulepreload" as="script" crossorigin href="/__nuxt-og-image/_nuxt/spWmiL_5.js">
|
|
5
5
|
<link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/BwpQXVS2.js">
|
|
6
6
|
<link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/Ci-La1BS.js">
|
|
7
7
|
<link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/DOAn35dn.js">
|
|
@@ -272,9 +272,9 @@
|
|
|
272
272
|
<link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/CVO1_9PV.js">
|
|
273
273
|
<link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/CG6Dc4jp.js">
|
|
274
274
|
<link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/B6E6ObS_.js">
|
|
275
|
-
<link rel="prefetch" as="style" crossorigin href="/__nuxt-og-image/_nuxt/error-404.
|
|
276
|
-
<link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/
|
|
277
|
-
<link rel="prefetch" as="style" crossorigin href="/__nuxt-og-image/_nuxt/error-500.
|
|
278
|
-
<link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/
|
|
279
|
-
<script type="module" src="/__nuxt-og-image/_nuxt/
|
|
280
|
-
<script>window.__NUXT__={};window.__NUXT__.config={public:{},app:{baseURL:"/__nuxt-og-image",buildId:"
|
|
275
|
+
<link rel="prefetch" as="style" crossorigin href="/__nuxt-og-image/_nuxt/error-404.LcFwT6vm.css">
|
|
276
|
+
<link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/Lr4bgMV6.js">
|
|
277
|
+
<link rel="prefetch" as="style" crossorigin href="/__nuxt-og-image/_nuxt/error-500.DzDak7Sw.css">
|
|
278
|
+
<link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/CbgzOxfU.js">
|
|
279
|
+
<script type="module" src="/__nuxt-og-image/_nuxt/spWmiL_5.js" crossorigin></script></head><body><div id="__nuxt"></div><div id="teleports"></div><script type="application/json" data-nuxt-data="nuxt-app" data-ssr="false" id="__NUXT_DATA__">[{"prerenderedAt":1,"serverRendered":2},1733623960699,false]</script>
|
|
280
|
+
<script>window.__NUXT__={};window.__NUXT__.config={public:{},app:{baseURL:"/__nuxt-og-image",buildId:"a089ef48-3edd-438e-9106-89949d355348",buildAssetsDir:"/_nuxt/",cdnURL:""}}</script></body></html>
|
package/dist/module.d.mts
CHANGED
|
@@ -3,7 +3,111 @@ import { AddComponentOptions } from '@nuxt/kit';
|
|
|
3
3
|
import { ResvgRenderOptions } from '@resvg/resvg-js';
|
|
4
4
|
import { SatoriOptions } from 'satori';
|
|
5
5
|
import { SharpOptions } from 'sharp';
|
|
6
|
-
import {
|
|
6
|
+
import { OgImageComponents } from '#og-image/components';
|
|
7
|
+
import { NitroOptions } from 'nitropack';
|
|
8
|
+
|
|
9
|
+
type IconifyEmojiIconSets = 'twemoji' | 'noto' | 'fluent-emoji' | 'fluent-emoji-flat' | 'fluent-emoji-high-contrast' | 'noto-v1' | 'emojione' | 'emojione-monotone' | 'emojione-v1' | 'streamline-emojis' | 'openmoji';
|
|
10
|
+
interface OgImageComponent {
|
|
11
|
+
path?: string;
|
|
12
|
+
pascalName: string;
|
|
13
|
+
kebabName: string;
|
|
14
|
+
hash: string;
|
|
15
|
+
category: 'app' | 'community' | 'pro';
|
|
16
|
+
credits?: string;
|
|
17
|
+
}
|
|
18
|
+
interface ScreenshotOptions {
|
|
19
|
+
colorScheme?: 'dark' | 'light';
|
|
20
|
+
selector?: string;
|
|
21
|
+
mask?: string;
|
|
22
|
+
/**
|
|
23
|
+
* The width of the screenshot.
|
|
24
|
+
*
|
|
25
|
+
* @default 1200
|
|
26
|
+
*/
|
|
27
|
+
width: number;
|
|
28
|
+
/**
|
|
29
|
+
* The height of the screenshot.
|
|
30
|
+
*
|
|
31
|
+
* @default 630
|
|
32
|
+
*/
|
|
33
|
+
height: number;
|
|
34
|
+
/**
|
|
35
|
+
* How long to wait before taking the screenshot. Useful for waiting for animations.
|
|
36
|
+
*/
|
|
37
|
+
delay?: number;
|
|
38
|
+
}
|
|
39
|
+
interface OgImageOptions<T extends keyof OgImageComponents = 'NuxtSeo'> {
|
|
40
|
+
/**
|
|
41
|
+
* The width of the screenshot.
|
|
42
|
+
*
|
|
43
|
+
* @default 1200
|
|
44
|
+
*/
|
|
45
|
+
width?: number;
|
|
46
|
+
/**
|
|
47
|
+
* The height of the screenshot.
|
|
48
|
+
*
|
|
49
|
+
* @default 630
|
|
50
|
+
*/
|
|
51
|
+
height?: number;
|
|
52
|
+
/**
|
|
53
|
+
* The alt text for the image.
|
|
54
|
+
*/
|
|
55
|
+
alt?: string;
|
|
56
|
+
/**
|
|
57
|
+
* Use a prebuilt image instead of generating one.
|
|
58
|
+
*
|
|
59
|
+
* Should be an absolute URL.
|
|
60
|
+
*/
|
|
61
|
+
url?: string;
|
|
62
|
+
/**
|
|
63
|
+
* The name of the component to render.
|
|
64
|
+
*/
|
|
65
|
+
component?: T | string;
|
|
66
|
+
/**
|
|
67
|
+
* Props to pass to the component.
|
|
68
|
+
*/
|
|
69
|
+
props?: OgImageComponents[T] | Record<string, any>;
|
|
70
|
+
renderer?: 'chromium' | 'satori';
|
|
71
|
+
extension?: 'png' | 'jpeg' | 'jpg';
|
|
72
|
+
emojis?: IconifyEmojiIconSets;
|
|
73
|
+
/**
|
|
74
|
+
* Provide a static HTML template to render the OG Image instead of a component.
|
|
75
|
+
*/
|
|
76
|
+
html?: string;
|
|
77
|
+
resvg?: ResvgRenderOptions;
|
|
78
|
+
satori?: SatoriOptions;
|
|
79
|
+
screenshot?: Partial<ScreenshotOptions>;
|
|
80
|
+
sharp?: SharpOptions;
|
|
81
|
+
fonts?: InputFontConfig[];
|
|
82
|
+
cacheMaxAgeSeconds?: number;
|
|
83
|
+
/**
|
|
84
|
+
* @internal
|
|
85
|
+
*/
|
|
86
|
+
_query?: Record<string, any>;
|
|
87
|
+
}
|
|
88
|
+
interface FontConfig {
|
|
89
|
+
name: string;
|
|
90
|
+
style?: string;
|
|
91
|
+
weight?: string | number;
|
|
92
|
+
path?: string;
|
|
93
|
+
key?: string;
|
|
94
|
+
absolutePath?: boolean;
|
|
95
|
+
}
|
|
96
|
+
type InputFontConfig = (`${string}:${number}` | string | FontConfig);
|
|
97
|
+
interface RuntimeCompatibilitySchema {
|
|
98
|
+
chromium: 'chrome-launcher' | 'on-demand' | 'playwright' | false;
|
|
99
|
+
['css-inline']: 'node' | 'wasm' | 'wasm-fs' | false;
|
|
100
|
+
resvg: 'node' | 'wasm' | 'wasm-fs' | false;
|
|
101
|
+
satori: 'node' | 'wasm' | 'wasm-fs' | false;
|
|
102
|
+
sharp: 'node' | false;
|
|
103
|
+
wasm?: NitroOptions['wasm'];
|
|
104
|
+
}
|
|
105
|
+
type CompatibilityFlags = Partial<Omit<RuntimeCompatibilitySchema, 'wasm'>>;
|
|
106
|
+
interface CompatibilityFlagEnvOverrides {
|
|
107
|
+
dev?: CompatibilityFlags;
|
|
108
|
+
runtime?: CompatibilityFlags;
|
|
109
|
+
prerender?: CompatibilityFlags;
|
|
110
|
+
}
|
|
7
111
|
|
|
8
112
|
interface ModuleOptions {
|
|
9
113
|
/**
|
package/dist/module.d.ts
CHANGED
|
@@ -3,7 +3,111 @@ import { AddComponentOptions } from '@nuxt/kit';
|
|
|
3
3
|
import { ResvgRenderOptions } from '@resvg/resvg-js';
|
|
4
4
|
import { SatoriOptions } from 'satori';
|
|
5
5
|
import { SharpOptions } from 'sharp';
|
|
6
|
-
import {
|
|
6
|
+
import { OgImageComponents } from '#og-image/components';
|
|
7
|
+
import { NitroOptions } from 'nitropack';
|
|
8
|
+
|
|
9
|
+
type IconifyEmojiIconSets = 'twemoji' | 'noto' | 'fluent-emoji' | 'fluent-emoji-flat' | 'fluent-emoji-high-contrast' | 'noto-v1' | 'emojione' | 'emojione-monotone' | 'emojione-v1' | 'streamline-emojis' | 'openmoji';
|
|
10
|
+
interface OgImageComponent {
|
|
11
|
+
path?: string;
|
|
12
|
+
pascalName: string;
|
|
13
|
+
kebabName: string;
|
|
14
|
+
hash: string;
|
|
15
|
+
category: 'app' | 'community' | 'pro';
|
|
16
|
+
credits?: string;
|
|
17
|
+
}
|
|
18
|
+
interface ScreenshotOptions {
|
|
19
|
+
colorScheme?: 'dark' | 'light';
|
|
20
|
+
selector?: string;
|
|
21
|
+
mask?: string;
|
|
22
|
+
/**
|
|
23
|
+
* The width of the screenshot.
|
|
24
|
+
*
|
|
25
|
+
* @default 1200
|
|
26
|
+
*/
|
|
27
|
+
width: number;
|
|
28
|
+
/**
|
|
29
|
+
* The height of the screenshot.
|
|
30
|
+
*
|
|
31
|
+
* @default 630
|
|
32
|
+
*/
|
|
33
|
+
height: number;
|
|
34
|
+
/**
|
|
35
|
+
* How long to wait before taking the screenshot. Useful for waiting for animations.
|
|
36
|
+
*/
|
|
37
|
+
delay?: number;
|
|
38
|
+
}
|
|
39
|
+
interface OgImageOptions<T extends keyof OgImageComponents = 'NuxtSeo'> {
|
|
40
|
+
/**
|
|
41
|
+
* The width of the screenshot.
|
|
42
|
+
*
|
|
43
|
+
* @default 1200
|
|
44
|
+
*/
|
|
45
|
+
width?: number;
|
|
46
|
+
/**
|
|
47
|
+
* The height of the screenshot.
|
|
48
|
+
*
|
|
49
|
+
* @default 630
|
|
50
|
+
*/
|
|
51
|
+
height?: number;
|
|
52
|
+
/**
|
|
53
|
+
* The alt text for the image.
|
|
54
|
+
*/
|
|
55
|
+
alt?: string;
|
|
56
|
+
/**
|
|
57
|
+
* Use a prebuilt image instead of generating one.
|
|
58
|
+
*
|
|
59
|
+
* Should be an absolute URL.
|
|
60
|
+
*/
|
|
61
|
+
url?: string;
|
|
62
|
+
/**
|
|
63
|
+
* The name of the component to render.
|
|
64
|
+
*/
|
|
65
|
+
component?: T | string;
|
|
66
|
+
/**
|
|
67
|
+
* Props to pass to the component.
|
|
68
|
+
*/
|
|
69
|
+
props?: OgImageComponents[T] | Record<string, any>;
|
|
70
|
+
renderer?: 'chromium' | 'satori';
|
|
71
|
+
extension?: 'png' | 'jpeg' | 'jpg';
|
|
72
|
+
emojis?: IconifyEmojiIconSets;
|
|
73
|
+
/**
|
|
74
|
+
* Provide a static HTML template to render the OG Image instead of a component.
|
|
75
|
+
*/
|
|
76
|
+
html?: string;
|
|
77
|
+
resvg?: ResvgRenderOptions;
|
|
78
|
+
satori?: SatoriOptions;
|
|
79
|
+
screenshot?: Partial<ScreenshotOptions>;
|
|
80
|
+
sharp?: SharpOptions;
|
|
81
|
+
fonts?: InputFontConfig[];
|
|
82
|
+
cacheMaxAgeSeconds?: number;
|
|
83
|
+
/**
|
|
84
|
+
* @internal
|
|
85
|
+
*/
|
|
86
|
+
_query?: Record<string, any>;
|
|
87
|
+
}
|
|
88
|
+
interface FontConfig {
|
|
89
|
+
name: string;
|
|
90
|
+
style?: string;
|
|
91
|
+
weight?: string | number;
|
|
92
|
+
path?: string;
|
|
93
|
+
key?: string;
|
|
94
|
+
absolutePath?: boolean;
|
|
95
|
+
}
|
|
96
|
+
type InputFontConfig = (`${string}:${number}` | string | FontConfig);
|
|
97
|
+
interface RuntimeCompatibilitySchema {
|
|
98
|
+
chromium: 'chrome-launcher' | 'on-demand' | 'playwright' | false;
|
|
99
|
+
['css-inline']: 'node' | 'wasm' | 'wasm-fs' | false;
|
|
100
|
+
resvg: 'node' | 'wasm' | 'wasm-fs' | false;
|
|
101
|
+
satori: 'node' | 'wasm' | 'wasm-fs' | false;
|
|
102
|
+
sharp: 'node' | false;
|
|
103
|
+
wasm?: NitroOptions['wasm'];
|
|
104
|
+
}
|
|
105
|
+
type CompatibilityFlags = Partial<Omit<RuntimeCompatibilitySchema, 'wasm'>>;
|
|
106
|
+
interface CompatibilityFlagEnvOverrides {
|
|
107
|
+
dev?: CompatibilityFlags;
|
|
108
|
+
runtime?: CompatibilityFlags;
|
|
109
|
+
prerender?: CompatibilityFlags;
|
|
110
|
+
}
|
|
7
111
|
|
|
8
112
|
interface ModuleOptions {
|
|
9
113
|
/**
|
package/dist/module.json
CHANGED
package/dist/module.mjs
CHANGED
|
@@ -3,7 +3,7 @@ import { existsSync } from 'node:fs';
|
|
|
3
3
|
import { readFile, writeFile } from 'node:fs/promises';
|
|
4
4
|
import { useNuxt, tryResolveModule, addTemplate, resolvePath, loadNuxtModuleInstance, createResolver, defineNuxtModule, useLogger, addImports, addBuildPlugin, hasNuxtModule, addServerPlugin, addServerHandler, addComponentsDir, addComponent, addPlugin } from '@nuxt/kit';
|
|
5
5
|
import { defu } from 'defu';
|
|
6
|
-
import {
|
|
6
|
+
import { installNuxtSiteConfig } from 'nuxt-site-config/kit';
|
|
7
7
|
import { hash } from 'ohash';
|
|
8
8
|
import { dirname, relative as relative$1, isAbsolute, basename } from 'pathe';
|
|
9
9
|
import { readPackageJSON } from 'pkg-types';
|
|
@@ -329,11 +329,6 @@ function setupGenerateHandler(options, resolve, nuxt = useNuxt()) {
|
|
|
329
329
|
},
|
|
330
330
|
resolve
|
|
331
331
|
});
|
|
332
|
-
assertSiteConfig("nuxt-og-image", {
|
|
333
|
-
url: "OG Image tags are required to be absolute URLs."
|
|
334
|
-
}, {
|
|
335
|
-
throwError: true
|
|
336
|
-
});
|
|
337
332
|
});
|
|
338
333
|
}
|
|
339
334
|
|
|
@@ -343,14 +338,6 @@ function setupPrerenderHandler(options, resolve, nuxt = useNuxt()) {
|
|
|
343
338
|
await applyNitroPresetCompatibility(nitroConfig, { compatibility: options.compatibility?.prerender, resolve });
|
|
344
339
|
nitroConfig.wasm = nitroConfig.wasm || {};
|
|
345
340
|
nitroConfig.wasm.esmImport = false;
|
|
346
|
-
const prerenderingPages = (nuxt.options.nitro.prerender?.routes || []).some((r) => r && (!r.includes(".") || r.includes("*")));
|
|
347
|
-
if (prerenderingPages) {
|
|
348
|
-
assertSiteConfig("nuxt-og-image", {
|
|
349
|
-
url: "OG Image tags are required to be absolute URLs."
|
|
350
|
-
}, {
|
|
351
|
-
throwError: false
|
|
352
|
-
});
|
|
353
|
-
}
|
|
354
341
|
});
|
|
355
342
|
});
|
|
356
343
|
}
|
|
@@ -1,5 +1,8 @@
|
|
|
1
1
|
import { useNitroApp } from "#imports";
|
|
2
2
|
import { htmlPayloadCache, prerenderOptionsCache } from "#og-image-cache";
|
|
3
|
+
import { theme } from "#og-image-virtual/unocss-config.mjs";
|
|
4
|
+
import { createGenerator } from "@unocss/core";
|
|
5
|
+
import presetWind from "@unocss/preset-wind";
|
|
3
6
|
import { defu } from "defu";
|
|
4
7
|
import { parse } from "devalue";
|
|
5
8
|
import { createError, getQuery } from "h3";
|
|
@@ -9,9 +12,9 @@ import { normalizeKey } from "unstorage";
|
|
|
9
12
|
import { separateProps, useOgImageRuntimeConfig } from "../../shared.js";
|
|
10
13
|
import { decodeObjectHtmlEntities } from "../util/encoding.js";
|
|
11
14
|
import { createNitroRouteRuleMatcher } from "../util/kit.js";
|
|
15
|
+
import { logger } from "../util/logger.js";
|
|
12
16
|
import { normaliseOptions } from "../util/options.js";
|
|
13
17
|
import { useChromiumRenderer, useSatoriRenderer } from "./instances.js";
|
|
14
|
-
import { logger } from "#og-image/server/util/logger";
|
|
15
18
|
export function resolvePathCacheKey(e, path) {
|
|
16
19
|
const siteConfig = e.context.siteConfig.get();
|
|
17
20
|
const basePath = withoutTrailingSlash(withoutLeadingSlash(normalizeKey(path || e.path)));
|
|
@@ -94,7 +97,13 @@ export async function resolveContext(e) {
|
|
|
94
97
|
statusMessage: `[Nuxt OG Image] Renderer ${options.renderer} is missing.`
|
|
95
98
|
});
|
|
96
99
|
}
|
|
100
|
+
const unocss = await createGenerator({ theme }, {
|
|
101
|
+
presets: [
|
|
102
|
+
presetWind()
|
|
103
|
+
]
|
|
104
|
+
});
|
|
97
105
|
const ctx = {
|
|
106
|
+
unocss,
|
|
98
107
|
e,
|
|
99
108
|
key,
|
|
100
109
|
renderer,
|
|
@@ -1,20 +1,12 @@
|
|
|
1
|
-
import { theme } from "#og-image-virtual/unocss-config.mjs";
|
|
2
|
-
import { createGenerator } from "@unocss/core";
|
|
3
|
-
import presetWind from "@unocss/preset-wind";
|
|
4
1
|
import { defineSatoriTransformer } from "../utils.js";
|
|
5
|
-
const uno = createGenerator({ theme }, {
|
|
6
|
-
presets: [
|
|
7
|
-
presetWind()
|
|
8
|
-
]
|
|
9
|
-
});
|
|
10
2
|
export default defineSatoriTransformer({
|
|
11
3
|
filter: (node) => !!node.props?.class,
|
|
12
|
-
transform: async (node) => {
|
|
4
|
+
transform: async (node, ctx) => {
|
|
13
5
|
const classes = node.props.class || "";
|
|
14
6
|
const styles = node.props.style || {};
|
|
15
7
|
const replacedClasses = /* @__PURE__ */ new Set();
|
|
16
8
|
for (const token of classes.split(" ").filter((c) => c.trim())) {
|
|
17
|
-
const parsedToken = await
|
|
9
|
+
const parsedToken = await ctx.unocss.parseToken(token);
|
|
18
10
|
if (parsedToken) {
|
|
19
11
|
const inlineStyles = parsedToken[0][2].split(";").filter((s) => !!s?.trim());
|
|
20
12
|
const vars = {
|
package/dist/runtime/types.d.ts
CHANGED
|
@@ -1,12 +1,15 @@
|
|
|
1
1
|
import type { OgImageComponents } from '#og-image/components';
|
|
2
2
|
import type { ResvgRenderOptions } from '@resvg/resvg-js';
|
|
3
|
+
import type { UnoGenerator } from '@unocss/core';
|
|
3
4
|
import type { AllowedComponentProps, Component, ComponentCustomProps, VNodeProps } from '@vue/runtime-core';
|
|
4
5
|
import type { H3Error, H3Event } from 'h3';
|
|
5
|
-
import type {
|
|
6
|
+
import type { NitroOptions } from 'nitropack';
|
|
7
|
+
import type { NitroApp } from 'nitropack/types';
|
|
6
8
|
import type { SatoriOptions } from 'satori';
|
|
7
9
|
import type { html } from 'satori-html';
|
|
8
10
|
import type { SharpOptions } from 'sharp';
|
|
9
11
|
export interface OgImageRenderEventContext {
|
|
12
|
+
unocss: UnoGenerator;
|
|
10
13
|
e: H3Event;
|
|
11
14
|
extension: 'png' | 'jpeg' | 'jpg' | 'svg' | 'html' | 'json';
|
|
12
15
|
key: string;
|
package/package.json
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "nuxt-og-image",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "
|
|
4
|
+
"version": "4.0.1",
|
|
5
|
+
"packageManager": "pnpm@9.14.2",
|
|
5
6
|
"description": "Enlightened OG Image generation for Nuxt.",
|
|
6
7
|
"author": {
|
|
7
8
|
"website": "https://harlanzw.com",
|
|
@@ -35,20 +36,19 @@
|
|
|
35
36
|
"node": ">=18.0.0"
|
|
36
37
|
},
|
|
37
38
|
"dependencies": {
|
|
38
|
-
"@nuxt/devtools-kit": "^1.6.
|
|
39
|
+
"@nuxt/devtools-kit": "^1.6.3",
|
|
39
40
|
"@nuxt/kit": "^3.14.1592",
|
|
40
41
|
"@resvg/resvg-js": "^2.6.2",
|
|
41
42
|
"@resvg/resvg-wasm": "^2.6.2",
|
|
42
|
-
"@unocss/core": "^0.
|
|
43
|
-
"@unocss/preset-wind": "^0.
|
|
43
|
+
"@unocss/core": "^0.65.1",
|
|
44
|
+
"@unocss/preset-wind": "^0.65.1",
|
|
44
45
|
"chrome-launcher": "^1.1.2",
|
|
45
46
|
"defu": "^6.1.4",
|
|
46
|
-
"execa": "^9.5.
|
|
47
|
+
"execa": "^9.5.2",
|
|
47
48
|
"image-size": "^1.1.1",
|
|
48
|
-
"magic-string": "^0.30.
|
|
49
|
-
"nuxt-site-config": "^
|
|
50
|
-
"
|
|
51
|
-
"nypm": "^0.3.12",
|
|
49
|
+
"magic-string": "^0.30.14",
|
|
50
|
+
"nuxt-site-config": "^3.0.6",
|
|
51
|
+
"nypm": "^0.4.1",
|
|
52
52
|
"ofetch": "^1.4.1",
|
|
53
53
|
"ohash": "^1.1.4",
|
|
54
54
|
"pathe": "^1.1.2",
|
|
@@ -61,53 +61,53 @@
|
|
|
61
61
|
"std-env": "^3.8.0",
|
|
62
62
|
"strip-literal": "^2.1.1",
|
|
63
63
|
"ufo": "^1.5.4",
|
|
64
|
-
"unplugin": "^
|
|
64
|
+
"unplugin": "^2.0.0",
|
|
65
65
|
"unwasm": "^0.3.9",
|
|
66
66
|
"yoga-wasm-web": "^0.3.3"
|
|
67
67
|
},
|
|
68
68
|
"devDependencies": {
|
|
69
|
-
"@antfu/eslint-config": "^3.
|
|
69
|
+
"@antfu/eslint-config": "^3.11.2",
|
|
70
70
|
"@css-inline/css-inline": "^0.14.3",
|
|
71
71
|
"@headlessui/vue": "^1.7.23",
|
|
72
72
|
"@iconify-json/carbon": "^1.2.4",
|
|
73
73
|
"@iconify-json/logos": "^1.2.3",
|
|
74
74
|
"@iconify-json/noto": "^1.2.1",
|
|
75
75
|
"@iconify-json/ri": "^1.2.3",
|
|
76
|
-
"@iconify-json/tabler": "^1.2.
|
|
76
|
+
"@iconify-json/tabler": "^1.2.10",
|
|
77
77
|
"@img/sharp-linux-x64": "0.33.5",
|
|
78
78
|
"@nuxt/content": "^2.13.4",
|
|
79
|
-
"@nuxt/devtools": "1.6.
|
|
80
|
-
"@nuxt/devtools-ui-kit": "^1.6.
|
|
81
|
-
"@nuxt/icon": "^1.
|
|
79
|
+
"@nuxt/devtools": "1.6.3",
|
|
80
|
+
"@nuxt/devtools-ui-kit": "^1.6.3",
|
|
81
|
+
"@nuxt/icon": "^1.9.1",
|
|
82
82
|
"@nuxt/image": "^1.8.1",
|
|
83
83
|
"@nuxt/module-builder": "^0.8.4",
|
|
84
|
-
"@nuxt/test-utils": "3.
|
|
84
|
+
"@nuxt/test-utils": "3.15.1",
|
|
85
85
|
"@nuxt/ui": "^2.19.2",
|
|
86
86
|
"@nuxtjs/color-mode": "^3.5.2",
|
|
87
87
|
"@nuxtjs/eslint-config-typescript": "^12.1.0",
|
|
88
|
-
"@nuxtjs/i18n": "^9.1.
|
|
88
|
+
"@nuxtjs/i18n": "^9.1.1",
|
|
89
89
|
"@nuxtjs/tailwindcss": "^6.12.2",
|
|
90
|
-
"@unocss/nuxt": "^0.
|
|
91
|
-
"@unocss/preset-icons": "^0.
|
|
92
|
-
"@unocss/preset-uno": "^0.
|
|
93
|
-
"@unocss/runtime": "^0.
|
|
94
|
-
"@vueuse/nuxt": "^
|
|
90
|
+
"@unocss/nuxt": "^0.65.1",
|
|
91
|
+
"@unocss/preset-icons": "^0.65.1",
|
|
92
|
+
"@unocss/preset-uno": "^0.65.1",
|
|
93
|
+
"@unocss/runtime": "^0.65.1",
|
|
94
|
+
"@vueuse/nuxt": "^12.0.0",
|
|
95
95
|
"bumpp": "^9.8.1",
|
|
96
|
-
"eslint": "9.
|
|
96
|
+
"eslint": "9.16.0",
|
|
97
97
|
"jest-image-snapshot": "^6.4.0",
|
|
98
98
|
"nuxt": "^3.14.1592",
|
|
99
99
|
"playwright": "^1.49.0",
|
|
100
|
-
"sass": "^1.
|
|
100
|
+
"sass": "^1.82.0",
|
|
101
101
|
"sharp": "^0.33.5",
|
|
102
|
-
"
|
|
103
|
-
"
|
|
104
|
-
"
|
|
102
|
+
"typescript": "5.6.3",
|
|
103
|
+
"unocss": "^0.65.1",
|
|
104
|
+
"vitest": "^2.1.8"
|
|
105
105
|
},
|
|
106
106
|
"resolutions": {
|
|
107
107
|
"typescript": "5.6.3",
|
|
108
108
|
"@vue/server-renderer": "3.5.13",
|
|
109
109
|
"vue": "3.5.13",
|
|
110
|
-
"vue-router": "4.
|
|
110
|
+
"vue-router": "4.5.0"
|
|
111
111
|
},
|
|
112
112
|
"build": {
|
|
113
113
|
"externals": [
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"id":"52ed68a4-7100-435e-b5ed-e39bac0de095","timestamp":1732426743929,"matcher":{"static":{},"wildcard":{},"dynamic":{}},"prerendered":[]}
|