@spader/spall-tui 1.0.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 (109) hide show
  1. package/dist/App.js +3636 -0
  2. package/dist/App.js.map +39 -0
  3. package/dist/bash-nbhfht5r.scm +56 -0
  4. package/dist/c-4zy7d3fw.scm +81 -0
  5. package/dist/c_sharp-tb7n62t2.scm +212 -0
  6. package/dist/cpp-stxr9ffp.scm +77 -0
  7. package/dist/css-b1p1h6ys.scm +76 -0
  8. package/dist/dart-t89b32ej.scm +13 -0
  9. package/dist/elisp-ax9wx1b9.scm +72 -0
  10. package/dist/elixir-77300bss.scm +223 -0
  11. package/dist/elm-k2q5knqb.scm +76 -0
  12. package/dist/embedded_template-k7ypjkba.scm +12 -0
  13. package/dist/go-9wx8m64k.scm +123 -0
  14. package/dist/html-g95aq3vw.scm +13 -0
  15. package/dist/index.js +3635 -0
  16. package/dist/index.js.map +39 -0
  17. package/dist/java-wasz6t7a.scm +149 -0
  18. package/dist/javascript-cswtymww.scm +204 -0
  19. package/dist/json-pf4aw8w1.scm +16 -0
  20. package/dist/kotlin-m6cj2y7m.scm +380 -0
  21. package/dist/lib/git.js +117 -0
  22. package/dist/lib/git.js.map +10 -0
  23. package/dist/lua-7h6jk3pd.scm +204 -0
  24. package/dist/objc-6yjdwy1z.scm +216 -0
  25. package/dist/ocaml-jfj520qk.scm +148 -0
  26. package/dist/parsers/index.d.ts +8 -0
  27. package/dist/parsers/index.d.ts.map +1 -0
  28. package/dist/php-bds7v5h1.scm +203 -0
  29. package/dist/python-k2cbtg72.scm +137 -0
  30. package/dist/ql-qs2vxbeq.scm +154 -0
  31. package/dist/ruby-3ybh5bp2.scm +154 -0
  32. package/dist/rust-edtnatpk.scm +161 -0
  33. package/dist/scala-91f2sb1z.scm +260 -0
  34. package/dist/src/App.d.ts +6 -0
  35. package/dist/src/App.d.ts.map +1 -0
  36. package/dist/src/Review.d.ts +6 -0
  37. package/dist/src/Review.d.ts.map +1 -0
  38. package/dist/src/components/CommandPalette.d.ts +2 -0
  39. package/dist/src/components/CommandPalette.d.ts.map +1 -0
  40. package/dist/src/components/DiffPanel.d.ts +16 -0
  41. package/dist/src/components/DiffPanel.d.ts.map +1 -0
  42. package/dist/src/components/EditorPanel.d.ts +9 -0
  43. package/dist/src/components/EditorPanel.d.ts.map +1 -0
  44. package/dist/src/components/ErrorFallback.d.ts +6 -0
  45. package/dist/src/components/ErrorFallback.d.ts.map +1 -0
  46. package/dist/src/components/HalfLineShadow.d.ts +18 -0
  47. package/dist/src/components/HalfLineShadow.d.ts.map +1 -0
  48. package/dist/src/components/index.d.ts +7 -0
  49. package/dist/src/components/index.d.ts.map +1 -0
  50. package/dist/src/components/sidebar/CommentList.d.ts +10 -0
  51. package/dist/src/components/sidebar/CommentList.d.ts.map +1 -0
  52. package/dist/src/components/sidebar/FileList.d.ts +13 -0
  53. package/dist/src/components/sidebar/FileList.d.ts.map +1 -0
  54. package/dist/src/components/sidebar/PatchList.d.ts +14 -0
  55. package/dist/src/components/sidebar/PatchList.d.ts.map +1 -0
  56. package/dist/src/components/sidebar/ProjectStatus.d.ts +7 -0
  57. package/dist/src/components/sidebar/ProjectStatus.d.ts.map +1 -0
  58. package/dist/src/components/sidebar/Section.d.ts +12 -0
  59. package/dist/src/components/sidebar/Section.d.ts.map +1 -0
  60. package/dist/src/components/sidebar/ServerStatus.d.ts +2 -0
  61. package/dist/src/components/sidebar/ServerStatus.d.ts.map +1 -0
  62. package/dist/src/components/sidebar/index.d.ts +7 -0
  63. package/dist/src/components/sidebar/index.d.ts.map +1 -0
  64. package/dist/src/context/command.d.ts +10 -0
  65. package/dist/src/context/command.d.ts.map +1 -0
  66. package/dist/src/context/dialog.d.ts +11 -0
  67. package/dist/src/context/dialog.d.ts.map +1 -0
  68. package/dist/src/context/exit.d.ts +10 -0
  69. package/dist/src/context/exit.d.ts.map +1 -0
  70. package/dist/src/context/review.d.ts +47 -0
  71. package/dist/src/context/review.d.ts.map +1 -0
  72. package/dist/src/context/server.d.ts +10 -0
  73. package/dist/src/context/server.d.ts.map +1 -0
  74. package/dist/src/context/sidebar.d.ts +13 -0
  75. package/dist/src/context/sidebar.d.ts.map +1 -0
  76. package/dist/src/context/theme.d.ts +47 -0
  77. package/dist/src/context/theme.d.ts.map +1 -0
  78. package/dist/src/index.d.ts +3 -0
  79. package/dist/src/index.d.ts.map +1 -0
  80. package/dist/src/lib/diff.d.ts +24 -0
  81. package/dist/src/lib/diff.d.ts.map +1 -0
  82. package/dist/src/lib/git.d.ts +15 -0
  83. package/dist/src/lib/git.d.ts.map +1 -0
  84. package/dist/src/lib/keybind.d.ts +23 -0
  85. package/dist/src/lib/keybind.d.ts.map +1 -0
  86. package/dist/src/lib/tree.d.ts +39 -0
  87. package/dist/src/lib/tree.d.ts.map +1 -0
  88. package/dist/src/store/comment.d.ts +20 -0
  89. package/dist/src/store/comment.d.ts.map +1 -0
  90. package/dist/src/store/db.d.ts +6 -0
  91. package/dist/src/store/db.d.ts.map +1 -0
  92. package/dist/src/store/index.d.ts +7 -0
  93. package/dist/src/store/index.d.ts.map +1 -0
  94. package/dist/src/store/patch.d.ts +22 -0
  95. package/dist/src/store/patch.d.ts.map +1 -0
  96. package/dist/src/store/repo.d.ts +8 -0
  97. package/dist/src/store/repo.d.ts.map +1 -0
  98. package/dist/src/store/review.d.ts +18 -0
  99. package/dist/src/store/review.d.ts.map +1 -0
  100. package/dist/store/index.js +303 -0
  101. package/dist/store/index.js.map +14 -0
  102. package/dist/swift-a4tt704b.scm +336 -0
  103. package/dist/toml-hcqfz0bg.scm +53 -0
  104. package/dist/tsx-c3k3mmc9.scm +239 -0
  105. package/dist/typescript-hz4pg6ze.scm +239 -0
  106. package/dist/vue-xbeea1aj.scm +9 -0
  107. package/dist/yaml-mbfb25g0.scm +79 -0
  108. package/dist/zig-ds3q8m26.scm +283 -0
  109. package/package.json +74 -0
@@ -0,0 +1,239 @@
1
+ ; Variables
2
+ ;----------
3
+
4
+ (identifier) @variable
5
+
6
+ ; Properties
7
+ ;-----------
8
+
9
+ (property_identifier) @property
10
+
11
+ ; Function and method definitions
12
+ ;--------------------------------
13
+
14
+ (function_expression
15
+ name: (identifier) @function)
16
+ (function_declaration
17
+ name: (identifier) @function)
18
+ (method_definition
19
+ name: (property_identifier) @function.method)
20
+
21
+ (pair
22
+ key: (property_identifier) @function.method
23
+ value: [(function_expression) (arrow_function)])
24
+
25
+ (assignment_expression
26
+ left: (member_expression
27
+ property: (property_identifier) @function.method)
28
+ right: [(function_expression) (arrow_function)])
29
+
30
+ (variable_declarator
31
+ name: (identifier) @function
32
+ value: [(function_expression) (arrow_function)])
33
+
34
+ (assignment_expression
35
+ left: (identifier) @function
36
+ right: [(function_expression) (arrow_function)])
37
+
38
+ ; Function and method calls
39
+ ;--------------------------
40
+
41
+ (call_expression
42
+ function: (identifier) @function)
43
+
44
+ (call_expression
45
+ function: (member_expression
46
+ property: (property_identifier) @function.method))
47
+
48
+ ; Special identifiers
49
+ ;--------------------
50
+
51
+ ((identifier) @constructor
52
+ (#match? @constructor "^[A-Z]"))
53
+
54
+ ([
55
+ (identifier)
56
+ (shorthand_property_identifier)
57
+ (shorthand_property_identifier_pattern)
58
+ ] @constant
59
+ (#match? @constant "^[A-Z_][A-Z\\d_]+$"))
60
+
61
+ ((identifier) @variable.builtin
62
+ (#match? @variable.builtin "^(arguments|module|console|window|document)$")
63
+ (#is-not? local))
64
+
65
+ ((identifier) @function.builtin
66
+ (#eq? @function.builtin "require")
67
+ (#is-not? local))
68
+
69
+ ; Literals
70
+ ;---------
71
+
72
+ (this) @variable.builtin
73
+ (super) @variable.builtin
74
+
75
+ [
76
+ (true)
77
+ (false)
78
+ (null)
79
+ (undefined)
80
+ ] @constant.builtin
81
+
82
+ (comment) @comment
83
+
84
+ [
85
+ (string)
86
+ (template_string)
87
+ ] @string
88
+
89
+ (regex) @string.special
90
+ (number) @number
91
+
92
+ ; Tokens
93
+ ;-------
94
+
95
+ [
96
+ ";"
97
+ (optional_chain)
98
+ "."
99
+ ","
100
+ ] @punctuation.delimiter
101
+
102
+ [
103
+ "-"
104
+ "--"
105
+ "-="
106
+ "+"
107
+ "++"
108
+ "+="
109
+ "*"
110
+ "*="
111
+ "**"
112
+ "**="
113
+ "/"
114
+ "/="
115
+ "%"
116
+ "%="
117
+ "<"
118
+ "<="
119
+ "<<"
120
+ "<<="
121
+ "="
122
+ "=="
123
+ "==="
124
+ "!"
125
+ "!="
126
+ "!=="
127
+ "=>"
128
+ ">"
129
+ ">="
130
+ ">>"
131
+ ">>="
132
+ ">>>"
133
+ ">>>="
134
+ "~"
135
+ "^"
136
+ "&"
137
+ "|"
138
+ "^="
139
+ "&="
140
+ "|="
141
+ "&&"
142
+ "||"
143
+ "??"
144
+ "&&="
145
+ "||="
146
+ "??="
147
+ ] @operator
148
+
149
+ [
150
+ "("
151
+ ")"
152
+ "["
153
+ "]"
154
+ "{"
155
+ "}"
156
+ ] @punctuation.bracket
157
+
158
+ (template_substitution
159
+ "${" @punctuation.special
160
+ "}" @punctuation.special) @embedded
161
+
162
+ [
163
+ "as"
164
+ "async"
165
+ "await"
166
+ "break"
167
+ "case"
168
+ "catch"
169
+ "class"
170
+ "const"
171
+ "continue"
172
+ "debugger"
173
+ "default"
174
+ "delete"
175
+ "do"
176
+ "else"
177
+ "export"
178
+ "extends"
179
+ "finally"
180
+ "for"
181
+ "from"
182
+ "function"
183
+ "get"
184
+ "if"
185
+ "import"
186
+ "in"
187
+ "instanceof"
188
+ "let"
189
+ "new"
190
+ "of"
191
+ "return"
192
+ "set"
193
+ "static"
194
+ "switch"
195
+ "target"
196
+ "throw"
197
+ "try"
198
+ "typeof"
199
+ "var"
200
+ "void"
201
+ "while"
202
+ "with"
203
+ "yield"
204
+ ] @keyword
205
+
206
+ ; TypeScript-specific
207
+ ;--------------------
208
+
209
+ ; Types
210
+
211
+ (type_identifier) @type
212
+ (predefined_type) @type.builtin
213
+
214
+ (type_arguments
215
+ "<" @punctuation.bracket
216
+ ">" @punctuation.bracket)
217
+
218
+ ; Variables
219
+
220
+ (required_parameter (identifier) @variable.parameter)
221
+ (optional_parameter (identifier) @variable.parameter)
222
+
223
+ ; Keywords
224
+
225
+ [ "abstract"
226
+ "declare"
227
+ "enum"
228
+ "implements"
229
+ "interface"
230
+ "keyof"
231
+ "namespace"
232
+ "private"
233
+ "protected"
234
+ "public"
235
+ "type"
236
+ "readonly"
237
+ "override"
238
+ "satisfies"
239
+ ] @keyword
@@ -0,0 +1,9 @@
1
+ ; Vue highlights (minimal)
2
+ (comment) @comment
3
+ (text) @none
4
+ (element (start_tag (tag_name) @tag))
5
+ (element (end_tag (tag_name) @tag))
6
+ (attribute (attribute_name) @property)
7
+ (quoted_attribute_value) @string
8
+ (directive_name) @keyword
9
+ (directive_argument) @property
@@ -0,0 +1,79 @@
1
+ (boolean_scalar) @boolean
2
+
3
+ (null_scalar) @constant.builtin
4
+
5
+ [
6
+ (double_quote_scalar)
7
+ (single_quote_scalar)
8
+ (block_scalar)
9
+ (string_scalar)
10
+ ] @string
11
+
12
+ [
13
+ (integer_scalar)
14
+ (float_scalar)
15
+ ] @number
16
+
17
+ (comment) @comment
18
+
19
+ [
20
+ (anchor_name)
21
+ (alias_name)
22
+ ] @label
23
+
24
+ (tag) @type
25
+
26
+ [
27
+ (yaml_directive)
28
+ (tag_directive)
29
+ (reserved_directive)
30
+ ] @attribute
31
+
32
+ (block_mapping_pair
33
+ key: (flow_node
34
+ [
35
+ (double_quote_scalar)
36
+ (single_quote_scalar)
37
+ ] @property))
38
+
39
+ (block_mapping_pair
40
+ key: (flow_node
41
+ (plain_scalar
42
+ (string_scalar) @property)))
43
+
44
+ (flow_mapping
45
+ (_
46
+ key: (flow_node
47
+ [
48
+ (double_quote_scalar)
49
+ (single_quote_scalar)
50
+ ] @property)))
51
+
52
+ (flow_mapping
53
+ (_
54
+ key: (flow_node
55
+ (plain_scalar
56
+ (string_scalar) @property))))
57
+
58
+ [
59
+ ","
60
+ "-"
61
+ ":"
62
+ ">"
63
+ "?"
64
+ "|"
65
+ ] @punctuation.delimiter
66
+
67
+ [
68
+ "["
69
+ "]"
70
+ "{"
71
+ "}"
72
+ ] @punctuation.bracket
73
+
74
+ [
75
+ "*"
76
+ "&"
77
+ "---"
78
+ "..."
79
+ ] @punctuation.special
@@ -0,0 +1,283 @@
1
+ ; Variables
2
+ (identifier) @variable
3
+
4
+ ; Parameters
5
+ (parameter
6
+ name: (identifier) @variable.parameter)
7
+
8
+ (payload
9
+ (identifier) @variable.parameter)
10
+
11
+ ; Types
12
+ (parameter
13
+ type: (identifier) @type)
14
+
15
+ ((identifier) @type
16
+ (#lua-match? @type "^[A-Z_][a-zA-Z0-9_]*"))
17
+
18
+ (variable_declaration
19
+ (identifier) @type
20
+ "="
21
+ [
22
+ (struct_declaration)
23
+ (enum_declaration)
24
+ (union_declaration)
25
+ (opaque_declaration)
26
+ ])
27
+
28
+ [
29
+ (builtin_type)
30
+ "anyframe"
31
+ ] @type.builtin
32
+
33
+ ; Constants
34
+ ((identifier) @constant
35
+ (#lua-match? @constant "^[A-Z][A-Z_0-9]+$"))
36
+
37
+ [
38
+ "null"
39
+ "unreachable"
40
+ "undefined"
41
+ ] @constant.builtin
42
+
43
+ (field_expression
44
+ .
45
+ member: (identifier) @constant)
46
+
47
+ (enum_declaration
48
+ (container_field
49
+ type: (identifier) @constant))
50
+
51
+ ; Labels
52
+ (block_label
53
+ (identifier) @label)
54
+
55
+ (break_label
56
+ (identifier) @label)
57
+
58
+ ; Fields
59
+ (field_initializer
60
+ .
61
+ (identifier) @variable.member)
62
+
63
+ (field_expression
64
+ (_)
65
+ member: (identifier) @variable.member)
66
+
67
+ (container_field
68
+ name: (identifier) @variable.member)
69
+
70
+ (initializer_list
71
+ (assignment_expression
72
+ left: (field_expression
73
+ .
74
+ member: (identifier) @variable.member)))
75
+
76
+ ; Functions
77
+ (builtin_identifier) @function.builtin
78
+
79
+ (call_expression
80
+ function: (identifier) @function.call)
81
+
82
+ (call_expression
83
+ function: (field_expression
84
+ member: (identifier) @function.call))
85
+
86
+ (function_declaration
87
+ name: (identifier) @function)
88
+
89
+ ; Modules
90
+ (variable_declaration
91
+ (identifier) @module
92
+ (builtin_function
93
+ (builtin_identifier) @keyword.import
94
+ (#any-of? @keyword.import "@import" "@cImport")))
95
+
96
+ ; Builtins
97
+ [
98
+ "c"
99
+ "..."
100
+ ] @variable.builtin
101
+
102
+ ((identifier) @variable.builtin
103
+ (#eq? @variable.builtin "_"))
104
+
105
+ (calling_convention
106
+ (identifier) @variable.builtin)
107
+
108
+ ; Keywords
109
+ [
110
+ "asm"
111
+ "defer"
112
+ "errdefer"
113
+ "test"
114
+ "error"
115
+ "const"
116
+ "var"
117
+ ] @keyword
118
+
119
+ [
120
+ "struct"
121
+ "union"
122
+ "enum"
123
+ "opaque"
124
+ ] @keyword.type
125
+
126
+ [
127
+ "async"
128
+ "await"
129
+ "suspend"
130
+ "nosuspend"
131
+ "resume"
132
+ ] @keyword.coroutine
133
+
134
+ "fn" @keyword.function
135
+
136
+ [
137
+ "and"
138
+ "or"
139
+ "orelse"
140
+ ] @keyword.operator
141
+
142
+ "return" @keyword.return
143
+
144
+ [
145
+ "if"
146
+ "else"
147
+ "switch"
148
+ ] @keyword.conditional
149
+
150
+ [
151
+ "for"
152
+ "while"
153
+ "break"
154
+ "continue"
155
+ ] @keyword.repeat
156
+
157
+ [
158
+ "usingnamespace"
159
+ "export"
160
+ ] @keyword.import
161
+
162
+ [
163
+ "try"
164
+ "catch"
165
+ ] @keyword.exception
166
+
167
+ [
168
+ "volatile"
169
+ "allowzero"
170
+ "noalias"
171
+ "addrspace"
172
+ "align"
173
+ "callconv"
174
+ "linksection"
175
+ "pub"
176
+ "inline"
177
+ "noinline"
178
+ "extern"
179
+ "comptime"
180
+ "packed"
181
+ "threadlocal"
182
+ ] @keyword.modifier
183
+
184
+ ; Operator
185
+ [
186
+ "="
187
+ "*="
188
+ "*%="
189
+ "*|="
190
+ "/="
191
+ "%="
192
+ "+="
193
+ "+%="
194
+ "+|="
195
+ "-="
196
+ "-%="
197
+ "-|="
198
+ "<<="
199
+ "<<|="
200
+ ">>="
201
+ "&="
202
+ "^="
203
+ "|="
204
+ "!"
205
+ "~"
206
+ "-"
207
+ "-%"
208
+ "&"
209
+ "=="
210
+ "!="
211
+ ">"
212
+ ">="
213
+ "<="
214
+ "<"
215
+ "&"
216
+ "^"
217
+ "|"
218
+ "<<"
219
+ ">>"
220
+ "<<|"
221
+ "+"
222
+ "++"
223
+ "+%"
224
+ "-%"
225
+ "+|"
226
+ "-|"
227
+ "*"
228
+ "/"
229
+ "%"
230
+ "**"
231
+ "*%"
232
+ "*|"
233
+ "||"
234
+ ".*"
235
+ ".?"
236
+ "?"
237
+ ".."
238
+ ] @operator
239
+
240
+ ; Literals
241
+ (character) @character
242
+
243
+ ([
244
+ (string)
245
+ (multiline_string)
246
+ ] @string
247
+ (#set! "priority" 95))
248
+
249
+ (integer) @number
250
+
251
+ (float) @number.float
252
+
253
+ (boolean) @boolean
254
+
255
+ (escape_sequence) @string.escape
256
+
257
+ ; Punctuation
258
+ [
259
+ "["
260
+ "]"
261
+ "("
262
+ ")"
263
+ "{"
264
+ "}"
265
+ ] @punctuation.bracket
266
+
267
+ [
268
+ ";"
269
+ "."
270
+ ","
271
+ ":"
272
+ "=>"
273
+ "->"
274
+ ] @punctuation.delimiter
275
+
276
+ (payload
277
+ "|" @punctuation.bracket)
278
+
279
+ ; Comments
280
+ (comment) @comment @spell
281
+
282
+ ((comment) @comment.documentation
283
+ (#lua-match? @comment.documentation "^//!"))
package/package.json ADDED
@@ -0,0 +1,74 @@
1
+ {
2
+ "name": "@spader/spall-tui",
3
+ "version": "1.0.0",
4
+ "description": "Terminal UI components and review workflows for spall.",
5
+ "type": "module",
6
+ "main": "./dist/index.js",
7
+ "types": "./dist/src/index.d.ts",
8
+ "repository": {
9
+ "type": "git",
10
+ "url": "git+https://github.com/tspader/spall.git",
11
+ "directory": "packages/tui"
12
+ },
13
+ "homepage": "https://github.com/tspader/spall#readme",
14
+ "bugs": {
15
+ "url": "https://github.com/tspader/spall/issues"
16
+ },
17
+ "keywords": [
18
+ "tui",
19
+ "terminal",
20
+ "review",
21
+ "llm",
22
+ "ui"
23
+ ],
24
+ "publishConfig": {
25
+ "access": "public"
26
+ },
27
+ "files": [
28
+ "dist"
29
+ ],
30
+ "exports": {
31
+ ".": {
32
+ "types": "./dist/src/index.d.ts",
33
+ "import": "./dist/index.js"
34
+ },
35
+ "./app": {
36
+ "types": "./dist/src/App.d.ts",
37
+ "import": "./dist/App.js"
38
+ },
39
+ "./store": {
40
+ "types": "./dist/src/store/index.d.ts",
41
+ "import": "./dist/store/index.js"
42
+ },
43
+ "./lib/git": {
44
+ "types": "./dist/src/lib/git.d.ts",
45
+ "import": "./dist/lib/git.js"
46
+ }
47
+ },
48
+ "scripts": {
49
+ "build": "bun scripts/build.ts && tsc --build --force",
50
+ "npm-publish": "npm publish",
51
+ "npm-publish:dry": "npm publish --dry-run",
52
+ "tui": "bun src/App.tsx",
53
+ "test": "bun test",
54
+ "typecheck": "tsc --noEmit"
55
+ },
56
+ "devDependencies": {
57
+ "@tsconfig/bun": "catalog:",
58
+ "@types/bun": "catalog:",
59
+ "@types/yargs": "^17.0.33",
60
+ "typescript": "catalog:"
61
+ },
62
+ "dependencies": {
63
+ "@opentui/core": "0.1.75",
64
+ "@opentui/solid": "0.1.75",
65
+ "@spader/spall-core": "workspace:*",
66
+ "@spader/spall-sdk": "workspace:*",
67
+ "consola": "catalog:",
68
+ "diff": "^8.0.3",
69
+ "picocolors": "catalog:",
70
+ "solid-js": "1.9.11",
71
+ "tree-sitter-wasms": "^0.1.13",
72
+ "yargs": "^18.0.0"
73
+ }
74
+ }