@acutis/cli 0.1.2 → 0.2.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 (200) hide show
  1. package/.output/nitro.json +1 -1
  2. package/.output/public/_nuxt/AC3CibKK.js +1 -0
  3. package/.output/public/_nuxt/BGc2VNce.js +1 -0
  4. package/.output/public/_nuxt/BN4XOpVt.js +1 -0
  5. package/.output/public/_nuxt/BNJ2GN0A.js +1 -0
  6. package/.output/public/_nuxt/BP52ABGx.js +1 -0
  7. package/.output/public/_nuxt/BWcsrofD.js +1 -0
  8. package/.output/public/_nuxt/{b5tj-z25.js → Bqp63OdK.js} +1 -1
  9. package/.output/public/_nuxt/CF8y5KTS.js +3 -0
  10. package/.output/public/_nuxt/CUTaKHid.js +1 -0
  11. package/.output/public/_nuxt/CZEhodn6.js +1 -0
  12. package/.output/public/_nuxt/Cym5RBDq.js +1 -0
  13. package/.output/public/_nuxt/D1ge6Bwo.js +1 -0
  14. package/.output/public/_nuxt/D2UpbqeN.js +28 -0
  15. package/.output/public/_nuxt/DDKd6Dxq.js +1 -0
  16. package/.output/public/_nuxt/D_FJunXs.js +64 -0
  17. package/.output/public/_nuxt/Dc2A-6xl.js +6 -0
  18. package/.output/public/_nuxt/DoQkJV4U.js +1 -0
  19. package/.output/public/_nuxt/JwPm-b3T.js +1 -0
  20. package/.output/public/_nuxt/builds/latest.json +1 -1
  21. package/.output/public/_nuxt/builds/meta/45a88f3e-8555-4d4c-bdac-4d0788b1fa61.json +1 -0
  22. package/.output/public/_nuxt/cnFSOQCu.js +1 -0
  23. package/.output/public/_nuxt/entry.BmTN_nlL.css +2 -0
  24. package/.output/public/_nuxt/error-404.CkhL7nxg.css +1 -0
  25. package/.output/public/_nuxt/error-500.DNftkU4A.css +1 -0
  26. package/.output/public/_nuxt/tags.C6gBUbEB.css +1 -0
  27. package/.output/server/chunks/_/auth2.mjs +3 -3
  28. package/.output/server/chunks/_/environment.mjs +3 -3
  29. package/.output/server/chunks/_/error-500.mjs.map +1 -1
  30. package/.output/server/chunks/_/generation.mjs +3 -3
  31. package/.output/server/chunks/_/project.mjs +2 -2
  32. package/.output/server/chunks/_/project.service.mjs +3 -31
  33. package/.output/server/chunks/_/project.service.mjs.map +1 -1
  34. package/.output/server/chunks/_/recording.mjs +5 -2
  35. package/.output/server/chunks/_/recording.mjs.map +1 -1
  36. package/.output/server/chunks/_/scenario.mjs +4 -2
  37. package/.output/server/chunks/_/scenario.mjs.map +1 -1
  38. package/.output/server/chunks/_/scenario2.mjs +22 -5
  39. package/.output/server/chunks/_/scenario2.mjs.map +1 -1
  40. package/.output/server/chunks/_/spec-rules.mjs +29 -232
  41. package/.output/server/chunks/_/spec-rules.mjs.map +1 -1
  42. package/.output/server/chunks/build/{Alert-Q5hBYuxt.mjs → Alert-WVcujYrW.mjs} +14 -14
  43. package/.output/server/chunks/build/Alert-WVcujYrW.mjs.map +1 -0
  44. package/.output/server/chunks/build/{Container-HW0bT_Wn.mjs → Container-C0k092cW.mjs} +4 -4
  45. package/.output/server/chunks/build/Container-C0k092cW.mjs.map +1 -0
  46. package/.output/server/chunks/build/{Pagination-FFamqWKD.mjs → Pagination-BXryRfUN.mjs} +4 -4
  47. package/.output/server/chunks/build/{Pagination-FFamqWKD.mjs.map → Pagination-BXryRfUN.mjs.map} +1 -1
  48. package/.output/server/chunks/build/{_...scenario_-DNqQ06NM.mjs → _...scenario_-qp56INdQ.mjs} +687 -149
  49. package/.output/server/chunks/build/_...scenario_-qp56INdQ.mjs.map +1 -0
  50. package/.output/server/chunks/build/{_slug_-BlLRYU9d.mjs → _slug_-dNDiCabc.mjs} +788 -433
  51. package/.output/server/chunks/build/_slug_-dNDiCabc.mjs.map +1 -0
  52. package/.output/server/chunks/build/{error-404-Dzfp7Wik.mjs → error-404-B5fzVPdQ.mjs} +5 -5
  53. package/.output/server/chunks/build/error-404-B5fzVPdQ.mjs.map +1 -0
  54. package/.output/server/chunks/build/error-404-styles.C6Lq0aSH.mjs +9 -0
  55. package/.output/server/chunks/build/error-404-styles.C6Lq0aSH.mjs.map +1 -0
  56. package/.output/server/chunks/build/{error-500-Df60mzLr.mjs → error-500-Be62wrWs.mjs} +5 -5
  57. package/.output/server/chunks/build/error-500-Be62wrWs.mjs.map +1 -0
  58. package/.output/server/chunks/build/error-500-styles.D3b6pwL1.mjs +9 -0
  59. package/.output/server/chunks/build/error-500-styles.D3b6pwL1.mjs.map +1 -0
  60. package/.output/server/chunks/build/{origin-_Ab6zkKk.mjs → origin-DFFT7pGA.mjs} +546 -21
  61. package/.output/server/chunks/build/{origin-_Ab6zkKk.mjs.map → origin-DFFT7pGA.mjs.map} +1 -1
  62. package/.output/server/chunks/build/{pages-BuW8VoW3.mjs → pages-NkoKH95O.mjs} +35 -37
  63. package/.output/server/chunks/build/pages-NkoKH95O.mjs.map +1 -0
  64. package/.output/server/chunks/build/tags-DXumXgr9.mjs +1653 -0
  65. package/.output/server/chunks/build/tags-DXumXgr9.mjs.map +1 -0
  66. package/.output/server/chunks/build/telemetria-BaMsUnJ8.mjs +131 -0
  67. package/.output/server/chunks/build/telemetria-BaMsUnJ8.mjs.map +1 -0
  68. package/.output/server/chunks/build/timeline-styles.CzOXKr8R.mjs +9 -0
  69. package/.output/server/chunks/build/timeline-styles.CzOXKr8R.mjs.map +1 -0
  70. package/.output/server/chunks/nitro/nitro.mjs +618 -377
  71. package/.output/server/chunks/nitro/nitro.mjs.map +1 -1
  72. package/.output/server/chunks/raw/driver-entry.mjs +1 -1
  73. package/.output/server/chunks/routes/api/projects/_slug/auth/record.post.mjs +1 -1
  74. package/.output/server/chunks/routes/api/projects/_slug/auth/skip.post.mjs +1 -1
  75. package/.output/server/chunks/routes/api/projects/_slug/auth.get.mjs +1 -1
  76. package/.output/server/chunks/routes/api/projects/_slug/auth.put.mjs +1 -1
  77. package/.output/server/chunks/routes/api/telemetry/report.post.mjs +133 -0
  78. package/.output/server/chunks/routes/api/telemetry/report.post.mjs.map +1 -0
  79. package/.output/server/chunks/routes/debug/close-page.post.mjs +40 -0
  80. package/.output/server/chunks/routes/debug/close-page.post.mjs.map +1 -0
  81. package/.output/server/chunks/routes/debug/erro-de-telemetria.get.mjs +49 -0
  82. package/.output/server/chunks/routes/debug/erro-de-telemetria.get.mjs.map +1 -0
  83. package/.output/server/chunks/routes/debug/replay-decision.post.mjs +43 -0
  84. package/.output/server/chunks/routes/debug/replay-decision.post.mjs.map +1 -0
  85. package/.output/server/chunks/routes/renderer.mjs +2 -2
  86. package/.output/server/chunks/routes/renderer.mjs.map +1 -1
  87. package/.output/server/chunks/routes/runner/video.get.mjs +1 -1
  88. package/.output/server/chunks/routes/ws.mjs +19 -2
  89. package/.output/server/chunks/routes/ws.mjs.map +1 -1
  90. package/.output/server/chunks/virtual/entry.mjs +11755 -11725
  91. package/.output/server/chunks/virtual/entry.mjs.map +1 -1
  92. package/.output/server/chunks/virtual/precomputed.mjs +1 -1
  93. package/.output/server/chunks/virtual/styles.mjs +4 -3
  94. package/.output/server/index.mjs +1 -1
  95. package/.output/server/package.json +1 -1
  96. package/bin/splash.mjs +2 -2
  97. package/dist-ui/driver-entry.js +3 -3
  98. package/package.json +5 -1
  99. package/reporters/stream-reporter.cjs +3 -3
  100. package/.output/public/_nuxt/5GgR1mbX.js +0 -1
  101. package/.output/public/_nuxt/ANcp5QFz.js +0 -1
  102. package/.output/public/_nuxt/BEFJRHhA2.js +0 -1
  103. package/.output/public/_nuxt/BEQgcp5R.js +0 -1
  104. package/.output/public/_nuxt/BEk00u4_.js +0 -1
  105. package/.output/public/_nuxt/BGdmRvCK2.js +0 -8
  106. package/.output/public/_nuxt/BMLYuU_e.js +0 -1
  107. package/.output/public/_nuxt/BWJpSLJL.js +0 -1
  108. package/.output/public/_nuxt/BXpPYfMx.js +0 -1
  109. package/.output/public/_nuxt/BbjTtCyI.js +0 -3
  110. package/.output/public/_nuxt/Bp3A7I5W2.js +0 -1
  111. package/.output/public/_nuxt/BuOb9NX0.js +0 -1
  112. package/.output/public/_nuxt/C1tNhfTr.js +0 -1
  113. package/.output/public/_nuxt/C2KIeuhG.js +0 -1
  114. package/.output/public/_nuxt/C5uJN_MU.js +0 -1
  115. package/.output/public/_nuxt/CBVnImq2.js +0 -1
  116. package/.output/public/_nuxt/CC0OsuIz.js +0 -28
  117. package/.output/public/_nuxt/CIFC2HNk.js +0 -1
  118. package/.output/public/_nuxt/CKps1Vc12.js +0 -3
  119. package/.output/public/_nuxt/CRH0iqnQ.js +0 -1
  120. package/.output/public/_nuxt/CTLrtTtn2.js +0 -64
  121. package/.output/public/_nuxt/CTqLwyQP.js +0 -1
  122. package/.output/public/_nuxt/CU7sPrmY.js +0 -3
  123. package/.output/public/_nuxt/CfOqJVtU.js +0 -1
  124. package/.output/public/_nuxt/Ch1EeKHP.js +0 -1
  125. package/.output/public/_nuxt/Clv7nJ_T2.js +0 -1
  126. package/.output/public/_nuxt/D-7v7DZs.js +0 -1
  127. package/.output/public/_nuxt/D4ykC_lY2.js +0 -1
  128. package/.output/public/_nuxt/D5HF1Z0f2.js +0 -1
  129. package/.output/public/_nuxt/DDHUGtv32.js +0 -4
  130. package/.output/public/_nuxt/DEJ3sRrh2.js +0 -1
  131. package/.output/public/_nuxt/DPM_BYFz2.js +0 -1
  132. package/.output/public/_nuxt/DXLPf3t6.js +0 -1
  133. package/.output/public/_nuxt/Dpnaldxf2.js +0 -1
  134. package/.output/public/_nuxt/DtuQPKVG.js +0 -1
  135. package/.output/public/_nuxt/FvWrDx_z.js +0 -1
  136. package/.output/public/_nuxt/Gcazu-lR.js +0 -1
  137. package/.output/public/_nuxt/QcKfgokC.js +0 -1
  138. package/.output/public/_nuxt/XDsaI4JL.js +0 -1
  139. package/.output/public/_nuxt/builds/meta/bf2cb2c6-2ddb-4f64-9777-e314571fd19d.json +0 -1
  140. package/.output/public/_nuxt/entry.m-nAFUcz.css +0 -2
  141. package/.output/public/_nuxt/error-404.DopINOT1.css +0 -1
  142. package/.output/public/_nuxt/error-500.D7goJC9g.css +0 -1
  143. package/.output/public/_nuxt/f0o80Gcm.js +0 -1
  144. package/.output/public/_nuxt/k5q7GKnv.js +0 -1
  145. package/.output/public/_nuxt/modal.3A_G7d4A.css +0 -1
  146. package/.output/public/_nuxt/tLr-SJaf.js +0 -1
  147. package/.output/public/dev/sample-run.webm +0 -0
  148. package/.output/server/chunks/build/Alert-Q5hBYuxt.mjs.map +0 -1
  149. package/.output/server/chunks/build/Badge-BgyIJKeU.mjs +0 -394
  150. package/.output/server/chunks/build/Badge-BgyIJKeU.mjs.map +0 -1
  151. package/.output/server/chunks/build/Card-DLzZ816u.mjs +0 -144
  152. package/.output/server/chunks/build/Card-DLzZ816u.mjs.map +0 -1
  153. package/.output/server/chunks/build/Container-HW0bT_Wn.mjs.map +0 -1
  154. package/.output/server/chunks/build/_...scenario_-DNqQ06NM.mjs.map +0 -1
  155. package/.output/server/chunks/build/_slug_-BlLRYU9d.mjs.map +0 -1
  156. package/.output/server/chunks/build/auth-status-5sNoLTPk.mjs +0 -128
  157. package/.output/server/chunks/build/auth-status-5sNoLTPk.mjs.map +0 -1
  158. package/.output/server/chunks/build/auth-status-Bo2gxZ-H.mjs +0 -53
  159. package/.output/server/chunks/build/auth-status-Bo2gxZ-H.mjs.map +0 -1
  160. package/.output/server/chunks/build/empty-xO5aD2Ip.mjs +0 -44
  161. package/.output/server/chunks/build/empty-xO5aD2Ip.mjs.map +0 -1
  162. package/.output/server/chunks/build/error-404-Dzfp7Wik.mjs.map +0 -1
  163. package/.output/server/chunks/build/error-404-styles.ByPbpRGS.mjs +0 -9
  164. package/.output/server/chunks/build/error-404-styles.ByPbpRGS.mjs.map +0 -1
  165. package/.output/server/chunks/build/error-500-Df60mzLr.mjs.map +0 -1
  166. package/.output/server/chunks/build/error-500-styles.Dz8enkTW.mjs +0 -9
  167. package/.output/server/chunks/build/error-500-styles.Dz8enkTW.mjs.map +0 -1
  168. package/.output/server/chunks/build/generation-warnings-RCB9uLi8.mjs +0 -123
  169. package/.output/server/chunks/build/generation-warnings-RCB9uLi8.mjs.map +0 -1
  170. package/.output/server/chunks/build/history-D-mei_D6.mjs +0 -163
  171. package/.output/server/chunks/build/history-D-mei_D6.mjs.map +0 -1
  172. package/.output/server/chunks/build/modal-81h_kbj9.mjs +0 -321
  173. package/.output/server/chunks/build/modal-81h_kbj9.mjs.map +0 -1
  174. package/.output/server/chunks/build/modal-Cpj-bQgu.mjs +0 -342
  175. package/.output/server/chunks/build/modal-Cpj-bQgu.mjs.map +0 -1
  176. package/.output/server/chunks/build/modal-DV_DQ0hO.mjs +0 -659
  177. package/.output/server/chunks/build/modal-DV_DQ0hO.mjs.map +0 -1
  178. package/.output/server/chunks/build/pages-BuW8VoW3.mjs.map +0 -1
  179. package/.output/server/chunks/build/phrases-CSDEYSbZ.mjs +0 -38
  180. package/.output/server/chunks/build/phrases-CSDEYSbZ.mjs.map +0 -1
  181. package/.output/server/chunks/build/project-run-filtered-CplHFc5x.mjs +0 -455
  182. package/.output/server/chunks/build/project-run-filtered-CplHFc5x.mjs.map +0 -1
  183. package/.output/server/chunks/build/run-stream-CNVDpZ_S.mjs +0 -157
  184. package/.output/server/chunks/build/run-stream-CNVDpZ_S.mjs.map +0 -1
  185. package/.output/server/chunks/build/scenario-runs-C7TDC5iA.mjs +0 -135
  186. package/.output/server/chunks/build/scenario-runs-C7TDC5iA.mjs.map +0 -1
  187. package/.output/server/chunks/build/scenario-suggestions-CsQg875h.mjs +0 -210
  188. package/.output/server/chunks/build/scenario-suggestions-CsQg875h.mjs.map +0 -1
  189. package/.output/server/chunks/build/scenario-test-run-Deg4Qlme.mjs +0 -505
  190. package/.output/server/chunks/build/scenario-test-run-Deg4Qlme.mjs.map +0 -1
  191. package/.output/server/chunks/build/steps-CcAjZqHX.mjs +0 -54
  192. package/.output/server/chunks/build/steps-CcAjZqHX.mjs.map +0 -1
  193. package/.output/server/chunks/build/tags-DrKY6Ah4.mjs +0 -594
  194. package/.output/server/chunks/build/tags-DrKY6Ah4.mjs.map +0 -1
  195. package/.output/server/chunks/build/warnings-D8SWbHw0.mjs +0 -76
  196. package/.output/server/chunks/build/warnings-D8SWbHw0.mjs.map +0 -1
  197. package/.output/server/chunks/raw/sample-run.mjs +0 -7
  198. package/.output/server/chunks/raw/sample-run.mjs.map +0 -1
  199. package/dist-ui/dev/sample-run.webm +0 -0
  200. /package/.output/public/_nuxt/{BDNMzG2s2.js → BDNMzG2s.js} +0 -0
@@ -1,38 +0,0 @@
1
- import { _ as _sfc_main$2 } from '../virtual/entry.mjs';
2
- import { defineComponent, ref, mergeProps, unref, useSSRContext } from 'vue';
3
- import { ssrRenderAttrs, ssrRenderComponent, ssrInterpolate } from 'vue/server-renderer';
4
-
5
- //#region app/components/base/loading/phrases.vue?vue&type=script&setup=true&lang.ts
6
- var phrases_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineComponent({
7
- __name: "phrases",
8
- __ssrInlineRender: true,
9
- props: {
10
- phrases: {},
11
- icon: { default: "i-line-md-coffee-half-empty-twotone-loop" },
12
- hint: { default: "Isso pode levar alguns segundos." }
13
- },
14
- setup(__props) {
15
- const display = ref(__props.phrases[0]);
16
- return (_ctx, _push, _parent, _attrs) => {
17
- const _component_UIcon = _sfc_main$2;
18
- _push(`<div${ssrRenderAttrs(mergeProps({ class: "flex flex-col items-center gap-6 py-10 text-center" }, _attrs))}>`);
19
- _push(ssrRenderComponent(_component_UIcon, {
20
- name: __props.icon,
21
- class: "size-20 text-highlighted/75"
22
- }, null, _parent));
23
- _push(`<p class="text-lg font-mono font-medium text-highlighted">${ssrInterpolate(unref(display))}</p><p class="text-xs text-dimmed">${ssrInterpolate(__props.hint)}</p></div>`);
24
- };
25
- }
26
- });
27
- //#endregion
28
- //#region app/components/base/loading/phrases.vue
29
- var _sfc_setup = phrases_vue_vue_type_script_setup_true_lang_default.setup;
30
- phrases_vue_vue_type_script_setup_true_lang_default.setup = (props, ctx) => {
31
- const ssrContext = useSSRContext();
32
- (ssrContext.modules || (ssrContext.modules = /* @__PURE__ */ new Set())).add("components/base/loading/phrases.vue");
33
- return _sfc_setup ? _sfc_setup(props, ctx) : void 0;
34
- };
35
- var phrases_default = Object.assign(phrases_vue_vue_type_script_setup_true_lang_default, { __name: "BaseLoadingPhrases" });
36
-
37
- export { phrases_default as p };
38
- //# sourceMappingURL=phrases-CSDEYSbZ.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"phrases-CSDEYSbZ.mjs","sources":["../../../../app/components/base/loading/phrases.vue"],"names":[],"mappings":";;;;;;;;;;;;;;AAiBA,EAAA,MAAM,OAAA,GAAU,GAAA,CAAI,OAAA,CAAA,OAAA,CAAQ,CAAA,CAAE,CAAA;;;GAiDvB,KAAA,CAAA,CAAA,IAAA,EAAA,cAAA,CAAA,UAAA,CAAA,EAAA,KAAA,EAAM,sDAAoD,EAAA,MAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;;AAE1D,IAAA,IAAA,EAAM,OAAA,CAAA,IAAA;IACP,KAAA,EAAM;;GAIH,KAAA,CAAA,CAAA,0DAAA,EAAA,cAAA,CAAA,KAAA,CAAA,OAAA,CAAO,CAAA,CAAA,mCAAA,EAIP,cAAA,CAAA,OAAA,CAAA,IAAI,CAAA,CAAA,UAAA,CAAA,CAAA;;;;;;;;;;;;;;;;"}
@@ -1,455 +0,0 @@
1
- import { e as _sfc_main$1 } from '../virtual/entry.mjs';
2
- import { m as modal_default } from './modal-DV_DQ0hO.mjs';
3
- import { _ as _sfc_main } from './Container-HW0bT_Wn.mjs';
4
- import { defineComponent, ref, mergeProps, withCtx, isRef, unref, createVNode, useSSRContext } from 'vue';
5
- import { ssrRenderComponent } from 'vue/server-renderer';
6
- import 'unhead/plugins';
7
- import 'unhead/utils';
8
- import '../routes/renderer.mjs';
9
- import '../nitro/nitro.mjs';
10
- import 'node:http';
11
- import 'node:https';
12
- import 'node:crypto';
13
- import 'stream';
14
- import 'events';
15
- import 'http';
16
- import 'crypto';
17
- import 'buffer';
18
- import 'zlib';
19
- import 'https';
20
- import 'net';
21
- import 'tls';
22
- import 'url';
23
- import 'node:events';
24
- import 'node:buffer';
25
- import 'node:fs';
26
- import 'node:path';
27
- import 'node:dns/promises';
28
- import 'node:net';
29
- import 'playwright';
30
- import 'zod';
31
- import 'node:url';
32
- import 'node:fs/promises';
33
- import 'node:async_hooks';
34
- import 'node:os';
35
- import 'typeorm';
36
- import '@langchain/langgraph';
37
- import '@anthropic-ai/claude-agent-sdk';
38
- import 'langchain';
39
- import '@iconify/utils';
40
- import 'consola';
41
- import 'unhead/server';
42
- import 'unhead/legacy';
43
- import 'nostics';
44
- import 'vue-bundle-renderer/runtime';
45
- import 'devalue';
46
- import 'fnv1a-64';
47
- import 'object-identity';
48
- import 'tailwindcss/colors';
49
- import './Badge-BgyIJKeU.mjs';
50
- import './Alert-Q5hBYuxt.mjs';
51
- import './phrases-CSDEYSbZ.mjs';
52
- import './steps-CcAjZqHX.mjs';
53
- import './run-stream-CNVDpZ_S.mjs';
54
-
55
- //#region app/pages/dev/project-run-filtered.vue?vue&type=script&setup=true&lang.ts
56
- var NO_TESTS_OUTPUT = `Error: No tests found.
57
- Make sure that arguments are regular expressions matching test files.
58
- You may need to escape symbols like "$" or "*" and quote the arguments.`;
59
- var PROJECT = "Nome bem legal do projeto";
60
- var SLUG = "nome-bem-legal-do-projeto";
61
- var project_run_filtered_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineComponent({
62
- __name: "project-run-filtered",
63
- __ssrInlineRender: true,
64
- setup(__props) {
65
- const startingOpen = ref(false);
66
- const runningOpen = ref(false);
67
- const passedOpen = ref(false);
68
- const failedOpen = ref(false);
69
- const noStepOpen = ref(false);
70
- const skippedOpen = ref(false);
71
- const manyOpen = ref(false);
72
- const noTestsOpen = ref(false);
73
- function test(id, title, status, steps = [], error = null) {
74
- return {
75
- id,
76
- title,
77
- status,
78
- error,
79
- steps
80
- };
81
- }
82
- const loginSteps = [
83
- {
84
- title: "Abrir página de login",
85
- status: "success"
86
- },
87
- {
88
- title: "Entrar com usuário/código",
89
- status: "success"
90
- },
91
- {
92
- title: "Ver o painel",
93
- status: "success"
94
- }
95
- ];
96
- const cadastroFailedSteps = [
97
- {
98
- title: "Abrir o formulário de produto",
99
- status: "success"
100
- },
101
- {
102
- title: "Preencher nome e preço",
103
- status: "success"
104
- },
105
- {
106
- title: "Clicar em Salvar",
107
- status: "failed",
108
- error: "Timed out 5000ms waiting for locator('#salvar')"
109
- },
110
- {
111
- title: "Ver o produto na listagem",
112
- status: "waiting"
113
- }
114
- ];
115
- const runningTests = [
116
- test("t1", "Login do cliente entra com credenciais válidas", "success", loginSteps),
117
- test("t2", "Cadastro de produto cria um produto", "running", [{
118
- title: "Abrir o formulário de produto",
119
- status: "success"
120
- }, {
121
- title: "Preencher nome e preço",
122
- status: "running"
123
- }]),
124
- test("t3", "Cadastro de produto remove um produto", "waiting")
125
- ];
126
- const passedTests = [
127
- test("t1", "Login do cliente entra com credenciais válidas", "success", loginSteps),
128
- test("t2", "Cadastro de produto cria um produto", "success", loginSteps),
129
- test("t3", "Cadastro de produto remove um produto", "success", loginSteps)
130
- ];
131
- const failedTests = [
132
- test("t1", "Login do cliente entra com credenciais válidas", "success", loginSteps),
133
- test("t2", "Cadastro de produto cria um produto", "failed", cadastroFailedSteps, "Timed out 5000ms waiting for locator('#salvar')"),
134
- test("t3", "Cadastro de produto remove um produto", "success", loginSteps)
135
- ];
136
- const noStepTests = [test("t1", "Login do cliente entra com credenciais válidas", "failed", [], "Error: page.goto: net::ERR_CONNECTION_REFUSED at http://localhost:8000/"), test("t2", "Cadastro de produto cria um produto", "failed", [], "Error: page.goto: net::ERR_CONNECTION_REFUSED at http://localhost:8000/")];
137
- const skippedTests = [
138
- test("t1", "Autenticação", "failed", [{
139
- title: "Autenticação",
140
- status: "failed",
141
- error: "Timed out 30000ms waiting for navigation to leave /login"
142
- }]),
143
- test("t2", "Login do cliente entra com credenciais válidas", "waiting"),
144
- test("t3", "Cadastro de produto cria um produto", "waiting")
145
- ];
146
- const manyTests = Array.from({ length: 12 }, (_, i) => test(`m${i}`, `Cadastro de produto valida o campo obrigatório número ${i + 1}`, i % 4 === 3 ? "failed" : "success", i % 4 === 3 ? cadastroFailedSteps : loginSteps, i % 4 === 3 ? "Timed out 5000ms waiting for locator('#salvar')" : null));
147
- return (_ctx, _push, _parent, _attrs) => {
148
- const _component_UContainer = _sfc_main;
149
- const _component_UButton = _sfc_main$1;
150
- const _component_ProjectRunFilteredModal = modal_default;
151
- _push(ssrRenderComponent(_component_UContainer, mergeProps({ class: "py-10" }, _attrs), {
152
- default: withCtx((_, _push, _parent, _scopeId) => {
153
- if (_push) {
154
- _push(`<h1 class="text-2xl font-bold mb-1"${_scopeId}> Preview: Rodando os cenários filtrados </h1><p class="text-sm text-muted mb-8"${_scopeId}> Mesmo componente do botão &quot;Rodar filtrados&quot; da página do projeto, com dado mocado. Um botão por estado. </p><div class="flex flex-wrap gap-3"${_scopeId}>`);
155
- _push(ssrRenderComponent(_component_UButton, {
156
- label: "Iniciando",
157
- "trailing-icon": "i-ic-round-play-arrow",
158
- color: "neutral",
159
- variant: "soft",
160
- "data-testid": "preview-filtrados-iniciando",
161
- onClick: ($event) => startingOpen.value = true
162
- }, null, _parent, _scopeId));
163
- _push(ssrRenderComponent(_component_UButton, {
164
- label: "Rodando",
165
- "trailing-icon": "i-ic-round-play-arrow",
166
- color: "neutral",
167
- variant: "soft",
168
- "data-testid": "preview-filtrados-rodando",
169
- onClick: ($event) => runningOpen.value = true
170
- }, null, _parent, _scopeId));
171
- _push(ssrRenderComponent(_component_UButton, {
172
- label: "Todos passaram",
173
- "trailing-icon": "i-ic-round-play-arrow",
174
- color: "neutral",
175
- variant: "soft",
176
- "data-testid": "preview-filtrados-passou",
177
- onClick: ($event) => passedOpen.value = true
178
- }, null, _parent, _scopeId));
179
- _push(ssrRenderComponent(_component_UButton, {
180
- label: "Um falhou",
181
- "trailing-icon": "i-ic-round-play-arrow",
182
- color: "error",
183
- variant: "soft",
184
- "data-testid": "preview-filtrados-falhou",
185
- onClick: ($event) => failedOpen.value = true
186
- }, null, _parent, _scopeId));
187
- _push(ssrRenderComponent(_component_UButton, {
188
- label: "Falhou sem passo nenhum",
189
- "trailing-icon": "i-ic-round-play-arrow",
190
- color: "error",
191
- variant: "soft",
192
- "data-testid": "preview-filtrados-sem-passo",
193
- onClick: ($event) => noStepOpen.value = true
194
- }, null, _parent, _scopeId));
195
- _push(ssrRenderComponent(_component_UButton, {
196
- label: "Autenticação quebrou, resto pulado",
197
- "trailing-icon": "i-ic-round-play-arrow",
198
- color: "error",
199
- variant: "soft",
200
- "data-testid": "preview-filtrados-pulados",
201
- onClick: ($event) => skippedOpen.value = true
202
- }, null, _parent, _scopeId));
203
- _push(ssrRenderComponent(_component_UButton, {
204
- label: "Lista longa (12 cenários)",
205
- "trailing-icon": "i-ic-round-play-arrow",
206
- color: "neutral",
207
- variant: "soft",
208
- "data-testid": "preview-filtrados-muitos",
209
- onClick: ($event) => manyOpen.value = true
210
- }, null, _parent, _scopeId));
211
- _push(ssrRenderComponent(_component_UButton, {
212
- label: "Morreu antes de começar",
213
- "trailing-icon": "i-ic-round-play-arrow",
214
- color: "error",
215
- variant: "soft",
216
- "data-testid": "preview-filtrados-sem-teste",
217
- onClick: ($event) => noTestsOpen.value = true
218
- }, null, _parent, _scopeId));
219
- _push(`</div>`);
220
- _push(ssrRenderComponent(_component_ProjectRunFilteredModal, {
221
- open: unref(startingOpen),
222
- "onUpdate:open": ($event) => isRef(startingOpen) ? startingOpen.value = $event : null,
223
- running: "",
224
- "project-name": PROJECT,
225
- slug: SLUG,
226
- filter: "@write"
227
- }, null, _parent, _scopeId));
228
- _push(ssrRenderComponent(_component_ProjectRunFilteredModal, {
229
- open: unref(runningOpen),
230
- "onUpdate:open": ($event) => isRef(runningOpen) ? runningOpen.value = $event : null,
231
- running: "",
232
- tests: runningTests,
233
- "project-name": PROJECT,
234
- slug: SLUG,
235
- filter: "@write"
236
- }, null, _parent, _scopeId));
237
- _push(ssrRenderComponent(_component_ProjectRunFilteredModal, {
238
- open: unref(passedOpen),
239
- "onUpdate:open": ($event) => isRef(passedOpen) ? passedOpen.value = $event : null,
240
- passed: "",
241
- tests: passedTests,
242
- "project-name": PROJECT,
243
- slug: SLUG,
244
- filter: "@write",
245
- "tested-at": "16/04/2026 14:32"
246
- }, null, _parent, _scopeId));
247
- _push(ssrRenderComponent(_component_ProjectRunFilteredModal, {
248
- open: unref(failedOpen),
249
- "onUpdate:open": ($event) => isRef(failedOpen) ? failedOpen.value = $event : null,
250
- tests: failedTests,
251
- "project-name": PROJECT,
252
- slug: SLUG,
253
- filter: "@write",
254
- "tested-at": "16/04/2026 14:32"
255
- }, null, _parent, _scopeId));
256
- _push(ssrRenderComponent(_component_ProjectRunFilteredModal, {
257
- open: unref(noStepOpen),
258
- "onUpdate:open": ($event) => isRef(noStepOpen) ? noStepOpen.value = $event : null,
259
- tests: noStepTests,
260
- "project-name": PROJECT,
261
- slug: SLUG,
262
- filter: "produto",
263
- "tested-at": "16/04/2026 14:32"
264
- }, null, _parent, _scopeId));
265
- _push(ssrRenderComponent(_component_ProjectRunFilteredModal, {
266
- open: unref(skippedOpen),
267
- "onUpdate:open": ($event) => isRef(skippedOpen) ? skippedOpen.value = $event : null,
268
- tests: skippedTests,
269
- "project-name": PROJECT,
270
- slug: SLUG,
271
- filter: "@read",
272
- "tested-at": "16/04/2026 14:32"
273
- }, null, _parent, _scopeId));
274
- _push(ssrRenderComponent(_component_ProjectRunFilteredModal, {
275
- open: unref(manyOpen),
276
- "onUpdate:open": ($event) => isRef(manyOpen) ? manyOpen.value = $event : null,
277
- tests: unref(manyTests),
278
- "project-name": PROJECT,
279
- slug: SLUG,
280
- filter: "produto",
281
- "tested-at": "16/04/2026 14:32"
282
- }, null, _parent, _scopeId));
283
- _push(ssrRenderComponent(_component_ProjectRunFilteredModal, {
284
- open: unref(noTestsOpen),
285
- "onUpdate:open": ($event) => isRef(noTestsOpen) ? noTestsOpen.value = $event : null,
286
- "project-name": PROJECT,
287
- slug: SLUG,
288
- filter: "@nao-existe",
289
- output: NO_TESTS_OUTPUT,
290
- "tested-at": "16/04/2026 14:32"
291
- }, null, _parent, _scopeId));
292
- } else return [
293
- createVNode("h1", { class: "text-2xl font-bold mb-1" }, " Preview: Rodando os cenários filtrados "),
294
- createVNode("p", { class: "text-sm text-muted mb-8" }, " Mesmo componente do botão \"Rodar filtrados\" da página do projeto, com dado mocado. Um botão por estado. "),
295
- createVNode("div", { class: "flex flex-wrap gap-3" }, [
296
- createVNode(_component_UButton, {
297
- label: "Iniciando",
298
- "trailing-icon": "i-ic-round-play-arrow",
299
- color: "neutral",
300
- variant: "soft",
301
- "data-testid": "preview-filtrados-iniciando",
302
- onClick: ($event) => startingOpen.value = true
303
- }, null, 8, ["onClick"]),
304
- createVNode(_component_UButton, {
305
- label: "Rodando",
306
- "trailing-icon": "i-ic-round-play-arrow",
307
- color: "neutral",
308
- variant: "soft",
309
- "data-testid": "preview-filtrados-rodando",
310
- onClick: ($event) => runningOpen.value = true
311
- }, null, 8, ["onClick"]),
312
- createVNode(_component_UButton, {
313
- label: "Todos passaram",
314
- "trailing-icon": "i-ic-round-play-arrow",
315
- color: "neutral",
316
- variant: "soft",
317
- "data-testid": "preview-filtrados-passou",
318
- onClick: ($event) => passedOpen.value = true
319
- }, null, 8, ["onClick"]),
320
- createVNode(_component_UButton, {
321
- label: "Um falhou",
322
- "trailing-icon": "i-ic-round-play-arrow",
323
- color: "error",
324
- variant: "soft",
325
- "data-testid": "preview-filtrados-falhou",
326
- onClick: ($event) => failedOpen.value = true
327
- }, null, 8, ["onClick"]),
328
- createVNode(_component_UButton, {
329
- label: "Falhou sem passo nenhum",
330
- "trailing-icon": "i-ic-round-play-arrow",
331
- color: "error",
332
- variant: "soft",
333
- "data-testid": "preview-filtrados-sem-passo",
334
- onClick: ($event) => noStepOpen.value = true
335
- }, null, 8, ["onClick"]),
336
- createVNode(_component_UButton, {
337
- label: "Autenticação quebrou, resto pulado",
338
- "trailing-icon": "i-ic-round-play-arrow",
339
- color: "error",
340
- variant: "soft",
341
- "data-testid": "preview-filtrados-pulados",
342
- onClick: ($event) => skippedOpen.value = true
343
- }, null, 8, ["onClick"]),
344
- createVNode(_component_UButton, {
345
- label: "Lista longa (12 cenários)",
346
- "trailing-icon": "i-ic-round-play-arrow",
347
- color: "neutral",
348
- variant: "soft",
349
- "data-testid": "preview-filtrados-muitos",
350
- onClick: ($event) => manyOpen.value = true
351
- }, null, 8, ["onClick"]),
352
- createVNode(_component_UButton, {
353
- label: "Morreu antes de começar",
354
- "trailing-icon": "i-ic-round-play-arrow",
355
- color: "error",
356
- variant: "soft",
357
- "data-testid": "preview-filtrados-sem-teste",
358
- onClick: ($event) => noTestsOpen.value = true
359
- }, null, 8, ["onClick"])
360
- ]),
361
- createVNode(_component_ProjectRunFilteredModal, {
362
- open: unref(startingOpen),
363
- "onUpdate:open": ($event) => isRef(startingOpen) ? startingOpen.value = $event : null,
364
- running: "",
365
- "project-name": PROJECT,
366
- slug: SLUG,
367
- filter: "@write"
368
- }, null, 8, ["open", "onUpdate:open"]),
369
- createVNode(_component_ProjectRunFilteredModal, {
370
- open: unref(runningOpen),
371
- "onUpdate:open": ($event) => isRef(runningOpen) ? runningOpen.value = $event : null,
372
- running: "",
373
- tests: runningTests,
374
- "project-name": PROJECT,
375
- slug: SLUG,
376
- filter: "@write"
377
- }, null, 8, ["open", "onUpdate:open"]),
378
- createVNode(_component_ProjectRunFilteredModal, {
379
- open: unref(passedOpen),
380
- "onUpdate:open": ($event) => isRef(passedOpen) ? passedOpen.value = $event : null,
381
- passed: "",
382
- tests: passedTests,
383
- "project-name": PROJECT,
384
- slug: SLUG,
385
- filter: "@write",
386
- "tested-at": "16/04/2026 14:32"
387
- }, null, 8, ["open", "onUpdate:open"]),
388
- createVNode(_component_ProjectRunFilteredModal, {
389
- open: unref(failedOpen),
390
- "onUpdate:open": ($event) => isRef(failedOpen) ? failedOpen.value = $event : null,
391
- tests: failedTests,
392
- "project-name": PROJECT,
393
- slug: SLUG,
394
- filter: "@write",
395
- "tested-at": "16/04/2026 14:32"
396
- }, null, 8, ["open", "onUpdate:open"]),
397
- createVNode(_component_ProjectRunFilteredModal, {
398
- open: unref(noStepOpen),
399
- "onUpdate:open": ($event) => isRef(noStepOpen) ? noStepOpen.value = $event : null,
400
- tests: noStepTests,
401
- "project-name": PROJECT,
402
- slug: SLUG,
403
- filter: "produto",
404
- "tested-at": "16/04/2026 14:32"
405
- }, null, 8, ["open", "onUpdate:open"]),
406
- createVNode(_component_ProjectRunFilteredModal, {
407
- open: unref(skippedOpen),
408
- "onUpdate:open": ($event) => isRef(skippedOpen) ? skippedOpen.value = $event : null,
409
- tests: skippedTests,
410
- "project-name": PROJECT,
411
- slug: SLUG,
412
- filter: "@read",
413
- "tested-at": "16/04/2026 14:32"
414
- }, null, 8, ["open", "onUpdate:open"]),
415
- createVNode(_component_ProjectRunFilteredModal, {
416
- open: unref(manyOpen),
417
- "onUpdate:open": ($event) => isRef(manyOpen) ? manyOpen.value = $event : null,
418
- tests: unref(manyTests),
419
- "project-name": PROJECT,
420
- slug: SLUG,
421
- filter: "produto",
422
- "tested-at": "16/04/2026 14:32"
423
- }, null, 8, [
424
- "open",
425
- "onUpdate:open",
426
- "tests"
427
- ]),
428
- createVNode(_component_ProjectRunFilteredModal, {
429
- open: unref(noTestsOpen),
430
- "onUpdate:open": ($event) => isRef(noTestsOpen) ? noTestsOpen.value = $event : null,
431
- "project-name": PROJECT,
432
- slug: SLUG,
433
- filter: "@nao-existe",
434
- output: NO_TESTS_OUTPUT,
435
- "tested-at": "16/04/2026 14:32"
436
- }, null, 8, ["open", "onUpdate:open"])
437
- ];
438
- }),
439
- _: 1
440
- }, _parent));
441
- };
442
- }
443
- });
444
- //#endregion
445
- //#region app/pages/dev/project-run-filtered.vue
446
- var _sfc_setup = project_run_filtered_vue_vue_type_script_setup_true_lang_default.setup;
447
- project_run_filtered_vue_vue_type_script_setup_true_lang_default.setup = (props, ctx) => {
448
- const ssrContext = useSSRContext();
449
- (ssrContext.modules || (ssrContext.modules = /* @__PURE__ */ new Set())).add("pages/dev/project-run-filtered.vue");
450
- return _sfc_setup ? _sfc_setup(props, ctx) : void 0;
451
- };
452
- var project_run_filtered_default = project_run_filtered_vue_vue_type_script_setup_true_lang_default;
453
-
454
- export { project_run_filtered_default as default };
455
- //# sourceMappingURL=project-run-filtered-CplHFc5x.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"project-run-filtered-CplHFc5x.mjs","sources":["../../../../app/pages/dev/project-run-filtered.vue"],"names":[],"mappings":"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"}
@@ -1,157 +0,0 @@
1
- import { ref, computed } from 'vue';
2
-
3
- //#region app/composables/run-stream.ts
4
- /** O que o Playwright reporta por passo/teste, no vocabulário da timeline. */
5
- var STATUS = {
6
- pending: "running",
7
- success: "success",
8
- failed: "failed",
9
- skipped: "waiting"
10
- };
11
- function videoUrlFor(path) {
12
- return `/runner/video?${new URLSearchParams({ path })}`;
13
- }
14
- /** O relatório HTML da última execução do projeto, servido pelo backend com vídeo e trace dentro. */
15
- function reportUrlFor(slug) {
16
- return `/api/projects/${slug}/report/`;
17
- }
18
- function formatTestedAt(date) {
19
- return date.toLocaleString("pt-BR", {
20
- dateStyle: "short",
21
- timeStyle: "short"
22
- });
23
- }
24
- /** Execução de um spec pelo backend, com a timeline chegando passo a passo por SSE. */
25
- function useRunStream(slug) {
26
- const steps = ref([]);
27
- const ran = ref([]);
28
- const running = ref(false);
29
- const passed = ref(false);
30
- const videoUrl = ref(null);
31
- const testedAt = ref(null);
32
- const output = ref(null);
33
- /** A ordem é a que o teste declarou; o passo que ele nunca anunciou entra no fim, na chegada. */
34
- const tests = computed(() => ran.value.map((test) => ({
35
- ...test,
36
- steps: steps.value.map((step, arrival) => ({
37
- step,
38
- arrival
39
- })).filter(({ step }) => step.testId === test.id).sort((a, b) => (a.step.order ?? Infinity) - (b.step.order ?? Infinity) || a.arrival - b.arrival).map(({ step }) => step)
40
- })));
41
- function reset() {
42
- steps.value = [];
43
- ran.value = [];
44
- videoUrl.value = null;
45
- testedAt.value = null;
46
- output.value = null;
47
- passed.value = false;
48
- }
49
- /** O passo pertence ao teste do evento; a semente da timeline ainda não tem dono e serve a qualquer um. */
50
- function sameTest(step, event) {
51
- return !event.testId || !step.testId || step.testId === event.testId;
52
- }
53
- /** A timeline semeada pelo run inteiro não tem dono: o teste adota a que é dele antes de criar a sua. */
54
- function seed(testId, titles) {
55
- const seeded = [...steps.value];
56
- titles.forEach((title, order) => {
57
- const orphan = seeded.findIndex((step) => step.title === title && step.status === "waiting" && !step.testId);
58
- const step = {
59
- testId,
60
- order,
61
- title,
62
- status: "waiting"
63
- };
64
- if (orphan === -1) seeded.push(step);
65
- else seeded[orphan] = step;
66
- });
67
- steps.value = seeded;
68
- }
69
- function start({ spec, grep }, onFinish) {
70
- reset();
71
- running.value = true;
72
- const query = new URLSearchParams({
73
- ...spec ? { spec } : {},
74
- ...grep ? { grep } : {}
75
- });
76
- const source = new EventSource(`/api/projects/${slug()}/run-stream?${query}`);
77
- source.onmessage = (message) => {
78
- const data = JSON.parse(message.data);
79
- if (data.event === "run:started") steps.value = (data.steps ?? []).map((title) => ({
80
- title,
81
- status: "waiting"
82
- }));
83
- if (data.event === "step") {
84
- if (data.status === "pending") {
85
- const own = steps.value.findIndex((step) => step.title === data.title && step.status === "waiting" && step.testId === data.testId);
86
- const waiting = own !== -1 ? own : steps.value.findIndex((step) => step.title === data.title && step.status === "waiting" && sameTest(step, data));
87
- const seeded = waiting === -1 ? void 0 : steps.value[waiting];
88
- const step = {
89
- testId: data.testId,
90
- order: seeded?.order,
91
- title: data.title,
92
- status: "running"
93
- };
94
- if (waiting === -1) steps.value = [...steps.value, step];
95
- else steps.value[waiting] = step;
96
- return;
97
- }
98
- const running = steps.value.findLastIndex((step) => step.title === data.title && step.status === "running" && sameTest(step, data));
99
- const index = running !== -1 || data.status !== "failed" ? running : steps.value.findLastIndex((step) => step.title === data.title && step.status === "success" && sameTest(step, data));
100
- if (index !== -1) steps.value[index] = {
101
- testId: steps.value[index].testId ?? data.testId,
102
- order: steps.value[index].order,
103
- title: data.title,
104
- status: STATUS[data.status],
105
- error: data.error ?? null
106
- };
107
- }
108
- if (data.event === "test") {
109
- if (data.id) {
110
- if (!ran.value.some((previous) => previous.id === data.id) && data.steps?.length) seed(data.id, data.steps);
111
- const test = {
112
- id: data.id,
113
- title: data.title,
114
- status: STATUS[data.status],
115
- error: data.error ?? null
116
- };
117
- const known = ran.value.findIndex((previous) => previous.id === data.id);
118
- if (known === -1) ran.value = [...ran.value, test];
119
- else ran.value[known] = test;
120
- }
121
- if (data.status !== "pending" && data.videoPath) videoUrl.value = videoUrlFor(data.videoPath);
122
- }
123
- if (data.event === "run:finished") {
124
- source.close();
125
- running.value = false;
126
- passed.value = data.passed;
127
- output.value = data.output ?? null;
128
- testedAt.value = formatTestedAt(/* @__PURE__ */ new Date());
129
- onFinish?.();
130
- }
131
- };
132
- source.onerror = () => {
133
- source.close();
134
- running.value = false;
135
- testedAt.value = formatTestedAt(/* @__PURE__ */ new Date());
136
- if (steps.value.length === 0) steps.value = [{
137
- title: "Não foi possível executar o teste.",
138
- status: "failed"
139
- }];
140
- };
141
- }
142
- return {
143
- steps,
144
- tests,
145
- running,
146
- passed,
147
- videoUrl,
148
- testedAt,
149
- output,
150
- failedStep: computed(() => steps.value.find((step) => step.status === "failed")),
151
- start,
152
- reset
153
- };
154
- }
155
-
156
- export { formatTestedAt as f, reportUrlFor as r, useRunStream as u, videoUrlFor as v };
157
- //# sourceMappingURL=run-stream-CNVDpZ_S.mjs.map