@acutis/cli 0.1.2-dev.20 → 0.1.2-dev.22
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.
- package/.output/nitro.json +1 -1
- package/.output/public/_nuxt/1DjC7bBa.js +64 -0
- package/.output/public/_nuxt/BNJ2GN0A.js +1 -0
- package/.output/public/_nuxt/{b5tj-z25.js → BgV7uYhh.js} +1 -1
- package/.output/public/_nuxt/C0IyPp1C.js +28 -0
- package/.output/public/_nuxt/C5NzO9dO.js +1 -0
- package/.output/public/_nuxt/CUTaKHid.js +1 -0
- package/.output/public/_nuxt/DHNHaKIX.js +1 -0
- package/.output/public/_nuxt/DKFReY2j.js +1 -0
- package/.output/public/_nuxt/DXk74b-E.js +1 -0
- package/.output/public/_nuxt/Dc6npEU3.js +1 -0
- package/.output/public/_nuxt/DyrXGv84.js +1 -0
- package/.output/public/_nuxt/WurCawTj.js +3 -0
- package/.output/public/_nuxt/builds/latest.json +1 -1
- package/.output/public/_nuxt/builds/meta/f4520b8a-9c39-4e41-af7a-b806928ef3ac.json +1 -0
- package/.output/public/_nuxt/lH5PYs8w.js +1 -0
- package/.output/public/_nuxt/tags.C6gBUbEB.css +1 -0
- package/.output/public/_nuxt/zH54s-gB.js +6 -0
- package/.output/server/chunks/_/project.service.mjs +1 -1
- package/.output/server/chunks/build/{Pagination-D2AcUggP.mjs → Pagination-BuiQpYWD.mjs} +26 -26
- package/.output/server/chunks/build/{Pagination-D2AcUggP.mjs.map → Pagination-BuiQpYWD.mjs.map} +1 -1
- package/.output/server/chunks/build/{_...scenario_-D8fF8UCa.mjs → _...scenario_-PVjOOR8j.mjs} +606 -211
- package/.output/server/chunks/build/_...scenario_-PVjOOR8j.mjs.map +1 -0
- package/.output/server/chunks/build/{_slug_-0Xu9aQ3b.mjs → _slug_-COpWNGAB.mjs} +745 -416
- package/.output/server/chunks/build/_slug_-COpWNGAB.mjs.map +1 -0
- package/.output/server/chunks/build/{origin-_7Gia2Vr.mjs → origin-NWHPNXep.mjs} +594 -20
- package/.output/server/chunks/build/origin-NWHPNXep.mjs.map +1 -0
- package/.output/server/chunks/build/{pages-C0ubizZ3.mjs → pages-C7-vXRcH.mjs} +22 -25
- package/.output/server/chunks/build/{pages-C0ubizZ3.mjs.map → pages-C7-vXRcH.mjs.map} +1 -1
- package/.output/server/chunks/build/tags-X7K7nkM2.mjs +2079 -0
- package/.output/server/chunks/build/tags-X7K7nkM2.mjs.map +1 -0
- package/.output/server/chunks/nitro/nitro.mjs +151 -372
- package/.output/server/chunks/routes/renderer.mjs +2 -2
- package/.output/server/chunks/virtual/entry.mjs +29335 -29368
- package/.output/server/chunks/virtual/entry.mjs.map +1 -1
- package/.output/server/chunks/virtual/precomputed.mjs +1 -1
- package/.output/server/package.json +1 -1
- package/package.json +1 -1
- package/.output/public/_nuxt/9eLkUDDj.js +0 -1
- package/.output/public/_nuxt/ANcp5QFz.js +0 -1
- package/.output/public/_nuxt/BEQgcp5R.js +0 -1
- package/.output/public/_nuxt/BEk00u4_.js +0 -1
- package/.output/public/_nuxt/BGdmRvCK2.js +0 -8
- package/.output/public/_nuxt/BGkBW2ni2.js +0 -1
- package/.output/public/_nuxt/BKydt2Wp2.js +0 -4
- package/.output/public/_nuxt/BMLYuU_e.js +0 -1
- package/.output/public/_nuxt/BWJpSLJL.js +0 -1
- package/.output/public/_nuxt/BXpPYfMx.js +0 -1
- package/.output/public/_nuxt/BbjTtCyI.js +0 -3
- package/.output/public/_nuxt/Bd538XcA2.js +0 -1
- package/.output/public/_nuxt/Bp3A7I5W2.js +0 -1
- package/.output/public/_nuxt/BuOb9NX0.js +0 -1
- package/.output/public/_nuxt/C1tNhfTr.js +0 -1
- package/.output/public/_nuxt/C2KIeuhG.js +0 -1
- package/.output/public/_nuxt/C5uJN_MU.js +0 -1
- package/.output/public/_nuxt/CBVnImq2.js +0 -1
- package/.output/public/_nuxt/CDI0GNVb2.js +0 -1
- package/.output/public/_nuxt/CIFC2HNk.js +0 -1
- package/.output/public/_nuxt/CKps1Vc12.js +0 -3
- package/.output/public/_nuxt/CRH0iqnQ.js +0 -1
- package/.output/public/_nuxt/CTqLwyQP.js +0 -1
- package/.output/public/_nuxt/CU7sPrmY.js +0 -3
- package/.output/public/_nuxt/CfOqJVtU.js +0 -1
- package/.output/public/_nuxt/Ch1EeKHP.js +0 -1
- package/.output/public/_nuxt/Clv7nJ_T2.js +0 -1
- package/.output/public/_nuxt/CqZ7dV6a2.js +0 -64
- package/.output/public/_nuxt/D-7v7DZs.js +0 -1
- package/.output/public/_nuxt/DEJ3sRrh2.js +0 -1
- package/.output/public/_nuxt/DPM_BYFz2.js +0 -1
- package/.output/public/_nuxt/DQk6DVe-.js +0 -28
- package/.output/public/_nuxt/DXLPf3t6.js +0 -1
- package/.output/public/_nuxt/DtuQPKVG.js +0 -1
- package/.output/public/_nuxt/FvWrDx_z.js +0 -1
- package/.output/public/_nuxt/Gcazu-lR.js +0 -1
- package/.output/public/_nuxt/QcKfgokC.js +0 -1
- package/.output/public/_nuxt/XDsaI4JL.js +0 -1
- package/.output/public/_nuxt/builds/meta/efaaa78a-5dcb-48ec-a876-1eaf98ae6c55.json +0 -1
- package/.output/public/_nuxt/dCqlxK8U2.js +0 -1
- package/.output/public/_nuxt/f0o80Gcm.js +0 -1
- package/.output/public/_nuxt/k5q7GKnv.js +0 -1
- package/.output/public/_nuxt/modal.3A_G7d4A.css +0 -1
- package/.output/public/_nuxt/tLr-SJaf.js +0 -1
- package/.output/public/_nuxt/tags.B5A43CvD.css +0 -1
- package/.output/public/dev/sample-run.webm +0 -0
- package/.output/server/chunks/build/Alert-DX-UEOEY.mjs +0 -433
- package/.output/server/chunks/build/Alert-DX-UEOEY.mjs.map +0 -1
- package/.output/server/chunks/build/Badge-DCotJtd8.mjs +0 -394
- package/.output/server/chunks/build/Badge-DCotJtd8.mjs.map +0 -1
- package/.output/server/chunks/build/Card-D7QwltkF.mjs +0 -144
- package/.output/server/chunks/build/Card-D7QwltkF.mjs.map +0 -1
- package/.output/server/chunks/build/Container-Biz72Lxy.mjs +0 -55
- package/.output/server/chunks/build/Container-Biz72Lxy.mjs.map +0 -1
- package/.output/server/chunks/build/_...scenario_-D8fF8UCa.mjs.map +0 -1
- package/.output/server/chunks/build/_slug_-0Xu9aQ3b.mjs.map +0 -1
- package/.output/server/chunks/build/auth-status-kUEDoxDI.mjs +0 -53
- package/.output/server/chunks/build/auth-status-kUEDoxDI.mjs.map +0 -1
- package/.output/server/chunks/build/auth-status-kswM9iTW.mjs +0 -128
- package/.output/server/chunks/build/auth-status-kswM9iTW.mjs.map +0 -1
- package/.output/server/chunks/build/empty-D8gbt7LG.mjs +0 -44
- package/.output/server/chunks/build/empty-D8gbt7LG.mjs.map +0 -1
- package/.output/server/chunks/build/generation-warnings-D4Br9kVN.mjs +0 -123
- package/.output/server/chunks/build/generation-warnings-D4Br9kVN.mjs.map +0 -1
- package/.output/server/chunks/build/history-eVF-ijkS.mjs +0 -163
- package/.output/server/chunks/build/history-eVF-ijkS.mjs.map +0 -1
- package/.output/server/chunks/build/modal-CELo8GdZ.mjs +0 -342
- package/.output/server/chunks/build/modal-CELo8GdZ.mjs.map +0 -1
- package/.output/server/chunks/build/modal-CUNv4bFw.mjs +0 -659
- package/.output/server/chunks/build/modal-CUNv4bFw.mjs.map +0 -1
- package/.output/server/chunks/build/modal-Cl4zRASg.mjs +0 -321
- package/.output/server/chunks/build/modal-Cl4zRASg.mjs.map +0 -1
- package/.output/server/chunks/build/origin-_7Gia2Vr.mjs.map +0 -1
- package/.output/server/chunks/build/phrases-rvaRKDG_.mjs +0 -38
- package/.output/server/chunks/build/phrases-rvaRKDG_.mjs.map +0 -1
- package/.output/server/chunks/build/project-run-filtered-DFIlti8u.mjs +0 -455
- package/.output/server/chunks/build/project-run-filtered-DFIlti8u.mjs.map +0 -1
- package/.output/server/chunks/build/run-stream-CNVDpZ_S.mjs +0 -157
- package/.output/server/chunks/build/run-stream-CNVDpZ_S.mjs.map +0 -1
- package/.output/server/chunks/build/scenario-runs-bilf1StX.mjs +0 -135
- package/.output/server/chunks/build/scenario-runs-bilf1StX.mjs.map +0 -1
- package/.output/server/chunks/build/scenario-suggestions-CMPsmNXz.mjs +0 -210
- package/.output/server/chunks/build/scenario-suggestions-CMPsmNXz.mjs.map +0 -1
- package/.output/server/chunks/build/scenario-test-run-DIjyHDe-.mjs +0 -505
- package/.output/server/chunks/build/scenario-test-run-DIjyHDe-.mjs.map +0 -1
- package/.output/server/chunks/build/steps-DBViokqd.mjs +0 -54
- package/.output/server/chunks/build/steps-DBViokqd.mjs.map +0 -1
- package/.output/server/chunks/build/tags-BiGRnEfK.mjs +0 -639
- package/.output/server/chunks/build/tags-BiGRnEfK.mjs.map +0 -1
- package/.output/server/chunks/build/warnings-BjFCNgyv.mjs +0 -76
- package/.output/server/chunks/build/warnings-BjFCNgyv.mjs.map +0 -1
- package/.output/server/chunks/raw/sample-run.mjs +0 -7
- package/.output/server/chunks/raw/sample-run.mjs.map +0 -1
- package/dist-ui/dev/sample-run.webm +0 -0
- /package/.output/public/_nuxt/{BDNMzG2s2.js → BDNMzG2s.js} +0 -0
package/.output/server/chunks/build/{_...scenario_-D8fF8UCa.mjs → _...scenario_-PVjOOR8j.mjs}
RENAMED
|
@@ -1,19 +1,9 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { p as projectOrigin, _ as _sfc_main$5 } from './origin-
|
|
3
|
-
import { _ as _sfc_main } from './
|
|
4
|
-
import { _ as _sfc_main$1 } from './
|
|
5
|
-
import { a as auth_status_default } from './auth-status-kUEDoxDI.mjs';
|
|
6
|
-
import { _ as _sfc_main$4 } from './Alert-DX-UEOEY.mjs';
|
|
7
|
-
import { w as warnings_default } from './warnings-BjFCNgyv.mjs';
|
|
8
|
-
import { p as phrases_default } from './phrases-rvaRKDG_.mjs';
|
|
9
|
-
import { u as useRunStream, v as videoUrlFor, f as formatTestedAt } from './run-stream-CNVDpZ_S.mjs';
|
|
10
|
-
import { e as empty_default } from './empty-D8gbt7LG.mjs';
|
|
11
|
-
import { h as history_default } from './history-eVF-ijkS.mjs';
|
|
12
|
-
import { m as modal_default$2 } from './modal-Cl4zRASg.mjs';
|
|
13
|
-
import { c as codefield_default, m as modal_default$3 } from './modal-CELo8GdZ.mjs';
|
|
14
|
-
import { u as useWebdriver, e as eventsBaseUrl, t as tagColor, s as setup_default, a as timeline_default, c as confirm_default, d as draftFromScenario, b as toRecordedEvents, f as contexts_default } from './tags-BiGRnEfK.mjs';
|
|
1
|
+
import { u as useRoute, a as useFetch, c as createError$1, b as useAi, $ as $fetch$2, e as extractServerError, i as icon_default, _ as _sfc_main$7, A as AI_OFF_HINT, d as _sfc_main$3$1, f as _sfc_main$8, n as navigateTo, g as _sfc_main$4, h as _sfc_main$6, m as modal_default$4, j as _sfc_main$1$1 } from '../virtual/entry.mjs';
|
|
2
|
+
import { p as projectOrigin, _ as _sfc_main$3, a as _sfc_main$2, b as _sfc_main$1, c as _sfc_main$5 } from './origin-NWHPNXep.mjs';
|
|
3
|
+
import { _ as _sfc_main$9 } from './Pagination-BuiQpYWD.mjs';
|
|
4
|
+
import { u as useRunStream, a as useWebdriver, t as tagColor, w as warnings_default, _ as _sfc_main, s as setup_default, e as empty_default, b as timeline_default, c as codefield_default, d as confirm_default, m as modal_default$1$1, f as modal_default$3, v as videoUrlFor, g as formatTestedAt, h as draftFromScenario, i as contexts_default, p as phrases_default } from './tags-X7K7nkM2.mjs';
|
|
15
5
|
import { defineComponent, computed, ref, withAsyncContext, watch, mergeProps, unref, withCtx, createVNode, isRef, toDisplayString, createTextVNode, openBlock, createBlock, createCommentVNode, Fragment, renderList, useModel, mergeModels, useSSRContext } from 'vue';
|
|
16
|
-
import { ssrRenderComponent, ssrInterpolate, ssrRenderList, ssrRenderAttr } from 'vue/server-renderer';
|
|
6
|
+
import { ssrRenderComponent, ssrInterpolate, ssrRenderList, ssrRenderAttr, ssrRenderAttrs } from 'vue/server-renderer';
|
|
17
7
|
import 'unhead/plugins';
|
|
18
8
|
import 'unhead/utils';
|
|
19
9
|
import '../routes/renderer.mjs';
|
|
@@ -57,14 +47,211 @@ import 'devalue';
|
|
|
57
47
|
import 'fnv1a-64';
|
|
58
48
|
import 'object-identity';
|
|
59
49
|
import 'tailwindcss/colors';
|
|
60
|
-
import './Pagination-D2AcUggP.mjs';
|
|
61
|
-
import './Card-D7QwltkF.mjs';
|
|
62
|
-
import './steps-DBViokqd.mjs';
|
|
63
50
|
import './_plugin-vue_export-helper-BOaGB7Aw.mjs';
|
|
64
51
|
import 'prismjs';
|
|
65
52
|
|
|
53
|
+
//#region app/components/scenario/auth-status.vue?vue&type=script&setup=true&lang.ts
|
|
54
|
+
var auth_status_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineComponent({
|
|
55
|
+
__name: "auth-status",
|
|
56
|
+
__ssrInlineRender: true,
|
|
57
|
+
props: { status: {} },
|
|
58
|
+
setup(__props) {
|
|
59
|
+
/** Null em `unset`: aí quem conta o estado é o convite a gravar, e o badge só repetiria. */
|
|
60
|
+
const badge = computed(() => ({
|
|
61
|
+
configured: {
|
|
62
|
+
label: "Configurada",
|
|
63
|
+
icon: "i-ic-round-lock",
|
|
64
|
+
color: "success"
|
|
65
|
+
},
|
|
66
|
+
failing: {
|
|
67
|
+
label: "Falhando",
|
|
68
|
+
icon: "i-ic-round-error",
|
|
69
|
+
color: "error"
|
|
70
|
+
},
|
|
71
|
+
skipped: {
|
|
72
|
+
label: "Dispensada",
|
|
73
|
+
icon: "i-ic-round-lock-open",
|
|
74
|
+
color: "neutral"
|
|
75
|
+
}
|
|
76
|
+
})[__props.status] ?? null);
|
|
77
|
+
return (_ctx, _push, _parent, _attrs) => {
|
|
78
|
+
const _component_UBadge = _sfc_main$2;
|
|
79
|
+
if (unref(badge)) _push(ssrRenderComponent(_component_UBadge, mergeProps({
|
|
80
|
+
variant: "soft",
|
|
81
|
+
icon: unref(badge).icon,
|
|
82
|
+
color: unref(badge).color,
|
|
83
|
+
label: unref(badge).label,
|
|
84
|
+
"data-testid": "cenario-auth-status"
|
|
85
|
+
}, _attrs), null, _parent));
|
|
86
|
+
else _push(`<!---->`);
|
|
87
|
+
};
|
|
88
|
+
}
|
|
89
|
+
});
|
|
90
|
+
//#endregion
|
|
91
|
+
//#region app/components/scenario/auth-status.vue
|
|
92
|
+
var _sfc_setup$7 = auth_status_vue_vue_type_script_setup_true_lang_default.setup;
|
|
93
|
+
auth_status_vue_vue_type_script_setup_true_lang_default.setup = (props, ctx) => {
|
|
94
|
+
const ssrContext = useSSRContext();
|
|
95
|
+
(ssrContext.modules || (ssrContext.modules = /* @__PURE__ */ new Set())).add("components/scenario/auth-status.vue");
|
|
96
|
+
return _sfc_setup$7 ? _sfc_setup$7(props, ctx) : void 0;
|
|
97
|
+
};
|
|
98
|
+
var auth_status_default = Object.assign(auth_status_vue_vue_type_script_setup_true_lang_default, { __name: "ScenarioAuthStatus" });
|
|
99
|
+
//#endregion
|
|
100
|
+
//#region app/components/scenario/test-run/history.vue?vue&type=script&setup=true&lang.ts
|
|
101
|
+
var PAGE_SIZE = 6;
|
|
102
|
+
var history_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineComponent({
|
|
103
|
+
__name: "history",
|
|
104
|
+
__ssrInlineRender: true,
|
|
105
|
+
props: { runs: { default: () => [] } },
|
|
106
|
+
emits: ["open"],
|
|
107
|
+
setup(__props, { emit: __emit }) {
|
|
108
|
+
const emit = __emit;
|
|
109
|
+
const statusItems = [
|
|
110
|
+
{
|
|
111
|
+
label: "Todos",
|
|
112
|
+
value: "todos"
|
|
113
|
+
},
|
|
114
|
+
{
|
|
115
|
+
label: "Sucesso",
|
|
116
|
+
value: "sucesso"
|
|
117
|
+
},
|
|
118
|
+
{
|
|
119
|
+
label: "Falha",
|
|
120
|
+
value: "falha"
|
|
121
|
+
}
|
|
122
|
+
];
|
|
123
|
+
const search = ref("");
|
|
124
|
+
const status = ref("todos");
|
|
125
|
+
const page = ref(1);
|
|
126
|
+
function testedAt(run) {
|
|
127
|
+
return new Date(run.started_at).toLocaleString("pt-BR", {
|
|
128
|
+
dateStyle: "short",
|
|
129
|
+
timeStyle: "short"
|
|
130
|
+
});
|
|
131
|
+
}
|
|
132
|
+
function took(run) {
|
|
133
|
+
return `${(run.duration_ms / 1e3).toLocaleString("pt-BR", { maximumFractionDigits: 1 })}s`;
|
|
134
|
+
}
|
|
135
|
+
/** O que a busca varre numa execução: data, branch, autor e o título do step que falhou. */
|
|
136
|
+
function searchable(run) {
|
|
137
|
+
return [
|
|
138
|
+
testedAt(run),
|
|
139
|
+
run.branch,
|
|
140
|
+
run.author,
|
|
141
|
+
...run.steps.filter((step) => step.status === "failed").map((step) => step.title)
|
|
142
|
+
].join(" ").toLowerCase();
|
|
143
|
+
}
|
|
144
|
+
const filtered = computed(() => __props.runs.filter((run) => {
|
|
145
|
+
return (status.value === "todos" || status.value === "sucesso" === run.passed) && searchable(run).includes(search.value.trim().toLowerCase());
|
|
146
|
+
}));
|
|
147
|
+
const paginated = computed(() => filtered.value.slice((page.value - 1) * PAGE_SIZE, page.value * PAGE_SIZE));
|
|
148
|
+
watch([search, status], () => {
|
|
149
|
+
page.value = 1;
|
|
150
|
+
});
|
|
151
|
+
return (_ctx, _push, _parent, _attrs) => {
|
|
152
|
+
const _component_BaseEmpty = empty_default;
|
|
153
|
+
const _component_UInput = _sfc_main$4;
|
|
154
|
+
const _component_USelect = _sfc_main$6;
|
|
155
|
+
const _component_UCard = _sfc_main$5;
|
|
156
|
+
const _component_UBadge = _sfc_main$2;
|
|
157
|
+
const _component_UPagination = _sfc_main$9;
|
|
158
|
+
_push(`<section${ssrRenderAttrs(_attrs)}>`);
|
|
159
|
+
if (__props.runs.length === 0) _push(ssrRenderComponent(_component_BaseEmpty, {
|
|
160
|
+
icon: "i-ic-round-play-circle-outline",
|
|
161
|
+
title: "Nenhum teste executado ainda",
|
|
162
|
+
description: "Rode o cenário em Testar. Cada execução fica registrada aqui com o resultado e o código que rodou.",
|
|
163
|
+
testid: "cenario-execucoes-vazio"
|
|
164
|
+
}, null, _parent));
|
|
165
|
+
else {
|
|
166
|
+
_push(`<!--[--><div class="mb-3 flex flex-col gap-2 sm:flex-row">`);
|
|
167
|
+
_push(ssrRenderComponent(_component_UInput, {
|
|
168
|
+
modelValue: unref(search),
|
|
169
|
+
"onUpdate:modelValue": ($event) => isRef(search) ? search.value = $event : null,
|
|
170
|
+
icon: "i-ic-round-search",
|
|
171
|
+
placeholder: "Buscar por data, branch, autor ou step que falhou",
|
|
172
|
+
class: "flex-1",
|
|
173
|
+
"data-testid": "execucoes-busca"
|
|
174
|
+
}, null, _parent));
|
|
175
|
+
_push(ssrRenderComponent(_component_USelect, {
|
|
176
|
+
modelValue: unref(status),
|
|
177
|
+
"onUpdate:modelValue": ($event) => isRef(status) ? status.value = $event : null,
|
|
178
|
+
items: statusItems,
|
|
179
|
+
class: "sm:w-40",
|
|
180
|
+
"data-testid": "execucoes-status"
|
|
181
|
+
}, null, _parent));
|
|
182
|
+
_push(`</div>`);
|
|
183
|
+
if (unref(filtered).length === 0) _push(ssrRenderComponent(_component_BaseEmpty, {
|
|
184
|
+
icon: "i-ic-round-search-off",
|
|
185
|
+
title: "Nenhuma execução encontrada",
|
|
186
|
+
description: "Nada no histórico casa com a busca e o status escolhidos. Limpe os filtros para ver as execuções de novo.",
|
|
187
|
+
testid: "cenario-execucoes-sem-resultado"
|
|
188
|
+
}, null, _parent));
|
|
189
|
+
else {
|
|
190
|
+
_push(`<div class="grid gap-3 sm:grid-cols-2"><!--[-->`);
|
|
191
|
+
ssrRenderList(unref(paginated), (run) => {
|
|
192
|
+
_push(ssrRenderComponent(_component_UCard, {
|
|
193
|
+
key: run.started_at,
|
|
194
|
+
class: "cursor-pointer transition-colors hover:bg-accented/75",
|
|
195
|
+
"data-testid": "cenario-execucao",
|
|
196
|
+
"data-status": run.passed ? "success" : "failed",
|
|
197
|
+
onClick: ($event) => emit("open", run)
|
|
198
|
+
}, {
|
|
199
|
+
default: withCtx((_, _push, _parent, _scopeId) => {
|
|
200
|
+
if (_push) {
|
|
201
|
+
_push(`<div class="flex items-center justify-between gap-4"${_scopeId}><div class="min-w-0"${_scopeId}><p class="text-sm text-muted"${_scopeId}> Testado em </p><p class="truncate"${_scopeId}>${ssrInterpolate(testedAt(run))} <span class="text-muted"${_scopeId}>em ${ssrInterpolate(took(run))}</span></p></div>`);
|
|
202
|
+
_push(ssrRenderComponent(_component_UBadge, {
|
|
203
|
+
variant: "soft",
|
|
204
|
+
color: run.passed ? "success" : "error",
|
|
205
|
+
icon: run.passed ? "i-ic-round-check-circle" : "i-ic-round-error",
|
|
206
|
+
label: run.passed ? "Sucesso" : "Falha"
|
|
207
|
+
}, null, _parent, _scopeId));
|
|
208
|
+
_push(`</div>`);
|
|
209
|
+
} else return [createVNode("div", { class: "flex items-center justify-between gap-4" }, [createVNode("div", { class: "min-w-0" }, [createVNode("p", { class: "text-sm text-muted" }, " Testado em "), createVNode("p", { class: "truncate" }, [createTextVNode(toDisplayString(testedAt(run)) + " ", 1), createVNode("span", { class: "text-muted" }, "em " + toDisplayString(took(run)), 1)])]), createVNode(_component_UBadge, {
|
|
210
|
+
variant: "soft",
|
|
211
|
+
color: run.passed ? "success" : "error",
|
|
212
|
+
icon: run.passed ? "i-ic-round-check-circle" : "i-ic-round-error",
|
|
213
|
+
label: run.passed ? "Sucesso" : "Falha"
|
|
214
|
+
}, null, 8, [
|
|
215
|
+
"color",
|
|
216
|
+
"icon",
|
|
217
|
+
"label"
|
|
218
|
+
])])];
|
|
219
|
+
}),
|
|
220
|
+
_: 2
|
|
221
|
+
}, _parent));
|
|
222
|
+
});
|
|
223
|
+
_push(`<!--]--></div>`);
|
|
224
|
+
}
|
|
225
|
+
if (unref(filtered).length > PAGE_SIZE) {
|
|
226
|
+
_push(`<div class="mt-4 flex justify-center">`);
|
|
227
|
+
_push(ssrRenderComponent(_component_UPagination, {
|
|
228
|
+
page: unref(page),
|
|
229
|
+
"onUpdate:page": ($event) => isRef(page) ? page.value = $event : null,
|
|
230
|
+
variant: "soft",
|
|
231
|
+
total: unref(filtered).length,
|
|
232
|
+
"items-per-page": PAGE_SIZE,
|
|
233
|
+
"data-testid": "execucoes-paginacao"
|
|
234
|
+
}, null, _parent));
|
|
235
|
+
_push(`</div>`);
|
|
236
|
+
} else _push(`<!---->`);
|
|
237
|
+
_push(`<!--]-->`);
|
|
238
|
+
}
|
|
239
|
+
_push(`</section>`);
|
|
240
|
+
};
|
|
241
|
+
}
|
|
242
|
+
});
|
|
243
|
+
//#endregion
|
|
244
|
+
//#region app/components/scenario/test-run/history.vue
|
|
245
|
+
var _sfc_setup$6 = history_vue_vue_type_script_setup_true_lang_default.setup;
|
|
246
|
+
history_vue_vue_type_script_setup_true_lang_default.setup = (props, ctx) => {
|
|
247
|
+
const ssrContext = useSSRContext();
|
|
248
|
+
(ssrContext.modules || (ssrContext.modules = /* @__PURE__ */ new Set())).add("components/scenario/test-run/history.vue");
|
|
249
|
+
return _sfc_setup$6 ? _sfc_setup$6(props, ctx) : void 0;
|
|
250
|
+
};
|
|
251
|
+
var history_default = Object.assign(history_vue_vue_type_script_setup_true_lang_default, { __name: "ScenarioTestRunHistory" });
|
|
252
|
+
//#endregion
|
|
66
253
|
//#region app/components/scenario/edit/modal.vue?vue&type=script&setup=true&lang.ts
|
|
67
|
-
var modal_vue_vue_type_script_setup_true_lang_default$
|
|
254
|
+
var modal_vue_vue_type_script_setup_true_lang_default$2 = /*@__PURE__*/ defineComponent({
|
|
68
255
|
__name: "modal",
|
|
69
256
|
__ssrInlineRender: true,
|
|
70
257
|
props: /*@__PURE__*/ mergeModels({
|
|
@@ -112,10 +299,10 @@ var modal_vue_vue_type_script_setup_true_lang_default$1 = /*@__PURE__*/ defineCo
|
|
|
112
299
|
}
|
|
113
300
|
}
|
|
114
301
|
return (_ctx, _push, _parent, _attrs) => {
|
|
115
|
-
const _component_BaseModal = modal_default$
|
|
302
|
+
const _component_BaseModal = modal_default$4;
|
|
116
303
|
const _component_ScenarioReviewContexts = contexts_default;
|
|
117
|
-
const _component_UAlert = _sfc_main
|
|
118
|
-
const _component_UButton = _sfc_main$3;
|
|
304
|
+
const _component_UAlert = _sfc_main;
|
|
305
|
+
const _component_UButton = _sfc_main$3$1;
|
|
119
306
|
_push(ssrRenderComponent(_component_BaseModal, mergeProps({
|
|
120
307
|
open: open.value,
|
|
121
308
|
"onUpdate:open": ($event) => open.value = $event,
|
|
@@ -187,13 +374,324 @@ var modal_vue_vue_type_script_setup_true_lang_default$1 = /*@__PURE__*/ defineCo
|
|
|
187
374
|
});
|
|
188
375
|
//#endregion
|
|
189
376
|
//#region app/components/scenario/edit/modal.vue
|
|
377
|
+
var _sfc_setup$5 = modal_vue_vue_type_script_setup_true_lang_default$2.setup;
|
|
378
|
+
modal_vue_vue_type_script_setup_true_lang_default$2.setup = (props, ctx) => {
|
|
379
|
+
const ssrContext = useSSRContext();
|
|
380
|
+
(ssrContext.modules || (ssrContext.modules = /* @__PURE__ */ new Set())).add("components/scenario/edit/modal.vue");
|
|
381
|
+
return _sfc_setup$5 ? _sfc_setup$5(props, ctx) : void 0;
|
|
382
|
+
};
|
|
383
|
+
var modal_default$2 = Object.assign(modal_vue_vue_type_script_setup_true_lang_default$2, { __name: "ScenarioEditModal" });
|
|
384
|
+
//#endregion
|
|
385
|
+
//#region app/components/scenario/suggestions/loading.vue?vue&type=script&setup=true&lang.ts
|
|
386
|
+
var loading_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineComponent({
|
|
387
|
+
__name: "loading",
|
|
388
|
+
__ssrInlineRender: true,
|
|
389
|
+
setup(__props) {
|
|
390
|
+
const phrases = [
|
|
391
|
+
"Analisando os eventos gravados",
|
|
392
|
+
"Procurando seletores frágeis",
|
|
393
|
+
"Pensando em nomes de data-testid",
|
|
394
|
+
"Preparando as sugestões"
|
|
395
|
+
];
|
|
396
|
+
return (_ctx, _push, _parent, _attrs) => {
|
|
397
|
+
_push(ssrRenderComponent(phrases_default, mergeProps({
|
|
398
|
+
phrases,
|
|
399
|
+
"data-testid": "sugestoes-carregando"
|
|
400
|
+
}, _attrs), null, _parent));
|
|
401
|
+
};
|
|
402
|
+
}
|
|
403
|
+
});
|
|
404
|
+
//#endregion
|
|
405
|
+
//#region app/components/scenario/suggestions/loading.vue
|
|
406
|
+
var _sfc_setup$4 = loading_vue_vue_type_script_setup_true_lang_default.setup;
|
|
407
|
+
loading_vue_vue_type_script_setup_true_lang_default.setup = (props, ctx) => {
|
|
408
|
+
const ssrContext = useSSRContext();
|
|
409
|
+
(ssrContext.modules || (ssrContext.modules = /* @__PURE__ */ new Set())).add("components/scenario/suggestions/loading.vue");
|
|
410
|
+
return _sfc_setup$4 ? _sfc_setup$4(props, ctx) : void 0;
|
|
411
|
+
};
|
|
412
|
+
var loading_default = Object.assign(loading_vue_vue_type_script_setup_true_lang_default, { __name: "ScenarioSuggestionsLoading" });
|
|
413
|
+
//#endregion
|
|
414
|
+
//#region app/components/scenario/suggestions/modal.vue?vue&type=script&setup=true&lang.ts
|
|
415
|
+
var modal_vue_vue_type_script_setup_true_lang_default$1 = /*@__PURE__*/ defineComponent({
|
|
416
|
+
__name: "modal",
|
|
417
|
+
__ssrInlineRender: true,
|
|
418
|
+
props: /*@__PURE__*/ mergeModels({
|
|
419
|
+
loading: {
|
|
420
|
+
type: Boolean,
|
|
421
|
+
default: false
|
|
422
|
+
},
|
|
423
|
+
suggestions: { default: () => [] },
|
|
424
|
+
error: { default: null }
|
|
425
|
+
}, {
|
|
426
|
+
"open": {
|
|
427
|
+
type: Boolean,
|
|
428
|
+
default: false
|
|
429
|
+
},
|
|
430
|
+
"openModifiers": {}
|
|
431
|
+
}),
|
|
432
|
+
emits: ["update:open"],
|
|
433
|
+
setup(__props) {
|
|
434
|
+
const open = useModel(__props, "open");
|
|
435
|
+
const copied = ref(null);
|
|
436
|
+
function copy(testId, index) {
|
|
437
|
+
(void 0).clipboard?.writeText(testId);
|
|
438
|
+
copied.value = index;
|
|
439
|
+
setTimeout(() => {
|
|
440
|
+
if (copied.value === index) copied.value = null;
|
|
441
|
+
}, 1500);
|
|
442
|
+
}
|
|
443
|
+
return (_ctx, _push, _parent, _attrs) => {
|
|
444
|
+
const _component_BaseModal = modal_default$4;
|
|
445
|
+
const _component_ScenarioSuggestionsLoading = loading_default;
|
|
446
|
+
const _component_UAlert = _sfc_main;
|
|
447
|
+
const _component_UCard = _sfc_main$5;
|
|
448
|
+
const _component_UIcon = _sfc_main$8;
|
|
449
|
+
const _component_UBadge = _sfc_main$2;
|
|
450
|
+
const _component_UTooltip = _sfc_main$7;
|
|
451
|
+
const _component_UButton = _sfc_main$3$1;
|
|
452
|
+
_push(ssrRenderComponent(_component_BaseModal, mergeProps({
|
|
453
|
+
open: open.value,
|
|
454
|
+
"onUpdate:open": ($event) => open.value = $event,
|
|
455
|
+
title: "Sugestões de seletores",
|
|
456
|
+
loading: __props.loading,
|
|
457
|
+
wide: ""
|
|
458
|
+
}, _attrs), {
|
|
459
|
+
body: withCtx((_, _push, _parent, _scopeId) => {
|
|
460
|
+
if (_push) {
|
|
461
|
+
if (__props.loading) _push(ssrRenderComponent(_component_ScenarioSuggestionsLoading, null, null, _parent, _scopeId));
|
|
462
|
+
else if (__props.error) _push(ssrRenderComponent(_component_UAlert, {
|
|
463
|
+
color: "error",
|
|
464
|
+
variant: "soft",
|
|
465
|
+
icon: "i-ic-round-error-outline",
|
|
466
|
+
title: "Não foi possível gerar sugestões",
|
|
467
|
+
description: __props.error
|
|
468
|
+
}, null, _parent, _scopeId));
|
|
469
|
+
else if (__props.suggestions.length === 0) _push(ssrRenderComponent(_component_UAlert, {
|
|
470
|
+
color: "success",
|
|
471
|
+
variant: "soft",
|
|
472
|
+
icon: "i-ic-round-check-circle",
|
|
473
|
+
title: "Nenhuma sugestão necessária",
|
|
474
|
+
description: "Todos os eventos já têm um data-testid.",
|
|
475
|
+
"data-testid": "sugestoes-vazio"
|
|
476
|
+
}, null, _parent, _scopeId));
|
|
477
|
+
else {
|
|
478
|
+
_push(`<div class="flex flex-col gap-3"${_scopeId}><!--[-->`);
|
|
479
|
+
ssrRenderList(__props.suggestions, (suggestion, i) => {
|
|
480
|
+
_push(ssrRenderComponent(_component_UCard, {
|
|
481
|
+
key: i,
|
|
482
|
+
"data-testid": "sugestao-card"
|
|
483
|
+
}, {
|
|
484
|
+
default: withCtx((_, _push, _parent, _scopeId) => {
|
|
485
|
+
if (_push) {
|
|
486
|
+
_push(`<div class="flex gap-3"${_scopeId}><div class="flex size-9 shrink-0 items-center justify-center rounded-md bg-primary/10"${_scopeId}>`);
|
|
487
|
+
_push(ssrRenderComponent(_component_UIcon, {
|
|
488
|
+
name: "i-ic-round-select-all",
|
|
489
|
+
class: "size-5 text-primary"
|
|
490
|
+
}, null, _parent, _scopeId));
|
|
491
|
+
_push(`</div><div class="min-w-0 flex-1"${_scopeId}><p class="text-sm font-semibold"${_scopeId}>${ssrInterpolate(suggestion.event)}</p><p class="text-xs text-dimmed mt-0.5"${_scopeId}>${ssrInterpolate(suggestion.reason)}</p><div class="flex flex-wrap items-center gap-2 mt-3"${_scopeId}>`);
|
|
492
|
+
_push(ssrRenderComponent(_component_UBadge, {
|
|
493
|
+
color: "error",
|
|
494
|
+
class: "font-mono line-through decoration-error/50",
|
|
495
|
+
size: "xl"
|
|
496
|
+
}, {
|
|
497
|
+
default: withCtx((_, _push, _parent, _scopeId) => {
|
|
498
|
+
if (_push) _push(`${ssrInterpolate(suggestion.currentSelector)}`);
|
|
499
|
+
else return [createTextVNode(toDisplayString(suggestion.currentSelector), 1)];
|
|
500
|
+
}),
|
|
501
|
+
_: 2
|
|
502
|
+
}, _parent, _scopeId));
|
|
503
|
+
_push(ssrRenderComponent(_component_UIcon, {
|
|
504
|
+
name: "i-ic-round-keyboard-arrow-right",
|
|
505
|
+
class: "size-8 shrink-0 text-dimmed"
|
|
506
|
+
}, null, _parent, _scopeId));
|
|
507
|
+
_push(ssrRenderComponent(_component_UTooltip, {
|
|
508
|
+
text: unref(copied) === i ? "Copiado!" : "Clique para copiar",
|
|
509
|
+
"delay-duration": 0,
|
|
510
|
+
arrow: ""
|
|
511
|
+
}, {
|
|
512
|
+
default: withCtx((_, _push, _parent, _scopeId) => {
|
|
513
|
+
if (_push) _push(ssrRenderComponent(_component_UButton, {
|
|
514
|
+
color: unref(copied) === i ? "success" : "primary",
|
|
515
|
+
variant: "soft",
|
|
516
|
+
"trailing-icon": unref(copied) === i ? "i-ic-round-check" : "i-ic-round-content-copy",
|
|
517
|
+
"data-testid": "sugestao-testid",
|
|
518
|
+
size: "lg",
|
|
519
|
+
onClick: ($event) => copy(suggestion.suggestedTestId, i)
|
|
520
|
+
}, {
|
|
521
|
+
default: withCtx((_, _push, _parent, _scopeId) => {
|
|
522
|
+
if (_push) _push(`<code class="font-mono"${_scopeId}>data-testid="${ssrInterpolate(suggestion.suggestedTestId)}"</code>`);
|
|
523
|
+
else return [createVNode("code", { class: "font-mono" }, "data-testid=\"" + toDisplayString(suggestion.suggestedTestId) + "\"", 1)];
|
|
524
|
+
}),
|
|
525
|
+
_: 2
|
|
526
|
+
}, _parent, _scopeId));
|
|
527
|
+
else return [createVNode(_component_UButton, {
|
|
528
|
+
color: unref(copied) === i ? "success" : "primary",
|
|
529
|
+
variant: "soft",
|
|
530
|
+
"trailing-icon": unref(copied) === i ? "i-ic-round-check" : "i-ic-round-content-copy",
|
|
531
|
+
"data-testid": "sugestao-testid",
|
|
532
|
+
size: "lg",
|
|
533
|
+
onClick: ($event) => copy(suggestion.suggestedTestId, i)
|
|
534
|
+
}, {
|
|
535
|
+
default: withCtx(() => [createVNode("code", { class: "font-mono" }, "data-testid=\"" + toDisplayString(suggestion.suggestedTestId) + "\"", 1)]),
|
|
536
|
+
_: 2
|
|
537
|
+
}, 1032, [
|
|
538
|
+
"color",
|
|
539
|
+
"trailing-icon",
|
|
540
|
+
"onClick"
|
|
541
|
+
])];
|
|
542
|
+
}),
|
|
543
|
+
_: 2
|
|
544
|
+
}, _parent, _scopeId));
|
|
545
|
+
_push(`</div></div></div>`);
|
|
546
|
+
} else return [createVNode("div", { class: "flex gap-3" }, [createVNode("div", { class: "flex size-9 shrink-0 items-center justify-center rounded-md bg-primary/10" }, [createVNode(_component_UIcon, {
|
|
547
|
+
name: "i-ic-round-select-all",
|
|
548
|
+
class: "size-5 text-primary"
|
|
549
|
+
})]), createVNode("div", { class: "min-w-0 flex-1" }, [
|
|
550
|
+
createVNode("p", { class: "text-sm font-semibold" }, toDisplayString(suggestion.event), 1),
|
|
551
|
+
createVNode("p", { class: "text-xs text-dimmed mt-0.5" }, toDisplayString(suggestion.reason), 1),
|
|
552
|
+
createVNode("div", { class: "flex flex-wrap items-center gap-2 mt-3" }, [
|
|
553
|
+
createVNode(_component_UBadge, {
|
|
554
|
+
color: "error",
|
|
555
|
+
class: "font-mono line-through decoration-error/50",
|
|
556
|
+
size: "xl"
|
|
557
|
+
}, {
|
|
558
|
+
default: withCtx(() => [createTextVNode(toDisplayString(suggestion.currentSelector), 1)]),
|
|
559
|
+
_: 2
|
|
560
|
+
}, 1024),
|
|
561
|
+
createVNode(_component_UIcon, {
|
|
562
|
+
name: "i-ic-round-keyboard-arrow-right",
|
|
563
|
+
class: "size-8 shrink-0 text-dimmed"
|
|
564
|
+
}),
|
|
565
|
+
createVNode(_component_UTooltip, {
|
|
566
|
+
text: unref(copied) === i ? "Copiado!" : "Clique para copiar",
|
|
567
|
+
"delay-duration": 0,
|
|
568
|
+
arrow: ""
|
|
569
|
+
}, {
|
|
570
|
+
default: withCtx(() => [createVNode(_component_UButton, {
|
|
571
|
+
color: unref(copied) === i ? "success" : "primary",
|
|
572
|
+
variant: "soft",
|
|
573
|
+
"trailing-icon": unref(copied) === i ? "i-ic-round-check" : "i-ic-round-content-copy",
|
|
574
|
+
"data-testid": "sugestao-testid",
|
|
575
|
+
size: "lg",
|
|
576
|
+
onClick: ($event) => copy(suggestion.suggestedTestId, i)
|
|
577
|
+
}, {
|
|
578
|
+
default: withCtx(() => [createVNode("code", { class: "font-mono" }, "data-testid=\"" + toDisplayString(suggestion.suggestedTestId) + "\"", 1)]),
|
|
579
|
+
_: 2
|
|
580
|
+
}, 1032, [
|
|
581
|
+
"color",
|
|
582
|
+
"trailing-icon",
|
|
583
|
+
"onClick"
|
|
584
|
+
])]),
|
|
585
|
+
_: 2
|
|
586
|
+
}, 1032, ["text"])
|
|
587
|
+
])
|
|
588
|
+
])])];
|
|
589
|
+
}),
|
|
590
|
+
_: 2
|
|
591
|
+
}, _parent, _scopeId));
|
|
592
|
+
});
|
|
593
|
+
_push(`<!--]--></div>`);
|
|
594
|
+
}
|
|
595
|
+
} else return [__props.loading ? (openBlock(), createBlock(_component_ScenarioSuggestionsLoading, { key: 0 })) : __props.error ? (openBlock(), createBlock(_component_UAlert, {
|
|
596
|
+
key: 1,
|
|
597
|
+
color: "error",
|
|
598
|
+
variant: "soft",
|
|
599
|
+
icon: "i-ic-round-error-outline",
|
|
600
|
+
title: "Não foi possível gerar sugestões",
|
|
601
|
+
description: __props.error
|
|
602
|
+
}, null, 8, ["description"])) : __props.suggestions.length === 0 ? (openBlock(), createBlock(_component_UAlert, {
|
|
603
|
+
key: 2,
|
|
604
|
+
color: "success",
|
|
605
|
+
variant: "soft",
|
|
606
|
+
icon: "i-ic-round-check-circle",
|
|
607
|
+
title: "Nenhuma sugestão necessária",
|
|
608
|
+
description: "Todos os eventos já têm um data-testid.",
|
|
609
|
+
"data-testid": "sugestoes-vazio"
|
|
610
|
+
})) : (openBlock(), createBlock("div", {
|
|
611
|
+
key: 3,
|
|
612
|
+
class: "flex flex-col gap-3"
|
|
613
|
+
}, [(openBlock(true), createBlock(Fragment, null, renderList(__props.suggestions, (suggestion, i) => {
|
|
614
|
+
return openBlock(), createBlock(_component_UCard, {
|
|
615
|
+
key: i,
|
|
616
|
+
"data-testid": "sugestao-card"
|
|
617
|
+
}, {
|
|
618
|
+
default: withCtx(() => [createVNode("div", { class: "flex gap-3" }, [createVNode("div", { class: "flex size-9 shrink-0 items-center justify-center rounded-md bg-primary/10" }, [createVNode(_component_UIcon, {
|
|
619
|
+
name: "i-ic-round-select-all",
|
|
620
|
+
class: "size-5 text-primary"
|
|
621
|
+
})]), createVNode("div", { class: "min-w-0 flex-1" }, [
|
|
622
|
+
createVNode("p", { class: "text-sm font-semibold" }, toDisplayString(suggestion.event), 1),
|
|
623
|
+
createVNode("p", { class: "text-xs text-dimmed mt-0.5" }, toDisplayString(suggestion.reason), 1),
|
|
624
|
+
createVNode("div", { class: "flex flex-wrap items-center gap-2 mt-3" }, [
|
|
625
|
+
createVNode(_component_UBadge, {
|
|
626
|
+
color: "error",
|
|
627
|
+
class: "font-mono line-through decoration-error/50",
|
|
628
|
+
size: "xl"
|
|
629
|
+
}, {
|
|
630
|
+
default: withCtx(() => [createTextVNode(toDisplayString(suggestion.currentSelector), 1)]),
|
|
631
|
+
_: 2
|
|
632
|
+
}, 1024),
|
|
633
|
+
createVNode(_component_UIcon, {
|
|
634
|
+
name: "i-ic-round-keyboard-arrow-right",
|
|
635
|
+
class: "size-8 shrink-0 text-dimmed"
|
|
636
|
+
}),
|
|
637
|
+
createVNode(_component_UTooltip, {
|
|
638
|
+
text: unref(copied) === i ? "Copiado!" : "Clique para copiar",
|
|
639
|
+
"delay-duration": 0,
|
|
640
|
+
arrow: ""
|
|
641
|
+
}, {
|
|
642
|
+
default: withCtx(() => [createVNode(_component_UButton, {
|
|
643
|
+
color: unref(copied) === i ? "success" : "primary",
|
|
644
|
+
variant: "soft",
|
|
645
|
+
"trailing-icon": unref(copied) === i ? "i-ic-round-check" : "i-ic-round-content-copy",
|
|
646
|
+
"data-testid": "sugestao-testid",
|
|
647
|
+
size: "lg",
|
|
648
|
+
onClick: ($event) => copy(suggestion.suggestedTestId, i)
|
|
649
|
+
}, {
|
|
650
|
+
default: withCtx(() => [createVNode("code", { class: "font-mono" }, "data-testid=\"" + toDisplayString(suggestion.suggestedTestId) + "\"", 1)]),
|
|
651
|
+
_: 2
|
|
652
|
+
}, 1032, [
|
|
653
|
+
"color",
|
|
654
|
+
"trailing-icon",
|
|
655
|
+
"onClick"
|
|
656
|
+
])]),
|
|
657
|
+
_: 2
|
|
658
|
+
}, 1032, ["text"])
|
|
659
|
+
])
|
|
660
|
+
])])]),
|
|
661
|
+
_: 2
|
|
662
|
+
}, 1024);
|
|
663
|
+
}), 128))]))];
|
|
664
|
+
}),
|
|
665
|
+
footer: withCtx((_, _push, _parent, _scopeId) => {
|
|
666
|
+
if (_push) _push(ssrRenderComponent(_component_UButton, {
|
|
667
|
+
label: "Fechar",
|
|
668
|
+
color: "neutral",
|
|
669
|
+
variant: "ghost",
|
|
670
|
+
"data-testid": "sugestoes-fechar",
|
|
671
|
+
onClick: ($event) => open.value = false
|
|
672
|
+
}, null, _parent, _scopeId));
|
|
673
|
+
else return [createVNode(_component_UButton, {
|
|
674
|
+
label: "Fechar",
|
|
675
|
+
color: "neutral",
|
|
676
|
+
variant: "ghost",
|
|
677
|
+
"data-testid": "sugestoes-fechar",
|
|
678
|
+
onClick: ($event) => open.value = false
|
|
679
|
+
}, null, 8, ["onClick"])];
|
|
680
|
+
}),
|
|
681
|
+
_: 1
|
|
682
|
+
}, _parent));
|
|
683
|
+
};
|
|
684
|
+
}
|
|
685
|
+
});
|
|
686
|
+
//#endregion
|
|
687
|
+
//#region app/components/scenario/suggestions/modal.vue
|
|
190
688
|
var _sfc_setup$3 = modal_vue_vue_type_script_setup_true_lang_default$1.setup;
|
|
191
689
|
modal_vue_vue_type_script_setup_true_lang_default$1.setup = (props, ctx) => {
|
|
192
690
|
const ssrContext = useSSRContext();
|
|
193
|
-
(ssrContext.modules || (ssrContext.modules = /* @__PURE__ */ new Set())).add("components/scenario/
|
|
691
|
+
(ssrContext.modules || (ssrContext.modules = /* @__PURE__ */ new Set())).add("components/scenario/suggestions/modal.vue");
|
|
194
692
|
return _sfc_setup$3 ? _sfc_setup$3(props, ctx) : void 0;
|
|
195
693
|
};
|
|
196
|
-
var modal_default$1 = Object.assign(modal_vue_vue_type_script_setup_true_lang_default$1, { __name: "
|
|
694
|
+
var modal_default$1 = Object.assign(modal_vue_vue_type_script_setup_true_lang_default$1, { __name: "ScenarioSuggestionsModal" });
|
|
197
695
|
//#endregion
|
|
198
696
|
//#region app/components/project/auth/credentials.vue?vue&type=script&setup=true&lang.ts
|
|
199
697
|
var credentials_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineComponent({
|
|
@@ -240,11 +738,11 @@ var credentials_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defi
|
|
|
240
738
|
}
|
|
241
739
|
}
|
|
242
740
|
return (_ctx, _push, _parent, _attrs) => {
|
|
243
|
-
const _component_BaseModal = modal_default$
|
|
244
|
-
const _component_UAlert = _sfc_main
|
|
245
|
-
const _component_UFormField = _sfc_main$
|
|
246
|
-
const _component_UInput = _sfc_main$
|
|
247
|
-
const _component_UButton = _sfc_main$3;
|
|
741
|
+
const _component_BaseModal = modal_default$4;
|
|
742
|
+
const _component_UAlert = _sfc_main;
|
|
743
|
+
const _component_UFormField = _sfc_main$1$1;
|
|
744
|
+
const _component_UInput = _sfc_main$4;
|
|
745
|
+
const _component_UButton = _sfc_main$3$1;
|
|
248
746
|
_push(ssrRenderComponent(_component_BaseModal, mergeProps({
|
|
249
747
|
open: open.value,
|
|
250
748
|
"onUpdate:open": ($event) => open.value = $event,
|
|
@@ -422,11 +920,11 @@ var modal_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineComp
|
|
|
422
920
|
const emit = __emit;
|
|
423
921
|
const open = useModel(__props, "open");
|
|
424
922
|
return (_ctx, _push, _parent, _attrs) => {
|
|
425
|
-
const _component_BaseModal = modal_default$
|
|
923
|
+
const _component_BaseModal = modal_default$4;
|
|
426
924
|
const _component_BaseLoadingPhrases = phrases_default;
|
|
427
|
-
const _component_UAlert = _sfc_main
|
|
925
|
+
const _component_UAlert = _sfc_main;
|
|
428
926
|
const _component_BaseCodefield = codefield_default;
|
|
429
|
-
const _component_UButton = _sfc_main$3;
|
|
927
|
+
const _component_UButton = _sfc_main$3$1;
|
|
430
928
|
_push(ssrRenderComponent(_component_BaseModal, mergeProps({
|
|
431
929
|
open: open.value,
|
|
432
930
|
"onUpdate:open": ($event) => open.value = $event,
|
|
@@ -734,8 +1232,7 @@ var ____scenario__vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ de
|
|
|
734
1232
|
const written = computed(() => !isAuth.value || scenario.value.playwright.trim().length > 0);
|
|
735
1233
|
const { state: webdriver, startRecording, stopRecording } = useWebdriver();
|
|
736
1234
|
const credentialsOpen = ref(false);
|
|
737
|
-
const
|
|
738
|
-
const authError = ref(null);
|
|
1235
|
+
const reviewOpen = ref(false);
|
|
739
1236
|
const authWarnings = ref([]);
|
|
740
1237
|
const dismissingAuth = ref(false);
|
|
741
1238
|
async function dismissAuth() {
|
|
@@ -747,143 +1244,80 @@ var ____scenario__vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ de
|
|
|
747
1244
|
dismissingAuth.value = false;
|
|
748
1245
|
}
|
|
749
1246
|
}
|
|
750
|
-
|
|
751
|
-
|
|
752
|
-
"Identificando os campos de usuário e senha",
|
|
753
|
-
"Escrevendo o fluxo de autenticação"
|
|
754
|
-
];
|
|
1247
|
+
/** Só a tela que pediu a gravação revisa o resultado; o gravador é um estado compartilhado. */
|
|
1248
|
+
const recordStarted = ref(false);
|
|
755
1249
|
/** Gravar o login abre no sistema sem sessão, porque é justamente o login que vamos capturar. */
|
|
756
1250
|
function recordLogin() {
|
|
757
|
-
authError.value = null;
|
|
758
1251
|
authWarnings.value = [];
|
|
1252
|
+
recordStarted.value = true;
|
|
759
1253
|
startRecording("auth", { url: project.value.base_url ?? void 0 });
|
|
760
1254
|
}
|
|
761
|
-
const RESUME_PHRASES = [
|
|
762
|
-
"Lendo os eventos da gravação retomada",
|
|
763
|
-
"Reescrevendo os passos do cenário",
|
|
764
|
-
"Montando o teste Playwright"
|
|
765
|
-
];
|
|
766
|
-
const resuming = ref(false);
|
|
767
|
-
/** Só a tela que pediu a retomada reescreve o cenário; o gravador é um estado compartilhado. */
|
|
768
|
-
const resumeStarted = ref(false);
|
|
769
|
-
const resumed = ref(null);
|
|
770
|
-
const resumeError = ref(null);
|
|
771
1255
|
/** Retomar do passo escolhido: o navegador refaz os anteriores e a gravação continua dali. */
|
|
772
1256
|
const isPublic = computed(() => scenario.value.tags.includes("@publico"));
|
|
773
|
-
function
|
|
774
|
-
|
|
775
|
-
resumed.value = null;
|
|
776
|
-
resuming.value = false;
|
|
777
|
-
resumeStarted.value = true;
|
|
1257
|
+
function resumeWith(events) {
|
|
1258
|
+
recordStarted.value = true;
|
|
778
1259
|
startRecording(isAuth.value ? "auth" : "scenario", {
|
|
779
1260
|
url: project.value.base_url ?? void 0,
|
|
780
1261
|
storageState: isAuth.value ? void 0 : sessionFor(project.value, isPublic.value),
|
|
781
|
-
replay:
|
|
1262
|
+
replay: events
|
|
782
1263
|
});
|
|
783
1264
|
}
|
|
1265
|
+
function resumeFrom(index) {
|
|
1266
|
+
resumeWith(scenario.value.events.slice(0, index));
|
|
1267
|
+
}
|
|
1268
|
+
/** Gravar de novo do zero mantém o tipo do cenário, só descarta os passos que já existiam. */
|
|
1269
|
+
function rerecord() {
|
|
1270
|
+
return isAuth.value ? recordLogin() : resumeWith([]);
|
|
1271
|
+
}
|
|
784
1272
|
/** Enquanto a ferramenta refaz os passos, quem manda é a cortina na janela gravada. */
|
|
785
1273
|
const recordingLabel = computed(() => {
|
|
786
1274
|
if (webdriver.value.replayFailedStep) return "Aguardando você na janela";
|
|
787
1275
|
if (webdriver.value.replaying) return "Refazendo os passos";
|
|
788
1276
|
return "Parar gravação";
|
|
789
1277
|
});
|
|
790
|
-
/** A edição comum revisa o que está em disco, e não o rascunho de uma retomada anterior. */
|
|
791
1278
|
function openEdit() {
|
|
792
|
-
resumed.value = null;
|
|
793
1279
|
editOpen.value = true;
|
|
794
1280
|
}
|
|
795
|
-
|
|
796
|
-
|
|
797
|
-
|
|
798
|
-
|
|
799
|
-
|
|
800
|
-
|
|
801
|
-
|
|
802
|
-
|
|
803
|
-
|
|
1281
|
+
/** Toda gravação que sai desta tela passa pela revisão antes de virar cenário ou autenticação. */
|
|
1282
|
+
watch(() => webdriver.value.videoSessionId, (sessionId) => {
|
|
1283
|
+
if (!sessionId || !recordStarted.value) return;
|
|
1284
|
+
recordStarted.value = false;
|
|
1285
|
+
reviewOpen.value = true;
|
|
1286
|
+
});
|
|
1287
|
+
/** O que a revisão gerou: a autenticação segue para as credenciais ou para o teste. */
|
|
1288
|
+
async function onReviewed(result) {
|
|
1289
|
+
if (!result) return;
|
|
1290
|
+
if (!isAuth.value) return onUpdated(result);
|
|
1291
|
+
const generated = result;
|
|
1292
|
+
authWarnings.value = generated.warnings ?? [];
|
|
1293
|
+
await refreshScenario();
|
|
1294
|
+
if (generated.credentialsNeeded) {
|
|
1295
|
+
credentialsOpen.value = true;
|
|
804
1296
|
return;
|
|
805
1297
|
}
|
|
806
|
-
|
|
807
|
-
try {
|
|
808
|
-
const draft = await $fetch$2(`/api/projects/${slug.value}/tests/draft`, {
|
|
809
|
-
method: "POST",
|
|
810
|
-
body: {
|
|
811
|
-
baseUrl,
|
|
812
|
-
events,
|
|
813
|
-
isPublic: isPublic.value
|
|
814
|
-
}
|
|
815
|
-
});
|
|
816
|
-
const atual = draftFromScenario(scenario.value);
|
|
817
|
-
resumed.value = {
|
|
818
|
-
draft: {
|
|
819
|
-
...draft,
|
|
820
|
-
title: atual.title,
|
|
821
|
-
path: atual.path,
|
|
822
|
-
domain: atual.domain
|
|
823
|
-
},
|
|
824
|
-
events
|
|
825
|
-
};
|
|
826
|
-
editOpen.value = true;
|
|
827
|
-
} catch (error) {
|
|
828
|
-
resumeError.value = extractServerError(error, "Não foi possível reescrever o cenário a partir da gravação.");
|
|
829
|
-
} finally {
|
|
830
|
-
resuming.value = false;
|
|
831
|
-
resumeStarted.value = false;
|
|
832
|
-
}
|
|
1298
|
+
runTest();
|
|
833
1299
|
}
|
|
834
|
-
watch(() => webdriver.value.videoSessionId, async (sessionId) => {
|
|
835
|
-
if (!sessionId) return;
|
|
836
|
-
if (!isAuth.value) return resumeStarted.value ? draftResumed() : void 0;
|
|
837
|
-
const baseUrl = eventsBaseUrl(webdriver.value.events);
|
|
838
|
-
if (!baseUrl) {
|
|
839
|
-
authError.value = "A gravação não registrou nenhuma página. Tente gravar novamente.";
|
|
840
|
-
return;
|
|
841
|
-
}
|
|
842
|
-
writingAuth.value = true;
|
|
843
|
-
try {
|
|
844
|
-
const response = await $fetch$2(`/api/projects/${slug.value}/auth/record`, {
|
|
845
|
-
method: "POST",
|
|
846
|
-
body: {
|
|
847
|
-
baseUrl,
|
|
848
|
-
events: recordedEvents()
|
|
849
|
-
}
|
|
850
|
-
});
|
|
851
|
-
authWarnings.value = response.warnings ?? [];
|
|
852
|
-
await refreshScenario();
|
|
853
|
-
if (response.credentialsNeeded) {
|
|
854
|
-
credentialsOpen.value = true;
|
|
855
|
-
return;
|
|
856
|
-
}
|
|
857
|
-
runTest();
|
|
858
|
-
} catch (error) {
|
|
859
|
-
console.error("Falha ao gravar a autenticação:", error);
|
|
860
|
-
authError.value = "Não foi possível gerar a autenticação a partir da gravação. Tente novamente.";
|
|
861
|
-
} finally {
|
|
862
|
-
writingAuth.value = false;
|
|
863
|
-
}
|
|
864
|
-
});
|
|
865
1300
|
return (_ctx, _push, _parent, _attrs) => {
|
|
866
|
-
const _component_UContainer = _sfc_main;
|
|
1301
|
+
const _component_UContainer = _sfc_main$3;
|
|
867
1302
|
const _component_BaseButtonIcon = icon_default;
|
|
868
|
-
const _component_UBadge = _sfc_main$
|
|
1303
|
+
const _component_UBadge = _sfc_main$2;
|
|
869
1304
|
const _component_ScenarioAuthStatus = auth_status_default;
|
|
870
|
-
const _component_UTooltip = _sfc_main$
|
|
871
|
-
const _component_UButton = _sfc_main$3;
|
|
1305
|
+
const _component_UTooltip = _sfc_main$7;
|
|
1306
|
+
const _component_UButton = _sfc_main$3$1;
|
|
872
1307
|
const _component_ScenarioWarnings = warnings_default;
|
|
873
|
-
const _component_UAlert = _sfc_main
|
|
1308
|
+
const _component_UAlert = _sfc_main;
|
|
874
1309
|
const _component_WebdriverSetup = setup_default;
|
|
875
|
-
const _component_UIcon = _sfc_main$
|
|
876
|
-
const _component_UTabs = _sfc_main$
|
|
1310
|
+
const _component_UIcon = _sfc_main$8;
|
|
1311
|
+
const _component_UTabs = _sfc_main$1;
|
|
877
1312
|
const _component_BaseEmpty = empty_default;
|
|
878
1313
|
const _component_ScenarioReviewTimeline = timeline_default;
|
|
879
1314
|
const _component_BaseCodefield = codefield_default;
|
|
880
1315
|
const _component_ScenarioTestRunHistory = history_default;
|
|
881
1316
|
const _component_BaseConfirm = confirm_default;
|
|
882
|
-
const _component_ScenarioEditModal = modal_default$
|
|
883
|
-
const
|
|
1317
|
+
const _component_ScenarioEditModal = modal_default$2;
|
|
1318
|
+
const _component_ScenarioReviewModal = modal_default$1$1;
|
|
1319
|
+
const _component_ScenarioSuggestionsModal = modal_default$1;
|
|
884
1320
|
const _component_ScenarioTestRunModal = modal_default$3;
|
|
885
|
-
const _component_BaseModal = modal_default$1$1;
|
|
886
|
-
const _component_BaseLoadingPhrases = phrases_default;
|
|
887
1321
|
const _component_ProjectAuthCredentials = credentials_default;
|
|
888
1322
|
const _component_ScenarioFixModal = modal_default;
|
|
889
1323
|
_push(ssrRenderComponent(_component_UContainer, mergeProps({
|
|
@@ -980,7 +1414,6 @@ var ____scenario__vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ de
|
|
|
980
1414
|
color: "neutral",
|
|
981
1415
|
variant: "soft",
|
|
982
1416
|
disabled: !unref(webdriver).connected,
|
|
983
|
-
loading: unref(writingAuth),
|
|
984
1417
|
"data-testid": "auth-gravar",
|
|
985
1418
|
onClick: recordLogin
|
|
986
1419
|
}, null, _parent, _scopeId));
|
|
@@ -1012,13 +1445,13 @@ var ____scenario__vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ de
|
|
|
1012
1445
|
slug: unref(slug),
|
|
1013
1446
|
class: "mt-6"
|
|
1014
1447
|
}, null, _parent, _scopeId));
|
|
1015
|
-
if (unref(
|
|
1448
|
+
if (unref(webdriver).error) {
|
|
1016
1449
|
_push(`<div class="mt-6 flex flex-col gap-3"${_scopeId}>`);
|
|
1017
1450
|
_push(ssrRenderComponent(_component_UAlert, {
|
|
1018
1451
|
color: "error",
|
|
1019
1452
|
variant: "soft",
|
|
1020
1453
|
"data-testid": "webdriver-erro",
|
|
1021
|
-
description: unref(
|
|
1454
|
+
description: unref(webdriver).error
|
|
1022
1455
|
}, null, _parent, _scopeId));
|
|
1023
1456
|
if (unref(webdriver).error?.includes("Chrome")) _push(ssrRenderComponent(_component_WebdriverSetup, null, null, _parent, _scopeId));
|
|
1024
1457
|
else _push(`<!---->`);
|
|
@@ -1080,10 +1513,10 @@ var ____scenario__vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ de
|
|
|
1080
1513
|
"data-testid": "cenario-eventos",
|
|
1081
1514
|
onResume: resumeFrom
|
|
1082
1515
|
}, null, _parent, _scopeId));
|
|
1083
|
-
if (unref(
|
|
1516
|
+
if (unref(webdriver).error) _push(ssrRenderComponent(_component_UAlert, {
|
|
1084
1517
|
color: "error",
|
|
1085
1518
|
variant: "soft",
|
|
1086
|
-
description: unref(
|
|
1519
|
+
description: unref(webdriver).error,
|
|
1087
1520
|
class: "mt-4",
|
|
1088
1521
|
"data-testid": "cenario-retomar-erro"
|
|
1089
1522
|
}, null, _parent, _scopeId));
|
|
@@ -1141,9 +1574,18 @@ var ____scenario__vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ de
|
|
|
1141
1574
|
"onUpdate:open": ($event) => isRef(editOpen) ? editOpen.value = $event : null,
|
|
1142
1575
|
slug: unref(slug),
|
|
1143
1576
|
scenario: unref(scenario),
|
|
1144
|
-
resumed: unref(resumed),
|
|
1145
1577
|
onUpdated
|
|
1146
1578
|
}, null, _parent, _scopeId));
|
|
1579
|
+
_push(ssrRenderComponent(_component_ScenarioReviewModal, {
|
|
1580
|
+
open: unref(reviewOpen),
|
|
1581
|
+
"onUpdate:open": ($event) => isRef(reviewOpen) ? reviewOpen.value = $event : null,
|
|
1582
|
+
slug: unref(slug),
|
|
1583
|
+
scenario: unref(scenario),
|
|
1584
|
+
"is-public": unref(isPublic),
|
|
1585
|
+
onGenerated: onReviewed,
|
|
1586
|
+
onRerecord: rerecord,
|
|
1587
|
+
onResume: resumeWith
|
|
1588
|
+
}, null, _parent, _scopeId));
|
|
1147
1589
|
_push(ssrRenderComponent(_component_ScenarioSuggestionsModal, {
|
|
1148
1590
|
open: unref(suggestionsOpen),
|
|
1149
1591
|
"onUpdate:open": ($event) => isRef(suggestionsOpen) ? suggestionsOpen.value = $event : null,
|
|
@@ -1167,42 +1609,6 @@ var ____scenario__vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ de
|
|
|
1167
1609
|
output: unref(runOutput),
|
|
1168
1610
|
onFix: requestFix
|
|
1169
1611
|
}, null, _parent, _scopeId));
|
|
1170
|
-
_push(ssrRenderComponent(_component_BaseModal, {
|
|
1171
|
-
open: unref(writingAuth),
|
|
1172
|
-
"onUpdate:open": ($event) => isRef(writingAuth) ? writingAuth.value = $event : null,
|
|
1173
|
-
dismissable: false,
|
|
1174
|
-
loading: ""
|
|
1175
|
-
}, {
|
|
1176
|
-
body: withCtx((_, _push, _parent, _scopeId) => {
|
|
1177
|
-
if (_push) _push(ssrRenderComponent(_component_BaseLoadingPhrases, {
|
|
1178
|
-
phrases: AUTH_PHRASES,
|
|
1179
|
-
"data-testid": "auth-carregando"
|
|
1180
|
-
}, null, _parent, _scopeId));
|
|
1181
|
-
else return [createVNode(_component_BaseLoadingPhrases, {
|
|
1182
|
-
phrases: AUTH_PHRASES,
|
|
1183
|
-
"data-testid": "auth-carregando"
|
|
1184
|
-
})];
|
|
1185
|
-
}),
|
|
1186
|
-
_: 1
|
|
1187
|
-
}, _parent, _scopeId));
|
|
1188
|
-
_push(ssrRenderComponent(_component_BaseModal, {
|
|
1189
|
-
open: unref(resuming),
|
|
1190
|
-
"onUpdate:open": ($event) => isRef(resuming) ? resuming.value = $event : null,
|
|
1191
|
-
dismissable: false,
|
|
1192
|
-
loading: ""
|
|
1193
|
-
}, {
|
|
1194
|
-
body: withCtx((_, _push, _parent, _scopeId) => {
|
|
1195
|
-
if (_push) _push(ssrRenderComponent(_component_BaseLoadingPhrases, {
|
|
1196
|
-
phrases: RESUME_PHRASES,
|
|
1197
|
-
"data-testid": "cenario-retomar-carregando"
|
|
1198
|
-
}, null, _parent, _scopeId));
|
|
1199
|
-
else return [createVNode(_component_BaseLoadingPhrases, {
|
|
1200
|
-
phrases: RESUME_PHRASES,
|
|
1201
|
-
"data-testid": "cenario-retomar-carregando"
|
|
1202
|
-
})];
|
|
1203
|
-
}),
|
|
1204
|
-
_: 1
|
|
1205
|
-
}, _parent, _scopeId));
|
|
1206
1612
|
_push(ssrRenderComponent(_component_ProjectAuthCredentials, {
|
|
1207
1613
|
open: unref(credentialsOpen),
|
|
1208
1614
|
"onUpdate:open": ($event) => isRef(credentialsOpen) ? credentialsOpen.value = $event : null,
|
|
@@ -1311,10 +1717,9 @@ var ____scenario__vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ de
|
|
|
1311
1717
|
color: "neutral",
|
|
1312
1718
|
variant: "soft",
|
|
1313
1719
|
disabled: !unref(webdriver).connected,
|
|
1314
|
-
loading: unref(writingAuth),
|
|
1315
1720
|
"data-testid": "auth-gravar",
|
|
1316
1721
|
onClick: recordLogin
|
|
1317
|
-
}, null, 8, ["disabled"
|
|
1722
|
+
}, null, 8, ["disabled"])) : createCommentVNode("", true),
|
|
1318
1723
|
unref(written) ? (openBlock(), createBlock(_component_UButton, {
|
|
1319
1724
|
key: 5,
|
|
1320
1725
|
label: "Testar",
|
|
@@ -1344,14 +1749,14 @@ var ____scenario__vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ de
|
|
|
1344
1749
|
slug: unref(slug),
|
|
1345
1750
|
class: "mt-6"
|
|
1346
1751
|
}, null, 8, ["warnings", "slug"]),
|
|
1347
|
-
unref(
|
|
1752
|
+
unref(webdriver).error ? (openBlock(), createBlock("div", {
|
|
1348
1753
|
key: 2,
|
|
1349
1754
|
class: "mt-6 flex flex-col gap-3"
|
|
1350
1755
|
}, [createVNode(_component_UAlert, {
|
|
1351
1756
|
color: "error",
|
|
1352
1757
|
variant: "soft",
|
|
1353
1758
|
"data-testid": "webdriver-erro",
|
|
1354
|
-
description: unref(
|
|
1759
|
+
description: unref(webdriver).error
|
|
1355
1760
|
}, null, 8, ["description"]), unref(webdriver).error?.includes("Chrome") ? (openBlock(), createBlock(_component_WebdriverSetup, { key: 0 })) : createCommentVNode("", true)])) : createCommentVNode("", true),
|
|
1356
1761
|
!unref(written) ? (openBlock(), createBlock("div", {
|
|
1357
1762
|
key: 3,
|
|
@@ -1417,11 +1822,11 @@ var ____scenario__vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ de
|
|
|
1417
1822
|
resumable: unref(webdriver).connected && !unref(webdriver).recording,
|
|
1418
1823
|
"data-testid": "cenario-eventos",
|
|
1419
1824
|
onResume: resumeFrom
|
|
1420
|
-
}, null, 8, ["events", "resumable"])), unref(
|
|
1825
|
+
}, null, 8, ["events", "resumable"])), unref(webdriver).error ? (openBlock(), createBlock(_component_UAlert, {
|
|
1421
1826
|
key: 2,
|
|
1422
1827
|
color: "error",
|
|
1423
1828
|
variant: "soft",
|
|
1424
|
-
description: unref(
|
|
1829
|
+
description: unref(webdriver).error,
|
|
1425
1830
|
class: "mt-4",
|
|
1426
1831
|
"data-testid": "cenario-retomar-erro"
|
|
1427
1832
|
}, null, 8, ["description"])) : createCommentVNode("", true)], 64)) : unref(tab) === "gherkin" ? (openBlock(), createBlock(_component_BaseCodefield, {
|
|
@@ -1473,14 +1878,28 @@ var ____scenario__vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ de
|
|
|
1473
1878
|
"onUpdate:open": ($event) => isRef(editOpen) ? editOpen.value = $event : null,
|
|
1474
1879
|
slug: unref(slug),
|
|
1475
1880
|
scenario: unref(scenario),
|
|
1476
|
-
resumed: unref(resumed),
|
|
1477
1881
|
onUpdated
|
|
1882
|
+
}, null, 8, [
|
|
1883
|
+
"open",
|
|
1884
|
+
"onUpdate:open",
|
|
1885
|
+
"slug",
|
|
1886
|
+
"scenario"
|
|
1887
|
+
]),
|
|
1888
|
+
createVNode(_component_ScenarioReviewModal, {
|
|
1889
|
+
open: unref(reviewOpen),
|
|
1890
|
+
"onUpdate:open": ($event) => isRef(reviewOpen) ? reviewOpen.value = $event : null,
|
|
1891
|
+
slug: unref(slug),
|
|
1892
|
+
scenario: unref(scenario),
|
|
1893
|
+
"is-public": unref(isPublic),
|
|
1894
|
+
onGenerated: onReviewed,
|
|
1895
|
+
onRerecord: rerecord,
|
|
1896
|
+
onResume: resumeWith
|
|
1478
1897
|
}, null, 8, [
|
|
1479
1898
|
"open",
|
|
1480
1899
|
"onUpdate:open",
|
|
1481
1900
|
"slug",
|
|
1482
1901
|
"scenario",
|
|
1483
|
-
"
|
|
1902
|
+
"is-public"
|
|
1484
1903
|
]),
|
|
1485
1904
|
createVNode(_component_ScenarioSuggestionsModal, {
|
|
1486
1905
|
open: unref(suggestionsOpen),
|
|
@@ -1525,30 +1944,6 @@ var ____scenario__vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ de
|
|
|
1525
1944
|
"playwright",
|
|
1526
1945
|
"output"
|
|
1527
1946
|
]),
|
|
1528
|
-
createVNode(_component_BaseModal, {
|
|
1529
|
-
open: unref(writingAuth),
|
|
1530
|
-
"onUpdate:open": ($event) => isRef(writingAuth) ? writingAuth.value = $event : null,
|
|
1531
|
-
dismissable: false,
|
|
1532
|
-
loading: ""
|
|
1533
|
-
}, {
|
|
1534
|
-
body: withCtx(() => [createVNode(_component_BaseLoadingPhrases, {
|
|
1535
|
-
phrases: AUTH_PHRASES,
|
|
1536
|
-
"data-testid": "auth-carregando"
|
|
1537
|
-
})]),
|
|
1538
|
-
_: 1
|
|
1539
|
-
}, 8, ["open", "onUpdate:open"]),
|
|
1540
|
-
createVNode(_component_BaseModal, {
|
|
1541
|
-
open: unref(resuming),
|
|
1542
|
-
"onUpdate:open": ($event) => isRef(resuming) ? resuming.value = $event : null,
|
|
1543
|
-
dismissable: false,
|
|
1544
|
-
loading: ""
|
|
1545
|
-
}, {
|
|
1546
|
-
body: withCtx(() => [createVNode(_component_BaseLoadingPhrases, {
|
|
1547
|
-
phrases: RESUME_PHRASES,
|
|
1548
|
-
"data-testid": "cenario-retomar-carregando"
|
|
1549
|
-
})]),
|
|
1550
|
-
_: 1
|
|
1551
|
-
}, 8, ["open", "onUpdate:open"]),
|
|
1552
1947
|
createVNode(_component_ProjectAuthCredentials, {
|
|
1553
1948
|
open: unref(credentialsOpen),
|
|
1554
1949
|
"onUpdate:open": ($event) => isRef(credentialsOpen) ? credentialsOpen.value = $event : null,
|
|
@@ -1594,4 +1989,4 @@ ____scenario__vue_vue_type_script_setup_true_lang_default.setup = (props, ctx) =
|
|
|
1594
1989
|
var ____scenario__default = ____scenario__vue_vue_type_script_setup_true_lang_default;
|
|
1595
1990
|
|
|
1596
1991
|
export { ____scenario__default as default };
|
|
1597
|
-
//# sourceMappingURL=_...scenario_-
|
|
1992
|
+
//# sourceMappingURL=_...scenario_-PVjOOR8j.mjs.map
|