nuxt-og-image 3.0.0-rc.68 → 3.0.0-rc.69

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.
@@ -1 +1 @@
1
- {"id":"353519f1-2e76-4016-9b50-2f26f3cb8794","timestamp":1726058875363}
1
+ {"id":"20c6e651-bfb6-4ebb-ac2f-044ec6fe17ad","timestamp":1726066785520}
@@ -0,0 +1 @@
1
+ {"id":"20c6e651-bfb6-4ebb-ac2f-044ec6fe17ad","timestamp":1726066785520,"matcher":{"static":{},"wildcard":{},"dynamic":{}},"prerendered":[]}
@@ -0,0 +1 @@
1
+ .spotlight[data-v-e8999add]{background:linear-gradient(45deg,#00dc82,#36e4da 50%,#0047e1);bottom:-30vh;filter:blur(20vh);height:40vh}.gradient-border[data-v-e8999add]{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:.5rem;position:relative}@media (prefers-color-scheme:light){.gradient-border[data-v-e8999add]{background-color:#ffffff4d}.gradient-border[data-v-e8999add]:before{background:linear-gradient(90deg,#e2e2e2,#e2e2e2 25%,#00dc82,#36e4da 75%,#0047e1)}}@media (prefers-color-scheme:dark){.gradient-border[data-v-e8999add]{background-color:#1414144d}.gradient-border[data-v-e8999add]:before{background:linear-gradient(90deg,#303030,#303030 25%,#00dc82,#36e4da 75%,#0047e1)}}.gradient-border[data-v-e8999add]:before{background-size:400% auto;border-radius:.5rem;bottom:0;content:"";left:0;-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:.5;padding:2px;position:absolute;right:0;top:0;transition:background-position .3s ease-in-out,opacity .2s ease-in-out;width:100%}.gradient-border[data-v-e8999add]:hover:before{background-position:-50% 0;opacity:1}.fixed[data-v-e8999add]{position:fixed}.left-0[data-v-e8999add]{left:0}.right-0[data-v-e8999add]{right:0}.z-10[data-v-e8999add]{z-index:10}.z-20[data-v-e8999add]{z-index:20}.grid[data-v-e8999add]{display:grid}.mb-16[data-v-e8999add]{margin-bottom:4rem}.mb-8[data-v-e8999add]{margin-bottom:2rem}.max-w-520px[data-v-e8999add]{max-width:520px}.min-h-screen[data-v-e8999add]{min-height:100vh}.w-full[data-v-e8999add]{width:100%}.flex[data-v-e8999add]{display:flex}.cursor-pointer[data-v-e8999add]{cursor:pointer}.place-content-center[data-v-e8999add]{place-content:center}.items-center[data-v-e8999add]{align-items:center}.justify-center[data-v-e8999add]{justify-content:center}.overflow-hidden[data-v-e8999add]{overflow:hidden}.bg-white[data-v-e8999add]{--un-bg-opacity:1;background-color:rgb(255 255 255/var(--un-bg-opacity))}.px-4[data-v-e8999add]{padding-left:1rem;padding-right:1rem}.px-8[data-v-e8999add]{padding-left:2rem;padding-right:2rem}.py-2[data-v-e8999add]{padding-bottom:.5rem;padding-top:.5rem}.text-center[data-v-e8999add]{text-align:center}.text-8xl[data-v-e8999add]{font-size:6rem;line-height:1}.text-xl[data-v-e8999add]{font-size:1.25rem;line-height:1.75rem}.text-black[data-v-e8999add]{--un-text-opacity:1;color:rgb(0 0 0/var(--un-text-opacity))}.font-light[data-v-e8999add]{font-weight:300}.font-medium[data-v-e8999add]{font-weight:500}.leading-tight[data-v-e8999add]{line-height:1.25}.font-sans[data-v-e8999add]{font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji}.antialiased[data-v-e8999add]{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (prefers-color-scheme:dark){.dark\:bg-black[data-v-e8999add]{--un-bg-opacity:1;background-color:rgb(0 0 0/var(--un-bg-opacity))}.dark\:text-white[data-v-e8999add]{--un-text-opacity:1;color:rgb(255 255 255/var(--un-text-opacity))}}@media (min-width:640px){.sm\:px-0[data-v-e8999add]{padding-left:0;padding-right:0}.sm\:px-6[data-v-e8999add]{padding-left:1.5rem;padding-right:1.5rem}.sm\:py-3[data-v-e8999add]{padding-bottom:.75rem;padding-top:.75rem}.sm\:text-4xl[data-v-e8999add]{font-size:2.25rem;line-height:2.5rem}.sm\:text-xl[data-v-e8999add]{font-size:1.25rem;line-height:1.75rem}}
@@ -0,0 +1 @@
1
+ .spotlight[data-v-ab5e1a72]{background:linear-gradient(45deg,#00dc82,#36e4da 50%,#0047e1);filter:blur(20vh)}.fixed[data-v-ab5e1a72]{position:fixed}.-bottom-1\/2[data-v-ab5e1a72]{bottom:-50%}.left-0[data-v-ab5e1a72]{left:0}.right-0[data-v-ab5e1a72]{right:0}.grid[data-v-ab5e1a72]{display:grid}.mb-16[data-v-ab5e1a72]{margin-bottom:4rem}.mb-8[data-v-ab5e1a72]{margin-bottom:2rem}.h-1\/2[data-v-ab5e1a72]{height:50%}.max-w-520px[data-v-ab5e1a72]{max-width:520px}.min-h-screen[data-v-ab5e1a72]{min-height:100vh}.place-content-center[data-v-ab5e1a72]{place-content:center}.overflow-hidden[data-v-ab5e1a72]{overflow:hidden}.bg-white[data-v-ab5e1a72]{--un-bg-opacity:1;background-color:rgb(255 255 255/var(--un-bg-opacity))}.px-8[data-v-ab5e1a72]{padding-left:2rem;padding-right:2rem}.text-center[data-v-ab5e1a72]{text-align:center}.text-8xl[data-v-ab5e1a72]{font-size:6rem;line-height:1}.text-xl[data-v-ab5e1a72]{font-size:1.25rem;line-height:1.75rem}.text-black[data-v-ab5e1a72]{--un-text-opacity:1;color:rgb(0 0 0/var(--un-text-opacity))}.font-light[data-v-ab5e1a72]{font-weight:300}.font-medium[data-v-ab5e1a72]{font-weight:500}.leading-tight[data-v-ab5e1a72]{line-height:1.25}.font-sans[data-v-ab5e1a72]{font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji}.antialiased[data-v-ab5e1a72]{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (prefers-color-scheme:dark){.dark\:bg-black[data-v-ab5e1a72]{--un-bg-opacity:1;background-color:rgb(0 0 0/var(--un-bg-opacity))}.dark\:text-white[data-v-ab5e1a72]{--un-text-opacity:1;color:rgb(255 255 255/var(--un-text-opacity))}}@media (min-width:640px){.sm\:px-0[data-v-ab5e1a72]{padding-left:0;padding-right:0}.sm\:text-4xl[data-v-ab5e1a72]{font-size:2.25rem;line-height:2.5rem}}
@@ -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
3
  <link rel="stylesheet" href="/__nuxt-og-image/_nuxt/entry.DtsycVcr.css">
4
- <link rel="modulepreload" as="script" crossorigin href="/__nuxt-og-image/_nuxt/MkuNFWFs.js">
4
+ <link rel="modulepreload" as="script" crossorigin href="/__nuxt-og-image/_nuxt/DkfuXiRx.js">
5
5
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/BS9sT-GQ.js">
6
6
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/C6doOGgB.js">
7
7
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/pCnzZaOt.js">
@@ -267,9 +267,9 @@
267
267
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/BLmvGqlk.js">
268
268
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/BYelj_cE.js">
269
269
  <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/B6E6ObS_.js">
270
- <link rel="prefetch" as="style" href="/__nuxt-og-image/_nuxt/error-404.CUF_CFKB.css">
271
- <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/DqFtmHIk.js">
272
- <link rel="prefetch" as="style" href="/__nuxt-og-image/_nuxt/error-500.BR60owpQ.css">
273
- <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/D25Gr2Wc.js">
274
- <script type="module" src="/__nuxt-og-image/_nuxt/MkuNFWFs.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__">[{"serverRendered":1},false]</script>
275
- <script>window.__NUXT__={};window.__NUXT__.config={public:{},app:{baseURL:"/__nuxt-og-image",buildId:"353519f1-2e76-4016-9b50-2f26f3cb8794",buildAssetsDir:"/_nuxt/",cdnURL:""}}</script></body></html>
270
+ <link rel="prefetch" as="style" href="/__nuxt-og-image/_nuxt/error-404.D2eZnIkK.css">
271
+ <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/CxK4ekaG.js">
272
+ <link rel="prefetch" as="style" href="/__nuxt-og-image/_nuxt/error-500.BJ-KsTwR.css">
273
+ <link rel="prefetch" as="script" crossorigin href="/__nuxt-og-image/_nuxt/CFTaR7kf.js">
274
+ <script type="module" src="/__nuxt-og-image/_nuxt/DkfuXiRx.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__">[{"serverRendered":1},false]</script>
275
+ <script>window.__NUXT__={};window.__NUXT__.config={public:{},app:{baseURL:"/__nuxt-og-image",buildId:"20c6e651-bfb6-4ebb-ac2f-044ec6fe17ad",buildAssetsDir:"/_nuxt/",cdnURL:""}}</script></body></html>
package/dist/module.d.mts CHANGED
@@ -88,6 +88,14 @@ interface ModuleOptions {
88
88
  * Only allow the prerendering and dev runtimes to generate images.
89
89
  */
90
90
  zeroRuntime?: boolean;
91
+ /**
92
+ * Enable when your nuxt/content files match your pages.
93
+ *
94
+ * This will automatically map the `ogImage` frontmatter key to the correct path.
95
+ *
96
+ * This is similar behavior to using `nuxt/content` with `documentDriven: true`.
97
+ */
98
+ strictNuxtContentPaths: boolean;
91
99
  }
92
100
  interface ModuleHooks {
93
101
  'nuxt-og-image:components': (ctx: {
package/dist/module.d.ts CHANGED
@@ -88,6 +88,14 @@ interface ModuleOptions {
88
88
  * Only allow the prerendering and dev runtimes to generate images.
89
89
  */
90
90
  zeroRuntime?: boolean;
91
+ /**
92
+ * Enable when your nuxt/content files match your pages.
93
+ *
94
+ * This will automatically map the `ogImage` frontmatter key to the correct path.
95
+ *
96
+ * This is similar behavior to using `nuxt/content` with `documentDriven: true`.
97
+ */
98
+ strictNuxtContentPaths: boolean;
91
99
  }
92
100
  interface ModuleHooks {
93
101
  'nuxt-og-image:components': (ctx: {
package/dist/module.json CHANGED
@@ -5,7 +5,7 @@
5
5
  "bridge": false
6
6
  },
7
7
  "configKey": "ogImage",
8
- "version": "3.0.0-rc.67",
8
+ "version": "3.0.0-rc.68",
9
9
  "builder": {
10
10
  "@nuxt/module-builder": "0.8.4",
11
11
  "unbuild": "2.0.0"
package/dist/module.mjs CHANGED
@@ -896,7 +896,7 @@ declare module '#nuxt-og-image/unocss-config' {
896
896
  hasNuxtIcon: hasNuxtModule("nuxt-icon") || hasNuxtModule("@nuxt/icon"),
897
897
  colorPreference,
898
898
  // @ts-expect-error runtime type
899
- isNuxtContentDocumentDriven: !!nuxt.options.content?.documentDriven
899
+ isNuxtContentDocumentDriven: config.strictNuxtContentPaths || !!nuxt.options.content?.documentDriven
900
900
  };
901
901
  nuxt.hooks.callHook("nuxt-og-image:runtime-config", runtimeConfig);
902
902
  nuxt.options.runtimeConfig["nuxt-og-image"] = runtimeConfig;
@@ -0,0 +1,2 @@
1
+ import type { DefineOgImageInput, OgImageOptions, OgImagePrebuilt } from '../../types.js';
2
+ export declare function normaliseOptions(_options: DefineOgImageInput): OgImageOptions | OgImagePrebuilt;
@@ -0,0 +1,18 @@
1
+ import { componentNames } from "#nuxt-og-image/component-names.mjs";
2
+ export function normaliseOptions(_options) {
3
+ const options = { ..._options };
4
+ if (!options)
5
+ return options;
6
+ if (options.component && componentNames) {
7
+ const originalName = options.component;
8
+ for (const component of componentNames) {
9
+ if (component.pascalName.endsWith(originalName) || component.kebabName.endsWith(originalName)) {
10
+ options.component = component.pascalName;
11
+ break;
12
+ }
13
+ }
14
+ } else if (!options.component) {
15
+ options.component = componentNames[0]?.pascalName;
16
+ }
17
+ return options;
18
+ }
@@ -1,13 +1,14 @@
1
1
  import { defu } from "defu";
2
2
  import { stringify } from "devalue";
3
3
  import { getOgImagePath, useOgImageRuntimeConfig } from "../../shared.js";
4
+ import { normaliseOptions } from "./options.js";
4
5
  export function nuxtContentPlugin(nitroApp) {
5
6
  const { isNuxtContentDocumentDriven, defaults } = useOgImageRuntimeConfig();
6
7
  nitroApp.hooks.hook("content:file:afterParse", async (content) => {
7
8
  if (content._draft || content._extension !== "md" || content._partial || content.indexable === false || content.index === false)
8
9
  return;
9
10
  let path = content.path;
10
- if (isNuxtContentDocumentDriven)
11
+ if (isNuxtContentDocumentDriven && content.path)
11
12
  path = content._path;
12
13
  if (path && content.ogImage) {
13
14
  const ogImageConfig = typeof content.ogImage === "object" ? content.ogImage : {};
@@ -27,7 +28,7 @@ export function nuxtContentPlugin(nitroApp) {
27
28
  id: "nuxt-og-image-overrides",
28
29
  type: "application/json",
29
30
  processTemplateParams: true,
30
- innerHTML: stringify(payload),
31
+ innerHTML: stringify(normaliseOptions(payload)),
31
32
  // we want this to be last in our head
32
33
  tagPosition: "bodyClose",
33
34
  tagPriority: 30
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "nuxt-og-image",
3
3
  "type": "module",
4
- "version": "3.0.0-rc.68",
4
+ "version": "3.0.0-rc.69",
5
5
  "description": "Enlightened OG Image generation for Nuxt.",
6
6
  "author": {
7
7
  "website": "https://harlanzw.com",
@@ -73,7 +73,7 @@
73
73
  "@iconify-json/logos": "^1.2.0",
74
74
  "@iconify-json/noto": "^1.2.0",
75
75
  "@iconify-json/ri": "^1.2.0",
76
- "@iconify-json/tabler": "^1.2.1",
76
+ "@iconify-json/tabler": "^1.2.2",
77
77
  "@img/sharp-linux-x64": "0.33.5",
78
78
  "@nuxt/content": "^2.13.2",
79
79
  "@nuxt/devtools": "1.4.2",
@@ -124,6 +124,7 @@
124
124
  "build": "pnpm stub && nuxt-module-build build && pnpm run build:client",
125
125
  "build:client": "nuxi generate client",
126
126
  "build:module": "nuxt-build-module build",
127
+ "client:dev": "nuxi dev client --port 3030",
127
128
  "lint": "eslint . --fix",
128
129
  "dev": "nuxi dev playground",
129
130
  "dev:build": "nuxi build playground",
@@ -1 +0,0 @@
1
- {"id":"353519f1-2e76-4016-9b50-2f26f3cb8794","timestamp":1726058875363,"matcher":{"static":{},"wildcard":{},"dynamic":{}},"prerendered":[]}
@@ -1 +0,0 @@
1
- .spotlight[data-v-80d30000]{background:linear-gradient(45deg,#00dc82,#36e4da 50%,#0047e1);bottom:-30vh;filter:blur(20vh);height:40vh}.gradient-border[data-v-80d30000]{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:.5rem;position:relative}@media (prefers-color-scheme:light){.gradient-border[data-v-80d30000]{background-color:#ffffff4d}.gradient-border[data-v-80d30000]:before{background:linear-gradient(90deg,#e2e2e2,#e2e2e2 25%,#00dc82,#36e4da 75%,#0047e1)}}@media (prefers-color-scheme:dark){.gradient-border[data-v-80d30000]{background-color:#1414144d}.gradient-border[data-v-80d30000]:before{background:linear-gradient(90deg,#303030,#303030 25%,#00dc82,#36e4da 75%,#0047e1)}}.gradient-border[data-v-80d30000]:before{background-size:400% auto;border-radius:.5rem;bottom:0;content:"";left:0;-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:.5;padding:2px;position:absolute;right:0;top:0;transition:background-position .3s ease-in-out,opacity .2s ease-in-out;width:100%}.gradient-border[data-v-80d30000]:hover:before{background-position:-50% 0;opacity:1}.fixed[data-v-80d30000]{position:fixed}.left-0[data-v-80d30000]{left:0}.right-0[data-v-80d30000]{right:0}.z-10[data-v-80d30000]{z-index:10}.z-20[data-v-80d30000]{z-index:20}.grid[data-v-80d30000]{display:grid}.mb-16[data-v-80d30000]{margin-bottom:4rem}.mb-8[data-v-80d30000]{margin-bottom:2rem}.max-w-520px[data-v-80d30000]{max-width:520px}.min-h-screen[data-v-80d30000]{min-height:100vh}.w-full[data-v-80d30000]{width:100%}.flex[data-v-80d30000]{display:flex}.cursor-pointer[data-v-80d30000]{cursor:pointer}.place-content-center[data-v-80d30000]{place-content:center}.items-center[data-v-80d30000]{align-items:center}.justify-center[data-v-80d30000]{justify-content:center}.overflow-hidden[data-v-80d30000]{overflow:hidden}.bg-white[data-v-80d30000]{--un-bg-opacity:1;background-color:rgb(255 255 255/var(--un-bg-opacity))}.px-4[data-v-80d30000]{padding-left:1rem;padding-right:1rem}.px-8[data-v-80d30000]{padding-left:2rem;padding-right:2rem}.py-2[data-v-80d30000]{padding-bottom:.5rem;padding-top:.5rem}.text-center[data-v-80d30000]{text-align:center}.text-8xl[data-v-80d30000]{font-size:6rem;line-height:1}.text-xl[data-v-80d30000]{font-size:1.25rem;line-height:1.75rem}.text-black[data-v-80d30000]{--un-text-opacity:1;color:rgb(0 0 0/var(--un-text-opacity))}.font-light[data-v-80d30000]{font-weight:300}.font-medium[data-v-80d30000]{font-weight:500}.leading-tight[data-v-80d30000]{line-height:1.25}.font-sans[data-v-80d30000]{font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji}.antialiased[data-v-80d30000]{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (prefers-color-scheme:dark){.dark\:bg-black[data-v-80d30000]{--un-bg-opacity:1;background-color:rgb(0 0 0/var(--un-bg-opacity))}.dark\:text-white[data-v-80d30000]{--un-text-opacity:1;color:rgb(255 255 255/var(--un-text-opacity))}}@media (min-width:640px){.sm\:px-0[data-v-80d30000]{padding-left:0;padding-right:0}.sm\:px-6[data-v-80d30000]{padding-left:1.5rem;padding-right:1.5rem}.sm\:py-3[data-v-80d30000]{padding-bottom:.75rem;padding-top:.75rem}.sm\:text-4xl[data-v-80d30000]{font-size:2.25rem;line-height:2.5rem}.sm\:text-xl[data-v-80d30000]{font-size:1.25rem;line-height:1.75rem}}
@@ -1 +0,0 @@
1
- .spotlight[data-v-9e80872b]{background:linear-gradient(45deg,#00dc82,#36e4da 50%,#0047e1);filter:blur(20vh)}.fixed[data-v-9e80872b]{position:fixed}.-bottom-1\/2[data-v-9e80872b]{bottom:-50%}.left-0[data-v-9e80872b]{left:0}.right-0[data-v-9e80872b]{right:0}.grid[data-v-9e80872b]{display:grid}.mb-16[data-v-9e80872b]{margin-bottom:4rem}.mb-8[data-v-9e80872b]{margin-bottom:2rem}.h-1\/2[data-v-9e80872b]{height:50%}.max-w-520px[data-v-9e80872b]{max-width:520px}.min-h-screen[data-v-9e80872b]{min-height:100vh}.place-content-center[data-v-9e80872b]{place-content:center}.overflow-hidden[data-v-9e80872b]{overflow:hidden}.bg-white[data-v-9e80872b]{--un-bg-opacity:1;background-color:rgb(255 255 255/var(--un-bg-opacity))}.px-8[data-v-9e80872b]{padding-left:2rem;padding-right:2rem}.text-center[data-v-9e80872b]{text-align:center}.text-8xl[data-v-9e80872b]{font-size:6rem;line-height:1}.text-xl[data-v-9e80872b]{font-size:1.25rem;line-height:1.75rem}.text-black[data-v-9e80872b]{--un-text-opacity:1;color:rgb(0 0 0/var(--un-text-opacity))}.font-light[data-v-9e80872b]{font-weight:300}.font-medium[data-v-9e80872b]{font-weight:500}.leading-tight[data-v-9e80872b]{line-height:1.25}.font-sans[data-v-9e80872b]{font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji}.antialiased[data-v-9e80872b]{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (prefers-color-scheme:dark){.dark\:bg-black[data-v-9e80872b]{--un-bg-opacity:1;background-color:rgb(0 0 0/var(--un-bg-opacity))}.dark\:text-white[data-v-9e80872b]{--un-text-opacity:1;color:rgb(255 255 255/var(--un-text-opacity))}}@media (min-width:640px){.sm\:px-0[data-v-9e80872b]{padding-left:0;padding-right:0}.sm\:text-4xl[data-v-9e80872b]{font-size:2.25rem;line-height:2.5rem}}