vocs 2.0.0-rc.3 → 2.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.
@@ -1 +1 @@
1
- {"version":3,"file":"Callout.d.ts","sourceRoot":"","sources":["../../src/react/Callout.tsx"],"names":[],"mappings":"AAKA,wBAAgB,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,KAAK,2CAe3C;AAED,MAAM,CAAC,OAAO,WAAW,OAAO,CAAC;IAC/B,KAAY,KAAK,GAAG,KAAK,CAAC,iBAAiB,CAAC;QAC1C,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GAAG,QAAQ,GAAG,KAAK,GAAG,SAAS,CAAA;KACpE,CAAC,CAAA;CACH"}
1
+ {"version":3,"file":"Callout.d.ts","sourceRoot":"","sources":["../../src/react/Callout.tsx"],"names":[],"mappings":"AAKA,wBAAgB,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,KAAK,2CAwB3C;AAED,MAAM,CAAC,OAAO,WAAW,OAAO,CAAC;IAC/B,KAAY,KAAK,GAAG,KAAK,CAAC,iBAAiB,CAAC;QAC1C,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GAAG,QAAQ,GAAG,KAAK,GAAG,SAAS,CAAA;KACpE,CAAC,CAAA;CACH"}
@@ -4,7 +4,8 @@ import LucideInfo from '~icons/lucide/info';
4
4
  import LucideLightbulb from '~icons/lucide/lightbulb';
5
5
  import LucideTriangleAlert from '~icons/lucide/triangle-alert';
6
6
  export function Callout(props) {
7
- const { variant, ...rest } = props;
8
- return (_jsxs("aside", { ...rest, "data-v": true, "data-v-callout": true, "data-v-content": true, "data-v-context": variant, children: [_jsxs("div", { "data-v-callout-icon": true, children: [props.variant === 'note' ? _jsx(LucideInfo, {}) : null, props.variant === 'info' ? _jsx(LucideInfo, {}) : null, props.variant === 'warning' ? _jsx(LucideTriangleAlert, {}) : null, props.variant === 'danger' ? _jsx(LucideTriangleAlert, {}) : null, props.variant === 'tip' ? _jsx(LucideLightbulb, {}) : null, props.variant === 'success' ? _jsx(LucideCircleCheck, {}) : null] }), props.children] }));
7
+ const { children, variant, ...rest } = props;
8
+ const content = typeof children === 'string' || typeof children === 'number' ? (_jsx("div", { "data-v-callout-content": true, "data-v-content": true, children: children })) : (children);
9
+ return (_jsxs("aside", { ...rest, "data-v": true, "data-v-callout": true, "data-v-content": true, "data-v-context": variant, children: [_jsxs("div", { "data-v-callout-icon": true, children: [props.variant === 'note' ? _jsx(LucideInfo, {}) : null, props.variant === 'info' ? _jsx(LucideInfo, {}) : null, props.variant === 'warning' ? _jsx(LucideTriangleAlert, {}) : null, props.variant === 'danger' ? _jsx(LucideTriangleAlert, {}) : null, props.variant === 'tip' ? _jsx(LucideLightbulb, {}) : null, props.variant === 'success' ? _jsx(LucideCircleCheck, {}) : null] }), content] }));
9
10
  }
10
11
  //# sourceMappingURL=Callout.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Callout.js","sourceRoot":"","sources":["../../src/react/Callout.tsx"],"names":[],"mappings":";AAAA,OAAO,iBAAiB,MAAM,4BAA4B,CAAA;AAC1D,OAAO,UAAU,MAAM,oBAAoB,CAAA;AAC3C,OAAO,eAAe,MAAM,yBAAyB,CAAA;AACrD,OAAO,mBAAmB,MAAM,8BAA8B,CAAA;AAE9D,MAAM,UAAU,OAAO,CAAC,KAAoB;IAC1C,MAAM,EAAE,OAAO,EAAE,GAAG,IAAI,EAAE,GAAG,KAAK,CAAA;IAClC,OAAO,CACL,oBAAW,IAAI,oFAAuD,OAAO,aAC3E,uDACG,KAAK,CAAC,OAAO,KAAK,MAAM,CAAC,CAAC,CAAC,KAAC,UAAU,KAAG,CAAC,CAAC,CAAC,IAAI,EAChD,KAAK,CAAC,OAAO,KAAK,MAAM,CAAC,CAAC,CAAC,KAAC,UAAU,KAAG,CAAC,CAAC,CAAC,IAAI,EAChD,KAAK,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,KAAC,mBAAmB,KAAG,CAAC,CAAC,CAAC,IAAI,EAC5D,KAAK,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAC,mBAAmB,KAAG,CAAC,CAAC,CAAC,IAAI,EAC3D,KAAK,CAAC,OAAO,KAAK,KAAK,CAAC,CAAC,CAAC,KAAC,eAAe,KAAG,CAAC,CAAC,CAAC,IAAI,EACpD,KAAK,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,KAAC,iBAAiB,KAAG,CAAC,CAAC,CAAC,IAAI,IACvD,EACL,KAAK,CAAC,QAAQ,IACT,CACT,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"Callout.js","sourceRoot":"","sources":["../../src/react/Callout.tsx"],"names":[],"mappings":";AAAA,OAAO,iBAAiB,MAAM,4BAA4B,CAAA;AAC1D,OAAO,UAAU,MAAM,oBAAoB,CAAA;AAC3C,OAAO,eAAe,MAAM,yBAAyB,CAAA;AACrD,OAAO,mBAAmB,MAAM,8BAA8B,CAAA;AAE9D,MAAM,UAAU,OAAO,CAAC,KAAoB;IAC1C,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,IAAI,EAAE,GAAG,KAAK,CAAA;IAC5C,MAAM,OAAO,GACX,OAAO,QAAQ,KAAK,QAAQ,IAAI,OAAO,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,CAC7D,gFACG,QAAQ,GACL,CACP,CAAC,CAAC,CAAC,CACF,QAAQ,CACT,CAAA;IAEH,OAAO,CACL,oBAAW,IAAI,oFAAuD,OAAO,aAC3E,uDACG,KAAK,CAAC,OAAO,KAAK,MAAM,CAAC,CAAC,CAAC,KAAC,UAAU,KAAG,CAAC,CAAC,CAAC,IAAI,EAChD,KAAK,CAAC,OAAO,KAAK,MAAM,CAAC,CAAC,CAAC,KAAC,UAAU,KAAG,CAAC,CAAC,CAAC,IAAI,EAChD,KAAK,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,KAAC,mBAAmB,KAAG,CAAC,CAAC,CAAC,IAAI,EAC5D,KAAK,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAC,mBAAmB,KAAG,CAAC,CAAC,CAAC,IAAI,EAC3D,KAAK,CAAC,OAAO,KAAK,KAAK,CAAC,CAAC,CAAC,KAAC,eAAe,KAAG,CAAC,CAAC,CAAC,IAAI,EACpD,KAAK,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,KAAC,iBAAiB,KAAG,CAAC,CAAC,CAAC,IAAI,IACvD,EACL,OAAO,IACF,CACT,CAAA;AACH,CAAC"}
@@ -33,7 +33,7 @@ export function Head() {
33
33
  return (_jsxs(_Fragment, { children: [!staticScheme && (_jsx("script", {
34
34
  // biome-ignore lint/security/noDangerouslySetInnerHtml: blocking script to prevent FOUC
35
35
  dangerouslySetInnerHTML: {
36
- __html: `(function(){try{var t=localStorage.getItem('vocs-theme');if(t==='light'||t==='dark'){document.documentElement.style.colorScheme=t}else if(window.matchMedia('(prefers-color-scheme:dark)').matches){document.documentElement.style.colorScheme='dark'}else if(window.matchMedia('(prefers-color-scheme:light)').matches){document.documentElement.style.colorScheme='light'}else{document.documentElement.style.colorScheme='dark'}}catch(e){}})()`,
36
+ __html: `(function(){try{var e=document.documentElement;var s=function(t){e.setAttribute('data-vocs-theme',t);e.style.colorScheme=t};var t=localStorage.getItem('vocs-theme');if(t==='light'||t==='dark'){s(t)}else if(window.matchMedia('(prefers-color-scheme:dark)').matches){s('dark')}else if(window.matchMedia('(prefers-color-scheme:light)').matches){s('light')}else{s('dark')}}catch(e){}})()`,
37
37
  } })), _jsx("meta", { name: "color-scheme", content: colorScheme }), _jsx("meta", { name: "robots", content: frontmatter?.robots ?? (import.meta.env.PROD ? 'index, follow' : 'noindex, nofollow') }), fullTitle && _jsx("title", { children: fullTitle }, "title"), description && _jsx("meta", { name: "description", content: description }), baseUrl && _jsx("base", { href: baseUrl }), canonicalUrl && _jsx("link", { rel: "canonical", href: canonicalUrl }), iconUrl && typeof iconUrl === 'string' && (_jsx("link", { rel: "icon", href: iconUrl, type: getIconType(iconUrl) })), iconUrl && typeof iconUrl !== 'string' && (_jsx("link", { rel: "icon", href: iconUrl.light, type: getIconType(iconUrl.light) })), iconUrl && typeof iconUrl !== 'string' && (_jsx("link", { rel: "icon", href: iconUrl.dark, type: getIconType(iconUrl.dark), media: "(prefers-color-scheme: dark)" })), frontmatter?.author && _jsx("meta", { name: "author", content: frontmatter.author }), _jsx("meta", { property: "og:type", content: "website" }), title && _jsx("meta", { property: "og:title", content: title }), config.title && _jsx("meta", { property: "og:site_name", content: config.title }), baseUrl && _jsx("meta", { property: "og:url", content: canonicalUrl ?? baseUrl }), description && _jsx("meta", { property: "og:description", content: description }), ogImage && _jsx("meta", { property: "og:image", content: ogImage }), frontmatter?.author && _jsx("meta", { property: "article:author", content: frontmatter.author }), frontmatter?.lastModified && (_jsx("meta", { property: "article:modified_time", content: frontmatter.lastModified })), _jsx("meta", { name: "twitter:card", content: "summary_large_image" }), title && _jsx("meta", { name: "twitter:title", content: title }), description && _jsx("meta", { name: "twitter:description", content: description }), ogImage && _jsx("meta", { property: "twitter:image", content: ogImage })] }));
38
38
  }
39
39
  function getIconType(iconUrl) {
@@ -1 +1 @@
1
- {"version":3,"file":"Head.js","sourceRoot":"","sources":["../../src/react/Head.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Head.js","sourceRoot":"","sources":["../../src/react/Head.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"Root.client.d.ts","sourceRoot":"","sources":["../../src/react/Root.client.tsx"],"names":[],"mappings":"AA2CA,wBAAgB,WAAW,CAAC,EAAE,QAAQ,EAAE,EAAE;IAAE,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;CAAE,2CAkCtE"}
1
+ {"version":3,"file":"Root.client.d.ts","sourceRoot":"","sources":["../../src/react/Root.client.tsx"],"names":[],"mappings":"AA6CA,wBAAgB,WAAW,CAAC,EAAE,QAAQ,EAAE,EAAE;IAAE,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;CAAE,2CAoCtE"}
@@ -21,11 +21,13 @@ function getSystemTheme() {
21
21
  const disableTransitionsCSS = '*,*::before,*::after{-webkit-transition:none!important;-moz-transition:none!important;-o-transition:none!important;-ms-transition:none!important;transition:none!important}';
22
22
  function applyTheme(theme) {
23
23
  const resolved = theme === 'system' ? getSystemTheme() : theme;
24
+ const html = document.documentElement;
24
25
  // Disable transitions to prevent flash
25
26
  const style = document.createElement('style');
26
27
  style.appendChild(document.createTextNode(disableTransitionsCSS));
27
28
  document.head.appendChild(style);
28
- document.documentElement.style.colorScheme = resolved;
29
+ html.setAttribute('data-vocs-theme', resolved);
30
+ html.style.colorScheme = resolved;
29
31
  (() => window.getComputedStyle(document.body))();
30
32
  requestAnimationFrame(() => {
31
33
  requestAnimationFrame(() => {
@@ -39,8 +41,10 @@ export function Root_client({ children }) {
39
41
  // React to theme config changes.
40
42
  useEffect(() => {
41
43
  const html = document.documentElement;
42
- if (staticScheme)
44
+ if (staticScheme) {
45
+ html.setAttribute('data-vocs-theme', colorScheme);
43
46
  html.style.colorScheme = colorScheme;
47
+ }
44
48
  else
45
49
  applyTheme(getStoredTheme());
46
50
  if (html) {
@@ -1 +1 @@
1
- {"version":3,"file":"Root.client.js","sourceRoot":"","sources":["../../src/react/Root.client.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;;AAEZ,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AACjC,OAAO,EAAE,aAAa,EAAE,MAAM,oCAAoC,CAAA;AAClE,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAA;AACvD,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAE1C,MAAM,UAAU,GAAG,YAAY,CAAA;AAE/B,SAAS,cAAc;IACrB,IAAI,OAAO,MAAM,KAAK,WAAW;QAAE,OAAO,QAAQ,CAAA;IAClD,MAAM,MAAM,GAAG,YAAY,CAAC,OAAO,CAAC,UAAU,CAAC,CAAA;IAC/C,IAAI,MAAM,KAAK,OAAO,IAAI,MAAM,KAAK,MAAM,IAAI,MAAM,KAAK,QAAQ;QAAE,OAAO,MAAM,CAAA;IACjF,OAAO,QAAQ,CAAA;AACjB,CAAC;AAED,SAAS,cAAc;IACrB,IAAI,OAAO,MAAM,KAAK,WAAW;QAAE,OAAO,MAAM,CAAA;IAChD,OAAO,MAAM,CAAC,UAAU,CAAC,8BAA8B,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAA;AACrF,CAAC;AAED,MAAM,qBAAqB,GACzB,6KAA6K,CAAA;AAE/K,SAAS,UAAU,CAAC,KAAkC;IACpD,MAAM,QAAQ,GAAG,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC,KAAK,CAAA;IAE9D,uCAAuC;IACvC,MAAM,KAAK,GAAG,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,CAAA;IAC7C,KAAK,CAAC,WAAW,CAAC,QAAQ,CAAC,cAAc,CAAC,qBAAqB,CAAC,CAAC,CAAA;IACjE,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAA;IAEhC,QAAQ,CAAC,eAAe,CAAC,KAAK,CAAC,WAAW,GAAG,QAAQ,CAGpD;IAAA,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,EAAE,CAAA;IACjD,qBAAqB,CAAC,GAAG,EAAE;QACzB,qBAAqB,CAAC,GAAG,EAAE;YACzB,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAA;QAClC,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;AACJ,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,EAAE,QAAQ,EAAiC;IACrE,MAAM,EAAE,WAAW,EAAE,WAAW,EAAE,GAAG,SAAS,EAAE,CAAA;IAEhD,MAAM,YAAY,GAAG,WAAW,KAAK,YAAY,CAAA;IAEjD,iCAAiC;IACjC,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,IAAI,GAAG,QAAQ,CAAC,eAAe,CAAA;QAErC,IAAI,YAAY;YAAE,IAAI,CAAC,KAAK,CAAC,WAAW,GAAG,WAAW,CAAA;;YACjD,UAAU,CAAC,cAAc,EAAE,CAAC,CAAA;QAEjC,IAAI,IAAI,EAAE,CAAC;YACT,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI;gBAAE,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,qBAAqB,EAAE,WAAW,CAAC,CAAA;QACvF,CAAC;IACH,CAAC,EAAE,CAAC,WAAW,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC,CAAA;IAE5C,yEAAyE;IACzE,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,YAAY;YAAE,OAAM;QACxB,MAAM,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC,8BAA8B,CAAC,CAAA;QACpE,MAAM,OAAO,GAAG,GAAG,EAAE;YACnB,MAAM,WAAW,GAAG,cAAc,EAAE,CAAA;YACpC,IAAI,WAAW,KAAK,QAAQ;gBAAE,UAAU,CAAC,QAAQ,CAAC,CAAA;QACpD,CAAC,CAAA;QACD,UAAU,CAAC,gBAAgB,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAA;QAC9C,OAAO,GAAG,EAAE,CAAC,UAAU,CAAC,mBAAmB,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAA;IAChE,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC,CAAA;IAElB,OAAO,CACL,KAAC,WAAW,cACV,KAAC,aAAa,cAAE,QAAQ,GAAiB,GAC7B,CACf,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"Root.client.js","sourceRoot":"","sources":["../../src/react/Root.client.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"Root.d.ts","sourceRoot":"","sources":["../../src/react/Root.tsx"],"names":[],"mappings":"AAQA,wBAAsB,IAAI,CAAC,EAAE,QAAQ,EAAE,EAAE;IAAE,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;CAAE,oDAqBrE"}
1
+ {"version":3,"file":"Root.d.ts","sourceRoot":"","sources":["../../src/react/Root.tsx"],"names":[],"mappings":"AAQA,wBAAsB,IAAI,CAAC,EAAE,QAAQ,EAAE,EAAE;IAAE,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;CAAE,oDAwBrE"}
@@ -8,6 +8,8 @@ import { Root_client } from './Root.client.js';
8
8
  import { ScrollRestoration } from './ScrollRestoration.js';
9
9
  export async function Root({ children }) {
10
10
  const { colorScheme, accentColor } = config;
11
- return (_jsxs("html", { "data-vocs": true, lang: "en", style: { colorScheme, '--vocs-color-accent': accentColor }, suppressHydrationWarning: true, children: [_jsxs("head", { children: [_jsx("link", { rel: "stylesheet", href: stylesUrl }), userStylesUrl && _jsx("link", { rel: "stylesheet", href: userStylesUrl }), groupIconsStylesUrl && _jsx("link", { rel: "stylesheet", href: groupIconsStylesUrl }), _jsx(Head, {})] }), _jsxs("body", { "data-version": "1.0", children: [_jsx(Root_client, { children: children }), _jsx(ScrollRestoration, {})] })] }));
11
+ return (_jsxs("html", { "data-vocs": true, ...(colorScheme === 'light' || colorScheme === 'dark'
12
+ ? { 'data-vocs-theme': colorScheme }
13
+ : {}), lang: "en", style: { colorScheme, '--vocs-color-accent': accentColor }, suppressHydrationWarning: true, children: [_jsxs("head", { children: [_jsx("link", { rel: "stylesheet", href: stylesUrl }), userStylesUrl && _jsx("link", { rel: "stylesheet", href: userStylesUrl }), groupIconsStylesUrl && _jsx("link", { rel: "stylesheet", href: groupIconsStylesUrl }), _jsx(Head, {})] }), _jsxs("body", { "data-version": "1.0", children: [_jsx(Root_client, { children: children }), _jsx(ScrollRestoration, {})] })] }));
12
14
  }
13
15
  //# sourceMappingURL=Root.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Root.js","sourceRoot":"","sources":["../../src/react/Root.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAA;AAC5C,OAAO,mBAAmB,MAAM,kCAAkC,CAAA;AAClE,OAAO,aAAa,MAAM,0BAA0B,CAAA;AACpD,OAAO,SAAS,MAAM,yBAAyB,CAAA;AAC/C,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAChC,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AAC9C,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAA;AAE1D,MAAM,CAAC,KAAK,UAAU,IAAI,CAAC,EAAE,QAAQ,EAAiC;IACpE,MAAM,EAAE,WAAW,EAAE,WAAW,EAAE,GAAG,MAAM,CAAA;IAC3C,OAAO,CACL,mCAEE,IAAI,EAAC,IAAI,EACT,KAAK,EAAE,EAAE,WAAW,EAAE,qBAAqB,EAAE,WAAW,EAAW,EACnE,wBAAwB,mBAExB,2BACE,eAAM,GAAG,EAAC,YAAY,EAAC,IAAI,EAAE,SAAS,GAAI,EACzC,aAAa,IAAI,eAAM,GAAG,EAAC,YAAY,EAAC,IAAI,EAAE,aAAa,GAAI,EAC/D,mBAAmB,IAAI,eAAM,GAAG,EAAC,YAAY,EAAC,IAAI,EAAE,mBAAmB,GAAI,EAC5E,KAAC,IAAI,KAAG,IACH,EACP,gCAAmB,KAAK,aACtB,KAAC,WAAW,cAAE,QAAQ,GAAe,EACrC,KAAC,iBAAiB,KAAG,IAChB,IACF,CACR,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"Root.js","sourceRoot":"","sources":["../../src/react/Root.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAA;AAC5C,OAAO,mBAAmB,MAAM,kCAAkC,CAAA;AAClE,OAAO,aAAa,MAAM,0BAA0B,CAAA;AACpD,OAAO,SAAS,MAAM,yBAAyB,CAAA;AAC/C,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAChC,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AAC9C,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAA;AAE1D,MAAM,CAAC,KAAK,UAAU,IAAI,CAAC,EAAE,QAAQ,EAAiC;IACpE,MAAM,EAAE,WAAW,EAAE,WAAW,EAAE,GAAG,MAAM,CAAA;IAC3C,OAAO,CACL,sCAEM,CAAC,WAAW,KAAK,OAAO,IAAI,WAAW,KAAK,MAAM;YACpD,CAAC,CAAC,EAAE,iBAAiB,EAAE,WAAW,EAAE;YACpC,CAAC,CAAC,EAAE,CAAC,EACP,IAAI,EAAC,IAAI,EACT,KAAK,EAAE,EAAE,WAAW,EAAE,qBAAqB,EAAE,WAAW,EAAW,EACnE,wBAAwB,mBAExB,2BACE,eAAM,GAAG,EAAC,YAAY,EAAC,IAAI,EAAE,SAAS,GAAI,EACzC,aAAa,IAAI,eAAM,GAAG,EAAC,YAAY,EAAC,IAAI,EAAE,aAAa,GAAI,EAC/D,mBAAmB,IAAI,eAAM,GAAG,EAAC,YAAY,EAAC,IAAI,EAAE,mBAAmB,GAAI,EAC5E,KAAC,IAAI,KAAG,IACH,EACP,gCAAmB,KAAK,aACtB,KAAC,WAAW,cAAE,QAAQ,GAAe,EACrC,KAAC,iBAAiB,KAAG,IAChB,IACF,CACR,CAAA;AACH,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"ThemeToggle.client.d.ts","sourceRoot":"","sources":["../../../src/react/internal/ThemeToggle.client.tsx"],"names":[],"mappings":"AAgDA,wBAAgB,WAAW,CAAC,KAAK,EAAE,WAAW,CAAC,KAAK,kDAmDnD;AAED,MAAM,CAAC,OAAO,WAAW,WAAW,CAAC;IACnC,KAAY,KAAK,GAAG;QAClB,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;KAC/B,CAAA;CACF"}
1
+ {"version":3,"file":"ThemeToggle.client.d.ts","sourceRoot":"","sources":["../../../src/react/internal/ThemeToggle.client.tsx"],"names":[],"mappings":"AAkDA,wBAAgB,WAAW,CAAC,KAAK,EAAE,WAAW,CAAC,KAAK,kDAmDnD;AAED,MAAM,CAAC,OAAO,WAAW,WAAW,CAAC;IACnC,KAAY,KAAK,GAAG;QAClB,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;KAC/B,CAAA;CACF"}
@@ -24,11 +24,13 @@ function getSystemTheme() {
24
24
  const disableTransitionsCSS = '*,*::before,*::after{-webkit-transition:none!important;-moz-transition:none!important;-o-transition:none!important;-ms-transition:none!important;transition:none!important}';
25
25
  function applyTheme(theme) {
26
26
  const resolved = theme === 'system' ? getSystemTheme() : theme;
27
+ const html = document.documentElement;
27
28
  // Disable transitions to prevent flash
28
29
  const style = document.createElement('style');
29
30
  style.appendChild(document.createTextNode(disableTransitionsCSS));
30
31
  document.head.appendChild(style);
31
- document.documentElement.style.colorScheme = resolved;
32
+ html.setAttribute('data-vocs-theme', resolved);
33
+ html.style.colorScheme = resolved;
32
34
  (() => window.getComputedStyle(document.body))();
33
35
  requestAnimationFrame(() => {
34
36
  requestAnimationFrame(() => {
@@ -1 +1 @@
1
- {"version":3,"file":"ThemeToggle.client.js","sourceRoot":"","sources":["../../../src/react/internal/ThemeToggle.client.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ThemeToggle.client.js","sourceRoot":"","sources":["../../../src/react/internal/ThemeToggle.client.tsx"],"names":[],"mappings":"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"}
@@ -31,6 +31,19 @@
31
31
  -moz-osx-font-smoothing: grayscale;
32
32
  }
33
33
 
34
+ /* Keep Lightning CSS light-dark() output aligned with Vocs' theme toggle. */
35
+ :root[data-vocs-theme="light"] {
36
+ --lightningcss-light: initial;
37
+ --lightningcss-dark: ;
38
+ color-scheme: light;
39
+ }
40
+
41
+ :root[data-vocs-theme="dark"] {
42
+ --lightningcss-light: ;
43
+ --lightningcss-dark: initial;
44
+ color-scheme: dark;
45
+ }
46
+
34
47
  html {
35
48
  scroll-padding-top: calc(var(--vocs-spacing-topNav) + var(--vocs-spacing-banner) + 1rem);
36
49
  }
@@ -1 +1 @@
1
- {"version":3,"file":"og.d.ts","sourceRoot":"","sources":["../../../../../../src/waku/internal/routes/_api/api/og.tsx"],"names":[],"mappings":"AAQA,MAAM,CAAC,OAAO,UAAU,OAAO,CAAC,OAAO,EAAE,OAAO,qBA4D/C"}
1
+ {"version":3,"file":"og.d.ts","sourceRoot":"","sources":["../../../../../../src/waku/internal/routes/_api/api/og.tsx"],"names":[],"mappings":"AAwBA,MAAM,CAAC,OAAO,UAAU,OAAO,CAAC,OAAO,EAAE,OAAO,qBAoH/C"}
@@ -2,38 +2,63 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import * as Handler from '../../../../../server/handlers.js';
3
3
  const colors = {
4
4
  background: '#161616',
5
+ pattern: '#202020',
5
6
  text: '#ffffff',
6
7
  textMuted: 'rgba(255, 255, 255, 0.6)',
7
8
  };
9
+ const dimensions = {
10
+ height: 630,
11
+ width: 1200,
12
+ };
13
+ const patternStep = 56;
14
+ const diagonalOffsets = Array.from({ length: Math.ceil((dimensions.width + dimensions.height * 2) / patternStep) }, (_, index) => index * patternStep - dimensions.height);
15
+ const reverseDiagonalOffsets = Array.from({ length: Math.ceil((dimensions.width + dimensions.height * 2) / patternStep) }, (_, index) => index * patternStep);
8
16
  export default function handler(request) {
9
- return Handler.og(({ title, description, logo }) => (_jsxs("div", { style: {
10
- display: 'flex',
11
- flexDirection: 'column',
12
- alignItems: 'flex-start',
13
- justifyContent: 'center',
14
- width: '100%',
15
- height: '100%',
16
- padding: 80,
17
- backgroundColor: colors.background,
18
- color: colors.text,
19
- }, children: [logo && (_jsx("img", { alt: "", src: logo, style: {
20
- height: 48,
21
- position: 'absolute',
22
- right: 40,
23
- bottom: 40,
24
- } })), _jsxs("div", { style: {
25
- display: 'flex',
26
- flexDirection: 'column',
27
- gap: 12,
28
- }, children: [_jsx("div", { style: {
29
- fontSize: title.length < 15 ? 80 : 64,
30
- fontWeight: 700,
31
- lineHeight: 1.1,
32
- color: colors.text,
33
- }, children: title }), description && (_jsx("div", { style: {
34
- fontSize: 28,
35
- color: colors.textMuted,
36
- maxWidth: 800,
37
- }, children: description }))] })] }))).fetch(request);
17
+ return Handler.og(({ title, description, logo }) => {
18
+ const titleLines = title.split('\n');
19
+ return (_jsxs("div", { style: {
20
+ display: 'flex',
21
+ flexDirection: 'column',
22
+ alignItems: 'flex-start',
23
+ justifyContent: 'center',
24
+ position: 'relative',
25
+ width: '100%',
26
+ height: '100%',
27
+ overflow: 'hidden',
28
+ backgroundColor: colors.background,
29
+ color: colors.text,
30
+ }, children: [_jsx("div", { style: {
31
+ position: 'absolute',
32
+ top: 0,
33
+ right: 0,
34
+ bottom: 0,
35
+ left: 0,
36
+ }, children: _jsxs("svg", { "aria-hidden": true, width: dimensions.width, height: dimensions.height, viewBox: `0 0 ${dimensions.width} ${dimensions.height}`, fill: "none", children: [_jsx("title", { children: "Background pattern" }), diagonalOffsets.map((offset) => (_jsx("line", { x1: offset, y1: 0, x2: offset + dimensions.height, y2: dimensions.height, stroke: colors.pattern, strokeWidth: 1.5 }, `diagonal-${offset}`))), reverseDiagonalOffsets.map((offset) => (_jsx("line", { x1: offset, y1: 0, x2: offset - dimensions.height, y2: dimensions.height, stroke: colors.pattern, strokeWidth: 1.5 }, `reverse-diagonal-${offset}`)))] }) }), logo && (_jsx("img", { alt: "", src: logo, style: {
37
+ height: 48,
38
+ position: 'absolute',
39
+ right: 40,
40
+ bottom: 40,
41
+ } })), _jsxs("div", { style: {
42
+ display: 'flex',
43
+ flexDirection: 'column',
44
+ gap: 12,
45
+ position: 'relative',
46
+ justifyContent: 'center',
47
+ width: '100%',
48
+ height: '100%',
49
+ padding: 80,
50
+ }, children: [_jsx("div", { style: {
51
+ display: 'flex',
52
+ flexDirection: 'column',
53
+ fontSize: title.length < 15 ? 80 : 64,
54
+ fontWeight: 700,
55
+ lineHeight: 1.1,
56
+ color: colors.text,
57
+ }, children: titleLines.map((line) => (_jsx("div", { children: line }, line))) }), description && (_jsx("div", { style: {
58
+ fontSize: 28,
59
+ color: colors.textMuted,
60
+ maxWidth: 800,
61
+ }, children: description }))] })] }));
62
+ }).fetch(request);
38
63
  }
39
64
  //# sourceMappingURL=og.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"og.js","sourceRoot":"","sources":["../../../../../../src/waku/internal/routes/_api/api/og.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,OAAO,MAAM,mCAAmC,CAAA;AAE5D,MAAM,MAAM,GAAG;IACb,UAAU,EAAE,SAAS;IACrB,IAAI,EAAE,SAAS;IACf,SAAS,EAAE,0BAA0B;CACtC,CAAA;AAED,MAAM,CAAC,OAAO,UAAU,OAAO,CAAC,OAAgB;IAC9C,OAAO,OAAO,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,CAClD,eACE,KAAK,EAAE;YACL,OAAO,EAAE,MAAM;YACf,aAAa,EAAE,QAAQ;YACvB,UAAU,EAAE,YAAY;YACxB,cAAc,EAAE,QAAQ;YACxB,KAAK,EAAE,MAAM;YACb,MAAM,EAAE,MAAM;YACd,OAAO,EAAE,EAAE;YACX,eAAe,EAAE,MAAM,CAAC,UAAU;YAClC,KAAK,EAAE,MAAM,CAAC,IAAI;SACnB,aAEA,IAAI,IAAI,CACP,cACE,GAAG,EAAC,EAAE,EACN,GAAG,EAAE,IAAI,EACT,KAAK,EAAE;oBACL,MAAM,EAAE,EAAE;oBACV,QAAQ,EAAE,UAAU;oBACpB,KAAK,EAAE,EAAE;oBACT,MAAM,EAAE,EAAE;iBACX,GACD,CACH,EAED,eACE,KAAK,EAAE;oBACL,OAAO,EAAE,MAAM;oBACf,aAAa,EAAE,QAAQ;oBACvB,GAAG,EAAE,EAAE;iBACR,aAED,cACE,KAAK,EAAE;4BACL,QAAQ,EAAE,KAAK,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE;4BACrC,UAAU,EAAE,GAAG;4BACf,UAAU,EAAE,GAAG;4BACf,KAAK,EAAE,MAAM,CAAC,IAAI;yBACnB,YAEA,KAAK,GACF,EAEL,WAAW,IAAI,CACd,cACE,KAAK,EAAE;4BACL,QAAQ,EAAE,EAAE;4BACZ,KAAK,EAAE,MAAM,CAAC,SAAS;4BACvB,QAAQ,EAAE,GAAG;yBACd,YAEA,WAAW,GACR,CACP,IACG,IACF,CACP,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;AACnB,CAAC"}
1
+ {"version":3,"file":"og.js","sourceRoot":"","sources":["../../../../../../src/waku/internal/routes/_api/api/og.tsx"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "vocs",
3
3
  "type": "module",
4
- "version": "2.0.0-rc.3",
4
+ "version": "2.0.1",
5
5
  "main": "./dist/index.js",
6
6
  "license": "MIT",
7
7
  "repository": {
@@ -85,7 +85,7 @@
85
85
  "zod": "^4.3.5"
86
86
  },
87
87
  "peerDependencies": {
88
- "@vocs/twoslash-rust": "^0.1.0-rc.0",
88
+ "@vocs/twoslash-rust": "^0.1.0",
89
89
  "mermaid": "^11",
90
90
  "react": "^19",
91
91
  "react-dom": "^19",
@@ -4,7 +4,16 @@ import LucideLightbulb from '~icons/lucide/lightbulb'
4
4
  import LucideTriangleAlert from '~icons/lucide/triangle-alert'
5
5
 
6
6
  export function Callout(props: Callout.Props) {
7
- const { variant, ...rest } = props
7
+ const { children, variant, ...rest } = props
8
+ const content =
9
+ typeof children === 'string' || typeof children === 'number' ? (
10
+ <div data-v-callout-content data-v-content>
11
+ {children}
12
+ </div>
13
+ ) : (
14
+ children
15
+ )
16
+
8
17
  return (
9
18
  <aside {...rest} data-v data-v-callout data-v-content data-v-context={variant}>
10
19
  <div data-v-callout-icon>
@@ -15,7 +24,7 @@ export function Callout(props: Callout.Props) {
15
24
  {props.variant === 'tip' ? <LucideLightbulb /> : null}
16
25
  {props.variant === 'success' ? <LucideCircleCheck /> : null}
17
26
  </div>
18
- {props.children}
27
+ {content}
19
28
  </aside>
20
29
  )
21
30
  }
@@ -46,7 +46,7 @@ export function Head() {
46
46
  <script
47
47
  // biome-ignore lint/security/noDangerouslySetInnerHtml: blocking script to prevent FOUC
48
48
  dangerouslySetInnerHTML={{
49
- __html: `(function(){try{var t=localStorage.getItem('vocs-theme');if(t==='light'||t==='dark'){document.documentElement.style.colorScheme=t}else if(window.matchMedia('(prefers-color-scheme:dark)').matches){document.documentElement.style.colorScheme='dark'}else if(window.matchMedia('(prefers-color-scheme:light)').matches){document.documentElement.style.colorScheme='light'}else{document.documentElement.style.colorScheme='dark'}}catch(e){}})()`,
49
+ __html: `(function(){try{var e=document.documentElement;var s=function(t){e.setAttribute('data-vocs-theme',t);e.style.colorScheme=t};var t=localStorage.getItem('vocs-theme');if(t==='light'||t==='dark'){s(t)}else if(window.matchMedia('(prefers-color-scheme:dark)').matches){s('dark')}else if(window.matchMedia('(prefers-color-scheme:light)').matches){s('light')}else{s('dark')}}catch(e){}})()`,
50
50
  }}
51
51
  />
52
52
  )}
@@ -24,13 +24,15 @@ const disableTransitionsCSS =
24
24
 
25
25
  function applyTheme(theme: 'light' | 'dark' | 'system') {
26
26
  const resolved = theme === 'system' ? getSystemTheme() : theme
27
+ const html = document.documentElement
27
28
 
28
29
  // Disable transitions to prevent flash
29
30
  const style = document.createElement('style')
30
31
  style.appendChild(document.createTextNode(disableTransitionsCSS))
31
32
  document.head.appendChild(style)
32
33
 
33
- document.documentElement.style.colorScheme = resolved
34
+ html.setAttribute('data-vocs-theme', resolved)
35
+ html.style.colorScheme = resolved
34
36
 
35
37
  // Force reflow and re-enable transitions
36
38
  ;(() => window.getComputedStyle(document.body))()
@@ -50,8 +52,10 @@ export function Root_client({ children }: { children: React.ReactNode }) {
50
52
  useEffect(() => {
51
53
  const html = document.documentElement
52
54
 
53
- if (staticScheme) html.style.colorScheme = colorScheme
54
- else applyTheme(getStoredTheme())
55
+ if (staticScheme) {
56
+ html.setAttribute('data-vocs-theme', colorScheme)
57
+ html.style.colorScheme = colorScheme
58
+ } else applyTheme(getStoredTheme())
55
59
 
56
60
  if (html) {
57
61
  if (!import.meta.env.PROD) html.style.setProperty('--vocs-color-accent', accentColor)
@@ -11,6 +11,9 @@ export async function Root({ children }: { children: React.ReactNode }) {
11
11
  return (
12
12
  <html
13
13
  data-vocs
14
+ {...(colorScheme === 'light' || colorScheme === 'dark'
15
+ ? { 'data-vocs-theme': colorScheme }
16
+ : {})}
14
17
  lang="en"
15
18
  style={{ colorScheme, '--vocs-color-accent': accentColor } as never}
16
19
  suppressHydrationWarning
@@ -29,13 +29,15 @@ const disableTransitionsCSS =
29
29
 
30
30
  function applyTheme(theme: Theme) {
31
31
  const resolved = theme === 'system' ? getSystemTheme() : theme
32
+ const html = document.documentElement
32
33
 
33
34
  // Disable transitions to prevent flash
34
35
  const style = document.createElement('style')
35
36
  style.appendChild(document.createTextNode(disableTransitionsCSS))
36
37
  document.head.appendChild(style)
37
38
 
38
- document.documentElement.style.colorScheme = resolved
39
+ html.setAttribute('data-vocs-theme', resolved)
40
+ html.style.colorScheme = resolved
39
41
 
40
42
  // Force reflow and re-enable transitions
41
43
  ;(() => window.getComputedStyle(document.body))()
@@ -31,6 +31,19 @@
31
31
  -moz-osx-font-smoothing: grayscale;
32
32
  }
33
33
 
34
+ /* Keep Lightning CSS light-dark() output aligned with Vocs' theme toggle. */
35
+ :root[data-vocs-theme="light"] {
36
+ --lightningcss-light: initial;
37
+ --lightningcss-dark: ;
38
+ color-scheme: light;
39
+ }
40
+
41
+ :root[data-vocs-theme="dark"] {
42
+ --lightningcss-light: ;
43
+ --lightningcss-dark: initial;
44
+ color-scheme: dark;
45
+ }
46
+
34
47
  html {
35
48
  scroll-padding-top: calc(var(--vocs-spacing-topNav) + var(--vocs-spacing-banner) + 1rem);
36
49
  }
@@ -2,68 +2,140 @@ import * as Handler from '../../../../../server/handlers.js'
2
2
 
3
3
  const colors = {
4
4
  background: '#161616',
5
+ pattern: '#202020',
5
6
  text: '#ffffff',
6
7
  textMuted: 'rgba(255, 255, 255, 0.6)',
7
8
  }
8
9
 
10
+ const dimensions = {
11
+ height: 630,
12
+ width: 1200,
13
+ }
14
+
15
+ const patternStep = 56
16
+ const diagonalOffsets = Array.from(
17
+ { length: Math.ceil((dimensions.width + dimensions.height * 2) / patternStep) },
18
+ (_, index) => index * patternStep - dimensions.height,
19
+ )
20
+ const reverseDiagonalOffsets = Array.from(
21
+ { length: Math.ceil((dimensions.width + dimensions.height * 2) / patternStep) },
22
+ (_, index) => index * patternStep,
23
+ )
24
+
9
25
  export default function handler(request: Request) {
10
- return Handler.og(({ title, description, logo }) => (
11
- <div
12
- style={{
13
- display: 'flex',
14
- flexDirection: 'column',
15
- alignItems: 'flex-start',
16
- justifyContent: 'center',
17
- width: '100%',
18
- height: '100%',
19
- padding: 80,
20
- backgroundColor: colors.background,
21
- color: colors.text,
22
- }}
23
- >
24
- {logo && (
25
- <img
26
- alt=""
27
- src={logo}
28
- style={{
29
- height: 48,
30
- position: 'absolute',
31
- right: 40,
32
- bottom: 40,
33
- }}
34
- />
35
- )}
26
+ return Handler.og(({ title, description, logo }) => {
27
+ const titleLines = title.split('\n')
36
28
 
29
+ return (
37
30
  <div
38
31
  style={{
39
32
  display: 'flex',
40
33
  flexDirection: 'column',
41
- gap: 12,
34
+ alignItems: 'flex-start',
35
+ justifyContent: 'center',
36
+ position: 'relative',
37
+ width: '100%',
38
+ height: '100%',
39
+ overflow: 'hidden',
40
+ backgroundColor: colors.background,
41
+ color: colors.text,
42
42
  }}
43
43
  >
44
44
  <div
45
45
  style={{
46
- fontSize: title.length < 15 ? 80 : 64,
47
- fontWeight: 700,
48
- lineHeight: 1.1,
49
- color: colors.text,
46
+ position: 'absolute',
47
+ top: 0,
48
+ right: 0,
49
+ bottom: 0,
50
+ left: 0,
50
51
  }}
51
52
  >
52
- {title}
53
+ <svg
54
+ aria-hidden
55
+ width={dimensions.width}
56
+ height={dimensions.height}
57
+ viewBox={`0 0 ${dimensions.width} ${dimensions.height}`}
58
+ fill="none"
59
+ >
60
+ <title>Background pattern</title>
61
+ {diagonalOffsets.map((offset) => (
62
+ <line
63
+ key={`diagonal-${offset}`}
64
+ x1={offset}
65
+ y1={0}
66
+ x2={offset + dimensions.height}
67
+ y2={dimensions.height}
68
+ stroke={colors.pattern}
69
+ strokeWidth={1.5}
70
+ />
71
+ ))}
72
+ {reverseDiagonalOffsets.map((offset) => (
73
+ <line
74
+ key={`reverse-diagonal-${offset}`}
75
+ x1={offset}
76
+ y1={0}
77
+ x2={offset - dimensions.height}
78
+ y2={dimensions.height}
79
+ stroke={colors.pattern}
80
+ strokeWidth={1.5}
81
+ />
82
+ ))}
83
+ </svg>
53
84
  </div>
54
85
 
55
- {description && (
86
+ {logo && (
87
+ <img
88
+ alt=""
89
+ src={logo}
90
+ style={{
91
+ height: 48,
92
+ position: 'absolute',
93
+ right: 40,
94
+ bottom: 40,
95
+ }}
96
+ />
97
+ )}
98
+
99
+ <div
100
+ style={{
101
+ display: 'flex',
102
+ flexDirection: 'column',
103
+ gap: 12,
104
+ position: 'relative',
105
+ justifyContent: 'center',
106
+ width: '100%',
107
+ height: '100%',
108
+ padding: 80,
109
+ }}
110
+ >
56
111
  <div
57
112
  style={{
58
- fontSize: 28,
59
- color: colors.textMuted,
60
- maxWidth: 800,
113
+ display: 'flex',
114
+ flexDirection: 'column',
115
+ fontSize: title.length < 15 ? 80 : 64,
116
+ fontWeight: 700,
117
+ lineHeight: 1.1,
118
+ color: colors.text,
61
119
  }}
62
120
  >
63
- {description}
121
+ {titleLines.map((line) => (
122
+ <div key={line}>{line}</div>
123
+ ))}
64
124
  </div>
65
- )}
125
+
126
+ {description && (
127
+ <div
128
+ style={{
129
+ fontSize: 28,
130
+ color: colors.textMuted,
131
+ maxWidth: 800,
132
+ }}
133
+ >
134
+ {description}
135
+ </div>
136
+ )}
137
+ </div>
66
138
  </div>
67
- </div>
68
- )).fetch(request)
139
+ )
140
+ }).fetch(request)
69
141
  }