@pstdio/ui 0.4.0 → 0.5.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (134) hide show
  1. package/dist/MermaidComponent-x3aKzNXm.js +124 -0
  2. package/dist/MermaidComponent-x3aKzNXm.js.map +1 -0
  3. package/dist/chat-ui.js +1364 -795
  4. package/dist/chat-ui.js.map +1 -1
  5. package/dist/components/chat-ui/agent-types.d.ts +4 -0
  6. package/dist/components/chat-ui/components/chat-input-actions.d.ts +10 -0
  7. package/dist/components/chat-ui/components/chat-input-question-prompt.d.ts +33 -0
  8. package/dist/components/chat-ui/components/chat-input.d.ts +3 -1
  9. package/dist/components/chat-ui/components/chat-panel-sticky-user-message.d.ts +9 -0
  10. package/dist/components/chat-ui/components/chat-panel.d.ts +4 -1
  11. package/dist/components/chat-ui/components/message-parts-renderer.d.ts +1 -0
  12. package/dist/components/chat-ui/components/timeline-tool-blocks.d.ts +14 -0
  13. package/dist/components/chat-ui/components/timeline.d.ts +22 -0
  14. package/dist/components/chat-ui/components/tool-invocation-timeline.d.ts +2 -1
  15. package/dist/components/chat-ui/index.d.ts +1 -0
  16. package/dist/components/chat-ui/tool-rendering/apply-patch-renderer.d.ts +2 -0
  17. package/dist/components/chat-ui/tool-rendering/build-timeline.d.ts +2 -2
  18. package/dist/components/chat-ui/tool-rendering/default-renderers.d.ts +10 -7
  19. package/dist/components/chat-ui/tool-rendering/edit-renderer.d.ts +2 -0
  20. package/dist/components/chat-ui/tool-rendering/question-renderer.d.ts +10 -0
  21. package/dist/components/chat-ui/tool-rendering/shared.d.ts +52 -0
  22. package/dist/components/chat-ui/tool-rendering/standard-renderers.d.ts +6 -0
  23. package/dist/components/chat-ui/tool-rendering/todowrite-renderer.d.ts +10 -0
  24. package/dist/components/chat-ui/utils/get-icon.d.ts +2 -0
  25. package/dist/components/chat-ui/utils/tool-name.d.ts +2 -0
  26. package/dist/components/menu-item.d.ts +2 -1
  27. package/dist/components/radio.d.ts +8 -0
  28. package/dist/components/resource-context-menu.d.ts +20 -0
  29. package/dist/components/rich-text/prompt-input/plugins/ReferencePlugin/nodes/ReferenceNode/ReferenceNode.d.ts +2 -1
  30. package/dist/components/rich-text/shared/plugins/CodePlugin/CodeBlockActionsPlugin.d.ts +4 -0
  31. package/dist/components/rich-text/shared/plugins/CodePlugin/CodeBlockPlugin.d.ts +2 -0
  32. package/dist/components/rich-text/shared/plugins/CodePlugin/CodeHighlightingPlugin.d.ts +1 -0
  33. package/dist/components/rich-text/shared/plugins/FloatingTextFormatToolbarPlugin/should-show-floating-toolbar.d.ts +11 -0
  34. package/dist/components/rich-text/shared/plugins/MermaidPlugin/MermaidComponent.d.ts +6 -0
  35. package/dist/components/rich-text/shared/plugins/MermaidPlugin/MermaidNode.d.ts +23 -0
  36. package/dist/components/rich-text/shared/plugins/MermaidPlugin/index.d.ts +1 -0
  37. package/dist/components/rich-text/utils/markdown.d.ts +1 -0
  38. package/dist/components/session-indicator.d.ts +1 -1
  39. package/dist/components/sidebar-tree/sidebar-tree.types.d.ts +5 -1
  40. package/dist/components/tickets/tag-badge.d.ts +10 -0
  41. package/dist/components/tickets/tag-option-icon.d.ts +2 -0
  42. package/dist/components/tickets/ticket-board.d.ts +8 -2
  43. package/dist/components/tickets/ticket-card.d.ts +10 -0
  44. package/dist/components/tickets/ticket-grouping.d.ts +2 -2
  45. package/dist/components/tickets/ticket-list.d.ts +9 -1
  46. package/dist/components/tickets/tickets-workspace.d.ts +11 -3
  47. package/dist/components/tickets/types.d.ts +22 -5
  48. package/dist/components/tickets/workspace-helpers.d.ts +18 -0
  49. package/dist/get-file-type-icon-Bwqf1WXA.js +101 -0
  50. package/dist/get-file-type-icon-Bwqf1WXA.js.map +1 -0
  51. package/dist/index.d.ts +6 -2
  52. package/dist/index.js +1886 -1583
  53. package/dist/index.js.map +1 -1
  54. package/dist/radio-C42qncrD.js +236 -0
  55. package/dist/radio-C42qncrD.js.map +1 -0
  56. package/dist/rich-message-CoXTd5kw.js +1512 -0
  57. package/dist/rich-message-CoXTd5kw.js.map +1 -0
  58. package/dist/rich-text.js +414 -255
  59. package/dist/rich-text.js.map +1 -1
  60. package/dist/style.css +1 -1
  61. package/dist/theme/recipes/button.d.ts +6 -0
  62. package/dist/{theme-D0VvFB1Y.js → theme-BLGUwVOD.js} +7 -1
  63. package/dist/theme-BLGUwVOD.js.map +1 -0
  64. package/dist/theme.js +1 -1
  65. package/package.json +3 -1
  66. package/dist/components/attached-panel.utils.test.d.ts +0 -1
  67. package/dist/components/breadcrumb.stories.d.ts +0 -25
  68. package/dist/components/button.stories.d.ts +0 -18
  69. package/dist/components/chat-ui/components/ai-conversation.stories.d.ts +0 -6
  70. package/dist/components/chat-ui/components/ai-message.stories.d.ts +0 -6
  71. package/dist/components/chat-ui/components/ai-response.stories.d.ts +0 -7
  72. package/dist/components/chat-ui/components/attachment-list.stories.d.ts +0 -6
  73. package/dist/components/chat-ui/components/chat-input.stories.d.ts +0 -7
  74. package/dist/components/chat-ui/components/chat-panel-alerts.stories.d.ts +0 -9
  75. package/dist/components/chat-ui/components/chat-panel.stories.d.ts +0 -10
  76. package/dist/components/chat-ui/components/message-parts-renderer.stories.d.ts +0 -9
  77. package/dist/components/chat-ui/components/model-swap-separator.stories.d.ts +0 -6
  78. package/dist/components/chat-ui/components/tool-invocation-timeline.stories.d.ts +0 -6
  79. package/dist/components/chat-ui/components/workspace-hub.stories.d.ts +0 -6
  80. package/dist/components/checkbox.stories.d.ts +0 -15
  81. package/dist/components/column-file-browser.stories.d.ts +0 -15
  82. package/dist/components/data-table/data-table.stories.d.ts +0 -33
  83. package/dist/components/delete-confirmation-modal.stories.d.ts +0 -11
  84. package/dist/components/diff-bubble.stories.d.ts +0 -13
  85. package/dist/components/diff-drawer.stories.d.ts +0 -8
  86. package/dist/components/diff-view-adapter.test.d.ts +0 -1
  87. package/dist/components/drawer-inline.stories.d.ts +0 -8
  88. package/dist/components/empty-state.stories.d.ts +0 -34
  89. package/dist/components/file-selector.stories.d.ts +0 -17
  90. package/dist/components/folder-picker-dialog.stories.d.ts +0 -11
  91. package/dist/components/info-card.stories.d.ts +0 -41
  92. package/dist/components/item-section.stories.d.ts +0 -17
  93. package/dist/components/layout.stories.d.ts +0 -11
  94. package/dist/components/menu-item.stories.d.ts +0 -72
  95. package/dist/components/open-source-notices-screen.stories.d.ts +0 -12
  96. package/dist/components/param-editor-horizontal.stories.d.ts +0 -19
  97. package/dist/components/param-editor.stories.d.ts +0 -24
  98. package/dist/components/properties.stories.d.ts +0 -17
  99. package/dist/components/resource-badge.stories.d.ts +0 -7
  100. package/dist/components/rich-text/collaborative-markdown-editor/collaborative-markdown-editor.stories.d.ts +0 -9
  101. package/dist/components/rich-text/markdown-editor/markdown-editor.stories.d.ts +0 -7
  102. package/dist/components/rich-text/prompt-input/prompt-input.stories.d.ts +0 -8
  103. package/dist/components/rich-text/rich-message/rich-message.stories.d.ts +0 -6
  104. package/dist/components/rich-text/shared/nodes/DataTableNode.stories.d.ts +0 -7
  105. package/dist/components/rich-text/shared/plugins/CodePlugin/CodeNode.d.ts +0 -21
  106. package/dist/components/rich-text/shared/plugins/CodePlugin/CodeNode.test.d.ts +0 -1
  107. package/dist/components/rich-text/shared/transformers/markdown-transformers.test.d.ts +0 -1
  108. package/dist/components/scroll-area.stories.d.ts +0 -7
  109. package/dist/components/searchable-menu.stories.d.ts +0 -8
  110. package/dist/components/session-indicator.stories.d.ts +0 -12
  111. package/dist/components/sidebar/sidebar.store.test.d.ts +0 -1
  112. package/dist/components/sidebar/sidebar.stories.d.ts +0 -11
  113. package/dist/components/sidebar-tree/sidebar-tree-searchable-action-menu.stories.d.ts +0 -6
  114. package/dist/components/sidebar-tree/sidebar-tree.stories.d.ts +0 -13
  115. package/dist/components/slider.stories.d.ts +0 -15
  116. package/dist/components/style-guide.stories.d.ts +0 -23
  117. package/dist/components/switch.stories.d.ts +0 -16
  118. package/dist/components/tickets/display-menu.stories.d.ts +0 -6
  119. package/dist/components/tickets/filter-menu.stories.d.ts +0 -6
  120. package/dist/components/tickets/ticket-board.stories.d.ts +0 -5
  121. package/dist/components/tickets/ticket-card.stories.d.ts +0 -18
  122. package/dist/components/tickets/ticket-grouping.test.d.ts +0 -1
  123. package/dist/components/tickets/ticket-list.stories.d.ts +0 -10
  124. package/dist/components/tickets/tickets-workspace.stories.d.ts +0 -10
  125. package/dist/components/tickets/use-workspace-store.test.d.ts +0 -1
  126. package/dist/components/toaster.stories.d.ts +0 -11
  127. package/dist/components/workspace-badge.stories.d.ts +0 -13
  128. package/dist/empty-state-yGspgiPl.js +0 -185
  129. package/dist/empty-state-yGspgiPl.js.map +0 -1
  130. package/dist/get-file-type-icon-CirIyuE8.js +0 -92
  131. package/dist/get-file-type-icon-CirIyuE8.js.map +0 -1
  132. package/dist/rich-message-Bad4GxH2.js +0 -1423
  133. package/dist/rich-message-Bad4GxH2.js.map +0 -1
  134. package/dist/theme-D0VvFB1Y.js.map +0 -1
@@ -1,185 +0,0 @@
1
- import { jsx as u, jsxs as k } from "react/jsx-runtime";
2
- import { c as F } from "react/compiler-runtime";
3
- import { Alert as D, Span as E, Box as V, EmptyState as L, VStack as $ } from "@chakra-ui/react";
4
- import * as N from "react";
5
- import { DiffModeEnum as j, DiffView as R } from "@git-diff-view/react";
6
- import "@git-diff-view/react/styles/diff-view.css";
7
- import { generateDiffFile as B } from "@git-diff-view/file";
8
- const G = N.forwardRef(function(t, c) {
9
- const e = F(19);
10
- let n, i, o, r, l, s;
11
- e[0] !== t ? ({
12
- title: s,
13
- children: n,
14
- icon: o,
15
- startElement: l,
16
- endElement: i,
17
- ...r
18
- } = t, e[0] = t, e[1] = n, e[2] = i, e[3] = o, e[4] = r, e[5] = l, e[6] = s) : (n = e[1], i = e[2], o = e[3], r = e[4], l = e[5], s = e[6]);
19
- let a;
20
- e[7] !== o || e[8] !== l ? (a = l || /* @__PURE__ */ u(D.Indicator, { children: o }), e[7] = o, e[8] = l, e[9] = a) : a = e[9];
21
- let d;
22
- e[10] !== n || e[11] !== s ? (d = n ? /* @__PURE__ */ k(D.Content, { children: [
23
- /* @__PURE__ */ u(D.Title, { children: s }),
24
- /* @__PURE__ */ u(D.Description, { children: n })
25
- ] }) : /* @__PURE__ */ u(D.Title, { flex: "1", children: s }), e[10] = n, e[11] = s, e[12] = d) : d = e[12];
26
- let f;
27
- return e[13] !== i || e[14] !== c || e[15] !== r || e[16] !== a || e[17] !== d ? (f = /* @__PURE__ */ k(D.Root, { ref: c, ...r, children: [
28
- a,
29
- d,
30
- i
31
- ] }), e[13] = i, e[14] = c, e[15] = r, e[16] = a, e[17] = d, e[18] = f) : f = e[18], f;
32
- }), J = (m) => {
33
- const t = F(20), {
34
- fileName: c,
35
- additions: e,
36
- deletions: n,
37
- label: i,
38
- variant: o,
39
- size: r,
40
- onClick: l,
41
- onClickFileLink: s
42
- } = m, a = o === void 0 ? "outline" : o, f = (r === void 0 ? "default" : r) === "small", x = a === "outline" ? "1px solid" : "none", b = a === "outline" ? f ? "3xs" : "2xs" : "2px", h = f ? "label/S/regular" : void 0, p = l ? "pointer" : "default", g = l ? "bg.muted" : "none";
43
- let y;
44
- t[0] !== g ? (y = {
45
- background: g
46
- }, t[0] = g, t[1] = y) : y = t[1];
47
- let S;
48
- t[2] !== c || t[3] !== s ? (S = c && /* @__PURE__ */ u(E, { display: "inline-block", maxW: "24ch", truncate: !0, mr: "xs", title: c, onClick: (T) => {
49
- T.stopPropagation(), s?.();
50
- }, cursor: s ? "pointer" : "default", _hover: {
51
- textDecoration: s ? "underline" : "none",
52
- color: s ? "fg.blue-dark" : "fg.muted"
53
- }, children: c }), t[2] = c, t[3] = s, t[4] = S) : S = t[4];
54
- const C = `+${e}`;
55
- let v;
56
- t[5] !== C ? (v = /* @__PURE__ */ u(E, { color: "fg.success", children: C }), t[5] = C, t[6] = v) : v = t[6];
57
- const _ = `-${n}`;
58
- let w;
59
- t[7] !== _ ? (w = /* @__PURE__ */ u(E, { color: "fg.error", children: _ }), t[7] = _, t[8] = w) : w = t[8];
60
- let A;
61
- return t[9] !== i || t[10] !== l || t[11] !== v || t[12] !== w || t[13] !== x || t[14] !== b || t[15] !== h || t[16] !== p || t[17] !== y || t[18] !== S ? (A = /* @__PURE__ */ k(E, { display: "inline-flex", alignItems: "center", gap: "2xs", border: x, borderColor: "border.muted", color: "fg.muted", paddingX: b, paddingY: "1px", borderRadius: "xs", textStyle: h, cursor: p, onClick: l, _hover: y, children: [
62
- i,
63
- S,
64
- v,
65
- w
66
- ] }), t[9] = i, t[10] = l, t[11] = v, t[12] = w, t[13] = x, t[14] = b, t[15] = h, t[16] = p, t[17] = y, t[18] = S, t[19] = A) : A = t[19], A;
67
- }, z = "before.txt", W = "after.txt", H = {
68
- ts: "typescript",
69
- tsx: "typescript",
70
- js: "javascript",
71
- jsx: "javascript",
72
- json: "json",
73
- md: "markdown",
74
- py: "python",
75
- go: "go",
76
- rs: "rust",
77
- css: "css",
78
- html: "html",
79
- sh: "shell",
80
- yml: "yaml",
81
- yaml: "yaml"
82
- }, I = (m) => (m.split(/[\\/]/).pop() ?? m).split(".").pop()?.toLowerCase(), M = ({
83
- language: m,
84
- oldPath: t,
85
- newPath: c
86
- }) => {
87
- if (m)
88
- return m;
89
- const e = I(c ?? t ?? "");
90
- return e ? H[e] ?? "plaintext" : "plaintext";
91
- }, K = ({
92
- original: m,
93
- modified: t,
94
- language: c,
95
- oldPath: e,
96
- newPath: n
97
- }) => {
98
- const i = e ?? n ?? z, o = n ?? e ?? W, r = M({
99
- language: c,
100
- oldPath: e,
101
- newPath: n
102
- }), l = B(i, m, o, t, r, r, {
103
- context: 3
104
- }, "pstdio-diff-view");
105
- return {
106
- oldFile: {
107
- fileName: i,
108
- fileLang: r,
109
- content: m
110
- },
111
- newFile: {
112
- fileName: o,
113
- fileLang: r,
114
- content: t
115
- },
116
- hunks: l._diffList
117
- };
118
- };
119
- function Q(m) {
120
- const t = F(13), {
121
- original: c,
122
- modified: e,
123
- language: n,
124
- oldPath: i,
125
- newPath: o,
126
- sideBySide: r,
127
- disableScroll: l
128
- } = m, s = r === void 0 ? !1 : r, a = l === void 0 ? !0 : l;
129
- let d;
130
- t[0] !== n || t[1] !== e || t[2] !== o || t[3] !== i || t[4] !== c ? (d = K({
131
- original: c,
132
- modified: e,
133
- language: n,
134
- oldPath: i,
135
- newPath: o
136
- }), t[0] = n, t[1] = e, t[2] = o, t[3] = i, t[4] = c, t[5] = d) : d = t[5];
137
- const f = d, x = s ? j.Split : j.Unified, b = a ? "hidden" : "auto";
138
- let h;
139
- t[6] === /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel") ? (h = {
140
- "& .gdv-root": {
141
- border: "none",
142
- borderRadius: "0"
143
- },
144
- "& .gdv-line-number": {
145
- fontSize: "11px"
146
- }
147
- }, t[6] = h) : h = t[6];
148
- let p;
149
- t[7] !== f || t[8] !== x ? (p = /* @__PURE__ */ u(R, { data: f, diffViewMode: x, diffViewTheme: "dark", diffViewHighlight: !0, diffViewWrap: !0, diffViewFontSize: 11 }), t[7] = f, t[8] = x, t[9] = p) : p = t[9];
150
- let g;
151
- return t[10] !== b || t[11] !== p ? (g = /* @__PURE__ */ u(V, { height: "100%", width: "100%", overflow: b, css: h, children: p }), t[10] = b, t[11] = p, t[12] = g) : g = t[12], g;
152
- }
153
- const Z = N.forwardRef(function(t, c) {
154
- const e = F(19);
155
- let n, i, o, r, l;
156
- e[0] !== t ? ({
157
- title: l,
158
- description: i,
159
- icon: o,
160
- children: n,
161
- ...r
162
- } = t, e[0] = t, e[1] = n, e[2] = i, e[3] = o, e[4] = r, e[5] = l) : (n = e[1], i = e[2], o = e[3], r = e[4], l = e[5]);
163
- let s;
164
- e[6] !== o ? (s = o && /* @__PURE__ */ u(L.Indicator, { children: o }), e[6] = o, e[7] = s) : s = e[7];
165
- let a;
166
- e[8] !== i || e[9] !== l ? (a = i ? /* @__PURE__ */ k($, { textAlign: "center", children: [
167
- /* @__PURE__ */ u(L.Title, { fontWeight: "normal", children: l }),
168
- /* @__PURE__ */ u(L.Description, { children: i })
169
- ] }) : /* @__PURE__ */ u(L.Title, { fontWeight: "normal", children: l }), e[8] = i, e[9] = l, e[10] = a) : a = e[10];
170
- let d;
171
- e[11] !== n || e[12] !== s || e[13] !== a ? (d = /* @__PURE__ */ k(L.Content, { children: [
172
- s,
173
- a,
174
- n
175
- ] }), e[11] = n, e[12] = s, e[13] = a, e[14] = d) : d = e[14];
176
- let f;
177
- return e[15] !== c || e[16] !== r || e[17] !== d ? (f = /* @__PURE__ */ u(L.Root, { ref: c, ...r, children: d }), e[15] = c, e[16] = r, e[17] = d, e[18] = f) : f = e[18], f;
178
- });
179
- export {
180
- G as A,
181
- Q as D,
182
- Z as E,
183
- J as a
184
- };
185
- //# sourceMappingURL=empty-state-yGspgiPl.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"empty-state-yGspgiPl.js","sources":["../src/components/alert.tsx","../src/components/diff-bubble.tsx","../src/components/diff-view-adapter.ts","../src/components/diff-editor.tsx","../src/components/empty-state.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 { 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\";\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\ntype DiffViewData = NonNullable<DiffViewProps<unknown>[\"data\"]>;\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\nexport const buildDiffViewData = ({\n original,\n modified,\n language,\n oldPath,\n newPath,\n}: BuildDiffViewDataInput): DiffViewData => {\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 const diffFile = generateDiffFile(\n oldFileName,\n original,\n newFileName,\n modified,\n fileLanguage,\n fileLanguage,\n { context: 3 },\n \"pstdio-diff-view\",\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 };\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 { buildDiffViewData } from \"./diff-view-adapter\";\n\ninterface DiffEditorProps {\n original: string;\n modified: string;\n language?: string;\n oldPath?: string;\n newPath?: string;\n sideBySide?: boolean;\n disableScroll?: boolean;\n}\n\nexport function DiffEditor(props: DiffEditorProps) {\n const { original, modified, language, oldPath, newPath, sideBySide = false, disableScroll = true } = props;\n\n const data = buildDiffViewData({\n original,\n modified,\n language,\n oldPath,\n newPath,\n });\n\n const mode = sideBySide ? DiffModeEnum.Split : DiffModeEnum.Unified;\n\n return (\n <Box\n height=\"100%\"\n width=\"100%\"\n overflow={disableScroll ? \"hidden\" : \"auto\"}\n css={{\n \"& .gdv-root\": {\n border: \"none\",\n borderRadius: \"0\",\n },\n \"& .gdv-line-number\": {\n fontSize: \"11px\",\n },\n }}\n >\n <DiffView\n data={data}\n diffViewMode={mode}\n diffViewTheme=\"dark\"\n diffViewHighlight={true}\n diffViewWrap={true}\n diffViewFontSize={11}\n />\n </Box>\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"],"names":["AlertMessage","React","forwardRef","props","ref","$","_c","children","endElement","icon","rest","startElement","title","t0","jsx","ChakraAlert","t1","jsxs","t2","DiffBubble","fileName","additions","deletions","label","variant","size","onClick","onClickFileLink","undefined","isSmall","t3","t4","t5","t6","t7","background","t8","Span","e","stopPropagation","textDecoration","color","t9","t10","t11","t12","t13","FALLBACK_OLD_PATH","FALLBACK_NEW_PATH","extToLanguage","ts","tsx","js","json","md","py","go","rs","css","html","sh","yml","yaml","getExtension","path","split","pop","toLowerCase","resolveDiffLanguage","language","oldPath","newPath","extension","buildDiffViewData","original","modified","oldFileName","newFileName","fileLanguage","diffFile","generateDiffFile","context","oldFile","fileLang","content","newFile","hunks","_diffList","DiffEditor","sideBySide","disableScroll","data","mode","DiffModeEnum","Split","Unified","Symbol","for","border","borderRadius","fontSize","DiffView","Box","EmptyState","description","ChakraEmptyState","VStack"],"mappings":"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"}
@@ -1,92 +0,0 @@
1
- import { jsx as g, jsxs as A } from "react/jsx-runtime";
2
- import { c as z } from "react/compiler-runtime";
3
- import { Tooltip as j, Portal as P, ScrollArea as F } from "@chakra-ui/react";
4
- import * as T from "react";
5
- import { FileSpreadsheet as $, FileCode as V, FileChartLine as q, FileJson as D, FileText as E, FileCog as H, FileImage as I, FileArchive as L, File as _ } from "lucide-react";
6
- const N = T.forwardRef(function(t, b) {
7
- const e = z(26);
8
- let r, l, o, u, i, a, f, d;
9
- e[0] !== t ? ({
10
- showArrow: f,
11
- children: r,
12
- disabled: u,
13
- portalled: d,
14
- content: l,
15
- contentProps: o,
16
- portalRef: i,
17
- ...a
18
- } = t, e[0] = t, e[1] = r, e[2] = l, e[3] = o, e[4] = u, e[5] = i, e[6] = a, e[7] = f, e[8] = d) : (r = e[1], l = e[2], o = e[3], u = e[4], i = e[5], a = e[6], f = e[7], d = e[8]);
19
- const w = d === void 0 ? !0 : d;
20
- if (u || J(l))
21
- return r;
22
- let n;
23
- e[9] !== r ? (n = /* @__PURE__ */ g(j.Trigger, { asChild: !0, children: r }), e[9] = r, e[10] = n) : n = e[10];
24
- const v = !w;
25
- let p;
26
- e[11] !== f ? (p = f && /* @__PURE__ */ g(j.Arrow, { children: /* @__PURE__ */ g(j.ArrowTip, {}) }), e[11] = f, e[12] = p) : p = e[12];
27
- let m;
28
- e[13] !== l || e[14] !== o || e[15] !== b || e[16] !== p ? (m = /* @__PURE__ */ g(j.Positioner, { children: /* @__PURE__ */ A(j.Content, { ref: b, ...o, children: [
29
- p,
30
- l
31
- ] }) }), e[13] = l, e[14] = o, e[15] = b, e[16] = p, e[17] = m) : m = e[17];
32
- let s;
33
- e[18] !== i || e[19] !== v || e[20] !== m ? (s = /* @__PURE__ */ g(P, { disabled: v, container: i, children: m }), e[18] = i, e[19] = v, e[20] = m, e[21] = s) : s = e[21];
34
- let h;
35
- return e[22] !== a || e[23] !== n || e[24] !== s ? (h = /* @__PURE__ */ A(j.Root, { openDelay: 100, closeDelay: 100, ...a, children: [
36
- n,
37
- s
38
- ] }), e[22] = a, e[23] = n, e[24] = s, e[25] = h) : h = e[25], h;
39
- });
40
- function k(c) {
41
- return typeof c == "string" ? c.trim().length === 0 : !1;
42
- }
43
- function J(c) {
44
- if (c == null || c === !1)
45
- return !0;
46
- const t = T.Children.toArray(c);
47
- return t.length === 0 ? !0 : t.every(k);
48
- }
49
- const O = T.forwardRef(function(t, b) {
50
- const e = z(35);
51
- let r, l, o, u, i, a, f, d, w, x, n;
52
- e[0] !== t ? ({
53
- children: r,
54
- viewportRef: n,
55
- contentRef: o,
56
- viewportProps: x,
57
- contentProps: l,
58
- verticalScrollbarProps: w,
59
- horizontalScrollbarProps: u,
60
- showVerticalScrollbar: a,
61
- showHorizontalScrollbar: f,
62
- showCorner: d,
63
- ...i
64
- } = t, e[0] = t, e[1] = r, e[2] = l, e[3] = o, e[4] = u, e[5] = i, e[6] = a, e[7] = f, e[8] = d, e[9] = w, e[10] = x, e[11] = n) : (r = e[1], l = e[2], o = e[3], u = e[4], i = e[5], a = e[6], f = e[7], d = e[8], w = e[9], x = e[10], n = e[11]);
65
- const v = a === void 0 ? !0 : a, p = f === void 0 ? !1 : f, m = d === void 0 ? v && p : d;
66
- let s;
67
- e[12] !== r || e[13] !== l || e[14] !== o ? (s = /* @__PURE__ */ g(F.Content, { ...l, ref: o, children: r }), e[12] = r, e[13] = l, e[14] = o, e[15] = s) : s = e[15];
68
- let h;
69
- e[16] !== s || e[17] !== x || e[18] !== n ? (h = /* @__PURE__ */ g(F.Viewport, { ...x, ref: n, children: s }), e[16] = s, e[17] = x, e[18] = n, e[19] = h) : h = e[19];
70
- let S;
71
- e[20] !== v || e[21] !== w ? (S = v ? /* @__PURE__ */ g(F.Scrollbar, { ...w, borderRadius: "xs" }) : null, e[20] = v, e[21] = w, e[22] = S) : S = e[22];
72
- let C;
73
- e[23] !== u || e[24] !== p ? (C = p ? /* @__PURE__ */ g(F.Scrollbar, { orientation: "horizontal", ...u, borderRadius: "xs" }) : null, e[23] = u, e[24] = p, e[25] = C) : C = e[25];
74
- let y;
75
- e[26] !== m ? (y = m ? /* @__PURE__ */ g(F.Corner, {}) : null, e[26] = m, e[27] = y) : y = e[27];
76
- let R;
77
- return e[28] !== b || e[29] !== i || e[30] !== h || e[31] !== S || e[32] !== C || e[33] !== y ? (R = /* @__PURE__ */ A(F.Root, { ref: b, ...i, children: [
78
- h,
79
- S,
80
- C,
81
- y
82
- ] }), e[28] = b, e[29] = i, e[30] = h, e[31] = S, e[32] = C, e[33] = y, e[34] = R) : R = e[34], R;
83
- }), Q = (c) => {
84
- const t = c.split(".").pop()?.toLowerCase() ?? "";
85
- return ["csv", "tsv", "xlsx", "xls", "parquet"].includes(t) ? $ : ["sql", "py", "js", "ts", "jsx", "tsx", "java", "cpp", "c", "h", "css", "scss", "sass", "php", "rb", "go", "rs", "kt", "swift"].includes(t) ? V : ["json", "jsonl", "ndjson"].includes(t) ? c.includes("/visualizations/") ? q : D : ["md", "txt", "rst", "org", "pdf", "doc", "docx", "rtf"].includes(t) ? E : ["yaml", "yml", "toml", "ini", "conf", "config"].includes(t) ? H : ["png", "jpg", "jpeg", "gif", "svg", "webp", "ico"].includes(t) ? I : ["zip", "tar", "gz", "rar", "7z"].includes(t) ? L : _;
86
- };
87
- export {
88
- O as S,
89
- N as T,
90
- Q as g
91
- };
92
- //# sourceMappingURL=get-file-type-icon-CirIyuE8.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"get-file-type-icon-CirIyuE8.js","sources":["../src/components/tooltip.tsx","../src/components/scroll-area.tsx","../src/utils/get-file-type-icon.ts"],"sourcesContent":["import { Tooltip as ChakraTooltip, Portal } from \"@chakra-ui/react\";\nimport * as React from \"react\";\n\nexport interface TooltipProps extends ChakraTooltip.RootProps {\n children?: React.ReactElement;\n showArrow?: boolean;\n portalled?: boolean;\n portalRef?: React.RefObject<HTMLElement>;\n content: React.ReactNode;\n contentProps?: ChakraTooltip.ContentProps;\n disabled?: boolean;\n}\n\nexport const Tooltip = React.forwardRef<HTMLDivElement, TooltipProps>(function Tooltip(props, ref) {\n const { showArrow, children, disabled, portalled = true, content, contentProps, portalRef, ...rest } = props;\n\n const isEmptyContent = (node: React.ReactNode): boolean => {\n if (node === null || node === undefined || node === false) return true;\n const arr = React.Children.toArray(node);\n if (arr.length === 0) return true;\n return arr.every((child) => (typeof child === \"string\" ? child.trim().length === 0 : false));\n };\n\n if (disabled || isEmptyContent(content)) return children;\n\n return (\n <ChakraTooltip.Root openDelay={100} closeDelay={100} {...rest}>\n <ChakraTooltip.Trigger asChild>{children}</ChakraTooltip.Trigger>\n <Portal disabled={!portalled} container={portalRef}>\n <ChakraTooltip.Positioner>\n <ChakraTooltip.Content ref={ref} {...contentProps}>\n {showArrow && (\n <ChakraTooltip.Arrow>\n <ChakraTooltip.ArrowTip />\n </ChakraTooltip.Arrow>\n )}\n {content}\n </ChakraTooltip.Content>\n </ChakraTooltip.Positioner>\n </Portal>\n </ChakraTooltip.Root>\n );\n});\n","import { ScrollArea as ChakraScrollArea } from \"@chakra-ui/react\";\nimport * as React from \"react\";\n\ntype VerticalScrollbarProps = Omit<ChakraScrollArea.ScrollbarProps, \"orientation\">;\ntype HorizontalScrollbarProps = Omit<ChakraScrollArea.ScrollbarProps, \"orientation\">;\n\nexport interface ScrollAreaProps extends ChakraScrollArea.RootProps {\n viewportRef?: React.Ref<HTMLDivElement>;\n contentRef?: React.Ref<HTMLDivElement>;\n viewportProps?: ChakraScrollArea.ViewportProps;\n contentProps?: ChakraScrollArea.ContentProps;\n verticalScrollbarProps?: VerticalScrollbarProps;\n horizontalScrollbarProps?: HorizontalScrollbarProps;\n showVerticalScrollbar?: boolean;\n showHorizontalScrollbar?: boolean;\n showCorner?: boolean;\n}\n\nexport const ScrollArea = React.forwardRef<HTMLDivElement, ScrollAreaProps>(function ScrollArea(props, ref) {\n const {\n children,\n viewportRef,\n contentRef,\n viewportProps,\n contentProps,\n verticalScrollbarProps,\n horizontalScrollbarProps,\n showVerticalScrollbar = true,\n showHorizontalScrollbar = false,\n showCorner = showVerticalScrollbar && showHorizontalScrollbar,\n ...rest\n } = props;\n\n return (\n <ChakraScrollArea.Root ref={ref} {...rest}>\n <ChakraScrollArea.Viewport {...viewportProps} ref={viewportRef}>\n <ChakraScrollArea.Content {...contentProps} ref={contentRef}>\n {children}\n </ChakraScrollArea.Content>\n </ChakraScrollArea.Viewport>\n {showVerticalScrollbar ? <ChakraScrollArea.Scrollbar {...verticalScrollbarProps} borderRadius={\"xs\"} /> : null}\n {showHorizontalScrollbar ? (\n <ChakraScrollArea.Scrollbar orientation=\"horizontal\" {...horizontalScrollbarProps} borderRadius={\"xs\"} />\n ) : null}\n {showCorner ? <ChakraScrollArea.Corner /> : null}\n </ChakraScrollArea.Root>\n );\n});\n","import type { LucideIcon } from \"lucide-react\";\nimport {\n File,\n FileArchive,\n FileChartLine,\n FileCode,\n FileCog,\n FileImage,\n FileJson,\n FileSpreadsheet,\n FileText,\n} from \"lucide-react\";\n\nexport const getFileTypeIcon = (filename: string): LucideIcon => {\n const extension = filename.split(\".\").pop()?.toLowerCase() ?? \"\";\n\n if ([\"csv\", \"tsv\", \"xlsx\", \"xls\", \"parquet\"].includes(extension)) return FileSpreadsheet;\n if (\n [\n \"sql\",\n \"py\",\n \"js\",\n \"ts\",\n \"jsx\",\n \"tsx\",\n \"java\",\n \"cpp\",\n \"c\",\n \"h\",\n \"css\",\n \"scss\",\n \"sass\",\n \"php\",\n \"rb\",\n \"go\",\n \"rs\",\n \"kt\",\n \"swift\",\n ].includes(extension)\n ) {\n return FileCode;\n }\n if ([\"json\", \"jsonl\", \"ndjson\"].includes(extension)) {\n if (filename.includes(\"/visualizations/\")) return FileChartLine;\n return FileJson;\n }\n if ([\"md\", \"txt\", \"rst\", \"org\", \"pdf\", \"doc\", \"docx\", \"rtf\"].includes(extension)) return FileText;\n if ([\"yaml\", \"yml\", \"toml\", \"ini\", \"conf\", \"config\"].includes(extension)) return FileCog;\n if ([\"png\", \"jpg\", \"jpeg\", \"gif\", \"svg\", \"webp\", \"ico\"].includes(extension)) return FileImage;\n if ([\"zip\", \"tar\", \"gz\", \"rar\", \"7z\"].includes(extension)) return FileArchive;\n return File;\n};\n"],"names":["Tooltip","React","forwardRef","props","ref","$","_c","children","content","contentProps","disabled","portalRef","rest","showArrow","t0","portalled","undefined","_temp2","t1","ChakraTooltip","t2","t3","jsx","t4","jsxs","t5","Portal","t6","_temp","child","trim","length","node","arr","Children","toArray","every","ScrollArea","contentRef","horizontalScrollbarProps","verticalScrollbarProps","viewportProps","viewportRef","showVerticalScrollbar","showHorizontalScrollbar","showCorner","ChakraScrollArea","t7","t8","getFileTypeIcon","filename","extension","split","pop","toLowerCase","includes","FileSpreadsheet","FileCode","FileChartLine","FileJson","FileText","FileCog","FileImage","FileArchive","File"],"mappings":"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"}