nuxt-og-image 6.5.0 → 6.5.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.
- package/dist/chunks/tw4.cjs +2 -2
- package/dist/chunks/tw4.mjs +2 -2
- package/dist/chunks/uno.cjs +2 -2
- package/dist/chunks/uno.mjs +2 -2
- package/dist/content.d.cts +2 -14
- package/dist/content.d.mts +2 -14
- package/dist/content.d.ts +2 -14
- package/dist/devtools/200.html +1 -1
- package/dist/devtools/404.html +1 -1
- package/dist/devtools/_nuxt/{TwxRLlMM.js → B9jrmesR.js} +1 -1
- package/dist/devtools/_nuxt/BA-4cUNc.js +1 -0
- package/dist/devtools/_nuxt/{BLdiDWsd.js → BOEXnX7x.js} +3 -3
- package/dist/devtools/_nuxt/BWKJ0Uxb.js +30 -0
- package/dist/devtools/_nuxt/Bdtz4ZK9.js +4 -0
- package/dist/devtools/_nuxt/{oq4DzcWM.js → C5797Ieg.js} +1 -1
- package/dist/devtools/_nuxt/{D0mxCJKN.js → C_JnDlx-.js} +1 -1
- package/dist/devtools/_nuxt/{DNGiVUg5.js → CdmciVPJ.js} +1 -1
- package/dist/devtools/_nuxt/CqjbkMN9.js +3 -0
- package/dist/devtools/_nuxt/D4EkL0XJ.js +6 -0
- package/dist/devtools/_nuxt/DKaW7clv.js +1 -0
- package/dist/devtools/_nuxt/{BFE1I-6y.js → DSl3mlLY.js} +1 -1
- package/dist/devtools/_nuxt/DYta7Mdi.js +3 -0
- package/dist/devtools/_nuxt/DevtoolsSection.CcOMr_vO.css +1 -0
- package/dist/devtools/_nuxt/DevtoolsSnippet.BhrTdbXn.css +1 -0
- package/dist/devtools/_nuxt/{IFrameLoader.Bd09J70F.css → IFrameLoader.k_861Nnq.css} +1 -1
- package/dist/devtools/_nuxt/builds/latest.json +1 -1
- package/dist/devtools/_nuxt/builds/meta/a36bc212-7179-4aa2-a534-6366229bd7b1.json +1 -0
- package/dist/devtools/_nuxt/entry.CcrXpo2y.css +2 -0
- package/dist/devtools/_nuxt/{pages.sZ4TsxJx.css → pages.Ci_xvfJ8.css} +1 -1
- package/dist/devtools/_nuxt/renderer-select.COGJ4ZQe.css +1 -0
- package/dist/devtools/_nuxt/{templates.BHO7w0UG.css → templates.BByln3BG.css} +1 -1
- package/dist/devtools/_nuxt/{DWbsyffp.js → wMBdlVF-.js} +2 -2
- package/dist/devtools/debug/index.html +1 -1
- package/dist/devtools/docs/index.html +1 -1
- package/dist/devtools/index.html +1 -1
- package/dist/devtools/templates/index.html +1 -1
- package/dist/module.cjs +2 -2
- package/dist/module.json +1 -1
- package/dist/module.mjs +2 -2
- package/dist/runtime/app/components/Templates/Community/BlogPost.takumi.d.vue.ts +2 -2
- package/dist/runtime/app/components/Templates/Community/BlogPost.takumi.vue.d.ts +2 -2
- package/dist/runtime/app/components/Templates/Community/Brutalist.satori.d.vue.ts +2 -2
- package/dist/runtime/app/components/Templates/Community/Brutalist.satori.vue.d.ts +2 -2
- package/dist/runtime/app/components/Templates/Community/Docs.takumi.d.vue.ts +2 -2
- package/dist/runtime/app/components/Templates/Community/Docs.takumi.vue.d.ts +2 -2
- package/dist/runtime/app/components/Templates/Community/Frame.satori.d.vue.ts +2 -2
- package/dist/runtime/app/components/Templates/Community/Frame.satori.vue.d.ts +2 -2
- package/dist/runtime/app/components/Templates/Community/Nuxt.satori.d.vue.ts +2 -2
- package/dist/runtime/app/components/Templates/Community/Nuxt.satori.vue.d.ts +2 -2
- package/dist/runtime/app/components/Templates/Community/NuxtSeo.satori.d.vue.ts +2 -2
- package/dist/runtime/app/components/Templates/Community/NuxtSeo.satori.vue.d.ts +2 -2
- package/dist/runtime/app/components/Templates/Community/NuxtSeo.takumi.d.vue.ts +2 -2
- package/dist/runtime/app/components/Templates/Community/NuxtSeo.takumi.vue.d.ts +2 -2
- package/dist/runtime/app/components/Templates/Community/Pergel.satori.d.vue.ts +2 -2
- package/dist/runtime/app/components/Templates/Community/Pergel.satori.vue.d.ts +2 -2
- package/dist/runtime/app/components/Templates/Community/ProductCard.takumi.d.vue.ts +2 -2
- package/dist/runtime/app/components/Templates/Community/ProductCard.takumi.vue.d.ts +2 -2
- package/dist/runtime/app/components/Templates/Community/SaaS.satori.d.vue.ts +2 -2
- package/dist/runtime/app/components/Templates/Community/SaaS.satori.vue.d.ts +2 -2
- package/dist/runtime/app/components/Templates/Community/SimpleBlog.satori.d.vue.ts +2 -2
- package/dist/runtime/app/components/Templates/Community/SimpleBlog.satori.vue.d.ts +2 -2
- package/dist/runtime/app/components/Templates/Community/UnJs.satori.d.vue.ts +2 -2
- package/dist/runtime/app/components/Templates/Community/UnJs.satori.vue.d.ts +2 -2
- package/dist/runtime/app/components/Templates/Community/WithEmoji.satori.d.vue.ts +2 -2
- package/dist/runtime/app/components/Templates/Community/WithEmoji.satori.vue.d.ts +2 -2
- package/dist/runtime/server/og-image/bindings/browser/cloudflare.js +2 -1
- package/dist/runtime/server/og-image/browser/screenshot.js +4 -1
- package/dist/runtime/server/og-image/takumi/instances.d.ts +1 -1
- package/dist/runtime/server/og-image/takumi/nodes.d.ts +1 -1
- package/dist/runtime/server/og-image/takumi/renderer.js +9 -4
- package/dist/runtime/server/util/cache.d.ts +5 -0
- package/dist/runtime/server/util/cache.js +22 -17
- package/dist/runtime/server/util/kit.js +1 -1
- package/dist/runtime/server/util/ssrf.js +15 -0
- package/dist/runtime/server/util/wasm.js +2 -2
- package/dist/shared/{nuxt-og-image.DVJCoUpz.cjs → nuxt-og-image.CgPzmzQY.cjs} +29 -15
- package/dist/shared/{nuxt-og-image.CBAJqzNe.mjs → nuxt-og-image.DGAMxBol.mjs} +28 -14
- package/package.json +61 -41
- package/dist/devtools/_nuxt/BFnUFv7a.js +0 -6
- package/dist/devtools/_nuxt/BeokGQcV.js +0 -1
- package/dist/devtools/_nuxt/CAvCRPq5.js +0 -23
- package/dist/devtools/_nuxt/D-SbM8XJ.js +0 -3
- package/dist/devtools/_nuxt/Dd8dEdTA.js +0 -3
- package/dist/devtools/_nuxt/DdjB2us_.js +0 -4
- package/dist/devtools/_nuxt/DevtoolsSection.DithqiRs.css +0 -1
- package/dist/devtools/_nuxt/DevtoolsSnippet.Bi7K9LD7.css +0 -1
- package/dist/devtools/_nuxt/builds/meta/4e19b9f7-298b-4c14-85e9-238c217158cb.json +0 -1
- package/dist/devtools/_nuxt/entry.D10ZDedD.css +0 -2
- package/dist/devtools/_nuxt/renderer-select.DomsjmoH.css +0 -1
- /package/dist/devtools/_nuxt/{CM-t-6ZT.js → C5jzcy9i.js} +0 -0
- /package/dist/devtools/_nuxt/{HWyD49jH.js → CCTv7mmB.js} +0 -0
- /package/dist/devtools/_nuxt/{BsRKQH5X.js → CuJezOxb.js} +0 -0
- /package/dist/devtools/_nuxt/{CDaXKRRu.js → E8AZ6HoH.js} +0 -0
- /package/dist/devtools/_nuxt/{PONEy9N-.js → O5eLyffU.js} +0 -0
package/dist/module.cjs
CHANGED
|
@@ -9,13 +9,13 @@ require('nuxt-site-config/kit');
|
|
|
9
9
|
require('ohash');
|
|
10
10
|
require('pathe');
|
|
11
11
|
require('pkg-types');
|
|
12
|
-
|
|
12
|
+
require('std-env');
|
|
13
|
+
const module$1 = require('./shared/nuxt-og-image.CgPzmzQY.cjs');
|
|
13
14
|
require('nuxtseo-shared/kit');
|
|
14
15
|
require('../dist/runtime/logger.js');
|
|
15
16
|
require('node:crypto');
|
|
16
17
|
require('oxc-walker');
|
|
17
18
|
require('chrome-launcher');
|
|
18
|
-
require('std-env');
|
|
19
19
|
require('nypm');
|
|
20
20
|
require('nuxtseo-shared/devtools');
|
|
21
21
|
require('unstorage');
|
package/dist/module.json
CHANGED
package/dist/module.mjs
CHANGED
|
@@ -7,13 +7,13 @@ import 'nuxt-site-config/kit';
|
|
|
7
7
|
import 'ohash';
|
|
8
8
|
import 'pathe';
|
|
9
9
|
import 'pkg-types';
|
|
10
|
-
|
|
10
|
+
import 'std-env';
|
|
11
|
+
export { m as default } from './shared/nuxt-og-image.DGAMxBol.mjs';
|
|
11
12
|
import 'nuxtseo-shared/kit';
|
|
12
13
|
import '../dist/runtime/logger.js';
|
|
13
14
|
import 'node:crypto';
|
|
14
15
|
import 'oxc-walker';
|
|
15
16
|
import 'chrome-launcher';
|
|
16
|
-
import 'std-env';
|
|
17
17
|
import 'nypm';
|
|
18
18
|
import 'nuxtseo-shared/devtools';
|
|
19
19
|
import 'unstorage';
|
|
@@ -10,12 +10,12 @@ type __VLS_Props = {
|
|
|
10
10
|
avatar?: string;
|
|
11
11
|
backgroundImage?: string;
|
|
12
12
|
};
|
|
13
|
-
declare const __VLS_export: import("
|
|
13
|
+
declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {
|
|
14
14
|
colorMode: "dark" | "light";
|
|
15
15
|
title: string;
|
|
16
16
|
author: string;
|
|
17
17
|
date: string;
|
|
18
18
|
category: string;
|
|
19
|
-
}, {}, {}, {}, string, import("
|
|
19
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
20
20
|
declare const _default: typeof __VLS_export;
|
|
21
21
|
export default _default;
|
|
@@ -10,12 +10,12 @@ type __VLS_Props = {
|
|
|
10
10
|
avatar?: string;
|
|
11
11
|
backgroundImage?: string;
|
|
12
12
|
};
|
|
13
|
-
declare const __VLS_export: import("
|
|
13
|
+
declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {
|
|
14
14
|
colorMode: "dark" | "light";
|
|
15
15
|
title: string;
|
|
16
16
|
author: string;
|
|
17
17
|
date: string;
|
|
18
18
|
category: string;
|
|
19
|
-
}, {}, {}, {}, string, import("
|
|
19
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
20
20
|
declare const _default: typeof __VLS_export;
|
|
21
21
|
export default _default;
|
|
@@ -7,10 +7,10 @@ type __VLS_Props = {
|
|
|
7
7
|
subtitle?: string;
|
|
8
8
|
accent?: string;
|
|
9
9
|
};
|
|
10
|
-
declare const __VLS_export: import("
|
|
10
|
+
declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {
|
|
11
11
|
colorMode: "dark" | "light";
|
|
12
12
|
title: string;
|
|
13
13
|
accent: string;
|
|
14
|
-
}, {}, {}, {}, string, import("
|
|
14
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
15
15
|
declare const _default: typeof __VLS_export;
|
|
16
16
|
export default _default;
|
|
@@ -7,10 +7,10 @@ type __VLS_Props = {
|
|
|
7
7
|
subtitle?: string;
|
|
8
8
|
accent?: string;
|
|
9
9
|
};
|
|
10
|
-
declare const __VLS_export: import("
|
|
10
|
+
declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {
|
|
11
11
|
colorMode: "dark" | "light";
|
|
12
12
|
title: string;
|
|
13
13
|
accent: string;
|
|
14
|
-
}, {}, {}, {}, string, import("
|
|
14
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
15
15
|
declare const _default: typeof __VLS_export;
|
|
16
16
|
export default _default;
|
|
@@ -10,13 +10,13 @@ type __VLS_Props = {
|
|
|
10
10
|
primaryTextColor?: string;
|
|
11
11
|
site?: string;
|
|
12
12
|
};
|
|
13
|
-
declare const __VLS_export: import("
|
|
13
|
+
declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {
|
|
14
14
|
colorMode: "dark" | "light";
|
|
15
15
|
title: string;
|
|
16
16
|
description: string;
|
|
17
17
|
primaryColor: string;
|
|
18
18
|
primaryTextColor: string;
|
|
19
19
|
site: string;
|
|
20
|
-
}, {}, {}, {}, string, import("
|
|
20
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
21
21
|
declare const _default: typeof __VLS_export;
|
|
22
22
|
export default _default;
|
|
@@ -10,13 +10,13 @@ type __VLS_Props = {
|
|
|
10
10
|
primaryTextColor?: string;
|
|
11
11
|
site?: string;
|
|
12
12
|
};
|
|
13
|
-
declare const __VLS_export: import("
|
|
13
|
+
declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {
|
|
14
14
|
colorMode: "dark" | "light";
|
|
15
15
|
title: string;
|
|
16
16
|
description: string;
|
|
17
17
|
primaryColor: string;
|
|
18
18
|
primaryTextColor: string;
|
|
19
19
|
site: string;
|
|
20
|
-
}, {}, {}, {}, string, import("
|
|
20
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
21
21
|
declare const _default: typeof __VLS_export;
|
|
22
22
|
export default _default;
|
|
@@ -12,8 +12,8 @@ type __VLS_Props = {
|
|
|
12
12
|
icon: string;
|
|
13
13
|
}[];
|
|
14
14
|
};
|
|
15
|
-
declare const __VLS_export: import("
|
|
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
16
|
colorMode: "dark" | "light";
|
|
17
|
-
}, {}, {}, {}, string, import("
|
|
17
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
18
18
|
declare const _default: typeof __VLS_export;
|
|
19
19
|
export default _default;
|
|
@@ -12,8 +12,8 @@ type __VLS_Props = {
|
|
|
12
12
|
icon: string;
|
|
13
13
|
}[];
|
|
14
14
|
};
|
|
15
|
-
declare const __VLS_export: import("
|
|
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
16
|
colorMode: "dark" | "light";
|
|
17
|
-
}, {}, {}, {}, string, import("
|
|
17
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
18
18
|
declare const _default: typeof __VLS_export;
|
|
19
19
|
export default _default;
|
|
@@ -4,11 +4,11 @@ type __VLS_Props = {
|
|
|
4
4
|
description?: string;
|
|
5
5
|
headline?: string;
|
|
6
6
|
};
|
|
7
|
-
declare const __VLS_export: import("
|
|
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
8
|
colorMode: "dark" | "light";
|
|
9
9
|
title: string;
|
|
10
10
|
description: string;
|
|
11
11
|
headline: string;
|
|
12
|
-
}, {}, {}, {}, string, import("
|
|
12
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
13
13
|
declare const _default: typeof __VLS_export;
|
|
14
14
|
export default _default;
|
|
@@ -4,11 +4,11 @@ type __VLS_Props = {
|
|
|
4
4
|
description?: string;
|
|
5
5
|
headline?: string;
|
|
6
6
|
};
|
|
7
|
-
declare const __VLS_export: import("
|
|
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
8
|
colorMode: "dark" | "light";
|
|
9
9
|
title: string;
|
|
10
10
|
description: string;
|
|
11
11
|
headline: string;
|
|
12
|
-
}, {}, {}, {}, string, import("
|
|
12
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
13
13
|
declare const _default: typeof __VLS_export;
|
|
14
14
|
export default _default;
|
|
@@ -4,9 +4,9 @@ type __VLS_Props = {
|
|
|
4
4
|
description?: string;
|
|
5
5
|
isPro?: boolean;
|
|
6
6
|
};
|
|
7
|
-
declare const __VLS_export: import("
|
|
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
8
|
colorMode: "dark" | "light";
|
|
9
9
|
title: string;
|
|
10
|
-
}, {}, {}, {}, string, import("
|
|
10
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
11
11
|
declare const _default: typeof __VLS_export;
|
|
12
12
|
export default _default;
|
|
@@ -4,9 +4,9 @@ type __VLS_Props = {
|
|
|
4
4
|
description?: string;
|
|
5
5
|
isPro?: boolean;
|
|
6
6
|
};
|
|
7
|
-
declare const __VLS_export: import("
|
|
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
8
|
colorMode: "dark" | "light";
|
|
9
9
|
title: string;
|
|
10
|
-
}, {}, {}, {}, string, import("
|
|
10
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
11
11
|
declare const _default: typeof __VLS_export;
|
|
12
12
|
export default _default;
|
|
@@ -6,11 +6,11 @@ type __VLS_Props = {
|
|
|
6
6
|
width?: number;
|
|
7
7
|
height?: number;
|
|
8
8
|
};
|
|
9
|
-
declare const __VLS_export: import("
|
|
9
|
+
declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {
|
|
10
10
|
colorMode: "dark" | "light";
|
|
11
11
|
title: string;
|
|
12
12
|
height: number;
|
|
13
13
|
width: number;
|
|
14
|
-
}, {}, {}, {}, string, import("
|
|
14
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
15
15
|
declare const _default: typeof __VLS_export;
|
|
16
16
|
export default _default;
|
|
@@ -6,11 +6,11 @@ type __VLS_Props = {
|
|
|
6
6
|
width?: number;
|
|
7
7
|
height?: number;
|
|
8
8
|
};
|
|
9
|
-
declare const __VLS_export: import("
|
|
9
|
+
declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {
|
|
10
10
|
colorMode: "dark" | "light";
|
|
11
11
|
title: string;
|
|
12
12
|
height: number;
|
|
13
13
|
width: number;
|
|
14
|
-
}, {}, {}, {}, string, import("
|
|
14
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
15
15
|
declare const _default: typeof __VLS_export;
|
|
16
16
|
export default _default;
|
|
@@ -4,11 +4,11 @@ type __VLS_Props = {
|
|
|
4
4
|
description?: string;
|
|
5
5
|
headline?: string;
|
|
6
6
|
};
|
|
7
|
-
declare const __VLS_export: import("
|
|
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
8
|
colorMode: "dark" | "light";
|
|
9
9
|
title: string;
|
|
10
10
|
description: string;
|
|
11
11
|
headline: string;
|
|
12
|
-
}, {}, {}, {}, string, import("
|
|
12
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
13
13
|
declare const _default: typeof __VLS_export;
|
|
14
14
|
export default _default;
|
|
@@ -4,11 +4,11 @@ type __VLS_Props = {
|
|
|
4
4
|
description?: string;
|
|
5
5
|
headline?: string;
|
|
6
6
|
};
|
|
7
|
-
declare const __VLS_export: import("
|
|
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
8
|
colorMode: "dark" | "light";
|
|
9
9
|
title: string;
|
|
10
10
|
description: string;
|
|
11
11
|
headline: string;
|
|
12
|
-
}, {}, {}, {}, string, import("
|
|
12
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
13
13
|
declare const _default: typeof __VLS_export;
|
|
14
14
|
export default _default;
|
|
@@ -9,12 +9,12 @@ type __VLS_Props = {
|
|
|
9
9
|
image?: string;
|
|
10
10
|
brand?: string;
|
|
11
11
|
};
|
|
12
|
-
declare const __VLS_export: import("
|
|
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
13
|
colorMode: "dark" | "light";
|
|
14
14
|
description: string;
|
|
15
15
|
productName: string;
|
|
16
16
|
price: string;
|
|
17
17
|
brand: string;
|
|
18
|
-
}, {}, {}, {}, string, import("
|
|
18
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
19
19
|
declare const _default: typeof __VLS_export;
|
|
20
20
|
export default _default;
|
|
@@ -9,12 +9,12 @@ type __VLS_Props = {
|
|
|
9
9
|
image?: string;
|
|
10
10
|
brand?: string;
|
|
11
11
|
};
|
|
12
|
-
declare const __VLS_export: import("
|
|
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
13
|
colorMode: "dark" | "light";
|
|
14
14
|
description: string;
|
|
15
15
|
productName: string;
|
|
16
16
|
price: string;
|
|
17
17
|
brand: string;
|
|
18
|
-
}, {}, {}, {}, string, import("
|
|
18
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
19
19
|
declare const _default: typeof __VLS_export;
|
|
20
20
|
export default _default;
|
|
@@ -6,9 +6,9 @@ type __VLS_Props = {
|
|
|
6
6
|
theme?: string;
|
|
7
7
|
image?: string;
|
|
8
8
|
};
|
|
9
|
-
declare const __VLS_export: import("
|
|
9
|
+
declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {
|
|
10
10
|
colorMode: "dark" | "light";
|
|
11
11
|
theme: string;
|
|
12
|
-
}, {}, {}, {}, string, import("
|
|
12
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
13
13
|
declare const _default: typeof __VLS_export;
|
|
14
14
|
export default _default;
|
|
@@ -6,9 +6,9 @@ type __VLS_Props = {
|
|
|
6
6
|
theme?: string;
|
|
7
7
|
image?: string;
|
|
8
8
|
};
|
|
9
|
-
declare const __VLS_export: import("
|
|
9
|
+
declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {
|
|
10
10
|
colorMode: "dark" | "light";
|
|
11
11
|
theme: string;
|
|
12
|
-
}, {}, {}, {}, string, import("
|
|
12
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
13
13
|
declare const _default: typeof __VLS_export;
|
|
14
14
|
export default _default;
|
|
@@ -3,9 +3,9 @@ type __VLS_Props = {
|
|
|
3
3
|
title?: string;
|
|
4
4
|
website?: string;
|
|
5
5
|
};
|
|
6
|
-
declare const __VLS_export: import("
|
|
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
7
|
colorMode: "dark" | "light";
|
|
8
8
|
title: string;
|
|
9
|
-
}, {}, {}, {}, string, import("
|
|
9
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
10
10
|
declare const _default: typeof __VLS_export;
|
|
11
11
|
export default _default;
|
|
@@ -3,9 +3,9 @@ type __VLS_Props = {
|
|
|
3
3
|
title?: string;
|
|
4
4
|
website?: string;
|
|
5
5
|
};
|
|
6
|
-
declare const __VLS_export: import("
|
|
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
7
|
colorMode: "dark" | "light";
|
|
8
8
|
title: string;
|
|
9
|
-
}, {}, {}, {}, string, import("
|
|
9
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
10
10
|
declare const _default: typeof __VLS_export;
|
|
11
11
|
export default _default;
|
|
@@ -10,7 +10,7 @@ type __VLS_Props = {
|
|
|
10
10
|
stars?: string | number;
|
|
11
11
|
contributors?: string | number;
|
|
12
12
|
};
|
|
13
|
-
declare const __VLS_export: import("
|
|
13
|
+
declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {
|
|
14
14
|
colorMode: "dark" | "light";
|
|
15
15
|
title: string;
|
|
16
16
|
description: string;
|
|
@@ -18,6 +18,6 @@ declare const __VLS_export: import("@vue/runtime-core").DefineComponent<__VLS_Pr
|
|
|
18
18
|
downloads: string | number;
|
|
19
19
|
stars: string | number;
|
|
20
20
|
contributors: string | number;
|
|
21
|
-
}, {}, {}, {}, string, import("
|
|
21
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
22
22
|
declare const _default: typeof __VLS_export;
|
|
23
23
|
export default _default;
|
|
@@ -10,7 +10,7 @@ type __VLS_Props = {
|
|
|
10
10
|
stars?: string | number;
|
|
11
11
|
contributors?: string | number;
|
|
12
12
|
};
|
|
13
|
-
declare const __VLS_export: import("
|
|
13
|
+
declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {
|
|
14
14
|
colorMode: "dark" | "light";
|
|
15
15
|
title: string;
|
|
16
16
|
description: string;
|
|
@@ -18,6 +18,6 @@ declare const __VLS_export: import("@vue/runtime-core").DefineComponent<__VLS_Pr
|
|
|
18
18
|
downloads: string | number;
|
|
19
19
|
stars: string | number;
|
|
20
20
|
contributors: string | number;
|
|
21
|
-
}, {}, {}, {}, string, import("
|
|
21
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
22
22
|
declare const _default: typeof __VLS_export;
|
|
23
23
|
export default _default;
|
|
@@ -6,10 +6,10 @@ type __VLS_Props = {
|
|
|
6
6
|
emoji?: string;
|
|
7
7
|
title?: string;
|
|
8
8
|
};
|
|
9
|
-
declare const __VLS_export: import("
|
|
9
|
+
declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {
|
|
10
10
|
colorMode: "dark" | "light";
|
|
11
11
|
title: string;
|
|
12
12
|
emoji: string;
|
|
13
|
-
}, {}, {}, {}, string, import("
|
|
13
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
14
14
|
declare const _default: typeof __VLS_export;
|
|
15
15
|
export default _default;
|
|
@@ -6,10 +6,10 @@ type __VLS_Props = {
|
|
|
6
6
|
emoji?: string;
|
|
7
7
|
title?: string;
|
|
8
8
|
};
|
|
9
|
-
declare const __VLS_export: import("
|
|
9
|
+
declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {
|
|
10
10
|
colorMode: "dark" | "light";
|
|
11
11
|
title: string;
|
|
12
12
|
emoji: string;
|
|
13
|
-
}, {}, {}, {}, string, import("
|
|
13
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
14
14
|
declare const _default: typeof __VLS_export;
|
|
15
15
|
export default _default;
|
|
@@ -77,7 +77,10 @@ export async function createScreenshot({ basePath, e, options, extension, timing
|
|
|
77
77
|
logger.warn("The `html` option is deprecated and will be removed in the next major version. Use a Vue component instead.");
|
|
78
78
|
}
|
|
79
79
|
if (import.meta.prerender && !options.html) {
|
|
80
|
-
options.html = await timings.measure("html-fetch", () => e.$fetch(path, { timeout: getFetchTimeout(runtimeConfig) }).catch(() =>
|
|
80
|
+
options.html = await timings.measure("html-fetch", () => e.$fetch(path, { timeout: getFetchTimeout(runtimeConfig) }).catch((err) => {
|
|
81
|
+
void err;
|
|
82
|
+
return void 0;
|
|
83
|
+
}));
|
|
81
84
|
}
|
|
82
85
|
await setViewport(
|
|
83
86
|
page,
|
|
@@ -50,7 +50,9 @@ function withTakumiLock(state, timeoutMs, fn, onLockTimeout) {
|
|
|
50
50
|
}
|
|
51
51
|
};
|
|
52
52
|
const work = state.lock.then(guarded, guarded);
|
|
53
|
-
state.lock = work.catch(() =>
|
|
53
|
+
state.lock = work.catch((err) => {
|
|
54
|
+
void err;
|
|
55
|
+
});
|
|
54
56
|
let acquireTimer;
|
|
55
57
|
return Promise.race([
|
|
56
58
|
work,
|
|
@@ -187,7 +189,10 @@ async function createImage(event, format) {
|
|
|
187
189
|
signal: AbortSignal.timeout(fetchTimeout),
|
|
188
190
|
timeout: fetchTimeout,
|
|
189
191
|
headers
|
|
190
|
-
}).catch(() =>
|
|
192
|
+
}).catch((err) => {
|
|
193
|
+
void err;
|
|
194
|
+
return void 0;
|
|
195
|
+
});
|
|
191
196
|
} else if (!isBlockedUrl(src)) {
|
|
192
197
|
data = await fetchWithRedirectValidation(src, {
|
|
193
198
|
timeout: fetchTimeout,
|
|
@@ -250,9 +255,9 @@ const TakumiRenderer = {
|
|
|
250
255
|
]);
|
|
251
256
|
return {
|
|
252
257
|
vnodes,
|
|
253
|
-
fonts: fonts.map(({ data
|
|
258
|
+
fonts: fonts.map(({ data, ...f }) => ({
|
|
254
259
|
...f,
|
|
255
|
-
size:
|
|
260
|
+
size: data.byteLength
|
|
256
261
|
}))
|
|
257
262
|
};
|
|
258
263
|
}
|
|
@@ -1,5 +1,10 @@
|
|
|
1
1
|
import type { H3Error } from 'h3';
|
|
2
2
|
import type { OgImageRenderEventContext } from '../../types.js';
|
|
3
|
+
declare module 'nitropack/types' {
|
|
4
|
+
interface NitroApp {
|
|
5
|
+
_ogImageCacheBackendWarned?: boolean;
|
|
6
|
+
}
|
|
7
|
+
}
|
|
3
8
|
export declare function useOgImageBufferCache(ctx: OgImageRenderEventContext, options: {
|
|
4
9
|
baseCacheKey: string | false;
|
|
5
10
|
cacheMaxAgeSeconds?: number;
|
|
@@ -12,9 +12,15 @@ function safeCompare(a, b) {
|
|
|
12
12
|
mismatch |= a.charCodeAt(i) ^ b.charCodeAt(i);
|
|
13
13
|
return mismatch === 0;
|
|
14
14
|
}
|
|
15
|
+
function warnCacheBackendUnreachable(ctx, baseCacheKey, e) {
|
|
16
|
+
if (ctx._nitro._ogImageCacheBackendWarned)
|
|
17
|
+
return;
|
|
18
|
+
ctx._nitro._ogImageCacheBackendWarned = true;
|
|
19
|
+
logger.warn(`[Nuxt OG Image] Cache backend "${baseCacheKey}" unreachable, continuing without cache: ${e?.message || e}`);
|
|
20
|
+
}
|
|
15
21
|
export async function useOgImageBufferCache(ctx, options) {
|
|
16
22
|
const maxAge = Number(options.cacheMaxAgeSeconds);
|
|
17
|
-
const intentionallyEnabled = !import.meta.dev && maxAge > 0;
|
|
23
|
+
const intentionallyEnabled = !import.meta.dev && !import.meta.prerender && maxAge > 0;
|
|
18
24
|
let enabled = intentionallyEnabled;
|
|
19
25
|
const cache = prefixStorage(useStorage(), withTrailingSlash(options.baseCacheKey || "/"));
|
|
20
26
|
const key = ctx.key;
|
|
@@ -22,19 +28,16 @@ export async function useOgImageBufferCache(ctx, options) {
|
|
|
22
28
|
if (enabled) {
|
|
23
29
|
const hasItem = await cache.hasItem(key).catch((e) => {
|
|
24
30
|
enabled = false;
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
statusCode: 500,
|
|
28
|
-
statusMessage: `[Nuxt OG Image] Failed to connect to cache ${options.baseCacheKey}. Response from cache: ${e.message}`
|
|
29
|
-
});
|
|
31
|
+
warnCacheBackendUnreachable(ctx, options.baseCacheKey, e);
|
|
32
|
+
return false;
|
|
30
33
|
});
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
}
|
|
34
|
+
const entry = hasItem ? await cache.getItem(key).catch((e) => {
|
|
35
|
+
enabled = false;
|
|
36
|
+
warnCacheBackendUnreachable(ctx, options.baseCacheKey, e);
|
|
37
|
+
return null;
|
|
38
|
+
}) : null;
|
|
39
|
+
if (entry) {
|
|
40
|
+
const { value, expiresAt, headers } = entry;
|
|
38
41
|
const purgeValue = getQuery(ctx.e).purge;
|
|
39
42
|
if (typeof purgeValue !== "undefined") {
|
|
40
43
|
if (options.secret && !safeCompare(String(purgeValue), options.secret)) {
|
|
@@ -43,7 +46,8 @@ export async function useOgImageBufferCache(ctx, options) {
|
|
|
43
46
|
statusMessage: "[Nuxt OG Image] Invalid purge token. Provide the signing secret as ?purge=<secret>."
|
|
44
47
|
});
|
|
45
48
|
}
|
|
46
|
-
await cache.removeItem(key).catch(() => {
|
|
49
|
+
await cache.removeItem(key).catch((err) => {
|
|
50
|
+
void err;
|
|
47
51
|
});
|
|
48
52
|
} else if (expiresAt > Date.now()) {
|
|
49
53
|
cachedItem = Buffer.from(value, "base64");
|
|
@@ -57,12 +61,13 @@ export async function useOgImageBufferCache(ctx, options) {
|
|
|
57
61
|
setHeaders(ctx.e, headers);
|
|
58
62
|
setHeader(ctx.e, "X-OG-Cache", "HIT");
|
|
59
63
|
} else {
|
|
60
|
-
await cache.removeItem(key).catch(() => {
|
|
64
|
+
await cache.removeItem(key).catch((err) => {
|
|
65
|
+
void err;
|
|
61
66
|
});
|
|
62
67
|
}
|
|
63
68
|
}
|
|
64
69
|
}
|
|
65
|
-
if (!enabled) {
|
|
70
|
+
if (!enabled && !import.meta.prerender) {
|
|
66
71
|
setHeader(ctx.e, "Cache-Control", "no-cache, no-store, must-revalidate");
|
|
67
72
|
setHeader(ctx.e, "Pragma", "no-cache");
|
|
68
73
|
setHeader(ctx.e, "Expires", "0");
|
|
@@ -71,7 +76,7 @@ export async function useOgImageBufferCache(ctx, options) {
|
|
|
71
76
|
enabled,
|
|
72
77
|
cachedItem,
|
|
73
78
|
async update(item) {
|
|
74
|
-
setHeader(ctx.e, "X-OG-Cache",
|
|
79
|
+
setHeader(ctx.e, "X-OG-Cache", enabled ? "MISS" : "DISABLED");
|
|
75
80
|
if (!enabled)
|
|
76
81
|
return;
|
|
77
82
|
const value = Buffer.from(item).toString("base64");
|