testeranto 0.173.0 → 0.189.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 (819) hide show
  1. package/CNAME +1 -0
  2. package/README.html +302 -0
  3. package/README.md +24 -4
  4. package/dist/common/src/App.js +43 -0
  5. package/dist/common/src/Node.js +4 -8
  6. package/dist/common/src/PM/PM_WithEslintAndTsc.js +2 -33
  7. package/dist/common/src/PM/base.js +4 -5
  8. package/dist/common/src/PM/layers/base/PM_Base.js +1 -0
  9. package/dist/common/src/PM/layers/base/components/PageOperations.js +1 -0
  10. package/dist/common/src/PM/layers/base/components/PageOperations.testeranto.js +1 -0
  11. package/dist/common/src/PM/layers/linting/components/Linter.js +1 -0
  12. package/dist/common/src/PM/layers/linting/components/TypeChecker.js +1 -0
  13. package/dist/common/src/PM/layers/main/components/SidecarManager.js +1 -0
  14. package/dist/common/src/PM/layers/main/components/TestRunner.js +1 -0
  15. package/dist/common/src/PM/main.js +248 -150
  16. package/dist/common/src/PM/node.js +4 -1
  17. package/dist/common/src/PM/nodeSidecar.js +1 -0
  18. package/dist/common/src/PM/pure.js +15 -7
  19. package/dist/common/src/PM/pureSidecar.js +1 -1
  20. package/dist/common/src/PM/types.js +1 -0
  21. package/dist/common/src/PM/web.js +6 -2
  22. package/dist/common/src/Pure.js +1 -5
  23. package/dist/common/src/Pure.test.js +22 -20
  24. package/dist/common/src/ReportServerLib.js +11 -5
  25. package/dist/common/src/build.js +30 -39
  26. package/dist/common/src/components/SunriseAnimation.js +291 -0
  27. package/dist/common/src/components/SunriseAnimation.test/interface.js +67 -0
  28. package/dist/common/src/components/SunriseAnimation.test/types.js +2 -0
  29. package/dist/common/src/components/TestStatusBadge.js +1 -21
  30. package/dist/common/src/components/pure/AppFrame.js +20 -0
  31. package/dist/common/src/components/pure/AppFrame.test/implementation.js +63 -0
  32. package/dist/common/src/components/pure/AppFrame.test/index.js +14 -0
  33. package/dist/common/src/components/pure/AppFrame.test/specification.js +25 -0
  34. package/dist/common/src/components/pure/AppFrame.test/types.js +3 -0
  35. package/dist/common/src/components/pure/FeaturesReporterView.js +23 -0
  36. package/dist/common/src/components/pure/FeaturesReporterView.test/implementation.js +84 -0
  37. package/dist/common/src/components/pure/FeaturesReporterView.test/index.js +14 -0
  38. package/dist/common/src/components/pure/FeaturesReporterView.test/specification.js +27 -0
  39. package/dist/common/src/components/pure/FeaturesReporterView.test/types.js +2 -0
  40. package/dist/common/src/components/pure/ModalContent.js +86 -0
  41. package/dist/common/src/components/pure/ModalContent.test/implementation.js +33 -0
  42. package/dist/common/src/components/pure/ModalContent.test/index.js +12 -0
  43. package/dist/common/src/components/pure/ModalContent.test/specification.js +19 -0
  44. package/dist/common/src/components/pure/ModalContent.test/types.js +4 -0
  45. package/dist/common/src/components/pure/ProjectPageView.js +53 -76
  46. package/dist/common/src/components/pure/ProjectPageView.test/implementation.js +118 -33
  47. package/dist/common/src/components/pure/ProjectPageView.test/index.js +5 -1
  48. package/dist/common/src/components/pure/ProjectPageView.test/specification.js +15 -2
  49. package/dist/common/src/components/pure/ProjectPageView.test/types.js +2 -0
  50. package/dist/common/src/components/pure/ProjectsPageView.js +66 -0
  51. package/dist/common/src/components/pure/SettingsButton.js +83 -0
  52. package/dist/common/src/components/pure/TestPageView.js +134 -0
  53. package/dist/common/src/components/pure/TestPageView.test/implementation.js +202 -0
  54. package/dist/common/src/components/pure/TestPageView.test/index.js +15 -0
  55. package/dist/common/src/components/pure/TestPageView.test/specification.js +26 -0
  56. package/dist/common/src/components/pure/TestPageView.test/types.js +4 -0
  57. package/dist/common/src/components/pure/ThemeCard.js +15 -0
  58. package/dist/common/src/components/stateful/FeaturesReporter.js +59 -0
  59. package/dist/common/src/components/stateful/ProjectPage.js +100 -0
  60. package/dist/common/src/components/stateful/ProjectsPage.js +92 -0
  61. package/dist/common/src/components/stateful/TestPage.js +133 -0
  62. package/dist/common/src/defaultConfig.js +1 -0
  63. package/dist/common/src/esbuildConfigs/node.js +1 -3
  64. package/dist/common/src/esbuildConfigs/web.js +1 -1
  65. package/dist/common/src/lib/BaseSuite.js +14 -11
  66. package/dist/common/src/lib/BaseSuite.test/mock.js +0 -11
  67. package/dist/common/src/lib/BaseSuite.test/test.js +11 -22
  68. package/dist/common/src/lib/Sidecar.js +1 -0
  69. package/dist/common/src/lib/abstractBase.js +52 -48
  70. package/dist/common/src/lib/baseBuilder.test/baseBuilder.test.adapter.js +0 -6
  71. package/dist/common/src/lib/baseBuilder.test/baseBuilder.test.implementation.js +3 -1
  72. package/dist/common/src/lib/baseBuilder.test/baseBuilder.test.mock.js +28 -17
  73. package/dist/common/src/lib/baseBuilder.test/baseBuilder.test.pure.js +2 -2
  74. package/dist/common/src/lib/basebuilder.js +32 -25
  75. package/dist/common/src/lib/classBuilder.js +2 -0
  76. package/dist/common/src/lib/core.test/MockCore.js +0 -14
  77. package/dist/common/src/lib/core.test/core.test.adapter.js +2 -9
  78. package/dist/common/src/lib/core.test/core.test.implementation.js +3 -7
  79. package/dist/common/src/lib/index.js +2 -0
  80. package/dist/common/src/lib/pmProxy.js +208 -100
  81. package/dist/common/src/lib/pmProxy.test/adapter.js +8 -2
  82. package/dist/common/src/lib/pmProxy.test/implementation.js +34 -5
  83. package/dist/common/src/lib/pmProxy.test/mockPMBase.js +9 -0
  84. package/dist/common/src/mothership/index.js +5 -0
  85. package/dist/common/src/mothership/test.js +44 -25
  86. package/dist/common/src/types/features.js +34 -0
  87. package/dist/common/src/utils/api.js +42 -23
  88. package/dist/common/src/utils/featureUtils.js +29 -0
  89. package/dist/common/src/utils/logFiles.js +25 -0
  90. package/dist/common/src/utils/makePrompt.js +115 -0
  91. package/dist/common/src/web.html.js +2 -6
  92. package/dist/common/testeranto.config.js +64 -36
  93. package/dist/common/tsconfig.common.tsbuildinfo +1 -1
  94. package/dist/module/src/App.js +9 -17
  95. package/dist/module/src/Node.js +4 -8
  96. package/dist/module/src/PM/PM_WithEslintAndTsc.js +3 -34
  97. package/dist/module/src/PM/base.js +4 -5
  98. package/dist/module/src/PM/layers/base/PM_Base.js +1 -0
  99. package/dist/module/src/PM/layers/base/components/PageOperations.js +1 -0
  100. package/dist/module/src/PM/layers/base/components/PageOperations.testeranto.js +1 -0
  101. package/dist/module/src/PM/layers/linting/components/Linter.js +1 -0
  102. package/dist/module/src/PM/layers/linting/components/TypeChecker.js +1 -0
  103. package/dist/module/src/PM/layers/main/components/SidecarManager.js +1 -0
  104. package/dist/module/src/PM/layers/main/components/TestRunner.js +1 -0
  105. package/dist/module/src/PM/main.js +220 -122
  106. package/dist/module/src/PM/node.js +4 -1
  107. package/dist/module/src/PM/nodeSidecar.js +1 -0
  108. package/dist/module/src/PM/pure.js +15 -7
  109. package/dist/module/src/PM/pureSidecar.js +1 -1
  110. package/dist/module/src/PM/types.js +1 -0
  111. package/dist/module/src/PM/web.js +6 -2
  112. package/dist/module/src/Pure.js +1 -5
  113. package/dist/module/src/Pure.test.js +22 -20
  114. package/dist/module/src/ReportServerLib.js +11 -5
  115. package/dist/module/src/build.js +25 -37
  116. package/dist/module/src/components/SunriseAnimation.test/interface.js +32 -1
  117. package/dist/module/src/components/TestStatusBadge.js +1 -21
  118. package/dist/module/src/components/pure/AppFrame.js +13 -0
  119. package/dist/module/src/components/pure/AppFrame.test/implementation.js +57 -0
  120. package/dist/module/src/components/pure/AppFrame.test/index.js +9 -0
  121. package/dist/module/src/components/pure/AppFrame.test/specification.js +21 -0
  122. package/dist/module/src/components/pure/AppFrame.test/types.js +2 -0
  123. package/dist/module/src/components/pure/FeaturesReporterView.js +16 -0
  124. package/dist/module/src/components/pure/FeaturesReporterView.test/implementation.js +81 -0
  125. package/dist/module/src/components/pure/FeaturesReporterView.test/index.js +9 -0
  126. package/dist/module/src/components/pure/FeaturesReporterView.test/specification.js +23 -0
  127. package/dist/module/src/components/pure/ModalContent.js +79 -0
  128. package/dist/module/src/components/pure/ModalContent.test/implementation.js +30 -0
  129. package/dist/module/src/components/pure/ModalContent.test/index.js +7 -0
  130. package/dist/module/src/components/pure/ModalContent.test/specification.js +15 -0
  131. package/dist/module/src/components/pure/ModalContent.test/types.js +3 -0
  132. package/dist/module/src/components/pure/ProjectPageView.js +54 -77
  133. package/dist/module/src/components/pure/ProjectPageView.test/implementation.js +118 -33
  134. package/dist/module/src/components/pure/ProjectPageView.test/index.js +5 -1
  135. package/dist/module/src/components/pure/ProjectPageView.test/specification.js +15 -2
  136. package/dist/module/src/components/pure/ProjectPageView.test/types.js +2 -0
  137. package/dist/module/src/components/pure/ProjectsPageView.js +5 -4
  138. package/dist/module/src/components/pure/SettingsButton.js +43 -0
  139. package/dist/module/src/components/pure/TestPageView.js +100 -121
  140. package/dist/module/src/components/pure/TestPageView.test/implementation.js +166 -0
  141. package/dist/module/src/components/pure/TestPageView.test/index.js +10 -0
  142. package/dist/module/src/components/pure/TestPageView.test/specification.js +22 -0
  143. package/dist/module/src/components/pure/TestPageView.test/types.js +3 -0
  144. package/dist/module/src/components/pure/ThemeCard.js +8 -0
  145. package/dist/module/src/components/stateful/FeaturesReporter.js +22 -0
  146. package/dist/module/src/components/stateful/ProjectPage.js +1 -1
  147. package/dist/module/src/components/stateful/TestPage.js +25 -11
  148. package/dist/module/src/defaultConfig.js +1 -0
  149. package/dist/module/src/esbuildConfigs/node.js +1 -3
  150. package/dist/module/src/esbuildConfigs/web.js +1 -1
  151. package/dist/module/src/lib/BaseSuite.js +14 -11
  152. package/dist/module/src/lib/BaseSuite.test/mock.js +0 -11
  153. package/dist/module/src/lib/BaseSuite.test/test.js +11 -22
  154. package/dist/module/src/lib/Sidecar.js +1 -0
  155. package/dist/module/src/lib/abstractBase.js +52 -48
  156. package/dist/module/src/lib/baseBuilder.test/baseBuilder.test.adapter.js +0 -6
  157. package/dist/module/src/lib/baseBuilder.test/baseBuilder.test.implementation.js +3 -1
  158. package/dist/module/src/lib/baseBuilder.test/baseBuilder.test.mock.js +28 -17
  159. package/dist/module/src/lib/baseBuilder.test/baseBuilder.test.pure.js +1 -1
  160. package/dist/module/src/lib/basebuilder.js +32 -25
  161. package/dist/module/src/lib/classBuilder.js +2 -0
  162. package/dist/module/src/lib/core.test/MockCore.js +0 -14
  163. package/dist/module/src/lib/core.test/core.test.adapter.js +2 -9
  164. package/dist/module/src/lib/core.test/core.test.implementation.js +3 -7
  165. package/dist/module/src/lib/index.js +2 -0
  166. package/dist/module/src/lib/pmProxy.js +208 -100
  167. package/dist/module/src/lib/pmProxy.test/adapter.js +8 -2
  168. package/dist/module/src/lib/pmProxy.test/implementation.js +34 -5
  169. package/dist/module/src/lib/pmProxy.test/mockPMBase.js +9 -0
  170. package/dist/module/src/mothership/index.js +5 -0
  171. package/dist/module/src/mothership/test.js +44 -25
  172. package/dist/module/src/types/features.js +31 -0
  173. package/dist/module/src/utils/api.js +41 -21
  174. package/dist/module/src/utils/featureUtils.js +24 -0
  175. package/dist/module/src/utils/logFiles.js +21 -0
  176. package/dist/module/src/utils/makePrompt.js +108 -0
  177. package/dist/module/src/web.html.js +2 -6
  178. package/dist/module/testeranto.config.js +64 -36
  179. package/dist/module/tsconfig.module.tsbuildinfo +1 -1
  180. package/dist/prebuild/App.css +444 -12
  181. package/dist/prebuild/App.js +1318 -1053
  182. package/dist/prebuild/ReportServer.mjs +10 -4
  183. package/dist/prebuild/build.mjs +88 -104
  184. package/dist/prebuild/mothership/index.mjs +5 -0
  185. package/dist/prebuild/run.mjs +360 -232
  186. package/dist/tsconfig.tsbuildinfo +1 -0
  187. package/dist/types/App.d.ts +1 -0
  188. package/dist/types/{src/PM → PM}/base.d.ts +1 -1
  189. package/dist/types/PM/layers/main/components/SidecarManager.d.ts +0 -0
  190. package/dist/types/PM/layers/main/components/TestRunner.d.ts +0 -0
  191. package/dist/types/{src/PM → PM}/main.d.ts +18 -3
  192. package/dist/types/{src/PM → PM}/node.d.ts +1 -1
  193. package/dist/types/{src/PM → PM}/pure.d.ts +7 -4
  194. package/dist/types/PM/types.d.ts +0 -0
  195. package/dist/types/{src/PM → PM}/web.d.ts +2 -2
  196. package/dist/types/ReportServerLib.d.ts +1 -0
  197. package/dist/types/{src/Types.d.ts → Types.d.ts} +1 -0
  198. package/dist/types/components/SunriseAnimation.d.ts +5 -0
  199. package/dist/types/components/SunriseAnimation.test/implementation.d.ts +0 -0
  200. package/dist/types/components/SunriseAnimation.test/index.d.ts +0 -0
  201. package/dist/types/components/SunriseAnimation.test/interface.d.ts +11 -0
  202. package/dist/types/components/SunriseAnimation.test/specification.d.ts +0 -0
  203. package/dist/types/components/SunriseAnimation.test/types.d.ts +39 -0
  204. package/dist/types/components/pure/AppFrame.d.ts +9 -0
  205. package/dist/types/components/pure/AppFrame.test/implementation.d.ts +3 -0
  206. package/dist/types/components/pure/AppFrame.test/index.d.ts +5 -0
  207. package/dist/types/components/pure/AppFrame.test/types.d.ts +33 -0
  208. package/dist/types/components/pure/FeaturesReporterView.d.ts +7 -0
  209. package/dist/types/{src/components/pure/ProjectPageView.test → components/pure/FeaturesReporterView.test}/index.d.ts +1 -2
  210. package/dist/types/components/pure/FeaturesReporterView.test/specification.d.ts +3 -0
  211. package/dist/types/components/pure/FeaturesReporterView.test/types.d.ts +54 -0
  212. package/dist/types/components/pure/ModalContent.d.ts +7 -0
  213. package/dist/types/components/pure/ModalContent.test/implementation.d.ts +3 -0
  214. package/dist/types/components/pure/ModalContent.test/index.d.ts +2 -0
  215. package/dist/types/components/pure/ModalContent.test/specification.d.ts +3 -0
  216. package/dist/types/components/pure/ModalContent.test/types.d.ts +45 -0
  217. package/dist/types/components/pure/ProjectPageView.d.ts +14 -0
  218. package/dist/types/components/pure/ProjectPageView.test/implementation.d.ts +3 -0
  219. package/dist/types/components/pure/ProjectPageView.test/index.d.ts +2 -0
  220. package/dist/types/components/pure/ProjectPageView.test/specification.d.ts +3 -0
  221. package/dist/types/components/pure/ProjectPageView.test/types.d.ts +57 -0
  222. package/dist/types/components/pure/ProjectsPageView.d.ts +29 -0
  223. package/dist/types/components/pure/SettingsButton.d.ts +3 -0
  224. package/dist/types/components/pure/TestPageView.d.ts +15 -0
  225. package/dist/types/components/pure/TestPageView.test/implementation.d.ts +11 -0
  226. package/dist/types/components/pure/TestPageView.test/index.d.ts +32 -0
  227. package/dist/types/components/pure/TestPageView.test/specification.d.ts +11 -0
  228. package/dist/types/components/pure/TestPageView.test/types.d.ts +65 -0
  229. package/dist/types/components/pure/ThemeCard.d.ts +9 -0
  230. package/dist/types/components/stateful/FeaturesReporter.d.ts +2 -0
  231. package/dist/types/components/stateful/ProjectPage.d.ts +1 -0
  232. package/dist/types/components/stateful/ProjectsPage.d.ts +1 -0
  233. package/dist/types/components/stateful/TestPage.d.ts +1 -0
  234. package/dist/types/init-docs.d.ts +1 -0
  235. package/dist/types/{src/lib → lib}/BaseSuite.d.ts +2 -0
  236. package/dist/types/{src/lib → lib}/abstractBase.d.ts +5 -7
  237. package/dist/types/{src/lib → lib}/abstractBase.test/MockGiven.d.ts +1 -1
  238. package/dist/types/lib/baseBuilder.test/baseBuilder.test.pure.d.ts +3 -0
  239. package/dist/types/{src/lib → lib}/index.d.ts +7 -7
  240. package/dist/types/{src/lib → lib}/pmProxy.d.ts +3 -3
  241. package/dist/types/run.d.ts +1 -0
  242. package/dist/types/tsconfig.types.tsbuildinfo +1 -1
  243. package/dist/types/types/features.d.ts +7 -0
  244. package/dist/types/{src/utils → utils}/api.d.ts +1 -5
  245. package/dist/types/utils/featureUtils.d.ts +6 -0
  246. package/dist/types/utils/logFiles.d.ts +7 -0
  247. package/dist/types/utils/makePrompt.d.ts +2 -0
  248. package/dist/types/{src/web.html.d.ts → web.html.d.ts} +1 -1
  249. package/docs/index.md +17 -0
  250. package/docs/testing.prompt.txt +1 -3
  251. package/docs.html +28 -10
  252. package/index.d.ts +38 -13
  253. package/index.html +59 -205
  254. package/marketing.md +166 -0
  255. package/package.json +16 -8
  256. package/scripts/compile-docs.js +24 -14
  257. package/smil30/SMIL-anim.mod.xsd +163 -0
  258. package/smil30/SMIL-control.mod.xsd +73 -0
  259. package/smil30/SMIL-layout.mod.xsd +149 -0
  260. package/smil30/SMIL-link.mod.xsd +145 -0
  261. package/smil30/SMIL-media.mod.xsd +1646 -0
  262. package/smil30/SMIL-metainformation.mod.xsd +45 -0
  263. package/smil30/SMIL-smiltext.mod.xsd +353 -0
  264. package/smil30/SMIL-state.mod.xsd +133 -0
  265. package/smil30/SMIL-struct.mod.xsd +70 -0
  266. package/smil30/SMIL-timing.mod.xsd +105 -0
  267. package/smil30/SMIL-transition.mod.xsd +229 -0
  268. package/smil30/SMIL.xsd +63 -0
  269. package/smil30/its.xsd +42 -0
  270. package/smil30/smil-attribs-1.mod.xsd +610 -0
  271. package/smil30/smil-datatypes-1.mod.xsd +72 -0
  272. package/smil30/smil-framework-1.mod.xsd +45 -0
  273. package/smil30/xml.xsd +16 -0
  274. package/src/App.scss +4 -13
  275. package/src/App.tsx +11 -25
  276. package/src/Node.ts +6 -9
  277. package/src/PM/PM_WithEslintAndTsc.ts +7 -93
  278. package/src/PM/__tests__/nodeSidecar.testeranto.ts +2 -0
  279. package/src/PM/base.ts +4 -10
  280. package/src/PM/layers/base/PM_Base.ts +0 -0
  281. package/src/PM/layers/base/components/PageOperations.testeranto.ts +0 -0
  282. package/src/PM/layers/base/components/PageOperations.ts +0 -0
  283. package/src/PM/layers/linting/components/Linter.ts +0 -0
  284. package/src/PM/layers/linting/components/TypeChecker.ts +0 -0
  285. package/src/PM/layers/main/components/SidecarManager.ts +0 -0
  286. package/src/PM/layers/main/components/TestRunner.ts +0 -0
  287. package/src/PM/main.ts +266 -140
  288. package/src/PM/node.ts +6 -1
  289. package/src/PM/nodeSidecar.ts +1 -0
  290. package/src/PM/pure.ts +15 -16
  291. package/src/PM/pureSidecar.ts +1 -1
  292. package/src/PM/types.ts +0 -0
  293. package/src/PM/web.ts +7 -2
  294. package/src/Pure.test.ts +27 -26
  295. package/src/Pure.ts +1 -9
  296. package/src/README.md +66 -0
  297. package/src/ReportServerLib.ts +10 -7
  298. package/src/Types.ts +1 -0
  299. package/src/build.ts +28 -54
  300. package/src/components/{pure/ProjectPageView.test/index.ts → SunriseAnimation.test/index.tsx} +7 -4
  301. package/src/components/SunriseAnimation.test/interface.ts +49 -0
  302. package/src/components/SunriseAnimation.test/types.ts +53 -0
  303. package/src/components/TestStatusBadge.tsx +2 -23
  304. package/src/components/pure/AppFrame.test/implementation.tsx +72 -0
  305. package/src/components/pure/AppFrame.test/index.tsx +22 -0
  306. package/src/components/pure/AppFrame.test/specification.ts +35 -0
  307. package/src/components/pure/AppFrame.test/types.ts +65 -0
  308. package/src/components/pure/AppFrame.tsx +29 -0
  309. package/src/components/pure/FeaturesReporterView.test/implementation.tsx +106 -0
  310. package/src/components/pure/FeaturesReporterView.test/index.tsx +18 -0
  311. package/src/components/pure/FeaturesReporterView.test/specification.ts +39 -0
  312. package/src/components/pure/FeaturesReporterView.test/types.ts +77 -0
  313. package/src/components/pure/FeaturesReporterView.tsx +37 -0
  314. package/src/components/pure/ModalContent.test/implementation.tsx +43 -0
  315. package/src/components/pure/ModalContent.test/index.tsx +15 -0
  316. package/src/components/pure/ModalContent.test/specification.ts +27 -0
  317. package/src/components/pure/ModalContent.test/types.ts +72 -0
  318. package/src/components/pure/ModalContent.tsx +182 -0
  319. package/src/components/pure/ProjectPageView.test/implementation.tsx +135 -36
  320. package/src/components/pure/ProjectPageView.test/index.tsx +20 -0
  321. package/src/components/pure/ProjectPageView.test/specification.ts +15 -2
  322. package/src/components/pure/ProjectPageView.test/types.ts +57 -13
  323. package/src/components/pure/ProjectPageView.tsx +155 -121
  324. package/src/components/pure/ProjectsPageView.tsx +36 -5
  325. package/src/components/pure/SettingsButton.md +1 -0
  326. package/src/components/pure/SettingsButton.tsx +66 -0
  327. package/src/components/pure/TestPageView.test/implementation.ts +194 -0
  328. package/src/components/pure/TestPageView.test/index.tsx +20 -0
  329. package/src/components/pure/TestPageView.test/specification.ts +59 -0
  330. package/src/components/pure/TestPageView.test/types.ts +92 -0
  331. package/src/components/pure/TestPageView.tsx +272 -283
  332. package/src/components/pure/ThemeCard.tsx +34 -0
  333. package/src/components/stateful/FeaturesReporter.tsx +24 -0
  334. package/src/components/stateful/ProjectPage.tsx +4 -3
  335. package/src/components/stateful/TestPage.tsx +27 -18
  336. package/src/defaultConfig.ts +1 -0
  337. package/src/esbuildConfigs/node.ts +1 -1
  338. package/src/esbuildConfigs/web.ts +2 -1
  339. package/src/lib/BaseSuite.test/mock.ts +1 -27
  340. package/src/lib/BaseSuite.test/test.ts +15 -37
  341. package/src/lib/BaseSuite.ts +19 -21
  342. package/src/lib/Sidecar.ts +2 -0
  343. package/src/lib/abstractBase.test/MockGiven.ts +1 -1
  344. package/src/lib/abstractBase.ts +72 -56
  345. package/src/lib/baseBuilder.test/baseBuilder.test.adapter.ts +0 -6
  346. package/src/lib/baseBuilder.test/baseBuilder.test.implementation.ts +3 -1
  347. package/src/lib/baseBuilder.test/baseBuilder.test.mock.ts +27 -17
  348. package/src/lib/baseBuilder.test/baseBuilder.test.pure.ts +1 -1
  349. package/src/lib/basebuilder.ts +46 -41
  350. package/src/lib/classBuilder.ts +3 -0
  351. package/src/lib/core.test/MockCore.ts +0 -23
  352. package/src/lib/core.test/core.test.adapter.ts +6 -12
  353. package/src/lib/core.test/core.test.implementation.ts +7 -10
  354. package/src/lib/core.ts +2 -0
  355. package/src/lib/index.ts +9 -8
  356. package/src/lib/pmProxy.test/adapter.ts +8 -2
  357. package/src/lib/pmProxy.test/implementation.ts +43 -10
  358. package/src/lib/pmProxy.test/mockPMBase.ts +11 -0
  359. package/src/lib/pmProxy.test/types.ts +0 -2
  360. package/src/lib/pmProxy.ts +224 -92
  361. package/src/lib/types.ts +2 -0
  362. package/src/mothership/index.ts +6 -0
  363. package/src/mothership/test.ts +53 -26
  364. package/src/style.md +2 -0
  365. package/src/style.scss +16 -0
  366. package/src/templates/frontpage.html +54 -0
  367. package/src/themes.scss +9 -9
  368. package/src/types/features.ts +38 -0
  369. package/src/utils/api.ts +59 -29
  370. package/src/utils/featureUtils.tsx +42 -0
  371. package/src/utils/logFiles.ts +26 -0
  372. package/src/utils/makePrompt.ts +148 -0
  373. package/src/web.html.ts +6 -6
  374. package/style.css +28 -9
  375. package/testeranto/App.css +444 -12
  376. package/testeranto/App.js +1318 -1053
  377. package/testeranto/bundles/node/core/chunk-JBB5E3XJ.mjs +258 -0
  378. package/testeranto/bundles/node/core/chunk-L67RWZ4W.mjs +899 -0
  379. package/testeranto/bundles/node/core/chunk-ZQRRQYS4.mjs +92 -0
  380. package/testeranto/bundles/node/core/metafile.json +5348 -99
  381. package/testeranto/bundles/node/core/src/lib/BaseSuite.test/node.test.mjs +307 -0
  382. package/testeranto/bundles/node/core/src/lib/baseBuilder.test/baseBuilder.test.node.mjs +44 -979
  383. package/testeranto/bundles/node/core/src/lib/classBuilder.test/classBuilder.test.mjs +423 -0
  384. package/testeranto/bundles/node/core/src/lib/core.test/core.test.mjs +505 -0
  385. package/testeranto/bundles/node/core/src/lib/pmProxy.test/index.mjs +4804 -0
  386. package/testeranto/bundles/node/core/src/mothership/test.mjs +24588 -0
  387. package/testeranto/bundles/pure/core/chunk-KHJ35R7C.mjs +997 -0
  388. package/testeranto/bundles/pure/core/metafile.json +401 -152
  389. package/testeranto/bundles/pure/core/src/Pure.test.mjs +428 -0
  390. package/testeranto/bundles/pure/core/src/lib/BaseSuite.test/pure.test.mjs +379 -0
  391. package/testeranto/bundles/pure/core/src/lib/baseBuilder.test/baseBuilder.test.pure.mjs +34 -893
  392. package/testeranto/bundles/web/core/MPLUSRounded1c-Black-O75GP5JI.ttf +0 -0
  393. package/testeranto/bundles/web/core/MPLUSRounded1c-Bold-R524Q5BH.ttf +0 -0
  394. package/testeranto/bundles/web/core/MPLUSRounded1c-ExtraBold-C6GRMYVT.ttf +0 -0
  395. package/testeranto/bundles/web/core/MPLUSRounded1c-Light-WKN65Y2C.ttf +0 -0
  396. package/testeranto/bundles/web/core/MPLUSRounded1c-Medium-ZC4DWL7C.ttf +0 -0
  397. package/testeranto/bundles/web/core/MPLUSRounded1c-Regular-DT6EKZ3S.ttf +0 -0
  398. package/testeranto/bundles/web/core/MPLUSRounded1c-Thin-YWDNVG6M.ttf +0 -0
  399. package/testeranto/bundles/web/core/chunk-BADF3AZF.mjs +108 -0
  400. package/testeranto/bundles/web/core/chunk-BXV27S2S.mjs +6252 -0
  401. package/testeranto/bundles/web/core/chunk-EIYZKF2C.mjs +223 -0
  402. package/testeranto/bundles/web/core/chunk-FNXFUNA7.mjs +28528 -0
  403. package/testeranto/bundles/web/core/chunk-LU364HVS.mjs +3311 -0
  404. package/testeranto/bundles/web/core/chunk-QWII7WIM.mjs +2281 -0
  405. package/testeranto/bundles/web/core/chunk-VAYOSMXI.mjs +21775 -0
  406. package/testeranto/bundles/web/core/metafile.json +17547 -100
  407. package/testeranto/bundles/web/core/src/components/pure/AppFrame.test/index.css +12105 -0
  408. package/testeranto/bundles/web/core/src/components/pure/AppFrame.test/index.html +15 -0
  409. package/testeranto/bundles/web/core/src/components/pure/AppFrame.test/index.mjs +517 -0
  410. package/testeranto/bundles/web/core/src/components/pure/FeaturesReporterView.test/index.html +15 -0
  411. package/testeranto/bundles/web/core/src/components/pure/FeaturesReporterView.test/index.mjs +166 -0
  412. package/testeranto/bundles/web/core/src/components/pure/ModalContent.test/index.css +12105 -0
  413. package/testeranto/bundles/web/core/src/components/pure/ModalContent.test/index.html +15 -0
  414. package/testeranto/bundles/web/core/src/components/pure/ModalContent.test/index.mjs +93 -0
  415. package/testeranto/bundles/web/core/src/components/pure/ProjectPageView.test/index.css +12105 -0
  416. package/testeranto/bundles/web/core/src/components/pure/ProjectPageView.test/index.html +15 -0
  417. package/testeranto/bundles/web/core/src/components/pure/ProjectPageView.test/index.mjs +343 -0
  418. package/testeranto/bundles/web/core/src/components/pure/TestPageView.test/index.css +12105 -0
  419. package/testeranto/bundles/web/core/src/components/pure/TestPageView.test/index.html +15 -0
  420. package/testeranto/bundles/web/core/src/components/pure/TestPageView.test/index.mjs +483 -0
  421. package/testeranto/bundles/web/core/src/lib/BaseSuite.test/web.test.html +15 -0
  422. package/testeranto/bundles/web/core/src/lib/BaseSuite.test/web.test.mjs +394 -0
  423. package/testeranto/bundles/web/core/src/lib/baseBuilder.test/baseBuilder.test.web.html +1 -5
  424. package/testeranto/bundles/web/core/src/lib/baseBuilder.test/baseBuilder.test.web.mjs +54 -890
  425. package/testeranto/projects.json +0 -1
  426. package/testeranto/reports/core/config.json +130 -5
  427. package/testeranto/reports/core/src/Pure.test/pure/exit.log +0 -0
  428. package/testeranto/reports/core/src/Pure.test/pure/lint_errors.txt +0 -0
  429. package/testeranto/reports/core/src/Pure.test/pure/message.txt +17 -0
  430. package/testeranto/reports/core/src/Pure.test/pure/prompt.txt +14 -0
  431. package/testeranto/reports/core/src/Pure.test/pure/type_errors.txt +106 -0
  432. package/testeranto/reports/core/src/components/pure/AppFrame.test/index/web/debug.log +0 -0
  433. package/testeranto/reports/core/src/components/pure/AppFrame.test/index/web/error.log +22 -0
  434. package/testeranto/reports/core/src/components/pure/AppFrame.test/index/web/exit.log +1 -0
  435. package/testeranto/reports/core/src/components/pure/AppFrame.test/index/web/info.log +4 -0
  436. package/testeranto/reports/core/src/components/pure/AppFrame.test/index/web/lint_errors.txt +2 -0
  437. package/testeranto/reports/core/src/components/pure/AppFrame.test/index/web/message.txt +17 -0
  438. package/testeranto/reports/core/src/components/pure/AppFrame.test/index/web/prompt.txt +18 -0
  439. package/testeranto/reports/core/src/components/pure/AppFrame.test/index/web/tests.json +57 -0
  440. package/testeranto/reports/core/src/components/pure/AppFrame.test/index/web/type_errors.txt +55 -0
  441. package/testeranto/reports/core/src/components/pure/AppFrame.test/index/web/warn.log +0 -0
  442. package/testeranto/reports/core/src/components/pure/FeaturesReporterView.test/index/web/debug.log +0 -0
  443. package/testeranto/reports/core/src/components/pure/FeaturesReporterView.test/index/web/error.log +56 -0
  444. package/testeranto/reports/core/src/components/pure/FeaturesReporterView.test/index/web/exit.log +1 -0
  445. package/testeranto/reports/core/src/components/pure/FeaturesReporterView.test/index/web/info.log +2 -0
  446. package/testeranto/reports/core/src/components/pure/FeaturesReporterView.test/index/web/lint_errors.txt +0 -0
  447. package/testeranto/reports/core/src/components/pure/FeaturesReporterView.test/index/web/message.txt +17 -0
  448. package/testeranto/reports/core/src/components/pure/FeaturesReporterView.test/index/web/prompt.txt +16 -0
  449. package/testeranto/reports/core/src/components/pure/FeaturesReporterView.test/index/web/suite-0/given-basicRender/then-4/butThen/features-reporter.png +0 -0
  450. package/testeranto/reports/core/src/components/pure/FeaturesReporterView.test/index/web/tests.json +76 -0
  451. package/testeranto/reports/core/src/components/pure/FeaturesReporterView.test/index/web/type_errors.txt +80 -0
  452. package/testeranto/reports/core/src/components/pure/FeaturesReporterView.test/index/web/warn.log +0 -0
  453. package/testeranto/reports/core/src/components/pure/ModalContent.test/index/web/debug.log +0 -0
  454. package/testeranto/reports/core/src/components/pure/ModalContent.test/index/web/error.log +0 -0
  455. package/testeranto/reports/core/src/components/pure/ModalContent.test/index/web/exit.log +0 -0
  456. package/testeranto/reports/core/src/components/pure/ModalContent.test/index/web/info.log +4 -0
  457. package/testeranto/reports/core/src/components/pure/ModalContent.test/index/web/lint_errors.txt +0 -0
  458. package/testeranto/reports/core/src/components/pure/ModalContent.test/index/web/message.txt +17 -0
  459. package/testeranto/reports/core/src/components/pure/ModalContent.test/index/web/prompt.txt +15 -0
  460. package/testeranto/reports/core/src/components/pure/ModalContent.test/index/web/suite-0/given-basicRender/then-2/butThen/modal-content.png +0 -0
  461. package/testeranto/reports/core/src/components/pure/ModalContent.test/index/web/tests.json +42 -0
  462. package/testeranto/reports/core/src/components/pure/ModalContent.test/index/web/type_errors.txt +65 -0
  463. package/testeranto/reports/core/src/components/pure/ModalContent.test/index/web/warn.log +0 -0
  464. package/testeranto/reports/core/src/components/pure/ProjectPageView.test/index/web/debug.log +0 -0
  465. package/testeranto/reports/core/src/components/pure/ProjectPageView.test/index/web/error.log +33 -0
  466. package/testeranto/reports/core/src/components/pure/ProjectPageView.test/index/web/exit.log +1 -0
  467. package/testeranto/reports/core/src/components/pure/ProjectPageView.test/index/web/info.log +4 -0
  468. package/testeranto/reports/core/src/components/pure/ProjectPageView.test/index/web/lint_errors.txt +2 -0
  469. package/testeranto/reports/core/src/components/pure/ProjectPageView.test/index/web/message.txt +17 -0
  470. package/testeranto/reports/core/src/components/pure/ProjectPageView.test/index/web/prompt.txt +16 -0
  471. package/testeranto/reports/core/src/components/pure/ProjectPageView.test/index/web/suite-0/given-basicRender/then-6/butThen/happy-state.png +0 -0
  472. package/testeranto/reports/core/src/components/pure/ProjectPageView.test/index/web/suite-0/given-errorHandling/then-1/butThen/error-state.png +0 -0
  473. package/testeranto/reports/core/src/components/pure/ProjectPageView.test/index/web/tests.json +99 -0
  474. package/testeranto/reports/core/src/components/pure/ProjectPageView.test/index/web/type_errors.txt +91 -0
  475. package/testeranto/reports/core/src/components/pure/ProjectPageView.test/index/web/warn.log +0 -0
  476. package/testeranto/reports/core/src/components/pure/TestPageView.test/index/web/debug.log +0 -0
  477. package/testeranto/reports/core/src/components/pure/TestPageView.test/index/web/error.log +0 -0
  478. package/testeranto/reports/core/src/components/pure/TestPageView.test/index/web/exit.log +1 -0
  479. package/testeranto/reports/core/src/components/pure/TestPageView.test/index/web/info.log +2 -0
  480. package/testeranto/reports/core/src/components/pure/TestPageView.test/index/web/lint_errors.txt +0 -0
  481. package/testeranto/reports/core/src/components/pure/TestPageView.test/index/web/message.txt +17 -0
  482. package/testeranto/reports/core/src/components/pure/TestPageView.test/index/web/prompt.txt +18 -0
  483. package/testeranto/reports/core/src/components/pure/TestPageView.test/index/web/tests.json +69 -0
  484. package/testeranto/reports/core/src/components/pure/TestPageView.test/index/web/type_errors.txt +111 -0
  485. package/testeranto/reports/core/src/components/pure/TestPageView.test/index/web/warn.log +0 -0
  486. package/testeranto/reports/core/src/lib/BaseSuite.test/node.test/node/exit.log +1 -0
  487. package/testeranto/reports/core/src/lib/BaseSuite.test/node.test/node/lint_errors.txt +0 -0
  488. package/testeranto/reports/core/src/lib/BaseSuite.test/node.test/node/message.txt +17 -0
  489. package/testeranto/reports/core/src/lib/BaseSuite.test/node.test/node/prompt.txt +14 -0
  490. package/testeranto/reports/core/src/lib/BaseSuite.test/node.test/node/stderr.log +0 -0
  491. package/testeranto/reports/core/src/lib/BaseSuite.test/node.test/node/stdout.log +0 -0
  492. package/testeranto/reports/core/src/lib/BaseSuite.test/node.test/node/tests.json +31 -0
  493. package/testeranto/reports/core/src/lib/BaseSuite.test/node.test/node/type_errors.txt +113 -0
  494. package/testeranto/reports/core/src/lib/BaseSuite.test/pure.test/pure/exit.log +0 -0
  495. package/testeranto/reports/core/src/lib/BaseSuite.test/pure.test/pure/lint_errors.txt +0 -0
  496. package/testeranto/reports/core/src/lib/BaseSuite.test/pure.test/pure/message.txt +17 -0
  497. package/testeranto/reports/core/src/lib/BaseSuite.test/pure.test/pure/prompt.txt +15 -0
  498. package/testeranto/reports/core/src/lib/BaseSuite.test/pure.test/pure/type_errors.txt +113 -0
  499. package/testeranto/reports/core/src/lib/BaseSuite.test/web.test/web/debug.log +0 -0
  500. package/testeranto/reports/core/src/lib/BaseSuite.test/web.test/web/error.log +1 -0
  501. package/testeranto/reports/core/src/lib/BaseSuite.test/web.test/web/exit.log +1 -0
  502. package/testeranto/reports/core/src/lib/BaseSuite.test/web.test/web/info.log +0 -0
  503. package/testeranto/reports/core/src/lib/BaseSuite.test/web.test/web/lint_errors.txt +0 -0
  504. package/testeranto/reports/core/src/lib/BaseSuite.test/web.test/web/message.txt +17 -0
  505. package/testeranto/reports/core/src/lib/BaseSuite.test/web.test/web/prompt.txt +15 -0
  506. package/testeranto/reports/core/src/lib/BaseSuite.test/web.test/web/tests.json +31 -0
  507. package/testeranto/reports/core/src/lib/BaseSuite.test/web.test/web/type_errors.txt +113 -0
  508. package/testeranto/reports/core/src/lib/BaseSuite.test/web.test/web/warn.log +0 -0
  509. package/testeranto/reports/core/src/lib/baseBuilder.test/baseBuilder.test.node/node/exit.log +1 -0
  510. package/testeranto/reports/core/src/lib/baseBuilder.test/baseBuilder.test.node/node/lint_errors.txt +0 -2
  511. package/testeranto/reports/core/src/lib/baseBuilder.test/baseBuilder.test.node/node/message.txt +16 -1
  512. package/testeranto/reports/core/src/lib/baseBuilder.test/baseBuilder.test.node/node/prompt.txt +4 -13
  513. package/testeranto/reports/core/src/lib/baseBuilder.test/baseBuilder.test.node/node/stderr.log +0 -0
  514. package/testeranto/reports/core/src/lib/baseBuilder.test/baseBuilder.test.node/node/stdout.log +2 -0
  515. package/testeranto/reports/core/src/lib/baseBuilder.test/baseBuilder.test.node/node/suite-0/given-testInitialization/then-1/butThen/artifact_test.txt +1 -0
  516. package/testeranto/reports/core/src/lib/baseBuilder.test/baseBuilder.test.node/node/tests.json +3 -1
  517. package/testeranto/reports/core/src/lib/baseBuilder.test/baseBuilder.test.node/node/type_errors.txt +19 -28
  518. package/testeranto/reports/core/src/lib/baseBuilder.test/baseBuilder.test.pure/pure/exit.log +0 -0
  519. package/testeranto/reports/core/src/lib/baseBuilder.test/baseBuilder.test.pure/pure/lint_errors.txt +0 -2
  520. package/testeranto/reports/core/src/lib/baseBuilder.test/baseBuilder.test.pure/pure/message.txt +16 -1
  521. package/testeranto/reports/core/src/lib/baseBuilder.test/baseBuilder.test.pure/pure/prompt.txt +2 -11
  522. package/testeranto/reports/core/src/lib/baseBuilder.test/baseBuilder.test.pure/pure/type_errors.txt +19 -28
  523. package/testeranto/reports/core/src/lib/baseBuilder.test/baseBuilder.test.web/web/debug.log +0 -0
  524. package/testeranto/reports/core/src/lib/baseBuilder.test/baseBuilder.test.web/web/error.log +1 -0
  525. package/testeranto/reports/core/src/lib/baseBuilder.test/baseBuilder.test.web/web/exit.log +1 -0
  526. package/testeranto/reports/core/src/lib/baseBuilder.test/baseBuilder.test.web/web/info.log +0 -0
  527. package/testeranto/reports/core/src/lib/baseBuilder.test/baseBuilder.test.web/web/lint_errors.txt +0 -2
  528. package/testeranto/reports/core/src/lib/baseBuilder.test/baseBuilder.test.web/web/message.txt +16 -1
  529. package/testeranto/reports/core/src/lib/baseBuilder.test/baseBuilder.test.web/web/prompt.txt +4 -13
  530. package/testeranto/reports/core/src/lib/baseBuilder.test/baseBuilder.test.web/web/suite-0/given-testInitialization/then-1/butThen/artifact_test.txt +1 -0
  531. package/testeranto/reports/core/src/lib/baseBuilder.test/baseBuilder.test.web/web/tests.json +3 -1
  532. package/testeranto/reports/core/src/lib/baseBuilder.test/baseBuilder.test.web/web/type_errors.txt +18 -27
  533. package/testeranto/reports/core/src/lib/baseBuilder.test/baseBuilder.test.web/web/warn.log +0 -0
  534. package/testeranto/reports/core/src/lib/classBuilder.test/classBuilder.test/node/exit.log +1 -0
  535. package/testeranto/reports/core/src/lib/classBuilder.test/classBuilder.test/node/lint_errors.txt +0 -0
  536. package/testeranto/reports/core/src/lib/classBuilder.test/classBuilder.test/node/message.txt +17 -0
  537. package/testeranto/reports/core/src/lib/classBuilder.test/classBuilder.test/node/prompt.txt +17 -0
  538. package/testeranto/reports/core/src/lib/classBuilder.test/classBuilder.test/node/stderr.log +0 -0
  539. package/testeranto/reports/core/src/lib/classBuilder.test/classBuilder.test/node/stdout.log +619 -0
  540. package/testeranto/reports/core/src/lib/classBuilder.test/classBuilder.test/node/tests.json +165 -0
  541. package/testeranto/reports/core/src/lib/classBuilder.test/classBuilder.test/node/type_errors.txt +140 -0
  542. package/testeranto/reports/core/src/lib/core.test/core.test/node/exit.log +1 -0
  543. package/testeranto/reports/core/src/lib/core.test/core.test/node/lint_errors.txt +21 -0
  544. package/testeranto/reports/core/src/lib/core.test/core.test/node/message.txt +17 -0
  545. package/testeranto/reports/core/src/lib/core.test/core.test/node/prompt.txt +19 -0
  546. package/testeranto/reports/core/src/lib/core.test/core.test/node/stderr.log +0 -0
  547. package/testeranto/reports/core/src/lib/core.test/core.test/node/stdout.log +0 -0
  548. package/testeranto/reports/core/src/lib/core.test/core.test/node/type_errors.txt +64 -0
  549. package/testeranto/reports/core/src/lib/pmProxy.test/index/node/exit.log +1 -0
  550. package/testeranto/reports/core/src/lib/pmProxy.test/index/node/lint_errors.txt +23 -0
  551. package/testeranto/reports/core/src/lib/pmProxy.test/index/node/message.txt +17 -0
  552. package/testeranto/reports/core/src/lib/pmProxy.test/index/node/prompt.txt +17 -0
  553. package/testeranto/reports/core/src/lib/pmProxy.test/index/node/stderr.log +0 -0
  554. package/testeranto/reports/core/src/lib/pmProxy.test/index/node/stdout.log +0 -0
  555. package/testeranto/reports/core/src/lib/pmProxy.test/index/node/tests.json +162 -0
  556. package/testeranto/reports/core/src/lib/pmProxy.test/index/node/type_errors.txt +78 -0
  557. package/testeranto/reports/core/src/mothership/test/node/exit.log +1 -0
  558. package/testeranto/reports/core/src/mothership/test/node/lint_errors.txt +0 -0
  559. package/testeranto/reports/core/src/mothership/test/node/message.txt +17 -0
  560. package/testeranto/reports/core/src/mothership/test/node/prompt.txt +14 -0
  561. package/testeranto/reports/core/src/mothership/test/node/stderr.log +27 -0
  562. package/testeranto/reports/core/src/mothership/test/node/stdout.log +8 -0
  563. package/testeranto/reports/core/src/mothership/test/node/tests.json +36 -0
  564. package/testeranto/reports/{staticSite/src/ReportServer.test.ts/index → core/src/mothership/test}/node/type_errors.txt +17 -31
  565. package/testeranto/reports/core/summary.json +98 -7
  566. package/testeranto.config.ts +66 -36
  567. package/tsc.log +392 -260
  568. package/tsconfig.common.json +4 -2
  569. package/tsconfig.json +9 -7
  570. package/tsconfig.module.json +3 -2
  571. package/tsconfig.types.json +3 -1
  572. package/videos/download-smil-xsd.sh +29 -0
  573. package/videos/project0/index.md +72 -0
  574. package/videos/project0/narration.json +7 -0
  575. package/videos/project0/narration.ssml +58 -0
  576. package/videos/project0/package.json +21 -0
  577. package/videos/project0/presentation.smil +25 -0
  578. package/videos/project0/smil30/SMIL-anim.mod.xsd +163 -0
  579. package/videos/project0/smil30/SMIL-anim.mod.xsd.1 +163 -0
  580. package/videos/project0/smil30/SMIL-anim.mod.xsd.2 +163 -0
  581. package/videos/project0/smil30/SMIL-control.mod.xsd +73 -0
  582. package/videos/project0/smil30/SMIL-control.mod.xsd.1 +73 -0
  583. package/videos/project0/smil30/SMIL-control.mod.xsd.2 +73 -0
  584. package/videos/project0/smil30/SMIL-layout.mod.xsd +149 -0
  585. package/videos/project0/smil30/SMIL-layout.mod.xsd.1 +149 -0
  586. package/videos/project0/smil30/SMIL-layout.mod.xsd.2 +149 -0
  587. package/videos/project0/smil30/SMIL-link.mod.xsd +145 -0
  588. package/videos/project0/smil30/SMIL-link.mod.xsd.1 +145 -0
  589. package/videos/project0/smil30/SMIL-link.mod.xsd.2 +145 -0
  590. package/videos/project0/smil30/SMIL-media.mod.xsd +1646 -0
  591. package/videos/project0/smil30/SMIL-media.mod.xsd.1 +1646 -0
  592. package/videos/project0/smil30/SMIL-media.mod.xsd.2 +1646 -0
  593. package/videos/project0/smil30/SMIL-metainformation.mod.xsd +45 -0
  594. package/videos/project0/smil30/SMIL-metainformation.mod.xsd.1 +45 -0
  595. package/videos/project0/smil30/SMIL-metainformation.mod.xsd.2 +45 -0
  596. package/videos/project0/smil30/SMIL-smiltext.mod.xsd +353 -0
  597. package/videos/project0/smil30/SMIL-smiltext.mod.xsd.1 +353 -0
  598. package/videos/project0/smil30/SMIL-smiltext.mod.xsd.2 +353 -0
  599. package/videos/project0/smil30/SMIL-state.mod.xsd +133 -0
  600. package/videos/project0/smil30/SMIL-state.mod.xsd.1 +133 -0
  601. package/videos/project0/smil30/SMIL-state.mod.xsd.2 +133 -0
  602. package/videos/project0/smil30/SMIL-struct.mod.xsd +70 -0
  603. package/videos/project0/smil30/SMIL-struct.mod.xsd.1 +70 -0
  604. package/videos/project0/smil30/SMIL-struct.mod.xsd.2 +70 -0
  605. package/videos/project0/smil30/SMIL-timing.mod.xsd +105 -0
  606. package/videos/project0/smil30/SMIL-timing.mod.xsd.1 +105 -0
  607. package/videos/project0/smil30/SMIL-timing.mod.xsd.2 +105 -0
  608. package/videos/project0/smil30/SMIL-transition.mod.xsd +229 -0
  609. package/videos/project0/smil30/SMIL-transition.mod.xsd.1 +229 -0
  610. package/videos/project0/smil30/SMIL-transition.mod.xsd.2 +229 -0
  611. package/videos/project0/smil30/SMIL.xsd +63 -0
  612. package/videos/project0/smil30/SMIL.xsd.1 +63 -0
  613. package/videos/project0/smil30/SMIL.xsd.2 +63 -0
  614. package/videos/project0/smil30/its.xsd +42 -0
  615. package/videos/project0/smil30/its.xsd.1 +42 -0
  616. package/videos/project0/smil30/its.xsd.2 +42 -0
  617. package/videos/project0/smil30/smil-attribs-1.mod.xsd +610 -0
  618. package/videos/project0/smil30/smil-attribs-1.mod.xsd.1 +610 -0
  619. package/videos/project0/smil30/smil-attribs-1.mod.xsd.2 +610 -0
  620. package/videos/project0/smil30/smil-datatypes-1.mod.xsd +72 -0
  621. package/videos/project0/smil30/smil-datatypes-1.mod.xsd.1 +72 -0
  622. package/videos/project0/smil30/smil-datatypes-1.mod.xsd.2 +72 -0
  623. package/videos/project0/smil30/smil-framework-1.mod.xsd +45 -0
  624. package/videos/project0/smil30/smil-framework-1.mod.xsd.1 +45 -0
  625. package/videos/project0/smil30/smil-framework-1.mod.xsd.2 +45 -0
  626. package/videos/project0/smil30/smil-profile-model-1.mod.xsd +1331 -0
  627. package/videos/project0/smil30/smil-profile-model-1.mod.xsd.1 +1331 -0
  628. package/videos/project0/smil30/smil-qname-1.mod.xsd +121 -0
  629. package/videos/project0/smil30/smil-qname-1.mod.xsd.1 +121 -0
  630. package/videos/project0/smil30/xml.xsd +16 -0
  631. package/videos/project0/smil30/xml.xsd.1 +16 -0
  632. package/videos/project0/smil30/xml.xsd.2 +16 -0
  633. package/videos/project0/smil30.xsd +137 -0
  634. package/videos/project0/src/audio/metadata.json +5 -0
  635. package/videos/project0/src/audio/narration.mp3 +0 -0
  636. package/videos/project0/src/motion-canvas.d.ts +1 -0
  637. package/videos/project0/src/project.meta +31 -0
  638. package/videos/project0/src/project.ts +13 -0
  639. package/videos/project0/src/scenes/example.meta +5 -0
  640. package/videos/project0/src/scenes/scene1.meta +3 -0
  641. package/videos/project0/src/scenes/scene1.tsx +129 -0
  642. package/videos/project0/src/scenes/scene2.tsx +132 -0
  643. package/videos/project0/src/scenes/scene3.meta +26 -0
  644. package/videos/project0/src/scenes/scene3.tsx +188 -0
  645. package/videos/project0/tsconfig.json +4 -0
  646. package/videos/project0/vite.config.ts +10 -0
  647. package/videos/trash/output/project.mp4 +0 -0
  648. package/videos/trash/text.mp4 +0 -0
  649. package/videos/trash/video/project.tsx +549 -0
  650. package/videos/trash/video/render.ts +15 -0
  651. package/videos/trash/vite.config.ts +10 -0
  652. package/videos/tts.js +109 -0
  653. package/dist/common/src/components/pure/ProjectPageView.test/adapter.js +0 -20
  654. package/dist/common/src/lib/dailyAnimation.js +0 -130
  655. package/dist/module/src/Footer.js +0 -5
  656. package/dist/module/src/ProjectPage.js +0 -319
  657. package/dist/module/src/ProjectsPage.js +0 -1
  658. package/dist/module/src/SettingsButton.js +0 -157
  659. package/dist/module/src/TestPage.js +0 -271
  660. package/dist/module/src/TestReport.js +0 -368
  661. package/dist/module/src/components/pure/ProjectPageView.test/adapter.js +0 -17
  662. package/dist/module/src/lib/dailyAnimation.js +0 -130
  663. package/dist/types/src/ReportServerLib.d.ts +0 -2
  664. package/dist/types/src/components/pure/ProjectPageView.d.ts +0 -14
  665. package/dist/types/src/components/pure/ProjectPageView.test/adapter.d.ts +0 -3
  666. package/dist/types/src/components/pure/ProjectPageView.test/types.d.ts +0 -39
  667. package/dist/types/src/lib/baseBuilder.test/baseBuilder.test.pure.d.ts +0 -3
  668. package/dist/types/testeranto.config.d.ts +0 -3
  669. package/docs/testing.ai.txt +0 -106
  670. package/src/Footer.tsx +0 -8
  671. package/src/Project.scss +0 -1
  672. package/src/ProjectPage.tsx +0 -459
  673. package/src/ProjectsPage.tsx +0 -1
  674. package/src/ReportApp.scss +0 -1
  675. package/src/SettingsButton.tsx +0 -268
  676. package/src/TestPage.tsx +0 -476
  677. package/src/TestReport.scss +0 -24
  678. package/src/TestReport.tsx +0 -411
  679. package/src/components/pure/ProjectPageView.test/adapter.ts +0 -21
  680. package/src/lib/dailyAnimation.ts +0 -147
  681. package/testeranto/bundles/node/allTests/metafile.json +0 -486
  682. package/testeranto/bundles/node/allTests/src/lib/baseBuilder.test/baseBuilder.test.node.mjs +0 -1182
  683. package/testeranto/bundles/node/staticSite/metafile.json +0 -593
  684. package/testeranto/bundles/node/staticSite/src/ReportServer.test.ts/index.mjs +0 -1594
  685. package/testeranto/bundles/pure/allTests/metafile.json +0 -626
  686. package/testeranto/bundles/pure/allTests/src/lib/baseBuilder.test/baseBuilder.test.pure.mjs +0 -1094
  687. package/testeranto/bundles/pure/staticSite/metafile.json +0 -8
  688. package/testeranto/bundles/web/allTests/metafile.json +0 -780
  689. package/testeranto/bundles/web/allTests/src/lib/baseBuilder.test/baseBuilder.test.web.html +0 -19
  690. package/testeranto/bundles/web/allTests/src/lib/baseBuilder.test/baseBuilder.test.web.mjs +0 -1092
  691. package/testeranto/bundles/web/staticSite/metafile.json +0 -8
  692. package/testeranto/reports/allTests/config.json +0 -40
  693. package/testeranto/reports/allTests/src/lib/baseBuilder.test/baseBuilder.test.node/node/bdd_errors.txt +0 -1
  694. package/testeranto/reports/allTests/src/lib/baseBuilder.test/baseBuilder.test.node/node/lint_errors.txt +0 -2
  695. package/testeranto/reports/allTests/src/lib/baseBuilder.test/baseBuilder.test.node/node/logs.txt +0 -33
  696. package/testeranto/reports/allTests/src/lib/baseBuilder.test/baseBuilder.test.node/node/message.txt +0 -2
  697. package/testeranto/reports/allTests/src/lib/baseBuilder.test/baseBuilder.test.node/node/prompt.txt +0 -26
  698. package/testeranto/reports/allTests/src/lib/baseBuilder.test/baseBuilder.test.node/node/suite-0/given-testInitialization/then-0/butThen/hello.txt +0 -1
  699. package/testeranto/reports/allTests/src/lib/baseBuilder.test/baseBuilder.test.node/node/tests.json +0 -69
  700. package/testeranto/reports/allTests/src/lib/baseBuilder.test/baseBuilder.test.node/node/type_errors.txt +0 -74
  701. package/testeranto/reports/allTests/src/lib/baseBuilder.test/baseBuilder.test.pure/pure/lint_errors.txt +0 -2
  702. package/testeranto/reports/allTests/src/lib/baseBuilder.test/baseBuilder.test.pure/pure/message.txt +0 -2
  703. package/testeranto/reports/allTests/src/lib/baseBuilder.test/baseBuilder.test.pure/pure/prompt.txt +0 -26
  704. package/testeranto/reports/allTests/src/lib/baseBuilder.test/baseBuilder.test.pure/pure/type_errors.txt +0 -74
  705. package/testeranto/reports/allTests/src/lib/baseBuilder.test/baseBuilder.test.web/web/bdd_errors.txt +0 -1
  706. package/testeranto/reports/allTests/src/lib/baseBuilder.test/baseBuilder.test.web/web/lint_errors.txt +0 -2
  707. package/testeranto/reports/allTests/src/lib/baseBuilder.test/baseBuilder.test.web/web/logs.txt +0 -63
  708. package/testeranto/reports/allTests/src/lib/baseBuilder.test/baseBuilder.test.web/web/message.txt +0 -2
  709. package/testeranto/reports/allTests/src/lib/baseBuilder.test/baseBuilder.test.web/web/prompt.txt +0 -26
  710. package/testeranto/reports/allTests/src/lib/baseBuilder.test/baseBuilder.test.web/web/suite-0/given-testInitialization/then-0/butThen/hello.txt +0 -1
  711. package/testeranto/reports/allTests/src/lib/baseBuilder.test/baseBuilder.test.web/web/tests.json +0 -69
  712. package/testeranto/reports/allTests/src/lib/baseBuilder.test/baseBuilder.test.web/web/type_errors.txt +0 -74
  713. package/testeranto/reports/allTests/summary.json +0 -23
  714. package/testeranto/reports/core/src/lib/baseBuilder.test/baseBuilder.test.node/node/bdd_errors.txt +0 -1
  715. package/testeranto/reports/core/src/lib/baseBuilder.test/baseBuilder.test.node/node/logs.txt +0 -32
  716. package/testeranto/reports/core/src/lib/baseBuilder.test/baseBuilder.test.web/web/bdd_errors.txt +0 -1
  717. package/testeranto/reports/core/src/lib/baseBuilder.test/baseBuilder.test.web/web/logs.txt +0 -61
  718. package/testeranto/reports/staticSite/config.json +0 -24
  719. package/testeranto/reports/staticSite/src/ReportServer.test.ts/index/node/lint_errors.txt +0 -5
  720. package/testeranto/reports/staticSite/src/ReportServer.test.ts/index/node/logs.txt +0 -44
  721. package/testeranto/reports/staticSite/src/ReportServer.test.ts/index/node/message.txt +0 -2
  722. package/testeranto/reports/staticSite/src/ReportServer.test.ts/index/node/prompt.txt +0 -23
  723. package/testeranto/reports/staticSite/summary.json +0 -9
  724. package/testeranto/reportsnode_build_errors +0 -17
  725. /package/dist/common/src/{NavBar.js → components/pure/NavBar.js} +0 -0
  726. /package/dist/{types/src/ReportServer.d.ts → module/src/components/SunriseAnimation.test/types.js} +0 -0
  727. /package/dist/{types/src/build.d.ts → module/src/components/pure/FeaturesReporterView.test/types.js} +0 -0
  728. /package/dist/module/src/{NavBar.js → components/pure/NavBar.js} +0 -0
  729. /package/dist/types/{src/CoreTypes.d.ts → CoreTypes.d.ts} +0 -0
  730. /package/dist/types/{src/Init.d.ts → Init.d.ts} +0 -0
  731. /package/dist/types/{src/Node.d.ts → Node.d.ts} +0 -0
  732. /package/dist/types/{src/NodeSidecar.d.ts → NodeSidecar.d.ts} +0 -0
  733. /package/dist/types/{src/PM → PM}/PM_WithEslintAndTsc.d.ts +0 -0
  734. /package/dist/types/{src/PM → PM}/__tests__/nodeSidecar.testeranto.d.ts +0 -0
  735. /package/dist/types/{src/PM → PM}/__tests__/pureSidecar.testeranto.d.ts +0 -0
  736. /package/dist/types/{src/PM → PM}/__tests__/webSidecar.testeranto.d.ts +0 -0
  737. /package/dist/types/{src/PM → PM}/index.d.ts +0 -0
  738. /package/dist/types/{src/components/SunriseAnimation.test/implementation.d.ts → PM/layers/base/PM_Base.d.ts} +0 -0
  739. /package/dist/types/{src/components/SunriseAnimation.test/index.d.ts → PM/layers/base/components/PageOperations.d.ts} +0 -0
  740. /package/dist/types/{src/components/SunriseAnimation.test/interface.d.ts → PM/layers/base/components/PageOperations.testeranto.d.ts} +0 -0
  741. /package/dist/types/{src/components/SunriseAnimation.test/specification.d.ts → PM/layers/linting/components/Linter.d.ts} +0 -0
  742. /package/dist/types/{src/lib/dailyAnimation.d.ts → PM/layers/linting/components/TypeChecker.d.ts} +0 -0
  743. /package/dist/types/{src/PM → PM}/nodeSidecar.d.ts +0 -0
  744. /package/dist/types/{src/PM → PM}/pureSidecar.d.ts +0 -0
  745. /package/dist/types/{src/PM → PM}/sidecar.d.ts +0 -0
  746. /package/dist/types/{src/PM → PM}/webSidecar.d.ts +0 -0
  747. /package/dist/types/{src/Pure.d.ts → Pure.d.ts} +0 -0
  748. /package/dist/types/{src/Pure.test.d.ts → Pure.test.d.ts} +0 -0
  749. /package/dist/types/{src/PureSidecar.d.ts → PureSidecar.d.ts} +0 -0
  750. /package/dist/types/{src/init-docs.d.ts → ReportServer.d.ts} +0 -0
  751. /package/dist/types/{src/ReportServer.test.ts → ReportServer.test.ts}/index.d.ts +0 -0
  752. /package/dist/types/{src/Web.d.ts → Web.d.ts} +0 -0
  753. /package/dist/types/{src/WebSidecar.d.ts → WebSidecar.d.ts} +0 -0
  754. /package/dist/types/{src/run.d.ts → build.d.ts} +0 -0
  755. /package/dist/types/{src/components → components}/TestStatusBadge.d.ts +0 -0
  756. /package/dist/types/{src/components/pure/ProjectPageView.test → components/pure/AppFrame.test}/specification.d.ts +0 -0
  757. /package/dist/types/{src/components/pure/ProjectPageView.test → components/pure/FeaturesReporterView.test}/implementation.d.ts +0 -0
  758. /package/dist/types/{src → components/pure}/NavBar.d.ts +0 -0
  759. /package/dist/types/{src/defaultConfig.d.ts → defaultConfig.d.ts} +0 -0
  760. /package/dist/types/{src/esbuildConfigs → esbuildConfigs}/consoleDetectorPlugin.d.ts +0 -0
  761. /package/dist/types/{src/esbuildConfigs → esbuildConfigs}/eslint-formatter-testeranto.d.ts +0 -0
  762. /package/dist/types/{src/esbuildConfigs → esbuildConfigs}/featuresPlugin.d.ts +0 -0
  763. /package/dist/types/{src/esbuildConfigs → esbuildConfigs}/index.d.ts +0 -0
  764. /package/dist/types/{src/esbuildConfigs → esbuildConfigs}/inputFilesPlugin.d.ts +0 -0
  765. /package/dist/types/{src/esbuildConfigs → esbuildConfigs}/nativeImportDetectorPlugin.d.ts +0 -0
  766. /package/dist/types/{src/esbuildConfigs → esbuildConfigs}/node.d.ts +0 -0
  767. /package/dist/types/{src/esbuildConfigs → esbuildConfigs}/pure.d.ts +0 -0
  768. /package/dist/types/{src/esbuildConfigs → esbuildConfigs}/rebuildPlugin.d.ts +0 -0
  769. /package/dist/types/{src/esbuildConfigs → esbuildConfigs}/web.d.ts +0 -0
  770. /package/dist/types/{src/lib → lib}/BaseSuite.test/mock.d.ts +0 -0
  771. /package/dist/types/{src/lib → lib}/BaseSuite.test/node.test.d.ts +0 -0
  772. /package/dist/types/{src/lib → lib}/BaseSuite.test/pure.test.d.ts +0 -0
  773. /package/dist/types/{src/lib → lib}/BaseSuite.test/test.d.ts +0 -0
  774. /package/dist/types/{src/lib → lib}/BaseSuite.test/web.test.d.ts +0 -0
  775. /package/dist/types/{src/lib → lib}/Sidecar.d.ts +0 -0
  776. /package/dist/types/{src/lib → lib}/abstractBase.test/MockThen.d.ts +0 -0
  777. /package/dist/types/{src/lib → lib}/abstractBase.test/MockWhen.d.ts +0 -0
  778. /package/dist/types/{src/lib → lib}/abstractBase.test/adapter.d.ts +0 -0
  779. /package/dist/types/{src/lib → lib}/abstractBase.test/implementation.d.ts +0 -0
  780. /package/dist/types/{src/lib → lib}/abstractBase.test/index.d.ts +0 -0
  781. /package/dist/types/{src/lib → lib}/abstractBase.test/specification.d.ts +0 -0
  782. /package/dist/types/{src/lib → lib}/abstractBase.test/types.d.ts +0 -0
  783. /package/dist/types/{src/lib → lib}/baseBuilder.test/baseBuilder.test.adapter.d.ts +0 -0
  784. /package/dist/types/{src/lib → lib}/baseBuilder.test/baseBuilder.test.implementation.d.ts +0 -0
  785. /package/dist/types/{src/lib → lib}/baseBuilder.test/baseBuilder.test.mock.d.ts +0 -0
  786. /package/dist/types/{src/lib → lib}/baseBuilder.test/baseBuilder.test.node.d.ts +0 -0
  787. /package/dist/types/{src/lib → lib}/baseBuilder.test/baseBuilder.test.specification.d.ts +0 -0
  788. /package/dist/types/{src/lib → lib}/baseBuilder.test/baseBuilder.test.types.d.ts +0 -0
  789. /package/dist/types/{src/lib → lib}/baseBuilder.test/baseBuilder.test.web.d.ts +0 -0
  790. /package/dist/types/{src/lib → lib}/basebuilder.d.ts +0 -0
  791. /package/dist/types/{src/lib → lib}/classBuilder.d.ts +0 -0
  792. /package/dist/types/{src/lib → lib}/classBuilder.test/classBuilder.test.adapter.d.ts +0 -0
  793. /package/dist/types/{src/lib → lib}/classBuilder.test/classBuilder.test.d.ts +0 -0
  794. /package/dist/types/{src/lib → lib}/classBuilder.test/classBuilder.test.implementation.d.ts +0 -0
  795. /package/dist/types/{src/lib → lib}/classBuilder.test/classBuilder.test.specification.d.ts +0 -0
  796. /package/dist/types/{src/lib → lib}/classBuilder.test/classBuilder.test.types.d.ts +0 -0
  797. /package/dist/types/{src/lib → lib}/classBuilder.test/mock.d.ts +0 -0
  798. /package/dist/types/{src/lib → lib}/core.d.ts +0 -0
  799. /package/dist/types/{src/lib → lib}/core.test/MockCore.d.ts +0 -0
  800. /package/dist/types/{src/lib → lib}/core.test/core.test.adapter.d.ts +0 -0
  801. /package/dist/types/{src/lib → lib}/core.test/core.test.d.ts +0 -0
  802. /package/dist/types/{src/lib → lib}/core.test/core.test.implementation.d.ts +0 -0
  803. /package/dist/types/{src/lib → lib}/core.test/core.test.specification.d.ts +0 -0
  804. /package/dist/types/{src/lib → lib}/core.test/core.test.types.d.ts +0 -0
  805. /package/dist/types/{src/lib → lib}/mocks.test.d.ts +0 -0
  806. /package/dist/types/{src/lib → lib}/pmProxy.test/adapter.d.ts +0 -0
  807. /package/dist/types/{src/lib → lib}/pmProxy.test/implementation.d.ts +0 -0
  808. /package/dist/types/{src/lib → lib}/pmProxy.test/index.d.ts +0 -0
  809. /package/dist/types/{src/lib → lib}/pmProxy.test/mockPM.d.ts +0 -0
  810. /package/dist/types/{src/lib → lib}/pmProxy.test/mockPMBase.d.ts +0 -0
  811. /package/dist/types/{src/lib → lib}/pmProxy.test/specification.d.ts +0 -0
  812. /package/dist/types/{src/lib → lib}/pmProxy.test/types.d.ts +0 -0
  813. /package/dist/types/{src/lib → lib}/types.d.ts +0 -0
  814. /package/dist/types/{src/mothership → mothership}/index.d.ts +0 -0
  815. /package/dist/types/{src/mothership → mothership}/test.d.ts +0 -0
  816. /package/dist/types/{src/utils → utils}/buildTemplates.d.ts +0 -0
  817. /package/dist/types/{src/utils → utils}/queue.d.ts +0 -0
  818. /package/dist/types/{src/utils.d.ts → utils.d.ts} +0 -0
  819. /package/src/{NavBar.tsx → components/pure/NavBar.tsx} +0 -0
@@ -1,4 +1,8 @@
1
1
  "use strict";
2
+ /* eslint-disable @typescript-eslint/ban-ts-comment */
3
+ /* eslint-disable no-async-promise-executor */
4
+ /* eslint-disable @typescript-eslint/no-explicit-any */
5
+ /* eslint-disable @typescript-eslint/no-unused-vars */
2
6
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
7
  if (k2 === undefined) k2 = k;
4
8
  var desc = Object.getOwnPropertyDescriptor(m, k);
@@ -37,25 +41,102 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
37
41
  };
38
42
  Object.defineProperty(exports, "__esModule", { value: true });
39
43
  exports.PM_Main = void 0;
40
- /* eslint-disable @typescript-eslint/ban-ts-comment */
41
- /* eslint-disable no-async-promise-executor */
42
- /* eslint-disable @typescript-eslint/no-explicit-any */
43
- /* eslint-disable @typescript-eslint/no-unused-vars */
44
44
  const node_child_process_1 = require("node:child_process");
45
+ const ansi_colors_1 = __importDefault(require("ansi-colors"));
45
46
  const net_1 = __importDefault(require("net"));
46
47
  const fs_1 = __importStar(require("fs"));
47
48
  const path_1 = __importDefault(require("path"));
48
49
  const puppeteer_core_1 = __importDefault(require("puppeteer-core"));
49
- const ansi_colors_1 = __importDefault(require("ansi-colors"));
50
+ const ansi_colors_2 = __importDefault(require("ansi-colors"));
50
51
  const node_crypto_1 = __importDefault(require("node:crypto"));
51
52
  const utils_1 = require("../utils");
52
53
  const queue_js_1 = require("../utils/queue.js");
53
54
  const PM_WithEslintAndTsc_js_1 = require("./PM_WithEslintAndTsc.js");
54
- const ansi_colors_2 = __importDefault(require("ansi-colors"));
55
55
  const changes = {};
56
56
  const fileHashes = {};
57
57
  const files = {};
58
58
  const screenshots = {};
59
+ function runtimeLogs(runtime, reportDest) {
60
+ const safeDest = reportDest || `testeranto/reports/default_${Date.now()}`;
61
+ try {
62
+ if (!fs_1.default.existsSync(safeDest)) {
63
+ fs_1.default.mkdirSync(safeDest, { recursive: true });
64
+ }
65
+ if (runtime === "node") {
66
+ return {
67
+ stdout: fs_1.default.createWriteStream(`${safeDest}/stdout.log`),
68
+ stderr: fs_1.default.createWriteStream(`${safeDest}/stderr.log`),
69
+ exit: fs_1.default.createWriteStream(`${safeDest}/exit.log`),
70
+ };
71
+ }
72
+ else if (runtime === "web") {
73
+ return {
74
+ info: fs_1.default.createWriteStream(`${safeDest}/info.log`),
75
+ warn: fs_1.default.createWriteStream(`${safeDest}/warn.log`),
76
+ error: fs_1.default.createWriteStream(`${safeDest}/error.log`),
77
+ debug: fs_1.default.createWriteStream(`${safeDest}/debug.log`),
78
+ exit: fs_1.default.createWriteStream(`${safeDest}/exit.log`),
79
+ };
80
+ }
81
+ else if (runtime === "pure") {
82
+ return {
83
+ exit: fs_1.default.createWriteStream(`${safeDest}/exit.log`),
84
+ };
85
+ }
86
+ else {
87
+ throw `unknown runtime: ${runtime}`;
88
+ }
89
+ }
90
+ catch (e) {
91
+ console.error(`Failed to create log streams in ${safeDest}:`, e);
92
+ throw e;
93
+ }
94
+ }
95
+ function createLogStreams(reportDest, runtime) {
96
+ // Create directory if it doesn't exist
97
+ if (!fs_1.default.existsSync(reportDest)) {
98
+ fs_1.default.mkdirSync(reportDest, { recursive: true });
99
+ }
100
+ const streams = runtimeLogs(runtime, reportDest);
101
+ // const streams = {
102
+ // exit: fs.createWriteStream(`${reportDest}/exit.log`),
103
+ const safeDest = reportDest || `testeranto/reports/default_${Date.now()}`;
104
+ try {
105
+ if (!fs_1.default.existsSync(safeDest)) {
106
+ fs_1.default.mkdirSync(safeDest, { recursive: true });
107
+ }
108
+ const streams = runtimeLogs(runtime, safeDest);
109
+ // const streams = {
110
+ // exit: fs.createWriteStream(`${safeDest}/exit.log`),
111
+ // ...(runtime === "node" || runtime === "pure"
112
+ // ? {
113
+ // stdout: fs.createWriteStream(`${safeDest}/stdout.log`),
114
+ // stderr: fs.createWriteStream(`${safeDest}/stderr.log`),
115
+ // }
116
+ // : {
117
+ // info: fs.createWriteStream(`${safeDest}/info.log`),
118
+ // warn: fs.createWriteStream(`${safeDest}/warn.log`),
119
+ // error: fs.createWriteStream(`${safeDest}/error.log`),
120
+ // debug: fs.createWriteStream(`${safeDest}/debug.log`),
121
+ // }),
122
+ // };
123
+ return Object.assign(Object.assign({}, streams), { closeAll: () => {
124
+ Object.values(streams).forEach((stream) => !stream.closed && stream.close());
125
+ }, writeExitCode: (code, error) => {
126
+ if (error) {
127
+ streams.exit.write(`Error: ${error.message}\n`);
128
+ if (error.stack) {
129
+ streams.exit.write(`Stack Trace:\n${error.stack}\n`);
130
+ }
131
+ }
132
+ streams.exit.write(`${code}\n`);
133
+ }, exit: streams.exit });
134
+ }
135
+ catch (e) {
136
+ console.error(`Failed to create log streams in ${safeDest}:`, e);
137
+ throw e;
138
+ }
139
+ }
59
140
  async function fileHash(filePath, algorithm = "md5") {
60
141
  return new Promise((resolve, reject) => {
61
142
  const hash = node_crypto_1.default.createHash(algorithm);
@@ -74,10 +155,13 @@ async function fileHash(filePath, algorithm = "md5") {
74
155
  }
75
156
  const statusMessagePretty = (failures, test, runtime) => {
76
157
  if (failures === 0) {
77
- console.log(ansi_colors_1.default.green(ansi_colors_1.default.inverse(`${runtime} > ${test} completed successfully`)));
158
+ console.log(ansi_colors_2.default.green(ansi_colors_2.default.inverse(`${runtime} > ${test}`)));
159
+ }
160
+ else if (failures > 0) {
161
+ console.log(ansi_colors_2.default.red(ansi_colors_2.default.inverse(`${runtime} > ${test} failed ${failures} times (exit code: ${failures})`)));
78
162
  }
79
163
  else {
80
- console.log(ansi_colors_1.default.red(ansi_colors_1.default.inverse(`${runtime} > ${test} failed ${failures} times`)));
164
+ console.log(ansi_colors_2.default.red(ansi_colors_2.default.inverse(`${runtime} > ${test} crashed (exit code: -1)`)));
81
165
  }
82
166
  };
83
167
  async function writeFileAndCreateDir(filePath, data) {
@@ -108,12 +192,10 @@ function isValidUrl(string) {
108
192
  }
109
193
  // Wait for file to exist, checks every 2 seconds by default
110
194
  async function pollForFile(path, timeout = 2000) {
111
- console.log(`pollForFile: ${path}...`);
112
195
  const intervalObj = setInterval(function () {
113
196
  const file = path;
114
197
  const fileExists = fs_1.default.existsSync(file);
115
198
  if (fileExists) {
116
- console.log(`metafile found: ${path}!`);
117
199
  clearInterval(intervalObj);
118
200
  }
119
201
  }, timeout);
@@ -121,6 +203,8 @@ async function pollForFile(path, timeout = 2000) {
121
203
  class PM_Main extends PM_WithEslintAndTsc_js_1.PM_WithEslintAndTsc {
122
204
  constructor(configs, name, mode) {
123
205
  super(configs, name, mode);
206
+ this.logStreams = {};
207
+ this.sidecars = {};
124
208
  this.getRunnables = (tests, testName, payload = {
125
209
  nodeEntryPoints: {},
126
210
  nodeEntryPointSidecars: {},
@@ -132,7 +216,7 @@ class PM_Main extends PM_WithEslintAndTsc_js_1.PM_WithEslintAndTsc {
132
216
  return (0, utils_1.getRunnables)(tests, testName, payload);
133
217
  };
134
218
  this.launchPure = async (src, dest) => {
135
- console.log(ansi_colors_1.default.green(ansi_colors_1.default.inverse(`pure < ${src}`)));
219
+ console.log(ansi_colors_2.default.green(ansi_colors_2.default.inverse(`pure < ${src}`)));
136
220
  this.bddTestIsRunning(src);
137
221
  const reportDest = `testeranto/reports/${this.name}/${src
138
222
  .split(".")
@@ -147,7 +231,7 @@ class PM_Main extends PM_WithEslintAndTsc_js_1.PM_WithEslintAndTsc {
147
231
  return t[0] === src;
148
232
  });
149
233
  if (!testConfig) {
150
- console.log(ansi_colors_1.default.inverse("missing test config! Exiting ungracefully!"));
234
+ console.log(ansi_colors_2.default.inverse("missing test config! Exiting ungracefully!"));
151
235
  process.exit(-1);
152
236
  }
153
237
  const testConfigResource = testConfig[2];
@@ -178,7 +262,7 @@ class PM_Main extends PM_WithEslintAndTsc_js_1.PM_WithEslintAndTsc {
178
262
  }
179
263
  else {
180
264
  this.queue.push(src);
181
- return;
265
+ return [Math.random(), argz];
182
266
  }
183
267
  }
184
268
  else {
@@ -211,8 +295,20 @@ class PM_Main extends PM_WithEslintAndTsc_js_1.PM_WithEslintAndTsc {
211
295
  // }
212
296
  // })
213
297
  // );
298
+ const logs = createLogStreams(reportDest, "pure");
214
299
  try {
215
300
  await Promise.resolve(`${`${builtfile}?cacheBust=${Date.now()}`}`).then(s => __importStar(require(s))).then((module) => {
301
+ // Override console methods to redirect logs
302
+ // Only override stdout/stderr methods for pure runtime
303
+ const originalConsole = Object.assign({}, console);
304
+ // console.log = (...args) => {
305
+ // logs.stdout.write(args.join(" ") + "\n");
306
+ // originalConsole.log(...args);
307
+ // };
308
+ // console.error = (...args) => {
309
+ // logs.stderr.write(args.join(" ") + "\n");
310
+ // originalConsole.error(...args);
311
+ // };
216
312
  return module.default
217
313
  .then((defaultModule) => {
218
314
  defaultModule
@@ -224,7 +320,7 @@ class PM_Main extends PM_WithEslintAndTsc_js_1.PM_WithEslintAndTsc {
224
320
  this.bddTestIsNowDone(src, results.fails);
225
321
  })
226
322
  .catch((e1) => {
227
- console.log(ansi_colors_1.default.red(`launchPure - ${src} errored with: ${e1}`));
323
+ console.log(ansi_colors_2.default.red(`launchPure - ${src} errored with: ${e1.stack}`));
228
324
  this.bddTestIsNowDone(src, -1);
229
325
  statusMessagePretty(-1, src, "pure");
230
326
  });
@@ -233,8 +329,9 @@ class PM_Main extends PM_WithEslintAndTsc_js_1.PM_WithEslintAndTsc {
233
329
  // });
234
330
  })
235
331
  .catch((e2) => {
236
- console.log(ansi_colors_2.default.red(`pure ! ${src} failed to execute. No "tests.json" file was generated. Check ${reportDest}/logs.txt for more info`));
237
- this.writeFileSync(`${reportDest}/logs.txt`, e2.stack, src);
332
+ console.log(ansi_colors_1.default.red(`pure ! ${src} failed to execute. No "tests.json" file was generated. Check the logs for more info`));
333
+ logs.exit.write(e2.stack);
334
+ logs.exit.write(-1);
238
335
  this.bddTestIsNowDone(src, -1);
239
336
  statusMessagePretty(-1, src, "pure");
240
337
  // console.error(e);
@@ -249,11 +346,12 @@ class PM_Main extends PM_WithEslintAndTsc_js_1.PM_WithEslintAndTsc {
249
346
  });
250
347
  }
251
348
  catch (e3) {
252
- console.log(ansi_colors_1.default.red(ansi_colors_1.default.inverse(`${src} 1 errored with: ${e3}. Check ${reportDest}/logs.txt for more info`)));
253
- this.writeFileSync(`${reportDest}/logs.txt`, e3.stack, src);
349
+ logs.writeExitCode(-1, e3);
350
+ console.log(ansi_colors_2.default.red(ansi_colors_2.default.inverse(`${src} 1 errored with: ${e3}. Check logs for more info`)));
351
+ logs.exit.write(e3.stack);
352
+ logs.exit.write(-1);
254
353
  this.bddTestIsNowDone(src, -1);
255
354
  statusMessagePretty(-1, src, "pure");
256
- console.log("III) PURE IS EXITING BADLY WITH error", e3);
257
355
  }
258
356
  for (let i = 0; i <= portsToUse.length; i++) {
259
357
  if (portsToUse[i]) {
@@ -262,7 +360,7 @@ class PM_Main extends PM_WithEslintAndTsc_js_1.PM_WithEslintAndTsc {
262
360
  }
263
361
  };
264
362
  this.launchNode = async (src, dest) => {
265
- console.log(ansi_colors_1.default.green(ansi_colors_1.default.inverse(`node < ${src}`)));
363
+ console.log(ansi_colors_2.default.green(ansi_colors_2.default.inverse(`node < ${src}`)));
266
364
  this.bddTestIsRunning(src);
267
365
  const reportDest = `testeranto/reports/${this.name}/${src
268
366
  .split(".")
@@ -277,7 +375,7 @@ class PM_Main extends PM_WithEslintAndTsc_js_1.PM_WithEslintAndTsc {
277
375
  return t[0] === src;
278
376
  });
279
377
  if (!testConfig) {
280
- console.log(ansi_colors_1.default.inverse(`missing test config! Exiting ungracefully for '${src}'`));
378
+ console.log(ansi_colors_2.default.inverse(`missing test config! Exiting ungracefully for '${src}'`));
281
379
  process.exit(-1);
282
380
  }
283
381
  const testConfigResource = testConfig[2];
@@ -296,7 +394,7 @@ class PM_Main extends PM_WithEslintAndTsc_js_1.PM_WithEslintAndTsc {
296
394
  const openPorts = Object.entries(this.ports).filter(([portnumber, portopen]) => portopen === "");
297
395
  if (openPorts.length >= testConfigResource.ports) {
298
396
  for (let i = 0; i < testConfigResource.ports; i++) {
299
- portsToUse.push(openPorts[i][0]);
397
+ portsToUse.push(openPorts[i][0]); // Convert string port to number
300
398
  this.ports[openPorts[i][0]] = src; // port is now claimed
301
399
  }
302
400
  testResources = JSON.stringify({
@@ -308,9 +406,9 @@ class PM_Main extends PM_WithEslintAndTsc_js_1.PM_WithEslintAndTsc {
308
406
  });
309
407
  }
310
408
  else {
311
- console.log(ansi_colors_1.default.red(`node: cannot run ${src} because there are no open ports ATM. This job will be enqueued and run again run a port is available`));
409
+ console.log(ansi_colors_2.default.red(`node: cannot run ${src} because there are no open ports ATM. This job will be enqueued and run again run a port is available`));
312
410
  this.queue.push(src);
313
- return;
411
+ return [Math.random(), argz]; // Add this return
314
412
  }
315
413
  }
316
414
  else {
@@ -368,45 +466,45 @@ class PM_Main extends PM_WithEslintAndTsc_js_1.PM_WithEslintAndTsc {
368
466
  }
369
467
  });
370
468
  });
371
- const oStream = fs_1.default.createWriteStream(`${reportDest}/logs.txt`);
372
- const errFile = `${reportDest}/logs.txt`;
373
- if (fs_1.default.existsSync(errFile)) {
374
- fs_1.default.rmSync(errFile);
375
- }
469
+ const logs = createLogStreams(reportDest, "node");
376
470
  server.listen(ipcfile, () => {
377
471
  var _a, _b;
378
- (_a = child.stderr) === null || _a === void 0 ? void 0 : _a.on("data", (data) => {
379
- oStream.write(`stderr > ${data}`);
472
+ // Only handle stdout/stderr for node runtime
473
+ (_a = child.stdout) === null || _a === void 0 ? void 0 : _a.on("data", (data) => {
474
+ var _a;
475
+ (_a = logs.stdout) === null || _a === void 0 ? void 0 : _a.write(data); // Add null check
380
476
  });
381
- (_b = child.stdout) === null || _b === void 0 ? void 0 : _b.on("data", (data) => {
382
- oStream.write(`stdout > ${data}`);
477
+ (_b = child.stderr) === null || _b === void 0 ? void 0 : _b.on("data", (data) => {
478
+ var _a;
479
+ (_a = logs.stderr) === null || _a === void 0 ? void 0 : _a.write(data); // Add null check
383
480
  });
384
481
  child.on("error", (err) => { });
385
482
  child.on("close", (code) => {
386
- // oStream.close();
483
+ const exitCode = code === null ? -1 : code;
484
+ if (exitCode < 0) {
485
+ logs.writeExitCode(exitCode, new Error("Process crashed or was terminated"));
486
+ }
487
+ else {
488
+ logs.writeExitCode(exitCode);
489
+ }
490
+ logs.closeAll();
387
491
  server.close();
388
492
  if (!files[src]) {
389
493
  files[src] = new Set();
390
494
  }
391
- // files[src].add(filepath);
392
- // fs.writeFileSync(
393
- // reportDest + "/manifest.json",
394
- // JSON.stringify(Array.from(files[src]))
395
- // );
396
- if (code === 255) {
397
- console.log(ansi_colors_2.default.red(`node ! ${src} failed to execute. No "tests.json" file was generated. Check ${reportDest}/logs.txt for more info`));
495
+ if (exitCode === 255) {
496
+ console.log(ansi_colors_1.default.red(`node ! ${src} failed to execute. No "tests.json" file was generated. Check ${reportDest}/stderr.log for more info`));
398
497
  this.bddTestIsNowDone(src, -1);
399
498
  statusMessagePretty(-1, src, "node");
400
- oStream.close();
401
499
  return;
402
500
  }
403
- else if (code === 0) {
501
+ else if (exitCode === 0) {
404
502
  this.bddTestIsNowDone(src, 0);
405
503
  statusMessagePretty(0, src, "node");
406
504
  }
407
505
  else {
408
- this.bddTestIsNowDone(src, code);
409
- statusMessagePretty(code, src, "node");
506
+ this.bddTestIsNowDone(src, exitCode);
507
+ statusMessagePretty(exitCode, src, "node");
410
508
  }
411
509
  haltReturns = true;
412
510
  });
@@ -421,8 +519,7 @@ class PM_Main extends PM_WithEslintAndTsc_js_1.PM_WithEslintAndTsc {
421
519
  child.on("error", (e) => {
422
520
  console.log("error");
423
521
  haltReturns = true;
424
- console.log(ansi_colors_1.default.red(ansi_colors_1.default.inverse(`${src} errored with: ${e.name}. Check ${errFile} for more info`)));
425
- this.writeFileSync(`${reportDest}/logs.txt`, e.toString(), src);
522
+ console.log(ansi_colors_2.default.red(ansi_colors_2.default.inverse(`${src} errored with: ${e.name}. Check error logs for more info`)));
426
523
  this.bddTestIsNowDone(src, -1);
427
524
  statusMessagePretty(-1, src, "node");
428
525
  });
@@ -433,10 +530,10 @@ class PM_Main extends PM_WithEslintAndTsc_js_1.PM_WithEslintAndTsc {
433
530
  const dest = src.split(".").slice(0, -1).join(".");
434
531
  // const d = dest + ".mjs";
435
532
  const destFolder = dest.replace(".mjs", "");
436
- console.log(ansi_colors_1.default.green(ansi_colors_1.default.inverse(`launchWebSideCar ${src}`)));
437
- const fileStreams2 = [];
438
- const doneFileStream2 = [];
439
- const oStream = fs_1.default.createWriteStream(`${destFolder}/logs.txt`);
533
+ console.log(ansi_colors_2.default.green(ansi_colors_2.default.inverse(`launchWebSideCar ${src}`)));
534
+ // const fileStreams2: fs.WriteStream[] = [];
535
+ // const doneFileStream2: Promise<any>[] = [];
536
+ const logs = createLogStreams(dest, "web");
440
537
  return new Promise((res, rej) => {
441
538
  this.browser
442
539
  .newPage()
@@ -457,34 +554,40 @@ class PM_Main extends PM_WithEslintAndTsc_js_1.PM_WithEslintAndTsc {
457
554
  Promise.all(screenshots[src] || []).then(() => {
458
555
  delete screenshots[src];
459
556
  page.close();
460
- oStream.close();
461
557
  });
462
558
  };
463
559
  page.on("pageerror", (err) => {
464
560
  console.debug(`Error from ${src}: [${err.name}] `);
465
- oStream.write(err.name);
466
- oStream.write("\n");
561
+ console.debug(`Error from ${src}: [${err.name}] `);
467
562
  if (err.cause) {
468
563
  console.debug(`Error from ${src} cause: [${err.cause}] `);
469
- oStream.write(err.cause);
470
- oStream.write("\n");
471
564
  }
472
565
  if (err.stack) {
473
566
  console.debug(`Error from stack ${src}: [${err.stack}] `);
474
- oStream.write(err.stack);
475
- oStream.write("\n");
476
567
  }
477
568
  console.debug(`Error from message ${src}: [${err.message}] `);
478
- oStream.write(err.message);
479
- oStream.write("\n");
480
569
  this.bddTestIsNowDone(src, -1);
481
570
  close();
482
571
  });
483
572
  page.on("console", (log) => {
484
- oStream.write(log.text());
485
- oStream.write(JSON.stringify(log.location()));
486
- oStream.write(JSON.stringify(log.stackTrace()));
487
- oStream.write("\n");
573
+ var _a, _b, _c, _d;
574
+ const msg = `${log.text()}\n${JSON.stringify(log.location())}\n${JSON.stringify(log.stackTrace())}\n`;
575
+ switch (log.type()) {
576
+ case "info":
577
+ (_a = logs.info) === null || _a === void 0 ? void 0 : _a.write(msg);
578
+ break;
579
+ case "warn":
580
+ (_b = logs.warn) === null || _b === void 0 ? void 0 : _b.write(msg);
581
+ break;
582
+ case "error":
583
+ (_c = logs.error) === null || _c === void 0 ? void 0 : _c.write(msg);
584
+ break;
585
+ case "debug":
586
+ (_d = logs.debug) === null || _d === void 0 ? void 0 : _d.write(msg);
587
+ break;
588
+ default:
589
+ break;
590
+ }
488
591
  });
489
592
  await page.goto(`file://${`${destFolder}.html`}`, {});
490
593
  const webArgz = JSON.stringify({
@@ -512,7 +615,7 @@ class PM_Main extends PM_WithEslintAndTsc_js_1.PM_WithEslintAndTsc {
512
615
  this.bddTestIsNowDone(src, fails);
513
616
  })
514
617
  .catch((e) => {
515
- console.log(ansi_colors_1.default.red(ansi_colors_1.default.inverse(`launchWebSidecar - ${src} errored with: ${e}`)));
618
+ console.log(ansi_colors_2.default.red(ansi_colors_2.default.inverse(`launchWebSidecar - ${src} errored with: ${e}`)));
516
619
  })
517
620
  .finally(() => {
518
621
  this.bddTestIsNowDone(src, -1);
@@ -523,7 +626,6 @@ class PM_Main extends PM_WithEslintAndTsc_js_1.PM_WithEslintAndTsc {
523
626
  })
524
627
  .then(async (page) => {
525
628
  await page.goto(`file://${`${dest}.html`}`, {});
526
- /* @ts-ignore:next-line */
527
629
  res([Math.random(), page]);
528
630
  });
529
631
  });
@@ -532,7 +634,7 @@ class PM_Main extends PM_WithEslintAndTsc_js_1.PM_WithEslintAndTsc {
532
634
  const src = sidecar[0];
533
635
  const dest = process.cwd() + `/testeranto/bundles/node/${this.name}/${sidecar[0]}`;
534
636
  const d = dest + ".mjs";
535
- console.log(ansi_colors_1.default.green(ansi_colors_1.default.inverse(`launchNodeSideCar ${sidecar[0]}`)));
637
+ console.log(ansi_colors_2.default.green(ansi_colors_2.default.inverse(`launchNodeSideCar ${sidecar[0]}`)));
536
638
  const destFolder = dest.replace(".ts", "");
537
639
  const reportDest = `testeranto/reports/${this.name}/${src
538
640
  .split(".")
@@ -545,6 +647,7 @@ class PM_Main extends PM_WithEslintAndTsc_js_1.PM_WithEslintAndTsc {
545
647
  browserWSEndpoint: this.browser.wsEndpoint(),
546
648
  };
547
649
  const testReq = sidecar[2];
650
+ const logs = createLogStreams(dest, "node");
548
651
  const portsToUse = [];
549
652
  if (testReq.ports === 0) {
550
653
  // argz = {
@@ -558,7 +661,7 @@ class PM_Main extends PM_WithEslintAndTsc_js_1.PM_WithEslintAndTsc {
558
661
  const openPorts = Object.entries(this.ports).filter(([portnumber, portopen]) => portopen === "");
559
662
  if (openPorts.length >= testReq.ports) {
560
663
  for (let i = 0; i < testReq.ports; i++) {
561
- portsToUse.push(openPorts[i][0]);
664
+ portsToUse.push(Number(openPorts[i][0])); // Convert string port to number
562
665
  this.ports[openPorts[i][0]] = src; // port is now closed
563
666
  }
564
667
  argz.ports = portsToUse;
@@ -598,23 +701,13 @@ class PM_Main extends PM_WithEslintAndTsc_js_1.PM_WithEslintAndTsc {
598
701
  });
599
702
  });
600
703
  });
601
- const oStream = fs_1.default.createWriteStream(`${reportDest}/logs.txt`);
602
704
  const child = (0, node_child_process_1.spawn)("node", [builtfile, JSON.stringify(argz)], {
603
705
  stdio: ["pipe", "pipe", "pipe", "ipc"],
604
706
  // silent: true
605
707
  });
606
708
  const p = "/tmp/tpipe" + Math.random();
607
- const errFile = `${reportDest}/logs.txt`;
608
709
  server.listen(p, () => {
609
- var _a, _b;
610
- (_a = child.stderr) === null || _a === void 0 ? void 0 : _a.on("data", (data) => {
611
- oStream.write(`stderr > ${data}`);
612
- });
613
- (_b = child.stdout) === null || _b === void 0 ? void 0 : _b.on("data", (data) => {
614
- oStream.write(`stdout > ${data}`);
615
- });
616
710
  child.on("close", (code) => {
617
- oStream.close();
618
711
  server.close();
619
712
  haltReturns = true;
620
713
  });
@@ -627,12 +720,13 @@ class PM_Main extends PM_WithEslintAndTsc_js_1.PM_WithEslintAndTsc {
627
720
  }
628
721
  });
629
722
  child.on("error", (e) => {
723
+ var _a;
630
724
  if (fs_1.default.existsSync(p)) {
631
725
  fs_1.default.rmSync(p);
632
726
  }
633
727
  haltReturns = true;
634
- console.log(ansi_colors_1.default.red(ansi_colors_1.default.inverse(`launchNodeSideCar - ${src} errored with: ${e.name}. Check ${errFile}for more info`)));
635
- this.writeFileSync(`${reportDest}/logs.txt`, e.toString(), src);
728
+ console.log(ansi_colors_2.default.red(ansi_colors_2.default.inverse(`launchNodeSideCar - ${src} errored with: ${e.name}. Check logs for more info`)));
729
+ (_a = logs.error) === null || _a === void 0 ? void 0 : _a.write(e.toString() + "\n");
636
730
  // this.bddTestIsNowDone(src, -1);
637
731
  // statusMessagePretty(-1, src);
638
732
  });
@@ -643,7 +737,7 @@ class PM_Main extends PM_WithEslintAndTsc_js_1.PM_WithEslintAndTsc {
643
737
  return [r, argz];
644
738
  }
645
739
  else {
646
- console.log(ansi_colors_1.default.red(`cannot ${src} because there are no open ports. the job will be unqueued`));
740
+ console.log(ansi_colors_2.default.red(`cannot ${src} because there are no open ports. the job will be unqueued`));
647
741
  this.queue.push(sidecar[0]);
648
742
  return [Math.random(), argz];
649
743
  }
@@ -654,12 +748,12 @@ class PM_Main extends PM_WithEslintAndTsc_js_1.PM_WithEslintAndTsc {
654
748
  }
655
749
  };
656
750
  this.stopPureSideCar = async (uid) => {
657
- console.log(ansi_colors_1.default.green(ansi_colors_1.default.inverse(`stopPureSideCar ${uid}`)));
751
+ console.log(ansi_colors_2.default.green(ansi_colors_2.default.inverse(`stopPureSideCar ${uid}`)));
658
752
  await this.sidecars[uid].shutdown();
659
753
  return;
660
754
  };
661
755
  this.launchPureSideCar = async (sidecar) => {
662
- console.log(ansi_colors_1.default.green(ansi_colors_1.default.inverse(`launchPureSideCar ${sidecar[0]}`)));
756
+ console.log(ansi_colors_2.default.green(ansi_colors_2.default.inverse(`launchPureSideCar ${sidecar[0]}`)));
663
757
  const r = Math.random();
664
758
  const dest = process.cwd() + `/testeranto/bundles/pure/${this.name}/${sidecar[0]}`;
665
759
  const builtfile = dest.split(".").slice(0, -1).concat("mjs").join(".");
@@ -682,7 +776,7 @@ class PM_Main extends PM_WithEslintAndTsc_js_1.PM_WithEslintAndTsc {
682
776
  const openPorts = Object.entries(this.ports).filter(([portnumber, portopen]) => portopen === "");
683
777
  if (openPorts.length >= testConfigResource.ports) {
684
778
  for (let i = 0; i < testConfigResource.ports; i++) {
685
- portsToUse.push(openPorts[i][0]);
779
+ portsToUse.push(Number(openPorts[i][0]));
686
780
  this.ports[openPorts[i][0]] = src; // port is now claimed
687
781
  }
688
782
  argz = {
@@ -696,7 +790,7 @@ class PM_Main extends PM_WithEslintAndTsc_js_1.PM_WithEslintAndTsc {
696
790
  }
697
791
  else {
698
792
  this.queue.push(src);
699
- return;
793
+ // return;
700
794
  }
701
795
  }
702
796
  else {
@@ -705,6 +799,8 @@ class PM_Main extends PM_WithEslintAndTsc_js_1.PM_WithEslintAndTsc {
705
799
  }
706
800
  // const builtfile = dest + ".mjs";
707
801
  await Promise.resolve(`${`${builtfile}?cacheBust=${Date.now()}`}`).then(s => __importStar(require(s))).then((module) => {
802
+ if (!this.pureSidecars)
803
+ this.pureSidecars = {};
708
804
  this.pureSidecars[r] = module.default;
709
805
  this.pureSidecars[r].start(argz);
710
806
  });
@@ -716,7 +812,7 @@ class PM_Main extends PM_WithEslintAndTsc_js_1.PM_WithEslintAndTsc {
716
812
  // }
717
813
  };
718
814
  this.launchWeb = async (src, dest) => {
719
- console.log(ansi_colors_1.default.green(ansi_colors_1.default.inverse(`web < ${src}`)));
815
+ console.log(ansi_colors_2.default.green(ansi_colors_2.default.inverse(`web < ${src}`)));
720
816
  this.bddTestIsRunning(src);
721
817
  const reportDest = `testeranto/reports/${this.name}/${src
722
818
  .split(".")
@@ -733,21 +829,35 @@ class PM_Main extends PM_WithEslintAndTsc_js_1.PM_WithEslintAndTsc {
733
829
  browserWSEndpoint: this.browser.wsEndpoint(),
734
830
  });
735
831
  const d = `${dest}?cacheBust=${Date.now()}`;
736
- const evaluation = `
737
-
738
- import('${d}').then(async (x) => {
739
-
740
- try {
741
- return await (await x.default).receiveTestResourceConfig(${webArgz})
742
- } catch (e) {
743
- console.log("web run failure", e.toString())
744
- }
745
- })`;
746
- const ofile = `${reportDest}/logs.txt`;
747
- const oStream = fs_1.default.createWriteStream(ofile);
832
+ const logs = createLogStreams(reportDest, "web");
748
833
  this.browser
749
834
  .newPage()
750
835
  .then((page) => {
836
+ page.on("console", (log) => {
837
+ var _a, _b, _c, _d;
838
+ const msg = `${log.text()}\n`;
839
+ switch (log.type()) {
840
+ case "info":
841
+ (_a = logs.info) === null || _a === void 0 ? void 0 : _a.write(msg);
842
+ break;
843
+ case "warn":
844
+ (_b = logs.warn) === null || _b === void 0 ? void 0 : _b.write(msg);
845
+ break;
846
+ case "error":
847
+ (_c = logs.error) === null || _c === void 0 ? void 0 : _c.write(msg);
848
+ break;
849
+ case "debug":
850
+ (_d = logs.debug) === null || _d === void 0 ? void 0 : _d.write(msg);
851
+ break;
852
+ default:
853
+ break;
854
+ }
855
+ });
856
+ page.on("close", () => {
857
+ logs.writeExitCode(0); // Web tests exit with 0 unless there's an error
858
+ logs.closeAll();
859
+ logs.closeAll();
860
+ });
751
861
  this.mapping().forEach(async ([command, func]) => {
752
862
  if (command === "page") {
753
863
  page.exposeFunction(command, (x) => {
@@ -779,60 +889,40 @@ class PM_Main extends PM_WithEslintAndTsc_js_1.PM_WithEslintAndTsc {
779
889
  Promise.all(screenshots[src] || []).then(() => {
780
890
  delete screenshots[src];
781
891
  page.close();
782
- oStream.close();
783
892
  });
784
- console.log("ostream is closed");
785
893
  return;
786
894
  };
787
895
  page.on("pageerror", (err) => {
788
- console.log(ansi_colors_2.default.red(`web ! ${src} failed to execute No "tests.json" file was generated. Check ${reportDest}/logs.txt for more info`));
789
- oStream.write(err.name);
790
- oStream.write("\n");
791
- if (err.cause) {
792
- oStream.write(err.cause);
793
- oStream.write("\n");
794
- }
795
- if (err.stack) {
796
- oStream.write(err.stack);
797
- oStream.write("\n");
798
- }
799
- if (err.message) {
800
- oStream.write(err.message);
801
- oStream.write("\n");
802
- }
896
+ logs.writeExitCode(-1, err);
897
+ console.log(ansi_colors_1.default.red(`web ! ${src} failed to execute No "tests.json" file was generated. Check ${reportDest}/error.log for more info`));
803
898
  this.bddTestIsNowDone(src, -1);
804
899
  close();
805
900
  });
806
- page.on("console", (log) => {
807
- // console.log("console message: ", log.text());
808
- if (oStream.closed) {
809
- console.log("missed console message: ", log.text());
810
- return;
811
- }
812
- else {
813
- oStream.write(log.text());
814
- oStream.write("\n");
815
- oStream.write(JSON.stringify(log.location()));
816
- oStream.write("\n");
817
- oStream.write(JSON.stringify(log.stackTrace()));
818
- oStream.write("\n");
819
- }
820
- });
901
+ // page.on("console", (log: ConsoleMessage) => {});
821
902
  await page.goto(`file://${`${destFolder}.html`}`, {});
822
903
  await page
823
- .evaluate(evaluation)
904
+ .evaluate(`
905
+ import('${d}').then(async (x) => {
906
+ try {
907
+ return await (await x.default).receiveTestResourceConfig(${webArgz})
908
+ } catch (e) {
909
+ console.log("web run failure", e.toString())
910
+ }
911
+ })
912
+ `)
824
913
  .then(async ({ fails, failed, features }) => {
825
914
  statusMessagePretty(fails, src, "web");
826
915
  this.bddTestIsNowDone(src, fails);
827
- close();
916
+ // close();
828
917
  })
829
918
  .catch((e) => {
830
- console.log(ansi_colors_1.default.red(ansi_colors_1.default.inverse(e)));
831
- console.log(ansi_colors_1.default.red(ansi_colors_1.default.inverse(`web ! ${src} failed to execute. No "tests.json" file was generated. Check ${reportDest}/logs.txt for more info`)));
919
+ console.log(ansi_colors_2.default.red(ansi_colors_2.default.inverse(e.stack)));
920
+ console.log(ansi_colors_2.default.red(ansi_colors_2.default.inverse(`web ! ${src} failed to execute. No "tests.json" file was generated. Check logs for more info`)));
832
921
  this.bddTestIsNowDone(src, -1);
833
922
  })
834
923
  .finally(() => {
835
924
  // process.exit(-1);
925
+ close();
836
926
  });
837
927
  return page;
838
928
  });
@@ -904,42 +994,46 @@ class PM_Main extends PM_WithEslintAndTsc_js_1.PM_WithEslintAndTsc {
904
994
  this.checkForShutdown = () => {
905
995
  // console.log(ansiC.inverse(JSON.stringify(this.summary, null, 2)));
906
996
  this.checkQueue();
907
- console.log(ansi_colors_1.default.inverse(`The following jobs are awaiting resources: ${JSON.stringify(this.queue)}`));
908
- console.log(ansi_colors_1.default.inverse(`The status of ports: ${JSON.stringify(this.ports)}`));
997
+ console.log(ansi_colors_2.default.inverse(`The following jobs are awaiting resources: ${JSON.stringify(this.queue)}`));
998
+ console.log(ansi_colors_2.default.inverse(`The status of ports: ${JSON.stringify(this.ports)}`));
909
999
  this.writeBigBoard();
910
1000
  if (this.mode === "dev")
911
1001
  return;
912
1002
  let inflight = false;
913
1003
  Object.keys(this.summary).forEach((k) => {
914
1004
  if (this.summary[k].prompt === "?") {
915
- console.log(ansi_colors_1.default.blue(ansi_colors_1.default.inverse(`🕕 prompt ${k}`)));
1005
+ console.log(ansi_colors_2.default.blue(ansi_colors_2.default.inverse(`🕕 prompt ${k}`)));
916
1006
  inflight = true;
917
1007
  }
918
1008
  });
919
1009
  Object.keys(this.summary).forEach((k) => {
920
1010
  if (this.summary[k].runTimeErrors === "?") {
921
- console.log(ansi_colors_1.default.blue(ansi_colors_1.default.inverse(`🕕 runTimeError ${k}`)));
1011
+ console.log(ansi_colors_2.default.blue(ansi_colors_2.default.inverse(`🕕 runTimeError ${k}`)));
922
1012
  inflight = true;
923
1013
  }
924
1014
  });
925
1015
  Object.keys(this.summary).forEach((k) => {
926
1016
  if (this.summary[k].staticErrors === "?") {
927
- console.log(ansi_colors_1.default.blue(ansi_colors_1.default.inverse(`🕕 staticErrors ${k}`)));
1017
+ console.log(ansi_colors_2.default.blue(ansi_colors_2.default.inverse(`🕕 staticErrors ${k}`)));
928
1018
  inflight = true;
929
1019
  }
930
1020
  });
931
1021
  Object.keys(this.summary).forEach((k) => {
932
1022
  if (this.summary[k].typeErrors === "?") {
933
- console.log(ansi_colors_1.default.blue(ansi_colors_1.default.inverse(`🕕 typeErrors ${k}`)));
1023
+ console.log(ansi_colors_2.default.blue(ansi_colors_2.default.inverse(`🕕 typeErrors ${k}`)));
934
1024
  inflight = true;
935
1025
  }
936
1026
  });
937
1027
  this.writeBigBoard();
938
1028
  if (!inflight) {
939
- this.browser.disconnect().then(() => {
940
- console.log(ansi_colors_1.default.inverse(`${this.name} has been tested. Goodbye.`));
941
- process.exit();
942
- });
1029
+ if (this.browser) {
1030
+ if (this.browser) {
1031
+ this.browser.disconnect().then(() => {
1032
+ console.log(ansi_colors_2.default.inverse(`${this.name} has been tested. Goodbye.`));
1033
+ process.exit();
1034
+ });
1035
+ }
1036
+ }
943
1037
  }
944
1038
  };
945
1039
  this.launchers = {};
@@ -953,7 +1047,7 @@ class PM_Main extends PM_WithEslintAndTsc_js_1.PM_WithEslintAndTsc {
953
1047
  });
954
1048
  }
955
1049
  async stopSideCar(uid) {
956
- console.log(ansi_colors_1.default.green(ansi_colors_1.default.inverse(`stopSideCar ${uid}`)));
1050
+ console.log(ansi_colors_2.default.green(ansi_colors_2.default.inverse(`stopSideCar ${uid}`)));
957
1051
  Object.entries(this.pureSidecars).forEach(async ([k, v]) => {
958
1052
  if (Number(k) === uid) {
959
1053
  await this.pureSidecars[Number(k)].stop();
@@ -1042,16 +1136,17 @@ class PM_Main extends PM_WithEslintAndTsc_js_1.PM_WithEslintAndTsc {
1042
1136
  waitForInitialPage: false,
1043
1137
  executablePath,
1044
1138
  headless: true,
1139
+ defaultViewport: null, // Disable default 800x600 viewport
1045
1140
  dumpio: false,
1046
1141
  devtools: false,
1047
1142
  args: [
1048
- "--disable-features=site-per-process",
1049
1143
  "--allow-file-access-from-files",
1050
1144
  "--allow-insecure-localhost",
1051
1145
  "--allow-running-insecure-content",
1052
1146
  "--auto-open-devtools-for-tabs",
1053
1147
  "--disable-dev-shm-usage",
1054
1148
  "--disable-extensions",
1149
+ "--disable-features=site-per-process",
1055
1150
  "--disable-gpu",
1056
1151
  "--disable-setuid-sandbox",
1057
1152
  "--disable-site-isolation-trials",
@@ -1061,6 +1156,7 @@ class PM_Main extends PM_WithEslintAndTsc_js_1.PM_WithEslintAndTsc {
1061
1156
  "--no-startup-window",
1062
1157
  "--reduce-security-for-testing",
1063
1158
  "--remote-allow-origins=*",
1159
+ "--start-maximized",
1064
1160
  "--unsafely-treat-insecure-origin-as-secure=*",
1065
1161
  `--remote-debugging-port=3234`,
1066
1162
  // "--disable-features=IsolateOrigins,site-per-process",
@@ -1118,7 +1214,7 @@ class PM_Main extends PM_WithEslintAndTsc_js_1.PM_WithEslintAndTsc {
1118
1214
  const hash = await fileHash(outputFile);
1119
1215
  if (fileHashes[inputFile] !== hash) {
1120
1216
  fileHashes[inputFile] = hash;
1121
- console.log(ansi_colors_1.default.yellow(ansi_colors_1.default.inverse(`< ${e} ${filename}`)));
1217
+ console.log(ansi_colors_2.default.yellow(ansi_colors_2.default.inverse(`< ${e} ${filename}`)));
1122
1218
  // launcher(inputFile, outputFile);
1123
1219
  this.launchers[inputFile]();
1124
1220
  }
@@ -1130,7 +1226,7 @@ class PM_Main extends PM_WithEslintAndTsc_js_1.PM_WithEslintAndTsc {
1130
1226
  });
1131
1227
  this.metafileOutputs(runtime);
1132
1228
  watcher((0, fs_1.watch)(metafile, async (e, filename) => {
1133
- console.log(ansi_colors_1.default.yellow(ansi_colors_1.default.inverse(`< ${e} ${filename} (${runtime})`)));
1229
+ console.log(ansi_colors_2.default.yellow(ansi_colors_2.default.inverse(`< ${e} ${filename} (${runtime})`)));
1134
1230
  this.metafileOutputs(runtime);
1135
1231
  }));
1136
1232
  });
@@ -1169,11 +1265,13 @@ class PM_Main extends PM_WithEslintAndTsc_js_1.PM_WithEslintAndTsc {
1169
1265
  // // });
1170
1266
  // }
1171
1267
  async stop() {
1172
- console.log(ansi_colors_1.default.inverse("Testeranto-Run is shutting down gracefully..."));
1268
+ console.log(ansi_colors_2.default.inverse("Testeranto-Run is shutting down gracefully..."));
1173
1269
  this.mode = "once";
1174
1270
  this.nodeMetafileWatcher.close();
1175
1271
  this.webMetafileWatcher.close();
1176
1272
  this.importMetafileWatcher.close();
1273
+ // Close any remaining log streams
1274
+ Object.values(this.logStreams || {}).forEach((logs) => logs.closeAll());
1177
1275
  this.checkForShutdown();
1178
1276
  }
1179
1277
  async metafileOutputs(platform) {
@@ -1223,7 +1321,7 @@ class PM_Main extends PM_WithEslintAndTsc_js_1.PM_WithEslintAndTsc {
1223
1321
  checkQueue() {
1224
1322
  const x = this.queue.pop();
1225
1323
  if (!x) {
1226
- ansi_colors_1.default.inverse(`The following queue is empty`);
1324
+ ansi_colors_2.default.inverse(`The following queue is empty`);
1227
1325
  return;
1228
1326
  }
1229
1327
  const test = this.configs.tests.find((t) => t[0] === x);