nuxt-og-image 5.1.0 → 5.1.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 (70) hide show
  1. package/dist/client/200.html +10 -10
  2. package/dist/client/404.html +10 -10
  3. package/dist/client/_nuxt/Br6VVWxo.js +1 -0
  4. package/dist/client/_nuxt/CHRxzU3f.js +1 -0
  5. package/dist/client/_nuxt/Ct9h7GIg.js +1 -0
  6. package/dist/client/_nuxt/Cw1iv1IW.js +4017 -0
  7. package/dist/client/_nuxt/Dtw-SHSX.js +1 -0
  8. package/dist/client/_nuxt/builds/latest.json +1 -1
  9. package/dist/client/_nuxt/builds/meta/17f66c16-3b9b-4db1-b3c4-f2ed69a85873.json +1 -0
  10. package/dist/client/_nuxt/{entry.Dw_RMJvc.css → entry.CPPV_4vb.css} +1 -1
  11. package/dist/client/_nuxt/error-404.q4U0EoKE.css +1 -0
  12. package/dist/client/_nuxt/error-500.DXbjM38H.css +1 -0
  13. package/dist/client/index.html +10 -10
  14. package/dist/content.d.cts +2 -1
  15. package/dist/content.d.mts +2 -1
  16. package/dist/content.d.ts +2 -1
  17. package/dist/module.cjs +5 -5
  18. package/dist/module.d.cts +2 -1
  19. package/dist/module.d.mts +2 -1
  20. package/dist/module.d.ts +2 -1
  21. package/dist/module.json +3 -3
  22. package/dist/module.mjs +6 -6
  23. package/dist/runtime/app/components/Templates/Community/BrandedLogo.vue +5 -12
  24. package/dist/runtime/app/components/Templates/Community/BrandedLogo.vue.d.ts +12 -0
  25. package/dist/runtime/app/components/Templates/Community/Frame.vue +12 -18
  26. package/dist/runtime/app/components/Templates/Community/Frame.vue.d.ts +20 -0
  27. package/dist/runtime/app/components/Templates/Community/Nuxt.vue +9 -15
  28. package/dist/runtime/app/components/Templates/Community/Nuxt.vue.d.ts +11 -0
  29. package/dist/runtime/app/components/Templates/Community/NuxtSeo.vue +51 -88
  30. package/dist/runtime/app/components/Templates/Community/NuxtSeo.vue.d.ts +14 -0
  31. package/dist/runtime/app/components/Templates/Community/Pergel.vue +8 -13
  32. package/dist/runtime/app/components/Templates/Community/Pergel.vue.d.ts +11 -0
  33. package/dist/runtime/app/components/Templates/Community/SimpleBlog.vue +9 -18
  34. package/dist/runtime/app/components/Templates/Community/SimpleBlog.vue.d.ts +8 -0
  35. package/dist/runtime/app/components/Templates/Community/UnJs.vue +18 -33
  36. package/dist/runtime/app/components/Templates/Community/UnJs.vue.d.ts +20 -0
  37. package/dist/runtime/app/components/Templates/Community/Wave.vue +4 -10
  38. package/dist/runtime/app/components/Templates/Community/Wave.vue.d.ts +10 -0
  39. package/dist/runtime/app/components/Templates/Community/WithEmoji.vue +5 -12
  40. package/dist/runtime/app/components/Templates/Community/WithEmoji.vue.d.ts +12 -0
  41. package/dist/runtime/app/composables/defineOgImage.js +20 -18
  42. package/dist/runtime/app/utils/plugins.js +5 -9
  43. package/dist/runtime/app/utils.d.ts +4 -3
  44. package/dist/runtime/app/utils.js +31 -22
  45. package/dist/runtime/pure.js +4 -1
  46. package/dist/runtime/server/og-image/instances.d.ts +2 -2
  47. package/dist/runtime/server/og-image/satori/plugins/classes.d.ts +1 -1
  48. package/dist/runtime/server/og-image/satori/plugins/emojis.d.ts +1 -1
  49. package/dist/runtime/server/og-image/satori/plugins/encoding.d.ts +1 -1
  50. package/dist/runtime/server/og-image/satori/plugins/flex.d.ts +1 -1
  51. package/dist/runtime/server/og-image/satori/plugins/imageSrc.d.ts +1 -1
  52. package/dist/runtime/server/og-image/satori/plugins/nuxt-icon.d.ts +1 -1
  53. package/dist/runtime/server/og-image/satori/plugins/unocss.d.ts +1 -1
  54. package/dist/runtime/server/routes/debug.json.d.ts +1 -1
  55. package/dist/runtime/server/util/wasm.d.ts +1 -1
  56. package/dist/runtime/shared.d.ts +3 -3
  57. package/dist/runtime/shared.js +6 -9
  58. package/dist/runtime/types.d.ts +7 -7
  59. package/dist/types.d.mts +4 -2
  60. package/package.json +36 -39
  61. package/content.d.ts +0 -1
  62. package/dist/client/_nuxt/BKhpHsoX.js +0 -1
  63. package/dist/client/_nuxt/BLmTiKMJ.js +0 -1
  64. package/dist/client/_nuxt/DVcaHLff.js +0 -1
  65. package/dist/client/_nuxt/DpHmQ6sx.js +0 -3991
  66. package/dist/client/_nuxt/Dy0dDCjl.js +0 -1
  67. package/dist/client/_nuxt/builds/meta/a1854235-e297-4e1d-9aec-f8c2f24f15ac.json +0 -1
  68. package/dist/client/_nuxt/error-404.Db0f7OxX.css +0 -1
  69. package/dist/client/_nuxt/error-500.CgBP5IsV.css +0 -1
  70. package/dist/types.d.ts +0 -7
@@ -4,19 +4,26 @@ import { resolveUnrefHeadInput } from "@unhead/vue";
4
4
  import { defu } from "defu";
5
5
  import { stringify } from "devalue";
6
6
  import { withQuery } from "ufo";
7
- import { unref } from "vue";
8
- import { generateMeta, separateProps } from "../shared.js";
9
- export function createOgImageMeta(src, input, resolvedOptions, ssrContext) {
7
+ import { generateMeta, separateProps, useOgImageRuntimeConfig } from "../shared.js";
8
+ export function setHeadOgImagePrebuilt(input) {
10
9
  if (import.meta.client) {
11
10
  return;
12
11
  }
13
- const _input = separateProps(defu(input, ssrContext._ogImagePayload));
14
- let url = src || input.url || resolvedOptions.url;
12
+ const url = input.url;
15
13
  if (!url)
16
14
  return;
17
- if (input._query && Object.keys(input._query).length && url)
18
- url = withQuery(url, { _query: input._query });
19
- const meta = generateMeta(url, resolvedOptions);
15
+ const meta = generateMeta(url, input);
16
+ useHead({ meta }, { tagPriority: "high" });
17
+ }
18
+ export function createOgImageMeta(src, input, ssrContext) {
19
+ if (import.meta.client) {
20
+ return;
21
+ }
22
+ const { defaults } = useOgImageRuntimeConfig();
23
+ const _input = separateProps(defu(input, ssrContext._ogImagePayload));
24
+ if (input._query && Object.keys(input._query).length)
25
+ src = withQuery(src, { _query: input._query });
26
+ const meta = generateMeta(src, input);
20
27
  ssrContext._ogImageInstances = ssrContext._ogImageInstances || [];
21
28
  const script = [];
22
29
  if (src) {
@@ -28,11 +35,18 @@ export function createOgImageMeta(src, input, resolvedOptions, ssrContext) {
28
35
  const payload = resolveUnrefHeadInput(_input);
29
36
  if (typeof payload.props.title === "undefined")
30
37
  payload.props.title = "%s";
38
+ payload.component = resolveComponentName(input.component, defaults.component);
31
39
  delete payload.url;
32
40
  if (payload._query && Object.keys(payload._query).length === 0) {
33
41
  delete payload._query;
34
42
  }
35
- return stringify(payload);
43
+ const final = {};
44
+ for (const k in payload) {
45
+ if (payload[k] !== defaults[k]) {
46
+ final[k] = payload[k];
47
+ }
48
+ }
49
+ return stringify(final);
36
50
  },
37
51
  // we want this to be last in our head
38
52
  tagPosition: "bodyClose"
@@ -47,20 +61,15 @@ export function createOgImageMeta(src, input, resolvedOptions, ssrContext) {
47
61
  ssrContext._ogImagePayload = _input;
48
62
  ssrContext._ogImageInstances.push(instance);
49
63
  }
50
- export function normaliseOptions(_options) {
51
- const options = { ...unref(_options) };
52
- if (!options)
53
- return options;
54
- if (options.component && componentNames) {
55
- const originalName = options.component;
56
- for (const component of componentNames) {
57
- if (component.pascalName.endsWith(originalName) || component.kebabName.endsWith(originalName)) {
58
- options.component = component.pascalName;
59
- break;
64
+ export function resolveComponentName(component, fallback) {
65
+ component = component || fallback || componentNames?.[0]?.pascalName;
66
+ if (component && componentNames) {
67
+ const originalName = component;
68
+ for (const component2 of componentNames) {
69
+ if (component2.pascalName.endsWith(originalName) || component2.kebabName.endsWith(originalName)) {
70
+ return component2.pascalName;
60
71
  }
61
72
  }
62
- } else if (!options.component) {
63
- options.component = componentNames[0]?.pascalName;
64
73
  }
65
- return options;
74
+ return component;
66
75
  }
@@ -98,5 +98,8 @@ export function withoutQuery(path) {
98
98
  export function getExtension(path) {
99
99
  path = withoutQuery(path);
100
100
  const lastSegment = path.split("/").pop() || path;
101
- return lastSegment.split(".").pop() || lastSegment;
101
+ const extension = lastSegment.split(".").pop() || lastSegment;
102
+ if (extension === "jpg")
103
+ return "jpeg";
104
+ return extension;
102
105
  }
@@ -1,2 +1,2 @@
1
- export declare function useSatoriRenderer(): Promise<import("../../types").Renderer>;
2
- export declare function useChromiumRenderer(): Promise<import("../../types").Renderer>;
1
+ export declare function useSatoriRenderer(): Promise<import("../../types.js").Renderer>;
2
+ export declare function useChromiumRenderer(): Promise<import("../../types.js").Renderer>;
@@ -1,2 +1,2 @@
1
- declare const _default: import("../../../../types").SatoriTransformer | import("../../../../types").SatoriTransformer[];
1
+ declare const _default: import("../../../../types.js").SatoriTransformer | import("../../../../types.js").SatoriTransformer[];
2
2
  export default _default;
@@ -1,2 +1,2 @@
1
- declare const _default: import("../../../../types").SatoriTransformer | import("../../../../types").SatoriTransformer[];
1
+ declare const _default: import("../../../../types.js").SatoriTransformer | import("../../../../types.js").SatoriTransformer[];
2
2
  export default _default;
@@ -1,2 +1,2 @@
1
- declare const _default: import("../../../../types").SatoriTransformer | import("../../../../types").SatoriTransformer[];
1
+ declare const _default: import("../../../../types.js").SatoriTransformer | import("../../../../types.js").SatoriTransformer[];
2
2
  export default _default;
@@ -1,2 +1,2 @@
1
- declare const _default: import("../../../../types").SatoriTransformer | import("../../../../types").SatoriTransformer[];
1
+ declare const _default: import("../../../../types.js").SatoriTransformer | import("../../../../types.js").SatoriTransformer[];
2
2
  export default _default;
@@ -1,2 +1,2 @@
1
- declare const _default: import("../../../../types").SatoriTransformer | import("../../../../types").SatoriTransformer[];
1
+ declare const _default: import("../../../../types.js").SatoriTransformer | import("../../../../types.js").SatoriTransformer[];
2
2
  export default _default;
@@ -1,2 +1,2 @@
1
- declare const _default: import("../../../../types").SatoriTransformer | import("../../../../types").SatoriTransformer[];
1
+ declare const _default: import("../../../../types.js").SatoriTransformer | import("../../../../types.js").SatoriTransformer[];
2
2
  export default _default;
@@ -1,2 +1,2 @@
1
- declare const _default: import("../../../../types").SatoriTransformer | import("../../../../types").SatoriTransformer[];
1
+ declare const _default: import("../../../../types.js").SatoriTransformer | import("../../../../types.js").SatoriTransformer[];
2
2
  export default _default;
@@ -1,7 +1,7 @@
1
1
  declare const _default: import("h3").EventHandler<import("h3").EventHandlerRequest, Promise<{
2
2
  siteConfigUrl: string;
3
3
  componentNames: any;
4
- runtimeConfig: import("../../types").OgImageRuntimeConfig;
4
+ runtimeConfig: import("../../types.js").OgImageRuntimeConfig;
5
5
  compatibility: any;
6
6
  }>>;
7
7
  export default _default;
@@ -1,2 +1,2 @@
1
1
  export declare function importWasm(input: any): Promise<any>;
2
- export declare function readWasmFile(input: string): Promise<Buffer>;
2
+ export declare function readWasmFile(input: string): Promise<Buffer<ArrayBufferLike>>;
@@ -1,6 +1,6 @@
1
- import type { Head } from '@unhead/vue';
2
- import type { OgImageOptions, OgImageRuntimeConfig } from './types.js';
1
+ import type { ResolvableMeta } from '@unhead/vue';
2
+ import type { OgImageOptions, OgImagePrebuilt, OgImageRuntimeConfig } from './types.js';
3
3
  export * from './pure.js';
4
- export declare function generateMeta(url: string, resolvedOptions: OgImageOptions): Head['meta'];
4
+ export declare function generateMeta(url: OgImagePrebuilt['url'] | string, resolvedOptions: OgImageOptions | OgImagePrebuilt): ResolvableMeta[];
5
5
  export declare function getOgImagePath(pagePath: string, _options?: Partial<OgImageOptions>): string;
6
6
  export declare function useOgImageRuntimeConfig(): OgImageRuntimeConfig;
@@ -1,15 +1,12 @@
1
1
  import { useRuntimeConfig } from "#imports";
2
- import { defu } from "defu";
3
2
  import { joinURL, withQuery } from "ufo";
3
+ import { toValue } from "vue";
4
4
  import { getExtension } from "./pure.js";
5
5
  export * from "./pure.js";
6
6
  export function generateMeta(url, resolvedOptions) {
7
- let urlExtension = getExtension(url) || resolvedOptions.extension;
8
- if (urlExtension === "jpg")
9
- urlExtension = "jpeg";
10
7
  const meta = [
11
8
  { property: "og:image", content: url },
12
- { property: "og:image:type", content: `image/${urlExtension}` },
9
+ { property: "og:image:type", content: () => `image/${resolvedOptions.extension || getExtension(toValue(url))}` },
13
10
  { name: "twitter:card", content: "summary_large_image" },
14
11
  // we don't need this but avoids issue when using useSeoMeta({ twitterImage })
15
12
  { name: "twitter:image", content: url },
@@ -31,10 +28,10 @@ export function generateMeta(url, resolvedOptions) {
31
28
  }
32
29
  export function getOgImagePath(pagePath, _options) {
33
30
  const baseURL = useRuntimeConfig().app.baseURL;
34
- const options = defu(_options, useOgImageRuntimeConfig().defaults);
35
- const path = joinURL("/", baseURL, `__og-image__/${import.meta.prerender ? "static" : "image"}`, pagePath, `og.${options.extension}`);
36
- if (Object.keys(options._query || {}).length) {
37
- return withQuery(path, options._query);
31
+ const extension = _options?.extension || useOgImageRuntimeConfig().defaults.extension;
32
+ const path = joinURL("/", baseURL, `__og-image__/${import.meta.prerender ? "static" : "image"}`, pagePath, `og.${extension}`);
33
+ if (Object.keys(_options?._query || {}).length) {
34
+ return withQuery(path, _options._query);
38
35
  }
39
36
  return path;
40
37
  }
@@ -8,6 +8,7 @@ import type { NitroApp } from 'nitropack/types';
8
8
  import type { SatoriOptions } from 'satori';
9
9
  import type { html } from 'satori-html';
10
10
  import type { SharpOptions } from 'sharp';
11
+ import type { Ref } from 'vue';
11
12
  export interface OgImageRenderEventContext {
12
13
  unocss: UnoGenerator;
13
14
  e: H3Event;
@@ -71,9 +72,8 @@ export interface ScreenshotOptions {
71
72
  */
72
73
  delay?: number;
73
74
  }
74
- export type OgImagePrebuilt = {
75
- url: string;
76
- } & Pick<OgImageOptions, 'width' | 'height' | 'alt' | '_query'>;
75
+ export interface OgImagePrebuilt extends OgImageOptions {
76
+ }
77
77
  export type DefineOgImageInput = OgImageOptions | OgImagePrebuilt | false;
78
78
  export interface OgImageOptions<T extends keyof OgImageComponents = 'NuxtSeo'> {
79
79
  /**
@@ -81,23 +81,23 @@ export interface OgImageOptions<T extends keyof OgImageComponents = 'NuxtSeo'> {
81
81
  *
82
82
  * @default 1200
83
83
  */
84
- width?: number;
84
+ width?: number | (() => number) | Ref<number>;
85
85
  /**
86
86
  * The height of the screenshot.
87
87
  *
88
88
  * @default 630
89
89
  */
90
- height?: number;
90
+ height?: number | (() => number) | Ref<number>;
91
91
  /**
92
92
  * The alt text for the image.
93
93
  */
94
- alt?: string;
94
+ alt?: string | (() => string) | Ref<string>;
95
95
  /**
96
96
  * Use a prebuilt image instead of generating one.
97
97
  *
98
98
  * Should be an absolute URL.
99
99
  */
100
- url?: string;
100
+ url?: string | (() => string) | Ref<string>;
101
101
  /**
102
102
  * The name of the component to render.
103
103
  */
package/dist/types.d.mts CHANGED
@@ -1,7 +1,9 @@
1
- import type { ModuleHooks } from './module.js'
1
+ import type { ModuleHooks } from './module.mjs'
2
2
 
3
3
  declare module '@nuxt/schema' {
4
4
  interface NuxtHooks extends ModuleHooks {}
5
5
  }
6
6
 
7
- export { type ModuleHooks, type ModuleOptions, default } from './module.js'
7
+ export { default } from './module.mjs'
8
+
9
+ export { type ModuleHooks, type ModuleOptions } from './module.mjs'
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "nuxt-og-image",
3
3
  "type": "module",
4
- "version": "5.1.0",
4
+ "version": "5.1.2",
5
5
  "description": "Enlightened OG Image generation for Nuxt.",
6
6
  "author": {
7
7
  "website": "https://harlanzw.com",
@@ -20,27 +20,23 @@
20
20
  },
21
21
  "exports": {
22
22
  ".": {
23
- "types": "./dist/module.d.ts",
24
- "import": "./dist/module.mjs",
25
- "require": "./dist/module.cjs"
23
+ "types": "./dist/types.d.mts",
24
+ "import": "./dist/module.mjs"
26
25
  },
27
- "./content": {
28
- "types": "./dist/content.d.ts",
29
- "import": "./dist/content.mjs",
30
- "require": "./dist/content.cjs"
31
- }
26
+ "./content": "./dist/content.mjs"
32
27
  },
33
- "main": "./dist/module.cjs",
34
- "types": "./dist/module.d.ts",
28
+ "main": "./dist/module.mjs",
35
29
  "typesVersions": {
36
30
  "*": {
31
+ ".": [
32
+ "./dist/types.d.mts"
33
+ ],
37
34
  "content": [
38
- "dist/content"
35
+ "./dist/content.d.mts"
39
36
  ]
40
37
  }
41
38
  },
42
39
  "files": [
43
- "content.d.ts",
44
40
  "dist",
45
41
  "virtual.d.ts"
46
42
  ],
@@ -48,12 +44,12 @@
48
44
  "node": ">=18.0.0"
49
45
  },
50
46
  "peerDependencies": {
51
- "@unhead/vue": "^2.0.0-rc.1",
52
- "unstorage": "^1.0.0"
47
+ "@unhead/vue": "^2.0.5",
48
+ "unstorage": "^1.15.0"
53
49
  },
54
50
  "dependencies": {
55
- "@nuxt/devtools-kit": "^2.3.2",
56
- "@nuxt/kit": "^3.16.1",
51
+ "@nuxt/devtools-kit": "^2.4.0",
52
+ "@nuxt/kit": "^3.16.2",
57
53
  "@resvg/resvg-js": "^2.6.2",
58
54
  "@resvg/resvg-wasm": "^2.6.2",
59
55
  "@unocss/core": "^66.0.0",
@@ -62,10 +58,10 @@
62
58
  "consola": "^3.4.2",
63
59
  "defu": "^6.1.4",
64
60
  "execa": "^9.5.2",
65
- "image-size": "^2.0.1",
61
+ "image-size": "^2.0.2",
66
62
  "magic-string": "^0.30.17",
67
63
  "mocked-exports": "^0.1.1",
68
- "nuxt-site-config": "^3.1.7",
64
+ "nuxt-site-config": "^3.1.9",
69
65
  "nypm": "^0.6.0",
70
66
  "ofetch": "^1.4.1",
71
67
  "ohash": "^2.0.11",
@@ -73,18 +69,18 @@
73
69
  "pkg-types": "^2.1.0",
74
70
  "playwright-core": "^1.51.1",
75
71
  "radix3": "^1.1.2",
76
- "satori": "^0.12.1",
72
+ "satori": "^0.12.2",
77
73
  "satori-html": "^0.3.2",
78
74
  "sirv": "^3.0.1",
79
- "std-env": "^3.8.1",
75
+ "std-env": "^3.9.0",
80
76
  "strip-literal": "^3.0.0",
81
- "ufo": "^1.5.4",
82
- "unplugin": "^2.2.2",
77
+ "ufo": "^1.6.1",
78
+ "unplugin": "^2.3.2",
83
79
  "unwasm": "^0.3.9",
84
80
  "yoga-wasm-web": "^0.3.3"
85
81
  },
86
82
  "devDependencies": {
87
- "@antfu/eslint-config": "^4.11.0",
83
+ "@antfu/eslint-config": "^4.12.0",
88
84
  "@css-inline/css-inline": "^0.14.3",
89
85
  "@headlessui/vue": "^1.7.23",
90
86
  "@iconify-json/carbon": "^1.2.8",
@@ -92,36 +88,37 @@
92
88
  "@iconify-json/noto": "^1.2.3",
93
89
  "@iconify-json/ri": "^1.2.5",
94
90
  "@iconify-json/tabler": "^1.2.17",
95
- "@img/sharp-linux-x64": "0.33.5",
91
+ "@img/sharp-linux-x64": "0.34.1",
96
92
  "@nuxt/content": "^3.4.0",
97
- "@nuxt/devtools": "2.3.2",
98
- "@nuxt/devtools-ui-kit": "2.3.2",
99
- "@nuxt/icon": "^1.11.0",
93
+ "@nuxt/devtools": "^2.4.0",
94
+ "@nuxt/devtools-ui-kit": "^2.4.0",
95
+ "@nuxt/icon": "^1.12.0",
100
96
  "@nuxt/image": "^1.10.0",
101
- "@nuxt/module-builder": "^0.8.4",
97
+ "@nuxt/module-builder": "^1.0.1",
102
98
  "@nuxt/test-utils": "3.17.2",
103
- "@nuxt/ui": "^3.0.1",
99
+ "@nuxt/ui": "^3.0.2",
104
100
  "@nuxtjs/color-mode": "^3.5.2",
105
101
  "@nuxtjs/eslint-config-typescript": "^12.1.0",
106
- "@nuxtjs/i18n": "^9.4.0",
102
+ "@nuxtjs/i18n": "^9.5.3",
107
103
  "@nuxtjs/tailwindcss": "^6.13.2",
108
104
  "@unocss/nuxt": "^66.0.0",
109
105
  "@unocss/preset-icons": "^66.0.0",
110
106
  "@unocss/runtime": "^66.0.0",
111
- "@vueuse/nuxt": "^13.0.0",
107
+ "@vueuse/nuxt": "^13.1.0",
112
108
  "bumpp": "^10.1.0",
113
- "eslint": "9.23.0",
109
+ "eslint": "9.24.0",
114
110
  "jest-image-snapshot": "^6.4.0",
115
- "nuxt": "^3.16.1",
111
+ "nuxt": "^3.16.2",
116
112
  "playwright": "^1.51.1",
117
- "sass": "^1.86.0",
118
- "sharp": "^0.33.5",
119
- "typescript": "5.8.2",
113
+ "sass": "^1.86.3",
114
+ "sharp": "^0.34.1",
115
+ "typescript": "5.8.3",
120
116
  "unocss": "^66.0.0",
121
- "vitest": "^3.0.9"
117
+ "vitest": "^3.1.1",
118
+ "vue-tsc": "^2.2.8"
122
119
  },
123
120
  "resolutions": {
124
- "typescript": "5.6.3"
121
+ "typescript": "5.8.3"
125
122
  },
126
123
  "scripts": {
127
124
  "stub": "nuxt-build-module build --stub && nuxt-module-build prepare",
package/content.d.ts DELETED
@@ -1 +0,0 @@
1
- export * from './dist/content'
@@ -1 +0,0 @@
1
- import{_ as s,u as a,c as i,o as u,a as e,t as o}from"./DpHmQ6sx.js";const l={class:"antialiased bg-white dark:bg-black dark:text-white font-sans grid min-h-screen overflow-hidden place-content-center text-black"},c={class:"max-w-520px text-center"},d=["textContent"],p=["textContent"],f={__name:"error-500",props:{appName:{type:String,default:"Nuxt"},version:{type:String,default:""},statusCode:{type:Number,default:500},statusMessage:{type:String,default:"Server error"},description:{type:String,default:"This page is temporarily unavailable."}},setup(t){const r=t;return a({title:`${r.statusCode} - ${r.statusMessage} | ${r.appName}`,script:[{children:`!function(){const e=document.createElement("link").relList;if(!(e&&e.supports&&e.supports("modulepreload"))){for(const e of document.querySelectorAll('link[rel="modulepreload"]'))r(e);new MutationObserver((e=>{for(const o of e)if("childList"===o.type)for(const e of o.addedNodes)"LINK"===e.tagName&&"modulepreload"===e.rel&&r(e)})).observe(document,{childList:!0,subtree:!0})}function r(e){if(e.ep)return;e.ep=!0;const r=function(e){const r={};return e.integrity&&(r.integrity=e.integrity),e.referrerPolicy&&(r.referrerPolicy=e.referrerPolicy),"use-credentials"===e.crossOrigin?r.credentials="include":"anonymous"===e.crossOrigin?r.credentials="omit":r.credentials="same-origin",r}(e);fetch(e.href,r)}}();`}],style:[{children:'*,:after,:before{border-color:var(--un-default-border-color,#e5e7eb);border-style:solid;border-width:0;box-sizing:border-box}:after,:before{--un-content:""}html{line-height:1.5;-webkit-text-size-adjust:100%;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-feature-settings:normal;font-variation-settings:normal;-moz-tab-size:4;tab-size:4;-webkit-tap-highlight-color:transparent}body{line-height:inherit;margin:0}h1{font-size:inherit;font-weight:inherit}h1,p{margin:0}*,:after,:before{--un-rotate:0;--un-rotate-x:0;--un-rotate-y:0;--un-rotate-z:0;--un-scale-x:1;--un-scale-y:1;--un-scale-z:1;--un-skew-x:0;--un-skew-y:0;--un-translate-x:0;--un-translate-y:0;--un-translate-z:0;--un-pan-x: ;--un-pan-y: ;--un-pinch-zoom: ;--un-scroll-snap-strictness:proximity;--un-ordinal: ;--un-slashed-zero: ;--un-numeric-figure: ;--un-numeric-spacing: ;--un-numeric-fraction: ;--un-border-spacing-x:0;--un-border-spacing-y:0;--un-ring-offset-shadow:0 0 transparent;--un-ring-shadow:0 0 transparent;--un-shadow-inset: ;--un-shadow:0 0 transparent;--un-ring-inset: ;--un-ring-offset-width:0px;--un-ring-offset-color:#fff;--un-ring-width:0px;--un-ring-color:rgba(147,197,253,.5);--un-blur: ;--un-brightness: ;--un-contrast: ;--un-drop-shadow: ;--un-grayscale: ;--un-hue-rotate: ;--un-invert: ;--un-saturate: ;--un-sepia: ;--un-backdrop-blur: ;--un-backdrop-brightness: ;--un-backdrop-contrast: ;--un-backdrop-grayscale: ;--un-backdrop-hue-rotate: ;--un-backdrop-invert: ;--un-backdrop-opacity: ;--un-backdrop-saturate: ;--un-backdrop-sepia: }'}]}),(g,n)=>(u(),i("div",l,[n[0]||(n[0]=e("div",{class:"-bottom-1/2 fixed h-1/2 left-0 right-0 spotlight"},null,-1)),e("div",c,[e("h1",{class:"font-medium mb-8 sm:text-10xl text-8xl",textContent:o(t.statusCode)},null,8,d),e("p",{class:"font-light leading-tight mb-16 px-8 sm:px-0 sm:text-4xl text-xl",textContent:o(t.description)},null,8,p)])]))}},m=s(f,[["__scopeId","data-v-831fc7f1"]]);export{m as default};
@@ -1 +0,0 @@
1
- const n=Object.freeze(JSON.parse('{"displayName":"JSON","name":"json","patterns":[{"include":"#value"}],"repository":{"array":{"begin":"\\\\[","beginCaptures":{"0":{"name":"punctuation.definition.array.begin.json"}},"end":"]","endCaptures":{"0":{"name":"punctuation.definition.array.end.json"}},"name":"meta.structure.array.json","patterns":[{"include":"#value"},{"match":",","name":"punctuation.separator.array.json"},{"match":"[^\\\\s\\\\]]","name":"invalid.illegal.expected-array-separator.json"}]},"comments":{"patterns":[{"begin":"/\\\\*\\\\*(?!/)","captures":{"0":{"name":"punctuation.definition.comment.json"}},"end":"\\\\*/","name":"comment.block.documentation.json"},{"begin":"/\\\\*","captures":{"0":{"name":"punctuation.definition.comment.json"}},"end":"\\\\*/","name":"comment.block.json"},{"captures":{"1":{"name":"punctuation.definition.comment.json"}},"match":"(//).*$\\\\n?","name":"comment.line.double-slash.js"}]},"constant":{"match":"\\\\b(?:true|false|null)\\\\b","name":"constant.language.json"},"number":{"match":"-?(?:0|[1-9]\\\\d*)(?:(?:\\\\.\\\\d+)?(?:[eE][+\\\\-]?\\\\d+)?)?","name":"constant.numeric.json"},"object":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.dictionary.begin.json"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.dictionary.end.json"}},"name":"meta.structure.dictionary.json","patterns":[{"include":"#objectkey"},{"include":"#comments"},{"begin":":","beginCaptures":{"0":{"name":"punctuation.separator.dictionary.key-value.json"}},"end":"(,)|(?=})","endCaptures":{"1":{"name":"punctuation.separator.dictionary.pair.json"}},"name":"meta.structure.dictionary.value.json","patterns":[{"include":"#value"},{"match":"[^\\\\s,]","name":"invalid.illegal.expected-dictionary-separator.json"}]},{"match":"[^\\\\s}]","name":"invalid.illegal.expected-dictionary-separator.json"}]},"objectkey":{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.support.type.property-name.begin.json"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.support.type.property-name.end.json"}},"name":"string.json support.type.property-name.json","patterns":[{"include":"#stringcontent"}]},"string":{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.json"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.json"}},"name":"string.quoted.double.json","patterns":[{"include":"#stringcontent"}]},"stringcontent":{"patterns":[{"match":"\\\\\\\\(?:[\\"\\\\\\\\/bfnrt]|u\\\\h{4})","name":"constant.character.escape.json"},{"match":"\\\\\\\\.","name":"invalid.illegal.unrecognized-string-escape.json"}]},"value":{"patterns":[{"include":"#constant"},{"include":"#number"},{"include":"#string"},{"include":"#array"},{"include":"#object"},{"include":"#comments"}]}},"scopeName":"source.json"}')),e=[n];export{e as default};
@@ -1 +0,0 @@
1
- import{_ as a,u as i,c as u,o as c,a as e,t as r,b as l,w as d,d as p,e as f}from"./DpHmQ6sx.js";const m={class:"antialiased bg-white dark:bg-black dark:text-white font-sans grid min-h-screen overflow-hidden place-content-center text-black"},g={class:"max-w-520px text-center z-20"},h=["textContent"],b=["textContent"],x={class:"flex items-center justify-center w-full"},y={__name:"error-404",props:{appName:{type:String,default:"Nuxt"},version:{type:String,default:""},statusCode:{type:Number,default:404},statusMessage:{type:String,default:"Not Found"},description:{type:String,default:"Sorry, the page you are looking for could not be found."},backHome:{type:String,default:"Go back home"}},setup(t){const n=t;return i({title:`${n.statusCode} - ${n.statusMessage} | ${n.appName}`,script:[{children:`!function(){const e=document.createElement("link").relList;if(!(e&&e.supports&&e.supports("modulepreload"))){for(const e of document.querySelectorAll('link[rel="modulepreload"]'))r(e);new MutationObserver((e=>{for(const o of e)if("childList"===o.type)for(const e of o.addedNodes)"LINK"===e.tagName&&"modulepreload"===e.rel&&r(e)})).observe(document,{childList:!0,subtree:!0})}function r(e){if(e.ep)return;e.ep=!0;const r=function(e){const r={};return e.integrity&&(r.integrity=e.integrity),e.referrerPolicy&&(r.referrerPolicy=e.referrerPolicy),"use-credentials"===e.crossOrigin?r.credentials="include":"anonymous"===e.crossOrigin?r.credentials="omit":r.credentials="same-origin",r}(e);fetch(e.href,r)}}();`}],style:[{children:'*,:after,:before{border-color:var(--un-default-border-color,#e5e7eb);border-style:solid;border-width:0;box-sizing:border-box}:after,:before{--un-content:""}html{line-height:1.5;-webkit-text-size-adjust:100%;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-feature-settings:normal;font-variation-settings:normal;-moz-tab-size:4;tab-size:4;-webkit-tap-highlight-color:transparent}body{line-height:inherit;margin:0}h1{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}h1,p{margin:0}*,:after,:before{--un-rotate:0;--un-rotate-x:0;--un-rotate-y:0;--un-rotate-z:0;--un-scale-x:1;--un-scale-y:1;--un-scale-z:1;--un-skew-x:0;--un-skew-y:0;--un-translate-x:0;--un-translate-y:0;--un-translate-z:0;--un-pan-x: ;--un-pan-y: ;--un-pinch-zoom: ;--un-scroll-snap-strictness:proximity;--un-ordinal: ;--un-slashed-zero: ;--un-numeric-figure: ;--un-numeric-spacing: ;--un-numeric-fraction: ;--un-border-spacing-x:0;--un-border-spacing-y:0;--un-ring-offset-shadow:0 0 transparent;--un-ring-shadow:0 0 transparent;--un-shadow-inset: ;--un-shadow:0 0 transparent;--un-ring-inset: ;--un-ring-offset-width:0px;--un-ring-offset-color:#fff;--un-ring-width:0px;--un-ring-color:rgba(147,197,253,.5);--un-blur: ;--un-brightness: ;--un-contrast: ;--un-drop-shadow: ;--un-grayscale: ;--un-hue-rotate: ;--un-invert: ;--un-saturate: ;--un-sepia: ;--un-backdrop-blur: ;--un-backdrop-brightness: ;--un-backdrop-contrast: ;--un-backdrop-grayscale: ;--un-backdrop-hue-rotate: ;--un-backdrop-invert: ;--un-backdrop-opacity: ;--un-backdrop-saturate: ;--un-backdrop-sepia: }'}]}),(k,o)=>{const s=f;return c(),u("div",m,[o[0]||(o[0]=e("div",{class:"fixed left-0 right-0 spotlight z-10"},null,-1)),e("div",g,[e("h1",{class:"font-medium mb-8 sm:text-10xl text-8xl",textContent:r(t.statusCode)},null,8,h),e("p",{class:"font-light leading-tight mb-16 px-8 sm:px-0 sm:text-4xl text-xl",textContent:r(t.description)},null,8,b),e("div",x,[l(s,{to:"/",class:"cursor-pointer gradient-border px-4 py-2 sm:px-6 sm:py-3 sm:text-xl text-md"},{default:d(()=>[p(r(t.backHome),1)]),_:1})])])])}}},_=a(y,[["__scopeId","data-v-79f4c412"]]);export{_ as default};