@phenx-inc/ctlsurf 0.1.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 (133) hide show
  1. package/bin/ctlsurf-worker.js +173 -0
  2. package/electron-vite.config.ts +34 -0
  3. package/out/headless/index.mjs +1364 -0
  4. package/out/headless/index.mjs.map +7 -0
  5. package/out/main/index.js +1131 -0
  6. package/out/preload/index.js +67 -0
  7. package/out/renderer/assets/abap-D5KwWAsZ.js +1399 -0
  8. package/out/renderer/assets/apex-DVGUZ64i.js +331 -0
  9. package/out/renderer/assets/azcli-BEAhqcuE.js +69 -0
  10. package/out/renderer/assets/bat-Bqkp9Cfu.js +101 -0
  11. package/out/renderer/assets/bicep-DIlfshcM.js +110 -0
  12. package/out/renderer/assets/cameligo-CLaaYNMV.js +175 -0
  13. package/out/renderer/assets/clojure-fcgFaMHx.js +762 -0
  14. package/out/renderer/assets/codicon-ngg6Pgfi.ttf +0 -0
  15. package/out/renderer/assets/coffee-CzJ5oEdj.js +233 -0
  16. package/out/renderer/assets/cpp-CcN6f0ik.js +390 -0
  17. package/out/renderer/assets/csharp-BJeIuvde.js +327 -0
  18. package/out/renderer/assets/csp-D_3BK2Wp.js +54 -0
  19. package/out/renderer/assets/css-i3rI3_64.js +186 -0
  20. package/out/renderer/assets/css.worker-umuuUiIb.js +53567 -0
  21. package/out/renderer/assets/cssMode-DL0XItGB.js +208 -0
  22. package/out/renderer/assets/cypher-D0--_GAN.js +264 -0
  23. package/out/renderer/assets/dart-vLMHv35g.js +282 -0
  24. package/out/renderer/assets/dockerfile--oxj0cAH.js +131 -0
  25. package/out/renderer/assets/ecl-CeuUgzaZ.js +457 -0
  26. package/out/renderer/assets/editor.worker-CNgWLVu7.js +13695 -0
  27. package/out/renderer/assets/elixir-eLfY1jWH.js +570 -0
  28. package/out/renderer/assets/flow9-ZSTChSMd.js +143 -0
  29. package/out/renderer/assets/freemarker2-CrOEuDcF.js +995 -0
  30. package/out/renderer/assets/fsharp-D2uoxuLH.js +218 -0
  31. package/out/renderer/assets/go-brnMpFrj.js +219 -0
  32. package/out/renderer/assets/graphql-BeiGgjIU.js +152 -0
  33. package/out/renderer/assets/handlebars-D4QYaBof.js +414 -0
  34. package/out/renderer/assets/hcl-CrX1Es2W.js +184 -0
  35. package/out/renderer/assets/html-B2Dqk2ai.js +303 -0
  36. package/out/renderer/assets/html.worker-BT47iy49.js +29777 -0
  37. package/out/renderer/assets/htmlMode-CdZ0Prhd.js +224 -0
  38. package/out/renderer/assets/index-CJ6RsQWP.css +8108 -0
  39. package/out/renderer/assets/index-pZmE1QXB.js +211777 -0
  40. package/out/renderer/assets/ini-BcQysCTb.js +72 -0
  41. package/out/renderer/assets/java-Dt3iMn2o.js +233 -0
  42. package/out/renderer/assets/javascript-CK8zNQXj.js +72 -0
  43. package/out/renderer/assets/json.worker-D4JVmXIe.js +21424 -0
  44. package/out/renderer/assets/jsonMode-Cewaellc.js +931 -0
  45. package/out/renderer/assets/julia-Cm3ItYL_.js +512 -0
  46. package/out/renderer/assets/kotlin-Ddo1SjA5.js +253 -0
  47. package/out/renderer/assets/less-B7Qaxw-O.js +162 -0
  48. package/out/renderer/assets/lexon-C1U0m2n9.js +158 -0
  49. package/out/renderer/assets/liquid-Bd3GPNs2.js +235 -0
  50. package/out/renderer/assets/lspLanguageFeatures-DSDH7BnA.js +1841 -0
  51. package/out/renderer/assets/lua-hNsuGJkO.js +163 -0
  52. package/out/renderer/assets/m3-6ko6q9-_.js +211 -0
  53. package/out/renderer/assets/markdown-B0YTnTxW.js +230 -0
  54. package/out/renderer/assets/mdx-CCPVCrXC.js +159 -0
  55. package/out/renderer/assets/mips-CJm71dS3.js +199 -0
  56. package/out/renderer/assets/msdax-BBeIktCY.js +376 -0
  57. package/out/renderer/assets/mysql-BWiizXSn.js +879 -0
  58. package/out/renderer/assets/objective-c-B1L1C5EC.js +184 -0
  59. package/out/renderer/assets/pascal-DMQyD4Xk.js +252 -0
  60. package/out/renderer/assets/pascaligo-VA_LQ1oU.js +165 -0
  61. package/out/renderer/assets/perl-DC0Z0tlO.js +627 -0
  62. package/out/renderer/assets/pgsql-DaSGFTLp.js +852 -0
  63. package/out/renderer/assets/php-Bkx1qpkQ.js +501 -0
  64. package/out/renderer/assets/pla-DEV89yYj.js +138 -0
  65. package/out/renderer/assets/postiats-CVVurEnu.js +908 -0
  66. package/out/renderer/assets/powerquery-BQ_t1ZiQ.js +891 -0
  67. package/out/renderer/assets/powershell-BXiKvz7Z.js +240 -0
  68. package/out/renderer/assets/protobuf-CndvAUGu.js +421 -0
  69. package/out/renderer/assets/pug-BxCXwerb.js +403 -0
  70. package/out/renderer/assets/python-34jOtlcC.js +295 -0
  71. package/out/renderer/assets/qsharp-BWK6YLKm.js +302 -0
  72. package/out/renderer/assets/r-CtqYUQ6l.js +244 -0
  73. package/out/renderer/assets/razor-DXRw694z.js +545 -0
  74. package/out/renderer/assets/redis-O7gSt3oh.js +303 -0
  75. package/out/renderer/assets/redshift-CvYMMYZY.js +810 -0
  76. package/out/renderer/assets/restructuredtext-B-KQCVu_.js +175 -0
  77. package/out/renderer/assets/ruby-DCd4DmAr.js +512 -0
  78. package/out/renderer/assets/rust-B1c0VCeq.js +344 -0
  79. package/out/renderer/assets/sb-Chfc_wZF.js +116 -0
  80. package/out/renderer/assets/scala-DbVzH-3O.js +371 -0
  81. package/out/renderer/assets/scheme-D7PxodDG.js +109 -0
  82. package/out/renderer/assets/scss-B42qMyAu.js +261 -0
  83. package/out/renderer/assets/shell-vZEubQ82.js +222 -0
  84. package/out/renderer/assets/solidity-yHOxYChb.js +1368 -0
  85. package/out/renderer/assets/sophia-D7pU0Y1d.js +200 -0
  86. package/out/renderer/assets/sparql-DxuVdnRl.js +202 -0
  87. package/out/renderer/assets/sql-BAGepFCR.js +854 -0
  88. package/out/renderer/assets/st-C-b0Dh53.js +417 -0
  89. package/out/renderer/assets/swift-BmOZGynf.js +313 -0
  90. package/out/renderer/assets/systemverilog-BOC0OOdC.js +577 -0
  91. package/out/renderer/assets/tcl-Bb4GCwBr.js +233 -0
  92. package/out/renderer/assets/ts.worker-C7hW3aY-.js +225330 -0
  93. package/out/renderer/assets/tsMode-CmND5_wB.js +1265 -0
  94. package/out/renderer/assets/twig-DvgEGWAV.js +393 -0
  95. package/out/renderer/assets/typescript-BNNI0Euv.js +337 -0
  96. package/out/renderer/assets/typespec-R77Ln7Jb.js +128 -0
  97. package/out/renderer/assets/vb-Bm6ESA0Q.js +373 -0
  98. package/out/renderer/assets/wgsl-_KPae5vw.js +454 -0
  99. package/out/renderer/assets/xml-CgdndrNB.js +89 -0
  100. package/out/renderer/assets/yaml-DNWPIf1s.js +200 -0
  101. package/out/renderer/index.html +13 -0
  102. package/package.json +67 -0
  103. package/resources/icon.icns +0 -0
  104. package/resources/icon.ico +0 -0
  105. package/resources/icon.png +0 -0
  106. package/src/main/agents.ts +46 -0
  107. package/src/main/bridge.ts +180 -0
  108. package/src/main/ctlsurfApi.ts +142 -0
  109. package/src/main/detectMode.ts +17 -0
  110. package/src/main/headless.ts +182 -0
  111. package/src/main/index.ts +300 -0
  112. package/src/main/orchestrator.ts +404 -0
  113. package/src/main/pty.ts +65 -0
  114. package/src/main/settingsDir.ts +17 -0
  115. package/src/main/tui.ts +366 -0
  116. package/src/main/workerWs.ts +312 -0
  117. package/src/preload/index.ts +114 -0
  118. package/src/renderer/App.tsx +275 -0
  119. package/src/renderer/components/CtlsurfPanel.tsx +49 -0
  120. package/src/renderer/components/EditorPanel.tsx +232 -0
  121. package/src/renderer/components/MultiSplitPane.tsx +251 -0
  122. package/src/renderer/components/PaneLayout.tsx +419 -0
  123. package/src/renderer/components/SettingsDialog.tsx +204 -0
  124. package/src/renderer/components/SplitPane.tsx +82 -0
  125. package/src/renderer/components/StatusBar.tsx +73 -0
  126. package/src/renderer/components/TerminalPanel.tsx +140 -0
  127. package/src/renderer/index.html +12 -0
  128. package/src/renderer/main.tsx +10 -0
  129. package/src/renderer/styles.css +722 -0
  130. package/tsconfig.json +8 -0
  131. package/tsconfig.main.json +15 -0
  132. package/tsconfig.preload.json +14 -0
  133. package/tsconfig.renderer.json +15 -0
@@ -0,0 +1,313 @@
1
+ /*!---------------------------------------------------------------------------------------------
2
+ * Copyright (C) David Owens II, owensd.io. All rights reserved.
3
+ *--------------------------------------------------------------------------------------------*/
4
+ const conf = {
5
+ comments: {
6
+ lineComment: "//",
7
+ blockComment: ["/*", "*/"]
8
+ },
9
+ brackets: [
10
+ ["{", "}"],
11
+ ["[", "]"],
12
+ ["(", ")"]
13
+ ],
14
+ autoClosingPairs: [
15
+ { open: "{", close: "}" },
16
+ { open: "[", close: "]" },
17
+ { open: "(", close: ")" },
18
+ { open: '"', close: '"' },
19
+ { open: "'", close: "'" },
20
+ { open: "`", close: "`" }
21
+ ],
22
+ surroundingPairs: [
23
+ { open: "{", close: "}" },
24
+ { open: "[", close: "]" },
25
+ { open: "(", close: ")" },
26
+ { open: '"', close: '"' },
27
+ { open: "'", close: "'" },
28
+ { open: "`", close: "`" }
29
+ ]
30
+ };
31
+ const language = {
32
+ defaultToken: "",
33
+ tokenPostfix: ".swift",
34
+ // TODO(owensd): Support the full range of unicode valid identifiers.
35
+ identifier: /[a-zA-Z_][\w$]*/,
36
+ attributes: [
37
+ "@GKInspectable",
38
+ "@IBAction",
39
+ "@IBDesignable",
40
+ "@IBInspectable",
41
+ "@IBOutlet",
42
+ "@IBSegueAction",
43
+ "@NSApplicationMain",
44
+ "@NSCopying",
45
+ "@NSManaged",
46
+ "@Sendable",
47
+ "@UIApplicationMain",
48
+ "@autoclosure",
49
+ "@actorIndependent",
50
+ "@asyncHandler",
51
+ "@available",
52
+ "@convention",
53
+ "@derivative",
54
+ "@differentiable",
55
+ "@discardableResult",
56
+ "@dynamicCallable",
57
+ "@dynamicMemberLookup",
58
+ "@escaping",
59
+ "@frozen",
60
+ "@globalActor",
61
+ "@inlinable",
62
+ "@inline",
63
+ "@main",
64
+ "@noDerivative",
65
+ "@nonobjc",
66
+ "@noreturn",
67
+ "@objc",
68
+ "@objcMembers",
69
+ "@preconcurrency",
70
+ "@propertyWrapper",
71
+ "@requires_stored_property_inits",
72
+ "@resultBuilder",
73
+ "@testable",
74
+ "@unchecked",
75
+ "@unknown",
76
+ "@usableFromInline",
77
+ "@warn_unqualified_access"
78
+ ],
79
+ accessmodifiers: ["open", "public", "internal", "fileprivate", "private"],
80
+ keywords: [
81
+ "#available",
82
+ "#colorLiteral",
83
+ "#column",
84
+ "#dsohandle",
85
+ "#else",
86
+ "#elseif",
87
+ "#endif",
88
+ "#error",
89
+ "#file",
90
+ "#fileID",
91
+ "#fileLiteral",
92
+ "#filePath",
93
+ "#function",
94
+ "#if",
95
+ "#imageLiteral",
96
+ "#keyPath",
97
+ "#line",
98
+ "#selector",
99
+ "#sourceLocation",
100
+ "#warning",
101
+ "Any",
102
+ "Protocol",
103
+ "Self",
104
+ "Type",
105
+ "actor",
106
+ "as",
107
+ "assignment",
108
+ "associatedtype",
109
+ "associativity",
110
+ "async",
111
+ "await",
112
+ "break",
113
+ "case",
114
+ "catch",
115
+ "class",
116
+ "continue",
117
+ "convenience",
118
+ "default",
119
+ "defer",
120
+ "deinit",
121
+ "didSet",
122
+ "do",
123
+ "dynamic",
124
+ "dynamicType",
125
+ "else",
126
+ "enum",
127
+ "extension",
128
+ "fallthrough",
129
+ "false",
130
+ "fileprivate",
131
+ "final",
132
+ "for",
133
+ "func",
134
+ "get",
135
+ "guard",
136
+ "higherThan",
137
+ "if",
138
+ "import",
139
+ "in",
140
+ "indirect",
141
+ "infix",
142
+ "init",
143
+ "inout",
144
+ "internal",
145
+ "is",
146
+ "isolated",
147
+ "lazy",
148
+ "left",
149
+ "let",
150
+ "lowerThan",
151
+ "mutating",
152
+ "nil",
153
+ "none",
154
+ "nonisolated",
155
+ "nonmutating",
156
+ "open",
157
+ "operator",
158
+ "optional",
159
+ "override",
160
+ "postfix",
161
+ "precedence",
162
+ "precedencegroup",
163
+ "prefix",
164
+ "private",
165
+ "protocol",
166
+ "public",
167
+ "repeat",
168
+ "required",
169
+ "rethrows",
170
+ "return",
171
+ "right",
172
+ "safe",
173
+ "self",
174
+ "set",
175
+ "some",
176
+ "static",
177
+ "struct",
178
+ "subscript",
179
+ "super",
180
+ "switch",
181
+ "throw",
182
+ "throws",
183
+ "true",
184
+ "try",
185
+ "typealias",
186
+ "unowned",
187
+ "unsafe",
188
+ "var",
189
+ "weak",
190
+ "where",
191
+ "while",
192
+ "willSet",
193
+ "__consuming",
194
+ "__owned"
195
+ ],
196
+ symbols: /[=(){}\[\].,:;@#\_&\-<>`?!+*\\\/]/,
197
+ // Moved . to operatorstart so it can be a delimiter
198
+ operatorstart: /[\/=\-+!*%<>&|^~?\u00A1-\u00A7\u00A9\u00AB\u00AC\u00AE\u00B0-\u00B1\u00B6\u00BB\u00BF\u00D7\u00F7\u2016-\u2017\u2020-\u2027\u2030-\u203E\u2041-\u2053\u2055-\u205E\u2190-\u23FF\u2500-\u2775\u2794-\u2BFF\u2E00-\u2E7F\u3001-\u3003\u3008-\u3030]/,
199
+ operatorend: /[\u0300-\u036F\u1DC0-\u1DFF\u20D0-\u20FF\uFE00-\uFE0F\uFE20-\uFE2F\uE0100-\uE01EF]/,
200
+ operators: /(@operatorstart)((@operatorstart)|(@operatorend))*/,
201
+ // TODO(owensd): These are borrowed from C#; need to validate correctness for Swift.
202
+ escapes: /\\(?:[abfnrtv\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,
203
+ tokenizer: {
204
+ root: [
205
+ { include: "@whitespace" },
206
+ { include: "@comment" },
207
+ { include: "@attribute" },
208
+ { include: "@literal" },
209
+ { include: "@keyword" },
210
+ { include: "@invokedmethod" },
211
+ { include: "@symbol" }
212
+ ],
213
+ whitespace: [
214
+ [/\s+/, "white"],
215
+ [/"""/, "string.quote", "@endDblDocString"]
216
+ ],
217
+ endDblDocString: [
218
+ [/[^"]+/, "string"],
219
+ [/\\"/, "string"],
220
+ [/"""/, "string.quote", "@popall"],
221
+ [/"/, "string"]
222
+ ],
223
+ symbol: [
224
+ [/[{}()\[\]]/, "@brackets"],
225
+ [/[<>](?!@symbols)/, "@brackets"],
226
+ [/[.]/, "delimiter"],
227
+ [/@operators/, "operator"],
228
+ [/@symbols/, "operator"]
229
+ ],
230
+ comment: [
231
+ [/\/\/\/.*$/, "comment.doc"],
232
+ [/\/\*\*/, "comment.doc", "@commentdocbody"],
233
+ [/\/\/.*$/, "comment"],
234
+ [/\/\*/, "comment", "@commentbody"]
235
+ ],
236
+ commentdocbody: [
237
+ [/\/\*/, "comment", "@commentbody"],
238
+ [/\*\//, "comment.doc", "@pop"],
239
+ [/\:[a-zA-Z]+\:/, "comment.doc.param"],
240
+ [/./, "comment.doc"]
241
+ ],
242
+ commentbody: [
243
+ [/\/\*/, "comment", "@commentbody"],
244
+ [/\*\//, "comment", "@pop"],
245
+ [/./, "comment"]
246
+ ],
247
+ attribute: [
248
+ [
249
+ /@@@identifier/,
250
+ {
251
+ cases: {
252
+ "@attributes": "keyword.control",
253
+ "@default": ""
254
+ }
255
+ }
256
+ ]
257
+ ],
258
+ literal: [
259
+ [/"/, { token: "string.quote", next: "@stringlit" }],
260
+ [/0[b]([01]_?)+/, "number.binary"],
261
+ [/0[o]([0-7]_?)+/, "number.octal"],
262
+ [/0[x]([0-9a-fA-F]_?)+([pP][\-+](\d_?)+)?/, "number.hex"],
263
+ [/(\d_?)*\.(\d_?)+([eE][\-+]?(\d_?)+)?/, "number.float"],
264
+ [/(\d_?)+/, "number"]
265
+ ],
266
+ stringlit: [
267
+ [/\\\(/, { token: "operator", next: "@interpolatedexpression" }],
268
+ [/@escapes/, "string"],
269
+ [/\\./, "string.escape.invalid"],
270
+ [/"/, { token: "string.quote", next: "@pop" }],
271
+ [/./, "string"]
272
+ ],
273
+ interpolatedexpression: [
274
+ [/\(/, { token: "operator", next: "@interpolatedexpression" }],
275
+ [/\)/, { token: "operator", next: "@pop" }],
276
+ { include: "@literal" },
277
+ { include: "@keyword" },
278
+ { include: "@symbol" }
279
+ ],
280
+ keyword: [
281
+ [/`/, { token: "operator", next: "@escapedkeyword" }],
282
+ [
283
+ /@identifier/,
284
+ {
285
+ cases: {
286
+ "@keywords": "keyword",
287
+ "[A-Z][a-zA-Z0-9$]*": "type.identifier",
288
+ "@default": "identifier"
289
+ }
290
+ }
291
+ ]
292
+ ],
293
+ escapedkeyword: [
294
+ [/`/, { token: "operator", next: "@pop" }],
295
+ [/./, "identifier"]
296
+ ],
297
+ invokedmethod: [
298
+ [
299
+ /([.])(@identifier)/,
300
+ {
301
+ cases: {
302
+ $2: ["delimeter", "type.identifier"],
303
+ "@default": ""
304
+ }
305
+ }
306
+ ]
307
+ ]
308
+ }
309
+ };
310
+ export {
311
+ conf,
312
+ language
313
+ };