testeranto 0.135.0 → 0.140.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 (187) hide show
  1. package/.aider.chat.history.md +13976 -0
  2. package/.aider.input.history +530 -0
  3. package/.aider.tags.cache.v3/{d8/b0/a8966fcd65890fd9f70d7afe8141.val → bd/91/b71f967fd074cf4b757081b429b7.val} +0 -0
  4. package/.aider.tags.cache.v3/cache.db +0 -0
  5. package/.aider.tags.cache.v3/{8e/ec/2d4659a1589a0187a757ab1cbefa.val → fb/96/b0f91c7e75e08fc5a6907633cf99.val} +0 -0
  6. package/README.md +28 -135
  7. package/bundle.js +1 -1
  8. package/dist/common/src/Init.js +4 -1
  9. package/dist/common/src/Node.js +1 -1
  10. package/dist/common/src/PM/__tests__/nodeSidecar.testeranto.js +2 -2
  11. package/dist/common/src/Web.js +2 -2
  12. package/dist/common/src/build.js +7 -73
  13. package/dist/common/src/defaultConfig.js +0 -1
  14. package/dist/common/src/lib/abstractBase.js +2 -0
  15. package/dist/common/src/lib/basebuilder.js +4 -0
  16. package/dist/common/src/lib/core.js +2 -0
  17. package/dist/common/src/run.js +1 -1
  18. package/dist/common/src/utils/buildTemplates.js +88 -0
  19. package/dist/common/tsconfig.common.tsbuildinfo +1 -1
  20. package/dist/module/src/Init.js +4 -1
  21. package/dist/module/src/Node.js +1 -1
  22. package/dist/module/src/PM/__tests__/nodeSidecar.testeranto.js +2 -2
  23. package/dist/module/src/Project.js +41 -47
  24. package/dist/module/src/TestReport.js +34 -31
  25. package/dist/module/src/Web.js +2 -2
  26. package/dist/module/src/build.js +7 -73
  27. package/dist/module/src/defaultConfig.js +0 -1
  28. package/dist/module/src/lib/abstractBase.js +2 -0
  29. package/dist/module/src/lib/basebuilder.js +4 -0
  30. package/dist/module/src/lib/core.js +2 -0
  31. package/dist/module/src/run.js +1 -1
  32. package/dist/module/src/utils/buildTemplates.js +82 -0
  33. package/dist/module/tsconfig.module.tsbuildinfo +1 -1
  34. package/dist/prebuild/Project.js +62 -13
  35. package/dist/prebuild/TestReport.js +39 -18
  36. package/dist/prebuild/build.mjs +96 -73
  37. package/dist/prebuild/init-docs.mjs +0 -4
  38. package/dist/tsconfig.tsbuildinfo +1 -0
  39. package/dist/types/src/CoreTypes.d.ts +5 -3
  40. package/dist/types/src/Node.d.ts +3 -3
  41. package/dist/types/src/PM/__tests__/nodeSidecar.testeranto.d.ts +17 -1
  42. package/dist/types/src/PM/__tests__/pureSidecar.testeranto.d.ts +17 -1
  43. package/dist/types/src/PM/__tests__/webSidecar.testeranto.d.ts +17 -1
  44. package/dist/types/src/PM/nodeSidecar.d.ts +2 -2
  45. package/dist/types/src/Pure.d.ts +3 -3
  46. package/dist/types/src/Types.d.ts +18 -14
  47. package/dist/types/src/Web.d.ts +3 -3
  48. package/dist/types/src/lib/abstractBase.d.ts +8 -8
  49. package/dist/types/src/lib/basebuilder.d.ts +3 -3
  50. package/dist/types/src/lib/classBuilder.d.ts +2 -2
  51. package/dist/types/src/lib/core.d.ts +2 -2
  52. package/dist/types/src/lib/index.d.ts +7 -6
  53. package/dist/types/src/lib/types.d.ts +8 -8
  54. package/dist/types/src/mothership/test.d.ts +20 -1
  55. package/dist/types/src/utils/buildTemplates.d.ts +3 -0
  56. package/dist/types/tsconfig.types.tsbuildinfo +1 -1
  57. package/docs/index.md +344 -54
  58. package/docs/style.md +116 -0
  59. package/docs.html +537 -0
  60. package/example.css +351 -0
  61. package/fonts/M_PLUS_Rounded_1c/MPLUSRounded1c-Black.ttf +0 -0
  62. package/fonts/M_PLUS_Rounded_1c/MPLUSRounded1c-Bold.ttf +0 -0
  63. package/fonts/M_PLUS_Rounded_1c/MPLUSRounded1c-ExtraBold.ttf +0 -0
  64. package/fonts/M_PLUS_Rounded_1c/MPLUSRounded1c-Light.ttf +0 -0
  65. package/fonts/M_PLUS_Rounded_1c/MPLUSRounded1c-Medium.ttf +0 -0
  66. package/fonts/M_PLUS_Rounded_1c/MPLUSRounded1c-Regular.ttf +0 -0
  67. package/fonts/M_PLUS_Rounded_1c/MPLUSRounded1c-Thin.ttf +0 -0
  68. package/fonts/M_PLUS_Rounded_1c/OFL.txt +91 -0
  69. package/index.html +245 -24
  70. package/logo.svg +72 -0
  71. package/package.json +6 -2
  72. package/scripts/compile-docs.js +89 -0
  73. package/src/CoreTypes.ts +24 -43
  74. package/src/Init.ts +4 -4
  75. package/src/Node.ts +6 -20
  76. package/src/PM/__tests__/nodeSidecar.testeranto.ts +13 -20
  77. package/src/PM/__tests__/pureSidecar.testeranto.ts +8 -15
  78. package/src/PM/__tests__/webSidecar.testeranto.ts +8 -15
  79. package/src/PM/nodeSidecar.ts +2 -2
  80. package/src/PM/pure.ts +0 -4
  81. package/src/Project.tsx +289 -292
  82. package/src/Pure.ts +13 -14
  83. package/src/PureSidecar.ts +1 -0
  84. package/src/TestReport.tsx +179 -165
  85. package/src/Types.ts +29 -144
  86. package/src/Web.ts +15 -11
  87. package/src/build.ts +22 -73
  88. package/src/defaultConfig.ts +2 -1
  89. package/src/lib/BaseSuite.test.ts +457 -0
  90. package/src/lib/BaseSuite.ts +155 -0
  91. package/src/lib/abstractBase.ts +7 -162
  92. package/src/lib/basebuilder.ts +11 -11
  93. package/src/lib/classBuilder.ts +8 -3
  94. package/src/lib/core.ts +12 -12
  95. package/src/lib/index.ts +21 -24
  96. package/src/lib/types.ts +23 -9
  97. package/src/mothership/test.ts +13 -10
  98. package/src/run.ts +1 -1
  99. package/src/style.css +1 -1
  100. package/src/utils/buildTemplates.ts +88 -0
  101. package/style.css +496 -0
  102. package/testeranto/bundles/node/{mothership/chunk-V2EQEXU2.mjs → allTests/chunk-4PJCC2XT.mjs} +66 -59
  103. package/testeranto/bundles/node/allTests/metafile.json +4151 -0
  104. package/testeranto/bundles/node/allTests/src/PM/__tests__/nodeSidecar.testeranto.mjs +187 -0
  105. package/testeranto/bundles/node/{mothership → allTests}/src/PM/__tests__/pureSidecar.testeranto.mjs +1 -1
  106. package/testeranto/bundles/node/{mothership → allTests}/src/PM/__tests__/webSidecar.testeranto.mjs +1 -1
  107. package/testeranto/bundles/node/allTests/src/lib/BaseSuite.test.mjs +305 -0
  108. package/testeranto/bundles/node/{mothership → allTests}/src/mothership/test.mjs +1 -1
  109. package/testeranto/dev.html +29 -0
  110. package/testeranto/index.html +28 -27
  111. package/testeranto/reports/allTests/config.json +57 -0
  112. package/testeranto/reports/{mothership/index.html → allTests/dev.html} +2 -0
  113. package/testeranto/reports/allTests/index.html +26 -0
  114. package/testeranto/reports/{mothership/src/PM/__tests__/sidecar.testeranto/node/index.html → allTests/src/PM/__tests__/nodeSidecar.testeranto/node/dev.html} +4 -3
  115. package/testeranto/reports/allTests/src/PM/__tests__/nodeSidecar.testeranto/node/index.html +21 -0
  116. package/testeranto/reports/allTests/src/PM/__tests__/nodeSidecar.testeranto/node/lint_errors.json +80 -0
  117. package/testeranto/reports/allTests/src/PM/__tests__/nodeSidecar.testeranto/node/message +1 -0
  118. package/testeranto/reports/allTests/src/PM/__tests__/nodeSidecar.testeranto/node/prompt.txt +8 -0
  119. package/testeranto/reports/allTests/src/PM/__tests__/nodeSidecar.testeranto/node/type_errors.txt +28 -0
  120. package/testeranto/reports/{mothership/src/PM/__tests__/webSidecar.testeranto/node/index.html → allTests/src/PM/__tests__/pureSidecar.testeranto/node/dev.html} +4 -3
  121. package/testeranto/reports/allTests/src/PM/__tests__/pureSidecar.testeranto/node/index.html +21 -0
  122. package/testeranto/reports/{mothership → allTests}/src/PM/__tests__/pureSidecar.testeranto/node/lint_errors.json +12 -12
  123. package/testeranto/reports/allTests/src/PM/__tests__/pureSidecar.testeranto/node/message +1 -0
  124. package/testeranto/reports/allTests/src/PM/__tests__/pureSidecar.testeranto/node/prompt.txt +8 -0
  125. package/testeranto/reports/allTests/src/PM/__tests__/pureSidecar.testeranto/node/type_errors.txt +32 -0
  126. package/testeranto/reports/{mothership/src/PM/__tests__/nodeSidecar.testeranto/node/index.html → allTests/src/PM/__tests__/webSidecar.testeranto/node/dev.html} +4 -3
  127. package/testeranto/reports/allTests/src/PM/__tests__/webSidecar.testeranto/node/index.html +21 -0
  128. package/testeranto/reports/{mothership → allTests}/src/PM/__tests__/webSidecar.testeranto/node/lint_errors.json +12 -12
  129. package/testeranto/reports/allTests/src/PM/__tests__/webSidecar.testeranto/node/message +1 -0
  130. package/testeranto/reports/allTests/src/PM/__tests__/webSidecar.testeranto/node/prompt.txt +8 -0
  131. package/testeranto/reports/allTests/src/PM/__tests__/webSidecar.testeranto/node/type_errors.txt +32 -0
  132. package/testeranto/reports/allTests/src/lib/BaseSuite.test/node/console_log.txt +35 -0
  133. package/testeranto/reports/{mothership/src/PM/__tests__/pureSidecar.testeranto/node/index.html → allTests/src/lib/BaseSuite.test/node/dev.html} +4 -3
  134. package/testeranto/reports/allTests/src/lib/BaseSuite.test/node/index.html +21 -0
  135. package/testeranto/reports/allTests/src/lib/BaseSuite.test/node/lint_errors.json +608 -0
  136. package/testeranto/reports/allTests/src/lib/BaseSuite.test/node/message +1 -0
  137. package/testeranto/reports/allTests/src/lib/BaseSuite.test/node/prompt.txt +7 -0
  138. package/testeranto/reports/allTests/src/lib/BaseSuite.test/node/type_errors.txt +68 -0
  139. package/testeranto/reports/allTests/src/mothership/test/node/dev.html +21 -0
  140. package/testeranto/reports/allTests/src/mothership/test/node/index.html +21 -0
  141. package/testeranto/reports/allTests/src/mothership/test/node/message +1 -0
  142. package/testeranto/reports/allTests/src/mothership/test/node/prompt.txt +8 -0
  143. package/testeranto/reports/allTests/src/mothership/test/node/type_errors.txt +24 -0
  144. package/testeranto/reports/allTests/summary.json +37 -0
  145. package/testeranto.config.ts +16 -26
  146. package/tsc.log +66 -69
  147. package/dist/common/src/SP__Polygon.test.js +0 -10
  148. package/dist/module/src/ReportClient.js +0 -132
  149. package/dist/module/src/SP__Polygon.test.js +0 -8
  150. package/dist/prebuild/ReportClient.js +0 -3
  151. package/dist/types/src/SP__Polygon.test.d.ts +0 -1
  152. package/src/ReportClient.tsx +0 -164
  153. package/src/SP__Polygon.test.ts +0 -13
  154. package/testeranto/ReportClient.css +0 -11367
  155. package/testeranto/ReportClient.js +0 -24641
  156. package/testeranto/bundles/node/mothership/metafile.json +0 -389
  157. package/testeranto/bundles/node/mothership/src/PM/__tests__/nodeSidecar.testeranto.mjs +0 -1219
  158. package/testeranto/bundles/node/mothership/src/PM/__tests__/sidecar.testeranto.mjs +0 -1199
  159. package/testeranto/reports/mothership/config.json +0 -25
  160. package/testeranto/reports/mothership/src/PM/__tests__/nodeSidecar.testeranto/node/console_log.txt +0 -0
  161. package/testeranto/reports/mothership/src/PM/__tests__/nodeSidecar.testeranto/node/lint_errors.json +0 -1564
  162. package/testeranto/reports/mothership/src/PM/__tests__/nodeSidecar.testeranto/node/prompt.txt +0 -22
  163. package/testeranto/reports/mothership/src/PM/__tests__/nodeSidecar.testeranto/node/type_errors.txt +0 -35
  164. package/testeranto/reports/mothership/src/PM/__tests__/pureSidecar.testeranto/node/prompt.txt +0 -12
  165. package/testeranto/reports/mothership/src/PM/__tests__/pureSidecar.testeranto/node/type_errors.txt +0 -26
  166. package/testeranto/reports/mothership/src/PM/__tests__/sidecar.testeranto/node/bdd_errors.txt +0 -1
  167. package/testeranto/reports/mothership/src/PM/__tests__/sidecar.testeranto/node/console_log.txt +0 -0
  168. package/testeranto/reports/mothership/src/PM/__tests__/sidecar.testeranto/node/lint_errors.json +0 -1564
  169. package/testeranto/reports/mothership/src/PM/__tests__/sidecar.testeranto/node/log.txt +0 -0
  170. package/testeranto/reports/mothership/src/PM/__tests__/sidecar.testeranto/node/prompt.txt +0 -22
  171. package/testeranto/reports/mothership/src/PM/__tests__/sidecar.testeranto/node/tests.json +0 -56
  172. package/testeranto/reports/mothership/src/PM/__tests__/sidecar.testeranto/node/type_errors.txt +0 -29
  173. package/testeranto/reports/mothership/src/PM/__tests__/webSidecar.testeranto/node/prompt.txt +0 -12
  174. package/testeranto/reports/mothership/src/PM/__tests__/webSidecar.testeranto/node/type_errors.txt +0 -26
  175. package/testeranto/reports/mothership/src/mothership/test/node/bdd_errors.txt +0 -1
  176. package/testeranto/reports/mothership/src/mothership/test/node/console_log.txt +0 -4
  177. package/testeranto/reports/mothership/src/mothership/test/node/index.html +0 -20
  178. package/testeranto/reports/mothership/src/mothership/test/node/log.txt +0 -0
  179. package/testeranto/reports/mothership/src/mothership/test/node/prompt.txt +0 -12
  180. package/testeranto/reports/mothership/src/mothership/test/node/tests.json +0 -24
  181. package/testeranto/reports/mothership/src/mothership/test/node/type_errors.txt +0 -18
  182. package/testeranto/reports/mothership/summary.json +0 -9
  183. /package/testeranto/bundles/node/{mothership → allTests}/chunk-PG6KUKNP.mjs +0 -0
  184. /package/testeranto/bundles/pure/{mothership → allTests}/metafile.json +0 -0
  185. /package/testeranto/bundles/web/{mothership → allTests}/metafile.json +0 -0
  186. /package/testeranto/reports/{mothership/src/PM/__tests__/nodeSidecar.testeranto → allTests/src/lib/BaseSuite.test}/node/log.txt +0 -0
  187. /package/testeranto/reports/{mothership → allTests}/src/mothership/test/node/lint_errors.json +0 -0
package/style.css ADDED
@@ -0,0 +1,496 @@
1
+ body {
2
+ font-size: 120%;
3
+ }
4
+
5
+ td {
6
+ min-width: 7rem;
7
+ }
8
+
9
+ tr:last-child td {
10
+ border-bottom: none;
11
+ }
12
+
13
+ @font-face {
14
+ font-family: "M PLUS Rounded 1c";
15
+ src: url("./fonts/M_PLUS_Rounded_1c/MPLUSRounded1c-Thin.ttf") format("truetype");
16
+ font-weight: 100;
17
+ font-style: normal;
18
+ }
19
+
20
+ @font-face {
21
+ font-family: "M PLUS Rounded 1c";
22
+ src: url("./fonts/M_PLUS_Rounded_1c/MPLUSRounded1c-Light.ttf") format("truetype");
23
+ font-weight: 300;
24
+ font-style: normal;
25
+ }
26
+
27
+ @font-face {
28
+ font-family: "M PLUS Rounded 1c";
29
+ src: url("./fonts/M_PLUS_Rounded_1c/MPLUSRounded1c-Regular.ttf") format("truetype");
30
+ font-weight: 400;
31
+ font-style: normal;
32
+ }
33
+
34
+ @font-face {
35
+ font-family: "M PLUS Rounded 1c";
36
+ src: url("./fonts/M_PLUS_Rounded_1c/MPLUSRounded1c-Medium.ttf") format("truetype");
37
+ font-weight: 500;
38
+ font-style: normal;
39
+ }
40
+
41
+ @font-face {
42
+ font-family: "M PLUS Rounded 1c";
43
+ src: url("./fonts/M_PLUS_Rounded_1c/MPLUSRounded1c-Bold.ttf") format("truetype");
44
+ font-weight: 700;
45
+ font-style: normal;
46
+ }
47
+
48
+ @font-face {
49
+ font-family: "M PLUS Rounded 1c";
50
+ src: url("./fonts/M_PLUS_Rounded_1c/MPLUSRounded1c-ExtraBold.ttf") format("truetype");
51
+ font-weight: 800;
52
+ font-style: normal;
53
+ }
54
+
55
+ @font-face {
56
+ font-family: "M PLUS Rounded 1c";
57
+ src: url("./fonts/M_PLUS_Rounded_1c/MPLUSRounded1c-Black.ttf") format("truetype");
58
+ font-weight: 900;
59
+ font-style: normal;
60
+ }
61
+
62
+ :root {
63
+ --primary: #ff6b6b;
64
+ /* Coral Blush */
65
+ --secondary: #4ecdc4;
66
+ /* Mint Teal */
67
+ --yellow: #e6b422;
68
+ /* Muted Gold */
69
+ --green: #00b4a0;
70
+ /* Deep Teal */
71
+ --light: #292f36;
72
+ /* Midnight Ink */
73
+ --dark: #f1faee;
74
+ /* Pearl Mist */
75
+ --content-bg: rgba(30, 42, 58, 0.7);
76
+
77
+ /* Gradient Colors */
78
+ --bg-start: #0a0f1f;
79
+ /* Deep Cosmos */
80
+ --bg-mid: #1a2b50;
81
+ /* Twilight Navy */
82
+ --bg-sunrise: rgba(176, 125, 133, 1);
83
+ /* Muted Rose */
84
+ --bg-sunrise2: #b07d85;
85
+ /* Dusty Rose */
86
+ --bg-end: #7fb3d5;
87
+ /* Sky Whisper */
88
+
89
+ --semi-trans-bg: #292f3649;
90
+ }
91
+
92
+ a {
93
+ color: var(--bg-end);
94
+ text-decoration: none;
95
+ /* border-bottom: 1px solid var(--dark); */
96
+ transition: all 0.3s ease;
97
+ }
98
+
99
+ a:visited {
100
+ color: var(--bg-sunrise2);
101
+ }
102
+
103
+ a:hover {
104
+ /* color: var(--secondary); */
105
+ /* border-bottom-style: solid; */
106
+ color: linear-gradient(90deg, var(--primary), var(--secondary));
107
+ transform: scaleX(0);
108
+ transition: transform 0.3s ease;
109
+ transform-origin: center;
110
+ }
111
+
112
+ a {
113
+ position: relative;
114
+ text-decoration: none;
115
+ }
116
+
117
+ a::after {
118
+ content: "";
119
+ position: absolute;
120
+ bottom: -3px;
121
+ left: 0;
122
+ width: 100%;
123
+ height: 3px;
124
+ background: linear-gradient(90deg, var(--primary), var(--secondary));
125
+ transform: scaleX(0);
126
+ transition: transform 0.3s ease;
127
+ transform-origin: center;
128
+ }
129
+
130
+ a:hover::after {
131
+ transform: scaleX(1);
132
+ }
133
+
134
+ p,
135
+ h1,
136
+ h2,
137
+ h3,
138
+ h4,
139
+ h5,
140
+ h6,
141
+ li {
142
+ text-shadow: 2px 2px 0px rgba(0, 0, 0, 0.1);
143
+ }
144
+
145
+ pre.mermaid {
146
+ background-color: var(--light);
147
+ width: 95vw;
148
+ }
149
+
150
+ pre {
151
+ white-space: pre-wrap;
152
+ /* Preserve whitespace and allow wrapping */
153
+ word-wrap: break-word;
154
+ /* Break long words to wrap */
155
+ }
156
+
157
+ h1 {
158
+ font-size: 2.5rem;
159
+ margin-bottom: 1.5rem;
160
+ }
161
+
162
+ h3 {
163
+ font-size: 1rem;
164
+ }
165
+
166
+ p,
167
+ li {
168
+ max-width: 40rem;
169
+ line-height: 180%;
170
+ }
171
+
172
+ h1,
173
+ h2,
174
+ h3,
175
+ h4,
176
+ h5,
177
+ h6 {
178
+ max-width: 60rem;
179
+ margin-top: 1rem;
180
+ margin-left: 1rem;
181
+ margin-right: 1rem;
182
+ margin-bottom: 0.5rem;
183
+ text-align: center;
184
+ }
185
+
186
+ code,
187
+ pre,
188
+ p,
189
+ table {
190
+ width: 40rem;
191
+ /* min-width: 60rem; */
192
+ /* max-width: 60vw; */
193
+ }
194
+
195
+ table,
196
+ pre,
197
+ p,
198
+ pre,
199
+ #container pre[class*="language-"] {
200
+ margin-left: 2rem;
201
+ margin-right: 2rem;
202
+ margin-top: 0.5rem;
203
+ margin-bottom: 0.5rem;
204
+ }
205
+
206
+ table {
207
+ background-color: var(--semi-trans-bg);
208
+ border: 2px solid rgba(255, 255, 255, 0.352);
209
+ border-radius: 4px;
210
+ }
211
+
212
+ td {
213
+ padding: 0.5rem;
214
+ border-bottom: 2px solid rgba(255, 255, 255, 0.352);
215
+ }
216
+
217
+ body {
218
+ font-family: "M PLUS Rounded 1c", sans-serif;
219
+ color: var(--dark);
220
+ line-height: 1.6;
221
+ margin: 0;
222
+ padding: 0;
223
+ min-height: 100vh;
224
+ position: relative;
225
+ }
226
+
227
+ body::before {
228
+ content: "";
229
+ position: absolute;
230
+ top: 0;
231
+ left: 0;
232
+ right: 0;
233
+ height: 100%;
234
+ z-index: -1;
235
+ background: linear-gradient(to bottom,
236
+ var(--bg-start) 0%,
237
+ var(--bg-mid) 35%,
238
+ var(--bg-sunrise2) 50%,
239
+ var(--bg-sunrise) 75%,
240
+ var(--bg-end) 85%);
241
+ will-change: transform;
242
+ transform: translateZ(0);
243
+ backface-visibility: hidden;
244
+ perspective: 1000px;
245
+ }
246
+
247
+ body {
248
+ position: relative;
249
+ z-index: 1;
250
+ background: transparent;
251
+ }
252
+
253
+
254
+
255
+ body {
256
+ display: flex;
257
+ flex-direction: column;
258
+ align-items: center;
259
+ padding: 0 1rem;
260
+ transition: background-position 0.5s ease-out;
261
+ }
262
+
263
+ #container {
264
+ display: flex;
265
+ justify-content: center;
266
+ align-items: flex-start;
267
+ /* CHANGED */
268
+ /*align-self: center;*/
269
+ flex-direction: column;
270
+ flex-wrap: wrap;
271
+ /* max-width: 50%; */
272
+ }
273
+
274
+ h1:first-child {
275
+ margin-top: 0;
276
+ padding-top: 0.5em;
277
+ }
278
+
279
+ code {
280
+ background-color: var(--light);
281
+ padding: 0.2em 0.4em;
282
+ border-radius: 4px;
283
+ font-family: "JetBrains Mono", monospace;
284
+ }
285
+
286
+ /* Prism.js overrides using official color scheme */
287
+ pre[class*="language-"] {
288
+ background-color: var(--semi-trans-bg);
289
+ border: 2px solid rgba(255, 255, 255, 0.352);
290
+ border-radius: 8px;
291
+ margin: 1em 0;
292
+ overflow: auto;
293
+ position: relative;
294
+ }
295
+
296
+ pre code {
297
+ background-color: var(--semi-trans-bg) !important;
298
+ padding: 0 !important;
299
+ }
300
+
301
+ .token.comment,
302
+ .token.prolog,
303
+ .token.doctype,
304
+ .token.cdata {
305
+ color: var(--bg-sunrise2);
306
+ font-style: italic;
307
+ }
308
+
309
+ .token.punctuation {
310
+ color: var(--dark);
311
+ opacity: 0.7;
312
+ }
313
+
314
+ .token.property,
315
+ .token.tag,
316
+ .token.boolean,
317
+ .token.number,
318
+ .token.constant,
319
+ .token.symbol,
320
+ .token.deleted {
321
+ color: var(--yellow);
322
+ }
323
+
324
+ .token.selector,
325
+ .token.attr-name,
326
+ .token.string,
327
+ .token.char,
328
+ .token.builtin,
329
+ .token.inserted {
330
+ color: var(--green);
331
+ }
332
+
333
+ .token.operator,
334
+ .token.entity,
335
+ .token.url,
336
+ .language-css .token.string,
337
+ .style .token.string {
338
+ color: var(--bg-end);
339
+ }
340
+
341
+ .token.atrule,
342
+ .token.attr-value,
343
+ .token.keyword {
344
+ color: var(--bg-sunrise);
345
+ }
346
+
347
+ .token.function,
348
+ .token.class-name {
349
+ color: var(--bg-end);
350
+ }
351
+
352
+ .token.regex,
353
+ .token.important,
354
+ .token.variable {
355
+ color: var(--yellow);
356
+ }
357
+
358
+ /* Line numbers */
359
+ .line-numbers .line-numbers-rows {
360
+ border-right: 1px solid rgba(255, 255, 255, 0.2);
361
+ }
362
+
363
+ .line-numbers-rows>span:before {
364
+ color: var(--dark);
365
+ }
366
+
367
+ pre {
368
+ background-color: var(--dark);
369
+ color: white;
370
+ padding: 1em;
371
+ border-radius: 8px;
372
+
373
+ overflow-x: auto;
374
+ }
375
+
376
+ button,
377
+ .button {
378
+ background-color: var(--primary);
379
+ color: white;
380
+ border: none;
381
+ padding: 0.5em 1em;
382
+ border-radius: 20px;
383
+ cursor: pointer;
384
+ font-family: monospace, "Courier New";
385
+ box-shadow: 3px 3px 0px var(--dark);
386
+ transition: all 0.2s ease;
387
+ }
388
+
389
+ button:hover,
390
+ .button:hover {
391
+ transform: translate(2px, 2px);
392
+ box-shadow: 1px 1px 0px var(--dark);
393
+ }
394
+
395
+ .logo {
396
+ max-width: 150px;
397
+ filter: drop-shadow(3px 3px 0px rgba(0, 0, 0, 0.1));
398
+ transition: all 0.3s ease;
399
+ }
400
+
401
+ .logo:hover {
402
+ transform: rotate(5deg) scale(1.05);
403
+ }
404
+
405
+ @keyframes float {
406
+ 0% {
407
+ transform: translateY(0px);
408
+ }
409
+
410
+ 50% {
411
+ transform: translateY(-10px);
412
+ }
413
+
414
+ 100% {
415
+ transform: translateY(0px);
416
+ }
417
+ }
418
+
419
+ .floating {
420
+ animation: float 3s ease-in-out infinite;
421
+ }
422
+
423
+ .logo {
424
+ width: 200px;
425
+ position: fixed;
426
+ top: 10px;
427
+ right: 10px;
428
+ z-index: 100;
429
+ transition: all 0.3s ease;
430
+ filter: drop-shadow(2px 2px 3px rgba(0, 0, 0, 0.3));
431
+ animation: pulse 2s infinite alternate;
432
+ }
433
+
434
+ .logo:hover {
435
+ transform: scale(1.1) rotate(5deg);
436
+ filter: drop-shadow(5px 5px 8px rgba(0, 0, 0, 0.4));
437
+ }
438
+
439
+ @keyframes pulse {
440
+ 0% {
441
+ transform: scale(1);
442
+ }
443
+
444
+ 100% {
445
+ transform: scale(1.05);
446
+ }
447
+ }
448
+
449
+ .mermaid {
450
+ /* margin: 2rem 0; */
451
+ /* background: white; */
452
+ padding: 1rem;
453
+ border-radius: 8px;
454
+ box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
455
+ }
456
+
457
+ /* Floating animation for key elements */
458
+ @keyframes float {
459
+ 0% {
460
+ transform: translateY(0px);
461
+ }
462
+
463
+ 50% {
464
+ transform: translateY(-10px);
465
+ }
466
+
467
+ 100% {
468
+ transform: translateY(0px);
469
+ }
470
+ }
471
+
472
+ h1,
473
+ h2,
474
+ h3 {
475
+ position: relative;
476
+ }
477
+
478
+ /* Glow effect for code blocks */
479
+ pre {
480
+ background-color: #292f3649;
481
+ border: 2px solid rgba(255, 255, 255, 0.352);
482
+ border-radius: 4px;
483
+ padding: 1.25em;
484
+ overflow-x: auto;
485
+ color: var(--dark);
486
+ line-height: 1.5;
487
+ /* margin: 1.5rem 0; */
488
+ /* box-shadow: 0 4px 6px rgb(255, 255, 255, 0.5); */
489
+ }
490
+
491
+ pre code {
492
+ background-color: transparent;
493
+ padding: 0;
494
+ border-radius: 0;
495
+ font-size: 0.95em;
496
+ }
@@ -32,32 +32,6 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
32
32
  mod
33
33
  ));
34
34
 
35
- // src/lib/index.ts
36
- var BaseTestInterface = {
37
- beforeAll: async (s) => s,
38
- beforeEach: async function(subject, initialValues, x, testResource, pm) {
39
- return subject;
40
- },
41
- afterEach: async (s) => s,
42
- afterAll: (store) => void 0,
43
- butThen: async (store, thenCb) => {
44
- return thenCb(store);
45
- },
46
- andWhen: async (store, whenCB, testResource, pm) => {
47
- await whenCB(store, testResource, pm);
48
- },
49
- assertThis: (x) => x
50
- };
51
- var DefaultTestInterface = (p) => {
52
- return {
53
- ...BaseTestInterface,
54
- ...p
55
- };
56
- };
57
- var defaultTestResourceRequirement = {
58
- ports: 0
59
- };
60
-
61
35
  // src/lib/pmProxy.ts
62
36
  var prxy = function(pm, mappings) {
63
37
  return new Proxy(pm, {
@@ -216,7 +190,7 @@ var afterAllProxy = (pm, suite) => prxy(pm, [
216
190
  ]
217
191
  ]);
218
192
 
219
- // src/lib/abstractBase.ts
193
+ // src/lib/BaseSuite.ts
220
194
  var BaseSuite = class {
221
195
  constructor(name, index, givens = {}, checks = []) {
222
196
  this.name = name;
@@ -265,21 +239,21 @@ var BaseSuite = class {
265
239
  );
266
240
  for (const [gKey, g] of Object.entries(this.givens)) {
267
241
  const giver = this.givens[gKey];
268
- try {
269
- this.store = await giver.give(
270
- subject,
271
- gKey,
272
- testResourceConfiguration,
273
- this.assertThat,
274
- suiteArtifactory,
275
- tLog,
276
- pm,
277
- sNdx
278
- );
279
- } catch (e) {
242
+ this.store = await giver.give(
243
+ subject,
244
+ gKey,
245
+ testResourceConfiguration,
246
+ this.assertThat,
247
+ suiteArtifactory,
248
+ tLog,
249
+ pm,
250
+ sNdx
251
+ ).catch((e) => {
280
252
  this.failed = true;
281
253
  this.fails = this.fails + 1;
282
- }
254
+ console.error("Given error:", e);
255
+ throw e;
256
+ });
283
257
  }
284
258
  for (const [ndx, thater] of this.checks.entries()) {
285
259
  await thater.check(
@@ -304,6 +278,8 @@ var BaseSuite = class {
304
278
  return this;
305
279
  }
306
280
  };
281
+
282
+ // src/lib/abstractBase.ts
307
283
  var BaseGiven = class {
308
284
  constructor(name, features, whens, thens, givenCB, initialValues) {
309
285
  this.name = name;
@@ -320,7 +296,12 @@ var BaseGiven = class {
320
296
  return {
321
297
  key: this.key,
322
298
  name: this.name,
323
- whens: this.whens.map((w) => w.toObj()),
299
+ whens: this.whens.map((w) => {
300
+ if (w && w.toObj)
301
+ return w.toObj();
302
+ console.error("w is not as expected!", w);
303
+ return {};
304
+ }),
324
305
  thens: this.thens.map((t) => t.toObj()),
325
306
  error: this.error ? [this.error, this.error.stack] : null,
326
307
  failed: this.failed,
@@ -374,7 +355,7 @@ var BaseGiven = class {
374
355
  pm,
375
356
  `suite-${suiteNdx}/given-${key}/then-${thenNdx}`
376
357
  );
377
- return tester(t);
358
+ tester(t);
378
359
  }
379
360
  } catch (e) {
380
361
  this.failed = true;
@@ -495,6 +476,37 @@ var BaseCheck = class {
495
476
  }
496
477
  };
497
478
 
479
+ // src/lib/index.ts
480
+ var BaseTestInterface = () => ({
481
+ beforeAll: async (s) => s,
482
+ beforeEach: async function(subject, initialValues, x, testResource, pm) {
483
+ return subject;
484
+ },
485
+ afterEach: async (s) => s,
486
+ afterAll: (store) => void 0,
487
+ butThen: async (store, thenCb) => {
488
+ return thenCb(store);
489
+ },
490
+ andWhen: async (store, whenCB, testResource, pm) => {
491
+ try {
492
+ await whenCB(store, testResource, pm);
493
+ } catch (error) {
494
+ console.error("Error in andWhen:", error);
495
+ throw error;
496
+ }
497
+ },
498
+ assertThis: (x) => x
499
+ });
500
+ var DefaultTestInterface = (p) => {
501
+ return {
502
+ ...BaseTestInterface,
503
+ ...p
504
+ };
505
+ };
506
+ var defaultTestResourceRequirement = {
507
+ ports: 0
508
+ };
509
+
498
510
  // src/lib/basebuilder.ts
499
511
  var BaseBuilder = class {
500
512
  constructor(input, suitesOverrides, givenOverides, whenOverides, thenOverides, checkOverides, testResourceRequirement, testSpecification) {
@@ -627,17 +639,19 @@ var ClassBuilder = class extends BaseBuilder {
627
639
  );
628
640
  const classyWhens = Object.entries(testImplementation.whens).reduce(
629
641
  (a, [key, whEn]) => {
630
- a[key] = (payload) => {
642
+ a[key] = (...payload) => {
631
643
  return new whenKlasser.prototype.constructor(
632
644
  `${whEn.name}: ${payload && payload.toString()}`,
633
- whEn(payload)
645
+ whEn(...payload)
634
646
  );
635
647
  };
636
648
  return a;
637
649
  },
638
650
  {}
639
651
  );
640
- const classyThens = Object.entries(testImplementation.thens).reduce(
652
+ const classyThens = Object.entries(
653
+ testImplementation.thens
654
+ ).reduce(
641
655
  (a, [key, thEn]) => {
642
656
  a[key] = (expected, ...x) => {
643
657
  return new thenKlasser.prototype.constructor(
@@ -942,17 +956,6 @@ var PM_Node = class extends PM {
942
956
  if (error) {
943
957
  console.error(`\u2757\uFE0FtestArtiFactory failed`, targetDir, error);
944
958
  }
945
- fs.writeFileSync(
946
- path.resolve(
947
- targetDir.split("/").slice(0, -1).join("/"),
948
- "manifest"
949
- ),
950
- fPaths.join(`
951
- `),
952
- {
953
- encoding: "utf-8"
954
- }
955
- );
956
959
  if (Buffer.isBuffer(value)) {
957
960
  fs.writeFileSync(fPath, value, "binary");
958
961
  res();
@@ -1014,13 +1017,12 @@ var testeranto = async (input, testSpecification, testImplementation, testInterf
1014
1017
  try {
1015
1018
  ipcfile = process.argv[3];
1016
1019
  const f = await t.receiveTestResourceConfig(process.argv[2]);
1017
- console.error("goodbye node error", f.fails);
1020
+ console.error("goodbye node with failures", f.fails);
1018
1021
  process.exit(f.fails);
1019
1022
  } catch (e) {
1020
- console.error("goodbye node error", e);
1023
+ console.error("goodbye node with caught error", e);
1021
1024
  process.exit(-1);
1022
1025
  }
1023
- return t;
1024
1026
  };
1025
1027
  var Node_default = testeranto;
1026
1028
 
@@ -1028,5 +1030,10 @@ export {
1028
1030
  __require,
1029
1031
  __commonJS,
1030
1032
  __toESM,
1033
+ BaseSuite,
1034
+ BaseGiven,
1035
+ BaseWhen,
1036
+ BaseThen,
1037
+ BaseCheck,
1031
1038
  Node_default
1032
1039
  };