@kanzo-tech/ui 0.13.1 → 0.15.0
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/analytics.d.ts +1 -2
- package/dist/analytics.d.ts.map +1 -1
- package/dist/analytics.js +54 -56
- package/dist/composites/CodeEditor.d.ts +1 -1
- package/dist/composites/CodeEditor.d.ts.map +1 -1
- package/dist/composites/CodeEditor.js +79 -78
- package/dist/composites/CodeEditor.js.map +1 -1
- package/dist/guard-corpus.d.ts +21 -5
- package/dist/guard-corpus.d.ts.map +1 -1
- package/dist/simples/button.js +21 -21
- package/dist/simples/button.js.map +1 -1
- package/dist/simples/command.js +1 -1
- package/dist/simples/command.js.map +1 -1
- package/dist/simples/dialog.js +1 -1
- package/dist/simples/dialog.js.map +1 -1
- package/dist/simples/hover-card.js +4 -4
- package/dist/simples/hover-card.js.map +1 -1
- package/dist/simples/input-group.js +1 -1
- package/dist/simples/input-group.js.map +1 -1
- package/dist/simples/menu.js +5 -5
- package/dist/simples/menu.js.map +1 -1
- package/dist/simples/popover.js +1 -1
- package/dist/simples/popover.js.map +1 -1
- package/package.json +3 -3
- package/src/tailwind.css +1 -1
package/dist/analytics.d.ts
CHANGED
|
@@ -31,6 +31,5 @@ export { asc, desc } from '@kanzo-tech/mosaic';
|
|
|
31
31
|
export { axisX, axisY, axisFx, axisFy, gridFx, gridFy } from '@uwdata/vgplot';
|
|
32
32
|
export { MosaicClient, makeClient, clausePoint, clausePoints, clauseInterval, clauseIntervals, clauseMatch, } from '@kanzo-tech/mosaic';
|
|
33
33
|
export type { SelectionClause, FilterExpr } from '@kanzo-tech/mosaic';
|
|
34
|
-
export { column,
|
|
35
|
-
export { IdSetClient, type IdSetClientOptions } from '@kanzo-tech/mosaic';
|
|
34
|
+
export { column, numbers } from '@kanzo-tech/mosaic';
|
|
36
35
|
//# sourceMappingURL=analytics.d.ts.map
|
package/dist/analytics.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"analytics.d.ts","sourceRoot":"","sources":["../src/analytics.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"analytics.d.ts","sourceRoot":"","sources":["../src/analytics.ts"],"names":[],"mappings":"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"}
|
package/dist/analytics.js
CHANGED
|
@@ -1,19 +1,19 @@
|
|
|
1
1
|
import { MosaicProvider as a, useCrossfilter as e, useMosaic as C, useSelected as h } from "./charts/mosaic-provider.js";
|
|
2
2
|
import { ChartRoot as i, useChartContext as l, useChartContextOptional as s } from "./charts/chart-root.js";
|
|
3
3
|
import { chartSeriesColor as c } from "./charts/chart-config.js";
|
|
4
|
-
import { ChartArea as
|
|
5
|
-
import { ChartBrushX as gr, ChartBrushXY as
|
|
4
|
+
import { ChartArea as u, ChartAreaX as m, ChartAreaY as Y, ChartArrow as X, ChartBarX as d, ChartBarY as p, ChartCell as f, ChartCellX as g, ChartCellY as R, ChartCircle as S, ChartContour as D, ChartDelaunayLink as k, ChartDelaunayMesh as y, ChartDenseLine as T, ChartDensity as v, ChartDensityX as F, ChartDensityY as L, ChartDot as P, ChartDotX as I, ChartDotY as M, ChartErrorbarX as b, ChartErrorbarY as A, ChartFrame as H, ChartGeo as V, ChartGraticule as B, ChartGridX as G, ChartGridY as q, ChartHeatmap as E, ChartHexagon as N, ChartHexbin as O, ChartHexgrid as w, ChartHull as Q, ChartImage as W, ChartLine as j, ChartLineX as J, ChartLineY as Z, ChartLink as z, ChartRaster as K, ChartRasterTile as U, ChartRaw as _, ChartRect as $, ChartRectX as rr, ChartRectY as tr, ChartRegressionY as ar, ChartRuleX as er, ChartRuleY as Cr, ChartSphere as hr, ChartSpike as or, ChartText as ir, ChartTextX as lr, ChartTextY as sr, ChartTickX as nr, ChartTickY as cr, ChartVector as xr, ChartVectorX as ur, ChartVectorY as mr, ChartVoronoi as Yr, ChartVoronoiMesh as Xr, ChartWaffleX as dr, ChartWaffleY as pr } from "./charts/chart-marks.js";
|
|
5
|
+
import { ChartBrushX as gr, ChartBrushXY as Rr, ChartBrushY as Sr, ChartHighlight as Dr, ChartIntervalX as kr, ChartIntervalXY as yr, ChartIntervalY as Tr, ChartNearestX as vr, ChartNearestY as Fr, ChartPanZoom as Lr, ChartPickColor as Pr, ChartPickX as Ir, ChartPickY as Mr, ChartRegion as br, ChartToggleColor as Ar, ChartToggleX as Hr, ChartToggleY as Vr } from "./charts/chart-interactors.js";
|
|
6
6
|
import { ChartAxisX as Gr, ChartAxisY as qr, ChartFacetX as Er, ChartFacetY as Nr } from "./charts/chart-axes.js";
|
|
7
7
|
import { ChartFilter as wr, ChartSearch as Qr, ChartSlider as Wr, useMosaicInput as jr } from "./charts/chart-inputs.js";
|
|
8
8
|
import { ChartColorLegend as Zr, ChartLegend as zr } from "./charts/chart-legend.js";
|
|
9
9
|
import { ChartStat as Ur } from "./charts/chart-stat.js";
|
|
10
10
|
import { useChartQuery as $r } from "./charts/use-chart-query.js";
|
|
11
11
|
import { chartDescriptor as tt } from "./charts/chart-spec.js";
|
|
12
|
-
import { Coordinator as et,
|
|
13
|
-
import { avg as
|
|
14
|
-
import { Query as
|
|
12
|
+
import { Coordinator as et, MosaicClient as Ct, Selection as ht, asc as ot, clauseInterval as it, clauseIntervals as lt, clauseMatch as st, clausePoint as nt, clausePoints as ct, column as xt, desc as ut, engine as mt, loadCSV as Yt, loadExtension as Xt, loadJSON as dt, loadObjects as pt, loadParquet as ft, loadSpatial as gt, makeClient as Rt, numbers as St } from "@kanzo-tech/mosaic";
|
|
13
|
+
import { avg as kt, axisFx as yt, axisFy as Tt, axisX as vt, axisY as Ft, bin as Lt, count as Pt, gridFx as It, gridFy as Mt, max as bt, median as At, min as Ht, mode as Vt, quantile as Bt, sql as Gt, stddev as qt, sum as Et } from "@uwdata/vgplot";
|
|
14
|
+
import { Query as Ot } from "@uwdata/mosaic-sql";
|
|
15
15
|
export {
|
|
16
|
-
|
|
16
|
+
u as ChartArea,
|
|
17
17
|
m as ChartAreaX,
|
|
18
18
|
Y as ChartAreaY,
|
|
19
19
|
X as ChartArrow,
|
|
@@ -22,12 +22,12 @@ export {
|
|
|
22
22
|
d as ChartBarX,
|
|
23
23
|
p as ChartBarY,
|
|
24
24
|
gr as ChartBrushX,
|
|
25
|
-
|
|
26
|
-
|
|
25
|
+
Rr as ChartBrushXY,
|
|
26
|
+
Sr as ChartBrushY,
|
|
27
27
|
f as ChartCell,
|
|
28
28
|
g as ChartCellX,
|
|
29
|
-
|
|
30
|
-
|
|
29
|
+
R as ChartCellY,
|
|
30
|
+
S as ChartCircle,
|
|
31
31
|
Zr as ChartColorLegend,
|
|
32
32
|
D as ChartContour,
|
|
33
33
|
k as ChartDelaunayLink,
|
|
@@ -35,9 +35,9 @@ export {
|
|
|
35
35
|
T as ChartDenseLine,
|
|
36
36
|
v as ChartDensity,
|
|
37
37
|
F as ChartDensityX,
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
38
|
+
L as ChartDensityY,
|
|
39
|
+
P as ChartDot,
|
|
40
|
+
I as ChartDotX,
|
|
41
41
|
M as ChartDotY,
|
|
42
42
|
b as ChartErrorbarX,
|
|
43
43
|
A as ChartErrorbarY,
|
|
@@ -66,9 +66,9 @@ export {
|
|
|
66
66
|
z as ChartLink,
|
|
67
67
|
vr as ChartNearestX,
|
|
68
68
|
Fr as ChartNearestY,
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
69
|
+
Lr as ChartPanZoom,
|
|
70
|
+
Pr as ChartPickColor,
|
|
71
|
+
Ir as ChartPickX,
|
|
72
72
|
Mr as ChartPickY,
|
|
73
73
|
K as ChartRaster,
|
|
74
74
|
U as ChartRasterTile,
|
|
@@ -94,56 +94,54 @@ export {
|
|
|
94
94
|
Ar as ChartToggleColor,
|
|
95
95
|
Hr as ChartToggleX,
|
|
96
96
|
Vr as ChartToggleY,
|
|
97
|
-
|
|
98
|
-
|
|
97
|
+
xr as ChartVector,
|
|
98
|
+
ur as ChartVectorX,
|
|
99
99
|
mr as ChartVectorY,
|
|
100
100
|
Yr as ChartVoronoi,
|
|
101
101
|
Xr as ChartVoronoiMesh,
|
|
102
102
|
dr as ChartWaffleX,
|
|
103
103
|
pr as ChartWaffleY,
|
|
104
104
|
et as Coordinator,
|
|
105
|
-
Ct as
|
|
106
|
-
ht as MosaicClient,
|
|
105
|
+
Ct as MosaicClient,
|
|
107
106
|
a as MosaicProvider,
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
107
|
+
Ot as Query,
|
|
108
|
+
ht as Selection,
|
|
109
|
+
ot as asc,
|
|
110
|
+
kt as avg,
|
|
111
|
+
yt as axisFx,
|
|
112
|
+
Tt as axisFy,
|
|
113
|
+
vt as axisX,
|
|
114
|
+
Ft as axisY,
|
|
115
|
+
Lt as bin,
|
|
117
116
|
tt as chartDescriptor,
|
|
118
117
|
c as chartSeriesColor,
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
118
|
+
it as clauseInterval,
|
|
119
|
+
lt as clauseIntervals,
|
|
120
|
+
st as clauseMatch,
|
|
121
|
+
nt as clausePoint,
|
|
122
|
+
ct as clausePoints,
|
|
124
123
|
xt as column,
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
Rt as
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
Ot as sum,
|
|
124
|
+
Pt as count,
|
|
125
|
+
ut as desc,
|
|
126
|
+
mt as engine,
|
|
127
|
+
It as gridFx,
|
|
128
|
+
Mt as gridFy,
|
|
129
|
+
Yt as loadCSV,
|
|
130
|
+
Xt as loadExtension,
|
|
131
|
+
dt as loadJSON,
|
|
132
|
+
pt as loadObjects,
|
|
133
|
+
ft as loadParquet,
|
|
134
|
+
gt as loadSpatial,
|
|
135
|
+
Rt as makeClient,
|
|
136
|
+
bt as max,
|
|
137
|
+
At as median,
|
|
138
|
+
Ht as min,
|
|
139
|
+
Vt as mode,
|
|
140
|
+
St as numbers,
|
|
141
|
+
Bt as quantile,
|
|
142
|
+
Gt as sql,
|
|
143
|
+
qt as stddev,
|
|
144
|
+
Et as sum,
|
|
147
145
|
l as useChartContext,
|
|
148
146
|
s as useChartContextOptional,
|
|
149
147
|
$r as useChartQuery,
|
|
@@ -14,7 +14,7 @@ import { HighlightStyle } from '@codemirror/language';
|
|
|
14
14
|
* There were thirteen `--syntax-*` tokens; six of them were duplicating a tint the ramp
|
|
15
15
|
* already publishes.
|
|
16
16
|
*
|
|
17
|
-
* The seven that remain are
|
|
17
|
+
* The seven that remain are authored per theme and graded against the active line (`--muted`), so a
|
|
18
18
|
* palette finally repaints keywords: Dracula's pink, Nord's purple, Catppuccin's mauve. Every
|
|
19
19
|
* document used to declare Kanzo's.
|
|
20
20
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CodeEditor.d.ts","sourceRoot":"","sources":["../../src/composites/CodeEditor.tsx"],"names":[],"mappings":"AAOA,OAAO,EAAwC,KAAK,SAAS,EAAY,MAAM,mBAAmB,CAAC;AACnG,OAAO,EAGL,UAAU,EAaX,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EACL,cAAc,EAMf,MAAM,sBAAsB,CAAC;AAuB9B;;;;;;;;;;;;;;;;GAgBG;AACH,eAAO,MAAM,mBAAmB,gBAiC9B,CAAC;AAEH,8DAA8D;AAC9D,eAAO,MAAM,iBAAiB,EAAE,SAAuE,CAAC;
|
|
1
|
+
{"version":3,"file":"CodeEditor.d.ts","sourceRoot":"","sources":["../../src/composites/CodeEditor.tsx"],"names":[],"mappings":"AAOA,OAAO,EAAwC,KAAK,SAAS,EAAY,MAAM,mBAAmB,CAAC;AACnG,OAAO,EAGL,UAAU,EAaX,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EACL,cAAc,EAMf,MAAM,sBAAsB,CAAC;AAuB9B;;;;;;;;;;;;;;;;GAgBG;AACH,eAAO,MAAM,mBAAmB,gBAiC9B,CAAC;AAEH,8DAA8D;AAC9D,eAAO,MAAM,iBAAiB,EAAE,SAAuE,CAAC;AA0XxG,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACnC;oFACgF;IAChF,UAAU,CAAC,EAAE,SAAS,CAAC;IACvB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;yCAEqC;IACrC,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB;;;;;;;;;;OAUG;IACH,IAAI,CAAC,EAAE,OAAO,CAAC;IACf;;;OAGG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,gFAAgF;IAChF,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;4CACwC;IACxC,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE,UAAU,GAAG,IAAI,KAAK,IAAI,CAAC;CAC5C;AAED,wBAAgB,UAAU,CAAC,CAAC,EAAE,eAAe,+BAiN5C"}
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
var j = Object.defineProperty;
|
|
3
|
-
var J = (
|
|
4
|
-
var x = (
|
|
3
|
+
var J = (o, t, n) => t in o ? j(o, t, { enumerable: !0, configurable: !0, writable: !0, value: n }) : o[t] = n;
|
|
4
|
+
var x = (o, t, n) => J(o, typeof t != "symbol" ? t + "" : t, n);
|
|
5
5
|
import { jsx as k } from "react/jsx-runtime";
|
|
6
|
-
import { useRef as l, useState as
|
|
6
|
+
import { useRef as l, useState as M, useEffect as g } from "react";
|
|
7
7
|
import { createPortal as Q } from "react-dom";
|
|
8
|
-
import { cn as
|
|
8
|
+
import { cn as E } from "../lib/cn.js";
|
|
9
9
|
import { kanzoSearch as U } from "./code-editor-search.js";
|
|
10
10
|
import { useKanzoThemeOptional as X } from "../theme/theme-context.js";
|
|
11
11
|
import { Compartment as y, EditorState as v, Annotation as Y, RangeSet as Z } from "@codemirror/state";
|
|
12
|
-
import { EditorView as d, keymap as _, drawSelection as $, dropCursor as rr, highlightSpecialChars as
|
|
12
|
+
import { EditorView as d, keymap as _, drawSelection as $, dropCursor as rr, highlightSpecialChars as or, rectangularSelection as er, crosshairCursor as tr, lineNumbers as ar, placeholder as nr, ViewPlugin as cr, gutterLineClass as ir, Decoration as R, GutterMarker as lr } from "@codemirror/view";
|
|
13
13
|
import { history as dr, defaultKeymap as sr, historyKeymap as mr } from "@codemirror/commands";
|
|
14
14
|
import { foldKeymap as ur, bracketMatching as gr, indentOnInput as pr, foldGutter as fr, syntaxHighlighting as vr, HighlightStyle as br } from "@codemirror/language";
|
|
15
15
|
import { closeBracketsKeymap as hr, completionKeymap as xr, autocompletion as kr, closeBrackets as yr } from "@codemirror/autocomplete";
|
|
@@ -23,7 +23,7 @@ const K = Y.define(), Sr = br.define([
|
|
|
23
23
|
// as plain text mid-string. `t.escape`'s parent is `literal`, which was unmapped.
|
|
24
24
|
{ tag: [r.escape, r.special(r.brace)], color: "var(--syntax-number)" },
|
|
25
25
|
{ tag: [r.number, r.integer, r.float, r.unit], color: "var(--syntax-number)" },
|
|
26
|
-
{ tag: [r.comment, r.lineComment, r.blockComment, r.docComment], color: "var(--faint)", fontStyle: "italic" },
|
|
26
|
+
{ tag: [r.comment, r.lineComment, r.blockComment, r.docComment], color: "var(--faint, var(--muted-foreground))", fontStyle: "italic" },
|
|
27
27
|
// Object keys and attribute names. These used to be grouped with `variableName`, which
|
|
28
28
|
// resolved to a token byte-identical to --foreground — so every key in a JSON document
|
|
29
29
|
// rendered as unstyled text and the whole sample looked near-monochrome.
|
|
@@ -34,7 +34,7 @@ const K = Y.define(), Sr = br.define([
|
|
|
34
34
|
{ tag: [r.operator, r.derefOperator, r.arithmeticOperator, r.logicOperator, r.bitwiseOperator, r.compareOperator, r.updateOperator], color: "var(--foreground)" },
|
|
35
35
|
{ tag: [r.punctuation, r.separator, r.bracket, r.angleBracket, r.squareBracket, r.paren, r.brace], color: "var(--muted-foreground)" },
|
|
36
36
|
{ tag: [r.typeName, r.className, r.namespace, r.tagName, r.labelName], color: "var(--syntax-type)" },
|
|
37
|
-
{ tag: [r.meta, r.annotation, r.processingInstruction, r.documentMeta], color: "var(--faint)" },
|
|
37
|
+
{ tag: [r.meta, r.annotation, r.processingInstruction, r.documentMeta], color: "var(--faint, var(--muted-foreground))" },
|
|
38
38
|
{ tag: [r.url, r.link], color: "var(--syntax-function)", textDecoration: "underline" },
|
|
39
39
|
// Markdown: only `heading` was mapped, so prose rendered flat.
|
|
40
40
|
{ tag: r.heading, color: "var(--syntax-keyword)", fontWeight: "bold" },
|
|
@@ -42,47 +42,47 @@ const K = Y.define(), Sr = br.define([
|
|
|
42
42
|
{ tag: r.strong, fontWeight: "bold" },
|
|
43
43
|
{ tag: r.strikethrough, textDecoration: "line-through" },
|
|
44
44
|
{ tag: [r.monospace, r.list], color: "var(--syntax-string)" },
|
|
45
|
-
{ tag: r.quote, color: "var(--faint)" },
|
|
45
|
+
{ tag: r.quote, color: "var(--faint, var(--muted-foreground))" },
|
|
46
46
|
// Diff.
|
|
47
47
|
{ tag: r.inserted, color: "var(--success)" },
|
|
48
48
|
{ tag: r.deleted, color: "var(--destructive)" },
|
|
49
49
|
{ tag: r.changed, color: "var(--warning)" },
|
|
50
50
|
{ tag: r.invalid, color: "var(--destructive-foreground)" }
|
|
51
|
-
]), Nr = vr(Sr, { fallback: !0 }), Hr =
|
|
51
|
+
]), Nr = vr(Sr, { fallback: !0 }), Hr = R.line({ class: "cm-activeLine" }), Ir = new class extends lr {
|
|
52
52
|
constructor() {
|
|
53
53
|
super(...arguments);
|
|
54
54
|
x(this, "elementClass", "cm-activeLineGutter");
|
|
55
55
|
}
|
|
56
|
-
}(),
|
|
57
|
-
if (
|
|
56
|
+
}(), G = (o) => {
|
|
57
|
+
if (o.selection.ranges.some((s) => !s.empty)) return [];
|
|
58
58
|
const t = [];
|
|
59
59
|
let n = -1;
|
|
60
|
-
for (const s of
|
|
61
|
-
const { from: m } =
|
|
60
|
+
for (const s of o.selection.ranges) {
|
|
61
|
+
const { from: m } = o.doc.lineAt(s.head);
|
|
62
62
|
m > n && (t.push(m), n = m);
|
|
63
63
|
}
|
|
64
64
|
return t;
|
|
65
65
|
}, Lr = cr.fromClass(
|
|
66
66
|
class {
|
|
67
|
-
constructor(
|
|
67
|
+
constructor(o) {
|
|
68
68
|
x(this, "decorations");
|
|
69
|
-
this.decorations = z(
|
|
69
|
+
this.decorations = z(o.state);
|
|
70
70
|
}
|
|
71
|
-
update(
|
|
72
|
-
(
|
|
71
|
+
update(o) {
|
|
72
|
+
(o.docChanged || o.selectionSet) && (this.decorations = z(o.state));
|
|
73
73
|
}
|
|
74
74
|
},
|
|
75
|
-
{ decorations: (
|
|
76
|
-
), z = (
|
|
75
|
+
{ decorations: (o) => o.decorations }
|
|
76
|
+
), z = (o) => R.set(G(o).map((t) => Hr.range(t))), Or = ir.compute(
|
|
77
77
|
["selection", "doc"],
|
|
78
|
-
(
|
|
78
|
+
(o) => Z.of(G(o).map((t) => Ir.range(t)))
|
|
79
79
|
), Br = d.theme({
|
|
80
80
|
// `flex: 1`, not `height: 100%`: the chrome surface sizes with `min-height`/`max-height`, and
|
|
81
81
|
// a percentage height does not resolve against a `min-height`'d parent — so the editor stayed
|
|
82
82
|
// at content height and the field's extra `min-height` showed as dead space below the last
|
|
83
83
|
// line. As a flex child of the flex-column surface it fills the field; `min-height: 0` lets it
|
|
84
84
|
// shrink so `.cm-scroller` scrolls once content passes `max-height`.
|
|
85
|
-
"&": { fontSize: "var(--kanzo-font-size-base
|
|
85
|
+
"&": { fontSize: "var(--kanzo-font-size-base)", backgroundColor: "transparent", flex: "1 1 auto", minHeight: 0 },
|
|
86
86
|
// NO PADDING AT ALL any more, and that is the fix for a gap somebody could see: the vertical
|
|
87
87
|
// padding used to live here, and `.cm-line` sits INSIDE it — so the active-line highlight on the
|
|
88
88
|
// first line started half a rem below the top of the field and read as a bar floating in a
|
|
@@ -162,7 +162,7 @@ const K = Y.define(), Sr = br.define([
|
|
|
162
162
|
// low — verified back when the padding was on `.cm-content`: a constant 9px below its line.
|
|
163
163
|
background: "var(--muted)",
|
|
164
164
|
border: "none",
|
|
165
|
-
color: "var(--faint)"
|
|
165
|
+
color: "var(--faint, var(--muted-foreground))"
|
|
166
166
|
},
|
|
167
167
|
// Line numbers: tabular figures (no jitter across 9→10→100), right-aligned with breathing
|
|
168
168
|
// room from the border edge, and a comfortable minimum width.
|
|
@@ -180,7 +180,7 @@ const K = Y.define(), Sr = br.define([
|
|
|
180
180
|
// Quieter than the active line on purpose: this is a hover affordance, and at equal
|
|
181
181
|
// strength the two read as the same state and the column flickers as the pointer moves.
|
|
182
182
|
".cm-lineNumbers .cm-gutterElement:hover": {
|
|
183
|
-
backgroundColor: "color-mix(in
|
|
183
|
+
backgroundColor: "color-mix(in oklab, var(--muted) 60%, transparent)",
|
|
184
184
|
color: "var(--foreground)"
|
|
185
185
|
},
|
|
186
186
|
".cm-foldGutter .cm-gutterElement:hover": { color: "var(--foreground)" },
|
|
@@ -195,8 +195,8 @@ const K = Y.define(), Sr = br.define([
|
|
|
195
195
|
// the moment an editor is more than a text box, that is where the theme visibly
|
|
196
196
|
// breaks. These read from the same tokens as `popover` / `menu`.
|
|
197
197
|
".cm-tooltip": {
|
|
198
|
-
background: "var(--popover)",
|
|
199
|
-
color: "var(--
|
|
198
|
+
background: "var(--popover, var(--card))",
|
|
199
|
+
color: "var(--foreground)",
|
|
200
200
|
border: "1px solid var(--border)",
|
|
201
201
|
borderRadius: "var(--radius-md)",
|
|
202
202
|
boxShadow: "0 4px 12px rgb(0 0 0 / 0.08)",
|
|
@@ -208,9 +208,9 @@ const K = Y.define(), Sr = br.define([
|
|
|
208
208
|
// covers a light page. Found by `codemirror-dark-parity.test.ts`, not by looking.
|
|
209
209
|
".cm-tooltip-section:not(:first-child)": { borderTop: "1px solid var(--border)" },
|
|
210
210
|
".cm-tooltip .cm-tooltip-arrow:before": { borderTopColor: "var(--border)" },
|
|
211
|
-
".cm-tooltip .cm-tooltip-arrow:after": { borderTopColor: "var(--popover)" },
|
|
211
|
+
".cm-tooltip .cm-tooltip-arrow:after": { borderTopColor: "var(--popover, var(--card))" },
|
|
212
212
|
".cm-tooltip-autocomplete > ul": {
|
|
213
|
-
fontFamily: "var(--font-mono, ui-monospace, monospace)",
|
|
213
|
+
fontFamily: "var(--font-mono, ui-monospace, SFMono-Regular, Menlo, monospace)",
|
|
214
214
|
maxHeight: "16rem"
|
|
215
215
|
},
|
|
216
216
|
".cm-tooltip-autocomplete > ul > li": {
|
|
@@ -219,7 +219,7 @@ const K = Y.define(), Sr = br.define([
|
|
|
219
219
|
},
|
|
220
220
|
".cm-tooltip-autocomplete > ul > li[aria-selected]": {
|
|
221
221
|
background: "var(--accent)",
|
|
222
|
-
color: "var(--accent-foreground)"
|
|
222
|
+
color: "var(--accent-foreground, var(--foreground))"
|
|
223
223
|
},
|
|
224
224
|
".cm-completionLabel": { color: "inherit" },
|
|
225
225
|
".cm-completionMatchedText": {
|
|
@@ -235,7 +235,7 @@ const K = Y.define(), Sr = br.define([
|
|
|
235
235
|
".cm-completionIcon": { opacity: 0.64, paddingInlineEnd: "0.5rem" },
|
|
236
236
|
".cm-panels": {
|
|
237
237
|
background: "var(--card)",
|
|
238
|
-
color: "var(--
|
|
238
|
+
color: "var(--foreground)",
|
|
239
239
|
borderColor: "var(--border)"
|
|
240
240
|
},
|
|
241
241
|
".cm-panels.cm-panels-top": { borderBottom: "1px solid var(--border)" },
|
|
@@ -263,7 +263,7 @@ const K = Y.define(), Sr = br.define([
|
|
|
263
263
|
".cm-textfield": {
|
|
264
264
|
background: "var(--background)",
|
|
265
265
|
color: "var(--foreground)",
|
|
266
|
-
border: "1px solid var(--input)",
|
|
266
|
+
border: "1px solid var(--input, var(--border))",
|
|
267
267
|
borderRadius: "var(--radius-sm)",
|
|
268
268
|
padding: "0.125rem 0.375rem",
|
|
269
269
|
outline: "none"
|
|
@@ -274,7 +274,7 @@ const K = Y.define(), Sr = br.define([
|
|
|
274
274
|
},
|
|
275
275
|
".cm-button": {
|
|
276
276
|
background: "var(--secondary)",
|
|
277
|
-
color: "var(--secondary-foreground)",
|
|
277
|
+
color: "var(--secondary-foreground, var(--foreground))",
|
|
278
278
|
border: "1px solid transparent",
|
|
279
279
|
borderRadius: "var(--radius-sm)",
|
|
280
280
|
backgroundImage: "none",
|
|
@@ -283,19 +283,19 @@ const K = Y.define(), Sr = br.define([
|
|
|
283
283
|
},
|
|
284
284
|
".cm-button:hover": { background: "var(--accent)" },
|
|
285
285
|
".cm-button:active": { backgroundImage: "none" },
|
|
286
|
-
".cm-dialog": { padding: "0.375rem 0.5rem", fontSize: "var(--kanzo-font-size-small
|
|
286
|
+
".cm-dialog": { padding: "0.375rem 0.5rem", fontSize: "var(--kanzo-font-size-small)" },
|
|
287
287
|
".cm-dialog label": { display: "inline-flex", alignItems: "center", gap: "0.375rem" },
|
|
288
288
|
".cm-dialog-close": { color: "var(--muted-foreground)", cursor: "pointer" },
|
|
289
289
|
".cm-dialog-close:hover": { color: "var(--foreground)" },
|
|
290
290
|
// Search hits: the current one is the primary-tinted anchor, the rest are quieter so
|
|
291
291
|
// "where am I" stays readable at a glance.
|
|
292
292
|
".cm-searchMatch": {
|
|
293
|
-
backgroundColor: "var(--warning
|
|
293
|
+
backgroundColor: "color-mix(in oklab, var(--warning) 17%, transparent)",
|
|
294
294
|
outline: "1px solid var(--border)",
|
|
295
295
|
borderRadius: "2px"
|
|
296
296
|
},
|
|
297
297
|
".cm-searchMatch.cm-searchMatch-selected": {
|
|
298
|
-
backgroundColor: "var(--warning
|
|
298
|
+
backgroundColor: "color-mix(in oklab, var(--warning) 60%, transparent)",
|
|
299
299
|
outline: "1px solid var(--warning)"
|
|
300
300
|
},
|
|
301
301
|
// Lint diagnostics — semantic tokens, so severity survives a re-theme.
|
|
@@ -303,7 +303,7 @@ const K = Y.define(), Sr = br.define([
|
|
|
303
303
|
padding: "0.25rem 0.5rem",
|
|
304
304
|
borderInlineStartWidth: "3px",
|
|
305
305
|
borderInlineStartStyle: "solid",
|
|
306
|
-
fontFamily: "var(--font-sans)"
|
|
306
|
+
fontFamily: "var(--font-sans, ui-sans-serif, system-ui, sans-serif)"
|
|
307
307
|
},
|
|
308
308
|
".cm-diagnostic-error": { borderInlineStartColor: "var(--destructive)" },
|
|
309
309
|
".cm-diagnostic-warning": { borderInlineStartColor: "var(--warning)" },
|
|
@@ -335,13 +335,13 @@ const K = Y.define(), Sr = br.define([
|
|
|
335
335
|
// lavender applied in dark mode too. It is driven from the appearance now, which moves the
|
|
336
336
|
// default to `&dark`'s — a different stock colour, still not ours, still covered by this rule.
|
|
337
337
|
"&.cm-focused > .cm-scroller > .cm-selectionLayer .cm-selectionBackground": {
|
|
338
|
-
backgroundColor: "var(--
|
|
338
|
+
backgroundColor: "color-mix(in oklab, var(--primary) 17%, transparent)"
|
|
339
339
|
},
|
|
340
340
|
// **A selection must not repaint the text, and ours repainted all of it.** `tokens.css` sets a
|
|
341
341
|
// document-wide `::selection { bg-primary/80 text-primary-foreground }`, which is right
|
|
342
342
|
// everywhere prose is selected and wrong inside an editor: `drawSelection` suppresses the native
|
|
343
343
|
// selection's *background* and not its `color`, so the fill came from `.cm-selectionBackground`
|
|
344
|
-
// —
|
|
344
|
+
// — a 17% wash of `--primary` — while every glyph inside it took `--primary-foreground`.
|
|
345
345
|
//
|
|
346
346
|
// Measured on `/docs/forms/code-editor`: #fafafa text on a #dcdcdc block. Keys, strings and
|
|
347
347
|
// numbers all flattened to one near-white, so selecting seven lines of JSON erased the
|
|
@@ -351,42 +351,43 @@ const K = Y.define(), Sr = br.define([
|
|
|
351
351
|
// `currentColor` is the fix, and it has to be `currentColor` and not a token: a fixed colour
|
|
352
352
|
// flattens the tokens just as thoroughly, one shade later.
|
|
353
353
|
".cm-selectionBackground, .cm-content ::selection": {
|
|
354
|
-
backgroundColor: "var(--
|
|
354
|
+
backgroundColor: "color-mix(in oklab, var(--primary) 17%, transparent)",
|
|
355
355
|
color: "currentColor"
|
|
356
356
|
},
|
|
357
|
-
".cm-activeLine": { backgroundColor: "var(--
|
|
357
|
+
".cm-activeLine": { backgroundColor: "var(--muted)" },
|
|
358
358
|
// The active line's gutter cell is emphasised beyond the row: stronger tint, full-strength
|
|
359
359
|
// ink and a weight bump so the current line number stands out from the dim column.
|
|
360
360
|
".cm-activeLineGutter": {
|
|
361
|
-
backgroundColor: "var(--
|
|
361
|
+
backgroundColor: "var(--muted)",
|
|
362
362
|
color: "var(--foreground)",
|
|
363
363
|
fontWeight: "600"
|
|
364
364
|
},
|
|
365
|
-
".cm-matchingBracket, &.cm-focused .cm-matchingBracket": { backgroundColor: "var(--
|
|
366
|
-
".cm-nonmatchingBracket": { backgroundColor: "var(--destructive
|
|
367
|
-
// **A neutral tint, because it is not a search hit.** This wore
|
|
365
|
+
".cm-matchingBracket, &.cm-focused .cm-matchingBracket": { backgroundColor: "color-mix(in oklab, var(--primary) 17%, transparent)", outline: "1px solid var(--primary)" },
|
|
366
|
+
".cm-nonmatchingBracket, &.cm-focused .cm-nonmatchingBracket": { backgroundColor: "color-mix(in oklab, var(--destructive) 14%, transparent)" },
|
|
367
|
+
// **A neutral tint, because it is not a search hit.** This wore the warning wash, byte for byte
|
|
368
368
|
// what `.cm-searchMatch` wears — so the other occurrences of the word under your caret were
|
|
369
369
|
// indistinguishable from the hits of a query you actually typed, and the two co-occur constantly:
|
|
370
370
|
// open the find panel while a word is selected and every match looks like the same kind of thing.
|
|
371
371
|
//
|
|
372
372
|
// They are not. A search hit is something you asked for; this is the editor noticing a
|
|
373
373
|
// repetition. Every editor that draws both separates them the same way — the query keeps the
|
|
374
|
-
// colour, the passive one goes neutral — and `--
|
|
375
|
-
//
|
|
376
|
-
|
|
377
|
-
".cm-
|
|
374
|
+
// colour, the passive one goes neutral — and `--foreground` at 17% is the house's neutral wash
|
|
375
|
+
// (`bg-foreground/17`, a selected table row). It also takes the collision off `bg-warning/17`,
|
|
376
|
+
// which `Highlight` uses for a search-term mark in prose.
|
|
377
|
+
".cm-selectionMatch": { backgroundColor: "color-mix(in oklab, var(--foreground) 17%, transparent)" },
|
|
378
|
+
".cm-foldGutter .cm-gutterElement": { cursor: "pointer", color: "var(--faint, var(--muted-foreground))" },
|
|
378
379
|
".cm-foldPlaceholder": { background: "var(--muted)", border: "1px solid var(--border)", color: "var(--muted-foreground)", borderRadius: "var(--radius-sm)", padding: "0 4px" }
|
|
379
|
-
}), F = (
|
|
380
|
-
function jr(
|
|
380
|
+
}), F = (o) => o ? d.darkTheme.of(!0) : [];
|
|
381
|
+
function jr(o) {
|
|
381
382
|
var L;
|
|
382
|
-
const t = l(null), n = l(void 0), [s, m] =
|
|
383
|
-
a.current =
|
|
383
|
+
const t = l(null), n = l(void 0), [s, m] = M(!1), a = l(o);
|
|
384
|
+
a.current = o;
|
|
384
385
|
const w = l(new y()), C = l(new y()), S = l(new y()), p = ((L = X()) == null ? void 0 : L.resolvedAppearance) === "dark", N = l(p);
|
|
385
386
|
N.current = p;
|
|
386
|
-
const [T, H] =
|
|
387
|
+
const [T, H] = M([]);
|
|
387
388
|
g(() => {
|
|
388
389
|
var O, B;
|
|
389
|
-
const
|
|
390
|
+
const e = a.current.basics ?? !0;
|
|
390
391
|
let P = 0;
|
|
391
392
|
const W = {
|
|
392
393
|
panel: (c, i) => {
|
|
@@ -401,7 +402,7 @@ function jr(e) {
|
|
|
401
402
|
}, D = d.updateListener.of((c) => {
|
|
402
403
|
var i, u;
|
|
403
404
|
c.focusChanged && m(c.view.hasFocus), c.docChanged && (c.transactions.some((f) => f.annotation(K)) || (u = (i = a.current).onChange) == null || u.call(i, c.state.doc.toString()));
|
|
404
|
-
}), V = a.current.wrap ?? !0, A =
|
|
405
|
+
}), V = a.current.wrap ?? !0, A = e ? [
|
|
405
406
|
dr(),
|
|
406
407
|
_.of([
|
|
407
408
|
...sr,
|
|
@@ -420,9 +421,9 @@ function jr(e) {
|
|
|
420
421
|
kr(),
|
|
421
422
|
// Makes NBSP, zero-width and control characters visible. Without it they are
|
|
422
423
|
// invisible in the document, which is a real footgun when editing data.
|
|
423
|
-
er(),
|
|
424
|
-
// Alt-drag column selection, and the crosshair cursor that signals it is available.
|
|
425
424
|
or(),
|
|
425
|
+
// Alt-drag column selection, and the crosshair cursor that signals it is available.
|
|
426
|
+
er(),
|
|
426
427
|
tr(),
|
|
427
428
|
Lr,
|
|
428
429
|
gr(),
|
|
@@ -446,7 +447,7 @@ function jr(e) {
|
|
|
446
447
|
v.allowMultipleSelections.of(!0),
|
|
447
448
|
...A,
|
|
448
449
|
...a.current.lineNumbers ? [ar()] : [],
|
|
449
|
-
...
|
|
450
|
+
...e && a.current.lineNumbers ? [Or, fr()] : [],
|
|
450
451
|
...a.current.placeholder ? [nr(a.current.placeholder)] : [],
|
|
451
452
|
D,
|
|
452
453
|
S.current.of(F(N.current)),
|
|
@@ -463,34 +464,34 @@ function jr(e) {
|
|
|
463
464
|
(i = (c = a.current).onView) == null || i.call(c, null), b.destroy();
|
|
464
465
|
};
|
|
465
466
|
}, []), g(() => {
|
|
466
|
-
const
|
|
467
|
-
!
|
|
468
|
-
changes: { from: 0, to:
|
|
467
|
+
const e = n.current;
|
|
468
|
+
!e || e.hasFocus || o.value !== e.state.doc.toString() && e.dispatch({
|
|
469
|
+
changes: { from: 0, to: e.state.doc.length, insert: o.value },
|
|
469
470
|
annotations: K.of(!0)
|
|
470
471
|
});
|
|
471
|
-
}, [
|
|
472
|
-
var
|
|
473
|
-
(
|
|
474
|
-
}, [
|
|
475
|
-
var
|
|
476
|
-
(
|
|
472
|
+
}, [o.value]), g(() => {
|
|
473
|
+
var e;
|
|
474
|
+
(e = n.current) == null || e.dispatch({ effects: w.current.reconfigure(o.extensions ?? []) });
|
|
475
|
+
}, [o.extensions]), g(() => {
|
|
476
|
+
var e;
|
|
477
|
+
(e = n.current) == null || e.dispatch({ effects: S.current.reconfigure(F(p)) });
|
|
477
478
|
}, [p]), g(() => {
|
|
478
|
-
var
|
|
479
|
-
(
|
|
479
|
+
var e;
|
|
480
|
+
(e = n.current) == null || e.dispatch({
|
|
480
481
|
effects: C.current.reconfigure([
|
|
481
|
-
d.editable.of(!
|
|
482
|
-
v.readOnly.of(!!
|
|
482
|
+
d.editable.of(!o.readOnly),
|
|
483
|
+
v.readOnly.of(!!o.readOnly)
|
|
483
484
|
])
|
|
484
485
|
});
|
|
485
|
-
}, [
|
|
486
|
-
const I = T.map((
|
|
487
|
-
return
|
|
486
|
+
}, [o.readOnly]);
|
|
487
|
+
const I = T.map((e) => Q(e.node, e.dom, String(e.id)));
|
|
488
|
+
return o.chrome === !1 ? /* @__PURE__ */ k(
|
|
488
489
|
"div",
|
|
489
490
|
{
|
|
490
|
-
className:
|
|
491
|
+
className: E("flex flex-col", o.className),
|
|
491
492
|
"data-slot": "code-editor",
|
|
492
493
|
ref: t,
|
|
493
|
-
style: { minHeight:
|
|
494
|
+
style: { minHeight: o.minHeight, maxHeight: o.maxHeight },
|
|
494
495
|
children: I
|
|
495
496
|
}
|
|
496
497
|
) : /* @__PURE__ */ k("div", { "data-slot": "code-editor", style: { flex: 1, width: "100%" }, children: /* @__PURE__ */ k(
|
|
@@ -498,9 +499,9 @@ function jr(e) {
|
|
|
498
499
|
{
|
|
499
500
|
"data-slot": "code-editor-surface",
|
|
500
501
|
"data-focused": s || void 0,
|
|
501
|
-
"data-invalid":
|
|
502
|
+
"data-invalid": o.invalid || void 0,
|
|
502
503
|
ref: t,
|
|
503
|
-
className:
|
|
504
|
+
className: E(
|
|
504
505
|
"flex w-full flex-col overflow-hidden",
|
|
505
506
|
"rounded-lg border border-input bg-transparent shadow-xs/5 bg-field",
|
|
506
507
|
"transition-[color,box-shadow]",
|
|
@@ -508,7 +509,7 @@ function jr(e) {
|
|
|
508
509
|
"data-invalid:border-destructive data-invalid:ring-[3px] data-invalid:ring-destructive/24",
|
|
509
510
|
"motion-reduce:transition-none!"
|
|
510
511
|
),
|
|
511
|
-
style: { minHeight:
|
|
512
|
+
style: { minHeight: o.minHeight, maxHeight: o.maxHeight },
|
|
512
513
|
children: I
|
|
513
514
|
}
|
|
514
515
|
) });
|