testeranto 0.202.0 → 0.203.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 (773) hide show
  1. package/README.md +23 -0
  2. package/UX/chache/index.md +11 -0
  3. package/dist/prebuild/App.css +78 -0
  4. package/dist/prebuild/App.js +4828 -2814
  5. package/dist/prebuild/testeranto.mjs +2650 -1037
  6. package/example/Calculator.go +63 -0
  7. package/example/Calculator.golingvu.adapter.go +81 -0
  8. package/example/Calculator.golingvu.go +67 -0
  9. package/example/Calculator.golingvu.implementation.go +95 -0
  10. package/example/Calculator.golingvu.specification.go +68 -0
  11. package/example/Calculator.pitono.adapter.py +68 -0
  12. package/example/Calculator.pitono.implementation.py +30 -0
  13. package/example/Calculator.pitono.specification.py +154 -0
  14. package/example/Calculator.pitono.test.py +47 -0
  15. package/example/Calculator.py +93 -0
  16. package/example/Calculator.test.adapter.ts +86 -0
  17. package/example/Calculator.test.implementation.ts +82 -0
  18. package/example/Calculator.test.specification.ts +213 -0
  19. package/example/Calculator.test.ts +13 -0
  20. package/example/Calculator.test.types.ts +50 -0
  21. package/example/Calculator.ts +130 -0
  22. package/example/README.md +1 -0
  23. package/example/base_suite_test.go +51 -0
  24. package/example/cmd/main.go +16 -0
  25. package/example/go.mod +9 -0
  26. package/example/main +0 -0
  27. package/example/test_example.py +143 -74
  28. package/{testeranto → example/testeranto}/bundles/golang/core/Calculator.golingvu.go +1 -1
  29. package/example/testeranto/metafiles/golang/core.json +198 -0
  30. package/go.mod +3 -1
  31. package/golingvu.tmp.txt +68 -0
  32. package/log.txt +85 -0
  33. package/package.json +50 -41
  34. package/scripts/build-example.ts +245 -0
  35. package/src/App.tsx +94 -44
  36. package/src/Helpo.tsx +89 -0
  37. package/src/PM/PM_WithBuild.ts +32 -20
  38. package/src/PM/PM_WithGit.ts +60 -13
  39. package/src/PM/PM_WithHelpo.ts +341 -0
  40. package/src/PM/PM_WithProcesses.ts +484 -223
  41. package/src/PM/PM_WithWebSocket.ts +210 -2
  42. package/src/PM/golingvuBuild.ts +56 -0
  43. package/src/PM/main.ts +570 -438
  44. package/src/PM/pitonoBuild.ts +56 -0
  45. package/src/PM/utils.ts +7 -1
  46. package/src/app.scss +102 -0
  47. package/src/components/pure/AppFrame.tsx +259 -149
  48. package/src/components/pure/GitIntegrationView.tsx +527 -238
  49. package/src/components/pure/HelpoChatDrawer.tsx +222 -0
  50. package/src/components/pure/MagicRobotModal.tsx +136 -0
  51. package/src/components/pure/ProcessDetails.tsx +99 -0
  52. package/src/components/pure/ProcessInput.tsx +67 -0
  53. package/src/components/pure/ProcessList.tsx +89 -0
  54. package/src/components/pure/ProcessLogs.tsx +54 -0
  55. package/src/components/pure/ProcessManager.tsx +37 -46
  56. package/src/components/pure/ProcessManagerView.tsx +42 -367
  57. package/src/components/pure/ProcessManagerViewTypes.ts +10 -0
  58. package/src/components/pure/ProcessSidebar.tsx +88 -0
  59. package/src/components/pure/ProcessTerminal.tsx +51 -0
  60. package/src/components/pure/SingleProcessView.tsx +140 -231
  61. package/src/components/pure/TerminalInput.tsx +73 -0
  62. package/src/components/pure/TerminalLogs.tsx +80 -0
  63. package/src/components/pure/TestPageView.tsx +21 -116
  64. package/src/components/pure/TestPageView_utils.tsx +2 -0
  65. package/src/components/stateful/DratoPage.tsx +457 -0
  66. package/src/components/stateful/GenericXMLEditor/AttributeEditor.tsx +87 -0
  67. package/src/components/stateful/GenericXMLEditor/Drawer.tsx +174 -0
  68. package/src/components/stateful/GenericXMLEditor/GenericPreview.tsx +160 -0
  69. package/src/components/stateful/GenericXMLEditor/GenericTextEditor.tsx +104 -0
  70. package/src/components/stateful/GenericXMLEditor/GenericTree.tsx +104 -0
  71. package/src/components/stateful/GenericXMLEditorPage.tsx +346 -0
  72. package/src/components/stateful/GitIntegrationPage.tsx +258 -3
  73. package/src/components/stateful/GrafeoPage.tsx +563 -0
  74. package/src/components/stateful/SVGEditor/SVGAttributesEditor.tsx +26 -8
  75. package/src/components/stateful/SVGEditor/SVGPreview.tsx +4 -2
  76. package/src/components/stateful/SVGEditorPage.tsx +195 -181
  77. package/src/components/stateful/SingleProcessPage.tsx +133 -131
  78. package/src/components/stateful/SkriboPage.tsx +765 -0
  79. package/src/components/stateful/TestPage.tsx +3 -2
  80. package/src/esbuildConfigs/node.ts +1 -1
  81. package/src/example/go.mod +9 -0
  82. package/src/example/main.go +61 -0
  83. package/src/golingvu/PM/golang_test.go +103 -0
  84. package/src/golingvu/README.md +186 -2
  85. package/src/golingvu/base_given.go +89 -2
  86. package/src/golingvu/base_suite.go +48 -2
  87. package/src/golingvu/go.mod +6 -0
  88. package/src/golingvu/golingvu.go +703 -29
  89. package/src/golingvu/types.go +0 -14
  90. package/src/helpo/directives.md +5 -0
  91. package/src/helpo/prompt.txt +38 -0
  92. package/src/hooks/useTerminalWebSocket.ts +49 -0
  93. package/src/lib/BaseGiven.ts +126 -28
  94. package/src/lib/BaseSuite.test/test.ts +97 -180
  95. package/src/lib/BaseSuite.ts +52 -10
  96. package/src/lib/BaseThen.ts +34 -38
  97. package/src/lib/BaseWhen.ts +9 -2
  98. package/src/lib/Tiposkripto.test/Tiposkripto.specification.ts +9 -8
  99. package/src/lib/Tiposkripto.ts +41 -11
  100. package/src/lib/pmProxy.ts +55 -18
  101. package/src/pitono/PM/python.py +165 -0
  102. package/src/pitono/Pitono.py +298 -0
  103. package/src/pitono/PitonoTest.py +25 -0
  104. package/src/pitono/README.md +21 -0
  105. package/src/pitono/__init__.py +6 -0
  106. package/{pitono → src/pitono}/base_given.py +42 -20
  107. package/{pitono → src/pitono}/base_suite.py +55 -2
  108. package/{pitono → src/pitono}/base_then.py +15 -1
  109. package/{pitono → src/pitono}/base_when.py +15 -1
  110. package/{pitono → src/pitono}/pitono.egg-info/PKG-INFO +25 -0
  111. package/{pitono → src/pitono}/pitono.egg-info/SOURCES.txt +1 -0
  112. package/src/pitono/types.py +87 -0
  113. package/src/services/FileService.ts +146 -11
  114. package/src/testeranto.ts +115 -149
  115. package/src/utils/golingvuMetafile.ts +822 -118
  116. package/src/utils/golingvuWatcher.ts +285 -0
  117. package/src/utils/logFiles.ts +10 -2
  118. package/src/utils/makePrompt.ts +12 -1
  119. package/src/utils/pitonoMetafile.ts +326 -54
  120. package/src/utils/pitonoWatcher.ts +157 -0
  121. package/testeranto/App.css +78 -0
  122. package/testeranto/App.js +4828 -2814
  123. package/testeranto/bundles/node/core/{chunk-RIM6RECA.mjs → chunk-MJTSYIAQ.mjs} +179 -250
  124. package/testeranto/bundles/node/core/src/lib/BaseSuite.test/node.test.mjs +110 -62
  125. package/testeranto/bundles/node/core/src/lib/TipoSkripto.test/TipoSkripto.mjs +135 -137
  126. package/testeranto/bundles/node/core/src/lib/pmProxy.test/index.mjs +4317 -4
  127. package/testeranto/bundles/pure/core/{chunk-XYOCRDEQ.mjs → chunk-6HR24P27.mjs} +96 -173
  128. package/testeranto/bundles/pure/core/src/Pure.test.mjs +1 -1
  129. package/testeranto/bundles/pure/core/src/lib/BaseSuite.test/pure.test.mjs +110 -62
  130. package/testeranto/bundles/web/core/{chunk-JMDLMADH.mjs → chunk-AZZHJNSU.mjs} +2473 -191
  131. package/testeranto/bundles/web/core/{chunk-LQMU5NCG.mjs → chunk-ME6I6FJZ.mjs} +96 -173
  132. package/testeranto/bundles/web/core/src/components/pure/FeaturesReporterView.test/index.html +15 -0
  133. package/testeranto/bundles/web/core/src/components/pure/FeaturesReporterView.test/index.mjs +3 -5
  134. package/testeranto/bundles/web/core/src/components/pure/ProjectPageView.test/index.css +0 -78
  135. package/testeranto/bundles/web/core/src/components/pure/ProjectPageView.test/index.html +15 -0
  136. package/testeranto/bundles/web/core/src/components/pure/ProjectPageView.test/index.mjs +6476 -69
  137. package/testeranto/bundles/web/core/src/lib/BaseSuite.test/web.test.html +15 -0
  138. package/testeranto/bundles/web/core/src/lib/BaseSuite.test/web.test.mjs +110 -62
  139. package/testeranto/helpo_chat_history.json +1 -0
  140. package/testeranto/metafiles/golang/core.json +42 -47
  141. package/testeranto/metafiles/node/core.json +263 -247
  142. package/testeranto/metafiles/pure/core.json +23 -38
  143. package/testeranto/metafiles/python/core.json +85 -9
  144. package/testeranto/metafiles/web/core.json +966 -460
  145. package/testeranto/reports/core/config.json +30 -6
  146. package/testeranto/reports/core/example/Calculator.golingvu/golang/exit.log +1 -0
  147. package/testeranto/reports/core/example/Calculator.golingvu/golang/stderr.log +2 -0
  148. package/testeranto/reports/core/example/Calculator.golingvu/golang/stdout.log +1 -0
  149. package/testeranto/reports/core/example/Calculator.pitono.test/python/exit.log +1 -0
  150. package/testeranto/reports/core/example/Calculator.pitono.test/python/stderr.log +11 -0
  151. package/testeranto/reports/core/example/Calculator.pitono.test/python/stdout.log +1 -0
  152. package/testeranto/reports/core/example/Calculator.test/node/exit.log +1 -0
  153. package/testeranto/reports/core/example/Calculator.test/node/lint_errors.txt +2 -0
  154. package/testeranto/reports/core/example/Calculator.test/node/message.txt +16 -0
  155. package/testeranto/reports/core/example/Calculator.test/node/prompt.txt +13 -0
  156. package/testeranto/reports/core/example/Calculator.test/node/stderr.log +33 -0
  157. package/testeranto/reports/core/example/Calculator.test/node/stdout.log +1076 -0
  158. package/testeranto/reports/core/example/Calculator.test/node/tests.json +1109 -0
  159. package/testeranto/reports/core/example/Calculator.test/node/type_errors.txt +34 -0
  160. package/testeranto/reports/core/example/test_example/python/exit.log +1 -0
  161. package/testeranto/reports/core/example/test_example/python/stderr.log +24 -0
  162. package/testeranto/reports/core/src/Pure.test/pure/message.txt +1 -2
  163. package/testeranto/reports/core/src/Pure.test/pure/prompt.txt +4 -5
  164. package/testeranto/reports/core/src/Pure.test/pure/type_errors.txt +16 -3
  165. package/testeranto/reports/core/src/components/pure/FeaturesReporterView.test/index/web/error.log +0 -91
  166. package/testeranto/reports/core/src/components/pure/FeaturesReporterView.test/index/web/exit.log +0 -1
  167. package/testeranto/reports/core/src/components/pure/FeaturesReporterView.test/index/web/info.log +0 -2
  168. package/testeranto/reports/core/src/components/pure/FeaturesReporterView.test/index/web/message.txt +17 -0
  169. package/testeranto/reports/core/src/components/pure/FeaturesReporterView.test/index/web/prompt.txt +26 -0
  170. package/testeranto/reports/core/src/components/pure/FeaturesReporterView.test/index/web/type_errors.txt +69 -0
  171. package/testeranto/reports/core/src/components/pure/ModalContent.test/index/web/lint_errors.txt +16 -0
  172. package/testeranto/reports/core/src/components/pure/ModalContent.test/index/web/message.txt +17 -0
  173. package/testeranto/reports/core/src/components/pure/ModalContent.test/index/web/prompt.txt +27 -0
  174. package/testeranto/reports/core/src/components/pure/ModalContent.test/index/web/type_errors.txt +42 -0
  175. package/testeranto/reports/core/src/components/pure/ProjectPageView.test/index/web/error.log +0 -30
  176. package/testeranto/reports/core/src/components/pure/ProjectPageView.test/index/web/exit.log +0 -1
  177. package/testeranto/reports/core/src/components/pure/ProjectPageView.test/index/web/info.log +0 -2
  178. package/testeranto/reports/core/src/components/pure/ProjectPageView.test/index/web/lint_errors.txt +30 -0
  179. package/testeranto/reports/core/src/components/pure/ProjectPageView.test/index/web/message.txt +17 -0
  180. package/testeranto/reports/core/src/components/pure/ProjectPageView.test/index/web/prompt.txt +30 -0
  181. package/testeranto/reports/core/src/components/pure/ProjectPageView.test/index/web/type_errors.txt +58 -0
  182. package/testeranto/reports/core/src/lib/BaseSuite.test/node.test/node/exit.log +1 -1
  183. package/testeranto/reports/core/src/lib/BaseSuite.test/node.test/node/prompt.txt +9 -1
  184. package/testeranto/reports/core/src/lib/BaseSuite.test/node.test/node/stderr.log +1 -0
  185. package/testeranto/reports/core/src/lib/BaseSuite.test/node.test/node/stdout.log +4 -1
  186. package/testeranto/reports/core/src/lib/BaseSuite.test/node.test/node/tests.json +98 -7
  187. package/testeranto/reports/core/src/lib/BaseSuite.test/node.test/node/type_errors.txt +44 -28
  188. package/testeranto/reports/core/src/lib/BaseSuite.test/pure.test/pure/message.txt +1 -2
  189. package/testeranto/reports/core/src/lib/BaseSuite.test/pure.test/pure/prompt.txt +4 -6
  190. package/testeranto/reports/core/src/lib/BaseSuite.test/pure.test/pure/type_errors.txt +44 -28
  191. package/testeranto/reports/core/src/lib/BaseSuite.test/web.test/web/error.log +0 -1
  192. package/testeranto/reports/core/src/lib/BaseSuite.test/web.test/web/exit.log +0 -1
  193. package/testeranto/reports/core/src/lib/BaseSuite.test/web.test/web/message.txt +17 -0
  194. package/testeranto/reports/core/src/lib/BaseSuite.test/web.test/web/prompt.txt +25 -0
  195. package/testeranto/reports/core/src/lib/BaseSuite.test/web.test/web/type_errors.txt +69 -0
  196. package/testeranto/reports/core/src/lib/TipoSkripto.test/TipoSkripto/node/exit.log +1 -1
  197. package/testeranto/reports/core/src/lib/TipoSkripto.test/TipoSkripto/node/message.txt +1 -2
  198. package/testeranto/reports/core/src/lib/TipoSkripto.test/TipoSkripto/node/prompt.txt +4 -8
  199. package/testeranto/reports/core/src/lib/TipoSkripto.test/TipoSkripto/node/stderr.log +68 -35
  200. package/testeranto/reports/core/src/lib/TipoSkripto.test/TipoSkripto/node/stdout.log +336 -6
  201. package/testeranto/reports/core/src/lib/TipoSkripto.test/TipoSkripto/node/tests.json +166 -0
  202. package/testeranto/reports/core/src/lib/TipoSkripto.test/TipoSkripto/node/type_errors.txt +20 -13
  203. package/testeranto/reports/core/src/lib/pmProxy.test/index/node/exit.log +1 -1
  204. package/testeranto/reports/core/src/lib/pmProxy.test/index/node/prompt.txt +9 -1
  205. package/testeranto/reports/core/src/lib/pmProxy.test/index/node/stderr.log +0 -20
  206. package/testeranto/reports/core/src/lib/pmProxy.test/index/node/stdout.log +1 -3
  207. package/testeranto/reports/core/src/lib/pmProxy.test/index/node/tests.json +31 -0
  208. package/testeranto/reports/core/src/lib/pmProxy.test/index/node/type_errors.txt +16 -3
  209. package/testeranto/reports/core/summary.json +46 -19
  210. package/testeranto.config.ts +18 -30
  211. package/dist/cjs-shim.js +0 -12
  212. package/dist/common/design-editor/DesignEditor.js +0 -77
  213. package/dist/common/design-editor/index.js +0 -18
  214. package/dist/common/design-editor/server.js +0 -98
  215. package/dist/common/design-editor/types.js +0 -2
  216. package/dist/common/package.json +0 -3
  217. package/dist/common/src/App.js +0 -219
  218. package/dist/common/src/CoreTypes.js +0 -2
  219. package/dist/common/src/Init.js +0 -48
  220. package/dist/common/src/Node.js +0 -40
  221. package/dist/common/src/NodeSidecar.js +0 -15
  222. package/dist/common/src/PM/PM_WithBuild.js +0 -135
  223. package/dist/common/src/PM/PM_WithEslintAndTsc.js +0 -204
  224. package/dist/common/src/PM/PM_WithGit.js +0 -517
  225. package/dist/common/src/PM/PM_WithProcesses.js +0 -519
  226. package/dist/common/src/PM/PM_WithWebSocket.js +0 -535
  227. package/dist/common/src/PM/__tests__/nodeSidecar.testeranto.js +0 -108
  228. package/dist/common/src/PM/__tests__/pureSidecar.testeranto.js +0 -93
  229. package/dist/common/src/PM/__tests__/webSidecar.testeranto.js +0 -93
  230. package/dist/common/src/PM/base.js +0 -319
  231. package/dist/common/src/PM/index.js +0 -6
  232. package/dist/common/src/PM/main.js +0 -672
  233. package/dist/common/src/PM/metafileOutputs.js +0 -78
  234. package/dist/common/src/PM/node.js +0 -179
  235. package/dist/common/src/PM/nodeSidecar.js +0 -65
  236. package/dist/common/src/PM/pitonoRunner.js +0 -54
  237. package/dist/common/src/PM/pure.js +0 -103
  238. package/dist/common/src/PM/pureSidecar.js +0 -48
  239. package/dist/common/src/PM/sidecar.js +0 -11
  240. package/dist/common/src/PM/types.js +0 -2
  241. package/dist/common/src/PM/utils.js +0 -210
  242. package/dist/common/src/PM/web.js +0 -106
  243. package/dist/common/src/PM/webSidecar.js +0 -47
  244. package/dist/common/src/Pure.js +0 -52
  245. package/dist/common/src/Pure.test.js +0 -180
  246. package/dist/common/src/PureSidecar.js +0 -13
  247. package/dist/common/src/ReportServer.js +0 -1
  248. package/dist/common/src/ReportServer.test.ts/index.js +0 -78
  249. package/dist/common/src/ReportServerLib.js +0 -1
  250. package/dist/common/src/Types.js +0 -2
  251. package/dist/common/src/Web.js +0 -61
  252. package/dist/common/src/WebSidecar.js +0 -14
  253. package/dist/common/src/components/DesignEditorPage.js +0 -205
  254. package/dist/common/src/components/SunriseAnimation.js +0 -291
  255. package/dist/common/src/components/SunriseAnimation.test/implementation.js +0 -1
  256. package/dist/common/src/components/SunriseAnimation.test/index.js +0 -1
  257. package/dist/common/src/components/SunriseAnimation.test/interface.js +0 -68
  258. package/dist/common/src/components/SunriseAnimation.test/specification.js +0 -1
  259. package/dist/common/src/components/SunriseAnimation.test/types.js +0 -2
  260. package/dist/common/src/components/TestStatusBadge.js +0 -35
  261. package/dist/common/src/components/pure/AppFrame.js +0 -81
  262. package/dist/common/src/components/pure/AppFrame.test/implementation.js +0 -63
  263. package/dist/common/src/components/pure/AppFrame.test/index.js +0 -14
  264. package/dist/common/src/components/pure/AppFrame.test/specification.js +0 -25
  265. package/dist/common/src/components/pure/AppFrame.test/types.js +0 -3
  266. package/dist/common/src/components/pure/ArtifactTree.js +0 -80
  267. package/dist/common/src/components/pure/BuildLogViewer.js +0 -106
  268. package/dist/common/src/components/pure/DebugEnv.js +0 -30
  269. package/dist/common/src/components/pure/FeaturesReporterView.js +0 -23
  270. package/dist/common/src/components/pure/FeaturesReporterView.test/implementation.js +0 -84
  271. package/dist/common/src/components/pure/FeaturesReporterView.test/index.js +0 -14
  272. package/dist/common/src/components/pure/FeaturesReporterView.test/specification.js +0 -27
  273. package/dist/common/src/components/pure/FeaturesReporterView.test/types.js +0 -2
  274. package/dist/common/src/components/pure/FileTree.js +0 -34
  275. package/dist/common/src/components/pure/FileTreeItem.js +0 -29
  276. package/dist/common/src/components/pure/GitHubLoginButton.js +0 -18
  277. package/dist/common/src/components/pure/GitIntegrationView.js +0 -342
  278. package/dist/common/src/components/pure/ModalContent.js +0 -86
  279. package/dist/common/src/components/pure/ModalContent.test/implementation.js +0 -35
  280. package/dist/common/src/components/pure/ModalContent.test/index.js +0 -58
  281. package/dist/common/src/components/pure/ModalContent.test/specification.js +0 -19
  282. package/dist/common/src/components/pure/ModalContent.test/types.js +0 -4
  283. package/dist/common/src/components/pure/NavBar.js +0 -44
  284. package/dist/common/src/components/pure/ProcessManager.js +0 -113
  285. package/dist/common/src/components/pure/ProcessManagerView.js +0 -236
  286. package/dist/common/src/components/pure/ProjectPageView.js +0 -68
  287. package/dist/common/src/components/pure/ProjectPageView.test/implementation.js +0 -184
  288. package/dist/common/src/components/pure/ProjectPageView.test/index.js +0 -14
  289. package/dist/common/src/components/pure/ProjectPageView.test/specification.js +0 -32
  290. package/dist/common/src/components/pure/ProjectPageView.test/types.js +0 -4
  291. package/dist/common/src/components/pure/ProjectsPageView.js +0 -72
  292. package/dist/common/src/components/pure/Settings.js +0 -121
  293. package/dist/common/src/components/pure/Settings.test.js +0 -34
  294. package/dist/common/src/components/pure/SettingsButton.js +0 -13
  295. package/dist/common/src/components/pure/SignIn.js +0 -22
  296. package/dist/common/src/components/pure/SingleProcessView.js +0 -167
  297. package/dist/common/src/components/pure/TestPageView.js +0 -373
  298. package/dist/common/src/components/pure/TestPageView.test/implementation.js +0 -157
  299. package/dist/common/src/components/pure/TestPageView.test/index.js +0 -15
  300. package/dist/common/src/components/pure/TestPageView.test/specification.js +0 -26
  301. package/dist/common/src/components/pure/TestPageView.test/types.js +0 -4
  302. package/dist/common/src/components/pure/TestPageView_utils.js +0 -117
  303. package/dist/common/src/components/pure/TestTable.js +0 -33
  304. package/dist/common/src/components/pure/ThemeCard.js +0 -15
  305. package/dist/common/src/components/pure/ToastNotification.js +0 -14
  306. package/dist/common/src/components/pure/UserProfile.js +0 -27
  307. package/dist/common/src/components/stateful/AuthCallbackPage.js +0 -51
  308. package/dist/common/src/components/stateful/FeaturesReporter.js +0 -60
  309. package/dist/common/src/components/stateful/FileTree.js +0 -59
  310. package/dist/common/src/components/stateful/GitIntegrationPage.js +0 -12
  311. package/dist/common/src/components/stateful/ProcessManagerPage.js +0 -110
  312. package/dist/common/src/components/stateful/ProjectPage.js +0 -102
  313. package/dist/common/src/components/stateful/ProjectsPage.js +0 -116
  314. package/dist/common/src/components/stateful/SettingsPage.js +0 -72
  315. package/dist/common/src/components/stateful/SingleProcessPage.js +0 -137
  316. package/dist/common/src/components/stateful/TestPage.js +0 -270
  317. package/dist/common/src/components/stateful/TextEditorPage.js +0 -154
  318. package/dist/common/src/defaultConfig.js +0 -19
  319. package/dist/common/src/esbuildConfigs/consoleDetectorPlugin.js +0 -38
  320. package/dist/common/src/esbuildConfigs/eslint-formatter-testeranto.js +0 -21
  321. package/dist/common/src/esbuildConfigs/featuresPlugin.js +0 -39
  322. package/dist/common/src/esbuildConfigs/index.js +0 -21
  323. package/dist/common/src/esbuildConfigs/inputFilesPlugin.js +0 -30
  324. package/dist/common/src/esbuildConfigs/nativeImportDetectorPlugin.js +0 -24
  325. package/dist/common/src/esbuildConfigs/node.js +0 -24
  326. package/dist/common/src/esbuildConfigs/pure.js +0 -42
  327. package/dist/common/src/esbuildConfigs/rebuildPlugin.js +0 -19
  328. package/dist/common/src/esbuildConfigs/web.js +0 -48
  329. package/dist/common/src/hooks/useGitMode.js +0 -21
  330. package/dist/common/src/init-docs.js +0 -9
  331. package/dist/common/src/lib/BaseGiven.js +0 -99
  332. package/dist/common/src/lib/BaseSuite.js +0 -91
  333. package/dist/common/src/lib/BaseSuite.test/mock.js +0 -68
  334. package/dist/common/src/lib/BaseSuite.test/node.test.js +0 -10
  335. package/dist/common/src/lib/BaseSuite.test/pure.test.js +0 -10
  336. package/dist/common/src/lib/BaseSuite.test/test.js +0 -229
  337. package/dist/common/src/lib/BaseSuite.test/web.test.js +0 -10
  338. package/dist/common/src/lib/BaseThen.js +0 -64
  339. package/dist/common/src/lib/BaseWhen.js +0 -45
  340. package/dist/common/src/lib/Sidecar.js +0 -7
  341. package/dist/common/src/lib/Tiposkripto.js +0 -173
  342. package/dist/common/src/lib/Tiposkripto.test/MockTiposkripto.js +0 -180
  343. package/dist/common/src/lib/Tiposkripto.test/Tiposkripto.adapter.js +0 -29
  344. package/dist/common/src/lib/Tiposkripto.test/Tiposkripto.implementation.js +0 -213
  345. package/dist/common/src/lib/Tiposkripto.test/Tiposkripto.js +0 -11
  346. package/dist/common/src/lib/Tiposkripto.test/Tiposkripto.specification.js +0 -50
  347. package/dist/common/src/lib/Tiposkripto.test/Tiposkripto.types.js +0 -2
  348. package/dist/common/src/lib/abstractBase.test/MockGiven.js +0 -24
  349. package/dist/common/src/lib/abstractBase.test/MockThen.js +0 -16
  350. package/dist/common/src/lib/abstractBase.test/MockWhen.js +0 -20
  351. package/dist/common/src/lib/abstractBase.test/adapter.js +0 -24
  352. package/dist/common/src/lib/abstractBase.test/implementation.js +0 -38
  353. package/dist/common/src/lib/abstractBase.test/index.js +0 -18
  354. package/dist/common/src/lib/abstractBase.test/specification.js +0 -19
  355. package/dist/common/src/lib/abstractBase.test/types.js +0 -2
  356. package/dist/common/src/lib/index.js +0 -31
  357. package/dist/common/src/lib/pmProxy.js +0 -293
  358. package/dist/common/src/lib/pmProxy.test/adapter.js +0 -54
  359. package/dist/common/src/lib/pmProxy.test/implementation.js +0 -137
  360. package/dist/common/src/lib/pmProxy.test/index.js +0 -15
  361. package/dist/common/src/lib/pmProxy.test/mockPM.js +0 -34
  362. package/dist/common/src/lib/pmProxy.test/mockPMBase.js +0 -131
  363. package/dist/common/src/lib/pmProxy.test/specification.js +0 -179
  364. package/dist/common/src/lib/pmProxy.test/types.js +0 -2
  365. package/dist/common/src/lib/types.js +0 -3
  366. package/dist/common/src/mothership/index.js +0 -21
  367. package/dist/common/src/mothership/test.js +0 -83
  368. package/dist/common/src/run.js +0 -49
  369. package/dist/common/src/services/FileService.js +0 -505
  370. package/dist/common/src/services/GitHubAuthService.js +0 -184
  371. package/dist/common/src/testeranto.js +0 -224
  372. package/dist/common/src/types/features.js +0 -34
  373. package/dist/common/src/utils/api.js +0 -93
  374. package/dist/common/src/utils/buildTemplates.js +0 -37
  375. package/dist/common/src/utils/featureUtils.js +0 -29
  376. package/dist/common/src/utils/gitTest.js +0 -27
  377. package/dist/common/src/utils/golingvuMetafile.js +0 -116
  378. package/dist/common/src/utils/logFiles.js +0 -52
  379. package/dist/common/src/utils/makePrompt.js +0 -116
  380. package/dist/common/src/utils/pitonoMetafile.js +0 -67
  381. package/dist/common/src/utils/queue.js +0 -36
  382. package/dist/common/src/utils.js +0 -143
  383. package/dist/common/src/web.html.js +0 -18
  384. package/dist/common/testeranto.config.js +0 -102
  385. package/dist/common/tsconfig.common.tsbuildinfo +0 -1
  386. package/dist/module/design-editor/DesignEditor.js +0 -40
  387. package/dist/module/design-editor/index.js +0 -2
  388. package/dist/module/design-editor/server.js +0 -92
  389. package/dist/module/design-editor/types.js +0 -1
  390. package/dist/module/package.json +0 -3
  391. package/dist/module/src/App.js +0 -176
  392. package/dist/module/src/CoreTypes.js +0 -1
  393. package/dist/module/src/Init.js +0 -43
  394. package/dist/module/src/Node.js +0 -33
  395. package/dist/module/src/NodeSidecar.js +0 -11
  396. package/dist/module/src/PM/PM_WithBuild.js +0 -128
  397. package/dist/module/src/PM/PM_WithEslintAndTsc.js +0 -197
  398. package/dist/module/src/PM/PM_WithGit.js +0 -477
  399. package/dist/module/src/PM/PM_WithProcesses.js +0 -479
  400. package/dist/module/src/PM/PM_WithWebSocket.js +0 -528
  401. package/dist/module/src/PM/__tests__/nodeSidecar.testeranto.js +0 -103
  402. package/dist/module/src/PM/__tests__/pureSidecar.testeranto.js +0 -88
  403. package/dist/module/src/PM/__tests__/webSidecar.testeranto.js +0 -88
  404. package/dist/module/src/PM/base.js +0 -312
  405. package/dist/module/src/PM/index.js +0 -2
  406. package/dist/module/src/PM/main.js +0 -632
  407. package/dist/module/src/PM/metafileOutputs.js +0 -78
  408. package/dist/module/src/PM/node.js +0 -172
  409. package/dist/module/src/PM/nodeSidecar.js +0 -58
  410. package/dist/module/src/PM/pitonoRunner.js +0 -47
  411. package/dist/module/src/PM/pure.js +0 -99
  412. package/dist/module/src/PM/pureSidecar.js +0 -41
  413. package/dist/module/src/PM/sidecar.js +0 -7
  414. package/dist/module/src/PM/types.js +0 -1
  415. package/dist/module/src/PM/utils.js +0 -196
  416. package/dist/module/src/PM/web.js +0 -102
  417. package/dist/module/src/PM/webSidecar.js +0 -40
  418. package/dist/module/src/Pure.js +0 -45
  419. package/dist/module/src/Pure.test.js +0 -175
  420. package/dist/module/src/PureSidecar.js +0 -9
  421. package/dist/module/src/ReportServer.js +0 -1
  422. package/dist/module/src/ReportServer.test.ts/index.js +0 -73
  423. package/dist/module/src/ReportServerLib.js +0 -1
  424. package/dist/module/src/Types.js +0 -1
  425. package/dist/module/src/Web.js +0 -54
  426. package/dist/module/src/WebSidecar.js +0 -10
  427. package/dist/module/src/components/DesignEditorPage.js +0 -168
  428. package/dist/module/src/components/SunriseAnimation.js +0 -256
  429. package/dist/module/src/components/SunriseAnimation.test/implementation.js +0 -1
  430. package/dist/module/src/components/SunriseAnimation.test/index.js +0 -1
  431. package/dist/module/src/components/SunriseAnimation.test/interface.js +0 -32
  432. package/dist/module/src/components/SunriseAnimation.test/specification.js +0 -1
  433. package/dist/module/src/components/SunriseAnimation.test/types.js +0 -1
  434. package/dist/module/src/components/TestStatusBadge.js +0 -28
  435. package/dist/module/src/components/pure/AppFrame.js +0 -74
  436. package/dist/module/src/components/pure/AppFrame.test/implementation.js +0 -57
  437. package/dist/module/src/components/pure/AppFrame.test/index.js +0 -9
  438. package/dist/module/src/components/pure/AppFrame.test/specification.js +0 -21
  439. package/dist/module/src/components/pure/AppFrame.test/types.js +0 -2
  440. package/dist/module/src/components/pure/ArtifactTree.js +0 -80
  441. package/dist/module/src/components/pure/BuildLogViewer.js +0 -99
  442. package/dist/module/src/components/pure/DebugEnv.js +0 -23
  443. package/dist/module/src/components/pure/FeaturesReporterView.js +0 -16
  444. package/dist/module/src/components/pure/FeaturesReporterView.test/implementation.js +0 -81
  445. package/dist/module/src/components/pure/FeaturesReporterView.test/index.js +0 -9
  446. package/dist/module/src/components/pure/FeaturesReporterView.test/specification.js +0 -23
  447. package/dist/module/src/components/pure/FeaturesReporterView.test/types.js +0 -1
  448. package/dist/module/src/components/pure/FileTree.js +0 -27
  449. package/dist/module/src/components/pure/FileTreeItem.js +0 -22
  450. package/dist/module/src/components/pure/GitHubLoginButton.js +0 -11
  451. package/dist/module/src/components/pure/GitIntegrationView.js +0 -305
  452. package/dist/module/src/components/pure/ModalContent.js +0 -79
  453. package/dist/module/src/components/pure/ModalContent.test/implementation.js +0 -32
  454. package/dist/module/src/components/pure/ModalContent.test/index.js +0 -53
  455. package/dist/module/src/components/pure/ModalContent.test/specification.js +0 -15
  456. package/dist/module/src/components/pure/ModalContent.test/types.js +0 -3
  457. package/dist/module/src/components/pure/NavBar.js +0 -37
  458. package/dist/module/src/components/pure/ProcessManager.js +0 -76
  459. package/dist/module/src/components/pure/ProcessManagerView.js +0 -199
  460. package/dist/module/src/components/pure/ProjectPageView.js +0 -61
  461. package/dist/module/src/components/pure/ProjectPageView.test/implementation.js +0 -181
  462. package/dist/module/src/components/pure/ProjectPageView.test/index.js +0 -9
  463. package/dist/module/src/components/pure/ProjectPageView.test/specification.js +0 -28
  464. package/dist/module/src/components/pure/ProjectPageView.test/types.js +0 -3
  465. package/dist/module/src/components/pure/ProjectsPageView.js +0 -65
  466. package/dist/module/src/components/pure/Settings.js +0 -84
  467. package/dist/module/src/components/pure/Settings.test.js +0 -29
  468. package/dist/module/src/components/pure/SettingsButton.js +0 -6
  469. package/dist/module/src/components/pure/SignIn.js +0 -15
  470. package/dist/module/src/components/pure/SingleProcessView.js +0 -130
  471. package/dist/module/src/components/pure/TestPageView.js +0 -336
  472. package/dist/module/src/components/pure/TestPageView.test/implementation.js +0 -121
  473. package/dist/module/src/components/pure/TestPageView.test/index.js +0 -10
  474. package/dist/module/src/components/pure/TestPageView.test/specification.js +0 -22
  475. package/dist/module/src/components/pure/TestPageView.test/types.js +0 -3
  476. package/dist/module/src/components/pure/TestPageView_utils.js +0 -109
  477. package/dist/module/src/components/pure/TestTable.js +0 -26
  478. package/dist/module/src/components/pure/ThemeCard.js +0 -8
  479. package/dist/module/src/components/pure/ToastNotification.js +0 -7
  480. package/dist/module/src/components/pure/UserProfile.js +0 -20
  481. package/dist/module/src/components/stateful/AuthCallbackPage.js +0 -14
  482. package/dist/module/src/components/stateful/FeaturesReporter.js +0 -23
  483. package/dist/module/src/components/stateful/FileTree.js +0 -59
  484. package/dist/module/src/components/stateful/GitIntegrationPage.js +0 -5
  485. package/dist/module/src/components/stateful/ProcessManagerPage.js +0 -73
  486. package/dist/module/src/components/stateful/ProjectPage.js +0 -65
  487. package/dist/module/src/components/stateful/ProjectsPage.js +0 -79
  488. package/dist/module/src/components/stateful/SettingsPage.js +0 -35
  489. package/dist/module/src/components/stateful/SingleProcessPage.js +0 -100
  490. package/dist/module/src/components/stateful/TestPage.js +0 -233
  491. package/dist/module/src/components/stateful/TextEditorPage.js +0 -117
  492. package/dist/module/src/defaultConfig.js +0 -17
  493. package/dist/module/src/esbuildConfigs/consoleDetectorPlugin.js +0 -32
  494. package/dist/module/src/esbuildConfigs/eslint-formatter-testeranto.js +0 -18
  495. package/dist/module/src/esbuildConfigs/featuresPlugin.js +0 -34
  496. package/dist/module/src/esbuildConfigs/index.js +0 -19
  497. package/dist/module/src/esbuildConfigs/inputFilesPlugin.js +0 -25
  498. package/dist/module/src/esbuildConfigs/nativeImportDetectorPlugin.js +0 -21
  499. package/dist/module/src/esbuildConfigs/node.js +0 -19
  500. package/dist/module/src/esbuildConfigs/pure.js +0 -37
  501. package/dist/module/src/esbuildConfigs/rebuildPlugin.js +0 -14
  502. package/dist/module/src/esbuildConfigs/web.js +0 -43
  503. package/dist/module/src/hooks/useGitMode.js +0 -17
  504. package/dist/module/src/init-docs.js +0 -4
  505. package/dist/module/src/lib/BaseGiven.js +0 -95
  506. package/dist/module/src/lib/BaseSuite.js +0 -87
  507. package/dist/module/src/lib/BaseSuite.test/mock.js +0 -61
  508. package/dist/module/src/lib/BaseSuite.test/node.test.js +0 -5
  509. package/dist/module/src/lib/BaseSuite.test/pure.test.js +0 -5
  510. package/dist/module/src/lib/BaseSuite.test/test.js +0 -225
  511. package/dist/module/src/lib/BaseSuite.test/web.test.js +0 -5
  512. package/dist/module/src/lib/BaseThen.js +0 -60
  513. package/dist/module/src/lib/BaseWhen.js +0 -41
  514. package/dist/module/src/lib/Sidecar.js +0 -3
  515. package/dist/module/src/lib/Tiposkripto.js +0 -170
  516. package/dist/module/src/lib/Tiposkripto.test/MockTiposkripto.js +0 -173
  517. package/dist/module/src/lib/Tiposkripto.test/Tiposkripto.adapter.js +0 -26
  518. package/dist/module/src/lib/Tiposkripto.test/Tiposkripto.implementation.js +0 -210
  519. package/dist/module/src/lib/Tiposkripto.test/Tiposkripto.js +0 -6
  520. package/dist/module/src/lib/Tiposkripto.test/Tiposkripto.specification.js +0 -46
  521. package/dist/module/src/lib/Tiposkripto.test/Tiposkripto.types.js +0 -1
  522. package/dist/module/src/lib/abstractBase.test/MockGiven.js +0 -20
  523. package/dist/module/src/lib/abstractBase.test/MockThen.js +0 -12
  524. package/dist/module/src/lib/abstractBase.test/MockWhen.js +0 -16
  525. package/dist/module/src/lib/abstractBase.test/adapter.js +0 -21
  526. package/dist/module/src/lib/abstractBase.test/implementation.js +0 -35
  527. package/dist/module/src/lib/abstractBase.test/index.js +0 -13
  528. package/dist/module/src/lib/abstractBase.test/specification.js +0 -15
  529. package/dist/module/src/lib/abstractBase.test/types.js +0 -1
  530. package/dist/module/src/lib/index.js +0 -26
  531. package/dist/module/src/lib/pmProxy.js +0 -284
  532. package/dist/module/src/lib/pmProxy.test/adapter.js +0 -51
  533. package/dist/module/src/lib/pmProxy.test/implementation.js +0 -134
  534. package/dist/module/src/lib/pmProxy.test/index.js +0 -10
  535. package/dist/module/src/lib/pmProxy.test/mockPM.js +0 -30
  536. package/dist/module/src/lib/pmProxy.test/mockPMBase.js +0 -127
  537. package/dist/module/src/lib/pmProxy.test/specification.js +0 -175
  538. package/dist/module/src/lib/pmProxy.test/types.js +0 -1
  539. package/dist/module/src/lib/types.js +0 -2
  540. package/dist/module/src/mothership/index.js +0 -16
  541. package/dist/module/src/mothership/test.js +0 -78
  542. package/dist/module/src/run.js +0 -49
  543. package/dist/module/src/services/FileService.js +0 -468
  544. package/dist/module/src/services/GitHubAuthService.js +0 -180
  545. package/dist/module/src/testeranto.js +0 -186
  546. package/dist/module/src/types/features.js +0 -31
  547. package/dist/module/src/utils/api.js +0 -87
  548. package/dist/module/src/utils/buildTemplates.js +0 -33
  549. package/dist/module/src/utils/featureUtils.js +0 -24
  550. package/dist/module/src/utils/gitTest.js +0 -23
  551. package/dist/module/src/utils/golingvuMetafile.js +0 -109
  552. package/dist/module/src/utils/logFiles.js +0 -47
  553. package/dist/module/src/utils/makePrompt.js +0 -109
  554. package/dist/module/src/utils/pitonoMetafile.js +0 -60
  555. package/dist/module/src/utils/queue.js +0 -32
  556. package/dist/module/src/utils.js +0 -130
  557. package/dist/module/src/web.html.js +0 -16
  558. package/dist/module/testeranto.config.js +0 -100
  559. package/dist/module/tsconfig.module.tsbuildinfo +0 -1
  560. package/dist/types/design-editor/DesignEditor.d.ts +0 -1
  561. package/dist/types/src/App.d.ts +0 -19
  562. package/dist/types/src/CoreTypes.d.ts +0 -52
  563. package/dist/types/src/Init.d.ts +0 -2
  564. package/dist/types/src/Node.d.ts +0 -9
  565. package/dist/types/src/NodeSidecar.d.ts +0 -6
  566. package/dist/types/src/PM/PM_WithBuild.d.ts +0 -13
  567. package/dist/types/src/PM/PM_WithEslintAndTsc.d.ts +0 -22
  568. package/dist/types/src/PM/PM_WithGit.d.ts +0 -27
  569. package/dist/types/src/PM/PM_WithProcesses.d.ts +0 -29
  570. package/dist/types/src/PM/PM_WithWebSocket.d.ts +0 -108
  571. package/dist/types/src/PM/__tests__/nodeSidecar.testeranto.d.ts +0 -2
  572. package/dist/types/src/PM/__tests__/pureSidecar.testeranto.d.ts +0 -2
  573. package/dist/types/src/PM/__tests__/webSidecar.testeranto.d.ts +0 -2
  574. package/dist/types/src/PM/base.d.ts +0 -35
  575. package/dist/types/src/PM/index.d.ts +0 -35
  576. package/dist/types/src/PM/main.d.ts +0 -8
  577. package/dist/types/src/PM/node.d.ts +0 -38
  578. package/dist/types/src/PM/nodeSidecar.d.ts +0 -13
  579. package/dist/types/src/PM/pitonoRunner.d.ts +0 -7
  580. package/dist/types/src/PM/pure.d.ts +0 -41
  581. package/dist/types/src/PM/pureSidecar.d.ts +0 -11
  582. package/dist/types/src/PM/sidecar.d.ts +0 -8
  583. package/dist/types/src/PM/types.d.ts +0 -118
  584. package/dist/types/src/PM/utils.d.ts +0 -35
  585. package/dist/types/src/PM/web.d.ts +0 -41
  586. package/dist/types/src/PM/webSidecar.d.ts +0 -11
  587. package/dist/types/src/Pure.d.ts +0 -14
  588. package/dist/types/src/Pure.test.d.ts +0 -2
  589. package/dist/types/src/PureSidecar.d.ts +0 -8
  590. package/dist/types/src/ReportServer.test.ts/index.d.ts +0 -2
  591. package/dist/types/src/Types.d.ts +0 -119
  592. package/dist/types/src/Web.d.ts +0 -9
  593. package/dist/types/src/WebSidecar.d.ts +0 -8
  594. package/dist/types/src/components/DesignEditorPage.d.ts +0 -1
  595. package/dist/types/src/components/SunriseAnimation.d.ts +0 -5
  596. package/dist/types/src/components/SunriseAnimation.test/interface.d.ts +0 -11
  597. package/dist/types/src/components/SunriseAnimation.test/types.d.ts +0 -39
  598. package/dist/types/src/components/TestStatusBadge.d.ts +0 -15
  599. package/dist/types/src/components/pure/AppFrame.d.ts +0 -11
  600. package/dist/types/src/components/pure/AppFrame.test/implementation.d.ts +0 -3
  601. package/dist/types/src/components/pure/AppFrame.test/index.d.ts +0 -3
  602. package/dist/types/src/components/pure/AppFrame.test/specification.d.ts +0 -3
  603. package/dist/types/src/components/pure/AppFrame.test/types.d.ts +0 -33
  604. package/dist/types/src/components/pure/BuildLogViewer.d.ts +0 -7
  605. package/dist/types/src/components/pure/DebugEnv.d.ts +0 -2
  606. package/dist/types/src/components/pure/FeaturesReporterView.d.ts +0 -7
  607. package/dist/types/src/components/pure/FeaturesReporterView.test/implementation.d.ts +0 -3
  608. package/dist/types/src/components/pure/FeaturesReporterView.test/index.d.ts +0 -2
  609. package/dist/types/src/components/pure/FeaturesReporterView.test/specification.d.ts +0 -3
  610. package/dist/types/src/components/pure/FeaturesReporterView.test/types.d.ts +0 -54
  611. package/dist/types/src/components/pure/FileTree.d.ts +0 -6
  612. package/dist/types/src/components/pure/FileTreeItem.d.ts +0 -8
  613. package/dist/types/src/components/pure/GitHubLoginButton.d.ts +0 -8
  614. package/dist/types/src/components/pure/GitIntegrationView.d.ts +0 -1
  615. package/dist/types/src/components/pure/ModalContent.d.ts +0 -7
  616. package/dist/types/src/components/pure/ModalContent.test/implementation.d.ts +0 -3
  617. package/dist/types/src/components/pure/ModalContent.test/index.d.ts +0 -2
  618. package/dist/types/src/components/pure/ModalContent.test/specification.d.ts +0 -3
  619. package/dist/types/src/components/pure/ModalContent.test/types.d.ts +0 -45
  620. package/dist/types/src/components/pure/NavBar.d.ts +0 -23
  621. package/dist/types/src/components/pure/ProcessManager.d.ts +0 -8
  622. package/dist/types/src/components/pure/ProcessManagerView.d.ts +0 -20
  623. package/dist/types/src/components/pure/ProjectPageView.d.ts +0 -14
  624. package/dist/types/src/components/pure/ProjectPageView.test/implementation.d.ts +0 -3
  625. package/dist/types/src/components/pure/ProjectPageView.test/index.d.ts +0 -2
  626. package/dist/types/src/components/pure/ProjectPageView.test/specification.d.ts +0 -3
  627. package/dist/types/src/components/pure/ProjectPageView.test/types.d.ts +0 -57
  628. package/dist/types/src/components/pure/ProjectsPageView.d.ts +0 -29
  629. package/dist/types/src/components/pure/Settings.d.ts +0 -1
  630. package/dist/types/src/components/pure/Settings.test.d.ts +0 -1
  631. package/dist/types/src/components/pure/SettingsButton.d.ts +0 -2
  632. package/dist/types/src/components/pure/SignIn.d.ts +0 -1
  633. package/dist/types/src/components/pure/SingleProcessView.d.ts +0 -10
  634. package/dist/types/src/components/pure/TestPageView.d.ts +0 -16
  635. package/dist/types/src/components/pure/TestPageView.test/implementation.d.ts +0 -12
  636. package/dist/types/src/components/pure/TestPageView.test/index.d.ts +0 -3
  637. package/dist/types/src/components/pure/TestPageView.test/specification.d.ts +0 -11
  638. package/dist/types/src/components/pure/TestPageView.test/types.d.ts +0 -65
  639. package/dist/types/src/components/pure/TestPageView_utils.d.ts +0 -23
  640. package/dist/types/src/components/pure/TestTable.d.ts +0 -16
  641. package/dist/types/src/components/pure/ThemeCard.d.ts +0 -9
  642. package/dist/types/src/components/pure/ToastNotification.d.ts +0 -6
  643. package/dist/types/src/components/pure/UserProfile.d.ts +0 -2
  644. package/dist/types/src/components/stateful/AuthCallbackPage.d.ts +0 -2
  645. package/dist/types/src/components/stateful/FeaturesReporter.d.ts +0 -2
  646. package/dist/types/src/components/stateful/GitIntegrationPage.d.ts +0 -1
  647. package/dist/types/src/components/stateful/ProcessManagerPage.d.ts +0 -2
  648. package/dist/types/src/components/stateful/ProjectPage.d.ts +0 -1
  649. package/dist/types/src/components/stateful/ProjectsPage.d.ts +0 -1
  650. package/dist/types/src/components/stateful/SettingsPage.d.ts +0 -2
  651. package/dist/types/src/components/stateful/SingleProcessPage.d.ts +0 -2
  652. package/dist/types/src/components/stateful/TestPage.d.ts +0 -1
  653. package/dist/types/src/components/stateful/TextEditorPage.d.ts +0 -1
  654. package/dist/types/src/defaultConfig.d.ts +0 -3
  655. package/dist/types/src/esbuildConfigs/consoleDetectorPlugin.d.ts +0 -2
  656. package/dist/types/src/esbuildConfigs/eslint-formatter-testeranto.d.ts +0 -2
  657. package/dist/types/src/esbuildConfigs/featuresPlugin.d.ts +0 -5
  658. package/dist/types/src/esbuildConfigs/index.d.ts +0 -4
  659. package/dist/types/src/esbuildConfigs/inputFilesPlugin.d.ts +0 -7
  660. package/dist/types/src/esbuildConfigs/nativeImportDetectorPlugin.d.ts +0 -2
  661. package/dist/types/src/esbuildConfigs/node.d.ts +0 -4
  662. package/dist/types/src/esbuildConfigs/pure.d.ts +0 -4
  663. package/dist/types/src/esbuildConfigs/rebuildPlugin.d.ts +0 -6
  664. package/dist/types/src/esbuildConfigs/web.d.ts +0 -4
  665. package/dist/types/src/hooks/useGitMode.d.ts +0 -7
  666. package/dist/types/src/init-docs.d.ts +0 -1
  667. package/dist/types/src/lib/BaseGiven.d.ts +0 -44
  668. package/dist/types/src/lib/BaseSuite.d.ts +0 -46
  669. package/dist/types/src/lib/BaseSuite.test/mock.d.ts +0 -21
  670. package/dist/types/src/lib/BaseSuite.test/node.test.d.ts +0 -2
  671. package/dist/types/src/lib/BaseSuite.test/pure.test.d.ts +0 -2
  672. package/dist/types/src/lib/BaseSuite.test/test.d.ts +0 -37
  673. package/dist/types/src/lib/BaseSuite.test/web.test.d.ts +0 -2
  674. package/dist/types/src/lib/BaseThen.d.ts +0 -27
  675. package/dist/types/src/lib/BaseWhen.d.ts +0 -27
  676. package/dist/types/src/lib/Sidecar.d.ts +0 -5
  677. package/dist/types/src/lib/Tiposkripto.d.ts +0 -37
  678. package/dist/types/src/lib/Tiposkripto.test/MockTiposkripto.d.ts +0 -18
  679. package/dist/types/src/lib/Tiposkripto.test/Tiposkripto.adapter.d.ts +0 -3
  680. package/dist/types/src/lib/Tiposkripto.test/Tiposkripto.d.ts +0 -2
  681. package/dist/types/src/lib/Tiposkripto.test/Tiposkripto.implementation.d.ts +0 -3
  682. package/dist/types/src/lib/Tiposkripto.test/Tiposkripto.specification.d.ts +0 -3
  683. package/dist/types/src/lib/Tiposkripto.test/Tiposkripto.types.d.ts +0 -58
  684. package/dist/types/src/lib/abstractBase.test/MockGiven.d.ts +0 -9
  685. package/dist/types/src/lib/abstractBase.test/MockThen.d.ts +0 -6
  686. package/dist/types/src/lib/abstractBase.test/MockWhen.d.ts +0 -6
  687. package/dist/types/src/lib/abstractBase.test/adapter.d.ts +0 -3
  688. package/dist/types/src/lib/abstractBase.test/implementation.d.ts +0 -3
  689. package/dist/types/src/lib/abstractBase.test/index.d.ts +0 -2
  690. package/dist/types/src/lib/abstractBase.test/specification.d.ts +0 -3
  691. package/dist/types/src/lib/abstractBase.test/types.d.ts +0 -39
  692. package/dist/types/src/lib/index.d.ts +0 -73
  693. package/dist/types/src/lib/pmProxy.d.ts +0 -12
  694. package/dist/types/src/lib/pmProxy.test/adapter.d.ts +0 -3
  695. package/dist/types/src/lib/pmProxy.test/implementation.d.ts +0 -3
  696. package/dist/types/src/lib/pmProxy.test/index.d.ts +0 -6
  697. package/dist/types/src/lib/pmProxy.test/mockPM.d.ts +0 -10
  698. package/dist/types/src/lib/pmProxy.test/mockPMBase.d.ts +0 -40
  699. package/dist/types/src/lib/pmProxy.test/specification.d.ts +0 -3
  700. package/dist/types/src/lib/pmProxy.test/types.d.ts +0 -42
  701. package/dist/types/src/lib/types.d.ts +0 -24
  702. package/dist/types/src/mothership/index.d.ts +0 -2
  703. package/dist/types/src/mothership/test.d.ts +0 -2
  704. package/dist/types/src/services/FileService.d.ts +0 -34
  705. package/dist/types/src/services/GitHubAuthService.d.ts +0 -32
  706. package/dist/types/src/testeranto.d.ts +0 -1
  707. package/dist/types/src/types/features.d.ts +0 -7
  708. package/dist/types/src/utils/api.d.ts +0 -10
  709. package/dist/types/src/utils/buildTemplates.d.ts +0 -1
  710. package/dist/types/src/utils/featureUtils.d.ts +0 -6
  711. package/dist/types/src/utils/gitTest.d.ts +0 -11
  712. package/dist/types/src/utils/golingvuMetafile.d.ts +0 -19
  713. package/dist/types/src/utils/logFiles.d.ts +0 -75
  714. package/dist/types/src/utils/makePrompt.d.ts +0 -2
  715. package/dist/types/src/utils/pitonoMetafile.d.ts +0 -7
  716. package/dist/types/src/utils/queue.d.ts +0 -11
  717. package/dist/types/src/utils.d.ts +0 -20
  718. package/dist/types/src/web.html.d.ts +0 -2
  719. package/dist/types/tsconfig.types.tsbuildinfo +0 -1
  720. package/example/__pycache__/Calculator.cpython-313.pyc +0 -0
  721. package/example/vendor/github.com/adamwong246/testeranto/src/golingvu/README.md +0 -187
  722. package/example/vendor/github.com/adamwong246/testeranto/src/golingvu/base_given.go +0 -163
  723. package/example/vendor/github.com/adamwong246/testeranto/src/golingvu/base_suite.go +0 -85
  724. package/example/vendor/github.com/adamwong246/testeranto/src/golingvu/base_then.go +0 -21
  725. package/example/vendor/github.com/adamwong246/testeranto/src/golingvu/base_when.go +0 -21
  726. package/example/vendor/github.com/adamwong246/testeranto/src/golingvu/golingvu.go +0 -554
  727. package/example/vendor/github.com/adamwong246/testeranto/src/golingvu/test_adapter.go +0 -33
  728. package/example/vendor/github.com/adamwong246/testeranto/src/golingvu/types.go +0 -72
  729. package/example/vendor/modules.txt +0 -5
  730. package/pitono/__init__.py +0 -54
  731. package/pitono/types.py +0 -78
  732. package/src/PM/metafileOutputs.ts +0 -90
  733. package/src/golingvu/base_suite_test.go +0 -197
  734. package/src/pitono/PM/__pycache__/python.cpython-313.pyc +0 -0
  735. package/src/pitono/__pycache__/Pitono.cpython-313.pyc +0 -0
  736. package/src/pitono/__pycache__/__init__.cpython-313.pyc +0 -0
  737. package/src/pitono/__pycache__/base_given.cpython-313.pyc +0 -0
  738. package/src/pitono/__pycache__/base_suite.cpython-313.pyc +0 -0
  739. package/src/pitono/__pycache__/base_then.cpython-313.pyc +0 -0
  740. package/src/pitono/__pycache__/base_when.cpython-313.pyc +0 -0
  741. package/src/pitono/__pycache__/core_generator.cpython-313.pyc +0 -0
  742. package/src/pitono/__pycache__/simple_adapter.cpython-313.pyc +0 -0
  743. package/src/pitono/__pycache__/types.cpython-313.pyc +0 -0
  744. package/src/templates/frontpage.html +0 -340
  745. package/src/templates/frontpage.md +0 -79
  746. package/testeranto/bundles/golang/core/Calculator.golingvu.golingvu.go +0 -53
  747. package/testeranto/bundles/node/core/chunk-VXVF7WFO.mjs +0 -4321
  748. package/testeranto/bundles/node/core/example/Calculator.test.mjs +0 -503
  749. package/testeranto/bundles/python/core/Calculator.pitono.test.py +0 -24
  750. package/testeranto/bundles/python/core/test_example.py +0 -24
  751. package/testeranto/bundles/web/core/chunk-DFRN4SYZ.mjs +0 -2297
  752. package/testeranto/bundles/web/core/chunk-Q5TONB2Z.mjs +0 -6874
  753. package/testeranto/bundles/web/core/src/components/pure/ModalContent.test/index.css +0 -11697
  754. package/testeranto/bundles/web/core/src/components/pure/ModalContent.test/index.mjs +0 -336
  755. package/testeranto/reports/core/src/components/pure/FeaturesReporterView.test/index/web/tests.json +0 -68
  756. package/testeranto/reports/core/src/components/pure/ProjectPageView.test/index/web/tests.json +0 -88
  757. package/testeranto/reports/core/src/lib/BaseSuite.test/web.test/web/tests.json +0 -29
  758. /package/{pitono → src/pitono}/core_generator.py +0 -0
  759. /package/{pitono → src/pitono}/pitono.egg-info/dependency_links.txt +0 -0
  760. /package/{pitono → src/pitono}/pitono.egg-info/entry_points.txt +0 -0
  761. /package/{pitono → src/pitono}/pitono.egg-info/top_level.txt +0 -0
  762. /package/{pitono → src/pitono}/pyproject.toml +0 -0
  763. /package/{pitono → src/pitono}/setup.py +0 -0
  764. /package/{pitono → src/pitono}/simple_adapter.py +0 -0
  765. /package/{dist/types/src/PM/metafileOutputs.d.ts → testeranto/helpo_chat_message.txt} +0 -0
  766. /package/{dist/types/src/ReportServer.d.ts → testeranto/reports/core/example/test_example/python/stdout.log} +0 -0
  767. /package/{dist/types/src/ReportServerLib.d.ts → testeranto/reports/core/src/components/pure/FeaturesReporterView.test/index/web/lint_errors.txt} +0 -0
  768. /package/{dist/types/src/components/SunriseAnimation.test/implementation.d.ts → testeranto/reports/core/src/components/pure/ModalContent.test/index/web/debug.log} +0 -0
  769. /package/{dist/types/src/components/SunriseAnimation.test/index.d.ts → testeranto/reports/core/src/components/pure/ModalContent.test/index/web/error.log} +0 -0
  770. /package/{dist/types/src/components/SunriseAnimation.test/specification.d.ts → testeranto/reports/core/src/components/pure/ModalContent.test/index/web/exit.log} +0 -0
  771. /package/{dist/types/src/components/pure/ArtifactTree.d.ts → testeranto/reports/core/src/components/pure/ModalContent.test/index/web/info.log} +0 -0
  772. /package/{dist/types/src/components/stateful/FileTree.d.ts → testeranto/reports/core/src/components/pure/ModalContent.test/index/web/warn.log} +0 -0
  773. /package/{dist/types/src/run.d.ts → testeranto/reports/core/src/lib/BaseSuite.test/web.test/web/lint_errors.txt} +0 -0
@@ -1,218 +1,233 @@
1
1
  /* eslint-disable @typescript-eslint/no-unused-vars */
2
- import React, { useState, useEffect } from 'react';
3
- import { Container, Row, Col, Card, Button, Badge, Alert, Spinner } from 'react-bootstrap';
4
- import { getFileService, type FileChange, type RemoteStatus } from '../../services/FileService';
5
- import { useGitMode } from '../../hooks/useGitMode';
2
+ import React, { useState, useEffect, useCallback } from "react";
3
+ import {
4
+ Container,
5
+ Row,
6
+ Col,
7
+ Card,
8
+ Button,
9
+ Badge,
10
+ Alert,
11
+ Spinner,
12
+ } from "react-bootstrap";
13
+ import { Editor } from "@monaco-editor/react";
14
+ import { getFileService, FileChange, RemoteStatus } from "../../services/FileService";
6
15
 
7
- export const GitIntegrationView = () => {
8
- const { mode, setMode, isStatic, isDev, isGit } = useGitMode();
9
- const [changes, setChanges] = useState<FileChange[]>([]);
10
- const [isLoading, setIsLoading] = useState(true);
11
- const [error, setError] = useState<string | null>(null);
12
- const [commitSummary, setCommitSummary] = useState('');
13
- const [commitDescription, setCommitDescription] = useState('');
14
- const [remoteStatus, setRemoteStatus] = useState<RemoteStatus>({ ahead: 0, behind: 0 });
15
- const [currentBranch, setCurrentBranch] = useState('main');
16
- const [isCommitting, setIsCommitting] = useState(false);
17
- const [isPushing, setIsPushing] = useState(false);
18
- const [isPulling, setIsPulling] = useState(false);
16
+ export const GitIntegrationView = ({
17
+ mode,
18
+ setMode,
19
+ fileService,
20
+ setChanges,
21
+ remoteStatus,
22
+ changes,
23
+ currentBranch,
24
+ setIsLoading,
25
+ isLoading,
26
+ setCurrentBranch,
27
+ setRemoteStatus,
28
+ setError,
29
+ loadChanges,
30
+ loadGitStatus,
31
+ error,
32
+ getStatusBadgeVariant,
33
+ commitSummary,
34
+ setCommitSummary,
35
+ commitDescription,
36
+ setCommitDescription,
37
+ handleSaveChanges,
38
+ isCommitting,
39
+ handleShareChanges,
40
+ getSyncStatusVariant,
41
+ handleGetUpdates,
42
+ isPulling,
43
+ isPushing,
44
+ setIsPushing,
45
+ getSyncStatusText,
46
+ }) => {
47
+ const [selectedFile, setSelectedFile] = useState<string | null>(null);
48
+ const [originalContent, setOriginalContent] = useState<string>("");
49
+ const [modifiedContent, setModifiedContent] = useState<string>("");
50
+ const [isDiffLoading, setIsDiffLoading] = useState(false);
19
51
 
20
- const [fileService, setFileService] = useState(() => getFileService(mode));
52
+ // Load diff when a file is selected
53
+ const loadFileDiff = useCallback(
54
+ async (filePath: string) => {
55
+ console.log("loadFileDiff - filePath:", filePath);
56
+ if (mode === "static") return;
21
57
 
22
- useEffect(() => {
23
- const newFileService = getFileService(mode);
24
- setFileService(newFileService);
25
- // We can't call loadChanges and loadGitStatus here directly because they use fileService state
26
- // Instead, we'll set up a separate effect to trigger when fileService changes
27
- }, [mode]);
28
-
29
- // Add a new effect to load data when fileService changes
30
- useEffect(() => {
31
- if (fileService && mode === 'dev') {
32
- const devFileService = fileService as any;
33
-
34
- // Set up real-time updates for dev mode
35
- const unsubscribeChanges = devFileService.onChanges?.((newChanges: FileChange[]) => {
36
- setChanges(newChanges);
37
- });
38
-
39
- const unsubscribeStatus = devFileService.onStatusUpdate?.((newStatus: RemoteStatus) => {
40
- setRemoteStatus(newStatus);
41
- });
42
-
43
- const unsubscribeBranch = devFileService.onBranchUpdate?.((newBranch: string) => {
44
- setCurrentBranch(newBranch);
45
- });
46
-
47
- const loadData = async () => {
48
- try {
49
- setIsLoading(true);
50
- await loadChanges();
51
- await loadGitStatus();
52
- } catch (err) {
53
- console.warn('Failed to load data:', err);
54
- } finally {
55
- setIsLoading(false);
56
- }
57
- };
58
-
59
- loadData();
60
-
61
- return () => {
62
- unsubscribeChanges?.();
63
- unsubscribeStatus?.();
64
- unsubscribeBranch?.();
65
- };
66
- } else if (fileService) {
67
- // For non-dev modes, just load data once
68
- const loadData = async () => {
58
+ setIsDiffLoading(true);
59
+ try {
60
+ setSelectedFile(filePath);
69
61
  try {
70
- setIsLoading(true);
71
- await loadChanges();
72
- await loadGitStatus();
73
- } catch (err) {
74
- console.warn('Failed to load data:', err);
75
- } finally {
76
- setIsLoading(false);
62
+ const currentContent = await fileService.readFile(filePath);
63
+ setModifiedContent(currentContent);
64
+ } catch (error) {
65
+ console.error("Error reading file:", error);
66
+ setModifiedContent("");
67
+ setError(
68
+ `Cannot read file: ${filePath}. The development server may not be running or the file API endpoints may not be implemented. Check that the server is running and has the /api/files/read endpoint.`
69
+ );
77
70
  }
78
- };
71
+ setOriginalContent("");
72
+ } catch (error) {
73
+ console.error("Failed to load file diff:", error);
74
+ setError("Failed to load file content for diff");
75
+ } finally {
76
+ setIsDiffLoading(false);
77
+ }
78
+ },
79
+ [fileService, mode, setError]
80
+ );
79
81
 
80
- loadData();
82
+ // Auto-select first file when changes load
83
+ useEffect(() => {
84
+ if (changes.length > 0 && !selectedFile) {
85
+ console.log("First change path:", changes[0].path);
86
+ loadFileDiff(changes[0].path);
81
87
  }
82
- }, [fileService, mode]);
88
+ }, [changes, selectedFile, loadFileDiff]);
83
89
 
84
- const loadChanges = async (event?: React.MouseEvent) => {
85
- // Prevent default behavior if event exists
86
- if (event) {
87
- event.preventDefault();
88
- }
89
-
90
- try {
91
- setIsLoading(true);
92
- setError(null);
93
- const changes = await fileService.getChanges();
94
- setChanges(changes);
95
- } catch (err) {
96
- const errorMessage = err instanceof Error ? err.message : 'Failed to load changes';
97
- console.error('Failed to load changes:', err);
98
- setError(errorMessage);
99
- } finally {
100
- setIsLoading(false);
101
- }
102
- };
90
+ // const loadChanges = async (event?: React.MouseEvent) => {
91
+ // // Prevent default behavior if event exists
92
+ // if (event) {
93
+ // event.preventDefault();
94
+ // }
103
95
 
104
- const loadGitStatus = async (event?: React.MouseEvent) => {
105
- // Prevent default behavior if event exists
106
- if (event) {
107
- event.preventDefault();
108
- }
109
-
110
- try {
111
- setError(null);
112
- const branch = await fileService.getCurrentBranch();
113
- const status = await fileService.getRemoteStatus();
114
- setCurrentBranch(branch);
115
- setRemoteStatus(status);
116
- } catch (err) {
117
- const errorMessage = err instanceof Error ? err.message : 'Failed to load git status';
118
- console.error('Failed to load git status:', err);
119
- setError(errorMessage);
120
- }
121
- };
96
+ // try {
97
+ // setIsLoading(true);
98
+ // setError(null);
99
+ // const changes = await fileService.getChanges();
100
+ // setChanges(changes);
101
+ // } catch (err) {
102
+ // const errorMessage =
103
+ // err instanceof Error ? err.message : "Failed to load changes";
104
+ // console.error("Failed to load changes:", err);
105
+ // setError(errorMessage);
106
+ // } finally {
107
+ // setIsLoading(false);
108
+ // }
109
+ // };
122
110
 
111
+ // const loadGitStatus = async (event?: React.MouseEvent) => {
112
+ // // Prevent default behavior if event exists
113
+ // if (event) {
114
+ // event.preventDefault();
115
+ // }
123
116
 
124
- const handleSaveChanges = async () => {
125
- if (!commitSummary.trim()) {
126
- setError('Please provide a commit summary');
127
- return;
128
- }
117
+ // try {
118
+ // setError(null);
119
+ // const branch = await fileService.getCurrentBranch();
120
+ // const status = await fileService.getRemoteStatus();
121
+ // setCurrentBranch(branch);
122
+ // setRemoteStatus(status);
123
+ // } catch (err) {
124
+ // const errorMessage =
125
+ // err instanceof Error ? err.message : "Failed to load git status";
126
+ // console.error("Failed to load git status:", err);
127
+ // setError(errorMessage);
128
+ // }
129
+ // };
129
130
 
130
- try {
131
- setIsCommitting(true);
132
- setError(null);
133
- await fileService.commitChanges(commitSummary, commitDescription);
134
- setCommitSummary('');
135
- setCommitDescription('');
136
- await loadChanges();
137
- await loadGitStatus();
138
- } catch (err) {
139
- const errorMessage = err instanceof Error ? err.message : 'Failed to commit changes';
140
- console.error('Failed to commit changes:', err);
141
- setError(errorMessage);
142
- } finally {
143
- setIsCommitting(false);
144
- }
145
- };
131
+ // const handleSaveChanges = async () => {
132
+ // if (!commitSummary.trim()) {
133
+ // setError("Please provide a commit summary");
134
+ // return;
135
+ // }
146
136
 
147
- const handleShareChanges = async () => {
148
- if (!commitSummary.trim()) {
149
- setError('Please provide a commit summary');
150
- return;
151
- }
137
+ // try {
138
+ // setIsCommitting(true);
139
+ // setError(null);
140
+ // await fileService.commitChanges(commitSummary, commitDescription);
141
+ // setCommitSummary("");
142
+ // setCommitDescription("");
143
+ // await loadChanges();
144
+ // await loadGitStatus();
145
+ // } catch (err) {
146
+ // const errorMessage =
147
+ // err instanceof Error ? err.message : "Failed to commit changes";
148
+ // console.error("Failed to commit changes:", err);
149
+ // setError(errorMessage);
150
+ // } finally {
151
+ // setIsCommitting(false);
152
+ // }
153
+ // };
152
154
 
153
- try {
154
- setIsCommitting(true);
155
- setIsPushing(true);
156
- setError(null);
157
- await fileService.commitChanges(commitSummary, commitDescription);
158
- await fileService.pushChanges();
159
- setCommitSummary('');
160
- setCommitDescription('');
161
- await loadChanges();
162
- await loadGitStatus();
163
- } catch (err) {
164
- const errorMessage = err instanceof Error ? err.message : 'Failed to share changes';
165
- console.error('Failed to share changes:', err);
166
- setError(errorMessage);
167
- } finally {
168
- setIsCommitting(false);
169
- setIsPushing(false);
170
- }
171
- };
155
+ // const handleShareChanges = async () => {
156
+ // if (!commitSummary.trim()) {
157
+ // setError("Please provide a commit summary");
158
+ // return;
159
+ // }
172
160
 
173
- const handleGetUpdates = async () => {
174
- try {
175
- setIsPulling(true);
176
- setError(null);
177
- await fileService.pullChanges();
178
- await loadChanges();
179
- await loadGitStatus();
180
- } catch (err) {
181
- const errorMessage = err instanceof Error ? err.message : 'Failed to get updates';
182
- console.error('Failed to get updates:', err);
183
- setError(errorMessage);
184
- } finally {
185
- setIsPulling(false);
186
- }
187
- };
161
+ // try {
162
+ // setIsCommitting(true);
163
+ // setIsPushing(true);
164
+ // setError(null);
165
+ // await fileService.commitChanges(commitSummary, commitDescription);
166
+ // await fileService.pushChanges();
167
+ // setCommitSummary("");
168
+ // setCommitDescription("");
169
+ // await loadChanges();
170
+ // await loadGitStatus();
171
+ // } catch (err) {
172
+ // const errorMessage =
173
+ // err instanceof Error ? err.message : "Failed to share changes";
174
+ // console.error("Failed to share changes:", err);
175
+ // setError(errorMessage);
176
+ // } finally {
177
+ // setIsCommitting(false);
178
+ // setIsPushing(false);
179
+ // }
180
+ // };
188
181
 
189
- const getStatusBadgeVariant = (status: string) => {
190
- switch (status) {
191
- case 'modified': return 'warning';
192
- case 'added': return 'success';
193
- case 'deleted': return 'danger';
194
- case 'conflicted': return 'danger';
195
- default: return 'secondary';
196
- }
197
- };
182
+ // const handleGetUpdates = async () => {
183
+ // try {
184
+ // setIsPulling(true);
185
+ // setError(null);
186
+ // await fileService.pullChanges();
187
+ // await loadChanges();
188
+ // await loadGitStatus();
189
+ // } catch (err) {
190
+ // const errorMessage =
191
+ // err instanceof Error ? err.message : "Failed to get updates";
192
+ // console.error("Failed to get updates:", err);
193
+ // setError(errorMessage);
194
+ // } finally {
195
+ // setIsPulling(false);
196
+ // }
197
+ // };
198
198
 
199
- const getSyncStatusText = () => {
200
- if (remoteStatus.ahead > 0 && remoteStatus.behind > 0) {
201
- return `${remoteStatus.ahead} ahead, ${remoteStatus.behind} behind`;
202
- } else if (remoteStatus.ahead > 0) {
203
- return `${remoteStatus.ahead} ahead`;
204
- } else if (remoteStatus.behind > 0) {
205
- return `${remoteStatus.behind} behind`;
206
- } else {
207
- return 'Up to date';
208
- }
209
- };
199
+ // const getStatusBadgeVariant = (status: string) => {
200
+ // switch (status) {
201
+ // case "modified":
202
+ // return "warning";
203
+ // case "added":
204
+ // return "success";
205
+ // case "deleted":
206
+ // return "danger";
207
+ // case "conflicted":
208
+ // return "danger";
209
+ // default:
210
+ // return "secondary";
211
+ // }
212
+ // };
213
+
214
+ // const getSyncStatusText = () => {
215
+ // if (remoteStatus.ahead > 0 && remoteStatus.behind > 0) {
216
+ // return `${remoteStatus.ahead} ahead, ${remoteStatus.behind} behind`;
217
+ // } else if (remoteStatus.ahead > 0) {
218
+ // return `${remoteStatus.ahead} ahead`;
219
+ // } else if (remoteStatus.behind > 0) {
220
+ // return `${remoteStatus.behind} behind`;
221
+ // } else {
222
+ // return "Up to date";
223
+ // }
224
+ // };
210
225
 
211
- const getSyncStatusVariant = () => {
212
- if (remoteStatus.behind > 0) return 'warning';
213
- if (remoteStatus.ahead > 0) return 'info';
214
- return 'success';
215
- };
226
+ // const getSyncStatusVariant = () => {
227
+ // if (remoteStatus.behind > 0) return "warning";
228
+ // if (remoteStatus.ahead > 0) return "info";
229
+ // return "success";
230
+ // };
216
231
 
217
232
  // if (error) console.error(error);
218
233
 
@@ -220,30 +235,45 @@ export const GitIntegrationView = () => {
220
235
  <Container fluid>
221
236
  <Row className="mb-4">
222
237
  <Col>
223
- <h2>Git Integration</h2>
224
238
  <div className="d-flex align-items-center gap-2">
225
- <Badge bg={mode === 'static' ? 'secondary' : mode === 'dev' ? 'success' : 'primary'}>
239
+ <Badge
240
+ bg={
241
+ mode === "static"
242
+ ? "secondary"
243
+ : mode === "dev"
244
+ ? "success"
245
+ : "primary"
246
+ }
247
+ >
226
248
  {mode.toUpperCase()} MODE
227
249
  </Badge>
228
250
  <select
229
251
  className="form-select form-select-sm"
230
- style={{ width: 'auto' }}
252
+ style={{ width: "auto" }}
231
253
  value={mode}
232
- onChange={(e) => setMode(e.target.value as 'static' | 'dev' | 'git')}
254
+ onChange={(e) =>
255
+ setMode(e.target.value as "static" | "dev" | "git")
256
+ }
233
257
  >
234
258
  <option value="static">Static (Read-only)</option>
235
259
  <option value="dev">Development (Read-write)</option>
236
260
  <option value="git">Git Remote</option>
237
261
  </select>
238
262
  </div>
239
- {mode === 'static' && (
263
+ {mode === "static" && (
240
264
  <Alert variant="info" className="mt-2">
241
- <small>Static mode: Read-only access. Git operations are not available in this mode.</small>
265
+ <small>
266
+ Static mode: Read-only access. Git operations are not available
267
+ in this mode.
268
+ </small>
242
269
  </Alert>
243
270
  )}
244
- {mode === 'git' && (
271
+ {mode === "git" && (
245
272
  <Alert variant="warning" className="mt-2">
246
- <small>Git Remote mode: Git-based collaboration. Some features may be limited.</small>
273
+ <small>
274
+ Git Remote mode: Git-based collaboration. Some features may be
275
+ limited.
276
+ </small>
247
277
  </Alert>
248
278
  )}
249
279
  </Col>
@@ -251,39 +281,56 @@ export const GitIntegrationView = () => {
251
281
 
252
282
  {error && (
253
283
  <Alert variant="danger" onClose={() => setError(null)} dismissible>
254
- {error}
284
+ <div>{error}</div>
285
+ <small className="text-muted">
286
+ Check the browser console for more details
287
+ </small>
255
288
  </Alert>
256
289
  )}
257
290
 
258
- {mode !== 'static' && (
291
+ {mode !== "static" && (
259
292
  <Row>
293
+ {/* Left Column - 1/3 width */}
260
294
  <Col md={4}>
261
295
  <Card>
262
296
  <Card.Header className="d-flex justify-content-between align-items-center">
263
297
  <h5 className="mb-0">Changes</h5>
264
- <Button variant="outline-secondary" size="sm" onClick={loadChanges} disabled={isLoading}>
265
- {isLoading ? <Spinner animation="border" size="sm" /> : '↻'}
298
+ <Button
299
+ variant="outline-secondary"
300
+ size="sm"
301
+ onClick={loadChanges}
302
+ disabled={isLoading}
303
+ >
304
+ {isLoading ? <Spinner animation="border" size="sm" /> : "↻"}
266
305
  </Button>
267
306
  </Card.Header>
268
- <Card.Body style={{ maxHeight: '400px', overflowY: 'auto' }}>
307
+ <Card.Body style={{ maxHeight: "400px", overflowY: "auto" }}>
269
308
  {isLoading ? (
270
309
  <div className="text-center">
271
310
  <Spinner animation="border" />
272
311
  <div>Loading changes...</div>
273
312
  </div>
274
313
  ) : changes.length === 0 ? (
275
- <div className="text-center text-muted">No changes detected</div>
314
+ <div className="text-center text-muted">
315
+ No changes detected
316
+ </div>
276
317
  ) : (
277
318
  <div>
278
319
  {changes.map((change, index) => (
279
- <div key={index} className="d-flex align-items-center mb-2">
320
+ <div
321
+ key={index}
322
+ className="d-flex align-items-center mb-2"
323
+ >
280
324
  <Badge
281
325
  bg={getStatusBadgeVariant(change.status)}
282
326
  className="me-2"
283
327
  >
284
- {change.status.charAt(0).toUpperCase() + change.status.slice(1)}
328
+ {change.status.charAt(0).toUpperCase() +
329
+ change.status.slice(1)}
285
330
  </Badge>
286
- <span className="small text-truncate">{change.path}</span>
331
+ <span className="small text-truncate">
332
+ {change.path}
333
+ </span>
287
334
  </div>
288
335
  ))}
289
336
  </div>
@@ -299,7 +346,9 @@ export const GitIntegrationView = () => {
299
346
  </Card.Header>
300
347
  <Card.Body>
301
348
  <div className="mb-3">
302
- <label htmlFor="summary" className="form-label">Summary *</label>
349
+ <label htmlFor="summary" className="form-label">
350
+ Summary *
351
+ </label>
303
352
  <input
304
353
  type="text"
305
354
  className="form-control"
@@ -307,12 +356,16 @@ export const GitIntegrationView = () => {
307
356
  placeholder="What did you change?"
308
357
  value={commitSummary}
309
358
  onChange={(e) => setCommitSummary(e.target.value)}
310
- disabled={mode === 'static'}
359
+ disabled={mode === "static"}
311
360
  />
312
- <div className="form-text">{commitSummary.length}/72 characters</div>
361
+ <div className="form-text">
362
+ {commitSummary.length}/72 characters
363
+ </div>
313
364
  </div>
314
365
  <div className="mb-3">
315
- <label htmlFor="description" className="form-label">Description</label>
366
+ <label htmlFor="description" className="form-label">
367
+ Description
368
+ </label>
316
369
  <textarea
317
370
  className="form-control"
318
371
  id="description"
@@ -320,36 +373,55 @@ export const GitIntegrationView = () => {
320
373
  placeholder="Why did you change it?"
321
374
  value={commitDescription}
322
375
  onChange={(e) => setCommitDescription(e.target.value)}
323
- disabled={mode === 'static'}
376
+ disabled={mode === "static"}
324
377
  />
325
378
  </div>
326
379
  <div className="d-grid gap-2">
327
380
  <Button
328
381
  variant="primary"
329
382
  onClick={handleSaveChanges}
330
- disabled={mode === 'static' || isCommitting || changes.length === 0 || !commitSummary.trim()}
383
+ disabled={
384
+ mode === "static" ||
385
+ isCommitting ||
386
+ changes.length === 0 ||
387
+ !commitSummary.trim()
388
+ }
331
389
  >
332
390
  {isCommitting ? (
333
391
  <>
334
- <Spinner animation="border" size="sm" className="me-2" />
392
+ <Spinner
393
+ animation="border"
394
+ size="sm"
395
+ className="me-2"
396
+ />
335
397
  Saving...
336
398
  </>
337
399
  ) : (
338
- 'Save to Computer'
400
+ "Save to Computer"
339
401
  )}
340
402
  </Button>
341
403
  <Button
342
404
  variant="success"
343
405
  onClick={handleShareChanges}
344
- disabled={mode === 'static' || isCommitting || isPushing || changes.length === 0 || !commitSummary.trim()}
406
+ disabled={
407
+ mode === "static" ||
408
+ isCommitting ||
409
+ isPushing ||
410
+ changes.length === 0 ||
411
+ !commitSummary.trim()
412
+ }
345
413
  >
346
414
  {isPushing ? (
347
415
  <>
348
- <Spinner animation="border" size="sm" className="me-2" />
416
+ <Spinner
417
+ animation="border"
418
+ size="sm"
419
+ className="me-2"
420
+ />
349
421
  Sharing...
350
422
  </>
351
423
  ) : (
352
- 'Save & Share'
424
+ "Save & Share"
353
425
  )}
354
426
  </Button>
355
427
  </div>
@@ -361,33 +433,45 @@ export const GitIntegrationView = () => {
361
433
  <Card>
362
434
  <Card.Header className="d-flex justify-content-between align-items-center">
363
435
  <h5 className="mb-0">Sync with Remote</h5>
364
- <Button variant="outline-secondary" size="sm" onClick={(e) => loadGitStatus(e)}>
436
+ <Button
437
+ variant="outline-secondary"
438
+ size="sm"
439
+ onClick={(e) => loadGitStatus(e)}
440
+ >
365
441
 
366
442
  </Button>
367
443
  </Card.Header>
368
444
  <Card.Body>
369
445
  <div className="text-center mb-3">
370
- <Badge bg={getSyncStatusVariant()}>{getSyncStatusText()}</Badge>
371
- <div className="small text-muted mt-1">Branch: {currentBranch}</div>
446
+ <Badge bg={getSyncStatusVariant()}>
447
+ {getSyncStatusText()}
448
+ </Badge>
449
+ <div className="small text-muted mt-1">
450
+ Branch: {currentBranch}
451
+ </div>
372
452
  </div>
373
453
  <div className="d-grid gap-2">
374
454
  <Button
375
455
  variant="outline-primary"
376
456
  onClick={handleGetUpdates}
377
- disabled={mode === 'static' || isPulling}
457
+ disabled={mode === "static" || isPulling}
378
458
  >
379
459
  {isPulling ? (
380
460
  <>
381
- <Spinner animation="border" size="sm" className="me-2" />
461
+ <Spinner
462
+ animation="border"
463
+ size="sm"
464
+ className="me-2"
465
+ />
382
466
  Updating...
383
467
  </>
384
468
  ) : (
385
- 'Get Updates'
469
+ "Get Updates"
386
470
  )}
387
471
  </Button>
388
472
  <Button
389
473
  variant="outline-success"
390
- disabled={mode === 'static' || remoteStatus.ahead === 0}
474
+ disabled={mode === "static" || remoteStatus.ahead === 0}
391
475
  onClick={async (e) => {
392
476
  e.preventDefault();
393
477
  try {
@@ -396,8 +480,11 @@ export const GitIntegrationView = () => {
396
480
  await fileService.pushChanges();
397
481
  await loadGitStatus();
398
482
  } catch (err) {
399
- const errorMessage = err instanceof Error ? err.message : 'Failed to push changes';
400
- console.error('Failed to push changes:', err);
483
+ const errorMessage =
484
+ err instanceof Error
485
+ ? err.message
486
+ : "Failed to push changes";
487
+ console.error("Failed to push changes:", err);
401
488
  setError(errorMessage);
402
489
  } finally {
403
490
  setIsPushing(false);
@@ -406,7 +493,11 @@ export const GitIntegrationView = () => {
406
493
  >
407
494
  {isPushing ? (
408
495
  <>
409
- <Spinner animation="border" size="sm" className="me-2" />
496
+ <Spinner
497
+ animation="border"
498
+ size="sm"
499
+ className="me-2"
500
+ />
410
501
  Sharing...
411
502
  </>
412
503
  ) : (
@@ -421,18 +512,216 @@ export const GitIntegrationView = () => {
421
512
  </div>
422
513
  </Card.Body>
423
514
  </Card>
515
+
516
+ {/* Changes below Sync with Remote */}
517
+ <Card>
518
+ <Card.Header className="d-flex justify-content-between align-items-center">
519
+ <h5 className="mb-0">Changes</h5>
520
+ <Button
521
+ variant="outline-secondary"
522
+ size="sm"
523
+ onClick={loadChanges}
524
+ disabled={isLoading}
525
+ >
526
+ {isLoading ? <Spinner animation="border" size="sm" /> : "↻"}
527
+ </Button>
528
+ </Card.Header>
529
+ <Card.Body style={{ maxHeight: "400px", overflowY: "auto" }}>
530
+ {isLoading ? (
531
+ <div className="text-center">
532
+ <Spinner animation="border" />
533
+ <div>Loading changes...</div>
534
+ </div>
535
+ ) : changes.length === 0 ? (
536
+ <div className="text-center text-muted">
537
+ No changes detected
538
+ </div>
539
+ ) : (
540
+ <div>
541
+ {changes.map((change, index) => (
542
+ <div
543
+ key={index}
544
+ className={`d-flex align-items-center mb-2 ${selectedFile === change.path
545
+ ? "bg-light rounded p-1"
546
+ : ""
547
+ }`}
548
+ style={{ cursor: "pointer" }}
549
+ onClick={() => loadFileDiff(change.path)}
550
+ >
551
+ <Badge
552
+ bg={getStatusBadgeVariant(change.status)}
553
+ className="me-2"
554
+ >
555
+ {change.status.charAt(0).toUpperCase() +
556
+ change.status.slice(1)}
557
+ </Badge>
558
+ <span className="small text-truncate">
559
+ {change.path}
560
+ </span>
561
+ </div>
562
+ ))}
563
+ </div>
564
+ )}
565
+ </Card.Body>
566
+ </Card>
567
+ </Col>
568
+
569
+ {/* Right Column - 2/3 width */}
570
+ <Col md={8}>
571
+ {/* Changes Preview at the top */}
572
+ <Card className="mb-3">
573
+ <Card.Header>
574
+ <h5>Changes Preview</h5>
575
+ </Card.Header>
576
+ <Card.Body style={{ height: "400px" }}>
577
+ {isDiffLoading ? (
578
+ <div className="text-center">
579
+ <Spinner animation="border" />
580
+ <div>Loading diff...</div>
581
+ </div>
582
+ ) : selectedFile ? (
583
+ modifiedContent ? (
584
+ <Editor
585
+ height="100%"
586
+ language="typescript"
587
+ original={originalContent}
588
+ modified={modifiedContent}
589
+ options={{
590
+ readOnly: true,
591
+ renderSideBySide: true,
592
+ minimap: { enabled: false },
593
+ scrollBeyondLastLine: false,
594
+ fontSize: 12,
595
+ lineNumbers: "on",
596
+ folding: true,
597
+ glyphMargin: false,
598
+ lineDecorationsWidth: 10,
599
+ lineNumbersMinChars: 3,
600
+ scrollbar: {
601
+ vertical: "auto",
602
+ horizontal: "auto",
603
+ },
604
+ renderLineHighlight: "all",
605
+ }}
606
+ />
607
+ ) : (
608
+ <div className="text-center text-muted">
609
+ <p>Could not load file content.</p>
610
+ <small>
611
+ Check that the development server is running and has
612
+ file API endpoints implemented.
613
+ </small>
614
+ </div>
615
+ )
616
+ ) : (
617
+ <div className="text-center text-muted">
618
+ Select a file to view changes
619
+ </div>
620
+ )}
621
+ </Card.Body>
622
+ </Card>
623
+
624
+ {/* Commit Changes below Changes Preview */}
625
+ <Card>
626
+ <Card.Header>
627
+ <h5>Commit Changes</h5>
628
+ </Card.Header>
629
+ <Card.Body>
630
+ <div className="mb-3">
631
+ <label htmlFor="summary" className="form-label">
632
+ Summary *
633
+ </label>
634
+ <input
635
+ type="text"
636
+ className="form-control"
637
+ id="summary"
638
+ placeholder="What did you change?"
639
+ value={commitSummary}
640
+ onChange={(e) => setCommitSummary(e.target.value)}
641
+ disabled={mode === "static"}
642
+ />
643
+ <div className="form-text">
644
+ {commitSummary.length}/72 characters
645
+ </div>
646
+ </div>
647
+ <div className="mb-3">
648
+ <label htmlFor="description" className="form-label">
649
+ Description
650
+ </label>
651
+ <textarea
652
+ className="form-control"
653
+ id="description"
654
+ rows={3}
655
+ placeholder="Why did you change it?"
656
+ value={commitDescription}
657
+ onChange={(e) => setCommitDescription(e.target.value)}
658
+ disabled={mode === "static"}
659
+ />
660
+ </div>
661
+ <div className="d-grid gap-2">
662
+ <Button
663
+ variant="primary"
664
+ onClick={handleSaveChanges}
665
+ disabled={
666
+ mode === "static" ||
667
+ isCommitting ||
668
+ changes.length === 0 ||
669
+ !commitSummary.trim()
670
+ }
671
+ >
672
+ {isCommitting ? (
673
+ <>
674
+ <Spinner
675
+ animation="border"
676
+ size="sm"
677
+ className="me-2"
678
+ />
679
+ Saving...
680
+ </>
681
+ ) : (
682
+ "Save to Computer"
683
+ )}
684
+ </Button>
685
+ <Button
686
+ variant="success"
687
+ onClick={handleShareChanges}
688
+ disabled={
689
+ mode === "static" ||
690
+ isCommitting ||
691
+ isPushing ||
692
+ changes.length === 0 ||
693
+ !commitSummary.trim()
694
+ }
695
+ >
696
+ {isPushing ? (
697
+ <>
698
+ <Spinner
699
+ animation="border"
700
+ size="sm"
701
+ className="me-2"
702
+ />
703
+ Sharing...
704
+ </>
705
+ ) : (
706
+ "Save & Share"
707
+ )}
708
+ </Button>
709
+ </div>
710
+ </Card.Body>
711
+ </Card>
424
712
  </Col>
425
713
  </Row>
426
714
  )}
427
-
428
- {mode === 'static' && (
715
+
716
+ {mode === "static" && (
429
717
  <Row>
430
718
  <Col>
431
719
  <Alert variant="info" className="text-center">
432
720
  <h5>Git Operations Not Available</h5>
433
721
  <p>
434
- Git functionality is disabled in Static Mode. Switch to Development or Git Remote mode
435
- to access version control features.
722
+ Git functionality is disabled in Static Mode. Switch to
723
+ Development or Git Remote mode to access version control
724
+ features.
436
725
  </p>
437
726
  </Alert>
438
727
  </Col>