@pstdio/ui 0.6.0 → 0.7.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.
Files changed (87) hide show
  1. package/dist/chat-ui.js +1270 -1080
  2. package/dist/chat-ui.js.map +1 -1
  3. package/dist/components/chat-ui/components/ai-message.d.ts +2 -0
  4. package/dist/components/chat-ui/components/chat-message-list.d.ts +12 -0
  5. package/dist/components/chat-ui/components/chat-panel.d.ts +3 -1
  6. package/dist/components/chat-ui/components/message-action-panel.d.ts +10 -0
  7. package/dist/components/chat-ui/performance/chat-mount-metrics.d.ts +37 -0
  8. package/dist/components/chat-ui/performance/chat-panel.perf.d.ts +18 -0
  9. package/dist/components/chat-ui/performance/chat-performance-fixtures.d.ts +29 -0
  10. package/dist/components/chat-ui/performance/chat-performance-panel.d.ts +23 -0
  11. package/dist/components/chat-ui/performance/chat-performance-story-utils.d.ts +30 -0
  12. package/dist/components/code-editor.d.ts +1 -1
  13. package/dist/components/diff-viewer/build-changed-files-tree.d.ts +4 -0
  14. package/dist/components/diff-viewer/diff-card-body.d.ts +34 -0
  15. package/dist/components/diff-viewer/diff-card-content.d.ts +22 -0
  16. package/dist/components/diff-viewer/diff-card-load-state.d.ts +9 -0
  17. package/dist/components/diff-viewer/diff-card.d.ts +43 -0
  18. package/dist/components/diff-viewer/diff-drawer.d.ts +33 -0
  19. package/dist/components/diff-viewer/diff-editor.d.ts +20 -0
  20. package/dist/components/diff-viewer/diff-size.d.ts +14 -0
  21. package/dist/components/diff-viewer/diff-view-adapter.d.ts +27 -0
  22. package/dist/components/diff-viewer/diff-viewer.d.ts +14 -0
  23. package/dist/components/diff-viewer/diff-viewer.store.d.ts +21 -0
  24. package/dist/components/diff-viewer/file-list-panel.d.ts +19 -0
  25. package/dist/components/diff-viewer/index.d.ts +5 -0
  26. package/dist/components/diff-viewer/types.d.ts +13 -0
  27. package/dist/components/integration-card.d.ts +12 -0
  28. package/dist/components/list-row/list-row-menu.d.ts +12 -0
  29. package/dist/components/list-row/list-row.types.d.ts +8 -0
  30. package/dist/components/palette-filter.d.ts +23 -0
  31. package/dist/components/palette-list.d.ts +11 -0
  32. package/dist/components/palette-shortcut.d.ts +4 -0
  33. package/dist/components/palette.d.ts +47 -0
  34. package/dist/components/panel-sidebar-registration-context.d.ts +12 -0
  35. package/dist/components/param-editor-label.d.ts +6 -0
  36. package/dist/components/param-editor.d.ts +2 -2
  37. package/dist/components/param-editor.types.d.ts +6 -1
  38. package/dist/components/performance-panel.d.ts +40 -0
  39. package/dist/components/{folder-picker-dialog.d.ts → repo-picker-dialog.d.ts} +6 -6
  40. package/dist/components/resizable-split-layout.d.ts +20 -0
  41. package/dist/components/resizable-split-layout.handle.d.ts +17 -0
  42. package/dist/components/resource-context-menu.d.ts +1 -0
  43. package/dist/components/session-indicator.d.ts +2 -2
  44. package/dist/components/sidebar/sidebar-header.d.ts +0 -1
  45. package/dist/components/sidebar/sidebar.types.d.ts +7 -1
  46. package/dist/components/simple-card.d.ts +5 -0
  47. package/dist/components/tree-list/tree-list.d.ts +28 -1
  48. package/dist/index.d.ts +18 -8
  49. package/dist/index.js +4356 -2292
  50. package/dist/index.js.map +1 -1
  51. package/dist/radio-DJtQY9po.js +286 -0
  52. package/dist/radio-DJtQY9po.js.map +1 -0
  53. package/dist/style.css +1 -1
  54. package/dist/theme/custom/index.d.ts +2 -0
  55. package/dist/theme/custom/vscode-theme.d.ts +32 -0
  56. package/dist/theme/index.d.ts +2 -1
  57. package/dist/theme/recipes/dialog.d.ts +1 -1
  58. package/dist/theme/recipes/drawer.d.ts +1 -1
  59. package/dist/theme/recipes/menu.d.ts +1 -1
  60. package/dist/theme/recipes/tabs.d.ts +18 -0
  61. package/dist/{theme-0SQvHr1t.js → theme-D-aCJqTf.js} +200 -123
  62. package/dist/theme-D-aCJqTf.js.map +1 -0
  63. package/dist/theme.js +6 -4
  64. package/dist/utils/apply-theme-preference.d.ts +2 -0
  65. package/package.json +4 -1
  66. package/dist/components/app-shell/app-shell.d.ts +0 -1
  67. package/dist/components/app-shell/command-palette.d.ts +0 -16
  68. package/dist/components/app-shell/file-tree.d.ts +0 -7
  69. package/dist/components/app-shell/mock-chat.d.ts +0 -2
  70. package/dist/components/app-shell/mock-data.d.ts +0 -37
  71. package/dist/components/app-shell/pages/project-list-page.d.ts +0 -7
  72. package/dist/components/app-shell/pages/sessions-page.d.ts +0 -6
  73. package/dist/components/app-shell/pages/settings-page.d.ts +0 -5
  74. package/dist/components/app-shell/pages/ticket-details-page.d.ts +0 -7
  75. package/dist/components/app-shell/pages/tickets-page.d.ts +0 -7
  76. package/dist/components/app-shell/pages/workspace-page.d.ts +0 -1
  77. package/dist/components/app-shell/resizable-panel.d.ts +0 -13
  78. package/dist/components/attached-panel.utils.d.ts +0 -6
  79. package/dist/components/diff-card.d.ts +0 -17
  80. package/dist/components/diff-drawer.d.ts +0 -7
  81. package/dist/components/diff-editor.d.ts +0 -11
  82. package/dist/components/diff-view-adapter.d.ts +0 -14
  83. package/dist/components/properties.d.ts +0 -18
  84. package/dist/radio-C42qncrD.js +0 -236
  85. package/dist/radio-C42qncrD.js.map +0 -1
  86. package/dist/theme-0SQvHr1t.js.map +0 -1
  87. /package/dist/components/{diff-bubble.d.ts → diff-viewer/diff-bubble.d.ts} +0 -0
@@ -0,0 +1,286 @@
1
+ import { jsx as u, jsxs as R } from "react/jsx-runtime";
2
+ import { c as A } from "react/compiler-runtime";
3
+ import { Alert as C, Checkbox as S, EmptyState as D, VStack as V, Span as _, Box as W, RadioGroup as L } from "@chakra-ui/react";
4
+ import * as $ from "react";
5
+ import { useRef as z } from "react";
6
+ import { DiffModeEnum as T, DiffView as H } from "@git-diff-view/react";
7
+ import "@git-diff-view/react/styles/diff-view.css";
8
+ import { generateDiffFile as P } from "@git-diff-view/file";
9
+ const re = $.forwardRef(function(t, a) {
10
+ const e = A(19);
11
+ let i, l, s, n, o, r;
12
+ e[0] !== t ? ({
13
+ title: r,
14
+ children: i,
15
+ icon: s,
16
+ startElement: o,
17
+ endElement: l,
18
+ ...n
19
+ } = t, e[0] = t, e[1] = i, e[2] = l, e[3] = s, e[4] = n, e[5] = o, e[6] = r) : (i = e[1], l = e[2], s = e[3], n = e[4], o = e[5], r = e[6]);
20
+ let d;
21
+ e[7] !== s || e[8] !== o ? (d = o || /* @__PURE__ */ u(C.Indicator, { children: s }), e[7] = s, e[8] = o, e[9] = d) : d = e[9];
22
+ let f;
23
+ e[10] !== i || e[11] !== r ? (f = i ? /* @__PURE__ */ R(C.Content, { children: [
24
+ /* @__PURE__ */ u(C.Title, { children: r }),
25
+ /* @__PURE__ */ u(C.Description, { children: i })
26
+ ] }) : /* @__PURE__ */ u(C.Title, { flex: "1", children: r }), e[10] = i, e[11] = r, e[12] = f) : f = e[12];
27
+ let m;
28
+ return e[13] !== l || e[14] !== a || e[15] !== n || e[16] !== d || e[17] !== f ? (m = /* @__PURE__ */ R(C.Root, { ref: a, ...n, children: [
29
+ d,
30
+ f,
31
+ l
32
+ ] }), e[13] = l, e[14] = a, e[15] = n, e[16] = d, e[17] = f, e[18] = m) : m = e[18], m;
33
+ }), ae = $.forwardRef(function(t, a) {
34
+ const e = A(28);
35
+ let i, l, s, n, o, r, d;
36
+ e[0] !== t ? ({
37
+ icon: l,
38
+ children: i,
39
+ inputProps: s,
40
+ rootRef: o,
41
+ disabled: r,
42
+ readOnly: d,
43
+ ...n
44
+ } = t, e[0] = t, e[1] = i, e[2] = l, e[3] = s, e[4] = n, e[5] = o, e[6] = r, e[7] = d) : (i = e[1], l = e[2], s = e[3], n = e[4], o = e[5], r = e[6], d = e[7]);
45
+ const f = r === void 0 ? !1 : r, m = d === void 0 ? !1 : d, h = f ? "not-allowed" : m ? "default" : "pointer";
46
+ let p;
47
+ e[8] !== s || e[9] !== a ? (p = /* @__PURE__ */ u(S.HiddenInput, { ref: a, ...s }), e[8] = s, e[9] = a, e[10] = p) : p = e[10];
48
+ let x;
49
+ e[11] !== l ? (x = l || /* @__PURE__ */ u(S.Indicator, {}), e[11] = l, e[12] = x) : x = e[12];
50
+ let b;
51
+ e[13] !== h || e[14] !== x ? (b = /* @__PURE__ */ u(S.Control, { borderRadius: "xs", cursor: h, children: x }), e[13] = h, e[14] = x, e[15] = b) : b = e[15];
52
+ let v;
53
+ e[16] !== i || e[17] !== h ? (v = i != null && /* @__PURE__ */ u(S.Label, { cursor: h, children: i }), e[16] = i, e[17] = h, e[18] = v) : v = e[18];
54
+ let g;
55
+ return e[19] !== f || e[20] !== h || e[21] !== m || e[22] !== n || e[23] !== o || e[24] !== p || e[25] !== b || e[26] !== v ? (g = /* @__PURE__ */ R(S.Root, { ref: o, disabled: f, readOnly: m, cursor: h, ...n, children: [
56
+ p,
57
+ b,
58
+ v
59
+ ] }), e[19] = f, e[20] = h, e[21] = m, e[22] = n, e[23] = o, e[24] = p, e[25] = b, e[26] = v, e[27] = g) : g = e[27], g;
60
+ }), ce = $.forwardRef(function(t, a) {
61
+ const e = A(19);
62
+ let i, l, s, n, o;
63
+ e[0] !== t ? ({
64
+ title: o,
65
+ description: l,
66
+ icon: s,
67
+ children: i,
68
+ ...n
69
+ } = t, e[0] = t, e[1] = i, e[2] = l, e[3] = s, e[4] = n, e[5] = o) : (i = e[1], l = e[2], s = e[3], n = e[4], o = e[5]);
70
+ let r;
71
+ e[6] !== s ? (r = s && /* @__PURE__ */ u(D.Indicator, { children: s }), e[6] = s, e[7] = r) : r = e[7];
72
+ let d;
73
+ e[8] !== l || e[9] !== o ? (d = l ? /* @__PURE__ */ R(V, { textAlign: "center", children: [
74
+ /* @__PURE__ */ u(D.Title, { fontWeight: "normal", children: o }),
75
+ /* @__PURE__ */ u(D.Description, { children: l })
76
+ ] }) : /* @__PURE__ */ u(D.Title, { fontWeight: "normal", children: o }), e[8] = l, e[9] = o, e[10] = d) : d = e[10];
77
+ let f;
78
+ e[11] !== i || e[12] !== r || e[13] !== d ? (f = /* @__PURE__ */ R(D.Content, { children: [
79
+ r,
80
+ d,
81
+ i
82
+ ] }), e[11] = i, e[12] = r, e[13] = d, e[14] = f) : f = e[14];
83
+ let m;
84
+ return e[15] !== a || e[16] !== n || e[17] !== f ? (m = /* @__PURE__ */ u(D.Root, { ref: a, ...n, children: f }), e[15] = a, e[16] = n, e[17] = f, e[18] = m) : m = e[18], m;
85
+ }), de = (c) => {
86
+ const t = A(20), {
87
+ fileName: a,
88
+ additions: e,
89
+ deletions: i,
90
+ label: l,
91
+ variant: s,
92
+ size: n,
93
+ onClick: o,
94
+ onClickFileLink: r
95
+ } = c, d = s === void 0 ? "outline" : s, m = (n === void 0 ? "default" : n) === "small", h = d === "outline" ? "1px solid" : "none", p = d === "outline" ? m ? "3xs" : "2xs" : "2px", x = m ? "label/S/regular" : void 0, b = o ? "pointer" : "default", v = o ? "bg.muted" : "none";
96
+ let g;
97
+ t[0] !== v ? (g = {
98
+ background: v
99
+ }, t[0] = v, t[1] = g) : g = t[1];
100
+ let w;
101
+ t[2] !== a || t[3] !== r ? (w = a && /* @__PURE__ */ u(_, { display: "inline-block", maxW: "24ch", truncate: !0, mr: "xs", title: a, onClick: (N) => {
102
+ N.stopPropagation(), r?.();
103
+ }, cursor: r ? "pointer" : "default", _hover: {
104
+ textDecoration: r ? "underline" : "none",
105
+ color: r ? "fg.blue-dark" : "fg.muted"
106
+ }, children: a }), t[2] = a, t[3] = r, t[4] = w) : w = t[4];
107
+ const j = `+${e}`;
108
+ let k;
109
+ t[5] !== j ? (k = /* @__PURE__ */ u(_, { color: "fg.success", children: j }), t[5] = j, t[6] = k) : k = t[6];
110
+ const F = `-${i}`;
111
+ let y;
112
+ t[7] !== F ? (y = /* @__PURE__ */ u(_, { color: "fg.error", children: F }), t[7] = F, t[8] = y) : y = t[8];
113
+ let I;
114
+ return t[9] !== l || t[10] !== o || t[11] !== k || t[12] !== y || t[13] !== h || t[14] !== p || t[15] !== x || t[16] !== b || t[17] !== g || t[18] !== w ? (I = /* @__PURE__ */ R(_, { display: "inline-flex", alignItems: "center", gap: "2xs", border: h, borderColor: "border.muted", color: "fg.muted", paddingX: p, paddingY: "1px", borderRadius: "xs", textStyle: x, cursor: b, onClick: o, _hover: g, children: [
115
+ l,
116
+ w,
117
+ k,
118
+ y
119
+ ] }), t[9] = l, t[10] = o, t[11] = k, t[12] = y, t[13] = h, t[14] = p, t[15] = x, t[16] = b, t[17] = g, t[18] = w, t[19] = I) : I = t[19], I;
120
+ }, B = "before.txt", M = "after.txt", G = 100, K = {
121
+ ts: "typescript",
122
+ tsx: "typescript",
123
+ js: "javascript",
124
+ jsx: "javascript",
125
+ json: "json",
126
+ md: "markdown",
127
+ py: "python",
128
+ go: "go",
129
+ rs: "rust",
130
+ css: "css",
131
+ html: "html",
132
+ sh: "shell",
133
+ yml: "yaml",
134
+ yaml: "yaml"
135
+ }, O = (c) => (c.split(/[\\/]/).pop() ?? c).split(".").pop()?.toLowerCase(), X = ({
136
+ language: c,
137
+ oldPath: t,
138
+ newPath: a
139
+ }) => {
140
+ if (c)
141
+ return c;
142
+ const e = O(a ?? t ?? "");
143
+ return e ? K[e] ?? "plaintext" : "plaintext";
144
+ }, E = /* @__PURE__ */ new Map(), q = ({
145
+ original: c,
146
+ modified: t,
147
+ language: a,
148
+ oldPath: e,
149
+ newPath: i
150
+ }) => [c, t, a ?? "", e ?? "", i ?? ""].join("\0"), U = (c) => {
151
+ const t = c.join(`
152
+ `).split(`
153
+ `);
154
+ let a = 0, e = 0, i = 0, l = !1, s = 0, n = 0;
155
+ const o = () => {
156
+ a += s + n, e += Math.max(s, n), s = 0, n = 0;
157
+ };
158
+ for (const r of t)
159
+ r.startsWith("@@") ? (o(), i += 1, l = !0) : l && (r.startsWith("+") ? s += 1 : r.startsWith("-") ? n += 1 : r.startsWith(" ") && (o(), a += 1, e += 1));
160
+ return o(), {
161
+ unifiedContentRows: a,
162
+ splitContentRows: e,
163
+ hunkRows: i
164
+ };
165
+ }, Y = ({
166
+ original: c,
167
+ modified: t,
168
+ language: a,
169
+ oldPath: e,
170
+ newPath: i
171
+ }) => {
172
+ const l = e ?? i ?? B, s = i ?? e ?? M, n = X({
173
+ language: a,
174
+ oldPath: e,
175
+ newPath: i
176
+ }), o = P(l, c, s, t, n, n, {
177
+ context: 3
178
+ });
179
+ return {
180
+ oldFile: {
181
+ fileName: l,
182
+ fileLang: n,
183
+ content: c
184
+ },
185
+ newFile: {
186
+ fileName: s,
187
+ fileLang: n,
188
+ content: t
189
+ },
190
+ hunks: o._diffList,
191
+ ...U(o._diffList)
192
+ };
193
+ }, J = (c) => {
194
+ const t = q(c), a = E.get(t);
195
+ if (a) return a;
196
+ const e = Y(c);
197
+ if (E.size >= G) {
198
+ const i = E.keys().next().value;
199
+ i !== void 0 && E.delete(i);
200
+ }
201
+ return E.set(t, e), e;
202
+ }, Q = (c, t) => c.original === t.original && c.modified === t.modified && c.language === t.language && c.oldPath === t.oldPath && c.newPath === t.newPath, Z = (c, t, a) => c && Q(c.input, t) ? c : {
203
+ input: t,
204
+ data: a()
205
+ };
206
+ function fe(c) {
207
+ const {
208
+ original: t,
209
+ modified: a,
210
+ language: e,
211
+ oldPath: i,
212
+ newPath: l,
213
+ sideBySide: s = !1,
214
+ disableScroll: n = !0,
215
+ data: o
216
+ } = c, r = z(null), d = {
217
+ original: t,
218
+ modified: a,
219
+ language: e,
220
+ oldPath: i,
221
+ newPath: l
222
+ };
223
+ r.current = Z(r.current, d, () => o ?? J({
224
+ original: t,
225
+ modified: a,
226
+ language: e,
227
+ oldPath: i,
228
+ newPath: l
229
+ }));
230
+ const f = s ? T.Split : T.Unified;
231
+ return /* @__PURE__ */ u(W, { height: "100%", width: "100%", position: "relative", zIndex: "0", overflow: n ? "hidden" : "auto", bg: "bg", css: {
232
+ "& .gdv-root, & .gdv-view, & .gdv-file, & .gdv-content, & .gdv-hunk, & .gdv-line": {
233
+ background: "var(--chakra-colors-bg)"
234
+ },
235
+ "& .gdv-root": {
236
+ border: "none",
237
+ borderRadius: "0"
238
+ },
239
+ "& .gdv-line-number": {
240
+ fontSize: "11px"
241
+ }
242
+ }, children: /* @__PURE__ */ u(
243
+ H,
244
+ {
245
+ data: r.current.data,
246
+ diffViewMode: f,
247
+ diffViewTheme: "dark",
248
+ diffViewHighlight: !0,
249
+ diffViewWrap: !1,
250
+ diffViewFontSize: 11
251
+ }
252
+ ) });
253
+ }
254
+ const ue = $.forwardRef(function(t, a) {
255
+ const e = A(16);
256
+ let i, l, s, n;
257
+ e[0] !== t ? ({
258
+ children: i,
259
+ inputProps: l,
260
+ rootRef: n,
261
+ ...s
262
+ } = t, e[0] = t, e[1] = i, e[2] = l, e[3] = s, e[4] = n) : (i = e[1], l = e[2], s = e[3], n = e[4]);
263
+ let o;
264
+ e[5] !== l || e[6] !== a ? (o = /* @__PURE__ */ u(L.ItemHiddenInput, { ref: a, ...l }), e[5] = l, e[6] = a, e[7] = o) : o = e[7];
265
+ let r;
266
+ e[8] === /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel") ? (r = /* @__PURE__ */ u(L.ItemIndicator, {}), e[8] = r) : r = e[8];
267
+ let d;
268
+ e[9] !== i ? (d = i ? /* @__PURE__ */ u(L.ItemText, { children: i }) : null, e[9] = i, e[10] = d) : d = e[10];
269
+ let f;
270
+ return e[11] !== s || e[12] !== n || e[13] !== o || e[14] !== d ? (f = /* @__PURE__ */ R(L.Item, { ref: n, ...s, children: [
271
+ o,
272
+ r,
273
+ d
274
+ ] }), e[11] = s, e[12] = n, e[13] = o, e[14] = d, e[15] = f) : f = e[15], f;
275
+ }), me = L.Root;
276
+ export {
277
+ re as A,
278
+ ae as C,
279
+ fe as D,
280
+ ce as E,
281
+ ue as R,
282
+ me as a,
283
+ de as b,
284
+ J as c
285
+ };
286
+ //# sourceMappingURL=radio-DJtQY9po.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"radio-DJtQY9po.js","sources":["../src/components/alert.tsx","../src/components/checkbox.tsx","../src/components/empty-state.tsx","../src/components/diff-viewer/diff-bubble.tsx","../src/components/diff-viewer/diff-view-adapter.ts","../src/components/diff-viewer/diff-editor.tsx","../src/components/radio.tsx"],"sourcesContent":["import { Alert as ChakraAlert } from \"@chakra-ui/react\";\nimport * as React from \"react\";\n\nexport interface AlertProps extends Omit<ChakraAlert.RootProps, \"title\"> {\n startElement?: React.ReactNode;\n endElement?: React.ReactNode;\n title?: React.ReactNode;\n icon?: React.ReactElement;\n}\n\nexport const AlertMessage = React.forwardRef<HTMLDivElement, AlertProps>(function Alert(props, ref) {\n const { title, children, icon, startElement, endElement, ...rest } = props;\n return (\n <ChakraAlert.Root ref={ref} {...rest}>\n {startElement || <ChakraAlert.Indicator>{icon}</ChakraAlert.Indicator>}\n {children ? (\n <ChakraAlert.Content>\n <ChakraAlert.Title>{title}</ChakraAlert.Title>\n <ChakraAlert.Description>{children}</ChakraAlert.Description>\n </ChakraAlert.Content>\n ) : (\n <ChakraAlert.Title flex=\"1\">{title}</ChakraAlert.Title>\n )}\n {endElement}\n </ChakraAlert.Root>\n );\n});\n","import { Checkbox as ChakraCheckbox } from \"@chakra-ui/react\";\nimport * as React from \"react\";\n\nexport interface CheckboxProps extends ChakraCheckbox.RootProps {\n icon?: React.ReactNode;\n inputProps?: React.InputHTMLAttributes<HTMLInputElement>;\n rootRef?: React.RefObject<HTMLLabelElement | null>;\n}\n\nexport const Checkbox = React.forwardRef<HTMLInputElement, CheckboxProps>(function Checkbox(props, ref) {\n const { icon, children, inputProps, rootRef, disabled = false, readOnly = false, ...rest } = props;\n const interactiveCursor = disabled ? \"not-allowed\" : readOnly ? \"default\" : \"pointer\";\n\n return (\n <ChakraCheckbox.Root ref={rootRef} disabled={disabled} readOnly={readOnly} cursor={interactiveCursor} {...rest}>\n <ChakraCheckbox.HiddenInput ref={ref} {...inputProps} />\n <ChakraCheckbox.Control borderRadius=\"xs\" cursor={interactiveCursor}>\n {icon || <ChakraCheckbox.Indicator />}\n </ChakraCheckbox.Control>\n {children != null && <ChakraCheckbox.Label cursor={interactiveCursor}>{children}</ChakraCheckbox.Label>}\n </ChakraCheckbox.Root>\n );\n});\n","import { EmptyState as ChakraEmptyState, VStack } from \"@chakra-ui/react\";\nimport * as React from \"react\";\n\nexport interface EmptyStateProps extends ChakraEmptyState.RootProps {\n title: string;\n description?: string;\n icon?: React.ReactNode;\n}\n\nexport const EmptyState = React.forwardRef<HTMLDivElement, EmptyStateProps>(function EmptyState(props, ref) {\n const { title, description, icon, children, ...rest } = props;\n return (\n <ChakraEmptyState.Root ref={ref} {...rest}>\n <ChakraEmptyState.Content>\n {icon && <ChakraEmptyState.Indicator>{icon}</ChakraEmptyState.Indicator>}\n {description ? (\n <VStack textAlign=\"center\">\n <ChakraEmptyState.Title fontWeight=\"normal\">{title}</ChakraEmptyState.Title>\n <ChakraEmptyState.Description>{description}</ChakraEmptyState.Description>\n </VStack>\n ) : (\n <ChakraEmptyState.Title fontWeight=\"normal\">{title}</ChakraEmptyState.Title>\n )}\n {children}\n </ChakraEmptyState.Content>\n </ChakraEmptyState.Root>\n );\n});\n","import { Span } from \"@chakra-ui/react\";\nimport type React from \"react\";\nimport type { ComponentProps, MouseEvent } from \"react\";\n\ninterface DiffBubbleProps extends Omit<ComponentProps<typeof Span>, \"onClick\"> {\n fileName?: string;\n additions: number;\n deletions: number;\n label?: React.ReactNode;\n variant?: \"outline\" | \"ghost\";\n size?: \"default\" | \"small\";\n onClick?: (event: MouseEvent<HTMLSpanElement>) => void;\n onClickFileLink?: () => void;\n}\n\nexport const DiffBubble = (props: DiffBubbleProps) => {\n const {\n fileName,\n additions,\n deletions,\n label,\n variant = \"outline\",\n size = \"default\",\n onClick,\n onClickFileLink,\n } = props;\n\n const isSmall = size === \"small\";\n\n return (\n <Span\n display=\"inline-flex\"\n alignItems=\"center\"\n gap={\"2xs\"}\n border={variant === \"outline\" ? \"1px solid\" : \"none\"}\n borderColor=\"border.muted\"\n color=\"fg.muted\"\n paddingX={variant === \"outline\" ? (isSmall ? \"3xs\" : \"2xs\") : \"2px\"}\n paddingY=\"1px\"\n borderRadius=\"xs\"\n textStyle={isSmall ? \"label/S/regular\" : undefined}\n cursor={onClick ? \"pointer\" : \"default\"}\n onClick={onClick}\n _hover={{\n background: onClick ? \"bg.muted\" : \"none\",\n }}\n >\n {label}\n {fileName && (\n <Span\n display=\"inline-block\"\n maxW=\"24ch\"\n truncate\n mr=\"xs\"\n title={fileName}\n onClick={(e) => {\n e.stopPropagation();\n onClickFileLink?.();\n }}\n cursor={onClickFileLink ? \"pointer\" : \"default\"}\n _hover={{\n textDecoration: onClickFileLink ? \"underline\" : \"none\",\n color: onClickFileLink ? \"fg.blue-dark\" : \"fg.muted\",\n }}\n >\n {fileName}\n </Span>\n )}\n <Span color=\"fg.success\">{`+${additions}`}</Span>\n <Span color=\"fg.error\">{`-${deletions}`}</Span>\n </Span>\n );\n};\n","import { generateDiffFile } from \"@git-diff-view/file\";\nimport type { DiffViewProps } from \"@git-diff-view/react\";\n\nconst FALLBACK_OLD_PATH = \"before.txt\";\nconst FALLBACK_NEW_PATH = \"after.txt\";\nconst MAX_CACHE_ENTRIES = 100;\n\ninterface ResolveDiffLanguageInput {\n language?: string;\n oldPath?: string;\n newPath?: string;\n}\n\ninterface BuildDiffViewDataInput extends ResolveDiffLanguageInput {\n original: string;\n modified: string;\n}\n\nexport type DiffViewData = NonNullable<DiffViewProps<unknown>[\"data\"]>;\n\n/**\n * Diff view data enriched with the row counts the renderer will actually paint. The renderer\n * collapses unchanged context, so only lines inside the hunks are rendered — these counts come\n * from the hunk patch, not the full file length.\n */\nexport interface BuiltDiffViewData extends DiffViewData {\n /** Content rows painted in unified layout (one per added/removed/context line). */\n unifiedContentRows: number;\n /** Content rows painted in split layout (paired add/remove lines share a row). */\n splitContentRows: number;\n /** Hunk header rows — one per `@@` section, taller than content rows. */\n hunkRows: number;\n}\n\nconst extToLanguage: Record<string, string> = {\n ts: \"typescript\",\n tsx: \"typescript\",\n js: \"javascript\",\n jsx: \"javascript\",\n json: \"json\",\n md: \"markdown\",\n py: \"python\",\n go: \"go\",\n rs: \"rust\",\n css: \"css\",\n html: \"html\",\n sh: \"shell\",\n yml: \"yaml\",\n yaml: \"yaml\",\n};\n\nconst getExtension = (path: string) => {\n const fileName = path.split(/[\\\\/]/).pop() ?? path;\n const ext = fileName.split(\".\").pop();\n\n return ext?.toLowerCase();\n};\n\nexport const resolveDiffLanguage = ({ language, oldPath, newPath }: ResolveDiffLanguageInput) => {\n if (language) {\n return language;\n }\n\n const extension = getExtension(newPath ?? oldPath ?? \"\");\n\n if (!extension) {\n return \"plaintext\";\n }\n\n return extToLanguage[extension] ?? \"plaintext\";\n};\n\n// Building a diff file parses both file contents and walks every rendered line. The drawer's\n// virtualizer asks for heights far more often than the diff content changes, so memoize by\n// content signature and share one instance with the rendered editor.\nconst cache = new Map<string, BuiltDiffViewData>();\n\nconst getCacheKey = ({ original, modified, language, oldPath, newPath }: BuildDiffViewDataInput) =>\n [original, modified, language ?? \"\", oldPath ?? \"\", newPath ?? \"\"].join(\"\\0\");\n\n// The hunk patch lists exactly the rows the renderer paints (it collapses everything else).\n// Walk it once: `@@` starts a hunk header row, ` ` is a context row, and a run of `-`/`+`\n// is one change block — unified stacks every line, split pairs them so the block is as tall\n// as its longer side.\nconst countRenderedRows = (hunks: string[]) => {\n const lines = hunks.join(\"\\n\").split(\"\\n\");\n let unifiedContentRows = 0;\n let splitContentRows = 0;\n let hunkRows = 0;\n let inHunk = false;\n let blockAdditions = 0;\n let blockDeletions = 0;\n\n const flushBlock = () => {\n unifiedContentRows += blockAdditions + blockDeletions;\n splitContentRows += Math.max(blockAdditions, blockDeletions);\n blockAdditions = 0;\n blockDeletions = 0;\n };\n\n for (const line of lines) {\n if (line.startsWith(\"@@\")) {\n flushBlock();\n hunkRows += 1;\n inHunk = true;\n } else if (!inHunk) {\n // Patch header (Index:, ===, ---, +++) before the first hunk — not rendered.\n } else if (line.startsWith(\"+\")) {\n blockAdditions += 1;\n } else if (line.startsWith(\"-\")) {\n blockDeletions += 1;\n } else if (line.startsWith(\" \")) {\n flushBlock();\n unifiedContentRows += 1;\n splitContentRows += 1;\n }\n }\n flushBlock();\n\n return { unifiedContentRows, splitContentRows, hunkRows };\n};\n\nconst computeDiffViewData = ({ original, modified, language, oldPath, newPath }: BuildDiffViewDataInput) => {\n const oldFileName = oldPath ?? newPath ?? FALLBACK_OLD_PATH;\n const newFileName = newPath ?? oldPath ?? FALLBACK_NEW_PATH;\n const fileLanguage = resolveDiffLanguage({ language, oldPath, newPath });\n\n // No uuid: @git-diff-view keys its internal File cache by uuid when one is given, so a\n // shared constant would make every diff reuse the first file's content. Omitting it keys\n // the cache by raw content, which is correct.\n const diffFile = generateDiffFile(oldFileName, original, newFileName, modified, fileLanguage, fileLanguage, {\n context: 3,\n });\n\n return {\n oldFile: {\n fileName: oldFileName,\n fileLang: fileLanguage,\n content: original,\n },\n newFile: {\n fileName: newFileName,\n fileLang: fileLanguage,\n content: modified,\n },\n hunks: diffFile._diffList,\n ...countRenderedRows(diffFile._diffList),\n } satisfies BuiltDiffViewData;\n};\n\nexport const buildDiffViewData = (input: BuildDiffViewDataInput): BuiltDiffViewData => {\n const key = getCacheKey(input);\n const cached = cache.get(key);\n if (cached) return cached;\n\n const data = computeDiffViewData(input);\n\n if (cache.size >= MAX_CACHE_ENTRIES) {\n const oldest = cache.keys().next().value;\n if (oldest !== undefined) cache.delete(oldest);\n }\n cache.set(key, data);\n\n return data;\n};\n","import { DiffModeEnum, DiffView } from \"@git-diff-view/react\";\nimport \"@git-diff-view/react/styles/diff-view.css\";\nimport { Box } from \"@chakra-ui/react\";\nimport { useRef } from \"react\";\nimport { buildDiffViewData, type DiffViewData } from \"./diff-view-adapter\";\n\nexport interface DiffEditorInput {\n original: string;\n modified: string;\n language?: string;\n oldPath?: string;\n newPath?: string;\n}\n\ninterface DiffEditorProps extends DiffEditorInput {\n sideBySide?: boolean;\n disableScroll?: boolean;\n data?: DiffViewData;\n}\n\nexport interface DiffEditorDataState {\n input: DiffEditorInput;\n data: DiffViewData;\n}\n\nconst areDiffEditorInputsEqual = (current: DiffEditorInput, next: DiffEditorInput) =>\n current.original === next.original &&\n current.modified === next.modified &&\n current.language === next.language &&\n current.oldPath === next.oldPath &&\n current.newPath === next.newPath;\n\nexport const resolveDiffEditorDataState = (\n current: DiffEditorDataState | null,\n input: DiffEditorInput,\n createData: () => DiffViewData,\n) => {\n if (current && areDiffEditorInputsEqual(current.input, input)) {\n return current;\n }\n\n return {\n input,\n data: createData(),\n };\n};\n\nexport function DiffEditor(props: DiffEditorProps) {\n const { original, modified, language, oldPath, newPath, sideBySide = false, disableScroll = true, data } = props;\n const dataStateRef = useRef<DiffEditorDataState | null>(null);\n const input = { original, modified, language, oldPath, newPath };\n\n dataStateRef.current = resolveDiffEditorDataState(\n dataStateRef.current,\n input,\n () =>\n data ??\n buildDiffViewData({\n original,\n modified,\n language,\n oldPath,\n newPath,\n }),\n );\n\n const mode = sideBySide ? DiffModeEnum.Split : DiffModeEnum.Unified;\n\n return (\n <Box\n height=\"100%\"\n width=\"100%\"\n position=\"relative\"\n zIndex=\"0\"\n overflow={disableScroll ? \"hidden\" : \"auto\"}\n bg=\"bg\"\n css={{\n \"& .gdv-root, & .gdv-view, & .gdv-file, & .gdv-content, & .gdv-hunk, & .gdv-line\": {\n background: \"var(--chakra-colors-bg)\",\n },\n \"& .gdv-root\": {\n border: \"none\",\n borderRadius: \"0\",\n },\n \"& .gdv-line-number\": {\n fontSize: \"11px\",\n },\n }}\n >\n <DiffView\n data={dataStateRef.current.data}\n diffViewMode={mode}\n diffViewTheme=\"dark\"\n diffViewHighlight={true}\n // No wrap: keeps every line one fixed-height row so the virtualizer's height estimate\n // stays exact, and avoids wrapped lines being misread. Long lines scroll horizontally\n // inside DiffView's own overflow-x container.\n diffViewWrap={false}\n diffViewFontSize={11}\n />\n </Box>\n );\n}\n","import { RadioGroup as ChakraRadioGroup } from \"@chakra-ui/react\";\nimport * as React from \"react\";\n\nexport interface RadioProps extends ChakraRadioGroup.ItemProps {\n rootRef?: React.RefObject<HTMLDivElement | null>;\n inputProps?: React.InputHTMLAttributes<HTMLInputElement>;\n}\n\nexport const Radio = React.forwardRef<HTMLInputElement, RadioProps>(function Radio(props, ref) {\n const { children, inputProps, rootRef, ...rest } = props;\n\n return (\n <ChakraRadioGroup.Item ref={rootRef} {...rest}>\n <ChakraRadioGroup.ItemHiddenInput ref={ref} {...inputProps} />\n <ChakraRadioGroup.ItemIndicator />\n {children ? <ChakraRadioGroup.ItemText>{children}</ChakraRadioGroup.ItemText> : null}\n </ChakraRadioGroup.Item>\n );\n});\n\nexport const RadioGroup = ChakraRadioGroup.Root;\n"],"names":["AlertMessage","React","forwardRef","props","ref","$","_c","children","endElement","icon","rest","startElement","title","t0","jsx","ChakraAlert","t1","jsxs","t2","Checkbox","inputProps","rootRef","disabled","readOnly","undefined","interactiveCursor","t3","ChakraCheckbox","t4","t5","t6","EmptyState","description","ChakraEmptyState","VStack","DiffBubble","fileName","additions","deletions","label","variant","size","onClick","onClickFileLink","isSmall","t7","background","t8","Span","e","stopPropagation","textDecoration","color","t9","t10","t11","t12","t13","FALLBACK_OLD_PATH","FALLBACK_NEW_PATH","MAX_CACHE_ENTRIES","extToLanguage","ts","tsx","js","json","md","py","go","rs","css","html","sh","yml","yaml","getExtension","path","split","pop","toLowerCase","resolveDiffLanguage","language","oldPath","newPath","extension","cache","Map","getCacheKey","original","modified","join","countRenderedRows","hunks","lines","unifiedContentRows","splitContentRows","hunkRows","inHunk","blockAdditions","blockDeletions","flushBlock","Math","max","line","startsWith","computeDiffViewData","oldFileName","newFileName","fileLanguage","diffFile","generateDiffFile","context","oldFile","fileLang","content","newFile","_diffList","buildDiffViewData","input","key","cached","get","data","oldest","keys","next","value","delete","set","areDiffEditorInputsEqual","current","resolveDiffEditorDataState","createData","DiffEditor","sideBySide","disableScroll","dataStateRef","useRef","mode","DiffModeEnum","Split","Unified","Box","border","borderRadius","fontSize","DiffView","Radio","Symbol","for","ChakraRadioGroup","RadioGroup","Root"],"mappings":"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"}
package/dist/style.css CHANGED
@@ -1 +1 @@
1
- .rich-text__ltr{text-align:left}.rich-text__rtl{text-align:right}.rich-text{--rich-text-font-scale: 1;--rich-text-list-indent: 1.5rem;font-size:calc(1rem * var(--rich-text-font-scale))}.rich-text[data-rich-message=true]{--rich-text-font-scale: .9}.rich-text[data-rich-message=true] .rich-text__p:last-child{margin-bottom:0}.rich-text__paragraph{margin:0;position:relative}.rich-text__quote{margin:0;margin-top:var(--chakra-spacing-xl, 1.5rem);margin-left:var(--chakra-spacing-sm, .75rem);margin-bottom:var(--chakra-spacing-xl, 1.5rem);font-size:calc(15px * var(--rich-text-font-scale));color:var(--chakra-colors-fg-muted);border-left:4px solid var(--chakra-colors-border);padding-left:16px}.rich-text__indent{--lexical-indent-base-value: 40px}.rich-text__textBold{font-weight:700}.rich-text__reference{font:inherit;border-bottom:1px dotted currentColor;opacity:.9;white-space:nowrap}.rich-text__textStrikethrough{text-decoration:line-through}.rich-text__textUnderlineStrikethrough{text-decoration:underline line-through}.rich-text__textSubscript{font-size:.8em;vertical-align:sub}.rich-text__textSuperscript{font-size:.8em;vertical-align:super}.rich-text__textCode{background-color:var(--chakra-colors-bg-code);padding:1px .25rem;font-family:var(--chakra-fonts-mono);font-size:.94em}.rich-text__link{color:var(--chakra-colors-blue-600);text-decoration:none;cursor:pointer}.rich-text__link:hover{text-decoration:underline}.rich-text__code{background-color:var(--chakra-colors-bg-code);font-family:var(--chakra-fonts-mono);display:block;padding:8px 8px 8px 52px;line-height:1.53;font-size:calc(13px * var(--rich-text-font-scale));margin:0;margin-top:var(--chakra-spacing-md, 1rem);margin-bottom:var(--chakra-spacing-md, 1rem);overflow-x:auto;position:relative;tab-size:2}.rich-text__code:before{content:attr(data-gutter);position:absolute;background-color:var(--chakra-colors-bg-subtle);left:0;top:0;bottom:0;border-right:1px solid var(--chakra-colors-border);padding:8px;color:var(--chakra-colors-fg-muted);white-space:pre-wrap;text-align:right;min-width:25px}.rich-text__table{border-collapse:collapse;border-spacing:0;color:var(--chakra-colors-fg);font-size:calc(var(--chakra-font-sizes-sm) * var(--rich-text-font-scale));line-height:21px;overflow-y:auto;overflow-x:auto;table-layout:fixed;width:max-content}.rich-text__tableSelection *::selection{background-color:transparent}.rich-text__tableSelected{outline:2px solid var(--chakra-colors-blue-500)}.rich-text__tableCell{border:1px solid var(--chakra-colors-border);vertical-align:top;text-align:start;padding:6px 8px;position:relative;outline:none}.rich-text__tableCellSortedIndicator{display:block;opacity:.5;position:absolute;bottom:0;left:0;width:100%;height:4px;background-color:var(--chakra-colors-bg)}.rich-text__tableCellResizer{position:absolute;right:-4px;height:100%;width:8px;cursor:ew-resize;z-index:10;top:0}.rich-text__tableCellHeader{background-color:var(--chakra-colors-bg-muted);font-weight:400;text-align:start}.rich-text__tableCellSelected{background-color:var(--chakra-colors-blue-100)}.rich-text__tableCellPrimarySelected{border:2px solid var(--chakra-colors-blue-500);display:block;height:calc(100% - 2px);position:absolute;width:calc(100% - 2px);left:-1px;top:-1px;z-index:2}.rich-text__tableCellEditing{box-shadow:var(--chakra-shadows-sm);border-radius:3px}.rich-text__tableAddColumns,.rich-text__tableAddRows{position:absolute;background-color:var(--chakra-colors-bg-muted);animation:table-controls .2s ease;border:0;cursor:pointer}.rich-text__tableAddColumns{top:0;width:20px;height:100%;right:-25px}.rich-text__tableAddColumns:after{background-size:contain;background-position:center;background-repeat:no-repeat;display:block;content:" ";position:absolute;top:0;left:0;width:100%;height:100%;opacity:.4}.rich-text__tableAddRows{bottom:-25px;width:calc(100% - 25px);height:20px;left:0}.rich-text__tableAddRows:after{background-size:contain;background-position:center;background-repeat:no-repeat;display:block;content:" ";position:absolute;top:0;left:0;width:100%;height:100%;opacity:.4}.rich-text__tableAddColumns:hover,.rich-text__tableAddRows:hover{background-color:var(--chakra-colors-blue-100)}@keyframes table-controls{0%{opacity:0}to{opacity:1}}.rich-text__tableCellResizeRuler{display:block;position:absolute;width:1px;background-color:var(--chakra-colors-blue-500);height:100%;top:0}.rich-text__tableCellActionButtonContainer{display:block;right:5px;top:6px;position:absolute;z-index:4;width:20px;height:20px}.rich-text__tableCellActionButton{background-color:var(--chakra-colors-bg-muted);display:block;border:0;border-radius:20px;width:20px;height:20px;color:var(--chakra-colors-fg);cursor:pointer}.rich-text__tableCellActionButton:hover{background-color:var(--chakra-colors-bg-subtle)}.rich-text__characterLimit{display:inline;background-color:var(--chakra-colors-red-100)}ul.rich-text__ul,ul.rich-text__checklist,ol.rich-text__ol,ol.rich-text__ol1,ol.rich-text__ol2,ol.rich-text__ol3,ol.rich-text__ol4,ol.rich-text__ol5{list-style-position:outside;padding-inline-start:var(--rich-text-list-indent);margin-top:var(--chakra-spacing-3, .75rem);margin-bottom:var(--chakra-spacing-3, .75rem)}ul.rich-text__ul{list-style-type:disc}ol.rich-text__ol,ol.rich-text__ol1{list-style-type:decimal}ol.rich-text__ol2{list-style-type:upper-alpha}ol.rich-text__ol3{list-style-type:lower-alpha}ol.rich-text__ol4{list-style-type:upper-roman}ol.rich-text__ol5{list-style-type:lower-roman}li.rich-text__listItem{display:list-item;list-style-position:outside;padding-inline-start:var(--chakra-spacing-1, .25rem)}li.rich-text__listItemUnchecked,li.rich-text__listItemChecked{position:relative;list-style-type:none;padding-left:26px;outline:none}li.rich-text__listItemUnchecked:before,li.rich-text__listItemChecked:before{content:"";position:absolute;left:0;top:2px;width:18px;height:18px;border-radius:var(--chakra-radii-xs, 4px);cursor:pointer}li.rich-text__listItemUnchecked:before{border:1px solid var(--chakra-colors-border)}li.rich-text__listItemChecked:before{background:var(--chakra-colors-fg);border:1px solid var(--chakra-colors-fg)}li.rich-text__listItemChecked:after{content:"";position:absolute;left:0;top:2px;width:18px;height:18px;cursor:pointer;background-color:var(--chakra-colors-bg);-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'/%3E%3C/svg%3E");-webkit-mask-size:12px 12px;mask-size:12px 12px;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-position:center;mask-position:center}ul.rich-text__ul :where(ul,ol),ul.rich-text__checklist :where(ul,ol),ol.rich-text__ol :where(ul,ol),ol.rich-text__ol1 :where(ul,ol),ol.rich-text__ol2 :where(ul,ol),ol.rich-text__ol3 :where(ul,ol),ol.rich-text__ol4 :where(ul,ol),ol.rich-text__ol5 :where(ul,ol){padding-inline-start:var(--rich-text-list-indent)}li.rich-text__nestedListItem{list-style-type:none;padding-inline-start:0}.rich-text__nestedListItem:before,.rich-text__nestedListItem:after{display:none}.rich-text__tokenComment{color:var(--chakra-colors-gray-500)}.rich-text__tokenPunctuation{color:var(--chakra-colors-gray-400)}.rich-text__tokenProperty{color:var(--chakra-colors-purple-600)}.rich-text__tokenSelector{color:var(--chakra-colors-green-600)}.rich-text__tokenOperator{color:var(--chakra-colors-orange-600)}.rich-text__tokenAttr{color:var(--chakra-colors-blue-600)}.rich-text__tokenVariable{color:var(--chakra-colors-yellow-600)}.rich-text__tokenFunction{color:var(--chakra-colors-pink-600)}.rich-text__mark{background:var(--chakra-colors-yellow-100);border-bottom:2px solid var(--chakra-colors-yellow-200);padding-bottom:2px}.rich-text__markOverlap{background:var(--chakra-colors-yellow-200);border-bottom:2px solid var(--chakra-colors-yellow-300)}.rich-text__mark.selected{background:var(--chakra-colors-yellow-300);border-bottom:2px solid var(--chakra-colors-yellow-400)}.rich-text__markOverlap.selected{background:var(--chakra-colors-yellow-400);border-bottom:2px solid var(--chakra-colors-yellow-400)}.rich-text__layoutContainer{display:grid;gap:var(--chakra-spacing-2, .5rem)}.rich-text__layoutItem{border-radius:var(--chakra-radii-sm)}.rich-text__layoutItem>:first-child{margin-top:0;margin-bottom:0}.draggable-block-demo__row{display:flex;gap:var(--chakra-spacing-3, .75rem);padding-block:var(--chakra-spacing-2, .5rem);padding-inline:var(--chakra-spacing-4, 1rem);position:relative;transition:box-shadow .14s ease}.rich-text__row{border-radius:var(--chakra-radii-lg)}.draggable-block-demo__row:focus-within{box-shadow:0 0 0 2px var(--chakra-colors-blue-200)}.draggable-block-demo__content,.rich-text__content{position:relative;flex:1 1 0;transition:border-color .14s ease,box-shadow .14s ease,background .14s ease}.draggable-block-demo__content--empty{color:var(--chakra-colors-fg-muted);border-style:dashed;background:var(--chakra-colors-bg-subtle)}.draggable-block-demo__handle-slot{position:absolute;inset:0;width:0;height:0;pointer-events:none}.draggable-block-demo__handle-controls{position:absolute;pointer-events:none;opacity:0;transform:translate(-10000px,-10000px);z-index:11;display:flex;flex-direction:column;align-items:center;gap:8px}.draggable-block-demo__floating-handle,.draggable-block-demo__delete-button{pointer-events:auto}.draggable-block-demo__floating-handle{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:var(--chakra-radii-sm);border:1px solid var(--chakra-colors-border);background:var(--chakra-colors-bg);color:var(--chakra-colors-fg-muted);box-shadow:var(--chakra-shadows-sm);cursor:grab;transition:box-shadow .12s ease,transform .12s ease}.draggable-block-demo__floating-handle:active{cursor:grabbing}.draggable-block-demo__handle-icon{margin-left:-4px;display:inline-block;font-size:calc(12px * var(--rich-text-font-scale));letter-spacing:-4px;-webkit-user-select:none;user-select:none}.draggable-block-demo__delete-button{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:var(--chakra-radii-sm);border:1px solid var(--chakra-colors-red-200);background:var(--chakra-colors-red-50);color:var(--chakra-colors-red-600);cursor:pointer;box-shadow:var(--chakra-shadows-xs);transition:background .12s ease,border-color .12s ease}.draggable-block-demo__delete-button:hover{background:var(--chakra-colors-red-100);border-color:var(--chakra-colors-red-300)}.draggable-block-demo__delete-icon{font-size:calc(16px * var(--rich-text-font-scale));line-height:1;-webkit-user-select:none;user-select:none}.draggable-block-demo__gap{position:absolute;left:0;width:100%;height:28px;display:flex;justify-content:center;align-items:center;pointer-events:auto;opacity:0;transition:opacity .12s ease}.draggable-block-demo__gap-line{width:100%;border-top:1px dashed var(--chakra-colors-border);position:absolute;top:50%;transform:translateY(-50%)}.draggable-block-demo__gap-button{pointer-events:auto;border:1px solid var(--chakra-colors-border);background:var(--chakra-colors-bg);border-radius:999px;width:20px;height:20px;font-size:calc(18px * var(--rich-text-font-scale));line-height:1;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--chakra-colors-fg-muted);box-shadow:var(--chakra-shadows-xs);transition:background .12s ease,color .12s ease}.draggable-block-demo__gap:hover,.draggable-block-demo__gap.is-active{opacity:1}.draggable-block-demo__gap-button:hover{background:var(--chakra-colors-bg-subtle);color:var(--chakra-colors-fg)}.draggable-block-demo__indicator{position:absolute;background:var(--chakra-colors-blue-500);pointer-events:none;border-radius:2px;z-index:12}.draggable-block-demo__indicator--horizontal{height:2px}.draggable-block-demo__indicator--vertical{width:2px}.rich-text__h1{font-family:var(--chakra-fonts-body);font-size:calc(var(--chakra-font-sizes-4xl) * var(--rich-text-font-scale));font-weight:var(--chakra-font-weights-medium);line-height:120%;color:var(--chakra-colors-fg);margin-top:2.5rem;margin-bottom:var(--chakra-spacing-md, 1rem)}.rich-text__h1:first-of-type{margin-top:0}.rich-text__h1_2{font-family:var(--chakra-fonts-body);font-size:calc(var(--chakra-font-sizes-3xl) * var(--rich-text-font-scale));font-weight:var(--chakra-font-weights-medium);line-height:120%;color:var(--chakra-colors-fg);margin-top:var(--chakra-spacing-3, .75rem);margin-bottom:var(--chakra-spacing-2, .5rem)}.rich-text__h2{font-family:var(--chakra-fonts-body);font-size:calc(var(--chakra-font-sizes-3xl) * var(--rich-text-font-scale));font-weight:var(--chakra-font-weights-medium);line-height:120%;color:var(--chakra-colors-fg, var(--chakra-colors-fg));margin-top:var(--chakra-spacing-lg, 1.5rem);margin-bottom:var(--chakra-spacing-md, 1rem)}.rich-text__h2_2{font-family:var(--chakra-fonts-body);font-size:calc(var(--chakra-font-sizes-2xl) * var(--rich-text-font-scale));font-weight:var(--chakra-font-weights-medium);line-height:120%;color:var(--chakra-colors-fg, var(--chakra-colors-fg));margin-top:var(--chakra-spacing-2, .5rem);margin-bottom:var(--chakra-spacing-1, .125rem)}.rich-text__h3{font-family:var(--chakra-fonts-body);font-size:calc(var(--chakra-font-sizes-lg) * var(--rich-text-font-scale));font-weight:var(--chakra-font-weights-medium);line-height:100%;color:var(--chakra-colors-fg, var(--chakra-colors-fg));margin-top:var(--chakra-spacing-lg, 1.5rem);margin-bottom:var(--chakra-spacing-md, 1rem)}.rich-text__h3_2{font-family:var(--chakra-fonts-body);font-size:calc(var(--chakra-font-sizes-lg) * var(--rich-text-font-scale));font-weight:var(--chakra-font-weights-medium);line-height:100%;color:var(--chakra-colors-fg, var(--chakra-colors-fg));margin-top:var(--chakra-spacing-2, .5rem)}.rich-text__p{font-family:var(--chakra-fonts-body);font-size:calc(var(--chakra-font-sizes-md) * var(--rich-text-font-scale));line-height:171%;letter-spacing:.14px;margin:0;margin-top:var(--chakra-spacing-3, .75rem);margin-bottom:var(--chakra-spacing-3, .75rem)}.rich-text__p:first-child{margin-top:0}.rich-text__p:only-child{margin-bottom:0}.rich-text[data-rich-message=true] .rich-text__quote{margin-top:var(--chakra-spacing-3, .75rem);margin-left:var(--chakra-spacing-3, .75rem);margin-bottom:var(--chakra-spacing-3, .75rem)}.rich-text[data-rich-message=true] .rich-text__code{margin-top:8px;margin-bottom:8px}.rich-text[data-rich-message=true] .rich-text__h1{font-size:calc(var(--chakra-font-sizes-3xl) * var(--rich-text-font-scale));margin-top:var(--chakra-spacing-5, 1.5rem);margin-bottom:var(--chakra-spacing-4, 1rem)}.rich-text[data-rich-message=true] .rich-text__h2{font-size:calc(var(--chakra-font-sizes-2xl) * var(--rich-text-font-scale));margin-top:var(--chakra-spacing-4, 1rem);margin-bottom:var(--chakra-spacing-3, .75rem)}.rich-text[data-rich-message=true] .rich-text__h3{margin-top:var(--chakra-spacing-4, 1rem);margin-bottom:var(--chakra-spacing-3, .75rem)}.rich-text__p2{font-family:var(--chakra-fonts-body);font-size:calc(var(--chakra-font-sizes-md) * var(--rich-text-font-scale));line-height:171%;letter-spacing:.14px;margin:0}.rich-text__textUnderline{text-decoration:underline}.rich-text__textItalic{font-style:italic}span.editor-equation{display:inline-block}.editor-equation span{cursor:inherit}.editor-equation{-webkit-user-select:none;user-select:none}.katex-display{overflow-x:auto;overflow-y:hidden}.code-block-actions{z-index:1001;opacity:.95}.code-block-actions button{box-shadow:var(--chakra-shadows-sm)}.floating-text-format-toolbar{display:flex;position:absolute;top:0;left:0;z-index:1000;opacity:0;pointer-events:none;background-color:var(--chakra-colors-bg);border-radius:8px;border:1px solid var(--chakra-colors-border-muted);box-shadow:0 5px 10px #0000001a;transition:opacity .2s;will-change:transform;padding:4px;gap:2px}.floating-text-format-toolbar.active{opacity:1;pointer-events:auto}.floating-text-format-toolbar button[data-active]{background-color:var(--chakra-colors-bg-accent-primary-medium);color:var(--chakra-colors-text-selectable-primary)}.link-editor{position:absolute;top:0;left:0;z-index:1001;width:320px;opacity:0;pointer-events:none;transition:opacity .2s;will-change:transform}.link-editor.active{opacity:1;pointer-events:auto;background-color:var(--chakra-colors-bg);border-radius:8px;border:1px solid var(--chakra-colors-border-muted);box-shadow:0 5px 10px #0000001a}.link-editor-content{width:100%}.link-editor-url-field{flex:1;min-width:0}.rich-text__p--no-margin{margin:0}
1
+ .rich-text__ltr{text-align:left}.rich-text__rtl{text-align:right}.rich-text{--rich-text-font-scale: 1;--rich-text-list-indent: 1.5rem;font-size:calc(1rem * var(--rich-text-font-scale))}.rich-text[data-rich-message=true]{--rich-text-font-scale: .9}.rich-text[data-rich-message=true] .rich-text__p:last-child{margin-bottom:0}.rich-text__paragraph{margin:0;position:relative}.rich-text__quote{margin:0;margin-top:var(--chakra-spacing-xl, 1.5rem);margin-left:var(--chakra-spacing-sm, .75rem);margin-bottom:var(--chakra-spacing-xl, 1.5rem);font-size:calc(15px * var(--rich-text-font-scale));color:var(--chakra-colors-fg-muted);border-left:4px solid var(--chakra-colors-border);padding-left:16px}.rich-text__indent{--lexical-indent-base-value: 40px}.rich-text__textBold{font-weight:700}.rich-text__reference{font:inherit;border-bottom:1px dotted currentColor;opacity:.9;white-space:nowrap}.rich-text__textStrikethrough{text-decoration:line-through}.rich-text__textUnderlineStrikethrough{text-decoration:underline line-through}.rich-text__textSubscript{font-size:.8em;vertical-align:sub}.rich-text__textSuperscript{font-size:.8em;vertical-align:super}.rich-text__textCode{background-color:var(--chakra-colors-bg-code);padding:1px .25rem;font-family:var(--chakra-fonts-mono);font-size:.94em}.rich-text__link{color:var(--chakra-colors-blue-600);text-decoration:none;cursor:pointer}.rich-text__link:hover{text-decoration:underline}.rich-text__code{background-color:var(--chakra-colors-bg-code);font-family:var(--chakra-fonts-mono);display:block;padding:8px 8px 8px 52px;line-height:1.53;font-size:calc(13px * var(--rich-text-font-scale));margin:0;margin-top:var(--chakra-spacing-md, 1rem);margin-bottom:var(--chakra-spacing-md, 1rem);overflow-x:auto;position:relative;tab-size:2}.rich-text__code:before{content:attr(data-gutter);position:absolute;background-color:var(--chakra-colors-bg-subtle);left:0;top:0;bottom:0;border-right:1px solid var(--chakra-colors-border);padding:8px;color:var(--chakra-colors-fg-muted);white-space:pre-wrap;text-align:right;min-width:25px}.rich-text__table{border-collapse:collapse;border-spacing:0;color:var(--chakra-colors-fg);font-size:calc(var(--chakra-font-sizes-sm) * var(--rich-text-font-scale));line-height:21px;overflow-y:auto;overflow-x:auto;table-layout:fixed;width:max-content}.rich-text__tableSelection *::selection{background-color:transparent}.rich-text__tableSelected{outline:2px solid var(--chakra-colors-blue-500)}.rich-text__tableCell{border:1px solid var(--chakra-colors-border);vertical-align:top;text-align:start;padding:6px 8px;position:relative;outline:none}.rich-text__tableCellSortedIndicator{display:block;opacity:.5;position:absolute;bottom:0;left:0;width:100%;height:4px;background-color:var(--chakra-colors-bg)}.rich-text__tableCellResizer{position:absolute;right:-4px;height:100%;width:8px;cursor:ew-resize;z-index:10;top:0}.rich-text__tableCellHeader{background-color:var(--chakra-colors-bg-muted);font-weight:400;text-align:start}.rich-text__tableCellSelected{background-color:var(--chakra-colors-blue-100)}.rich-text__tableCellPrimarySelected{border:2px solid var(--chakra-colors-blue-500);display:block;height:calc(100% - 2px);position:absolute;width:calc(100% - 2px);left:-1px;top:-1px;z-index:2}.rich-text__tableCellEditing{box-shadow:var(--chakra-shadows-sm);border-radius:3px}.rich-text__tableAddColumns,.rich-text__tableAddRows{position:absolute;background-color:var(--chakra-colors-bg-muted);animation:table-controls .2s ease;border:0;cursor:pointer}.rich-text__tableAddColumns{top:0;width:20px;height:100%;right:-25px}.rich-text__tableAddColumns:after{background-size:contain;background-position:center;background-repeat:no-repeat;display:block;content:" ";position:absolute;top:0;left:0;width:100%;height:100%;opacity:.4}.rich-text__tableAddRows{bottom:-25px;width:calc(100% - 25px);height:20px;left:0}.rich-text__tableAddRows:after{background-size:contain;background-position:center;background-repeat:no-repeat;display:block;content:" ";position:absolute;top:0;left:0;width:100%;height:100%;opacity:.4}.rich-text__tableAddColumns:hover,.rich-text__tableAddRows:hover{background-color:var(--chakra-colors-blue-100)}@keyframes table-controls{0%{opacity:0}to{opacity:1}}.rich-text__tableCellResizeRuler{display:block;position:absolute;width:1px;background-color:var(--chakra-colors-blue-500);height:100%;top:0}.rich-text__tableCellActionButtonContainer{display:block;right:5px;top:6px;position:absolute;z-index:4;width:20px;height:20px}.rich-text__tableCellActionButton{background-color:var(--chakra-colors-bg-muted);display:block;border:0;border-radius:20px;width:20px;height:20px;color:var(--chakra-colors-fg);cursor:pointer}.rich-text__tableCellActionButton:hover{background-color:var(--chakra-colors-bg-subtle)}.rich-text__characterLimit{display:inline;background-color:var(--chakra-colors-red-100)}ul.rich-text__ul,ul.rich-text__checklist,ol.rich-text__ol,ol.rich-text__ol1,ol.rich-text__ol2,ol.rich-text__ol3,ol.rich-text__ol4,ol.rich-text__ol5{list-style-position:outside;padding-inline-start:var(--rich-text-list-indent);margin-top:var(--chakra-spacing-3, .75rem);margin-bottom:var(--chakra-spacing-3, .75rem)}ul.rich-text__ul{list-style-type:disc}ol.rich-text__ol,ol.rich-text__ol1{list-style-type:decimal}ol.rich-text__ol2{list-style-type:upper-alpha}ol.rich-text__ol3{list-style-type:lower-alpha}ol.rich-text__ol4{list-style-type:upper-roman}ol.rich-text__ol5{list-style-type:lower-roman}li.rich-text__listItem{display:list-item;list-style-position:outside;padding-inline-start:var(--chakra-spacing-1, .25rem)}li.rich-text__listItemUnchecked,li.rich-text__listItemChecked{position:relative;list-style-type:none;padding-left:24px;outline:none}li.rich-text__listItemUnchecked:before,li.rich-text__listItemChecked:before{content:"";position:absolute;left:0;top:3px;width:16px;height:16px;border-radius:var(--chakra-radii-xs, 4px);cursor:pointer}li.rich-text__listItemUnchecked:before{border:1px solid var(--chakra-colors-border)}li.rich-text__listItemChecked:before{background:var(--chakra-colors-fg);border:1px solid var(--chakra-colors-fg)}li.rich-text__listItemChecked:after{content:"";position:absolute;left:0;top:3px;width:16px;height:16px;cursor:pointer;background-color:var(--chakra-colors-bg);-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'/%3E%3C/svg%3E");-webkit-mask-size:10px 10px;mask-size:10px 10px;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-position:center;mask-position:center}ul.rich-text__ul :where(ul,ol),ul.rich-text__checklist :where(ul,ol),ol.rich-text__ol :where(ul,ol),ol.rich-text__ol1 :where(ul,ol),ol.rich-text__ol2 :where(ul,ol),ol.rich-text__ol3 :where(ul,ol),ol.rich-text__ol4 :where(ul,ol),ol.rich-text__ol5 :where(ul,ol){padding-inline-start:var(--rich-text-list-indent)}li.rich-text__nestedListItem{list-style-type:none;padding-inline-start:0}.rich-text__nestedListItem:before,.rich-text__nestedListItem:after{display:none}.rich-text__tokenComment{color:var(--chakra-colors-gray-500)}.rich-text__tokenPunctuation{color:var(--chakra-colors-gray-400)}.rich-text__tokenProperty{color:var(--chakra-colors-purple-600)}.rich-text__tokenSelector{color:var(--chakra-colors-green-600)}.rich-text__tokenOperator{color:var(--chakra-colors-orange-600)}.rich-text__tokenAttr{color:var(--chakra-colors-blue-600)}.rich-text__tokenVariable{color:var(--chakra-colors-yellow-600)}.rich-text__tokenFunction{color:var(--chakra-colors-pink-600)}.rich-text__mark{background:var(--chakra-colors-yellow-100);border-bottom:2px solid var(--chakra-colors-yellow-200);padding-bottom:2px}.rich-text__markOverlap{background:var(--chakra-colors-yellow-200);border-bottom:2px solid var(--chakra-colors-yellow-300)}.rich-text__mark.selected{background:var(--chakra-colors-yellow-300);border-bottom:2px solid var(--chakra-colors-yellow-400)}.rich-text__markOverlap.selected{background:var(--chakra-colors-yellow-400);border-bottom:2px solid var(--chakra-colors-yellow-400)}.rich-text__layoutContainer{display:grid;gap:var(--chakra-spacing-2, .5rem)}.rich-text__layoutItem{border-radius:var(--chakra-radii-sm)}.rich-text__layoutItem>:first-child{margin-top:0;margin-bottom:0}.draggable-block-demo__row{display:flex;gap:var(--chakra-spacing-3, .75rem);padding-block:var(--chakra-spacing-2, .5rem);padding-inline:var(--chakra-spacing-4, 1rem);position:relative;transition:box-shadow .14s ease}.rich-text__row{border-radius:var(--chakra-radii-lg)}.draggable-block-demo__row:focus-within{box-shadow:0 0 0 2px var(--chakra-colors-blue-200)}.draggable-block-demo__content,.rich-text__content{position:relative;flex:1 1 0;transition:border-color .14s ease,box-shadow .14s ease,background .14s ease}.draggable-block-demo__content--empty{color:var(--chakra-colors-fg-muted);border-style:dashed;background:var(--chakra-colors-bg-subtle)}.draggable-block-demo__handle-slot{position:absolute;inset:0;width:0;height:0;pointer-events:none}.draggable-block-demo__handle-controls{position:absolute;pointer-events:none;opacity:0;transform:translate(-10000px,-10000px);z-index:11;display:flex;flex-direction:column;align-items:center;gap:8px}.draggable-block-demo__floating-handle,.draggable-block-demo__delete-button{pointer-events:auto}.draggable-block-demo__floating-handle{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:var(--chakra-radii-sm);border:1px solid var(--chakra-colors-border);background:var(--chakra-colors-bg);color:var(--chakra-colors-fg-muted);box-shadow:var(--chakra-shadows-sm);cursor:grab;transition:box-shadow .12s ease,transform .12s ease}.draggable-block-demo__floating-handle:active{cursor:grabbing}.draggable-block-demo__handle-icon{margin-left:-4px;display:inline-block;font-size:calc(12px * var(--rich-text-font-scale));letter-spacing:-4px;-webkit-user-select:none;user-select:none}.draggable-block-demo__delete-button{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:var(--chakra-radii-sm);border:1px solid var(--chakra-colors-red-200);background:var(--chakra-colors-red-50);color:var(--chakra-colors-red-600);cursor:pointer;box-shadow:var(--chakra-shadows-xs);transition:background .12s ease,border-color .12s ease}.draggable-block-demo__delete-button:hover{background:var(--chakra-colors-red-100);border-color:var(--chakra-colors-red-300)}.draggable-block-demo__delete-icon{font-size:calc(16px * var(--rich-text-font-scale));line-height:1;-webkit-user-select:none;user-select:none}.draggable-block-demo__gap{position:absolute;left:0;width:100%;height:28px;display:flex;justify-content:center;align-items:center;pointer-events:auto;opacity:0;transition:opacity .12s ease}.draggable-block-demo__gap-line{width:100%;border-top:1px dashed var(--chakra-colors-border);position:absolute;top:50%;transform:translateY(-50%)}.draggable-block-demo__gap-button{pointer-events:auto;border:1px solid var(--chakra-colors-border);background:var(--chakra-colors-bg);border-radius:999px;width:20px;height:20px;font-size:calc(18px * var(--rich-text-font-scale));line-height:1;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--chakra-colors-fg-muted);box-shadow:var(--chakra-shadows-xs);transition:background .12s ease,color .12s ease}.draggable-block-demo__gap:hover,.draggable-block-demo__gap.is-active{opacity:1}.draggable-block-demo__gap-button:hover{background:var(--chakra-colors-bg-subtle);color:var(--chakra-colors-fg)}.draggable-block-demo__indicator{position:absolute;background:var(--chakra-colors-blue-500);pointer-events:none;border-radius:2px;z-index:12}.draggable-block-demo__indicator--horizontal{height:2px}.draggable-block-demo__indicator--vertical{width:2px}.rich-text__h1{font-family:var(--chakra-fonts-body);font-size:calc(var(--chakra-font-sizes-4xl) * var(--rich-text-font-scale));font-weight:var(--chakra-font-weights-medium);line-height:120%;color:var(--chakra-colors-fg);margin-top:2.5rem;margin-bottom:var(--chakra-spacing-md, 1rem)}.rich-text__h1:first-of-type{margin-top:0}.rich-text__h1_2{font-family:var(--chakra-fonts-body);font-size:calc(var(--chakra-font-sizes-3xl) * var(--rich-text-font-scale));font-weight:var(--chakra-font-weights-medium);line-height:120%;color:var(--chakra-colors-fg);margin-top:var(--chakra-spacing-3, .75rem);margin-bottom:var(--chakra-spacing-2, .5rem)}.rich-text__h2{font-family:var(--chakra-fonts-body);font-size:calc(var(--chakra-font-sizes-3xl) * var(--rich-text-font-scale));font-weight:var(--chakra-font-weights-medium);line-height:120%;color:var(--chakra-colors-fg, var(--chakra-colors-fg));margin-top:var(--chakra-spacing-lg, 1.5rem);margin-bottom:var(--chakra-spacing-md, 1rem)}.rich-text__h2_2{font-family:var(--chakra-fonts-body);font-size:calc(var(--chakra-font-sizes-2xl) * var(--rich-text-font-scale));font-weight:var(--chakra-font-weights-medium);line-height:120%;color:var(--chakra-colors-fg, var(--chakra-colors-fg));margin-top:var(--chakra-spacing-2, .5rem);margin-bottom:var(--chakra-spacing-1, .125rem)}.rich-text__h3{font-family:var(--chakra-fonts-body);font-size:calc(var(--chakra-font-sizes-lg) * var(--rich-text-font-scale));font-weight:var(--chakra-font-weights-medium);line-height:100%;color:var(--chakra-colors-fg, var(--chakra-colors-fg));margin-top:var(--chakra-spacing-lg, 1.5rem);margin-bottom:var(--chakra-spacing-md, 1rem)}.rich-text__h3_2{font-family:var(--chakra-fonts-body);font-size:calc(var(--chakra-font-sizes-lg) * var(--rich-text-font-scale));font-weight:var(--chakra-font-weights-medium);line-height:100%;color:var(--chakra-colors-fg, var(--chakra-colors-fg));margin-top:var(--chakra-spacing-2, .5rem)}.rich-text__p{font-family:var(--chakra-fonts-body);font-size:calc(var(--chakra-font-sizes-md) * var(--rich-text-font-scale));line-height:171%;letter-spacing:.14px;margin:0;margin-top:var(--chakra-spacing-3, .75rem);margin-bottom:var(--chakra-spacing-3, .75rem)}.rich-text__p:first-child{margin-top:0}.rich-text__p:only-child{margin-bottom:0}.rich-text[data-rich-message=true] .rich-text__quote{margin-top:var(--chakra-spacing-3, .75rem);margin-left:var(--chakra-spacing-3, .75rem);margin-bottom:var(--chakra-spacing-3, .75rem)}.rich-text[data-rich-message=true] .rich-text__code{margin-top:8px;margin-bottom:8px}.rich-text[data-rich-message=true] .rich-text__h1{font-size:calc(var(--chakra-font-sizes-3xl) * var(--rich-text-font-scale));margin-top:var(--chakra-spacing-5, 1.5rem);margin-bottom:var(--chakra-spacing-4, 1rem)}.rich-text[data-rich-message=true] .rich-text__h2{font-size:calc(var(--chakra-font-sizes-2xl) * var(--rich-text-font-scale));margin-top:var(--chakra-spacing-4, 1rem);margin-bottom:var(--chakra-spacing-3, .75rem)}.rich-text[data-rich-message=true] .rich-text__h3{margin-top:var(--chakra-spacing-4, 1rem);margin-bottom:var(--chakra-spacing-3, .75rem)}.rich-text__p2{font-family:var(--chakra-fonts-body);font-size:calc(var(--chakra-font-sizes-md) * var(--rich-text-font-scale));line-height:171%;letter-spacing:.14px;margin:0}.rich-text__textUnderline{text-decoration:underline}.rich-text__textItalic{font-style:italic}span.editor-equation{display:inline-block}.editor-equation span{cursor:inherit}.editor-equation{-webkit-user-select:none;user-select:none}.katex-display{overflow-x:auto;overflow-y:hidden}.code-block-actions{z-index:1001;opacity:.95}.code-block-actions button{box-shadow:var(--chakra-shadows-sm)}.floating-text-format-toolbar{display:flex;position:absolute;top:0;left:0;z-index:1000;opacity:0;pointer-events:none;background-color:var(--chakra-colors-bg);border-radius:8px;border:1px solid var(--chakra-colors-border-muted);box-shadow:0 5px 10px #0000001a;transition:opacity .2s;will-change:transform;padding:4px;gap:2px}.floating-text-format-toolbar.active{opacity:1;pointer-events:auto}.floating-text-format-toolbar button[data-active]{background-color:var(--chakra-colors-bg-accent-primary-medium);color:var(--chakra-colors-text-selectable-primary)}.link-editor{position:absolute;top:0;left:0;z-index:1001;width:320px;opacity:0;pointer-events:none;transition:opacity .2s;will-change:transform}.link-editor.active{opacity:1;pointer-events:auto;background-color:var(--chakra-colors-bg);border-radius:8px;border:1px solid var(--chakra-colors-border-muted);box-shadow:0 5px 10px #0000001a}.link-editor-content{width:100%}.link-editor-url-field{flex:1;min-width:0}.rich-text__p--no-margin{margin:0}
@@ -1,3 +1,5 @@
1
1
  import { ThemePreferenceOption } from '../../utils/apply-theme-preference';
2
2
  export declare const monokaiThemePreference: ThemePreferenceOption;
3
3
  export declare const customThemePreferences: ThemePreferenceOption[];
4
+ export type { MonacoThemeData, VsCodeColorTheme } from './vscode-theme';
5
+ export { createMonacoThemeFromVsCodeTheme, createThemePreferenceFromVsCodeTheme } from './vscode-theme';
@@ -0,0 +1,32 @@
1
+ import { ThemePreferenceMode, ThemePreferenceOption } from '../../utils/apply-theme-preference';
2
+ export interface VsCodeColorTheme {
3
+ colors?: Record<string, string>;
4
+ tokenColors?: VsCodeTokenColor[];
5
+ }
6
+ interface VsCodeTokenColor {
7
+ scope?: string | string[];
8
+ settings?: {
9
+ foreground?: string;
10
+ fontStyle?: string;
11
+ };
12
+ }
13
+ export interface MonacoThemeData {
14
+ base: "vs" | "vs-dark";
15
+ inherit: true;
16
+ rules: {
17
+ token: string;
18
+ foreground?: string;
19
+ fontStyle?: string;
20
+ }[];
21
+ colors: Record<string, string>;
22
+ }
23
+ export declare const createThemePreferenceFromVsCodeTheme: (input: {
24
+ id: string;
25
+ mode: ThemePreferenceMode;
26
+ theme: VsCodeColorTheme;
27
+ }) => ThemePreferenceOption;
28
+ export declare const createMonacoThemeFromVsCodeTheme: (input: {
29
+ mode: ThemePreferenceMode;
30
+ theme: VsCodeColorTheme;
31
+ }) => MonacoThemeData;
32
+ export {};
@@ -1,2 +1,3 @@
1
- export { customThemePreferences, monokaiThemePreference } from './custom';
1
+ export type { MonacoThemeData, VsCodeColorTheme } from './custom';
2
+ export { createMonacoThemeFromVsCodeTheme, createThemePreferenceFromVsCodeTheme, customThemePreferences, monokaiThemePreference, } from './custom';
2
3
  export { default as psTheme } from './theme';
@@ -1 +1 @@
1
- export declare const dialogSlotRecipe: import('@chakra-ui/react').SlotRecipeDefinition<"content" | "body" | "footer" | "header" | "title" | "trigger" | "positioner" | "description" | "backdrop" | "closeTrigger", import('@chakra-ui/react').SlotRecipeVariantRecord<"content" | "body" | "footer" | "header" | "title" | "trigger" | "positioner" | "description" | "backdrop" | "closeTrigger">>;
1
+ export declare const dialogSlotRecipe: import('@chakra-ui/react').SlotRecipeDefinition<"content" | "body" | "footer" | "header" | "title" | "trigger" | "positioner" | "description" | "closeTrigger" | "backdrop", import('@chakra-ui/react').SlotRecipeVariantRecord<"content" | "body" | "footer" | "header" | "title" | "trigger" | "positioner" | "description" | "closeTrigger" | "backdrop">>;
@@ -1 +1 @@
1
- export declare const drawerSlotRecipe: import('@chakra-ui/react').SlotRecipeDefinition<"content" | "body" | "footer" | "header" | "title" | "trigger" | "positioner" | "description" | "backdrop" | "closeTrigger", import('@chakra-ui/react').SlotRecipeVariantRecord<"content" | "body" | "footer" | "header" | "title" | "trigger" | "positioner" | "description" | "backdrop" | "closeTrigger">>;
1
+ export declare const drawerSlotRecipe: import('@chakra-ui/react').SlotRecipeDefinition<"content" | "body" | "footer" | "header" | "title" | "trigger" | "positioner" | "description" | "closeTrigger" | "backdrop", import('@chakra-ui/react').SlotRecipeVariantRecord<"content" | "body" | "footer" | "header" | "title" | "trigger" | "positioner" | "description" | "closeTrigger" | "backdrop">>;
@@ -1 +1 @@
1
- export declare const menuSlotRecipe: import('@chakra-ui/react').SlotRecipeDefinition<"content" | "separator" | "trigger" | "arrow" | "arrowTip" | "positioner" | "item" | "indicator" | "contextTrigger" | "itemGroup" | "itemGroupLabel" | "itemIndicator" | "itemText" | "triggerItem" | "itemCommand", import('@chakra-ui/react').SlotRecipeVariantRecord<"content" | "separator" | "trigger" | "arrow" | "arrowTip" | "positioner" | "item" | "indicator" | "contextTrigger" | "itemGroup" | "itemGroupLabel" | "itemIndicator" | "itemText" | "triggerItem" | "itemCommand">>;
1
+ export declare const menuSlotRecipe: import('@chakra-ui/react').SlotRecipeDefinition<"content" | "separator" | "trigger" | "arrow" | "arrowTip" | "positioner" | "item" | "indicator" | "itemIndicator" | "itemGroup" | "contextTrigger" | "itemGroupLabel" | "itemText" | "triggerItem" | "itemCommand", import('@chakra-ui/react').SlotRecipeVariantRecord<"content" | "separator" | "trigger" | "arrow" | "arrowTip" | "positioner" | "item" | "indicator" | "itemIndicator" | "itemGroup" | "contextTrigger" | "itemGroupLabel" | "itemText" | "triggerItem" | "itemCommand">>;
@@ -0,0 +1,18 @@
1
+ export declare const tabsSlotRecipe: import('@chakra-ui/react').SlotRecipeDefinition<"content" | "list" | "root" | "trigger" | "indicator" | "contentGroup", {
2
+ variant: {
3
+ subtle: {
4
+ trigger: {
5
+ color: "fg.muted";
6
+ bg: "transparent";
7
+ _hover: {
8
+ bg: "bg.hover";
9
+ color: "fg";
10
+ };
11
+ _selected: {
12
+ bg: "bg.muted";
13
+ color: "fg";
14
+ };
15
+ };
16
+ };
17
+ };
18
+ }>;