@vesk/runtime 0.2.10 → 0.2.11
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/hmr-client.d.ts +323 -0
- package/dist/hmr-client.d.ts.map +1 -1
- package/dist/hmr-client.js +3869 -197
- package/dist/md.d.ts +4 -2
- package/dist/md.d.ts.map +1 -1
- package/dist/md.js +53 -23
- package/dist/router.d.ts.map +1 -1
- package/dist/router.js +7 -3
- package/package.json +2 -2
package/dist/md.d.ts
CHANGED
|
@@ -55,7 +55,7 @@ export interface MdHtmlWarning {
|
|
|
55
55
|
/** Short sample of the source snippet (bounded). */
|
|
56
56
|
sample: string;
|
|
57
57
|
}
|
|
58
|
-
export declare const MD_BASE_CSS = "\n.vesk-md { color:
|
|
58
|
+
export declare const MD_BASE_CSS = "\n.vesk-md { color: inherit; font-size: 16px; line-height: 1.7; word-wrap: break-word; }\n.vesk-md h1,.vesk-md h2,.vesk-md h3,.vesk-md h4,.vesk-md h5,.vesk-md h6 { margin: 1.4em 0 .6em; font-weight: 650; line-height: 1.25; }\n.vesk-md h1 { font-size: 2em; }\n.vesk-md h2 { font-size: 1.5em; }\n.vesk-md h3 { font-size: 1.25em; } .vesk-md h4 { font-size: 1em; }\n.vesk-md p { margin: .8em 0; }\n.vesk-md a { color: color-mix(in srgb, currentColor 50%, #0969da); text-decoration: none; } .vesk-md a:hover { text-decoration: underline; }\n.vesk-md img { max-width: 100%; border-radius: 6px; }\n.vesk-md hr { border: 0; height: 1px; background: color-mix(in srgb, currentColor 18%, transparent); margin: 1.6em 0; }\n.vesk-md blockquote { margin: .8em 0; padding: .2em 1em; color: color-mix(in srgb, currentColor 62%, transparent); border-left: .25em solid color-mix(in srgb, currentColor 18%, transparent); }\n.vesk-md ul,.vesk-md ol { margin: .8em 0; padding-left: 2em; }\n.vesk-md ul { list-style: disc; } .vesk-md ul ul { list-style: circle; } .vesk-md ul ul ul { list-style: square; }\n.vesk-md ol { list-style: decimal; } .vesk-md ol ol { list-style: lower-alpha; }\n.vesk-md li { margin: .25em 0; }\n.vesk-md li.md-task { list-style: none; margin-left: -1.4em; display: flex; gap: .5em; align-items: baseline; }\n.vesk-md code:not(pre code) { background: color-mix(in srgb, currentColor 12%, transparent); padding: .15em .35em; border-radius: 5px; font-family: ui-monospace,SFMono-Regular,Menlo,Consolas,monospace; font-size: 85%; }\n.vesk-md .md-table-wrap { overflow-x: auto; margin: .8em 0; }\n.vesk-md table.md-table { border-collapse: collapse; width: max-content; max-width: 100%; font-size: .95em; }\n.vesk-md .md-table th,.vesk-md .md-table td { border: 1px solid color-mix(in srgb, currentColor 18%, transparent); padding: 6px 13px; }\n.vesk-md .md-table th { background: color-mix(in srgb, currentColor 8%, transparent); font-weight: 650; }\n.vesk-md .md-table tr:nth-child(2n) td { background: color-mix(in srgb, currentColor 5%, transparent); }\n.vesk-md .md-code { --md-code-bg: color-mix(in srgb, currentColor 6%, transparent); margin: 1em 0; border-radius: 8px; overflow: hidden; background: var(--md-code-bg); border: 1px solid color-mix(in srgb, currentColor 15%, transparent); }\n.vesk-md .md-code-bar { display: flex; justify-content: space-between; align-items: center; padding: 6px 12px; background: var(--md-code-bg); border-bottom: 1px solid color-mix(in srgb, currentColor 15%, transparent); }\n.vesk-md .md-code-lang { font-family: ui-monospace,monospace; font-size: 11px; letter-spacing: .04em; text-transform: uppercase; color: color-mix(in srgb, currentColor 60%, transparent); }\n.vesk-md .md-copy { all: unset; cursor: pointer; font: 11px ui-monospace,monospace; color: color-mix(in srgb, currentColor 60%, transparent); padding: 2px 8px; border-radius: 6px; }\n.vesk-md .md-copy:hover { color: inherit; background: color-mix(in srgb, currentColor 10%, transparent); }\n.vesk-md .md-copy.md-copied { color: color-mix(in srgb, currentColor 70%, transparent); }\n.vesk-md .md-code pre { margin: 0; overflow-x: auto; padding: 14px 16px; }\n.vesk-md .md-code code { font-family: ui-monospace,SFMono-Regular,Menlo,Consolas,monospace; font-size: 13.5px; line-height: 1.55; color: var(--md-code-fg,inherit); background: none; padding: 0; }\n.vesk-md code[md-lines] { counter-reset: ln; display: block; }\n.vesk-md code[md-lines] .tok-line { display: block; counter-increment: ln; padding-left: 3.2em; position: relative; }\n.vesk-md code[md-lines] .tok-line::before { content: counter(ln); position: absolute; left: 0; width: 2.4em; text-align: right; color: color-mix(in srgb, currentColor 50%, transparent); user-select: none; }\n.tok-kw { color: color-mix(in srgb, currentColor 85%, transparent); } .tok-lit { color: color-mix(in srgb, currentColor 80%, transparent); } .tok-str { color: color-mix(in srgb, currentColor 72%, transparent); }\n.tok-num { color: color-mix(in srgb, currentColor 80%, transparent); } .tok-com { color: color-mix(in srgb, currentColor 52%, transparent); font-style: italic; }\n.tok-fn { color: color-mix(in srgb, currentColor 72%, transparent); } .tok-attr { color: color-mix(in srgb, currentColor 72%, transparent); } .tok-prop { color: color-mix(in srgb, currentColor 72%, transparent); }\n.tok-sel { color: color-mix(in srgb, currentColor 74%, transparent); } .tok-add { color: color-mix(in srgb, currentColor 86%, transparent); background: color-mix(in srgb, currentColor 10%, transparent); display: inline-block; width: 100%; }\n.tok-del { color: color-mix(in srgb, currentColor 86%, transparent); background: color-mix(in srgb, currentColor 10%, transparent); display: inline-block; width: 100%; }\n.vesk-md-light { color: #24292f; --md-code-bg: #f6f8fa; --md-code-fg: #1f2328; --md-link: #0969da; }\n.vesk-md-light a { color: #0969da; }\n.vesk-md-light hr { background: #d0d7de; }\n.vesk-md-light blockquote { color: #57606a; border-left-color: #d0d7de; }\n.vesk-md-light code:not(pre code) { background: rgba(175,184,193,.2); }\n.vesk-md-light .md-table th,.vesk-md-light .md-table td { border-color: #d0d7de; }\n.vesk-md-light .md-table th { background: #f6f8fa; }\n.vesk-md-light .md-table tr:nth-child(2n) td { background: #f6f8fa80; }\n.vesk-md-light .md-code { border-color: #d1d9e0; }\n.vesk-md-light .md-code-bar { border-bottom-color: #d1d9e0; }\n.vesk-md-light .md-code-lang { color: #59636e; }\n.vesk-md-light .md-copy { color: #59636e; }\n.vesk-md-light .md-copy:hover { color: #1f2328; background: #eaeef2; }\n.vesk-md-light .md-copy.md-copied { color: #1a7f37; }\n.vesk-md-light code[md-lines] .tok-line::before { color: #8c959f; }\n.vesk-md-light .tok-kw { color: #cf222e; } .vesk-md-light .tok-lit { color: #0550ae; } .vesk-md-light .tok-str { color: #0a3069; }\n.vesk-md-light .tok-num { color: #0550ae; } .vesk-md-light .tok-com { color: #59636e; font-style: italic; }\n.vesk-md-light .tok-fn { color: #8250df; } .vesk-md-light .tok-attr { color: #0550ae; } .vesk-md-light .tok-prop { color: #0550ae; }\n.vesk-md-light .tok-sel { color: #116329; } .vesk-md-light .tok-add { color: #116329; background: #dafbe1; }\n.vesk-md-light .tok-del { color: #cf222e; background: #ffebe9; }\n.vesk-md-dark { --md-code-bg: #0d1117; --md-code-fg: #c9d1d9; color: #f0f6fc; --md-link: #4493f8; }\n.vesk-md-dark a { color: #4493f8; }\n.vesk-md-dark hr { background: #30363d; }\n.vesk-md-dark blockquote { color: #8b949e; border-left-color: #30363d; }\n.vesk-md-dark code:not(pre code) { background: rgba(110,118,129,.4); }\n.vesk-md-dark .md-table th,.vesk-md-dark .md-table td { border-color: #30363d; }\n.vesk-md-dark .md-table th { background: #161b22; }\n.vesk-md-dark .md-table tr:nth-child(2n) td { background: #161b2280; }\n.vesk-md-dark .md-code { border-color: #30363d; }\n.vesk-md-dark .md-code-bar { border-bottom-color: #30363d; }\n.vesk-md-dark .md-code-lang { color: #8b949e; }\n.vesk-md-dark .md-copy { color: #8b949e; }\n.vesk-md-dark .md-copy:hover { color: #c9d1d9; background: #30363d; }\n.vesk-md-dark .md-copy.md-copied { color: #3fb950; }\n.vesk-md-dark code[md-lines] .tok-line::before { color: #484f58; }\n.vesk-md-dark .tok-kw { color: #ff7b72; } .vesk-md-dark .tok-lit { color: #79c0ff; }\n.vesk-md-dark .tok-str { color: #a5d6ff; } .vesk-md-dark .tok-num { color: #f2cc60; }\n.vesk-md-dark .tok-com { color: #8b949e; font-style: italic; }\n.vesk-md-dark .tok-fn { color: #d2a8ff; } .vesk-md-dark .tok-attr { color: #79c0ff; }\n.vesk-md-dark .tok-prop { color: #79c0ff; } .vesk-md-dark .tok-sel { color: #7ee787; }\n.vesk-md-dark .tok-add { color: #aff5b4; background: rgba(46,160,67,.15); }\n.vesk-md-dark .tok-del { color: #ffdcd7; background: rgba(248,81,73,.15); }\n";
|
|
59
59
|
/**
|
|
60
60
|
* Renders markdown to HTML with default (legacy) options — output shape is
|
|
61
61
|
* stable for existing consumers. Pass options for advanced features:
|
|
@@ -95,7 +95,9 @@ export interface MdProps {
|
|
|
95
95
|
codeBg?: string;
|
|
96
96
|
/** Default code text color. Fence-level fg= wins. */
|
|
97
97
|
codeFg?: string;
|
|
98
|
-
/** Code theme preset: 'light'
|
|
98
|
+
/** Code theme preset: 'light' or 'dark'. When omitted, <Md> is
|
|
99
|
+
* backgroundless and inherits the page's background/theme (transparent
|
|
100
|
+
* wrapper, neutral currentColor-based surfaces). Per-fence bg=/fg= still win. */
|
|
99
101
|
theme?: 'light' | 'dark';
|
|
100
102
|
class?: string;
|
|
101
103
|
className?: string;
|
package/dist/md.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"md.d.ts","sourceRoot":"","sources":["../src/md.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAwC/D,wBAAgB,UAAU,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAW5C;AAwcD,4EAA4E;AAC5E,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAgB/C;AAID,UAAU,MAAM;IACf,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;CACd;AA6ND;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CA6HhE;AAyWD,MAAM,WAAW,aAAa;IAC7B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,IAAI,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC3B,QAAQ,CAAC,EAAE,UAAU,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IACrB,eAAe,CAAC,EAAE,aAAa,EAAE,CAAC;CAClC;AAkZD,MAAM,WAAW,eAAe;IAC/B,wEAAwE;IACxE,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,uFAAuF;IACvF,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,uFAAuF;IACvF,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,0EAA0E;IAC1E,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,mDAAmD;IACnD,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,2DAA2D;IAC3D,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,iFAAiF;IACjF,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;4CACwC;IACxC,IAAI,CAAC,EAAE,UAAU,CAAC;IAClB,6EAA6E;IAC7E,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;CACrB;AAED,MAAM,MAAM,UAAU,GAAG,QAAQ,GAAG,OAAO,GAAG,WAAW,CAAC;AAE1D;;;;;GAKG;AACH,eAAO,MAAM,qBAAqB,UAIjC,CAAC;AAEF,yDAAyD;AACzD,MAAM,WAAW,aAAa;IAC7B,GAAG,EAAE,MAAM,CAAC;IACZ,oDAAoD;IACpD,MAAM,EAAE,MAAM,CAAC;CACf;AAgOD,eAAO,MAAM,WAAW,
|
|
1
|
+
{"version":3,"file":"md.d.ts","sourceRoot":"","sources":["../src/md.ts"],"names":[],"mappings":"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"}
|
package/dist/md.js
CHANGED
|
@@ -2023,44 +2023,72 @@ function renderBlocks(blocks, ctx) {
|
|
|
2023
2023
|
}
|
|
2024
2024
|
// ── Base stylesheet (opt-in via <Md css>) ────────────────────
|
|
2025
2025
|
export const MD_BASE_CSS = `
|
|
2026
|
-
.vesk-md { color:
|
|
2026
|
+
.vesk-md { color: inherit; font-size: 16px; line-height: 1.7; word-wrap: break-word; }
|
|
2027
2027
|
.vesk-md h1,.vesk-md h2,.vesk-md h3,.vesk-md h4,.vesk-md h5,.vesk-md h6 { margin: 1.4em 0 .6em; font-weight: 650; line-height: 1.25; }
|
|
2028
2028
|
.vesk-md h1 { font-size: 2em; }
|
|
2029
2029
|
.vesk-md h2 { font-size: 1.5em; }
|
|
2030
2030
|
.vesk-md h3 { font-size: 1.25em; } .vesk-md h4 { font-size: 1em; }
|
|
2031
2031
|
.vesk-md p { margin: .8em 0; }
|
|
2032
|
-
.vesk-md a { color: #0969da; text-decoration: none; } .vesk-md a:hover { text-decoration: underline; }
|
|
2032
|
+
.vesk-md a { color: color-mix(in srgb, currentColor 50%, #0969da); text-decoration: none; } .vesk-md a:hover { text-decoration: underline; }
|
|
2033
2033
|
.vesk-md img { max-width: 100%; border-radius: 6px; }
|
|
2034
|
-
.vesk-md hr { border: 0; height: 1px; background:
|
|
2035
|
-
.vesk-md blockquote { margin: .8em 0; padding: .2em 1em; color:
|
|
2034
|
+
.vesk-md hr { border: 0; height: 1px; background: color-mix(in srgb, currentColor 18%, transparent); margin: 1.6em 0; }
|
|
2035
|
+
.vesk-md blockquote { margin: .8em 0; padding: .2em 1em; color: color-mix(in srgb, currentColor 62%, transparent); border-left: .25em solid color-mix(in srgb, currentColor 18%, transparent); }
|
|
2036
2036
|
.vesk-md ul,.vesk-md ol { margin: .8em 0; padding-left: 2em; }
|
|
2037
2037
|
.vesk-md ul { list-style: disc; } .vesk-md ul ul { list-style: circle; } .vesk-md ul ul ul { list-style: square; }
|
|
2038
2038
|
.vesk-md ol { list-style: decimal; } .vesk-md ol ol { list-style: lower-alpha; }
|
|
2039
2039
|
.vesk-md li { margin: .25em 0; }
|
|
2040
2040
|
.vesk-md li.md-task { list-style: none; margin-left: -1.4em; display: flex; gap: .5em; align-items: baseline; }
|
|
2041
|
-
.vesk-md code:not(pre code) { background:
|
|
2041
|
+
.vesk-md code:not(pre code) { background: color-mix(in srgb, currentColor 12%, transparent); padding: .15em .35em; border-radius: 5px; font-family: ui-monospace,SFMono-Regular,Menlo,Consolas,monospace; font-size: 85%; }
|
|
2042
2042
|
.vesk-md .md-table-wrap { overflow-x: auto; margin: .8em 0; }
|
|
2043
2043
|
.vesk-md table.md-table { border-collapse: collapse; width: max-content; max-width: 100%; font-size: .95em; }
|
|
2044
|
-
.vesk-md .md-table th,.vesk-md .md-table td { border: 1px solid
|
|
2045
|
-
.vesk-md .md-table th { background:
|
|
2046
|
-
.vesk-md .md-table tr:nth-child(2n) td { background:
|
|
2047
|
-
.vesk-md .md-code { --md-code-bg:
|
|
2048
|
-
.vesk-md .md-code-bar { display: flex; justify-content: space-between; align-items: center; padding: 6px 12px; background: var(--md-code-bg); border-bottom: 1px solid
|
|
2049
|
-
.vesk-md .md-code-lang { font-family: ui-monospace,monospace; font-size: 11px; letter-spacing: .04em; text-transform: uppercase; color:
|
|
2050
|
-
.vesk-md .md-copy { all: unset; cursor: pointer; font: 11px ui-monospace,monospace; color:
|
|
2051
|
-
.vesk-md .md-copy:hover { color:
|
|
2052
|
-
.vesk-md .md-copy.md-copied { color:
|
|
2044
|
+
.vesk-md .md-table th,.vesk-md .md-table td { border: 1px solid color-mix(in srgb, currentColor 18%, transparent); padding: 6px 13px; }
|
|
2045
|
+
.vesk-md .md-table th { background: color-mix(in srgb, currentColor 8%, transparent); font-weight: 650; }
|
|
2046
|
+
.vesk-md .md-table tr:nth-child(2n) td { background: color-mix(in srgb, currentColor 5%, transparent); }
|
|
2047
|
+
.vesk-md .md-code { --md-code-bg: color-mix(in srgb, currentColor 6%, transparent); margin: 1em 0; border-radius: 8px; overflow: hidden; background: var(--md-code-bg); border: 1px solid color-mix(in srgb, currentColor 15%, transparent); }
|
|
2048
|
+
.vesk-md .md-code-bar { display: flex; justify-content: space-between; align-items: center; padding: 6px 12px; background: var(--md-code-bg); border-bottom: 1px solid color-mix(in srgb, currentColor 15%, transparent); }
|
|
2049
|
+
.vesk-md .md-code-lang { font-family: ui-monospace,monospace; font-size: 11px; letter-spacing: .04em; text-transform: uppercase; color: color-mix(in srgb, currentColor 60%, transparent); }
|
|
2050
|
+
.vesk-md .md-copy { all: unset; cursor: pointer; font: 11px ui-monospace,monospace; color: color-mix(in srgb, currentColor 60%, transparent); padding: 2px 8px; border-radius: 6px; }
|
|
2051
|
+
.vesk-md .md-copy:hover { color: inherit; background: color-mix(in srgb, currentColor 10%, transparent); }
|
|
2052
|
+
.vesk-md .md-copy.md-copied { color: color-mix(in srgb, currentColor 70%, transparent); }
|
|
2053
2053
|
.vesk-md .md-code pre { margin: 0; overflow-x: auto; padding: 14px 16px; }
|
|
2054
|
-
.vesk-md .md-code code { font-family: ui-monospace,SFMono-Regular,Menlo,Consolas,monospace; font-size: 13.5px; line-height: 1.55; color: var(--md-code-fg
|
|
2054
|
+
.vesk-md .md-code code { font-family: ui-monospace,SFMono-Regular,Menlo,Consolas,monospace; font-size: 13.5px; line-height: 1.55; color: var(--md-code-fg,inherit); background: none; padding: 0; }
|
|
2055
2055
|
.vesk-md code[md-lines] { counter-reset: ln; display: block; }
|
|
2056
2056
|
.vesk-md code[md-lines] .tok-line { display: block; counter-increment: ln; padding-left: 3.2em; position: relative; }
|
|
2057
|
-
.vesk-md code[md-lines] .tok-line::before { content: counter(ln); position: absolute; left: 0; width: 2.4em; text-align: right; color:
|
|
2058
|
-
.tok-kw { color:
|
|
2059
|
-
.tok-num { color:
|
|
2060
|
-
.tok-fn { color:
|
|
2061
|
-
.tok-sel { color:
|
|
2062
|
-
.tok-del { color:
|
|
2063
|
-
.vesk-md-
|
|
2057
|
+
.vesk-md code[md-lines] .tok-line::before { content: counter(ln); position: absolute; left: 0; width: 2.4em; text-align: right; color: color-mix(in srgb, currentColor 50%, transparent); user-select: none; }
|
|
2058
|
+
.tok-kw { color: color-mix(in srgb, currentColor 85%, transparent); } .tok-lit { color: color-mix(in srgb, currentColor 80%, transparent); } .tok-str { color: color-mix(in srgb, currentColor 72%, transparent); }
|
|
2059
|
+
.tok-num { color: color-mix(in srgb, currentColor 80%, transparent); } .tok-com { color: color-mix(in srgb, currentColor 52%, transparent); font-style: italic; }
|
|
2060
|
+
.tok-fn { color: color-mix(in srgb, currentColor 72%, transparent); } .tok-attr { color: color-mix(in srgb, currentColor 72%, transparent); } .tok-prop { color: color-mix(in srgb, currentColor 72%, transparent); }
|
|
2061
|
+
.tok-sel { color: color-mix(in srgb, currentColor 74%, transparent); } .tok-add { color: color-mix(in srgb, currentColor 86%, transparent); background: color-mix(in srgb, currentColor 10%, transparent); display: inline-block; width: 100%; }
|
|
2062
|
+
.tok-del { color: color-mix(in srgb, currentColor 86%, transparent); background: color-mix(in srgb, currentColor 10%, transparent); display: inline-block; width: 100%; }
|
|
2063
|
+
.vesk-md-light { color: #24292f; --md-code-bg: #f6f8fa; --md-code-fg: #1f2328; --md-link: #0969da; }
|
|
2064
|
+
.vesk-md-light a { color: #0969da; }
|
|
2065
|
+
.vesk-md-light hr { background: #d0d7de; }
|
|
2066
|
+
.vesk-md-light blockquote { color: #57606a; border-left-color: #d0d7de; }
|
|
2067
|
+
.vesk-md-light code:not(pre code) { background: rgba(175,184,193,.2); }
|
|
2068
|
+
.vesk-md-light .md-table th,.vesk-md-light .md-table td { border-color: #d0d7de; }
|
|
2069
|
+
.vesk-md-light .md-table th { background: #f6f8fa; }
|
|
2070
|
+
.vesk-md-light .md-table tr:nth-child(2n) td { background: #f6f8fa80; }
|
|
2071
|
+
.vesk-md-light .md-code { border-color: #d1d9e0; }
|
|
2072
|
+
.vesk-md-light .md-code-bar { border-bottom-color: #d1d9e0; }
|
|
2073
|
+
.vesk-md-light .md-code-lang { color: #59636e; }
|
|
2074
|
+
.vesk-md-light .md-copy { color: #59636e; }
|
|
2075
|
+
.vesk-md-light .md-copy:hover { color: #1f2328; background: #eaeef2; }
|
|
2076
|
+
.vesk-md-light .md-copy.md-copied { color: #1a7f37; }
|
|
2077
|
+
.vesk-md-light code[md-lines] .tok-line::before { color: #8c959f; }
|
|
2078
|
+
.vesk-md-light .tok-kw { color: #cf222e; } .vesk-md-light .tok-lit { color: #0550ae; } .vesk-md-light .tok-str { color: #0a3069; }
|
|
2079
|
+
.vesk-md-light .tok-num { color: #0550ae; } .vesk-md-light .tok-com { color: #59636e; font-style: italic; }
|
|
2080
|
+
.vesk-md-light .tok-fn { color: #8250df; } .vesk-md-light .tok-attr { color: #0550ae; } .vesk-md-light .tok-prop { color: #0550ae; }
|
|
2081
|
+
.vesk-md-light .tok-sel { color: #116329; } .vesk-md-light .tok-add { color: #116329; background: #dafbe1; }
|
|
2082
|
+
.vesk-md-light .tok-del { color: #cf222e; background: #ffebe9; }
|
|
2083
|
+
.vesk-md-dark { --md-code-bg: #0d1117; --md-code-fg: #c9d1d9; color: #f0f6fc; --md-link: #4493f8; }
|
|
2084
|
+
.vesk-md-dark a { color: #4493f8; }
|
|
2085
|
+
.vesk-md-dark hr { background: #30363d; }
|
|
2086
|
+
.vesk-md-dark blockquote { color: #8b949e; border-left-color: #30363d; }
|
|
2087
|
+
.vesk-md-dark code:not(pre code) { background: rgba(110,118,129,.4); }
|
|
2088
|
+
.vesk-md-dark .md-table th,.vesk-md-dark .md-table td { border-color: #30363d; }
|
|
2089
|
+
.vesk-md-dark .md-table th { background: #161b22; }
|
|
2090
|
+
.vesk-md-dark .md-table tr:nth-child(2n) td { background: #161b2280; }
|
|
2091
|
+
.vesk-md-dark .md-code { border-color: #30363d; }
|
|
2064
2092
|
.vesk-md-dark .md-code-bar { border-bottom-color: #30363d; }
|
|
2065
2093
|
.vesk-md-dark .md-code-lang { color: #8b949e; }
|
|
2066
2094
|
.vesk-md-dark .md-copy { color: #8b949e; }
|
|
@@ -2351,7 +2379,9 @@ export function Md(props, _registry, hydrate) {
|
|
|
2351
2379
|
const content = String(unwrapMaybeCell(contentCell) ?? '');
|
|
2352
2380
|
const html = buildHtml(resolveMdSource(content), props);
|
|
2353
2381
|
const classNameRaw = props.className != null ? String(props.className) : props.class != null ? String(props.class) : '';
|
|
2354
|
-
|
|
2382
|
+
// No theme → inherit/transparent (no theme class). Explicit theme applies
|
|
2383
|
+
// the matching preset: 'light' → .vesk-md-light, 'dark' → .vesk-md-dark.
|
|
2384
|
+
const themeClass = props.theme === 'dark' ? ' vesk-md-dark' : props.theme === 'light' ? ' vesk-md-light' : '';
|
|
2355
2385
|
const className = `vesk-md${themeClass}${classNameRaw ? ' ' + classNameRaw : ''}`;
|
|
2356
2386
|
const style = props.style != null ? String(props.style) : '';
|
|
2357
2387
|
// Component-level code defaults; fence-level bg=/fg= emit the same
|
package/dist/router.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"router.d.ts","sourceRoot":"","sources":["../src/router.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"router.d.ts","sourceRoot":"","sources":["../src/router.ts"],"names":[],"mappings":"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"}
|
package/dist/router.js
CHANGED
|
@@ -734,7 +734,9 @@ function renderMatch(router, match, container, navToken) {
|
|
|
734
734
|
rootDom = runInBlockWindow(() => renderLayoutChain(0));
|
|
735
735
|
}
|
|
736
736
|
catch (error) {
|
|
737
|
-
if (error
|
|
737
|
+
if (error instanceof NotFoundError) {
|
|
738
|
+
if (typeof console !== 'undefined')
|
|
739
|
+
console.error('[vesk-debug] NotFoundError in renderLayoutChain:', error);
|
|
738
740
|
return renderNotFound(router, match, container);
|
|
739
741
|
}
|
|
740
742
|
let errDom;
|
|
@@ -753,7 +755,7 @@ function renderMatch(router, match, container, navToken) {
|
|
|
753
755
|
}
|
|
754
756
|
if (rootDom && typeof rootDom.then === 'function') {
|
|
755
757
|
return rootDom.then((resolved) => { mountDom(resolved); }, (error) => {
|
|
756
|
-
if (error
|
|
758
|
+
if (error instanceof NotFoundError) {
|
|
757
759
|
return renderNotFound(router, match, container);
|
|
758
760
|
}
|
|
759
761
|
return Promise.resolve(renderErrorInLayout(error)).then(mountDom, (e) => { mountStandaloneError(e); });
|
|
@@ -983,7 +985,9 @@ async function hydrateInitial(router, match, container, strategy) {
|
|
|
983
985
|
// Hydration failed — most often the page component throwing on the
|
|
984
986
|
// client after a clean SSR. Re-render through renderMatch so the error
|
|
985
987
|
// component replaces just the page slot and the layout/nav survives.
|
|
986
|
-
if (error
|
|
988
|
+
if (error instanceof NotFoundError) {
|
|
989
|
+
if (typeof console !== 'undefined')
|
|
990
|
+
console.error('[vesk-debug] NotFoundError during hydration:', error);
|
|
987
991
|
await renderNotFound(router, match, container);
|
|
988
992
|
return;
|
|
989
993
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@vesk/runtime",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.11",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "Vesk runtime — reactivity, blocks, DOM operations, hydration",
|
|
6
6
|
"main": "./dist/index-client.js",
|
|
@@ -26,7 +26,7 @@
|
|
|
26
26
|
"./package.json": "./package.json"
|
|
27
27
|
},
|
|
28
28
|
"dependencies": {
|
|
29
|
-
"@vesk/compiler": "^0.2.
|
|
29
|
+
"@vesk/compiler": "^0.2.11"
|
|
30
30
|
},
|
|
31
31
|
"scripts": {
|
|
32
32
|
"typecheck": "tsc --noEmit",
|