diff --git a/src/server/playground/dist/bundle-css.css b/src/server/playground/dist/bundle-css.css new file mode 100644 index 00000000..818edf17 --- /dev/null +++ b/src/server/playground/dist/bundle-css.css @@ -0,0 +1,1937 @@ +/* css/index.css */ +:root { + --color-bg-base: var(--color-colonial-1); + --color-bg-primary: var(--color-blue-1); + --color-bg-primary-hover: var(--color-blue-1-hover); + --color-bg-secondary: var(--color-blue-2); + --color-text-base: var(--color-gray-4); + --color-success: #2a7e2e; + --color-error: #d92525; + --color-warning: #d92525; + --color-colonial-1: #fdf0d5; + --color-colonial-2: #e07016; + --color-green-1: #06d6a0; + --color-green-2: #a5dc86; + --color-blue-1: #003049; + --color-blue-2: #2b3b4e; + --color-blue-3: #669bbc; + --color-blue-4: #03a9f4; + --color-blue-1-hover: #a2978a; + --color-gray-1: #d1d5db; + --color-gray-2: #9e9e9e; + --color-gray-3: #1f2937; + --color-gray-4: #030712; + --base-font-family: sans-serif; + --headers-font-family: serif; + --base-font-lineheight: 1.5em; + --height-cnt--btn-send: 55px; +} +html, +body { + color: var(--color-text-base); + font-family: var(--base-font-family); + background-color: var(--color-bg-base); + font-weight: 300; + line-height: var(--base-font-lineheight); + -webkit-font-smoothing: antialiased; + width: 100%; + height: 100%; + margin: 0; + padding: 0; + overflow-x: hidden; +} +::-webkit-scrollbar { + width: 3px; +} +::-webkit-scrollbar-thumb { + background-color: #737d7a; + border-radius: 10px; +} +::-webkit-scrollbar-thumb:hover { + background: rgba(196, 194, 194, 0.83); + width: 15px; +} +*, +*::after, +*::before { + box-sizing: border-box; +} +h1 { + font-size: 24px; + color: gray; + margin-left: 2rem; +} +label { + color: #eeeeee; +} +input, +select { + padding: 5px 10px; + border-radius: 5px; + border: 2px solid white; + margin: 10px 0; + font-size: 1rem; + box-sizing: border-box; +} +input[type=number] { + -moz-appearance: textfield; +} +input::-webkit-outer-spin-button, +input::-webkit-inner-spin-button { + -webkit-appearance: none; + margin: 0; +} +textarea { + resize: none; +} +.input { + height: 35px; + border: 1px solid gainsboro; + background-color: rgba(70, 70, 70, 0.5); + border-radius: 10px; + cursor: pointer; + backdrop-filter: blur(10px); + color: gainsboro; +} +.input:hover { + border-color: bisque; +} +.input:focus { + outline: none; + background-color: rgba(220, 220, 220, 0.2); + color: bisque; +} +.input:focus::placeholder { + color: gainsboro; +} +.input::placeholder { + color: rgba(255, 255, 255, 0.4); +} +.cnt { + display: flex; +} +.sidebar { + display: flex; + flex-direction: column; + align-items: center; + justify-content: space-between; + height: 100vh; + background-color: var(--color-gray-3); + width: 20%; + padding: 0.5% 1.5%; + box-sizing: border-box; + border-right: 1px solid slategrey; + padding-top: 53px; +} +@media (min-width: 760px) and (max-width: 1025px) { + .sidebar { + width: 30%; + } +} +@media (min-width: 1025px) { + .sidebar { + width: 20%; + } +} +.sidebar__sections-wrapper { + width: 100%; +} +.sidebar__section { + margin-bottom: 10px; +} +.sidebar__section-heading { + color: gainsboro; + text-transform: capitalize; + align-self: flex-start; + padding: 10px 0; + position: relative; +} +.sidebar__section-heading::after { + position: absolute; + right: 0; + bottom: 7px; + content: ""; + height: 1px; + width: 100%; + background-color: gainsboro; + border-radius: 10px; +} +.sidebar__input-double { + display: flex; + margin-bottom: 25px; + gap: 1rem; + border-radius: 10px; + border: 1px solid #808080; + padding-bottom: 1.5rem; + position: relative; +} +.sidebar__section-body-heading, +.sidebar__section-capture { + padding: 0.5rem 2rem; +} +.sidebar__section-capture { + width: 40%; +} +.sidebar__section-body-heading { + position: relative; + width: 70%; + min-height: 50%; +} +.sidebar__section-body-heading::after { + content: ""; + position: absolute; + height: 95%; + right: 0; + top: 5%; + border-right: 1px solid #808080; +} +.sidebar__section-body-heading textarea { + width: 99%; + border-radius: 5px; + min-height: calc(100% - 3.6rem); +} +.repeat__number { + display: flex; + align-items: center; + gap: 1rem; + justify-content: space-between; +} +.repeat__number input { + width: 80%; +} +.repeat__number button { + background-color: rgba(70, 70, 70, 0.5); + color: lightcoral; + margin: 10px 0; + padding: 5px 15px; + font-size: 1.5rem; + cursor: pointer; + border-top: 1px solid bisque; + border-radius: 5px; +} +.sidebar__section-add-capture { + display: flex; + justify-content: space-between; + gap: 10px; + width: 100%; +} +.sidebar__section-add-capture input { + width: 50%; +} +.btn { + border: none; + padding: 8px; + border-radius: 5px; + text-transform: capitalize; +} +.btn--add { + background-color: var(--color-colonial-2); + color: white; + width: 100%; + margin: 10px 0; + cursor: pointer; + white-space: nowrap; +} +.btn__action { + position: fixed; + top: 0; + background-color: #2c2c2b; + width: 97%; + display: flex; + gap: 2rem; + height: 46px; +} +.btn__action button { + width: 25%; + height: 30px; +} +.select { + display: flex; + flex-direction: column; + position: relative; + margin: 10px 0; +} +.select[disabled=true] { + opacity: 0.6; + pointer-events: none; +} +.select--sub-buttons { + display: none; +} +.select--sub-buttons[data-show=true] { + display: flex; + flex-direction: column; + border: 1px solid gainsboro; + border-radius: 0 0 10px 10px; + background-color: rgba(70, 70, 70, 0.5); + backdrop-filter: blur(3px); + width: 100%; + margin-top: 35px; + position: absolute; + z-index: 5; + border-top: none; + box-sizing: border-box; +} +.select--empty { + display: flex; + justify-content: space-between; + align-items: center; + padding: 0 5px 0 10px; + height: 35px; + border: 1px solid gainsboro; + background-color: rgba(70, 70, 70, 0.5); + border-radius: 10px; + cursor: pointer; + backdrop-filter: blur(10px); + color: gainsboro; + box-sizing: border-box; +} +.select--empty:hover { + border-color: bisque; +} +.active-select--empty { + border-radius: 10px 10px 0 0; +} +.select--empty--left-side { + display: flex; + align-items: center; + gap: 10px; +} +.select-empty--left-side--clear { + color: lightcoral; + visibility: visible; +} +.select-empty--left-side--clear--inactive { + visibility: hidden; +} +.option { + width: 100%; + height: 35px; + cursor: pointer; + color: gainsboro; + border-bottom: 1px solid rgba(220, 220, 220, 0.4); + padding-left: 10px; + box-sizing: border-box; + line-height: 2.125rem; +} +.option:last-child { + border: none; +} +.option:hover { + background-color: rgba(255, 228, 196, 0.5); + color: black; +} +.active-option { + background-color: rgba(220, 220, 220, 0.5); + color: #021307; +} +.select--empty:hover .option { + opacity: 100; + background-color: #24123b; +} +.sidebar__select { + padding: 5px 10px; + font-size: 1rem; + border: none; + background-color: white; + border-radius: 5px; + width: 100%; +} +.url { + margin-bottom: 15px; +} +.url-title { + color: white; + border-bottom: 1px solid white; +} +.url-detail { + display: flex; + align-items: center; + justify-content: center; + gap: 15px; +} +.url-input { + width: 75%; + padding: 10px; + height: 43px; +} +.url-button { + width: 20%; + height: 31px; + margin-left: 15px; + background-color: var(--color-colonial-2); + color: white; +} +@media (min-width: 1024px) and (max-width: 1440px) { + .sidebar__section-add-capture { + flex-direction: column; + } + .sidebar__section-add-capture input { + margin: 0; + width: 100%; + } +} +.main-btn-wrapper { + position: absolute; + bottom: 30px; + display: flex; + flex-direction: column; + gap: 10px; +} +.btn-modal { + display: flex; + align-items: center; + left: 0; + cursor: pointer; + background-color: rgba(70, 70, 70, 0.5); + border: 1px solid bisque; + backdrop-filter: blur(10px); + border-radius: 0 7px 7px 0; + border-left: none; + transition: all 0.4s; + width: 3.125rem; + color: bisque; + align-items: center; + justify-content: center; + position: relative; + height: 50px; +} +.media--main-btn-wrapper { + display: none; +} +.btn-modal > svg { + position: absolute; + right: 0.5rem; + transition: all 0.8s; +} +.btn-modal > span { + opacity: 0; + margin-right: 0; + transition: all 0.4s; + white-space: nowrap; +} +.btn-modal:hover { + background-color: dimgray; + width: 8rem; +} +.btn-modal:hover > span { + opacity: 100; + margin-right: 1.6rem; +} +.btn-modal:hover > svg { + right: 0.4rem; +} +.btn-modal-document { + border-bottom: 1px solid bisque; + width: 5rem; + height: 0; + padding: 0; + backdrop-filter: blur(10px); + transition: all 0.4s; + color: bisque; + position: relative; +} +.btn-modal-document[data-show=true] { + width: 8rem; + transition: all 0.4s; +} +.btn-modal-document--title { + opacity: 0; +} +.btn-modal-document--title[data-show=true] { + position: absolute; + bottom: -10px; + left: 123px; + margin-right: 0; + margin-left: 10px; + transition: all 0.4s; + white-space: nowrap; + opacity: 100; +} +@media (max-height: 768px) { + .btn-modal { + height: 35px; + width: 100%; + border-radius: 5px; + border: none; + } + .btn-modal span { + opacity: 100; + margin-right: 0; + transition: all 0.4s; + white-space: nowrap; + } + .btn-modal > svg { + position: absolute; + right: 8px; + transition: all 0.8s; + } + .btn-modal:hover { + background-color: dimgray; + width: 100%; + } + .btn-modal:hover > svg { + right: 8px; + } + .main-btn-wrapper { + display: none; + } + .main-btn-wrapper[data-show=true] { + display: flex; + gap: 5px; + width: 28%; + left: 7px; + border: 1px solid bisque; + border-radius: 7px 7px 0 0; + border-bottom: none; + bottom: 0; + padding: 10px 10px 39px 10px; + backdrop-filter: blur(40px); + } + .media--main-btn-wrapper { + display: block; + position: absolute; + bottom: 0; + left: 33px; + width: 23%; + border: 1px solid gainsboro; + border-radius: 10px 10px 0 0; + background-color: rgba(70, 70, 70, 0.5); + color: bisque; + height: 28px; + font-size: medium; + border-bottom: none; + z-index: 5; + cursor: pointer; + } + .media--main-btn-wrapper:hover { + background-color: dimgray; + } + .btn-modal-document { + display: none; + } +} +@media (min-width: 1025px) { + .media--main-btn-wrapper { + width: 15%; + left: 2.5%; + } +} +.sidebar--fields { + width: 23%; + background-color: var(--color-bg-secondary); + position: relative; + padding-top: 53px; +} +@media (min-width: 760px) and (max-width: 1025px) { + .sidebar--fields { + width: 30%; + } +} +@media (min-width: 1025px) { + .sidebar--fields { + width: 30%; + } +} +.sidebar__section-heading--fields { + color: var(--color-gray-1); +} +.sidebar__section-heading--fields::after { + background-color: var(--color-gray-1); +} +.sidebar__section-heading--subfields { + padding: 0.2rem 0.2rem 0.2rem 1rem; + margin-bottom: 0.5rem; + color: var(--color-colonial-1); + font-weight: 400; + text-transform: capitalize; + align-self: flex-start; + border-bottom: 1px solid slategray; +} +.sidebar__section_container { + border: 1px solid slategray; + border-radius: 0.5rem; + margin-bottom: 0.3rem; + padding: 0.5rem; +} +.border-bottom { + border-bottom: 1px solid slategray; + margin-bottom: 0.5rem; +} +.form--fields { + width: 100%; + height: 100vh; + overflow-y: scroll; + padding-bottom: var(--height-cnt--btn-send); + -ms-overflow-style: none; + scrollbar-width: none; +} +.form--fields::-webkit-scrollbar { + display: none; +} +.input-cnt { + display: flex; + flex-direction: column; + justify-content: center; +} +.label--big { + font-size: 1.2rem; +} +.cnt--btn-send { + position: absolute; + display: flex; + justify-content: center; + align-items: center; + width: 100%; + bottom: 0; + right: 0; + background-color: var(--color-bg-secondary); + height: var(--height-cnt--btn-send); + box-shadow: 0px -5px 12px 0px var(--color-bg-secondary); + overflow: hidden; +} +.btn--send { + background-color: var(--color-blue-4); + width: 80%; + font-weight: bold; + text-transform: capitalize; + font-size: 1.1rem; +} +.wrapper { + position: absolute; + right: 0; + top: 93%; + background-color: var(--color-bg-secondary); + width: 100%; + height: 7%; +} +.send-button { + position: absolute; + top: 50%; + left: 50%; + transform: translate(-50%, -50%); + width: 85%; + height: 40px; + line-height: 1; + font-size: 18px; + letter-spacing: 1px; + border: 2px solid gainsboro; + background-color: rgba(70, 70, 70, 0.5); + color: bisque; + border-radius: 15px; + cursor: pointer; + overflow: hidden; + transition: all 0.35s; +} +.send-button:hover { + background-color: gainsboro; + color: #021307; + border: 2px solid rgba(70, 70, 70, 0.5); +} +.send-button span { + opacity: 1; + visibility: visible; + transition: all 0.35s; +} +.successe { + position: absolute; + top: 0; + left: 0; + width: 100%; + height: 100%; + background: #fff; + z-index: 1; + opacity: 0; + visibility: hidden; + transition: all 0.35s; +} +.successe svg { + width: 20px; + height: 20px; + fill: yellowgreen; + transform-origin: 50% 50%; + transform: translateY(-50%) rotate(0deg) scale(0); + transition: all 0.35s; +} +.send-button[data-active=true] { + width: 40px; + height: 40px; +} +.send-button[data-active=true] .successe { + opacity: 1; + visibility: visible; +} +.send-button[data-active=true] .successe svg { + margin-top: 50%; + transform: translateY(-50%) rotate(720deg) scale(1); +} +.send-button[data-active=true] span { + opacity: 0; + visibility: hidden; +} +.response { + display: flex; + flex-direction: column; + height: 100vh; + flex-grow: 1; + background-color: #272822; +} +@media (min-width: 760px) { + .response { + width: 40%; + } +} +.response-detail { + background-color: #272822; + display: flex; + flex-direction: column; + gap: 10px; + flex-grow: 1; + margin: 30px; + border: 1px solid white; + border-radius: 10px; + height: 90%; + position: relative; + margin-top: 80px; +} +.response-detail-button_title { + background-color: #105a86; + color: white; + position: relative; + padding: 10px; + border-radius: 10px 10px 0 0; + display: flex; +} +.response-detail-buttons { + display: flex; + gap: 10px; + position: absolute; + right: 80px; + top: 7px; +} +.response-detail-button { + cursor: pointer; + color: white; + display: flex; + justify-content: space-between; + padding: 0; + position: relative; +} +.response-detail-button .tooltip-text { + background-color: cornflowerblue; + white-space: nowrap; + width: 130px; + margin-left: -65px; + padding: 5px 5px; + transition: none; + top: 100%; + margin-top: 5px; + height: fit-content; +} +.response-detail-button:hover svg { + fill: bisque; +} +.response-detail-button .tooltip-text::after { + top: -10px; + border-color: transparent transparent rgb(255, 255, 255) transparent; +} +.response-detail-button:hover .tooltip-text { + visibility: visible; + opacity: 1; +} +.response-detail-title { + margin: 0; + font-size: 20px; +} +.response-detail-info { + padding: 0 10px; + overflow-wrap: anywhere; + overflow-y: scroll; +} +.response-took { + position: absolute; + top: 50px; + right: 15px; + color: #ffe4c496; +} +.success { + border-radius: 10px; + background-color: rgb(255, 255, 255); + width: 15px; + height: 15px; + position: absolute; + right: 30px; + top: 15px; + animation-name: success; + animation-duration: 1s; + animation-iteration-count: infinite; + animation-timing-function: cubic-bezier(0.45, 0.05, 0.55, 0.95); +} +@keyframes success { + 0% { + background-color: rgb(255, 255, 255); + } + 50% { + background-color: green; + } +} +.fail { + background-color: rgb(255, 255, 255); + border-radius: 10px; + width: 15px; + height: 15px; + position: absolute; + right: 30px; + top: 15px; + animation-name: fail; + animation-duration: 800ms; + animation-iteration-count: infinite; + animation-timing-function: cubic-bezier(0.45, 0.05, 0.55, 0.95); +} +@keyframes fail { + 0% { + background-color: rgb(255, 255, 255); + } + 50% { + background-color: red; + } + 70% { + background-color: rgb(255, 255, 255); + } + 100% { + background-color: rgb(255, 255, 255); + } +} +@media (min-width: 760px) and (max-width: 1024px) { + .response-detail-buttons { + right: 33px; + } + .fail { + right: 10px; + } + .success { + right: 10px; + } +} +.modal-overlay { + z-index: 9999; + width: 100vw; + height: 100vh; + position: absolute; + top: 0; + left: 0; + background: rgba(0, 0, 0, 0.79); + display: flex; + justify-content: center; + align-items: center; + backdrop-filter: blur(1px); +} +.modal-box-fullscreen { + display: block; + background: rgb(80, 80, 80, 0.5); + width: 100%; + height: calc(100% - 3rem); + padding: 1rem; + border-radius: 0.8rem; + overflow: visible; + backdrop-filter: blur(10px); + border: 1px solid white; + box-sizing: border-box; + position: relative; +} +.modal-box { + display: block; + background: rgb(80, 80, 80, 0.5); + width: 80%; + height: 80%; + padding: 1rem; + border-radius: 0.8rem; + overflow: visible; + backdrop-filter: blur(10px); + border: 1px solid white; + box-sizing: border-box; + position: relative; +} +.modal-content { + overflow-y: scroll; + width: 100%; + height: 100%; +} +.e2e { + display: flex; + flex-direction: column; + gap: 7px; +} +.pagination--item[data-show=true] { + color: gold; +} +.sidebar__section--headers { + margin-top: 50px; +} +.e2e_sidebar__section-heading { + color: gainsboro; + text-transform: capitalize; + align-self: flex-start; + padding: 10px 0; + position: relative; +} +.e2e_sidebar__section-heading::after { + position: absolute; + right: 0; + bottom: 7px; + content: ""; + height: 2px; + width: 100%; + background-color: bisque; + border-radius: 10px; +} +.e2e-move-buttons { + display: flex; + gap: 5px; + margin-top: -1.3rem; + position: absolute; + right: 1.5rem; +} +.e2e-move-div { + display: flex; + gap: 7px; + justify-content: center; + align-items: center; + cursor: pointer; + background-color: none; + padding: 6px; + color: bisque; +} +.e2e-move-div svg:hover { + background-color: dimgray; +} +.e2e-move-div.e2e-move-close svg:hover { + background-color: brown; +} +.e2e-move-div svg { + border-radius: 50%; + backdrop-filter: blur(10px); + width: 30px; +} +.e2e-back-button { + display: flex; + gap: 7px; + justify-content: center; + align-items: center; + cursor: pointer; + background-color: rgba(70, 70, 70, 0.5); + border-radius: 0 0 10px 10px; + padding: 6px; + font-size: 15px; + color: bisque; + border: 1px solid bisque; + backdrop-filter: blur(10px); + border-top: none; +} +.e2e-back-button.e2e-run-botton { + background-color: darkslategray; +} +.e2e-back-button:hover { + background-color: dimgray; +} +.e2e-add-capture { + border-top: 1px solid bisque; + border-radius: 5px; + padding: 8px; + width: 100%; + margin: 10px 0; + white-space: nowrap; +} +.btn-e2e-action { + left: 150px; + display: flex; + justify-content: space-around; + transition: all 0.8s; +} +.e2e-export_results-button-hide { + display: none; +} +.btn-show-results-buttons { + display: none; +} +.actionShow-btn { + display: none; +} +.e2e-export-form-button { + color: black; + font-size: 14px; +} +.results { + margin-top: 5px; +} +.results-buttons { + position: absolute; + top: 0; + display: flex; + width: 70%; + gap: 20px; + z-index: 1; +} +.help .e2e-back-button { + position: absolute; + top: 0; +} +.e2e-re-timeNumber-request { + position: absolute; + right: 1rem; + color: bisque; + font-size: 12px; +} +.e2e_help-content { + color: gainsboro; + padding: 1rem; + border: 1px solid gainsboro; + margin-top: 2rem; + border-radius: 0.5rem; +} +.e2e_help--fullscreen-img { + width: 95%; + margin-left: 2.5%; + border: 1px solid gainsboro; + border-radius: 0.5rem; +} +.e2e_help--section---right-side { + margin-top: 1rem; + display: flex; + gap: 1rem; +} +.e2e_help--section---right-side > img { + flex: 1; +} +.e2e_help--section---right-side > p { + flex: 1; +} +.myBtn { + display: block; + position: fixed; + bottom: 20px; + right: 30px; + z-index: 99; + border: none; + outline: none; + background: none; + color: white; +} +.myBtn .tooltip-text { + background-color: rgb(236 237 215 / 1); + color: darkred; + border: 1px solid darkred; +} +.myBtn .tooltip-text::after { + border-color: darkred transparent transparent transparent; +} +.myBtn-active { + border: 1px solid darkred; + outline: none; + color: white; + cursor: pointer; + border-radius: 50%; + background-color: rgb(236 237 215 / 0.9); + width: 2.5rem; + height: 2.5rem; + border: 1px solid whiItesmoke; + cursor: pointer; + border-radius: 50%; +} +.none { + display: none; +} +.myBtn-active:hover { + background-color: rgb(236 237 215 / 1); +} +.detail-requests { + display: flex; + justify-content: space-between; + align-items: flex-end; + gap: 2rem; + margin: 0 2rem; +} +.sequence-re { + width: 50%; + background-color: rgba(147, 147, 147, 0.1); + border-radius: 10px 0 0 10px; + position: relative; +} +.sequence-response { + background-color: #2b3b4e; + border-radius: 0 10px 10px 0; + border-left: 1px solid gainsboro; +} +.detail-sequence { + padding: 1rem; + color: red; +} +.detail-sequence p { + color: bisque; +} +.detail-sequence p span { + color: #f1fa8c; +} +.schema-modal { + width: 97%; + margin: 2rem auto 0 auto; +} +.schema-modal .search-box { + display: flex; + align-items: center; + background-color: #eeeeee54; + padding: 0 2px 0 10px; + border-radius: 5px; + width: 80%; + margin: 0 auto; +} +.schema-modal .search-box input { + width: 100%; +} +.schema-modal .search-box .search-icon { + padding: 7px; +} +.schema-modal .schema-list { + margin-top: 3rem; + display: flex; + flex-direction: column; + gap: 1rem; +} +.schema { + background: rgba(79, 79, 79, 0.79); + border-left: 2px dotted #f8f8f2; + border-radius: 0 7px 7px 0; +} +.schema-list .schema .schema-name { + display: flex; + justify-content: space-between; + align-items: center; + gap: 5px; + color: #fff; + padding: 5px 30px; + cursor: pointer; +} +.schema-title { + margin: 5px 0 2px 0; + color: bisque; +} +.schema-type { + position: absolute; + top: 0; + right: 60px; + color: #dcdcdc75; +} +.schema-help { + cursor: pointer; + color: white; + display: flex; + justify-content: space-between; + padding: 0; + position: relative; +} +.schema-help .tooltip-text { + background-color: rgba(70, 70, 70, 0.5); + white-space: nowrap; + width: 300px; + margin-left: -150px; + padding: 5px 5px; + transition: none; + bottom: 130%; + margin-top: 5px; + height: fit-content; + text-align: unset; + border: 1px solid gainsboro; + backdrop-filter: blur(10px); +} +.schema-help .tooltip-text::after { + top: 100%; + border-color: bisque transparent transparent transparent; +} +.schema-help:hover .tooltip-text { + visibility: visible; + opacity: 1; +} +.schema-info { + display: flex; + gap: 135px; +} +.schema-pointer { + cursor: pointer; +} +.schema-list .schema .inside-schema { + margin: 0 0 0 15px; + padding: 10px; + color: #fff; +} +.proceed-child-container { + display: none; + margin: 0 10px 10px 0; +} +.proceed-child { + display: none; +} +.open { + display: block; +} +.schema .inside-schema .inside { + display: flex; + justify-content: space-between; + align-items: center; + position: relative; +} +.color-1 { + border-left: 2px dotted rgb(109, 18, 13); + background-color: rgba(109, 18, 13, 0.1); +} +.color-2 { + border-left: 2px dotted rgb(194, 173, 67); + background-color: rgba(194, 173, 67, 0.1); +} +.color-3 { + border-left: 2px dotted rgb(20, 189, 43); + background-color: rgba(20, 189, 43, 0.1); +} +.color-4 { + border-left: 2px dotted rgb(21, 66, 189); + background-color: rgba(21, 66, 189, 0.1); +} +.color-5 { + border-left: 2px dotted rgb(94, 21, 189); + background-color: rgba(94, 21, 189, 0.1); +} +.color-6 { + border-left: 2px dotted rgb(189, 21, 116); + background-color: rgba(189, 21, 116, 0.1); +} +.color-7 { + border-left: 2px dotted rgb(8, 168, 217); + background-color: rgb(8, 168, 217, 0.1); +} +.setting { + overflow: hidden; +} +@media (max-width: 1025px) { + .results-buttons { + display: none; + } + .results-buttons[data-show=true] { + display: flex; + flex-direction: column; + width: 20%; + background-color: rgba(29, 32, 30, 0.8); + padding: 1rem; + border: 1px solid bisque; + backdrop-filter: blur(10px); + border-radius: 0 0 10px 10px; + padding-top: 3rem; + } + .btn-e2e-action { + border: none; + border-radius: 10px; + width: 100%; + height: 35px; + background-color: rgb(61, 61, 61); + white-space: nowrap; + font-size: 12px; + transform: background 200ms ease; + justify-content: space-between; + padding: 2px 8px; + } + .btn-e2e-action span { + transition: all 0.5s; + } + .btn-e2e-action:hover span { + margin-right: 15px; + } + .btn-e2e-action svg { + width: 18px; + } + .e2e-run-botton span { + font-size: 10px; + } + .btn-show-results-buttons { + display: flex; + cursor: pointer; + background-color: rgba(70, 70, 70, 0.3); + border-radius: 0 0 10px 10px; + padding: 6px; + font-size: 15px; + color: bisque; + border: 1px solid bisque; + position: absolute; + left: 2rem; + top: 0; + width: 16%; + justify-content: center; + z-index: 100; + } + .actionShow-btn { + display: flex; + } + .e2e-add-capture { + font-size: 11px; + } + .setting { + overflow-y: scroll; + } +} +.setting_fetch-config--apply-button { + width: 6rem; + border-radius: 7px; +} +.setting_heading { + display: flex; + align-items: end; + justify-content: space-between; +} +.setting_heading--title { + flex-grow: 1; +} +.setting_add-header--button { + border-bottom: none; + margin-bottom: 0; + border-radius: 7px 7px 0 0; + margin-right: 19px; + width: unset; +} +.setting_container--setheaders { + position: relative; + display: flex; + flex-direction: column; +} +.setting_set-headers { + display: flex; + flex-direction: column; + margin-bottom: 25px; + gap: 1rem; + border-radius: 10px; + border: 1px solid #808080; + padding-bottom: 1.5rem; + position: relative; + overflow-y: scroll; + height: 40vh; + margin-top: 5px; + padding-bottom: 65px; + padding-top: 5px; +} +.setting_set-headers--inputs { + display: flex; + padding: 0 10px; + gap: 10px; + border: 1px solid bisque; + margin: 20px 20px 5px 20px; + border-radius: 7px; + position: relative; +} +.setting__set-headers--key-value { + display: flex; + gap: 10px; + align-items: center; + color: white; + padding: 5px; +} +.setting__set-headers--key { + width: 25%; +} +.setting__set-headers--value { + flex-grow: 1; +} +.setting_set-headers--inputs--key { + width: 75%; + cursor: text; +} +.setting_set-headers--inputs--value { + flex-grow: 1; + cursor: text; +} +.setting_set-headers--delete-button { + position: absolute; + right: 0; + top: -25px; +} +.setting_set-headers--apply-button { + width: 6rem; + margin-right: 31px; + border-radius: 7px; + position: absolute; + bottom: 0; + right: -10px; + margin-bottom: 40px; +} +.container-e2e { + border-radius: 7px; + border: 1px solid bisque; + padding: 0.1rem 1rem; + display: flex; + justify-content: space-between; + align-items: center; + margin: 1.5rem 0 0.5rem 0; + cursor: pointer; + font-size: 12px; +} +.container-e2e span { + color: bisque; + height: 20px; +} +.container-detail { + display: flex; + justify-content: space-between; + width: 100%; + margin-bottom: 17px; + border: 1px solid gainsboro; + border-radius: 10px; + margin-top: 5px; +} +.container-re { + overflow-wrap: anywhere; + width: 50%; + background-color: rgba(147, 147, 147, 0.1); + border-radius: 10px 0 0 10px; + position: relative; +} +.container-re-detail { + display: flex; + justify-content: space-between; + align-items: baseline; + color: white; +} +.container-re--header { + display: flex; + align-items: center; + border-bottom: 1px solid gainsboro; + padding: 5px; + background-color: rgba(20, 20, 20, 0.1); +} +.container-re--header--icon { + display: flex; + position: absolute; + left: 10px; + cursor: pointer; +} +.history-re-delete { + position: absolute; + right: 25px; + bottom: 13px; + cursor: pointer; + z-index: 5; + height: 100%; +} +.history-re-delete svg { + backdrop-filter: blur(10px); + border-radius: 50%; +} +.container-re-detail-title { + display: flex; + color: white; + align-items: baseline; +} +.history-re-detail-date { + font-size: 11px; + position: absolute; + right: 12px; + top: 0; + color: white; +} +.history-response-took { + left: 12px; +} +.history-response-title { + border-radius: 0 10px 0 0; +} +.history-re-detail-collapse { + padding-right: 2.5rem; +} +.history-re-detail-button { + margin-right: 2.5rem; + background-color: gainsboro; + border: none; + border-radius: 5px; + color: #141414; + padding: 5px 10px; + display: flex; + justify-content: center; + align-items: center; + gap: 10px; + cursor: pointer; + width: 78px; + white-space: nowrap; +} +.history-re-detail-button-icon { + width: 10px; + display: inline-block; + font-size: 20px; + margin-right: 5px; +} +.history-re-response-title { + display: flex; + align-items: center; + padding-left: 15px; +} +.history-re-response-title-status { + position: relative; + bottom: 2px; +} +.history-re-detail-complete { + display: none; +} +.history-re-detail-complete[data-show=true] { + display: block; +} +.container-response { + background-color: rgba(7, 148, 191, 0.1); + border-radius: 0 10px 10px 0; + border-left: 1px solid gainsboro; +} +.container-re-title { + text-align: center; + width: 100%; + display: inline-block; + color: bisque; +} +.history-re-title_date { + position: relative; + border-right: 1px solid bisque; +} +.clear-history { + position: absolute; + bottom: 20px; + left: 27px; + display: flex; + justify-content: end; + z-index: 5; +} +.clear-history-button { + border-radius: 50%; + background-color: rgba(139, 0, 0, 0.9); + width: 2.5rem; + height: 2.5rem; + border: 1px solid whiItesmoke; + cursor: pointer; + border: 1px solid white; +} +.clear-history-button:hover { + background-color: rgba(139, 0, 0, 1); +} +.tooltip { + position: relative; + display: inline; +} +.tooltip-text { + visibility: hidden; + width: 100px; + background-color: darkred; + color: #fff; + text-align: center; + border-radius: 6px; + padding: 5px 0; + position: absolute; + z-index: 1; + bottom: 110%; + left: 50%; + margin-left: -50px; + opacity: 0; + transition: opacity 1s; +} +.tooltip:hover .tooltip-text { + visibility: visible; + opacity: 1; +} +.tooltip-text::after { + content: " "; + position: absolute; + top: 100%; + left: 50%; + margin-left: -5px; + border-width: 5px; + border-style: solid; + border-color: rgb(255, 255, 255) transparent transparent transparent; +} +.action-modal { + display: flex; + align-items: center; + gap: 1rem; + position: absolute; + top: -1.35rem; + right: 1.5rem; +} +.modal-title { + margin: 0 1rem; + display: inline-block; + padding: 0.5rem; + background: rgba(0, 0, 0, 0.79); + color: white; + border: 1px solid white; + box-sizing: border-box; + border-radius: 1rem; + backdrop-filter: blur(10px); + z-index: 7; +} +.modal-fullscreen { + width: 25px; + height: 25px; + border-radius: 50%; + background-color: red; + transition: visibility 200ms ease; +} +.modal-close, +.modal-fullscreen { + display: flex; + width: 20px; + height: 20px; + border-radius: 50%; + background-color: rgba(245, 35, 35, 0.5); + transition: visibility 200ms ease; + border: 1px solid gainsboro; + cursor: pointer; + color: #fff; + backdrop-filter: blur(10px); + -webkit-backdrop-filter: blur(10px); +} +.modal-fullscreen { + background-color: rgba(66, 196, 66, 0.5); +} +.modal-close svg, +.modal-fullscreen svg { + opacity: 0; + width: 20px; + height: 20px; +} +.modal-fullscreen svg { + width: 13px; + display: flex; + margin: auto; +} +.modal-close svg path:first-child { + display: none; +} +.modal-close svg path { + stroke: #fff; +} +.modal-close:hover, +.modal-fullscreen:hover { + opacity: 1; +} +.modal-close:hover svg, +.modal-fullscreen:hover svg { + opacity: 1; +} +.no-history { + background-color: lightslategrey; + font-size: 1.5rem; + margin: 250px 10px; + display: flex; + justify-content: center; + border-radius: 10px; + padding: 10px; +} +.tabs-container { + display: flex; + gap: 10px; + width: 100%; + position: fixed; + background-color: #232724; + z-index: 5; + padding: 8px 8px 8px 8px; + border-bottom: 1px solid gainsboro; + overflow-y: scroll; +} +.tab-name { + color: gainsboro; + padding: 5px; + border-radius: 5px; + cursor: default; + max-width: 200px; + min-width: 55px; + flex-grow: 1; + position: relative; + text-overflow: ellipsis; + white-space: nowrap; + overflow: hidden; +} +.tab-name:hover { + background-color: #303632; +} +.tab-name[data-tab=true] { + background-color: #1d201e; + border: 1px solid gainsboro; +} +.add-tab { + color: gainsboro; + align-self: center; + font-size: 1.4rem; + width: 1.8rem; + text-align: center; + padding: 5px; + cursor: pointer; + border-radius: 5px; +} +.add-tab:hover { + background-color: #56615a; +} +.tab-close { + font-size: 1rem; + line-height: 0.8rem; + position: absolute; + right: 0.5rem; + color: gainsboro; + align-self: center; + width: 1.8rem; + text-align: center; + padding: 5px; + cursor: pointer; + border-radius: 5px; +} +.tab-name[data-tab=true]:hover .tab-close { + background-color: #1d201e; +} +.tab-name[data-tab=true]:hover .tab-close:hover { + background-color: #434c46; +} +.tab-name:hover .tab-close { + background-color: #303632; +} +.tab-name:hover .tab-close:hover { + background-color: #262b28; +} +.tab-name[data-tab=true] .tab-close { + background-color: #1d201e; +} +.tab-name .tab-close { + background-color: #232724; +} +.cute-string { + color: #f1fa8c; +} +.cute-number { + color: #50fa7b; +} +.cute-boolean { + color: #ff79c6; +} +.cute-function { + color: #bd93f9; +} +.cute-null { + color: #bd93f9; +} +.cute-undefined { + color: #bd93f9; +} +.cute-key { + color: #66d9ef; + margin-right: 5px; +} +.cute-colon { + color: #f8f8f2; + margin-left: 1px; +} +.get-items { + display: flex; + justify-content: space-between; + flex-direction: row; + padding: 0.3rem 0; + flex-flow: row wrap; +} +.get-values { + display: flex; + border: 1px solid gainsboro; + border-radius: 10px; + margin-bottom: 5px; +} +.get-values span { + width: 1.5rem; + cursor: pointer; + padding: 0.2rem; + text-align: center; + color: bisque; +} +.get-values span:first-child { + background-color: rgba(129, 123, 123, 0.5); + border-left: none; + border-radius: 10px 0 0 10px; +} +.get-values span:first-child:hover { + background-color: #666666; +} +.get-values span:nth-child(2) { + background-color: #464646; + border-left: 1px solid gainsboro; +} +.get-values span:nth-child(2):hover { + background-color: #666666; +} +.get-values span:nth-child(3) { + background-color: #333; + border-left: 1px solid gainsboro; + border-radius: 0 10px 10px 0; +} +.get-values span:nth-child(3):hover { + background-color: #666666; +} +.get-values span.active { + background-color: gainsboro; + color: #021307; +} +.multi-select__wrapper { + position: relative; +} +.multi-select__field { + background-color: rgba(70, 70, 70, 0.5); + min-height: 35px; + padding: 5px 5px 5px 10px; + border-radius: 10px; + border: 1px solid #dcdcdc; + margin: 10px 0; + font-size: 16px; + box-sizing: border-box; + width: 100%; + display: flex; + flex-wrap: wrap; +} +.multi-select__selected-item-wrapper { + -webkit-box-align: center; + align-items: center; + display: flex; + flex: 1 1 0%; + flex-wrap: wrap; + position: relative; + overflow: hidden; + box-sizing: border-box; +} +.multi-select__icons-wrapper { + -webkit-box-align: center; + align-items: center; + align-self: stretch; + display: flex; + flex-shrink: 0; + box-sizing: border-box; +} +.multi-select__arrow-icon-wrapper { + display: flex; + position: relative; + transition: color 150ms ease 0s; + color: #dcdcdc; + padding-left: 4px; + box-sizing: border-box; +} +.multi-select__arrow-icon-wrapper::before { + content: ""; + position: absolute; + left: 0; + top: 0; + width: 1px; + background-color: var(--color-bg-primary-hover); + height: 100%; +} +.multi-select__arrow-icon { + stroke-width: 0; +} +.multi-select__close-icon-wrapper { + display: flex; + transition: color 150ms ease 0s; + color: #dcdcdc; + padding-left: 4px; + padding-right: 4px; + box-sizing: border-box; +} +.multi-select__close-icon { + stroke-width: 0; +} +.multi-select__selected-item { + color: black; + display: flex; + min-width: 0rem; + background-color: var(--color-bg-primary-hover); + border-radius: 5px; + margin: 0.125rem; + box-sizing: border-box; +} +.multi-select__selected-item-text { + overflow: hidden; + text-overflow: ellipsis; + white-space: nowrap; + border-radius: 5px; + font-size: 85%; + padding: 0 3px 0 6px; + box-sizing: border-box; + cursor: default; +} +.multi-select__selected-item-btn { + -webkit-box-align: center; + align-items: center; + display: flex; + border-radius: 5px; + padding-left: 4px; + padding-right: 4px; + box-sizing: border-box; + cursor: pointer; +} +.multi-select__selected-item-btn:hover { + background-color: var(--color-bg-primary-hover); + color: var(--color-error); +} +.multi-select__options { + position: absolute; + top: 100%; + right: 0; + left: 0; + background-color: rgba(70, 70, 70, 0.5); + backdrop-filter: blur(3px); + max-height: 175px; + overflow-y: auto; + box-shadow: -10px 10px 15px 0px rgba(0, 0, 0, 0.1); + border-radius: 10px; + padding: 10px 0; + border: 1.2px solid #dcdcdc; + z-index: 1; +} +.multi-select__option { + position: relative; + cursor: pointer; +} +.multi-select__option-label { + display: flex; + align-items: center; + padding: 5px 10px; + color: #dcdcdc; + overflow: hidden; + width: 100%; + box-sizing: border-box; + text-overflow: ellipsis; + display: block; + white-space: nowrap; +} +.multi-select__option--no-option { + cursor: default; + display: flex; + align-items: center; + justify-content: center; + padding: 5px 10px; + color: #dcdcdc; + font-weight: bold; +} +.multi-select__option::after { + content: ""; + position: absolute; + bottom: 0; + height: 1px; + width: 100%; + background-color: rgba(220, 220, 220, 0.4); +} +.multi-select__option:first-child::before { + content: ""; + position: absolute; + top: 0; + height: 1px; + width: 100%; + background-color: rgba(220, 220, 220, 0.4); +} +.multi-select__option:hover { + background-color: rgba(255, 228, 196, 0.5); +} +.multi-select__option:hover .multi-select__option-label { + color: black; +} +.multi-select__option > input { + cursor: pointer; +} diff --git a/src/server/playground/dist/bundle-es.js b/src/server/playground/dist/bundle-es.js index 2293a4eb..88188ba6 100644 --- a/src/server/playground/dist/bundle-es.js +++ b/src/server/playground/dist/bundle-es.js @@ -1,4 +1,4 @@ -import{createContext as Re,Fragment as q,h as e,hydrate as Me}from"https://esm.sh/preact@10.5.15";import{useCallback as x,useContext as Oe,useEffect as $,useMemo as Le,useReducer as Fe,useRef as W,useState as C}from"https://esm.sh/preact@10.5.15/hooks";var A=()=>Date.now().toString(36)+Math.random().toString(36).substr(2);var et={tabsData:[{service:"",schema:"",act:"",postFields:{},getFields:{},formData:{},response:null}],activeTab:0,setActiveTab:()=>({}),addTab:()=>({}),closeTab:()=>({}),setTabsData:()=>({})},tt={schemasObj:{},actsObj:{},setService:()=>({}),setMethod:()=>({}),setSchema:()=>({}),setAct:()=>({}),setActsObj:()=>({}),setSchemasObj:()=>({}),setPostFields:()=>({}),resetPostFields:()=>({}),setGetFields:()=>({}),resetGetFields:()=>({}),setFormData:()=>({}),setResponse:()=>({})},st={history:[],deleteItemHistory:()=>({}),setHistory:()=>({})},at={headers:{Authorization:""},setHeader:()=>({})},ue=()=>({id:A(),bodyHeaders:` +import{createContext as Me,Fragment as O,h as e,hydrate as he}from"https://esm.sh/preact@10.5.15";import{useCallback as k,useContext as Oe,useEffect as L,useMemo as Ie,useReducer as Le,useRef as U,useState as y}from"https://esm.sh/preact@10.5.15/hooks";var F=()=>Date.now().toString(36)+Math.random().toString(36).substr(2);var tt={tabsData:[{service:"",schema:"",act:"",postFields:{},getFields:{},formData:{},response:null}],activeTab:0,setActiveTab:()=>({}),addTab:()=>({}),closeTab:()=>({}),setTabsData:()=>({})},st={schemasObj:{},actsObj:{},setService:()=>({}),setMethod:()=>({}),setSchema:()=>({}),setAct:()=>({}),setActsObj:()=>({}),setSchemasObj:()=>({}),setPostFields:()=>({}),resetPostFields:()=>({}),setGetFields:()=>({}),resetGetFields:()=>({}),setFormData:()=>({}),setResponse:()=>({})},at={history:[],deleteItemHistory:()=>({}),setHistory:()=>({})},ot={headers:{Authorization:""},setHeader:()=>({})},ue=()=>({id:F(),bodyHeaders:` { "headers": { "Content-Type": "application/json", @@ -17,7 +17,7 @@ import{createContext as Re,Fragment as q,h as e,hydrate as Me}from"https://esm.s } } } - `,repeat:1,captures:[]}),ot={e2eForms:[ue()],setE2eForms:()=>({}),addE2eForm:()=>({})},nt={modal:null,setModal:()=>({})},ge={...et,...tt,...st,...at,...ot,...nt};function Ie(a,s){let{type:t,payload:o}=s;switch(t){case"SET_SELECTED_SERVICE":{let i=[...a.tabsData];return i[o.index]={...i[o.index],service:o.data},{...a,tabsData:[...i]}}case"SET_SCHEMA":{let i=[...a.tabsData];return i[o.index]={...i[o.index],schema:o.data},{...a,tabsData:[...i]}}case"SET_ACT":{let i=[...a.tabsData];return i[o.index]={...i[o.index],act:o.data},{...a,tabsData:[...i]}}case"SET_POST_FIELDS":{let i=[...a.tabsData];return i[o.index]={...i[o.index],postFields:o.data},{...a,tabsData:[...i]}}case"RESET_POST_FIELDS":{let i=[...a.tabsData];return i[o]={...i[o],postFields:{}},{...a,tabsData:[...i]}}case"SET_GET_FIELDS":{let i=[...a.tabsData];return i[o.index]={...i[o.index],getFields:o.data},{...a,tabsData:[...i]}}case"RESET_GET_FIELDS":{let i=[...a.tabsData];return i[o]={...i[o],getFields:{}},{...a,tabsData:[...i]}}case"SET_FORM_DATA":{let i=[...a.tabsData];return i[o.index]={...i[o.index],formData:o.data},{...a,tabsData:[...i]}}case"SET_HEADER":return{...a,headers:o};case"ADD_HISTORY":return{...a,history:o};case"SET_TABS_DATA":return{...a,tabsData:o};case"SET_RESPONSE":{let i=[...a.tabsData];return i[o.index]={...i[o.index],response:o.data},{...a,tabsData:[...i]}}case"ADD_TAB":return{...a,tabsData:[...a.tabsData,{service:"",schema:"",act:"",postFields:{},getFields:{},formData:{},response:null}],activeTab:a.tabsData.length};case"SET_ACTIVE_TAB":return{...a,activeTab:o};case"CLOSE_TAB":{let i=[...a.tabsData];return i.length>1&&i.splice(o,1),{...a,tabsData:[...i],activeTab:i.length>=1&&a.activeTab>=o&&a.activeTab!==0?a.activeTab-1:a.activeTab}}case"DELETE_ITEM_HISTORY":return{...a,history:a.history.slice(0,o).concat(a.history.slice(o+1))};case"SET_ACTS_OBJ":return{...a,actsObj:o};case"SET_SCHEMAS_OBJ":return{...a,schemasObj:o};case"SET_E2E_FORMS":return{...a,e2eForms:o};case"ADD_E2E_FORM":return{...a,e2eForms:[...a.e2eForms,o]};case"OPEN_MODAL":return{...a,modal:o};default:throw new Error("Unhandled action type")}}var fe=Re(ge),He=a=>{let[s,t]=Fe(Ie,ge),o=x(c=>t({type:"SET_SELECTED_SERVICE",payload:c}),[t]),i=x(c=>t({type:"SET_SCHEMA",payload:c}),[t]),u=x(c=>t({type:"SET_ACT",payload:c}),[t]),p=x(c=>t({type:"SET_POST_FIELDS",payload:c}),[t]),l=x(c=>t({type:"RESET_POST_FIELDS",payload:c}),[t]),r=x(c=>t({type:"SET_GET_FIELDS",payload:c}),[t]),b=x(c=>t({type:"RESET_GET_FIELDS",payload:c}),[t]),N=x(c=>t({type:"SET_FORM_DATA",payload:c}),[t]),y=x(c=>t({type:"SET_ACTIVE_TAB",payload:c}),[t]),S=x(c=>t({type:"ADD_TAB",payload:c}),[t]),R=x(c=>t({type:"CLOSE_TAB",payload:c}),[t]),h=x(c=>t({type:"DELETE_ITEM_HISTORY",payload:c}),[t]),z=x(c=>t({type:"SET_HEADER",payload:c}),[t]),Y=x(c=>t({type:"ADD_HISTORY",payload:c}),[t]),K=x(c=>t({type:"SET_TABS_DATA",payload:c}),[t]),Q=x(c=>t({type:"SET_RESPONSE",payload:c}),[t]),L=x(c=>t({type:"SET_SCHEMAS_OBJ",payload:c}),[t]),O=x(c=>t({type:"SET_ACTS_OBJ",payload:c}),[t]),V=x(c=>t({type:"SET_E2E_FORMS",payload:c}),[t]),P=x(c=>t({type:"ADD_E2E_FORM",payload:c}),[t]),m=x(c=>t({type:"OPEN_MODAL",payload:c}),[t]),g=Le(()=>({...s,setService:o,setSchema:i,setAct:u,setPostFields:p,resetPostFields:l,setGetFields:r,resetGetFields:b,setFormData:N,setHeader:z,setHistory:Y,setTabsData:K,setResponse:Q,setActsObj:O,setSchemasObj:L,setActiveTab:y,addTab:S,closeTab:R,deleteItemHistory:h,setE2eForms:V,addE2eForm:P,setModal:m}),[s]);return e(fe.Provider,{value:g,...a})};var I=()=>{let a=Oe(fe);return a},Ae=a=>{let{children:s}=a;return e(He,null,s)};var ce=a=>{let s={get:{},set:{}};for(let t in a)if(a[t]||a[t]===0){let o=t.split("."),i=s;for(;o.length>1;){let u=o.shift();i[u]=i[u]||{},i=i[u]}i[o[0]]=a[t]}return s};var le=(a,s,t)=>{for(let o in a)typeof a[o]=="object"?le(a[o],s,t?`${t}.${o}`:o):s[`${t}.${o}`]=a[o];return s};function te(){return e("svg",{width:"30px",height:"35px",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg"},e("path",{d:"M16.6725 16.6412L21 21M19 11C19 15.4183 15.4183 19 11 19C6.58172 19 3 15.4183 3 11C3 6.58172 6.58172 3 11 3C15.4183 3 19 6.58172 19 11Z",stroke:"#000000","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round"}))}function G(){return e("svg",{width:"25px",height:"25px",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg"},e("path",{"fill-rule":"evenodd","clip-rule":"evenodd",d:"M11.2501 7.06066L8.03039 10.2803L6.96973 9.21967L12.0001 4.18934L17.0304 9.21967L15.9697 10.2803L12.7501 7.06066L12.7501 16.5L11.2501 16.5L11.2501 7.06066Z",fill:"lightcoral"}),e("path",{"fill-rule":"evenodd","clip-rule":"evenodd",d:"M23 12C23 18.0751 18.0751 23 12 23C5.92487 23 1 18.0751 1 12C1 5.92487 5.92487 1 12 1C18.0751 1 23 5.92487 23 12ZM3.00683 12C3.00683 16.9668 7.03321 20.9932 12 20.9932C16.9668 20.9932 20.9932 16.9668 20.9932 12C20.9932 7.03321 16.9668 3.00683 12 3.00683C7.03321 3.00683 3.00683 7.03321 3.00683 12Z",fill:"bisque"}))}function he(){let{actsObj:a}=I(),s=()=>{let u=`data:text/json;chatset=utf-8,${encodeURIComponent(JSON.stringify(a))}`,p=document.createElement("a");p.href=u,p.download="acts.json",p.click()},t=["color-1","color-2","color-3","color-4","color-5","color-6","color-7"],o=u=>Object.keys(u).map((p,l)=>{let r=A();return e("div",{className:"schema"},e("div",{className:"schema-name",onClick:()=>{document.getElementById(r)?.classList.toggle("open")}},e("p",{className:"schema-title"},p),e("span",null,"...")),e("div",{className:"proceed-child-container",id:r},i(a[p])))}),i=u=>Object.keys(u).map((p,l)=>{let r=A();return e("div",{className:`inside-schema ${t[Math.floor(Math.random()*t.length)]}`},e("div",{className:`inside ${typeof u[p]=="object"&&u[p].schema!==null&&"schema-pointer"}`,onClick:()=>{document.getElementById(r)?.classList.toggle("open")}},e("p",{className:"schema-title"},p),u[p].type&&e("p",{className:"schema-title schema-type"},u[p].type),e("div",null," ",typeof u[p]=="object"&&u[p].schema!==null&&e("span",null,"..."))),e("div",{id:r,className:"proceed-child"},typeof u[p]=="object"&&u[p]!==null&&u[p].schema!==null&&i(u[p].validator?u[p].validator.schema:u[p].schema?u[p].schema:u[p])))});return e("div",{className:"schema-modal"}," ",e("div",{className:"results-buttons"},e("button",{className:" schema-export-button btn e2e-back-button e2e-export_results-button",onClick:s},e(G,null),e("span",null,"Export"))),e("div",{className:"search-box"},e("input",{className:"input",type:"text",placeholder:"search..."}),e("span",{className:"search-icon"},e(te,null))),e("div",{className:"schema-list"},o(a)))}function se(){return e("svg",{width:"25px",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg"},e("path",{d:"M9.00002 15.3802H13.92C15.62 15.3802 17 14.0002 17 12.3002C17 10.6002 15.62 9.22021 13.92 9.22021H7.15002",stroke:"lightcoral","stroke-width":"1.5","stroke-miterlimit":"10","stroke-linecap":"round","stroke-linejoin":"round"}),e("path",{d:"M8.57 10.7701L7 9.19012L8.57 7.62012",stroke:"lightcoral","stroke-width":"1.5","stroke-linecap":"round","stroke-linejoin":"round"}),e("path",{"fill-rule":"evenodd","clip-rule":"evenodd",d:"M23 12C23 18.0751 18.0751 23 12 23C5.92487 23 1 18.0751 1 12C1 5.92487 5.92487 1 12 1C18.0751 1 23 5.92487 23 12ZM3.00683 12C3.00683 16.9668 7.03321 20.9932 12 20.9932C16.9668 20.9932 20.9932 16.9668 20.9932 12C20.9932 7.03321 16.9668 3.00683 12 3.00683C7.03321 3.00683 3.00683 7.03321 3.00683 12Z",fill:"bisque"}))}var je=({setView:a})=>e("div",{className:"help"}," ",e("button",{className:"btn e2e-back-button",onClick:()=>{a("e2e")}},e(se,null),e("span",null,"Back")),e("section",{className:"e2e_help-content"},e("p",null,"With E2E Test, you can test the whole application by sending a sequence of HTTP requests."),e("p",null,"In the image below, you can see the first view of the E2E test modal page, which contains a button bar at the top and two separate requests."),e("img",{src:"https://github.com/MiaadTeam/lesan/assets/6236123/829b3288-3d69-4fd0-a1fc-22d011b8d079",alt:"full screen e2e",className:"e2e_help--fullscreen-img"}),e("hr",null),e("p",null,"In the button bar, you have these buttons:",e("img",{src:"https://github.com/MiaadTeam/lesan/assets/6236123/4edd6034-d6b2-4de9-8c43-8f2fe511aa14",alt:"full screen e2e",className:"e2e_help--fullscreen-img"}),e("ul",null,e("li",null,"Add: This button adds one request section."),e("li",null,"Run E2E Test: This button runs all requests and shows their results."),e("li",null,"Import: This button stands for importing an E2E config in JSON format."),e("li",null,"Export: This button stands for exporting an existing E2E config in JSON format."),e("li",null,"Help: This button switches to the help of the E2E modal page."))),e("hr",null),e("div",null,e("p",null,"Each request section have 2 side"),e("img",{src:"https://github.com/MiaadTeam/lesan/assets/6236123/fa9ceb35-21dd-493a-82cc-cd7391f5fc79",alt:"full screen e2e",className:"e2e_help--fullscreen-img"}),e("hr",null),e("section",{className:"e2e_help--section---right-side"},e("p",null,"The right side is a set of configurations for the repeat time of each request and capturing variables of the request response. In the Capture Variables section, you can add a pair of tuple inputs for the key name of the capture variable and its value. You can capture the value of a capture variable with braces syntax. For example, if you get back this response from a request:",e("pre",null,`{ + `,repeat:1,captures:[]}),nt={e2eForms:[ue()],setE2eForms:()=>({}),addE2eForm:()=>({})},rt={modal:null,setModal:()=>({})},fe={...tt,...st,...at,...ot,...nt,...rt};function Fe(s,a){let{type:t,payload:r}=a;switch(t){case"SET_SELECTED_SERVICE":{let o=[...s.tabsData];return o[r.index]={...o[r.index],service:r.data},{...s,tabsData:[...o]}}case"SET_SCHEMA":{let o=[...s.tabsData];return o[r.index]={...o[r.index],schema:r.data},{...s,tabsData:[...o]}}case"SET_ACT":{let o=[...s.tabsData];return o[r.index]={...o[r.index],act:r.data},{...s,tabsData:[...o]}}case"SET_POST_FIELDS":{let o=[...s.tabsData];return o[r.index]={...o[r.index],postFields:r.data},{...s,tabsData:[...o]}}case"RESET_POST_FIELDS":{let o=[...s.tabsData];return o[r]={...o[r],postFields:{}},{...s,tabsData:[...o]}}case"SET_GET_FIELDS":{let o=[...s.tabsData];return o[r.index]={...o[r.index],getFields:r.data},{...s,tabsData:[...o]}}case"RESET_GET_FIELDS":{let o=[...s.tabsData];return o[r]={...o[r],getFields:{}},{...s,tabsData:[...o]}}case"SET_FORM_DATA":{let o=[...s.tabsData];return o[r.index]={...o[r.index],formData:r.data},{...s,tabsData:[...o]}}case"SET_HEADER":return{...s,headers:r};case"ADD_HISTORY":return{...s,history:r};case"SET_TABS_DATA":return{...s,tabsData:r};case"SET_RESPONSE":{let o=[...s.tabsData];return o[r.index]={...o[r.index],response:r.data},{...s,tabsData:[...o]}}case"ADD_TAB":return{...s,tabsData:[...s.tabsData,{service:"",schema:"",act:"",postFields:{},getFields:{},formData:{},response:null}],activeTab:s.tabsData.length};case"SET_ACTIVE_TAB":return{...s,activeTab:r};case"CLOSE_TAB":{let o=[...s.tabsData];return o.length>1&&o.splice(r,1),{...s,tabsData:[...o],activeTab:o.length>=1&&s.activeTab>=r&&s.activeTab!==0?s.activeTab-1:s.activeTab}}case"DELETE_ITEM_HISTORY":return{...s,history:s.history.slice(0,r).concat(s.history.slice(r+1))};case"SET_ACTS_OBJ":return{...s,actsObj:r};case"SET_SCHEMAS_OBJ":return{...s,schemasObj:r};case"SET_E2E_FORMS":return{...s,e2eForms:r};case"ADD_E2E_FORM":return{...s,e2eForms:[...s.e2eForms,r]};case"OPEN_MODAL":return{...s,modal:r};default:throw new Error("Unhandled action type")}}var ve=Me(fe),He=s=>{let[a,t]=Le(Fe,fe),r=k(i=>t({type:"SET_SELECTED_SERVICE",payload:i}),[t]),o=k(i=>t({type:"SET_SCHEMA",payload:i}),[t]),c=k(i=>t({type:"SET_ACT",payload:i}),[t]),d=k(i=>t({type:"SET_POST_FIELDS",payload:i}),[t]),p=k(i=>t({type:"RESET_POST_FIELDS",payload:i}),[t]),l=k(i=>t({type:"SET_GET_FIELDS",payload:i}),[t]),g=k(i=>t({type:"RESET_GET_FIELDS",payload:i}),[t]),N=k(i=>t({type:"SET_FORM_DATA",payload:i}),[t]),b=k(i=>t({type:"SET_ACTIVE_TAB",payload:i}),[t]),E=k(i=>t({type:"ADD_TAB",payload:i}),[t]),D=k(i=>t({type:"CLOSE_TAB",payload:i}),[t]),V=k(i=>t({type:"DELETE_ITEM_HISTORY",payload:i}),[t]),P=k(i=>t({type:"SET_HEADER",payload:i}),[t]),B=k(i=>t({type:"ADD_HISTORY",payload:i}),[t]),W=k(i=>t({type:"SET_TABS_DATA",payload:i}),[t]),K=k(i=>t({type:"SET_RESPONSE",payload:i}),[t]),A=k(i=>t({type:"SET_SCHEMAS_OBJ",payload:i}),[t]),M=k(i=>t({type:"SET_ACTS_OBJ",payload:i}),[t]),q=k(i=>t({type:"SET_E2E_FORMS",payload:i}),[t]),$=k(i=>t({type:"ADD_E2E_FORM",payload:i}),[t]),J=k(i=>t({type:"OPEN_MODAL",payload:i}),[t]),Z=Ie(()=>({...a,setService:r,setSchema:o,setAct:c,setPostFields:d,resetPostFields:p,setGetFields:l,resetGetFields:g,setFormData:N,setHeader:P,setHistory:B,setTabsData:W,setResponse:K,setActsObj:M,setSchemasObj:A,setActiveTab:b,addTab:E,closeTab:D,deleteItemHistory:V,setE2eForms:q,addE2eForm:$,setModal:J}),[a]);return e(ve.Provider,{value:Z,...s})};var H=()=>{let s=Oe(ve);return s},Ae=s=>{let{children:a}=s;return e(He,null,a)};var le=s=>{let a={get:{},set:{}};for(let t in s)if(s[t]||s[t]===0){let r=t.split("."),o=a;for(;r.length>1;){let c=r.shift();o[c]=o[c]||{},o=o[c]}o[r[0]]=s[t]}return a};var ce=(s,a,t)=>{for(let r in s)typeof s[r]=="object"?ce(s[r],a,t?`${t}.${r}`:r):a[`${t}.${r}`]=s[r];return a};function te(){return e("svg",{width:"30px",height:"35px",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg"},e("path",{d:"M16.6725 16.6412L21 21M19 11C19 15.4183 15.4183 19 11 19C6.58172 19 3 15.4183 3 11C3 6.58172 6.58172 3 11 3C15.4183 3 19 6.58172 19 11Z",stroke:"#000000","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round"}))}function z(){return e("svg",{width:"25px",height:"25px",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg"},e("path",{"fill-rule":"evenodd","clip-rule":"evenodd",d:"M11.2501 7.06066L8.03039 10.2803L6.96973 9.21967L12.0001 4.18934L17.0304 9.21967L15.9697 10.2803L12.7501 7.06066L12.7501 16.5L11.2501 16.5L11.2501 7.06066Z",fill:"lightcoral"}),e("path",{"fill-rule":"evenodd","clip-rule":"evenodd",d:"M23 12C23 18.0751 18.0751 23 12 23C5.92487 23 1 18.0751 1 12C1 5.92487 5.92487 1 12 1C18.0751 1 23 5.92487 23 12ZM3.00683 12C3.00683 16.9668 7.03321 20.9932 12 20.9932C16.9668 20.9932 20.9932 16.9668 20.9932 12C20.9932 7.03321 16.9668 3.00683 12 3.00683C7.03321 3.00683 3.00683 7.03321 3.00683 12Z",fill:"bisque"}))}function je(){let{actsObj:s}=H(),a=()=>{let c=`data:text/json;chatset=utf-8,${encodeURIComponent(JSON.stringify(s))}`,d=document.createElement("a");d.href=c,d.download="acts.json",d.click()},t=["color-1","color-2","color-3","color-4","color-5","color-6","color-7"],r=c=>Object.keys(c).map((d,p)=>{let l=F();return e("div",{className:"schema"},e("div",{className:"schema-name",onClick:()=>{document.getElementById(l)?.classList.toggle("open")}},e("p",{className:"schema-title"},d),e("span",null,"...")),e("div",{className:"proceed-child-container",id:l},o(s[d])))}),o=c=>Object.keys(c).map((d,p)=>{let l=F();return e("div",{className:`inside-schema ${t[Math.floor(Math.random()*t.length)]}`},e("div",{className:`inside ${typeof c[d]=="object"&&c[d].schema!==null&&"schema-pointer"}`,onClick:()=>{document.getElementById(l)?.classList.toggle("open")}},e("p",{className:"schema-title"},d),c[d].type&&e("p",{className:"schema-title schema-type"},c[d].type),e("div",null," ",typeof c[d]=="object"&&c[d].schema!==null&&e("span",null,"..."))),e("div",{id:l,className:"proceed-child"},typeof c[d]=="object"&&c[d]!==null&&c[d].schema!==null&&o(c[d].validator?c[d].validator.schema:c[d].schema?c[d].schema:c[d])))});return e("div",{className:"schema-modal"}," ",e("div",{className:"results-buttons"},e("button",{className:" schema-export-button btn e2e-back-button e2e-export_results-button",onClick:a},e(z,null),e("span",null,"Export"))),e("div",{className:"search-box"},e("input",{className:"input",type:"text",placeholder:"search..."}),e("span",{className:"search-icon"},e(te,null))),e("div",{className:"schema-list"},r(s)))}function se(){return e("svg",{width:"25px",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg"},e("path",{d:"M9.00002 15.3802H13.92C15.62 15.3802 17 14.0002 17 12.3002C17 10.6002 15.62 9.22021 13.92 9.22021H7.15002",stroke:"lightcoral","stroke-width":"1.5","stroke-miterlimit":"10","stroke-linecap":"round","stroke-linejoin":"round"}),e("path",{d:"M8.57 10.7701L7 9.19012L8.57 7.62012",stroke:"lightcoral","stroke-width":"1.5","stroke-linecap":"round","stroke-linejoin":"round"}),e("path",{"fill-rule":"evenodd","clip-rule":"evenodd",d:"M23 12C23 18.0751 18.0751 23 12 23C5.92487 23 1 18.0751 1 12C1 5.92487 5.92487 1 12 1C18.0751 1 23 5.92487 23 12ZM3.00683 12C3.00683 16.9668 7.03321 20.9932 12 20.9932C16.9668 20.9932 20.9932 16.9668 20.9932 12C20.9932 7.03321 16.9668 3.00683 12 3.00683C7.03321 3.00683 3.00683 7.03321 3.00683 12Z",fill:"bisque"}))}var qe=({setView:s})=>e("div",{className:"help"}," ",e("button",{className:"btn e2e-back-button",onClick:()=>{s("e2e")}},e(se,null),e("span",null,"Back")),e("section",{className:"e2e_help-content"},e("p",null,"With E2E Test, you can test the whole application by sending a sequence of HTTP requests."),e("p",null,"In the image below, you can see the first view of the E2E test modal page, which contains a button bar at the top and two separate requests."),e("img",{src:"https://github.com/MiaadTeam/lesan/assets/6236123/829b3288-3d69-4fd0-a1fc-22d011b8d079",alt:"full screen e2e",className:"e2e_help--fullscreen-img"}),e("hr",null),e("p",null,"In the button bar, you have these buttons:",e("img",{src:"https://github.com/MiaadTeam/lesan/assets/6236123/4edd6034-d6b2-4de9-8c43-8f2fe511aa14",alt:"full screen e2e",className:"e2e_help--fullscreen-img"}),e("ul",null,e("li",null,"Add: This button adds one request section."),e("li",null,"Run E2E Test: This button runs all requests and shows their results."),e("li",null,"Import: This button stands for importing an E2E config in JSON format."),e("li",null,"Export: This button stands for exporting an existing E2E config in JSON format."),e("li",null,"Help: This button switches to the help of the E2E modal page."))),e("hr",null),e("div",null,e("p",null,"Each request section have 2 side"),e("img",{src:"https://github.com/MiaadTeam/lesan/assets/6236123/fa9ceb35-21dd-493a-82cc-cd7391f5fc79",alt:"full screen e2e",className:"e2e_help--fullscreen-img"}),e("hr",null),e("section",{className:"e2e_help--section---right-side"},e("p",null,"The right side is a set of configurations for the repeat time of each request and capturing variables of the request response. In the Capture Variables section, you can add a pair of tuple inputs for the key name of the capture variable and its value. You can capture the value of a capture variable with braces syntax. For example, if you get back this response from a request:",e("pre",null,`{ `,` body: [ `,` { `,` _id: 64c6839c50adc3cb65726934, @@ -29,5 +29,5 @@ import{createContext as Re,Fragment as q,h as e,hydrate as Me}from"https://esm.s `,` success: true `,` } `,`} -`),"You can capture _id with [body][0][_id] or for name: [body][0][name]."),e("img",{src:"https://github.com/MiaadTeam/lesan/assets/6236123/1cea1db3-44c2-49b5-8739-a9afa8a6e1fa",alt:"full screen e2e",className:"e2e_help--fullscreen-img"})),e("hr",null),e("section",{className:"e2e_help--section---right-side"},e("img",{src:"https://github.com/MiaadTeam/lesan/assets/6236123/5c9899fa-8be6-42d1-8f4f-8fd965264645",alt:"full screen e2e",className:"e2e_help--fullscreen-img"}),e("p",null,"The left side is a text area for writing headers and the body of the request in JSON format. In this text area, you can use a text parser to implement the captured value you captured before inside these symbols ","{}",".")),e("hr",null),e("p",null,"Also, we have some buttons on the top right side of each request section. With these buttons, you can move up and down and delete requests.",e("img",{src:"https://github.com/MiaadTeam/lesan/assets/6236123/900a5b98-3e7f-460a-a756-403ecaedcf86",alt:"full screen e2e",className:"e2e_help--fullscreen-img"}))),e("hr",null),e("div",null,e("p",null,"After clicking on the Run E2E Test button, you can see the result of each test. Also, in the result view, you can export the results in JSON format."),e("img",{src:"https://github.com/MiaadTeam/lesan/assets/6236123/8c367965-a1b7-40b8-8638-60d2d0ea2609",alt:"full screen e2e",className:"e2e_help--fullscreen-img"})),e("hr",null),e("div",null,e("p",null,"Additionally, you can go to the E2E Test modal page from the main page by clicking on the Test icon inside the response header section. This way, you can add a new test section and prepopulate the Header and Body text areas with the sent request from the main page.",e("img",{src:"https://github.com/MiaadTeam/lesan/assets/6236123/74dc9e93-2b41-4840-afc1-f4e8e83c9889",alt:"full screen e2e",className:"e2e_help--fullscreen-img"})))));function ae(){return e("svg",{width:"25px",height:"25px",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg"},e("path",{d:"M11 8C11 7.44772 11.4477 7 12 7C12.5523 7 13 7.44772 13 8V11H16C16.5523 11 17 11.4477 17 12C17 12.5523 16.5523 13 16 13H13V16C13 16.5523 12.5523 17 12 17C11.4477 17 11 16.5523 11 16V13H8C7.44771 13 7 12.5523 7 12C7 11.4477 7.44772 11 8 11H11V8Z",fill:"lightcoral"}),e("path",{"fill-rule":"evenodd","clip-rule":"evenodd",d:"M23 12C23 18.0751 18.0751 23 12 23C5.92487 23 1 18.0751 1 12C1 5.92487 5.92487 1 12 1C18.0751 1 23 5.92487 23 12ZM3.00683 12C3.00683 16.9668 7.03321 20.9932 12 20.9932C16.9668 20.9932 20.9932 16.9668 20.9932 12C20.9932 7.03321 16.9668 3.00683 12 3.00683C7.03321 3.00683 3.00683 7.03321 3.00683 12Z",fill:"bisque"}))}var rt=()=>e("svg",{width:"25px",viewBox:"-0.5 0 25 25",fill:"none",xmlns:"http://www.w3.org/2000/svg"},e("path",{d:"M12 22.4199C17.5228 22.4199 22 17.9428 22 12.4199C22 6.89707 17.5228 2.41992 12 2.41992C6.47715 2.41992 2 6.89707 2 12.4199C2 17.9428 6.47715 22.4199 12 22.4199Z",stroke:"bisque","stroke-width":"1.5","stroke-linecap":"round","stroke-linejoin":"round"}),e("path",{id:"Vector",d:"M16 16L12 12M12 12L8 8M12 12L16 8M12 12L8 16",stroke:"lightcoral","stroke-width":"1.5","stroke-linecap":"round","stroke-linejoin":"round"})),U=rt;function ve(){return e("svg",{width:"25px",viewBox:"-0.5 0 25 25",fill:"none",xmlns:"http://www.w3.org/2000/svg"},e("path",{d:"M12 22.4199C17.5228 22.4199 22 17.9428 22 12.4199C22 6.89707 17.5228 2.41992 12 2.41992C6.47715 2.41992 2 6.89707 2 12.4199C2 17.9428 6.47715 22.4199 12 22.4199Z",stroke:"bisque","stroke-width":"1.5","stroke-linecap":"round","stroke-linejoin":"round"}),e("path",{d:"M16 10.99L13.13 14.05C12.9858 14.2058 12.811 14.3298 12.6166 14.4148C12.4221 14.4998 12.2122 14.5437 12 14.5437C11.7878 14.5437 11.5779 14.4998 11.3834 14.4148C11.189 14.3298 11.0142 14.2058 10.87 14.05L8 10.99",stroke:"lightcoral","stroke-width":"1.5","stroke-linecap":"round","stroke-linejoin":"round"}))}function oe(){return e("svg",{width:"25px",height:"25px",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg"},e("path",{d:"M12 17V16.9929M12 14.8571C12 11.6429 15 12.3571 15 9.85714C15 8.27919 13.6568 7 12 7C10.6567 7 9.51961 7.84083 9.13733 9",stroke:"lightcoral","stroke-width":"1.5","stroke-linecap":"round","stroke-linejoin":"round"}),e("path",{"fill-rule":"evenodd","clip-rule":"evenodd",d:"M23 12C23 18.0751 18.0751 23 12 23C5.92487 23 1 18.0751 1 12C1 5.92487 5.92487 1 12 1C18.0751 1 23 5.92487 23 12ZM3.00683 12C3.00683 16.9668 7.03321 20.9932 12 20.9932C16.9668 20.9932 20.9932 16.9668 20.9932 12C20.9932 7.03321 16.9668 3.00683 12 3.00683C7.03321 3.00683 3.00683 7.03321 3.00683 12Z",fill:"bisque"}))}var ct=()=>e("svg",{fill:"bisque",width:"20px",height:"20px",viewBox:"0 0 64 64",version:"1.1",xmlns:"http://www.w3.org/2000/svg",style:"fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2;"},e("rect",{id:"Icons",x:"-960",y:"-256",width:"1280",height:"800",style:"fill:none;"}),e("g",{id:"Icons1"},e("g",{id:"Strike"}),e("g",{id:"H1"}),e("g",{id:"H2"}),e("g",{id:"H3"}),e("g",{id:"list-ul"}),e("g",{id:"hamburger-1"}),e("g",{id:"hamburger-2"}),e("g",{id:"list-ol"}),e("g",{id:"list-task"}),e("g",{id:"trash"}),e("g",{id:"vertical-menu"}),e("g",{id:"horizontal-menu"}),e("g",{id:"sidebar-2"}),e("g",{id:"Pen"}),e("g",{id:"Pen1"}),e("g",{id:"clock"}),e("g",{id:"external-link"}),e("g",{id:"hr"}),e("g",{id:"info"}),e("g",{id:"warning"}),e("g",{id:"plus-circle"}),e("g",{id:"minus-circle"}),e("g",{id:"vue"}),e("g",{id:"cog"}),e("g",{id:"logo"}),e("g",{id:"radio-check"}),e("g",{id:"eye-slash"},e("path",{d:"M13.673,10.345l-3.097,3.096l39.853,39.854l3.097,-3.097l-39.853,-39.853Z"}),e("path",{d:"M17.119,19.984l2.915,2.915c-3.191,2.717 -5.732,6.099 -7.374,9.058l-0.005,0.01c4.573,7.646 11.829,14.872 20.987,13.776c2.472,-0.296 4.778,-1.141 6.885,-2.35l2.951,2.95c-4.107,2.636 -8.815,4.032 -13.916,3.342c-9.198,-1.244 -16.719,-8.788 -21.46,-17.648c2.226,-4.479 5.271,-8.764 9.017,-12.053Zm6.63,-4.32c2.572,-1.146 5.355,-1.82 8.327,-1.868c0.165,-0.001 2.124,0.092 3.012,0.238c0.557,0.092 1.112,0.207 1.659,0.35c8.725,2.273 15.189,10.054 19.253,17.653c-1.705,3.443 -3.938,6.398 -6.601,9.277l-2.827,-2.827c1.967,-2.12 3.622,-4.161 4.885,-6.45c0,0 -1.285,-2.361 -2.248,-3.643c-0.619,-0.824 -1.27,-1.624 -1.954,-2.395c-0.54,-0.608 -2.637,-2.673 -3.136,-3.103c-3.348,-2.879 -7.279,-5.138 -11.994,-5.1c-1.826,0.029 -3.582,0.389 -5.249,0.995l-3.127,-3.127Z",style:"fill-rule:nonzero;"}),e("path",{d:"M25.054,27.92l2.399,2.398c-0.157,0.477 -0.243,0.987 -0.243,1.516c0,2.672 2.169,4.841 4.841,4.841c0.529,0 1.039,-0.085 1.516,-0.243l2.399,2.399c-1.158,0.65 -2.494,1.02 -3.915,1.02c-4.425,0 -8.017,-3.592 -8.017,-8.017c0,-1.421 0.371,-2.756 1.02,-3.914Zm6.849,-4.101c0.049,-0.001 0.099,-0.002 0.148,-0.002c4.425,0 8.017,3.593 8.017,8.017c0,0.05 0,0.099 -0.001,0.148l-8.164,-8.163Z"})),e("g",{id:"eye"}),e("g",{id:"toggle-off"}),e("g",{id:"shredder"}),e("g",{id:"spinner--loading--dots-"}),e("g",{id:"react"}),e("g",{id:"check-selected"}),e("g",{id:"turn-off"}),e("g",{id:"code-block"}),e("g",{id:"user"}),e("g",{id:"coffee-bean"}),e("g",{id:"coffee-beans"},e("g",{id:"coffee-bean1"})),e("g",{id:"coffee-bean-filled"}),e("g",{id:"coffee-beans-filled"},e("g",{id:"coffee-bean2"})),e("g",{id:"clipboard"}),e("g",{id:"clipboard-paste"}),e("g",{id:"clipboard-copy"}),e("g",{id:"Layer1"}))),qe=ct;function be(){return e("svg",{width:"25px",height:"25px",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg"},e("path",{"fill-rule":"evenodd","clip-rule":"evenodd",d:"M12.75 13.9393L15.9697 10.7197L17.0303 11.7803L12 16.8107L6.96967 11.7803L8.03033 10.7197L11.25 13.9393L11.25 4.5L12.75 4.5L12.75 13.9393Z",fill:"lightcoral"}),e("path",{"fill-rule":"evenodd","clip-rule":"evenodd",d:"M23 12C23 18.0751 18.0751 23 12 23C5.92487 23 1 18.0751 1 12C1 5.92487 5.92487 1 12 1C18.0751 1 23 5.92487 23 12ZM3.00683 12C3.00683 16.9668 7.03321 20.9932 12 20.9932C16.9668 20.9932 20.9932 16.9668 20.9932 12C20.9932 7.03321 16.9668 3.00683 12 3.00683C7.03321 3.00683 3.00683 7.03321 3.00683 12Z",fill:"bisque"}))}function ye(){return e("svg",{width:"25px",height:"25px",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg"},e("path",{d:"M13.8876 9.9348C14.9625 10.8117 15.5 11.2501 15.5 12C15.5 12.7499 14.9625 13.1883 13.8876 14.0652C13.5909 14.3073 13.2966 14.5352 13.0261 14.7251C12.7888 14.8917 12.5201 15.064 12.2419 15.2332C11.1695 15.8853 10.6333 16.2114 10.1524 15.8504C9.6715 15.4894 9.62779 14.7336 9.54038 13.2222C9.51566 12.7947 9.5 12.3757 9.5 12C9.5 11.6243 9.51566 11.2053 9.54038 10.7778C9.62779 9.26636 9.6715 8.51061 10.1524 8.1496C10.6333 7.78859 11.1695 8.11466 12.2419 8.76679C12.5201 8.93597 12.7888 9.10831 13.0261 9.27492C13.2966 9.46483 13.5909 9.69274 13.8876 9.9348Z",stroke:"lightcoral","stroke-width":"2"}),e("path",{"fill-rule":"evenodd","clip-rule":"evenodd",d:"M23 12C23 18.0751 18.0751 23 12 23C5.92487 23 1 18.0751 1 12C1 5.92487 5.92487 1 12 1C18.0751 1 23 5.92487 23 12ZM3.00683 12C3.00683 16.9668 7.03321 20.9932 12 20.9932C16.9668 20.9932 20.9932 16.9668 20.9932 12C20.9932 7.03321 16.9668 3.00683 12 3.00683C7.03321 3.00683 3.00683 7.03321 3.00683 12Z",fill:"bisque"}))}var $e=()=>e("svg",{fill:"bisque",width:"20px",height:"20px",viewBox:"0 0 64 64",version:"1.1",xmlns:"http://www.w3.org/2000/svg",style:"fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2;"},e("rect",{id:"Icons",x:"-896",y:"-256",width:"1280",height:"800",style:"fill:none;"}),e("g",{id:"Icons1"},e("g",{id:"Strike"}),e("g",{id:"H1"}),e("g",{id:"H2"}),e("g",{id:"H3"}),e("g",{id:"list-ul"}),e("g",{id:"hamburger-1"}),e("g",{id:"hamburger-2"}),e("g",{id:"list-ol"}),e("g",{id:"list-task"}),e("g",{id:"trash"}),e("g",{id:"vertical-menu"}),e("g",{id:"horizontal-menu"}),e("g",{id:"sidebar-2"}),e("g",{id:"Pen"}),e("g",{id:"Pen1"}),e("g",{id:"clock"}),e("g",{id:"external-link"}),e("g",{id:"hr"}),e("g",{id:"info"}),e("g",{id:"warning"}),e("g",{id:"plus-circle"}),e("g",{id:"minus-circle"}),e("g",{id:"vue"}),e("g",{id:"cog"}),e("g",{id:"logo"}),e("g",{id:"radio-check"}),e("g",{id:"eye-slash"}),e("g",{id:"eye"},e("path",{d:"M32.513,13.926c10.574,0.15 19.141,9.894 23.487,18.074c0,0 -1.422,2.892 -2.856,4.895c-0.694,0.969 -1.424,1.913 -2.191,2.826c-0.547,0.65 -1.112,1.283 -1.698,1.898c-5.237,5.5 -12.758,9.603 -20.7,8.01c-8.823,-1.77 -15.732,-9.498 -20.058,-17.629c0,0 1.248,-2.964 2.69,-4.964c0.646,-0.897 1.324,-1.77 2.034,-2.617c0.544,-0.649 1.108,-1.282 1.691,-1.897c4.627,-4.876 10.564,-8.63 17.601,-8.596Zm-0.037,4c-5.89,-0.022 -10.788,3.267 -14.663,7.35c-0.527,0.555 -1.035,1.127 -1.527,1.713c-0.647,0.772 -1.265,1.569 -1.854,2.386c-0.544,0.755 -1.057,1.805 -1.451,2.59c3.773,6.468 9.286,12.323 16.361,13.742c6.563,1.317 12.688,-2.301 17.016,-6.846c0.529,-0.555 1.04,-1.128 1.534,-1.715c0.7,-0.833 1.366,-1.694 1.999,-2.579c0.557,-0.778 1.144,-1.767 1.588,-2.567c-3.943,-6.657 -10.651,-13.944 -19.003,-14.074Z"}),e("path",{d:"M32.158,23.948c4.425,0 8.018,3.593 8.018,8.017c0,4.425 -3.593,8.017 -8.018,8.017c-4.424,0 -8.017,-3.592 -8.017,-8.017c0,-4.424 3.593,-8.017 8.017,-8.017Zm0,4.009c2.213,0 4.009,1.796 4.009,4.008c0,2.213 -1.796,4.009 -4.009,4.009c-2.212,0 -4.008,-1.796 -4.008,-4.009c0,-2.212 1.796,-4.008 4.008,-4.008Z"})),e("g",{id:"toggle-off"}),e("g",{id:"shredder"}),e("g",{id:"spinner--loading--dots-"}),e("g",{id:"react"}),e("g",{id:"check-selected"}),e("g",{id:"turn-off"}),e("g",{id:"code-block"}),e("g",{id:"user"}),e("g",{id:"coffee-bean"}),e("g",{id:"coffee-beans"},e("g",{id:"coffee-bean1"})),e("g",{id:"coffee-bean-filled"}),e("g",{id:"coffee-beans-filled"},e("g",{id:"coffee-bean2"})),e("g",{id:"clipboard"}),e("g",{id:"clipboard-paste"}),e("g",{id:"clipboard-copy"}),e("g",{id:"Layer1"})));function Ce(){return e("svg",{width:"25px",viewBox:"-0.5 0 25 25",fill:"none",xmlns:"http://www.w3.org/2000/svg"},e("path",{d:"M12 22.4199C17.5228 22.4199 22 17.9428 22 12.4199C22 6.89707 17.5228 2.41992 12 2.41992C6.47715 2.41992 2 6.89707 2 12.4199C2 17.9428 6.47715 22.4199 12 22.4199Z",stroke:"bisque","stroke-width":"1.5","stroke-linecap":"round","stroke-linejoin":"round"}),e("path",{d:"M8 13.8599L10.87 10.8C11.0125 10.6416 11.1868 10.5149 11.3815 10.4282C11.5761 10.3415 11.7869 10.2966 12 10.2966C12.2131 10.2966 12.4239 10.3415 12.6185 10.4282C12.8132 10.5149 12.9875 10.6416 13.13 10.8L16 13.8599",stroke:"lightcoral","stroke-width":"1.5","stroke-linecap":"round","stroke-linejoin":"round"}))}var Ve={fontFamily:'-apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial',display:"inline-block",borderRadius:3,padding:"10px 10px",color:"#f8f8f2",textShadow:"1px 1px black",whiteSpace:"pre-wrap"};var dt=/("(\\u[a-zA-Z0-9]{4}|\\[^u]|[^\\"])*"(\s*:)?|\b(true|false|null)\b|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?)/g,pt=a=>JSON.stringify(a,mt,2).replace(/&/g,"&").replace(//g,">").replace(dt,t=>{let o="cute-number",i=t;return/^"/.test(t)?/:$/.test(t)?(o="cute-key",i=i.replace(":",':')):t==='"undefined"'?o="cute-undefined":t==='"[Function]"'?o="cute-function":o="cute-string":/true|false/.test(t)?o="cute-boolean":/null/.test(t)&&(o="cute-null"),`${i}`}),mt=(a,s)=>typeof s=="function"?"[Function]":typeof s>"u"?"undefined":s,Pe=a=>pt(a).replace(/"/g,"");var H=({jsonData:a})=>{let s=Pe(a);return e(q,null,e("pre",{style:Ve,dangerouslySetInnerHTML:{__html:s}}))};function Be({baseUrl:a}){let{e2eForms:s,setE2eForms:t}=I(),[o,i]=C(!0),[u,p]=C(!1),[l,r]=C({allReqPerformance:0,numberRequest:0,sequenceDetail:[]}),b=(m,g)=>{if(!(m===0&&g<=0)){let c=s[m];s.splice(m,1),s.splice(g,0,c),t([...s])}},N=m=>{s[m],s.splice(m,1),t([...s])},[y,S]=C("e2e"),[R,h]=C([]),z=()=>{let m=`data:text/json;chatset=utf-8,${encodeURIComponent(JSON.stringify(s))}`,g=document.createElement("a");g.href=m,g.download="Configdata.json",g.click()},Y=m=>{let g=new FileReader;g.readAsText(m.target.files[0],"UTF-8"),g.onload=c=>{let E=JSON.parse(c.target.result);t(E)}},K=()=>{let m=`data:text/json;chatset=utf-8,${encodeURIComponent(JSON.stringify(R))}`,g=document.createElement("a");g.href=m,g.download="data.json",g.click()},Q=async({baseUrl:m,options:g})=>await(await fetch(`${m}lesan`,g)).json(),L=(m,g)=>{for(let c in m){typeof m[c]=="object"&&L(m[c],g);let E=m[c];if(typeof E=="string"&&E.includes("{")){let j=[];for(let _=0;_E.slice(_+1,M[F])).forEach(_=>{for(let F of g)F.key===_&&(m[c]=m[c].replace(`{${_}}`,F.value))})}}},O=async()=>{let m=new Set,g=performance.now(),c={allReqPerformance:0,numberRequest:0,sequenceDetail:[]},E=0;for await(let M of s){let B=JSON.parse(M.bodyHeaders);L(B,m);let _={method:"POST",headers:{"Content-Type":"application/json",...B.headers},body:JSON.stringify(B.body)},F,ee=performance.now(),w=0,n=0,f=0;for(let d=0;d[...Z,{id:A(),request:{..._,body:B.body},response:F,responseTime:J-D}])}let T=performance.now();[...M.captures].filter(d=>d.key&&d.value).map(d=>{let D=d.value.split("["),J=[];return D.forEach(Z=>{let re=Z.slice(0,Z.indexOf("]"));isNaN(Number(re))||(re=Number(re)),J.push(re)}),J.shift(),{key:d.key,value:J}}).forEach(d=>{if(d.value.length>0){let D=F;d.value.forEach(J=>{D=D[J]}),m.add({key:d.key,value:D})}}),c.sequenceDetail.push({bodyHeader:M.bodyHeaders,repeat:w,time:T-ee,success:n,fails:f})}let j=performance.now();r({...c,numberRequest:E,allReqPerformance:j-g})},V=m=>{let g=[...s];g[m].repeat+=1,t([...g])},P=m=>{let g=[...s];g[m].repeat>0&&(g[m].repeat-=1),t([...g])};return e("div",{className:"e2e modal-content"},y==="result"?e(q,null,e("br",null),e("div",{className:"results"},e("div",{className:"results-buttons"},e("button",{className:"btn e2e-back-button",onClick:()=>{h([]),S("e2e")}},e(se,null),e("span",null,"Back")),e("button",{className:"btn e2e-back-button e2e-export_results-button",onClick:K},e(G,null),e("span",null,"Export"))),e("div",{className:"container-e2e",onClick:()=>i(!o)},e("span",{className:"container-header"},"REQUESTS"),e("span",{className:"container-header"},o?e(qe,null):e($e,null))),o&&R.map(m=>e("div",{key:m.id,className:"container-detail"},e("section",{className:"container-re"},e("span",{className:"container-re-title"},"REQUEST"),e(H,{jsonData:m.request})),e("section",{className:"container-re container-response"},e("span",{className:"container-re-title"},"RESPONSE"),e("span",{className:"e2e-re-timeNumber-request"},m.responseTime,"ms"),e(H,{jsonData:m.response}))))),l.sequenceDetail.map((m,g)=>e("div",{key:g,className:"container-detail"},e("section",{className:"sequence-re"},e("span",{className:"container-re-title"},"Body Header"),e(H,{jsonData:JSON.parse(m.bodyHeader)})),e("section",{className:"sequence-re sequence-response "},e("span",{className:"container-re-title"},"Description"),e("div",{className:"detail-sequence"},e("p",null,"you send ",e("span",null,m.repeat)," times of this request"),e("p",null,"the avrage time for each request is",e("span",null," ",m.time/m.repeat,"ms")),e("p",null,"and whole time is",e("span",null," ",m.time,"ms ")),e("p",null,"this sequence sends",e("span",null," ",m.success," ")," success request and"," ",e("span",null,m.fails)," it be fails")))))):y==="e2e"?e(q,null,e("div",{className:"sidebar__section sidebar__section--headers"},s.map((m,g)=>e(q,null,e("div",{className:"sidebar__input-double",key:m.id},s.length>1&&e("div",{className:"e2e-move-buttons"},e("div",{className:"e2e-move-div",onClick:()=>b(g,g-1)},e(Ce,null)),e("div",{className:"e2e-move-div",onClick:()=>b(g,g+1)},e(ve,null)),e("div",{className:"e2e-move-div e2e-move-close",onClick:()=>N(g)},e(U,null))),e("div",{className:"sidebar__section-body-heading"},e("div",{className:"sidebar__section-heading"},"set test body and headers"),e("textarea",{placeholder:"please paste a request body here",value:m.bodyHeaders,name:`${m.id}-body`,rows:18,onChange:c=>{let E=[...s];E[g].bodyHeaders=c.target.value,t([...E])}})),e("div",{className:"sidebar__section-capture"},e("div",{className:"e2e_sidebar__section-heading"},"set repeat time"),e("div",{className:"repeat__number"},e("input",{className:"input",placeholder:"set repeat number",value:m.repeat,name:`${m.id}-repeat`,type:"number",onChange:c=>{let E=[...s];E[g].repeat=c.target.value,t([...E])}}),e("button",{className:"e2e-back-button e2e-export_results-button",onClick:()=>V(g)},"+"),e("button",{className:"e2e-back-button e2e-export_results-button",onClick:()=>P(g)},"-")),e("div",{className:"e2e_sidebar__section-heading"},"capture variables"),e("button",{className:"btn btn--add e2e-back-button e2e-export_results-button e2e-add-capture ",onClick:()=>{let c=[...s];c[g].captures.push({key:"",value:""}),t([...c])}},"add capture"),m.captures.map((c,E)=>e(q,null,e("div",{className:"sidebar__section-add-capture"},e("input",{className:"input",placeholder:"set a variable name",value:c.key,onChange:j=>{let M=[...s];M[g].captures[E].key=j.target.value,t([...M])}}),e("input",{className:"input",placeholder:"set a value for variable",value:c.value,onChange:j=>{let M=[...s];M[g].captures[E].value=j.target.value,t([...M])}})),e("hr",null)))))))),e("button",{className:"btn btn-show-results-buttons ",onClick:()=>p(!u)},"show btn"),e("div",{className:"results-buttons","data-show":u===!0},e("button",{className:"btn btn-e2e-action e2e-back-button e2e-export_results-button",onClick:()=>{t([...s,ue()])}},e(ae,null),e("span",null,"Add")),e("button",{className:"btn btn-e2e-action e2e-back-button e2e-run-botton e2e-export_results-button",onClick:async()=>{S("result"),await O()}},e(ye,null),e("span",null,"Run E2E Test")),e("input",{id:"actual-btn",type:"file",onChange:Y,hidden:!0}),e("label",{htmlFor:"actual-btn",className:"btn btn-e2e-action e2e-back-button e2e-export_results-button"},e(be,null),e("span",null,"Import")),e("button",{className:"btn btn-e2e-action e2e-back-button e2e-export_results-button",onClick:z},e(G,null),e("span",null,"Export")),e("button",{onClick:()=>S("help"),className:"btn btn-e2e-action e2e-back-button e2e-export_results-button"},e(oe,null),e("span",null,"Help")))):y==="help"?e(je,{setView:S}):"")}function de(a){let s=Math.floor(a/36e5),t=Math.floor(a%36e5/6e4),o=Math.floor(a%36e4%6e4/1e3);return s>0?`${s}h ${t}m ${o}s`:t>0?`${t}m ${o}s`:o>0?`${o}s`:`${a}ms`}var Ze=(a,s)=>{let t=W(!0);$(()=>{let o=()=>{};if(t.current?t.current=!1:o=a(),o&&typeof o=="function")return o},s)};function Se(){return e("svg",{id:"Layer_1","data-name":"Layer 1",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 105.7 122.88",width:20},e("path",{fill:"white",d:"M30.46,14.57V5.22A5.18,5.18,0,0,1,32,1.55v0A5.19,5.19,0,0,1,35.68,0H70a5.22,5.22,0,0,1,3.67,1.53l0,0a5.22,5.22,0,0,1,1.53,3.67v9.35h27.08a3.36,3.36,0,0,1,3.38,3.37V29.58A3.38,3.38,0,0,1,102.32,33H98.51l-8.3,87.22a3,3,0,0,1-2.95,2.69H18.43a3,3,0,0,1-3-2.95L7.19,33H3.37A3.38,3.38,0,0,1,0,29.58V17.94a3.36,3.36,0,0,1,3.37-3.37Zm36.27,0V8.51H39v6.06ZM49.48,49.25a3.4,3.4,0,0,1,6.8,0v51.81a3.4,3.4,0,1,1-6.8,0V49.25ZM69.59,49a3.4,3.4,0,1,1,6.78.42L73,101.27a3.4,3.4,0,0,1-6.78-.43L69.59,49Zm-40.26.42A3.39,3.39,0,1,1,36.1,49l3.41,51.8a3.39,3.39,0,1,1-6.77.43L29.33,49.46ZM92.51,33.38H13.19l7.94,83.55H84.56l8-83.55Z"}))}function Je({setFormFromHistory:a}){let{history:s,setHistory:t,deleteItemHistory:o}=I(),[i,u]=C("");return Ze(()=>{localStorage.setItem("localHistory",JSON.stringify(s))},[s]),e("div",{className:"history modal-content"},s&&s?.length>0?e("div",{className:""},e("br",null),s.map((p,l)=>e("div",{className:"container-detail",id:p.id},e("section",{className:"container-re"},e("div",{style:{position:"relative"}},e("span",{className:"container-re-title"},"REQUEST"),e("span",{className:"history-re-detail-date"},p.reqDate)),e("div",{className:"container-re-detail"},e("div",{className:"container-re-detail-title"}," ",e(H,{jsonData:p.request.body.model}),e("span",null,"|"),e("div",null,e(H,{jsonData:p.request.body.act}))),i===p.id?e("button",{onClick:()=>u(""),className:"history-re-detail-button"},"Hide",e("span",{className:"history-re-detail-button-icon"},"\u2013")):e("button",{onClick:()=>{u(p.id),document.getElementById(p.id)?.scrollIntoView()},className:"history-re-detail-button"},"Show"," ",e("span",{className:"history-re-detail-button-icon"},"+"))),e("div",{className:"history-re-detail-complete","data-show":i===p.id}," ",e(H,{jsonData:p.request}))),e("section",{className:"container-re container-response"},e("div",{className:"history-re-title_delete",style:{position:"relative"},onClick:r=>{r.stopPropagation(),o(l)}},e("span",{className:"history-re-delete"},e(U,null)),e("span",{className:"container-re-title history-response-title"},"RESPONSE"),e("span",{className:"history-re-detail-date history-response-took"},de(p.response.tookTime))),e("div",{className:"container-re-detail"},e("div",{className:"history-re-detail-title"},e("div",{className:"history-re-response-title"}," ",e("span",{className:"history-re-response-title-status"},"success:"),e("div",{className:"history-re-response-info"},e(H,{jsonData:p.response.success})))),e("button",{onClick:()=>a(p.request),className:"history-re-detail-button"},"Use"," ",e("span",{className:"history-re-detail-button-icon"},"\u279C"," "))),e("div",{className:"history-re-detail-complete","data-show":i===p.id}," ",e(H,{jsonData:p.response})))))):e("span",{className:"no-history"},'"There is no history to display"'),s&&s.length>0?e("div",{className:"clear-history"},e("button",{className:"btn clear-history-button tooltip",onClick:()=>{confirm("Clear All History?")==!0&&t([])}}," ",e(Se,null),e("span",{className:"tooltip-text"},"Clear History"))):"")}function Ee(){return e("svg",{width:"25px",viewBox:"0 0 26 24",fill:"none",xmlns:"http://www.w3.org/2000/svg"},e("g",{id:"SVGRepo_bgCarrier","stroke-width":"0"}),e("g",{id:"SVGRepo_tracerCarrier","stroke-linecap":"round","stroke-linejoin":"round"}),e("g",{id:"SVGRepo_iconCarrier"}," ",e("path",{d:"M4 6V19C4 20.6569 5.34315 22 7 22H17C18.6569 22 20 20.6569 20 19V9C20 7.34315 18.6569 6 17 6H4ZM4 6V5",stroke:"lightcoral","stroke-width":"1.5"})," ",e("path",{d:"M18 6.00002V6.75002H18.75V6.00002H18ZM15.7172 2.32614L15.6111 1.58368L15.7172 2.32614ZM4.91959 3.86865L4.81353 3.12619H4.81353L4.91959 3.86865ZM5.07107 6.75002H18V5.25002H5.07107V6.75002ZM18.75 6.00002V4.30604H17.25V6.00002H18.75ZM15.6111 1.58368L4.81353 3.12619L5.02566 4.61111L15.8232 3.0686L15.6111 1.58368ZM4.81353 3.12619C3.91638 3.25435 3.25 4.0227 3.25 4.92895H4.75C4.75 4.76917 4.86749 4.63371 5.02566 4.61111L4.81353 3.12619ZM18.75 4.30604C18.75 2.63253 17.2678 1.34701 15.6111 1.58368L15.8232 3.0686C16.5763 2.96103 17.25 3.54535 17.25 4.30604H18.75ZM5.07107 5.25002C4.89375 5.25002 4.75 5.10627 4.75 4.92895H3.25C3.25 5.9347 4.06532 6.75002 5.07107 6.75002V5.25002Z",fill:"lightcoral"})," ",e("path",{opacity:"0.5",d:"M8 12H16",stroke:"lightcoral","stroke-width":"1.5","stroke-linecap":"round"})," ",e("path",{opacity:"0.5",d:"M8 15.5H13.5",stroke:"lightcoral","stroke-width":"1.5","stroke-linecap":"round"})," "))}function Te(){return e("svg",{width:"25px",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg"},e("path",{"fill-rule":"evenodd",opacity:"0.5","clip-rule":"evenodd",d:"M5.07868 5.06891C8.87402 1.27893 15.0437 1.31923 18.8622 5.13778C22.6824 8.95797 22.7211 15.1313 18.9262 18.9262C15.1312 22.7211 8.95793 22.6824 5.13774 18.8622C2.87389 16.5984 1.93904 13.5099 2.34047 10.5812C2.39672 10.1708 2.775 9.88377 3.18537 9.94002C3.59575 9.99627 3.88282 10.3745 3.82658 10.7849C3.4866 13.2652 4.27782 15.881 6.1984 17.8016C9.44288 21.0461 14.6664 21.0646 17.8655 17.8655C21.0646 14.6664 21.046 9.44292 17.8015 6.19844C14.5587 2.95561 9.33889 2.93539 6.13935 6.12957L6.88705 6.13333C7.30126 6.13541 7.63535 6.47288 7.63327 6.88709C7.63119 7.3013 7.29372 7.63539 6.87951 7.63331L4.33396 7.62052C3.92269 7.61845 3.58981 7.28556 3.58774 6.8743L3.57495 4.32874C3.57286 3.91454 3.90696 3.57707 4.32117 3.57498C4.73538 3.5729 5.07285 3.907 5.07493 4.32121L5.07868 5.06891Z",fill:"lightcoral"}),e("path",{d:"M12 7.25C12.4142 7.25 12.75 7.58579 12.75 8V11.6893L15.0303 13.9697C15.3232 14.2626 15.3232 14.7374 15.0303 15.0303C14.7374 15.3232 14.2626 15.3232 13.9697 15.0303L11.5429 12.6036C11.3554 12.416 11.25 12.1617 11.25 11.8964V8C11.25 7.58579 11.5858 7.25 12 7.25Z",fill:"lightcoral"}))}function _e(){return e("svg",{height:"25px",width:"25px",version:"1.1",id:"Layer_1",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 512 512",fill:"#000000"},e("g",{id:"SVGRepo_bgCarrier","stroke-width":"0"}),e("g",{id:"SVGRepo_tracerCarrier","stroke-linecap":"round","stroke-linejoin":"round"}),e("g",{id:"SVGRepo_iconCarrier"}," ",e("circle",{opacity:.34,style:"fill:lightcoral;",cx:"256.602",cy:"226.267",r:"171.059"})," ",e("path",{style:"fill:lightcoral",d:"M482.195,226.196C482.195,101.471,380.725,0,256.001,0S29.804,101.471,29.804,226.196 c0,7.409,6.007,13.416,13.416,13.416s13.416-6.008,13.416-13.416c0-109.93,89.434-199.363,199.363-199.363 s199.363,89.434,199.363,199.363c0,109.928-89.434,199.362-199.363,199.362h-23.276l33.282-37.255 c4.937-5.525,4.458-14.007-1.067-18.944c-5.525-4.937-14.008-4.457-18.944,1.068l-47.576,53.255c-7.788,8.718-7.788,21.866,0,30.584 l47.576,53.255c2.651,2.968,6.322,4.478,10.01,4.478c3.181,0,6.375-1.126,8.934-3.41c5.526-4.937,6.004-13.419,1.067-18.944 l-33.282-37.255h23.276C380.725,452.39,482.195,350.919,482.195,226.196z"})," "))}function we(){return e("svg",{fill:"lightcoral",height:"25px",width:"25px",viewBox:"0 0 436.668 436.668"},e("g",{id:"SVGRepo_bgCarrier","stroke-width":"0"}),e("g",{id:"SVGRepo_tracerCarrier","stroke-linecap":"round","stroke-linejoin":"round"}),e("g",{id:"SVGRepo_iconCarrier"}," ",e("g",null," ",e("path",{opacity:.34,d:"M203.334,85.818v59.141c4.884-0.8,9.893-1.223,15-1.223s10.116,0.423,15,1.223V85.818c14.657-5.935,25-20.296,25-37.081 c0-22.092-17.909-40-40-40s-40,17.908-40,40C178.334,65.522,188.677,79.883,203.334,85.818z"})," ",e("path",{opacity:.34,d:"M70.642,204.021l56.242,18.274c1.539-10.139,4.732-19.74,9.292-28.525L79.912,175.49 c-1.115-15.774-11.577-30.049-27.541-35.236c-21.01-6.827-43.576,4.672-50.403,25.682c-6.827,21.01,4.672,43.576,25.682,50.403 C43.614,221.525,60.468,216.126,70.642,204.021z"})," ",e("path",{opacity:.34,d:"M152.577,301.224l-34.792,47.887c-15.346-3.813-32.156,1.725-42.022,15.305c-12.985,17.872-9.023,42.887,8.849,55.872 s42.887,9.023,55.872-8.849c9.866-13.579,9.939-31.277,1.571-44.694l34.772-47.86C167.8,314.333,159.616,308.347,152.577,301.224z"})," ",e("path",{opacity:.34,d:"M318.883,349.112l-34.792-47.887c-7.039,7.122-15.223,13.109-24.25,17.661l34.772,47.86 c-8.369,13.417-8.296,31.115,1.571,44.694c12.985,17.872,38,21.834,55.872,8.849s21.834-38,8.849-55.872 C351.038,350.837,334.229,345.298,318.883,349.112z"})," ",e("path",{opacity:.34,d:"M434.699,165.936c-6.827-21.01-29.393-32.508-50.403-25.682c-15.964,5.187-26.426,19.462-27.541,35.236l-56.263,18.281 c4.559,8.784,7.752,18.386,9.292,28.525l56.242-18.274c10.174,12.105,27.028,17.504,42.992,12.318 C430.028,209.512,441.526,186.946,434.699,165.936z"})," ",e("path",{d:"M280.834,236.237c0-34.462-28.037-62.5-62.5-62.5s-62.5,28.038-62.5,62.5s28.037,62.5,62.5,62.5 S280.834,270.7,280.834,236.237z"})," ")," "))}function Ne(){return e("svg",{width:"25px",height:25,viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg"},e("path",{d:"M3 9.10986V14.8799C3 16.9999 3 16.9999 5 18.3499L10.5 21.5299C11.33 22.0099 12.68 22.0099 13.5 21.5299L19 18.3499C21 16.9999 21 16.9999 21 14.8899V9.10986C21 6.99986 21 6.99986 19 5.64986L13.5 2.46986C12.68 1.98986 11.33 1.98986 10.5 2.46986L5 5.64986C3 6.99986 3 6.99986 3 9.10986Z",stroke:"lightcoral","stroke-width":"1.5","stroke-linecap":"round","stroke-linejoin":"round",opacity:.34}),e("path",{d:"M12 15C13.6569 15 15 13.6569 15 12C15 10.3431 13.6569 9 12 9C10.3431 9 9 10.3431 9 12C9 13.6569 10.3431 15 12 15Z",stroke:"lightcoral","stroke-width":"1.5","stroke-linecap":"round","stroke-linejoin":"round"}))}function xe(){return e("svg",{width:"25px",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg"},e("path",{opacity:.5,d:"M9.74872 2.49415L18.1594 7.31987M9.74872 2.49415L2.65093 14.7455C1.31093 17.0584 2.10615 20.0159 4.42709 21.3513C6.74803 22.6867 9.7158 21.8942 11.0558 19.5813L12.5511 17.0003L14.1886 14.1738L15.902 11.2163L18.1594 7.31987M9.74872 2.49415L8.91283 2M18.1594 7.31987L19 7.80374",stroke:"lightcoral","stroke-width":"1.5","stroke-linecap":"round"}),e("path",{d:"M15.9021 11.2164L13.3441 9.74463M14.1887 14.1739L9.98577 11.7557M12.5512 17.0004L9.93848 15.4972",stroke:"lightcpral","stroke-width":"1.5","stroke-linecap":"round"}),e("path",{d:"M22 14.9166C22 16.0672 21.1046 16.9999 20 16.9999C18.8954 16.9999 18 16.0672 18 14.9166C18 14.1967 18.783 13.2358 19.3691 12.6174C19.7161 12.2512 20.2839 12.2512 20.6309 12.6174C21.217 13.2358 22 14.1967 22 14.9166Z",stroke:"lightcoral","stroke-width":"1.5"}))}function pe(){return e("svg",{width:"28px",fill:"white",viewBox:"0 0 32 32",style:"fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2;",version:"1.1"},e("path",{d:"M9.101,7l8.899,0c1.857,-0 3.637,0.737 4.95,2.05c1.313,1.313 2.05,3.093 2.05,4.95l0,8.899c0.953,-0.195 1.837,-0.665 2.536,-1.363c0.937,-0.938 1.464,-2.21 1.464,-3.536c0,-2.977 0,-7.023 0,-10c0,-1.326 -0.527,-2.598 -1.464,-3.536c-0.938,-0.937 -2.21,-1.464 -3.536,-1.464c-2.977,0 -7.023,0 -10,0c-1.326,-0 -2.598,0.527 -3.536,1.464c-0.698,0.699 -1.168,1.583 -1.363,2.536Z"}),e("path",{d:"M23,14c0,-1.326 -0.527,-2.598 -1.464,-3.536c-0.938,-0.937 -2.21,-1.464 -3.536,-1.464c-2.977,0 -7.023,0 -10,0c-1.326,-0 -2.598,0.527 -3.536,1.464c-0.937,0.938 -1.464,2.21 -1.464,3.536c0,2.977 0,7.023 0,10c-0,1.326 0.527,2.598 1.464,3.536c0.938,0.937 2.21,1.464 3.536,1.464c2.977,-0 7.023,-0 10,-0c1.326,0 2.598,-0.527 3.536,-1.464c0.937,-0.938 1.464,-2.21 1.464,-3.536l0,-10Zm-15,10l10,0c0.552,0 1,-0.448 1,-1c0,-0.552 -0.448,-1 -1,-1l-10,0c-0.552,0 -1,0.448 -1,1c0,0.552 0.448,1 1,1Zm0,-4l10,0c0.552,0 1,-0.448 1,-1c0,-0.552 -0.448,-1 -1,-1l-10,0c-0.552,0 -1,0.448 -1,1c0,0.552 0.448,1 1,1Zm0,-4l10,0c0.552,0 1,-0.448 1,-1c0,-0.552 -0.448,-1 -1,-1l-10,0c-0.552,0 -1,0.448 -1,1c0,0.552 0.448,1 1,1Z"}),e("g",{id:"Icon"}))}function ke(){return e("svg",{width:25,height:25,fill:"#ffffff",version:"1.1",id:"Capa_1",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 104.778 104.778"},e("g",{id:"SVGRepo_bgCarrier","stroke-width":"0"}),e("g",{id:"SVGRepo_tracerCarrier","stroke-linecap":"round","stroke-linejoin":"round"}),e("g",{id:"SVGRepo_iconCarrier"}," ",e("g",null," ",e("path",{d:"M96.832,88.406l-23.02-39.908V21.959c4.385-1.595,7.447-5.797,7.447-10.618C81.26,5.089,76.176,0,69.928,0H42.6 c-6.251,0-11.334,5.089-11.334,11.341c0,4.815,3.07,9.017,7.457,10.618v26.55l-2.083,3.685V30.359c0-1.546-1.257-2.802-2.803-2.802 H8.723c-1.546,0-2.801,1.256-2.801,2.802v59.557c0,7.475,5.742,13.614,13.174,14.648c0.331,0.126,0.683,0.214,1.059,0.214h67.227 c4.79,0,8.433-1.762,10.282-4.979C99.503,96.598,99.208,92.543,96.832,88.406z M11.513,89.916v-6.079h8.254 c1.546,0,2.802-1.26,2.802-2.802c0-1.549-1.256-2.802-2.802-2.802h-8.254v-9.09h8.254c1.546,0,2.802-1.263,2.802-2.801 c0-1.555-1.256-2.802-2.802-2.802h-8.254v-9.097h8.254c1.546,0,2.802-1.256,2.802-2.801c0-1.55-1.256-2.803-2.802-2.803h-8.254 V33.149h19.512v56.767c0,5.095-4.375,9.248-9.756,9.248C15.883,99.17,11.513,95.011,11.513,89.916z M92.794,96.997 c-0.799,1.379-2.779,2.178-5.432,2.178H33.189c2.118-2.55,3.439-5.734,3.439-9.259V63.19c0.245-0.207,0.476-0.443,0.645-0.743 l6.679-11.82c0.236-0.422,0.364-0.898,0.364-1.379V19.776c0-1.415-1.048-2.603-2.449-2.78c-2.859-0.364-5.015-2.796-5.015-5.655 c0-3.161,2.571-5.738,5.731-5.738H69.91c3.165,0,5.734,2.577,5.734,5.738c0,2.859-2.155,5.286-5.017,5.655 c-1.401,0.178-2.446,1.365-2.446,2.78v29.472c0,0.493,0.122,0.977,0.374,1.401l23.396,40.559 C93.292,93.506,93.593,95.617,92.794,96.997z M76.466,79.53c0,5.412-4.377,9.794-9.801,9.794c-5.411,0-9.795-4.382-9.795-9.794 c0-5.406,4.384-9.795,9.795-9.795C72.089,69.735,76.466,74.124,76.466,79.53z M54.609,68.877c0,2.665-2.146,4.799-4.802,4.799 c-2.657,0-4.802-2.156-4.802-4.799c0-2.644,2.15-4.8,4.802-4.8C52.468,64.077,54.609,66.233,54.609,68.877z M58.195,58.048 c-1.672,0-3.015-1.341-3.015-3.01c0-1.667,1.343-3.009,3.015-3.009c1.663,0,3.015,1.343,3.015,3.009 C61.21,56.707,59.853,58.048,58.195,58.048z M49.534,86.315c0,1.669-1.352,3.009-3.016,3.009c-1.665,0-3.014-1.34-3.014-3.009 c0-1.663,1.349-3.016,3.014-3.016C48.182,83.3,49.534,84.652,49.534,86.315z M54.805,46.184c-2.185,0-3.956-1.771-3.956-3.957 c0-2.186,1.771-3.957,3.956-3.957c2.183,0,3.957,1.771,3.957,3.957C58.762,44.414,56.983,46.184,54.805,46.184z"})," ")," "))}function De(){return e("svg",{version:"1.1",viewBox:"0 0 29.756 29.756",style:"enable-background:new 0 0 29.756 29.756;"},e("path",{d:"M29.049,5.009L28.19,4.151c-0.943-0.945-2.488-0.945-3.434,0L10.172,18.737l-5.175-5.173 c-0.943-0.944-2.489-0.944-3.432,0.001l-0.858,0.857c-0.943,0.944-0.943,2.489,0,3.433l7.744,7.752 c0.944,0.943,2.489,0.943,3.433,0L29.049,8.442C29.991,7.498,29.991,5.953,29.049,5.009z"}))}function X(a){let s=W(null);return $(()=>{let t=o=>{s.current&&!s.current.contains(o?.target)&&a()};return document.addEventListener("click",t),()=>{document.removeEventListener("click",t)}},[s]),s}function ne({className:a=""}){return e("svg",{width:25,height:25,viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",className:a},e("g",{id:"SVGRepo_bgCarrier","stroke-width":"0"}),e("g",{id:"SVGRepo_tracerCarrier","stroke-linecap":"round","stroke-linejoin":"round"}),e("g",{id:"SVGRepo_iconCarrier"}," ",e("path",{d:"M6 9L12 15L18 9M12 9H12.01",stroke:"lightcoral","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round"})," "))}function ie({items:a,onClickItem:s,incomeActiveItem:t,canShow:o}){let[i,u]=C(!1),[p,l]=C("");$(()=>{l(t||"")},[t]);let b=X(()=>{u(!1)});return e("div",null,e("div",{className:"select",disabled:o},e("div",{className:`select--empty ${i===!0?"active-select--empty":""}`,ref:b,onClick:()=>u(!i)},e("div",{className:"select--empty--left-side"}," ",e("span",{className:`${p?"select-empty--left-side--clear":"select-empty--left-side--clear--inactive"}`,onClick:N=>{l(""),s(""),u(!1),N.stopPropagation()}},"x"),e("span",null,p)),e(ne,null)),i&&e("div",{className:"select--sub-buttons","data-show":i},a?.map((N,y)=>e("div",{className:`option ${N===p?"active-option":""}`,onClick:()=>{l(N),s(N),u(!1)}},N)))))}var ut=({options:a,onChange:s})=>{let[t,o]=C([]),[i,u]=C(a),[p,l]=C(!1),r=S=>{if(t.includes(S)){let R=t.filter(h=>h.value!==S.value);o(R),u([...i,S]),s(R)}else{let R=i.filter(h=>h.value!==S.value);o([...t,S]),u(R),s([...t,S])}},b=()=>{o([]),s([]),u(a)},N=()=>{l(!p)},y=X(()=>{l(!1)});return e("div",{ref:y,className:"multi-select__wrapper"},e("div",{className:"multi-select__field",onClick:N},e("div",{className:"multi-select__selected-item-wrapper"},t.map(S=>e("div",{className:"multi-select__selected-item",key:S},e("div",{className:"multi-select__selected-item-text"},S.label),e("div",{className:"multi-select__selected-item-btn",role:"button",onClick:R=>{R.stopPropagation(),r(S)}},"x")))),e("div",{className:"multi-select__icons-wrapper"},t.length?e("div",{className:"multi-select__close-icon-wrapper",role:"button",onClick:S=>{S.stopPropagation(),b()}},e("span",{className:"multi-select__close-icon"},"x")):null,e("div",{className:"multi-select__arrow-icon-wrapper",role:"button"},e(ne,{className:"multi-select__arrow-icon"})))),p?e("div",{className:"multi-select__options"},i.length?i.map(S=>e("div",{key:S.value,onClick:R=>{R.stopPropagation(),r(S)},className:"multi-select__option"},e("div",{className:"multi-select__option-label"},S.label))):e("div",{className:"multi-select__option--no-option"},"No Options!")):null)},Ge=ut;var ft=({baseUrl:a,options:s})=>fetch(`${a}lesan`,s).then(t=>t.json()),Ue=({urlAddress:a})=>{let{activeTab:s,tabsData:t,actsObj:o,headers:i,history:u,setService:p,setSchema:l,setAct:r,setPostFields:b,setGetFields:N,setFormData:y,setHistory:S,setResponse:R,resetGetFields:h,resetPostFields:z,addE2eForm:Y,setModal:K}=I(),[Q,L]=C(!1),O=(n,f,T,v)=>{for(let k in T)T[k].type==="enums"?v[`${f}.${k}`]=n:O(n,`${f}.${k}`,T[k].schema,v);return v},V=W(null),P=n=>{let{name:f,value:T,type:v,alt:k}=n.target,d;v==="number"?d=Number(T):k==="array"||k==="boolean"?d=JSON.parse(T):d=T,y({data:{...t[s].formData,[f]:d},index:s})},m=({key:n,field:f,isMultiEnum:T=!1,formData:v})=>f.type==="array"?m({key:n,formData:v,field:f.schema,isMultiEnum:!0}):f.type==="enums"&&T?e(Ge,{options:Object.keys(f.schema).map(k=>({label:k,value:f.schema[k]})),onChange:k=>{let d=k.map(D=>D.value);y({data:{...v,[`set.${n}`]:d},index:s}),localStorage.setItem("localTabsData",JSON.stringify(t))}}):f.type==="enums"?e(ie,{onClickItem:k=>{y({data:{...v,[`set.${n}`]:k},index:s}),localStorage.setItem("localTabsData",JSON.stringify(t))},incomeActiveItem:v[`set.${n}`],items:Object.keys(f.schema)}):e("input",{className:"input",placeholder:n,id:n,value:v[`set.${n}`],name:`set.${n}`,type:f.type==="number"?"number":"string",alt:f.type,onChange:P}),g=({getField:n,keyName:f,margin:T})=>e("div",{style:{marginLeft:`${T+1}px`},className:"sidebar__section_container",key:`${s}.${f}`},e("div",{className:"sidebar__section-heading--subfields"},f),Object.keys(n.schema).map((v,k)=>n.schema[v].type==="enums"?e("div",{className:"input-cnt get-items",key:`${s}.${v}-${k}`},e("label",{htmlFor:v},f,".",v,":"),e("div",{className:"get-values"},e("span",{onClick:()=>{let d={...t[s].formData};delete d[`get.${f}.${v}`],y({data:d,index:s})}}),e("span",{className:t[s].formData[`get.${f}.${v}`]===0?"active":"",onClick:()=>{y({index:s,data:{...t[s].formData,[`get.${f}.${v}`]:0}})}},"0"),e("span",{className:t[s].formData[`get.${f}.${v}`]===1?"active":"",onClick:()=>{y({data:{...t[s].formData,[`get.${f}.${v}`]:1},index:s})}},"1"))):g({getField:n.schema[v],keyName:`${f}.${v}`,margin:T+1}))),c=()=>{let n=ce(t[s].formData);return{body:{method:"POST",headers:{"Content-Type":"application/json",...i},body:JSON.stringify({service:t[s].service,model:t[s].schema,act:t[s].act,details:n})}}},E=async n=>{n.preventDefault();let f=new Date().toLocaleDateString();L(!0),setTimeout(()=>{L(!1)},450);let T=performance.now(),v=await ft({baseUrl:a,options:c().body}),d=performance.now()-T;R({data:{...v,tookTime:d},index:s});let D=[{request:{...c().body,body:JSON.parse(c().body.body)},response:{...v,tookTime:d},id:A(),reqDate:f},...u];S(D),localStorage.setItem("localHistory",JSON.stringify(D)),localStorage.setItem("localTabsData",JSON.stringify(t))},j=t[s].service&&t[s].schema&&t[s].postFields&&t[s].getFields&&t[s].act,M=t[s].service,B=t[s].service&&t[s].schema,_=()=>{let n=JSON.stringify(t[s].response);navigator.clipboard.writeText(n)},F=()=>{let n=c();n.body.body=JSON.parse(n.body.body),navigator.clipboard.writeText(JSON.stringify(n))},ee=()=>{let n=c();n.body.body=JSON.parse(n.body.body);let{method:f,...T}=n.body,v={id:A(),bodyHeaders:JSON.stringify({...T},null,2),repeat:1,captures:[]};Y(v),K("E2E TEST")},w=(n,f)=>{if(f==="service"&&(p({data:n,index:s}),l({data:"",index:s})),f==="method"&&l({data:"",index:s}),f==="schema"&&l({data:n,index:s}),r({data:"",index:s}),h(s),z(s),f==="action"){let T=o[t[s].service][t[s].schema][n].validator.schema;V&&V.current&&V.current.reset(),r({data:n,index:s}),N({data:T.get.schema,index:s}),b({data:T.set.schema,index:s})}y({data:{},index:s}),localStorage.setItem("localTabsData",JSON.stringify(t))};return e(q,null,e("div",{className:"sidebar"},e("div",{className:"sidebar__sections-wrapper"},e("div",{className:"sidebar__section sidebar__section--services"},e("div",{className:"sidebar__section-heading"},"select services"),e(ie,{onClickItem:n=>w(n,"service"),items:Object.keys(o),incomeActiveItem:t[s].service?t[s].service:null})),e("div",{className:"sidebar__section sidebar__section--schema"},e("div",{onClick:()=>{},className:"sidebar__section-heading"},"select schema"),e(ie,{canShow:!M,onClickItem:n=>w(n,"schema"),items:M?Object.keys(o[t[s].service]):[],incomeActiveItem:t[s].schema?t[s].schema:null})),e("div",{className:"sidebar__section sidebar__section--act"},e("div",{className:"sidebar__section-heading"},"select action"),e(ie,{canShow:!B,onClickItem:n=>w(n,"action"),items:B?Object.keys(o[t[s].service][t[s].schema]):[],incomeActiveItem:t[s].act?t[s].act:null})))),j&&e("div",{className:"sidebar sidebar--fields"},e("form",{ref:V,onSubmit:E,className:"form--fields"},e("div",{className:"sidebar__section-heading sidebar__section-heading--fields"},"SET fields"),Object.keys(t[s].postFields).map(n=>e("div",{className:"input-cnt",key:`${s}.${n}-----`},e("label",{htmlFor:n},n," :"),m({key:n,field:t[s].postFields[n],formData:t[s].formData}))),e("div",{className:"sidebar__section-heading sidebar__section-heading--fields"},"GET fields"),e("div",{className:"input-cnt get-items border-bottom"},e("label",null,"All Items :"),e("div",{className:"get-values"},e("span",{onClick:()=>{let n=O(null,"get",t[s].getFields,{});y({data:{...t[s].formData,...n},index:s})}}),e("span",{onClick:()=>{let n=O(0,"get",t[s].getFields,{});y({data:{...t[s].formData,...n},index:s})}},"0"),e("span",{onClick:()=>{let n=O(1,"get",t[s].getFields,{});y({data:{...t[s].formData,...n},index:s})}},"1"))),Object.keys(t[s].getFields).map(n=>t[s].getFields[n].type==="enums"?e("div",{className:"input-cnt get-items",key:`${s}.${n}-------`},e("label",{htmlFor:n},n,":"),e("div",{className:"get-values"},e("span",{onClick:()=>{y({data:{...t[s].formData,[`get.${n}`]:null},index:s})}}),e("span",{className:t[s].formData[`get.${n}`]===0?"active":"",onClick:()=>{y({data:{...t[s].formData,[`get.${n}`]:0},index:s})}},"0"),e("span",{className:t[s].formData[`get.${n}`]===1?"active":"",onClick:()=>{y({data:{...t[s].formData,[`get.${n}`]:1},index:s})}},"1"))):g({getField:t[s].getFields[n],keyName:n,margin:0})),e("div",{class:"wrapper"},e("button",{class:"send-button","data-active":Q},e("span",null,"Send"),e("div",{class:"successe"},e(De,null)))))),e("div",{className:"response"},t[s].response&&e("div",{class:"response-detail"},e("div",{className:"response-detail-button_title"},e("p",{className:"response-detail-title"},"Response"),e("div",{className:"response-detail-buttons"},e("div",{className:"btn response-detail-button ",onClick:()=>F()},e(pe,null),e("span",{className:"tooltip-text"},"Copy Request")),e("div",{className:"btn response-detail-button ",onClick:()=>{_()}},e(pe,null),e("span",{className:"tooltip-text"},"Copy Response")),e("div",{className:"btn response-detail-button ",onClick:()=>{ee()}},e(ke,null),e("span",{className:"tooltip-text"},"Run E2E Test")))),e("div",{className:"response-detail-info"},e("div",{style:{display:"flex",flexDirection:"column"}}," ",e(H,{jsonData:{body:t[s].response?.body,success:t[s].response?.success}})),e("span",{className:"response-took"},"took:",de(t[s].response?.tookTime)),t[s].response&&t[s].response?.success===!0?e("div",{className:"success"}):e("div",{className:"fail"})))))};var vt=()=>e("svg",{width:"15px",height:"15px",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg"},e("path",{d:"M20.04 10.1109L18.0252 8.09612L21.7071 4.41421C22.0976 4.02369 22.0976 3.39052 21.7071 3L21 2.29289C20.6095 1.90237 19.9763 1.90237 19.5858 2.29289L15.9039 5.9748L14.04 4.11089C13.754 3.82489 13.3239 3.73933 12.9502 3.89411C12.5765 4.04889 12.3329 4.41353 12.3329 4.81799V10.818C12.3329 11.3703 12.7806 11.818 13.3329 11.818H19.3329C19.7373 11.818 20.102 11.5744 20.2568 11.2007C20.4115 10.827 20.326 10.3969 20.04 10.1109Z",fill:"bisque"}),e("path",{d:"M3.96 13.8891L5.97478 15.9039L2.29289 19.5858C1.90237 19.9763 1.90237 20.6095 2.29289 21L3 21.7071C3.39052 22.0976 4.02369 22.0976 4.41421 21.7071L8.0961 18.0252L9.96 19.8891C10.246 20.1751 10.6761 20.2607 11.0498 20.1059C11.4235 19.9511 11.6671 19.5865 11.6671 19.182V13.182C11.6671 12.6297 11.2194 12.182 10.6671 12.182H4.66711C4.26265 12.182 3.89801 12.4256 3.74323 12.7993C3.58845 13.173 3.674 13.6031 3.96 13.8891Z",fill:"bisque"})),ze=vt;var bt=()=>e("svg",{width:"15px",height:"15px",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg"},e("path",{d:"M7.69233 18.2781L9.70711 20.2929C9.9931 20.5789 10.0787 21.009 9.92388 21.3827C9.7691 21.7564 9.40446 22 9 22H3C2.44772 22 2 21.5523 2 21V15C2 14.5955 2.24364 14.2309 2.61732 14.0761C2.99099 13.9213 3.42111 14.0069 3.70711 14.2929L5.571 16.1568L9.25289 12.4749C9.64342 12.0844 10.2766 12.0844 10.6671 12.4749L11.3742 13.182C11.7647 13.5725 11.7647 14.2057 11.3742 14.5962L7.69233 18.2781Z",fill:"bisque"}),e("path",{d:"M16.3077 5.72187L14.2929 3.70711C14.0069 3.42111 13.9213 2.99099 14.0761 2.61732C14.2309 2.24364 14.5955 2 15 2H21C21.5523 2 22 2.44772 22 3V9C22 9.40446 21.7564 9.7691 21.3827 9.92388C21.009 10.0787 20.5789 9.9931 20.2929 9.70711L18.429 7.84319L14.7471 11.5251C14.3566 11.9156 13.7234 11.9156 13.3329 11.5251L12.6258 10.818C12.2352 10.4275 12.2352 9.7943 12.6258 9.40378L16.3077 5.72187Z",fill:"bisque"})),Ye=bt;var yt=a=>{let[s,t]=C(!1);return e("div",{className:"modal-overlay",onClick:a.toggle},e("div",{className:s?"modal-box-fullscreen":"modal-box",onClick:o=>o.stopPropagation()},e("div",{className:"action-modal"},e("span",{className:"modal-close",onClick:a.toggle},e(U,null)),e("span",{className:"modal-fullscreen",onClick:()=>t(!s)},s?e(ze,null):e(Ye,null)),e("span",{className:"modal-title"},a.title)),e("div",{className:"modal-content"},a.children)))},Ke=yt;var Qe=()=>{let{schemasObj:a}=I(),[s,t]=C({});$(()=>{let l={};for(let r in a){l[r]={...l[r],pure:a[r].pure};for(let b in a[r].mainRelations)l[r]={...l[r],mainRelations:{...l[r].mainRelations,[b]:{type:"relation",extraDetails:a[r].mainRelations[b],schema:{...a[a[r].mainRelations[b].schemaName].pure}}}};for(let b in a[r].relatedRelations)l[r]={...l[r],relatedRelations:{...l[r].relatedRelations,[b]:{type:"relation",extraDetails:a[r].relatedRelations[b],schema:{...a[a[r].relatedRelations[b].schemaName].pure}}}}}t(l)},[]);let o=()=>{let l=`data:text/json;chatset=utf-8,${encodeURIComponent(JSON.stringify(a))}`,r=document.createElement("a");r.href=l,r.download="schemas.json",r.click()},i=["color-1","color-2","color-3","color-4","color-5","color-6","color-7"],u=l=>Object.keys(l).map(r=>{let b=A();return e("div",{className:"schema"},e("div",{className:"schema-name",onClick:()=>{document.getElementById(b)?.classList.toggle("open")}},e("p",{className:"schema-title"},r),e("span",null,"...")),e("div",{className:"proceed-child-container",id:b},p(l[r])))}),p=l=>Object.keys(l).map(r=>{let b=A();return e("div",{className:`inside-schema ${i[Math.floor(Math.random()*i.length)]}`},e("div",{className:`inside ${typeof l[r]=="object"&&l[r].schema!==null&&"schema-pointer"}`,onClick:()=>{document.getElementById(b)?.classList.toggle("open")}},e("p",{className:"schema-title"},r),e("div",{className:"schema-info"}," ",e("p",{className:"schema-title schema-type"}," ",l[r].type),e("div",{className:"schema-help"},l[r].extraDetails&&e(oe,null),l[r].extraDetails&&e("div",{className:" tooltip-text"},e(H,{jsonData:l[r].extraDetails}))),typeof l[r]=="object"&&l[r].schema!==null&&e("span",null,"..."))),e("div",{id:b,className:"proceed-child"},typeof l[r]=="object"&&l[r]!==null&&l[r].schema!==null&&p(l[r].pure?l[r].pure:l[r].relatedRelations?l[r].relatedRelations:l[r].mainRelation?l[r].mainRelation:l[r].type==="relation"?l[r].schema:l[r])))});return e("div",{className:"schema-modal"},e("div",{className:"results-buttons"},e("button",{className:" schema-export-button btn e2e-back-button e2e-export_results-button",onClick:o},e(G,null),e("span",null,"Export"))),e("div",{className:"search-box"},e("input",{className:"input",type:"text",placeholder:"search..."}),e("span",{className:"search-icon"},e(te,null))),e("div",{className:"schema-list"},u(s)))};function me(){return e("svg",{width:25,height:25,viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg"},e("path",{d:"M7.75 11.9999L10.58 14.8299L16.25 9.16992",stroke:"lightcoral","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round"})," ",e("path",{"fill-rule":"evenodd","clip-rule":"evenodd",d:"M23 12C23 18.0751 18.0751 23 12 23C5.92487 23 1 18.0751 1 12C1 5.92487 5.92487 1 12 1C18.0751 1 23 5.92487 23 12ZM3.00683 12C3.00683 16.9668 7.03321 20.9932 12 20.9932C16.9668 20.9932 20.9932 16.9668 20.9932 12C20.9932 7.03321 16.9668 3.00683 12 3.00683C7.03321 3.00683 3.00683 7.03321 3.00683 12Z",fill:"bisque"}))}function We({configUrl:a}){let s=r=>{i[r],i.splice(r,1),u([...i])},{headers:t,setHeader:o}=I(),[i,u]=C([{key:"",value:""}]),[p,l]=C("");return $(()=>{let r=[];for(let b in t)r.push({key:b,value:t[b]});u(r)},[]),e("div",{className:"setting modal-content"},e("div",{className:"url"},e("p",{className:"url-title"},"Fetch Config"),e("div",{className:"url-detail"}," ",e("input",{className:"input url-input ",placeholder:"Set URL",onChange:r=>l(r.target.value)}),e("button",{className:"setting_fetch-config--apply-button e2e-back-button e2e-add-capture ",onClick:()=>a(p)},e(me,null),e("span",null,"Apply")," "))),e("div",{className:"sidebar__section sidebar__section--headers"},e("div",{className:"sidebar__section-heading setting_heading"}," ",e("span",{className:"setting_heading--title"},"Set Headers"),e("button",{className:"setting_add-header--button e2e-back-button e2e-export_results-button e2e-add-capture ",onClick:()=>{u([...i,{key:"",value:""}])}},e(ae,null),e("span",null,"Add Header"))),e("div",{className:"setting_container--setheaders"},e("div",{className:"setting_set-headers"},i?.map((r,b)=>e("div",{key:`${b}____`,className:"setting_set-headers--inputs"},e("div",{className:"setting__set-headers--key-value setting__set-headers--key"},e("span",null,"Key:"),e("input",{className:"setting_set-headers--inputs--key input",placeholder:"Authotization",value:r.key,onChange:N=>{u(y=>(y[b].key=N.target.value,y))}})),e("div",{className:"setting__set-headers--key-value setting__set-headers--value"},e("span",null,"Value:"),e("input",{className:"setting_set-headers--inputs--value input",placeholder:"some string ...",value:r.value,onChange:N=>{u(y=>(y[b].value=N.target.value,y))}})),i.length>1&&e("div",{className:"setting_set-headers--delete-button e2e-move-div e2e-move-close",onClick:()=>s(b)},e(U,null))))),e("button",{className:"setting_set-headers--apply-button e2e-back-button e2e-add-capture ",onClick:()=>{let r={};for(let b of i){let{key:N,value:y}=b;r[N]=y}o(r)}},e(me,null),e("span",null,"Apply")))))}var Ct=({baseUrl:a})=>fetch(`${a}playground/static/get/schemas`).then(s=>s.json()),Xe=()=>{let{tabsData:a,setTabsData:s,activeTab:t,actsObj:o,addTab:i,setActiveTab:u,setService:p,setSchema:l,setAct:r,setPostFields:b,setGetFields:N,setFormData:y,setHistory:S,setResponse:R,resetGetFields:h,closeTab:z,resetPostFields:Y,setSchemasObj:K,setActsObj:Q,setModal:L,modal:O}=I(),[V,P]=C(""),[m,g]=C(!1),c=()=>window&&window.location?`${new URL(window.location.href).origin}/`:"http://localhost:1366/",[E,j]=C(""),B=X(()=>{g(!1)});$(()=>{_(c());let w=JSON.parse(localStorage.getItem("localHistory"));w&&S(w)},[]);let _=w=>{w&&j(w),p({data:"",index:t}),l({data:"",index:t}),h(t),Y(t),y({data:{},index:t}),Ct({baseUrl:w||E}).then(({schemas:n,acts:f})=>{Q(f),K(n);let T=localStorage.getItem("localTabsData");if(T){T=JSON.parse(T);let v=[],k=d=>{v.pop();let D=ce(d.formData);for(let Z in D.set)f[d.service][d.schema][d.act].validator.schema.set.schema[Z]===void 0&&delete D.set[Z];for(let Z in D.get)f[d.service][d.schema][d.act].validator.schema.get.schema[Z]===void 0&&delete D.get[Z];let J=le(D,{},"");d.postFields=f[d.service][d.schema][d.act].validator.schema.set.schema,d.getFields=f[d.service][d.schema][d.act].validator.schema.get.schema,v.push({...d,formData:J})};for(let d of T)d.service&&d.service in f&&v.push(d),d.schema&&!(d.schema in f[d.service])&&v.pop(),d.act&&!(d.act in f[d.service][d.schema])&&v.pop(),d.service&&d.schema&&d.act&&d.act in f[d.service][d.schema]&&k(d);v.length<1&&v.push({service:"",schema:"",act:"",postFields:{},getFields:{},formData:{},response:null}),s(v)}})},F=()=>{L(null)},ee=w=>{p({data:w.body.service,index:t}),l({data:w.body.model,index:t}),r({data:w.body.act,index:t});let n=o[w.body.service][w.body.model][w.body.act].validator.schema;N({data:n.get.schema,index:t}),b({data:n.set.schema,index:t}),R({data:null,index:t});let f=le(w.body.details,{},"");y({data:f,index:t}),F()};return e("div",{className:"cnt"},e("div",{className:"tabs-container",style:{display:"flex"}},a.map((w,n)=>e(q,null,e("div",{className:"tab-name","data-tab":t===n,onClick:()=>{u(n)}}," ",e("span",{title:a[n].act?`${a[n].schema} | ${a[n].act}`:a[n].schema?`${a[n].service} | ${a[n].schema}`:a[n].service?a[n].service:`Tab ${n}`}," ",a[n].act?`${a[n].schema} | ${a[n].act}`:a[n].schema?`${a[n].service} | ${a[n].schema}`:a[n].service?a[n].service:`Tab ${n}`),e("span",{className:` tab-close ${t===n?"active-tab-close":""}`,onClick:f=>{f.stopPropagation(),z(n)},title:"Close tab"},"x")))),e("span",{className:"add-tab",title:"Open a new tab",onClick:()=>{i(null),localStorage.setItem("localTabsData",JSON.stringify(a))}},"+")),e(Ue,{urlAddress:E}),e("button",{ref:B,className:"media--main-btn-wrapper ",onClick:()=>{g(!m)}},"menu"),e("div",{className:"main-btn-wrapper","data-show":m===!0},e("span",{className:"btn btn-modal ",onClick:()=>_()},e("span",{className:"btn-modal-title"},"Refetch"),e(_e,null)),e("span",{className:"btn btn-modal ",onClick:()=>L("SETTING")},e("span",{className:"btn-modal-title"},"Setting"),e(Ne,null)),e("span",{className:"btn btn-modal",onClick:()=>L("HISTORY")},e("span",{className:"btn-modal-title"},"History"),e(Te,null)),e("span",{className:"btn btn-modal",onClick:()=>L("E2E TEST")},e("span",{className:"btn-modal-title"},"E2E Test"),e(xe,null)),e("span",{className:" btn-modal-document","data-show":V==="document"},e("span",{className:"btn-modal-document--title","data-show":V==="document"},"Document")),e("span",{className:"btn btn-modal btn-doc",onClick:()=>L("SCHEMA"),onMouseEnter:()=>P("document"),onMouseLeave:()=>P("")},e("span",{className:"btn-modal-title"},"Schema"),e(we,null)),e("span",{className:"btn btn-modal btn-doc ",onClick:()=>L("ACT"),onMouseEnter:()=>P("document"),onMouseLeave:()=>P("")},e("span",{className:"btn-modal-title"},"Act"),e(Ee,null))),O!==null&&e(Ke,{toggle:F,title:O},O==="HISTORY"?e(Je,{setFormFromHistory:ee}):O==="SETTING"?e(We,{configUrl:_}):O==="E2E TEST"?e(Be,{baseUrl:E}):O==="SCHEMA"?e(Qe,null):O==="ACT"?e(he,null):e(q,null)))};Me(e(Ae,null,e(Xe,null)),document.getElementById("root")); +`),"You can capture _id with [body][0][_id] or for name: [body][0][name]."),e("img",{src:"https://github.com/MiaadTeam/lesan/assets/6236123/1cea1db3-44c2-49b5-8739-a9afa8a6e1fa",alt:"full screen e2e",className:"e2e_help--fullscreen-img"})),e("hr",null),e("section",{className:"e2e_help--section---right-side"},e("img",{src:"https://github.com/MiaadTeam/lesan/assets/6236123/5c9899fa-8be6-42d1-8f4f-8fd965264645",alt:"full screen e2e",className:"e2e_help--fullscreen-img"}),e("p",null,"The left side is a text area for writing headers and the body of the request in JSON format. In this text area, you can use a text parser to implement the captured value you captured before inside these symbols ","{}",".")),e("hr",null),e("p",null,"Also, we have some buttons on the top right side of each request section. With these buttons, you can move up and down and delete requests.",e("img",{src:"https://github.com/MiaadTeam/lesan/assets/6236123/900a5b98-3e7f-460a-a756-403ecaedcf86",alt:"full screen e2e",className:"e2e_help--fullscreen-img"}))),e("hr",null),e("div",null,e("p",null,"After clicking on the Run E2E Test button, you can see the result of each test. Also, in the result view, you can export the results in JSON format."),e("img",{src:"https://github.com/MiaadTeam/lesan/assets/6236123/8c367965-a1b7-40b8-8638-60d2d0ea2609",alt:"full screen e2e",className:"e2e_help--fullscreen-img"})),e("hr",null),e("div",null,e("p",null,"Additionally, you can go to the E2E Test modal page from the main page by clicking on the Test icon inside the response header section. This way, you can add a new test section and prepopulate the Header and Body text areas with the sent request from the main page.",e("img",{src:"https://github.com/MiaadTeam/lesan/assets/6236123/74dc9e93-2b41-4840-afc1-f4e8e83c9889",alt:"full screen e2e",className:"e2e_help--fullscreen-img"})))));function ae(){return e("svg",{width:"25px",height:"25px",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg"},e("path",{d:"M11 8C11 7.44772 11.4477 7 12 7C12.5523 7 13 7.44772 13 8V11H16C16.5523 11 17 11.4477 17 12C17 12.5523 16.5523 13 16 13H13V16C13 16.5523 12.5523 17 12 17C11.4477 17 11 16.5523 11 16V13H8C7.44771 13 7 12.5523 7 12C7 11.4477 7.44772 11 8 11H11V8Z",fill:"lightcoral"}),e("path",{"fill-rule":"evenodd","clip-rule":"evenodd",d:"M23 12C23 18.0751 18.0751 23 12 23C5.92487 23 1 18.0751 1 12C1 5.92487 5.92487 1 12 1C18.0751 1 23 5.92487 23 12ZM3.00683 12C3.00683 16.9668 7.03321 20.9932 12 20.9932C16.9668 20.9932 20.9932 16.9668 20.9932 12C20.9932 7.03321 16.9668 3.00683 12 3.00683C7.03321 3.00683 3.00683 7.03321 3.00683 12Z",fill:"bisque"}))}var lt=()=>e("svg",{width:"25px",viewBox:"-0.5 0 25 25",fill:"none",xmlns:"http://www.w3.org/2000/svg"},e("path",{d:"M12 22.4199C17.5228 22.4199 22 17.9428 22 12.4199C22 6.89707 17.5228 2.41992 12 2.41992C6.47715 2.41992 2 6.89707 2 12.4199C2 17.9428 6.47715 22.4199 12 22.4199Z",stroke:"bisque","stroke-width":"1.5","stroke-linecap":"round","stroke-linejoin":"round"}),e("path",{id:"Vector",d:"M16 16L12 12M12 12L8 8M12 12L16 8M12 12L8 16",stroke:"lightcoral","stroke-width":"1.5","stroke-linecap":"round","stroke-linejoin":"round"})),Y=lt;function ge(){return e("svg",{width:"25px",viewBox:"-0.5 0 25 25",fill:"none",xmlns:"http://www.w3.org/2000/svg"},e("path",{d:"M12 22.4199C17.5228 22.4199 22 17.9428 22 12.4199C22 6.89707 17.5228 2.41992 12 2.41992C6.47715 2.41992 2 6.89707 2 12.4199C2 17.9428 6.47715 22.4199 12 22.4199Z",stroke:"bisque","stroke-width":"1.5","stroke-linecap":"round","stroke-linejoin":"round"}),e("path",{d:"M16 10.99L13.13 14.05C12.9858 14.2058 12.811 14.3298 12.6166 14.4148C12.4221 14.4998 12.2122 14.5437 12 14.5437C11.7878 14.5437 11.5779 14.4998 11.3834 14.4148C11.189 14.3298 11.0142 14.2058 10.87 14.05L8 10.99",stroke:"lightcoral","stroke-width":"1.5","stroke-linecap":"round","stroke-linejoin":"round"}))}function oe(){return e("svg",{width:"25px",height:"25px",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg"},e("path",{d:"M12 17V16.9929M12 14.8571C12 11.6429 15 12.3571 15 9.85714C15 8.27919 13.6568 7 12 7C10.6567 7 9.51961 7.84083 9.13733 9",stroke:"lightcoral","stroke-width":"1.5","stroke-linecap":"round","stroke-linejoin":"round"}),e("path",{"fill-rule":"evenodd","clip-rule":"evenodd",d:"M23 12C23 18.0751 18.0751 23 12 23C5.92487 23 1 18.0751 1 12C1 5.92487 5.92487 1 12 1C18.0751 1 23 5.92487 23 12ZM3.00683 12C3.00683 16.9668 7.03321 20.9932 12 20.9932C16.9668 20.9932 20.9932 16.9668 20.9932 12C20.9932 7.03321 16.9668 3.00683 12 3.00683C7.03321 3.00683 3.00683 7.03321 3.00683 12Z",fill:"bisque"}))}function be(){return e("svg",{width:"25px",height:"25px",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg"},e("path",{"fill-rule":"evenodd","clip-rule":"evenodd",d:"M12.75 13.9393L15.9697 10.7197L17.0303 11.7803L12 16.8107L6.96967 11.7803L8.03033 10.7197L11.25 13.9393L11.25 4.5L12.75 4.5L12.75 13.9393Z",fill:"lightcoral"}),e("path",{"fill-rule":"evenodd","clip-rule":"evenodd",d:"M23 12C23 18.0751 18.0751 23 12 23C5.92487 23 1 18.0751 1 12C1 5.92487 5.92487 1 12 1C18.0751 1 23 5.92487 23 12ZM3.00683 12C3.00683 16.9668 7.03321 20.9932 12 20.9932C16.9668 20.9932 20.9932 16.9668 20.9932 12C20.9932 7.03321 16.9668 3.00683 12 3.00683C7.03321 3.00683 3.00683 7.03321 3.00683 12Z",fill:"bisque"}))}function ye(){return e("svg",{width:"25px",height:"25px",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg"},e("path",{d:"M13.8876 9.9348C14.9625 10.8117 15.5 11.2501 15.5 12C15.5 12.7499 14.9625 13.1883 13.8876 14.0652C13.5909 14.3073 13.2966 14.5352 13.0261 14.7251C12.7888 14.8917 12.5201 15.064 12.2419 15.2332C11.1695 15.8853 10.6333 16.2114 10.1524 15.8504C9.6715 15.4894 9.62779 14.7336 9.54038 13.2222C9.51566 12.7947 9.5 12.3757 9.5 12C9.5 11.6243 9.51566 11.2053 9.54038 10.7778C9.62779 9.26636 9.6715 8.51061 10.1524 8.1496C10.6333 7.78859 11.1695 8.11466 12.2419 8.76679C12.5201 8.93597 12.7888 9.10831 13.0261 9.27492C13.2966 9.46483 13.5909 9.69274 13.8876 9.9348Z",stroke:"lightcoral","stroke-width":"2"}),e("path",{"fill-rule":"evenodd","clip-rule":"evenodd",d:"M23 12C23 18.0751 18.0751 23 12 23C5.92487 23 1 18.0751 1 12C1 5.92487 5.92487 1 12 1C18.0751 1 23 5.92487 23 12ZM3.00683 12C3.00683 16.9668 7.03321 20.9932 12 20.9932C16.9668 20.9932 20.9932 16.9668 20.9932 12C20.9932 7.03321 16.9668 3.00683 12 3.00683C7.03321 3.00683 3.00683 7.03321 3.00683 12Z",fill:"bisque"}))}function Ce(){return e("svg",{width:"25px",viewBox:"-0.5 0 25 25",fill:"none",xmlns:"http://www.w3.org/2000/svg"},e("path",{d:"M12 22.4199C17.5228 22.4199 22 17.9428 22 12.4199C22 6.89707 17.5228 2.41992 12 2.41992C6.47715 2.41992 2 6.89707 2 12.4199C2 17.9428 6.47715 22.4199 12 22.4199Z",stroke:"bisque","stroke-width":"1.5","stroke-linecap":"round","stroke-linejoin":"round"}),e("path",{d:"M8 13.8599L10.87 10.8C11.0125 10.6416 11.1868 10.5149 11.3815 10.4282C11.5761 10.3415 11.7869 10.2966 12 10.2966C12.2131 10.2966 12.4239 10.3415 12.6185 10.4282C12.8132 10.5149 12.9875 10.6416 13.13 10.8L16 13.8599",stroke:"lightcoral","stroke-width":"1.5","stroke-linecap":"round","stroke-linejoin":"round"}))}var Ve={fontFamily:'-apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial',display:"inline-block",borderRadius:3,padding:"10px 10px",color:"#f8f8f2",textShadow:"1px 1px black",whiteSpace:"pre-wrap"};var dt=/("(\\u[a-zA-Z0-9]{4}|\\[^u]|[^\\"])*"(\s*:)?|\b(true|false|null)\b|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?)/g,pt=s=>JSON.stringify(s,mt,2).replace(/&/g,"&").replace(//g,">").replace(dt,t=>{let r="cute-number",o=t;return/^"/.test(t)?/:$/.test(t)?(r="cute-key",o=o.replace(":",':')):t==='"undefined"'?r="cute-undefined":t==='"[Function]"'?r="cute-function":r="cute-string":/true|false/.test(t)?r="cute-boolean":/null/.test(t)&&(r="cute-null"),`${o}`}),mt=(s,a)=>typeof a=="function"?"[Function]":typeof a>"u"?"undefined":a,Be=s=>pt(s).replace(/"/g,"");var I=({jsonData:s})=>{let a=Be(s);return e(O,null,e("pre",{style:Ve,dangerouslySetInnerHTML:{__html:a}}))};function ne(){return e("svg",{fill:"#fff",height:"20px",width:"20px",version:"1.1",id:"Capa_1",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 452.025 452.025"},e("g",{id:"SVGRepo_bgCarrier","stroke-width":"0"}),e("g",{id:"SVGRepo_tracerCarrier","stroke-linecap":"round","stroke-linejoin":"round"}),e("g",{id:"SVGRepo_iconCarrier"}," ",e("g",null," ",e("g",null," ",e("path",{d:"M362.612,34.125h-55.2l13.6-13.6c4.7-4.7,4.7-12.3,0-17s-12.3-4.7-17,0l-34,34.1c-2.3,2.3-3.5,5.3-3.5,8.5 s1.3,6.2,3.5,8.5l34.1,34.1c2.3,2.3,5.4,3.5,8.5,3.5s6.1-1.2,8.5-3.5c4.7-4.7,4.7-12.3,0-17l-13.6-13.6h55.2c35.9,0,65,29.2,65,65 v40.3c0,6.6,5.4,12,12,12s12-5.4,12-12v-40.3C451.712,74.025,411.712,34.125,362.612,34.125z"})," ",e("path",{d:"M438.812,230.925h-197.1c-6.6,0-12,5.4-12,12v197.1c0,6.6,5.4,12,12,12h197.1c6.6,0,12-5.4,12-12v-197.1 C450.812,236.225,445.412,230.925,438.812,230.925z M426.812,428.025h-173.1v-173.1h173.1L426.812,428.025L426.812,428.025z"})," ",e("path",{d:"M147.912,363.325c-4.7-4.7-12.3-4.7-17,0c-4.7,4.7-4.7,12.3,0,17l13.6,13.6h-55.2c-35.9,0-65-29.2-65-65v-40.3 c0-6.6-5.4-12-12-12s-12,5.4-12,12v40.3c0,49.1,39.9,89,89,89h55.2l-13.6,13.6c-4.7,4.7-4.7,12.3,0,17c2.3,2.3,5.4,3.5,8.5,3.5 s6.1-1.2,8.5-3.5l34.1-34.1c4.7-4.7,4.7-12.3,0-17L147.912,363.325z"})," ",e("path",{d:"M13.212,24.025c3.2,0,6.3-1.3,8.5-3.5s3.5-5.3,3.5-8.5c0-3.1-1.3-6.3-3.5-8.5s-5.3-3.5-8.5-3.5s-6.3,1.3-8.5,3.5 s-3.5,5.3-3.5,8.5s1.3,6.3,3.5,8.5C7.012,22.725,10.012,24.025,13.212,24.025z"})," ",e("path",{d:"M111.812,24.025c6.6,0,12-5.4,12-12s-5.4-12-12-12s-12,5.4-12,12S105.112,24.025,111.812,24.025z"})," ",e("path",{d:"M62.512,24.025c6.6,0,12-5.4,12-12s-5.4-12-12-12s-12,5.4-12,12S55.912,24.025,62.512,24.025z"})," ",e("path",{d:"M161.012,24.025c6.6,0,12-5.4,12-12s-5.4-12-12-12s-12,5.4-12,12S154.412,24.025,161.012,24.025z"})," ",e("path",{d:"M210.312,0.025c-3.1,0-6.3,1.3-8.5,3.5s-3.5,5.3-3.5,8.5s1.3,6.3,3.5,8.5s5.3,3.5,8.5,3.5s6.3-1.3,8.5-3.5 s3.5-5.3,3.5-8.5s-1.3-6.3-3.5-8.5S213.512,0.025,210.312,0.025z"})," ",e("path",{d:"M210.312,147.925c-6.6,0-12,5.4-12,12s5.4,12,12,12s12-5.4,12-12C222.312,153.225,217.012,147.925,210.312,147.925z"})," ",e("path",{d:"M210.312,98.625c-6.6,0-12,5.4-12,12s5.4,12,12,12s12-5.4,12-12C222.312,103.925,217.012,98.625,210.312,98.625z"})," ",e("path",{d:"M210.312,49.325c-6.6,0-12,5.4-12,12s5.4,12,12,12s12-5.4,12-12C222.312,54.725,217.012,49.325,210.312,49.325z"})," ",e("path",{d:"M210.312,197.125c-3.2,0-6.3,1.3-8.5,3.5s-3.5,5.3-3.5,8.5c0,3.1,1.3,6.3,3.5,8.5s5.3,3.5,8.5,3.5s6.3-1.3,8.5-3.5 s3.5-5.3,3.5-8.5s-1.3-6.3-3.5-8.5C216.613,198.425,213.512,197.125,210.312,197.125z"})," ",e("path",{d:"M161.012,221.125c6.6,0,12-5.4,12-12s-5.4-12-12-12s-12,5.4-12,12C149.012,215.825,154.412,221.125,161.012,221.125z"})," ",e("path",{d:"M111.812,221.125c6.6,0,12-5.4,12-12s-5.4-12-12-12s-12,5.4-12,12C99.812,215.825,105.112,221.125,111.812,221.125z"})," ",e("path",{d:"M62.512,221.125c6.6,0,12-5.4,12-12s-5.4-12-12-12s-12,5.4-12,12C50.512,215.825,55.912,221.125,62.512,221.125z"})," ",e("path",{d:"M13.212,221.125c3.2,0,6.3-1.3,8.5-3.5s3.5-5.3,3.5-8.5s-1.3-6.3-3.5-8.5s-5.3-3.5-8.5-3.5s-6.3,1.3-8.5,3.5 s-3.5,5.3-3.5,8.5c0,3.1,1.3,6.3,3.5,8.5C7.012,219.825,10.012,221.125,13.212,221.125z"})," ",e("path",{d:"M13.212,171.925c6.6,0,12-5.4,12-12s-5.4-12-12-12s-12,5.4-12,12S6.612,171.925,13.212,171.925z"})," ",e("path",{d:"M13.212,122.625c6.6,0,12-5.4,12-12s-5.4-12-12-12s-12,5.4-12,12C1.212,117.225,6.612,122.625,13.212,122.625z"})," ",e("path",{d:"M13.212,73.325c6.6,0,12-5.4,12-12s-5.4-12-12-12s-12,5.4-12,12S6.612,73.325,13.212,73.325z"})," ")," ")," "))}var $e=({results:s,setIsShowE2eResponse:a})=>{let[t,r]=y(0);return e("div",{style:{display:"flex",minWidth:"100%",position:"relative"},id:s[t].id},e("section",{className:"container-re"},e("div",{className:"container-re--header"},e("span",{className:"container-re--header--icon",onClick:()=>a(!0)},e(ne,null)),e("span",{className:"container-re-title"},"REQUEST")),e(I,{jsonData:s[t].request}),e("div",{className:"pagination",style:{position:"absolute",bottom:"0px",right:"-87.5px",zIndex:"1",backgroundColor:"#2c2e2c",padding:"9px 5px 5px 5px",display:"flex",gap:"5px",width:"175px",justifyContent:"flex-start",overflowY:"scroll",overflowWrap:"anywhere",whiteSpace:"nowrap",border:"1px solid bisque",borderBottom:"none",borderRadius:"7px 7px 0 0",color:"gainsboro",flexWrap:"wrap",height:"42px"}},s.map((o,c)=>e("span",{className:"pagination--item",style:{cursor:"pointer"},onClick:()=>r(c),"data-show":t===c},c+1)))),e("section",{className:"container-re container-response"},e("div",{className:"container-re--header"},e("span",{className:"container-re-title"},"RESPONSE"),e("span",{className:"e2e-re-timeNumber-request"},s[t].responseTime,"ms")),e(I,{jsonData:s[t].response})))};function Pe({sequence:s}){let[a,t]=y(!0);return e("div",{key:s.id,className:"container-detail"},a?e(O,null,e("section",{className:"sequence-re"},e("div",{className:"container-re--header"},e("span",{className:"container-re--header--icon",onClick:()=>t(!1)},e(ne,null)),e("span",{className:"container-re-title"},"Body Header")),e(I,{jsonData:JSON.parse(s.bodyHeader)})),e("section",{className:"sequence-re sequence-response "},e("div",{className:"container-re--header"},e("span",{className:"container-re-title"},"Description")),e("div",{className:"detail-sequence"},e("p",null,"you send ",e("span",null,s.repeat)," times of this request"),e("p",null,"the avrage time for each request is",e("span",null," ",s.time/s.repeat,"ms")),e("p",null,"and whole time is",e("span",null," ",s.time,"ms")),e("p",null,"this sequence sends",e("span",null," ",s.success)," success request and"," ",e("span",null," ",s.fails)," it be fails")))):e($e,{results:s.results,setIsShowE2eResponse:t}))}function Je({baseUrl:s}){let a=[],[t,r]=y([]);L(()=>{r(a)},[a]);let{e2eForms:o,setE2eForms:c}=H(),d={allReqPerformance:0,numberRequest:0,success:0,fails:0,sequenceDetail:[]},[p,l]=y(!0),[g,N]=y(!1),[b,E]=y(d),D=(i,m)=>{if(!(i===0&&m<=0)){let C=o[i];o.splice(i,1),o.splice(m,0,C),c([...o])}},V=i=>{o[i],o.splice(i,1),c([...o])},[P,B]=y("e2e"),W=()=>{let i=`data:text/json;chatset=utf-8,${encodeURIComponent(JSON.stringify(o))}`,m=document.createElement("a");m.href=i,m.download="Configdata.json",m.click()},K=i=>{let m=new FileReader;m.readAsText(i.target.files[0],"UTF-8"),m.onload=C=>{let w=JSON.parse(C.target.result);c(w)}},A=()=>{let i=`data:text/json;chatset=utf-8,${encodeURIComponent(JSON.stringify(b))}`,m=document.createElement("a");m.href=i,m.download="data.json",m.click()},M=async({baseUrl:i,options:m})=>await(await fetch(`${i}lesan`,m)).json(),q=(i,m)=>{for(let C in i){typeof i[C]=="object"&&q(i[C],m);let w=i[C];if(typeof w=="string"&&w.includes("{")){let h=[];for(let x=0;xw.slice(x+1,R[S])).forEach(x=>{for(let S of m)S.key===x&&(i[C]=i[C].replace(`{${x}}`,S.value))})}}},$=async()=>{let i=new Set,m={allReqPerformance:0,numberRequest:0,success:0,fails:0,sequenceDetail:[]},C=performance.now();for await(let h of o){let R=JSON.parse(h.bodyHeaders);q(R,i);let G={method:"POST",headers:{"Content-Type":"application/json",...R.headers},body:JSON.stringify(R.body)},x,S=performance.now(),n={id:F(),bodyHeader:h.bodyHeaders,time:0,repeat:0,success:0,fails:0,results:[]};for(let f=0;ff.key&&f.value).map(f=>{let T=f.value.split("["),u=[];return T.forEach(j=>{let X=j.slice(0,j.indexOf("]"));isNaN(Number(X))||(X=Number(X)),u.push(X)}),u.shift(),{key:f.key,value:u}}).forEach(f=>{if(f.value.length>0){let T=x;f.value.forEach(u=>{T=T[u]}),i.add({key:f.key,value:T})}}),m.sequenceDetail.push(n)}let w=performance.now();E({...m,allReqPerformance:w-C})},J=i=>{let m=[...o];m[i].repeat+=1,c([...m])},Z=i=>{let m=[...o];m[i].repeat>0&&(m[i].repeat-=1),c([...m])};return e("div",null,P==="result"?e("div",{style:{display:"flex",flexDirection:"column",gap:"7px",marginTop:"27px"}},e("div",{className:"results"},e("div",{className:"results-buttons"},e("button",{className:"btn e2e-back-button",onClick:()=>{E(d),B("e2e")}},e(se,null),e("span",null,"Back")),e("button",{className:"btn e2e-back-button e2e-export_results-button",onClick:A},e(z,null),e("span",null,"Export")))),e("div",{style:{padding:"30px",backgroundColor:"darkslategray",borderRadius:"10px",display:"flex",justifyContent:"space-between",flexWrap:"wrap",color:"gainsboro",border:"1px solid bisque"}},e("div",{style:{display:"flex",flexDirection:"column",padding:"5px"}},e("span",null,"All Request Count: ",b.numberRequest),e("span",null," ","All Request Time: ",b.allReqPerformance,"ms")),e("div",{style:{display:"flex",flexDirection:"column",padding:"5px"}},e("span",null,"All Success Request: ",b.success),e("span",null,"All Fails Request : ",b.fails," ")),e("div",{style:{display:"flex",flexDirection:"column",padding:"5px"}},e("span",null,"Best Request Time: ",t[0],"ms"),e("span",null,"worst Request Time : ",t[t.length-1],"ms"))),e("div",null,b.sequenceDetail.map(i=>(a.push(i.time),a.sort(function(m,C){return m-C}),e("div",null,e(Pe,{sequence:i})))))):P==="e2e"?e(O,null,e("div",{className:"sidebar__section sidebar__section--headers"},o.map((i,m)=>e(O,null,e("div",{className:"sidebar__input-double",key:i.id},o.length>1&&e("div",{className:"e2e-move-buttons"},e("div",{className:"e2e-move-div",onClick:()=>D(m,m-1)},e(Ce,null)),e("div",{className:"e2e-move-div",onClick:()=>D(m,m+1)},e(ge,null)),e("div",{className:"e2e-move-div e2e-move-close",onClick:()=>V(m)},e(Y,null))),e("div",{className:"sidebar__section-body-heading"},e("div",{className:"sidebar__section-heading"},"set test body and headers"),e("textarea",{placeholder:"please paste a request body here",value:i.bodyHeaders,name:`${i.id}-body`,rows:18,onChange:C=>{let w=[...o];w[m].bodyHeaders=C.target.value,c([...w])}})),e("div",{className:"sidebar__section-capture"},e("div",{className:"e2e_sidebar__section-heading"},"set repeat time"),e("div",{className:"repeat__number"},e("input",{className:"input",placeholder:"set repeat number",value:i.repeat,name:`${i.id}-repeat`,type:"number",onChange:C=>{let w=[...o];w[m].repeat=C.target.value,c([...w])}}),e("button",{className:"e2e-back-button e2e-export_results-button",onClick:()=>J(m)},"+"),e("button",{className:"e2e-back-button e2e-export_results-button",onClick:()=>Z(m)},"-")),e("div",{className:"e2e_sidebar__section-heading"},"capture variables"),e("button",{className:"btn btn--add e2e-back-button e2e-export_results-button e2e-add-capture ",onClick:()=>{let C=[...o];C[m].captures.push({key:"",value:""}),c([...C])}},"add capture"),i.captures.map((C,w)=>e(O,null,e("div",{className:"sidebar__section-add-capture"},e("input",{className:"input",placeholder:"set a variable name",value:C.key,onChange:h=>{let R=[...o];R[m].captures[w].key=h.target.value,c([...R])}}),e("input",{className:"input",placeholder:"set a value for variable",value:C.value,onChange:h=>{let R=[...o];R[m].captures[w].value=h.target.value,c([...R])}})),e("hr",null)))))))),e("button",{className:"btn btn-show-results-buttons ",onClick:()=>N(!g)},"show btn"),e("div",{className:"results-buttons","data-show":g===!0},e("button",{className:"btn btn-e2e-action e2e-back-button e2e-export_results-button",onClick:()=>{c([...o,ue()])}},e(ae,null),e("span",null,"Add")),e("button",{className:"btn btn-e2e-action e2e-back-button e2e-run-botton e2e-export_results-button",onClick:async()=>{B("result"),await $()}},e(ye,null),e("span",null,"Run E2E Test")),e("input",{id:"actual-btn",type:"file",onChange:K,hidden:!0}),e("label",{htmlFor:"actual-btn",className:"btn btn-e2e-action e2e-back-button e2e-export_results-button"},e(be,null),e("span",null,"Import")),e("button",{className:"btn btn-e2e-action e2e-back-button e2e-export_results-button",onClick:W},e(z,null),e("span",null,"Export")),e("button",{onClick:()=>B("help"),className:"btn btn-e2e-action e2e-back-button e2e-export_results-button"},e(oe,null),e("span",null,"Help")))):P==="help"?e(qe,{setView:B}):"")}function de(s){let a=Math.floor(s/36e5),t=Math.floor(s%36e5/6e4),r=Math.floor(s%36e4%6e4/1e3);return a>0?`${a}h ${t}m ${r}s`:t>0?`${t}m ${r}s`:r>0?`${r}s`:`${s}ms`}var Ze=(s,a)=>{let t=U(!0);L(()=>{let r=()=>{};if(t.current?t.current=!1:r=s(),r&&typeof r=="function")return r},a)};function Se(){return e("svg",{id:"Layer_1","data-name":"Layer 1",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 105.7 122.88",width:20},e("path",{fill:"white",d:"M30.46,14.57V5.22A5.18,5.18,0,0,1,32,1.55v0A5.19,5.19,0,0,1,35.68,0H70a5.22,5.22,0,0,1,3.67,1.53l0,0a5.22,5.22,0,0,1,1.53,3.67v9.35h27.08a3.36,3.36,0,0,1,3.38,3.37V29.58A3.38,3.38,0,0,1,102.32,33H98.51l-8.3,87.22a3,3,0,0,1-2.95,2.69H18.43a3,3,0,0,1-3-2.95L7.19,33H3.37A3.38,3.38,0,0,1,0,29.58V17.94a3.36,3.36,0,0,1,3.37-3.37Zm36.27,0V8.51H39v6.06ZM49.48,49.25a3.4,3.4,0,0,1,6.8,0v51.81a3.4,3.4,0,1,1-6.8,0V49.25ZM69.59,49a3.4,3.4,0,1,1,6.78.42L73,101.27a3.4,3.4,0,0,1-6.78-.43L69.59,49Zm-40.26.42A3.39,3.39,0,1,1,36.1,49l3.41,51.8a3.39,3.39,0,1,1-6.77.43L29.33,49.46ZM92.51,33.38H13.19l7.94,83.55H84.56l8-83.55Z"}))}function Ge({setFormFromHistory:s}){let{history:a,setHistory:t,deleteItemHistory:r}=H(),[o,c]=y("");return Ze(()=>{localStorage.setItem("localHistory",JSON.stringify(a))},[a]),e(O,null,a&&a?.length>0?e("div",null,e("br",null),a.map((d,p)=>e("div",{className:"container-detail",id:d.id},e("section",{className:"container-re"},e("div",{style:{position:"relative",borderBottom:"1px solid gainsboro"}},e("span",{className:"container-re-title"},"REQUEST"),e("span",{className:"history-re-detail-date"},d.reqDate)),e("div",{className:"container-re-detail"},e("div",{className:"container-re-detail-title"}," ",e(I,{jsonData:d.request.body.model}),e("span",null,"|"),e("div",null,e(I,{jsonData:d.request.body.act}))),o===d.id?e("button",{onClick:()=>c(""),className:"history-re-detail-button"},"Hide",e("span",{className:"history-re-detail-button-icon"},"\u2013")):e("button",{onClick:()=>{c(d.id),document.getElementById(d.id)?.scrollIntoView()},className:"history-re-detail-button"},"Show"," ",e("span",{className:"history-re-detail-button-icon"},"+"))),e("div",{className:"history-re-detail-complete","data-show":o===d.id}," ",e(I,{jsonData:d.request}))),e("section",{className:"container-re container-response"},e("div",{className:"history-re-title_delete",style:{position:"relative",borderBottom:"1px solid gainsboro"}},e("span",{className:"history-re-delete",onClick:l=>{l.stopPropagation(),r(p)}},e(Y,null)),e("span",{className:"container-re-title history-response-title"},"RESPONSE"),e("span",{className:"history-re-detail-date history-response-took"},de(d.response.tookTime))),e("div",{className:"container-re-detail"},e("div",{className:"history-re-detail-title"},e("div",{className:"history-re-response-title"}," ",e("span",{className:"history-re-response-title-status"},"success:"),e("div",{className:"history-re-response-info"},e(I,{jsonData:d.response.success})))),e("button",{onClick:()=>s(d.request),className:"history-re-detail-button"},"Use"," ",e("span",{className:"history-re-detail-button-icon"},"\u279C"," "))),e("div",{className:"history-re-detail-complete","data-show":o===d.id}," ",e(I,{jsonData:d.response})))))):e("span",{className:"no-history"},'"There is no history to display"'),a&&a.length>0?e("div",{className:"clear-history"},e("button",{className:"btn clear-history-button tooltip",onClick:()=>{confirm("Clear All History?")==!0&&t([])}},e(Se,null),e("span",{className:"tooltip-text"},"Clear History"))):"")}function Te(){return e("svg",{width:"25px",viewBox:"0 0 26 24",fill:"none",xmlns:"http://www.w3.org/2000/svg"},e("g",{id:"SVGRepo_bgCarrier","stroke-width":"0"}),e("g",{id:"SVGRepo_tracerCarrier","stroke-linecap":"round","stroke-linejoin":"round"}),e("g",{id:"SVGRepo_iconCarrier"}," ",e("path",{d:"M4 6V19C4 20.6569 5.34315 22 7 22H17C18.6569 22 20 20.6569 20 19V9C20 7.34315 18.6569 6 17 6H4ZM4 6V5",stroke:"lightcoral","stroke-width":"1.5"})," ",e("path",{d:"M18 6.00002V6.75002H18.75V6.00002H18ZM15.7172 2.32614L15.6111 1.58368L15.7172 2.32614ZM4.91959 3.86865L4.81353 3.12619H4.81353L4.91959 3.86865ZM5.07107 6.75002H18V5.25002H5.07107V6.75002ZM18.75 6.00002V4.30604H17.25V6.00002H18.75ZM15.6111 1.58368L4.81353 3.12619L5.02566 4.61111L15.8232 3.0686L15.6111 1.58368ZM4.81353 3.12619C3.91638 3.25435 3.25 4.0227 3.25 4.92895H4.75C4.75 4.76917 4.86749 4.63371 5.02566 4.61111L4.81353 3.12619ZM18.75 4.30604C18.75 2.63253 17.2678 1.34701 15.6111 1.58368L15.8232 3.0686C16.5763 2.96103 17.25 3.54535 17.25 4.30604H18.75ZM5.07107 5.25002C4.89375 5.25002 4.75 5.10627 4.75 4.92895H3.25C3.25 5.9347 4.06532 6.75002 5.07107 6.75002V5.25002Z",fill:"lightcoral"})," ",e("path",{opacity:"0.5",d:"M8 12H16",stroke:"lightcoral","stroke-width":"1.5","stroke-linecap":"round"})," ",e("path",{opacity:"0.5",d:"M8 15.5H13.5",stroke:"lightcoral","stroke-width":"1.5","stroke-linecap":"round"})," "))}function Ee(){return e("svg",{width:"25px",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg"},e("path",{"fill-rule":"evenodd",opacity:"0.5","clip-rule":"evenodd",d:"M5.07868 5.06891C8.87402 1.27893 15.0437 1.31923 18.8622 5.13778C22.6824 8.95797 22.7211 15.1313 18.9262 18.9262C15.1312 22.7211 8.95793 22.6824 5.13774 18.8622C2.87389 16.5984 1.93904 13.5099 2.34047 10.5812C2.39672 10.1708 2.775 9.88377 3.18537 9.94002C3.59575 9.99627 3.88282 10.3745 3.82658 10.7849C3.4866 13.2652 4.27782 15.881 6.1984 17.8016C9.44288 21.0461 14.6664 21.0646 17.8655 17.8655C21.0646 14.6664 21.046 9.44292 17.8015 6.19844C14.5587 2.95561 9.33889 2.93539 6.13935 6.12957L6.88705 6.13333C7.30126 6.13541 7.63535 6.47288 7.63327 6.88709C7.63119 7.3013 7.29372 7.63539 6.87951 7.63331L4.33396 7.62052C3.92269 7.61845 3.58981 7.28556 3.58774 6.8743L3.57495 4.32874C3.57286 3.91454 3.90696 3.57707 4.32117 3.57498C4.73538 3.5729 5.07285 3.907 5.07493 4.32121L5.07868 5.06891Z",fill:"lightcoral"}),e("path",{d:"M12 7.25C12.4142 7.25 12.75 7.58579 12.75 8V11.6893L15.0303 13.9697C15.3232 14.2626 15.3232 14.7374 15.0303 15.0303C14.7374 15.3232 14.2626 15.3232 13.9697 15.0303L11.5429 12.6036C11.3554 12.416 11.25 12.1617 11.25 11.8964V8C11.25 7.58579 11.5858 7.25 12 7.25Z",fill:"lightcoral"}))}function _e(){return e("svg",{height:"25px",width:"25px",version:"1.1",id:"Layer_1",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 512 512",fill:"#000000"},e("g",{id:"SVGRepo_bgCarrier","stroke-width":"0"}),e("g",{id:"SVGRepo_tracerCarrier","stroke-linecap":"round","stroke-linejoin":"round"}),e("g",{id:"SVGRepo_iconCarrier"}," ",e("circle",{opacity:.34,style:"fill:lightcoral;",cx:"256.602",cy:"226.267",r:"171.059"})," ",e("path",{style:"fill:lightcoral",d:"M482.195,226.196C482.195,101.471,380.725,0,256.001,0S29.804,101.471,29.804,226.196 c0,7.409,6.007,13.416,13.416,13.416s13.416-6.008,13.416-13.416c0-109.93,89.434-199.363,199.363-199.363 s199.363,89.434,199.363,199.363c0,109.928-89.434,199.362-199.363,199.362h-23.276l33.282-37.255 c4.937-5.525,4.458-14.007-1.067-18.944c-5.525-4.937-14.008-4.457-18.944,1.068l-47.576,53.255c-7.788,8.718-7.788,21.866,0,30.584 l47.576,53.255c2.651,2.968,6.322,4.478,10.01,4.478c3.181,0,6.375-1.126,8.934-3.41c5.526-4.937,6.004-13.419,1.067-18.944 l-33.282-37.255h23.276C380.725,452.39,482.195,350.919,482.195,226.196z"})," "))}function we(){return e("svg",{fill:"lightcoral",height:"25px",width:"25px",viewBox:"0 0 436.668 436.668"},e("g",{id:"SVGRepo_bgCarrier","stroke-width":"0"}),e("g",{id:"SVGRepo_tracerCarrier","stroke-linecap":"round","stroke-linejoin":"round"}),e("g",{id:"SVGRepo_iconCarrier"}," ",e("g",null," ",e("path",{opacity:.34,d:"M203.334,85.818v59.141c4.884-0.8,9.893-1.223,15-1.223s10.116,0.423,15,1.223V85.818c14.657-5.935,25-20.296,25-37.081 c0-22.092-17.909-40-40-40s-40,17.908-40,40C178.334,65.522,188.677,79.883,203.334,85.818z"})," ",e("path",{opacity:.34,d:"M70.642,204.021l56.242,18.274c1.539-10.139,4.732-19.74,9.292-28.525L79.912,175.49 c-1.115-15.774-11.577-30.049-27.541-35.236c-21.01-6.827-43.576,4.672-50.403,25.682c-6.827,21.01,4.672,43.576,25.682,50.403 C43.614,221.525,60.468,216.126,70.642,204.021z"})," ",e("path",{opacity:.34,d:"M152.577,301.224l-34.792,47.887c-15.346-3.813-32.156,1.725-42.022,15.305c-12.985,17.872-9.023,42.887,8.849,55.872 s42.887,9.023,55.872-8.849c9.866-13.579,9.939-31.277,1.571-44.694l34.772-47.86C167.8,314.333,159.616,308.347,152.577,301.224z"})," ",e("path",{opacity:.34,d:"M318.883,349.112l-34.792-47.887c-7.039,7.122-15.223,13.109-24.25,17.661l34.772,47.86 c-8.369,13.417-8.296,31.115,1.571,44.694c12.985,17.872,38,21.834,55.872,8.849s21.834-38,8.849-55.872 C351.038,350.837,334.229,345.298,318.883,349.112z"})," ",e("path",{opacity:.34,d:"M434.699,165.936c-6.827-21.01-29.393-32.508-50.403-25.682c-15.964,5.187-26.426,19.462-27.541,35.236l-56.263,18.281 c4.559,8.784,7.752,18.386,9.292,28.525l56.242-18.274c10.174,12.105,27.028,17.504,42.992,12.318 C430.028,209.512,441.526,186.946,434.699,165.936z"})," ",e("path",{d:"M280.834,236.237c0-34.462-28.037-62.5-62.5-62.5s-62.5,28.038-62.5,62.5s28.037,62.5,62.5,62.5 S280.834,270.7,280.834,236.237z"})," ")," "))}function xe(){return e("svg",{width:"25px",height:25,viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg"},e("path",{d:"M3 9.10986V14.8799C3 16.9999 3 16.9999 5 18.3499L10.5 21.5299C11.33 22.0099 12.68 22.0099 13.5 21.5299L19 18.3499C21 16.9999 21 16.9999 21 14.8899V9.10986C21 6.99986 21 6.99986 19 5.64986L13.5 2.46986C12.68 1.98986 11.33 1.98986 10.5 2.46986L5 5.64986C3 6.99986 3 6.99986 3 9.10986Z",stroke:"lightcoral","stroke-width":"1.5","stroke-linecap":"round","stroke-linejoin":"round",opacity:.34}),e("path",{d:"M12 15C13.6569 15 15 13.6569 15 12C15 10.3431 13.6569 9 12 9C10.3431 9 9 10.3431 9 12C9 13.6569 10.3431 15 12 15Z",stroke:"lightcoral","stroke-width":"1.5","stroke-linecap":"round","stroke-linejoin":"round"}))}function Ne(){return e("svg",{width:"25px",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg"},e("path",{opacity:.5,d:"M9.74872 2.49415L18.1594 7.31987M9.74872 2.49415L2.65093 14.7455C1.31093 17.0584 2.10615 20.0159 4.42709 21.3513C6.74803 22.6867 9.7158 21.8942 11.0558 19.5813L12.5511 17.0003L14.1886 14.1738L15.902 11.2163L18.1594 7.31987M9.74872 2.49415L8.91283 2M18.1594 7.31987L19 7.80374",stroke:"lightcoral","stroke-width":"1.5","stroke-linecap":"round"}),e("path",{d:"M15.9021 11.2164L13.3441 9.74463M14.1887 14.1739L9.98577 11.7557M12.5512 17.0004L9.93848 15.4972",stroke:"lightcpral","stroke-width":"1.5","stroke-linecap":"round"}),e("path",{d:"M22 14.9166C22 16.0672 21.1046 16.9999 20 16.9999C18.8954 16.9999 18 16.0672 18 14.9166C18 14.1967 18.783 13.2358 19.3691 12.6174C19.7161 12.2512 20.2839 12.2512 20.6309 12.6174C21.217 13.2358 22 14.1967 22 14.9166Z",stroke:"lightcoral","stroke-width":"1.5"}))}function pe(){return e("svg",{width:"28px",fill:"white",viewBox:"0 0 32 32",style:"fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2;",version:"1.1"},e("path",{d:"M9.101,7l8.899,0c1.857,-0 3.637,0.737 4.95,2.05c1.313,1.313 2.05,3.093 2.05,4.95l0,8.899c0.953,-0.195 1.837,-0.665 2.536,-1.363c0.937,-0.938 1.464,-2.21 1.464,-3.536c0,-2.977 0,-7.023 0,-10c0,-1.326 -0.527,-2.598 -1.464,-3.536c-0.938,-0.937 -2.21,-1.464 -3.536,-1.464c-2.977,0 -7.023,0 -10,0c-1.326,-0 -2.598,0.527 -3.536,1.464c-0.698,0.699 -1.168,1.583 -1.363,2.536Z"}),e("path",{d:"M23,14c0,-1.326 -0.527,-2.598 -1.464,-3.536c-0.938,-0.937 -2.21,-1.464 -3.536,-1.464c-2.977,0 -7.023,0 -10,0c-1.326,-0 -2.598,0.527 -3.536,1.464c-0.937,0.938 -1.464,2.21 -1.464,3.536c0,2.977 0,7.023 0,10c-0,1.326 0.527,2.598 1.464,3.536c0.938,0.937 2.21,1.464 3.536,1.464c2.977,-0 7.023,-0 10,-0c1.326,0 2.598,-0.527 3.536,-1.464c0.937,-0.938 1.464,-2.21 1.464,-3.536l0,-10Zm-15,10l10,0c0.552,0 1,-0.448 1,-1c0,-0.552 -0.448,-1 -1,-1l-10,0c-0.552,0 -1,0.448 -1,1c0,0.552 0.448,1 1,1Zm0,-4l10,0c0.552,0 1,-0.448 1,-1c0,-0.552 -0.448,-1 -1,-1l-10,0c-0.552,0 -1,0.448 -1,1c0,0.552 0.448,1 1,1Zm0,-4l10,0c0.552,0 1,-0.448 1,-1c0,-0.552 -0.448,-1 -1,-1l-10,0c-0.552,0 -1,0.448 -1,1c0,0.552 0.448,1 1,1Z"}),e("g",{id:"Icon"}))}function ke(){return e("svg",{width:25,height:25,fill:"#ffffff",version:"1.1",id:"Capa_1",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 104.778 104.778"},e("g",{id:"SVGRepo_bgCarrier","stroke-width":"0"}),e("g",{id:"SVGRepo_tracerCarrier","stroke-linecap":"round","stroke-linejoin":"round"}),e("g",{id:"SVGRepo_iconCarrier"}," ",e("g",null," ",e("path",{d:"M96.832,88.406l-23.02-39.908V21.959c4.385-1.595,7.447-5.797,7.447-10.618C81.26,5.089,76.176,0,69.928,0H42.6 c-6.251,0-11.334,5.089-11.334,11.341c0,4.815,3.07,9.017,7.457,10.618v26.55l-2.083,3.685V30.359c0-1.546-1.257-2.802-2.803-2.802 H8.723c-1.546,0-2.801,1.256-2.801,2.802v59.557c0,7.475,5.742,13.614,13.174,14.648c0.331,0.126,0.683,0.214,1.059,0.214h67.227 c4.79,0,8.433-1.762,10.282-4.979C99.503,96.598,99.208,92.543,96.832,88.406z M11.513,89.916v-6.079h8.254 c1.546,0,2.802-1.26,2.802-2.802c0-1.549-1.256-2.802-2.802-2.802h-8.254v-9.09h8.254c1.546,0,2.802-1.263,2.802-2.801 c0-1.555-1.256-2.802-2.802-2.802h-8.254v-9.097h8.254c1.546,0,2.802-1.256,2.802-2.801c0-1.55-1.256-2.803-2.802-2.803h-8.254 V33.149h19.512v56.767c0,5.095-4.375,9.248-9.756,9.248C15.883,99.17,11.513,95.011,11.513,89.916z M92.794,96.997 c-0.799,1.379-2.779,2.178-5.432,2.178H33.189c2.118-2.55,3.439-5.734,3.439-9.259V63.19c0.245-0.207,0.476-0.443,0.645-0.743 l6.679-11.82c0.236-0.422,0.364-0.898,0.364-1.379V19.776c0-1.415-1.048-2.603-2.449-2.78c-2.859-0.364-5.015-2.796-5.015-5.655 c0-3.161,2.571-5.738,5.731-5.738H69.91c3.165,0,5.734,2.577,5.734,5.738c0,2.859-2.155,5.286-5.017,5.655 c-1.401,0.178-2.446,1.365-2.446,2.78v29.472c0,0.493,0.122,0.977,0.374,1.401l23.396,40.559 C93.292,93.506,93.593,95.617,92.794,96.997z M76.466,79.53c0,5.412-4.377,9.794-9.801,9.794c-5.411,0-9.795-4.382-9.795-9.794 c0-5.406,4.384-9.795,9.795-9.795C72.089,69.735,76.466,74.124,76.466,79.53z M54.609,68.877c0,2.665-2.146,4.799-4.802,4.799 c-2.657,0-4.802-2.156-4.802-4.799c0-2.644,2.15-4.8,4.802-4.8C52.468,64.077,54.609,66.233,54.609,68.877z M58.195,58.048 c-1.672,0-3.015-1.341-3.015-3.01c0-1.667,1.343-3.009,3.015-3.009c1.663,0,3.015,1.343,3.015,3.009 C61.21,56.707,59.853,58.048,58.195,58.048z M49.534,86.315c0,1.669-1.352,3.009-3.016,3.009c-1.665,0-3.014-1.34-3.014-3.009 c0-1.663,1.349-3.016,3.014-3.016C48.182,83.3,49.534,84.652,49.534,86.315z M54.805,46.184c-2.185,0-3.956-1.771-3.956-3.957 c0-2.186,1.771-3.957,3.956-3.957c2.183,0,3.957,1.771,3.957,3.957C58.762,44.414,56.983,46.184,54.805,46.184z"})," ")," "))}function Re(){return e("svg",{version:"1.1",viewBox:"0 0 29.756 29.756",style:"enable-background:new 0 0 29.756 29.756;"},e("path",{d:"M29.049,5.009L28.19,4.151c-0.943-0.945-2.488-0.945-3.434,0L10.172,18.737l-5.175-5.173 c-0.943-0.944-2.489-0.944-3.432,0.001l-0.858,0.857c-0.943,0.944-0.943,2.489,0,3.433l7.744,7.752 c0.944,0.943,2.489,0.943,3.433,0L29.049,8.442C29.991,7.498,29.991,5.953,29.049,5.009z"}))}function Q(s){let a=U(null);return L(()=>{let t=r=>{a.current&&!a.current.contains(r?.target)&&s()};return document.addEventListener("click",t),()=>{document.removeEventListener("click",t)}},[a]),a}function re({className:s=""}){return e("svg",{width:25,height:25,viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",className:s},e("g",{id:"SVGRepo_bgCarrier","stroke-width":"0"}),e("g",{id:"SVGRepo_tracerCarrier","stroke-linecap":"round","stroke-linejoin":"round"}),e("g",{id:"SVGRepo_iconCarrier"}," ",e("path",{d:"M6 9L12 15L18 9M12 9H12.01",stroke:"lightcoral","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round"})," "))}function ie({items:s,onClickItem:a,incomeActiveItem:t,canShow:r}){let[o,c]=y(!1),[d,p]=y("");L(()=>{p(t||"")},[t]);let g=Q(()=>{c(!1)});return e("div",null,e("div",{className:"select",disabled:r},e("div",{className:`select--empty ${o===!0?"active-select--empty":""}`,ref:g,onClick:()=>c(!o)},e("div",{className:"select--empty--left-side"}," ",e("span",{className:`${d?"select-empty--left-side--clear":"select-empty--left-side--clear--inactive"}`,onClick:N=>{p(""),a(""),c(!1),N.stopPropagation()}},"x"),e("span",null,d)),e(re,null)),o&&e("div",{className:"select--sub-buttons","data-show":o},s?.map((N,b)=>e("div",{className:`option ${N===d?"active-option":""}`,onClick:()=>{p(N),a(N),c(!1)}},N)))))}var ut=({options:s,onChange:a})=>{let[t,r]=y([]),[o,c]=y(s),[d,p]=y(!1),l=E=>{if(t.includes(E)){let D=t.filter(V=>V.value!==E.value);r(D),c([...o,E]),a(D)}else{let D=o.filter(V=>V.value!==E.value);r([...t,E]),c(D),a([...t,E])}},g=()=>{r([]),a([]),c(s)},N=()=>{p(!d)},b=Q(()=>{p(!1)});return e("div",{ref:b,className:"multi-select__wrapper"},e("div",{className:"multi-select__field",onClick:N},e("div",{className:"multi-select__selected-item-wrapper"},t.map(E=>e("div",{className:"multi-select__selected-item",key:E},e("div",{className:"multi-select__selected-item-text"},E.label),e("div",{className:"multi-select__selected-item-btn",role:"button",onClick:D=>{D.stopPropagation(),l(E)}},"x")))),e("div",{className:"multi-select__icons-wrapper"},t.length?e("div",{className:"multi-select__close-icon-wrapper",role:"button",onClick:E=>{E.stopPropagation(),g()}},e("span",{className:"multi-select__close-icon"},"x")):null,e("div",{className:"multi-select__arrow-icon-wrapper",role:"button"},e(re,{className:"multi-select__arrow-icon"})))),d?e("div",{className:"multi-select__options"},o.length?o.map(E=>e("div",{key:E.value,onClick:D=>{D.stopPropagation(),l(E)},className:"multi-select__option"},e("div",{className:"multi-select__option-label"},E.label))):e("div",{className:"multi-select__option--no-option"},"No Options!")):null)},Ue=ut;var vt=({baseUrl:s,options:a})=>fetch(`${s}lesan`,a).then(t=>t.json()),ze=({urlAddress:s})=>{let{activeTab:a,tabsData:t,actsObj:r,headers:o,history:c,setService:d,setSchema:p,setAct:l,setPostFields:g,setGetFields:N,setFormData:b,setHistory:E,setResponse:D,resetGetFields:V,resetPostFields:P,addE2eForm:B,setModal:W}=H(),[K,A]=y(!1),M=(n,v,_,f)=>{for(let T in _)_[T].type==="enums"?f[`${v}.${T}`]=n:M(n,`${v}.${T}`,_[T].schema,f);return f},q=U(null),$=n=>{let{name:v,value:_,type:f,alt:T}=n.target,u;f==="number"?u=Number(_):T==="array"||T==="boolean"?u=JSON.parse(_):u=_,b({data:{...t[a].formData,[v]:u},index:a})},J=({key:n,field:v,isMultiEnum:_=!1,formData:f})=>v.type==="array"?J({key:n,formData:f,field:v.schema,isMultiEnum:!0}):v.type==="enums"&&_?e(Ue,{options:Object.keys(v.schema).map(T=>({label:T,value:v.schema[T]})),onChange:T=>{let u=T.map(j=>j.value);b({data:{...f,[`set.${n}`]:u},index:a}),localStorage.setItem("localTabsData",JSON.stringify(t))}}):v.type==="enums"?e(ie,{onClickItem:T=>{b({data:{...f,[`set.${n}`]:T},index:a}),localStorage.setItem("localTabsData",JSON.stringify(t))},incomeActiveItem:f[`set.${n}`],items:Object.keys(v.schema)}):e("input",{className:"input",placeholder:n,id:n,value:f[`set.${n}`],name:`set.${n}`,type:v.type==="number"?"number":"string",alt:v.type,onChange:$}),Z=({getField:n,keyName:v,margin:_})=>e("div",{style:{marginLeft:`${_+1}px`},className:"sidebar__section_container",key:`${a}.${v}`},e("div",{className:"sidebar__section-heading--subfields"},v),Object.keys(n.schema).map((f,T)=>n.schema[f].type==="enums"?e("div",{className:"input-cnt get-items",key:`${a}.${f}-${T}`},e("label",{htmlFor:f},v,".",f,":"),e("div",{className:"get-values"},e("span",{onClick:()=>{let u={...t[a].formData};delete u[`get.${v}.${f}`],b({data:u,index:a})}}),e("span",{className:t[a].formData[`get.${v}.${f}`]===0?"active":"",onClick:()=>{b({index:a,data:{...t[a].formData,[`get.${v}.${f}`]:0}})}},"0"),e("span",{className:t[a].formData[`get.${v}.${f}`]===1?"active":"",onClick:()=>{b({data:{...t[a].formData,[`get.${v}.${f}`]:1},index:a})}},"1"))):Z({getField:n.schema[f],keyName:`${v}.${f}`,margin:_+1}))),i=()=>{let n=le(t[a].formData);return{body:{method:"POST",headers:{"Content-Type":"application/json",...o},body:JSON.stringify({service:t[a].service,model:t[a].schema,act:t[a].act,details:n})}}},m=async n=>{n.preventDefault();let v=new Date().toLocaleDateString();A(!0),setTimeout(()=>{A(!1)},450);let _=performance.now(),f=await vt({baseUrl:s,options:i().body}),u=(performance.now()-_).toFixed(1);D({data:{...f,tookTime:u},index:a});let j=[{request:{...i().body,body:JSON.parse(i().body.body)},response:{...f,tookTime:u},id:F(),reqDate:v},...c];E(j),localStorage.setItem("localHistory",JSON.stringify(j)),localStorage.setItem("localTabsData",JSON.stringify(t))},C=t[a].service&&t[a].schema&&t[a].postFields&&t[a].getFields&&t[a].act,w=t[a].service,h=t[a].service&&t[a].schema,R=()=>{let n=JSON.stringify(t[a].response);navigator.clipboard.writeText(n)},G=()=>{let n=i();n.body.body=JSON.parse(n.body.body),navigator.clipboard.writeText(JSON.stringify(n))},x=()=>{let n=i();n.body.body=JSON.parse(n.body.body);let{method:v,..._}=n.body,f={id:F(),bodyHeaders:JSON.stringify({..._},null,2),repeat:1,captures:[]};B(f),W("E2E TEST")},S=(n,v)=>{if(v==="service"&&(d({data:n,index:a}),p({data:"",index:a})),v==="method"&&p({data:"",index:a}),v==="schema"&&p({data:n,index:a}),l({data:"",index:a}),V(a),P(a),v==="action"){let _=r[t[a].service][t[a].schema][n].validator.schema;q&&q.current&&q.current.reset(),l({data:n,index:a}),N({data:_.get.schema,index:a}),g({data:_.set.schema,index:a})}b({data:{},index:a}),localStorage.setItem("localTabsData",JSON.stringify(t))};return e(O,null,e("div",{className:"sidebar"},e("div",{className:"sidebar__sections-wrapper"},e("div",{className:"sidebar__section sidebar__section--services"},e("div",{className:"sidebar__section-heading"},"select services"),e(ie,{onClickItem:n=>S(n,"service"),items:Object.keys(r),incomeActiveItem:t[a].service?t[a].service:null})),e("div",{className:"sidebar__section sidebar__section--schema"},e("div",{onClick:()=>{},className:"sidebar__section-heading"},"select schema"),e(ie,{canShow:!w,onClickItem:n=>S(n,"schema"),items:w?Object.keys(r[t[a].service]):[],incomeActiveItem:t[a].schema?t[a].schema:null})),e("div",{className:"sidebar__section sidebar__section--act"},e("div",{className:"sidebar__section-heading"},"select action"),e(ie,{canShow:!h,onClickItem:n=>S(n,"action"),items:h?Object.keys(r[t[a].service][t[a].schema]):[],incomeActiveItem:t[a].act?t[a].act:null})))),C&&e("div",{className:"sidebar sidebar--fields"},e("form",{ref:q,onSubmit:m,className:"form--fields"},e("div",{className:"sidebar__section-heading sidebar__section-heading--fields"},"SET fields"),Object.keys(t[a].postFields).map(n=>e("div",{className:"input-cnt",key:`${a}.${n}-----`},e("label",{htmlFor:n},n," :"),J({key:n,field:t[a].postFields[n],formData:t[a].formData}))),e("div",{className:"sidebar__section-heading sidebar__section-heading--fields"},"GET fields"),e("div",{className:"input-cnt get-items border-bottom"},e("label",null,"All Items :"),e("div",{className:"get-values"},e("span",{onClick:()=>{let n=M(null,"get",t[a].getFields,{});b({data:{...t[a].formData,...n},index:a})}}),e("span",{onClick:()=>{let n=M(0,"get",t[a].getFields,{});b({data:{...t[a].formData,...n},index:a})}},"0"),e("span",{onClick:()=>{let n=M(1,"get",t[a].getFields,{});b({data:{...t[a].formData,...n},index:a})}},"1"))),Object.keys(t[a].getFields).map(n=>t[a].getFields[n].type==="enums"?e("div",{className:"input-cnt get-items",key:`${a}.${n}-------`},e("label",{htmlFor:n},n,":"),e("div",{className:"get-values"},e("span",{onClick:()=>{b({data:{...t[a].formData,[`get.${n}`]:null},index:a})}}),e("span",{className:t[a].formData[`get.${n}`]===0?"active":"",onClick:()=>{b({data:{...t[a].formData,[`get.${n}`]:0},index:a})}},"0"),e("span",{className:t[a].formData[`get.${n}`]===1?"active":"",onClick:()=>{b({data:{...t[a].formData,[`get.${n}`]:1},index:a})}},"1"))):Z({getField:t[a].getFields[n],keyName:n,margin:0})),e("div",{class:"wrapper"},e("button",{class:"send-button","data-active":K},e("span",null,"Send"),e("div",{class:"successe"},e(Re,null)))))),e("div",{className:"response"},t[a].response&&e("div",{class:"response-detail"},e("div",{className:"response-detail-button_title"},e("p",{className:"response-detail-title"},"Response"),e("div",{className:"response-detail-buttons"},e("div",{className:"btn response-detail-button ",onClick:()=>G()},e(pe,null),e("span",{className:"tooltip-text"},"Copy Request")),e("div",{className:"btn response-detail-button ",onClick:()=>{R()}},e(pe,null),e("span",{className:"tooltip-text"},"Copy Response")),e("div",{className:"btn response-detail-button ",onClick:()=>{x()}},e(ke,null),e("span",{className:"tooltip-text"},"Run E2E Test")))),e("div",{className:"response-detail-info"},e("div",{style:{display:"flex",flexDirection:"column"}}," ",e(I,{jsonData:{body:t[a].response?.body,success:t[a].response?.success}})),e("span",{className:"response-took"},"took:",de(t[a].response?.tookTime)),t[a].response&&t[a].response?.success===!0?e("div",{className:"success"}):e("div",{className:"fail"})))))};var gt=()=>e("svg",{width:"15px",height:"15px",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg"},e("path",{d:"M20.04 10.1109L18.0252 8.09612L21.7071 4.41421C22.0976 4.02369 22.0976 3.39052 21.7071 3L21 2.29289C20.6095 1.90237 19.9763 1.90237 19.5858 2.29289L15.9039 5.9748L14.04 4.11089C13.754 3.82489 13.3239 3.73933 12.9502 3.89411C12.5765 4.04889 12.3329 4.41353 12.3329 4.81799V10.818C12.3329 11.3703 12.7806 11.818 13.3329 11.818H19.3329C19.7373 11.818 20.102 11.5744 20.2568 11.2007C20.4115 10.827 20.326 10.3969 20.04 10.1109Z",fill:"bisque"}),e("path",{d:"M3.96 13.8891L5.97478 15.9039L2.29289 19.5858C1.90237 19.9763 1.90237 20.6095 2.29289 21L3 21.7071C3.39052 22.0976 4.02369 22.0976 4.41421 21.7071L8.0961 18.0252L9.96 19.8891C10.246 20.1751 10.6761 20.2607 11.0498 20.1059C11.4235 19.9511 11.6671 19.5865 11.6671 19.182V13.182C11.6671 12.6297 11.2194 12.182 10.6671 12.182H4.66711C4.26265 12.182 3.89801 12.4256 3.74323 12.7993C3.58845 13.173 3.674 13.6031 3.96 13.8891Z",fill:"bisque"})),Ye=gt;var bt=()=>e("svg",{width:"15px",height:"15px",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg"},e("path",{d:"M7.69233 18.2781L9.70711 20.2929C9.9931 20.5789 10.0787 21.009 9.92388 21.3827C9.7691 21.7564 9.40446 22 9 22H3C2.44772 22 2 21.5523 2 21V15C2 14.5955 2.24364 14.2309 2.61732 14.0761C2.99099 13.9213 3.42111 14.0069 3.70711 14.2929L5.571 16.1568L9.25289 12.4749C9.64342 12.0844 10.2766 12.0844 10.6671 12.4749L11.3742 13.182C11.7647 13.5725 11.7647 14.2057 11.3742 14.5962L7.69233 18.2781Z",fill:"bisque"}),e("path",{d:"M16.3077 5.72187L14.2929 3.70711C14.0069 3.42111 13.9213 2.99099 14.0761 2.61732C14.2309 2.24364 14.5955 2 15 2H21C21.5523 2 22 2.44772 22 3V9C22 9.40446 21.7564 9.7691 21.3827 9.92388C21.009 10.0787 20.5789 9.9931 20.2929 9.70711L18.429 7.84319L14.7471 11.5251C14.3566 11.9156 13.7234 11.9156 13.3329 11.5251L12.6258 10.818C12.2352 10.4275 12.2352 9.7943 12.6258 9.40378L16.3077 5.72187Z",fill:"bisque"})),We=bt;function De(){return e("svg",{width:25,height:25,fill:"#000000",viewBox:"0 0 24 24",id:"up-direction","data-name":"Line Color",xmlns:"http://www.w3.org/2000/svg",class:"icon line-color"},e("g",{id:"SVGRepo_bgCarrier","stroke-width":"0"}),e("g",{id:"SVGRepo_tracerCarrier","stroke-linecap":"round","stroke-linejoin":"round"}),e("g",{id:"SVGRepo_iconCarrier"},e("path",{id:"secondary",d:"M10,9.66V20a1,1,0,0,0,1,1h2a1,1,0,0,0,1-1V9.66",style:"fill: none; stroke: darkred; stroke-linecap: round; stroke-linejoin: round; stroke-width: 2;"}),e("path",{id:"primary",d:"M14,9.66l3.4,2.92,2.6-3-7.35-6.3a1,1,0,0,0-1.3,0L4,9.54l2.6,3L10,9.66",style:"fill: none; stroke: darkred; stroke-linecap: round; stroke-linejoin: round; stroke-width: 2;"})))}var yt=s=>{let[a,t]=y("myBtn none"),[r,o]=y(!1),c=U(null),d=()=>{c.current.scroll,document.getElementById("test")?.scroll({top:0,behavior:"smooth"})},p=l=>{l.currentTarget.scrollTop>20?t("myBtn"):t("none")};return e("div",{className:"modal-overlay",onClick:s.toggle},e("div",{className:r?"modal-box-fullscreen":"modal-box",onClick:l=>l.stopPropagation()},e("div",{className:"action-modal"},e("span",{className:"modal-close",onClick:s.toggle},e(Y,null)),e("span",{className:"modal-fullscreen",onClick:()=>o(!r)},r?e(Ye,null):e(We,null)),e("span",{className:"modal-title"},s.title)),e("div",{className:"modal-content",id:"test",ref:c,onScroll:p},s.children,e("div",{className:a},e("button",{className:"myBtn-active tooltip",onClick:()=>d()},e(De,null),e("span",{className:"tooltip-text"},"Go To Top"))))))},Ke=yt;var Xe=()=>{let{schemasObj:s}=H(),[a,t]=y({});L(()=>{let p={};for(let l in s){p[l]={...p[l],pure:s[l].pure};for(let g in s[l].mainRelations)p[l]={...p[l],mainRelations:{...p[l].mainRelations,[g]:{type:"relation",extraDetails:s[l].mainRelations[g],schema:{...s[s[l].mainRelations[g].schemaName].pure}}}};for(let g in s[l].relatedRelations)p[l]={...p[l],relatedRelations:{...p[l].relatedRelations,[g]:{type:"relation",extraDetails:s[l].relatedRelations[g],schema:{...s[s[l].relatedRelations[g].schemaName].pure}}}}}t(p)},[]);let r=()=>{let p=`data:text/json;chatset=utf-8,${encodeURIComponent(JSON.stringify(s))}`,l=document.createElement("a");l.href=p,l.download="schemas.json",l.click()},o=["color-1","color-2","color-3","color-4","color-5","color-6","color-7"],c=p=>Object.keys(p).map(l=>{let g=F();return e("div",{className:"schema"},e("div",{className:"schema-name",onClick:()=>{document.getElementById(g)?.classList.toggle("open")}},e("p",{className:"schema-title"},l),e("span",null,"...")),e("div",{className:"proceed-child-container",id:g},d(p[l])))}),d=p=>Object.keys(p).map(l=>{let g=F();return e("div",{className:`inside-schema ${o[Math.floor(Math.random()*o.length)]}`},e("div",{className:`inside ${typeof p[l]=="object"&&p[l].schema!==null&&"schema-pointer"}`,onClick:()=>{document.getElementById(g)?.classList.toggle("open")}},e("p",{className:"schema-title"},l),e("div",{className:"schema-info"}," ",e("p",{className:"schema-title schema-type"}," ",p[l].type),e("div",{className:"schema-help"},p[l].extraDetails&&e(oe,null),p[l].extraDetails&&e("div",{className:" tooltip-text"},e(I,{jsonData:p[l].extraDetails}))),typeof p[l]=="object"&&p[l].schema!==null&&e("span",null,"..."))),e("div",{id:g,className:"proceed-child"},typeof p[l]=="object"&&p[l]!==null&&p[l].schema!==null&&d(p[l].pure?p[l].pure:p[l].relatedRelations?p[l].relatedRelations:p[l].mainRelation?p[l].mainRelation:p[l].type==="relation"?p[l].schema:p[l])))});return e("div",{className:"schema-modal"},e("div",{className:"results-buttons"},e("button",{className:" schema-export-button btn e2e-back-button e2e-export_results-button",onClick:r},e(z,null),e("span",null,"Export"))),e("div",{className:"search-box"},e("input",{className:"input",type:"text",placeholder:"search..."}),e("span",{className:"search-icon"},e(te,null))),e("div",{className:"schema-list"},c(a)))};function me(){return e("svg",{width:25,height:25,viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg"},e("path",{d:"M7.75 11.9999L10.58 14.8299L16.25 9.16992",stroke:"lightcoral","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round"})," ",e("path",{"fill-rule":"evenodd","clip-rule":"evenodd",d:"M23 12C23 18.0751 18.0751 23 12 23C5.92487 23 1 18.0751 1 12C1 5.92487 5.92487 1 12 1C18.0751 1 23 5.92487 23 12ZM3.00683 12C3.00683 16.9668 7.03321 20.9932 12 20.9932C16.9668 20.9932 20.9932 16.9668 20.9932 12C20.9932 7.03321 16.9668 3.00683 12 3.00683C7.03321 3.00683 3.00683 7.03321 3.00683 12Z",fill:"bisque"}))}function Qe({configUrl:s}){let a=l=>{o[l],o.splice(l,1),c([...o])},{headers:t,setHeader:r}=H(),[o,c]=y([{key:"",value:""}]),[d,p]=y("");return L(()=>{let l=[];for(let g in t)l.push({key:g,value:t[g]});c(l)},[]),e("div",{className:"setting modal-content"},e("div",{className:"url"},e("p",{className:"url-title"},"Fetch Config"),e("div",{className:"url-detail"}," ",e("input",{className:"input url-input ",placeholder:"Set URL",onChange:l=>p(l.target.value)}),e("button",{className:"setting_fetch-config--apply-button e2e-back-button e2e-add-capture ",onClick:()=>s(d)},e(me,null),e("span",null,"Apply")," "))),e("div",{className:"sidebar__section sidebar__section--headers"},e("div",{className:"sidebar__section-heading setting_heading"}," ",e("span",{className:"setting_heading--title"},"Set Headers"),e("button",{className:"setting_add-header--button e2e-back-button e2e-export_results-button e2e-add-capture ",onClick:()=>{c([...o,{key:"",value:""}])}},e(ae,null),e("span",null,"Add Header"))),e("div",{className:"setting_container--setheaders"},e("div",{className:"setting_set-headers"},o?.map((l,g)=>e("div",{key:`${g}____`,className:"setting_set-headers--inputs"},e("div",{className:"setting__set-headers--key-value setting__set-headers--key"},e("span",null,"Key:"),e("input",{className:"setting_set-headers--inputs--key input",placeholder:"Authotization",value:l.key,onChange:N=>{c(b=>(b[g].key=N.target.value,b))}})),e("div",{className:"setting__set-headers--key-value setting__set-headers--value"},e("span",null,"Value:"),e("input",{className:"setting_set-headers--inputs--value input",placeholder:"some string ...",value:l.value,onChange:N=>{c(b=>(b[g].value=N.target.value,b))}})),o.length>1&&e("div",{className:"setting_set-headers--delete-button e2e-move-div e2e-move-close",onClick:()=>a(g)},e(Y,null))))),e("button",{className:"setting_set-headers--apply-button e2e-back-button e2e-add-capture ",onClick:()=>{let l={};for(let g of o){let{key:N,value:b}=g;l[N]=b}r(l)}},e(me,null),e("span",null,"Apply")))))}var Ct=({baseUrl:s})=>fetch(`${s}playground/static/get/schemas`).then(a=>a.json()),et=()=>{let{tabsData:s,setTabsData:a,activeTab:t,actsObj:r,addTab:o,setActiveTab:c,setService:d,setSchema:p,setAct:l,setPostFields:g,setGetFields:N,setFormData:b,setHistory:E,setResponse:D,resetGetFields:V,closeTab:P,resetPostFields:B,setSchemasObj:W,setActsObj:K,setModal:A,modal:M}=H(),[q,$]=y(""),[J,Z]=y(!1),i=()=>window&&window.location?`${new URL(window.location.href).origin}/`:"http://localhost:1366/",[m,C]=y(""),h=Q(()=>{Z(!1)});L(()=>{R(i());let S=JSON.parse(localStorage.getItem("localHistory"));S&&E(S)},[]);let R=S=>{S&&C(S),d({data:"",index:t}),p({data:"",index:t}),V(t),B(t),b({data:{},index:t}),Ct({baseUrl:S||m}).then(({schemas:n,acts:v})=>{K(v),W(n);let _=localStorage.getItem("localTabsData");if(_){_=JSON.parse(_);let f=[],T=u=>{f.pop();let j=le(u.formData);for(let ee in j.set)v[u.service][u.schema][u.act].validator.schema.set.schema[ee]===void 0&&delete j.set[ee];for(let ee in j.get)v[u.service][u.schema][u.act].validator.schema.get.schema[ee]===void 0&&delete j.get[ee];let X=ce(j,{},"");u.postFields=v[u.service][u.schema][u.act].validator.schema.set.schema,u.getFields=v[u.service][u.schema][u.act].validator.schema.get.schema,f.push({...u,formData:X})};for(let u of _)u.service&&u.service in v&&f.push(u),u.schema&&!(u.schema in v[u.service])&&f.pop(),u.act&&!(u.act in v[u.service][u.schema])&&f.pop(),u.service&&u.schema&&u.act&&u.act in v[u.service][u.schema]&&T(u);f.length<1&&f.push({service:"",schema:"",act:"",postFields:{},getFields:{},formData:{},response:null}),a(f)}})},G=()=>{A(null)},x=S=>{d({data:S.body.service,index:t}),p({data:S.body.model,index:t}),l({data:S.body.act,index:t});let n=r[S.body.service][S.body.model][S.body.act].validator.schema;N({data:n.get.schema,index:t}),g({data:n.set.schema,index:t}),D({data:null,index:t});let v=ce(S.body.details,{},"");b({data:v,index:t}),G()};return e("div",{className:"cnt"},e("div",{className:"tabs-container",style:{display:"flex"}},s.map((S,n)=>e(O,null,e("div",{className:"tab-name","data-tab":t===n,onClick:()=>{c(n)}}," ",e("span",{title:s[n].act?`${s[n].schema} | ${s[n].act}`:s[n].schema?`${s[n].service} | ${s[n].schema}`:s[n].service?s[n].service:`Tab ${n}`}," ",s[n].act?`${s[n].schema} | ${s[n].act}`:s[n].schema?`${s[n].service} | ${s[n].schema}`:s[n].service?s[n].service:`Tab ${n}`),e("span",{className:` tab-close ${t===n?"active-tab-close":""}`,onClick:v=>{v.stopPropagation(),P(n)},title:"Close tab"},"x")))),e("span",{className:"add-tab",title:"Open a new tab",onClick:()=>{o(null),localStorage.setItem("localTabsData",JSON.stringify(s))}},"+")),e(ze,{urlAddress:m}),e("button",{ref:h,className:"media--main-btn-wrapper ",onClick:()=>{Z(!J)}},"menu"),e("div",{className:"main-btn-wrapper","data-show":J===!0},e("span",{className:"btn btn-modal ",onClick:()=>R()},e("span",{className:"btn-modal-title"},"Refetch"),e(_e,null)),e("span",{className:"btn btn-modal ",onClick:()=>A("SETTING")},e("span",{className:"btn-modal-title"},"Setting"),e(xe,null)),e("span",{className:"btn btn-modal",onClick:()=>A("HISTORY")},e("span",{className:"btn-modal-title"},"History"),e(Ee,null)),e("span",{className:"btn btn-modal",onClick:()=>A("E2E TEST")},e("span",{className:"btn-modal-title"},"E2E Test"),e(Ne,null)),e("span",{className:" btn-modal-document","data-show":q==="document"},e("span",{className:"btn-modal-document--title","data-show":q==="document"},"Document")),e("span",{className:"btn btn-modal btn-doc",onClick:()=>A("SCHEMA"),onMouseEnter:()=>$("document"),onMouseLeave:()=>$("")},e("span",{className:"btn-modal-title"},"Schema"),e(we,null)),e("span",{className:"btn btn-modal btn-doc ",onClick:()=>A("ACT"),onMouseEnter:()=>$("document"),onMouseLeave:()=>$("")},e("span",{className:"btn-modal-title"},"Act"),e(Te,null))),M!==null&&e(Ke,{toggle:G,title:M},M==="HISTORY"?e(Ge,{setFormFromHistory:x}):M==="SETTING"?e(Qe,{configUrl:R}):M==="E2E TEST"?e(Je,{baseUrl:m}):M==="SCHEMA"?e(Xe,null):M==="ACT"?e(je,null):e(O,null)))};he(e(Ae,null,e(et,null)),document.getElementById("root")); //# sourceMappingURL=bundle-es.js.map diff --git a/src/server/playground/dist/bundle-es.js.map b/src/server/playground/dist/bundle-es.js.map index ee33e1ac..be3407f9 100644 --- a/src/server/playground/dist/bundle-es.js.map +++ b/src/server/playground/dist/bundle-es.js.map @@ -1,7 +1,7 @@ { "version": 3, - "sources": ["../reactDeps.ts", "../utils/uid.ts", "../comp/context/initials.ts", "../comp/context/reducer.ts", "../comp/context/provider.tsx", "../comp/ManagedLesanContext.tsx", "../utils/createNestedObjectsFromKeys.ts", "../utils/generateFormData.ts", "../comp/icon/Search.tsx", "../comp/icon/ExportIcon.tsx", "../comp/Act.tsx", "../comp/icon/BackIcon.tsx", "../comp/Help.tsx", "../comp/icon/AddIcon.tsx", "../comp/icon/deleteIcon.tsx", "../comp/icon/DownIcon.tsx", "../comp/icon/HelpIcon.tsx", "../comp/icon/Hide.tsx", "../comp/icon/ImportIcon.tsx", "../comp/icon/RunIcon.tsx", "../comp/icon/Show.tsx", "../comp/icon/UpIcon.tsx", "../comp/styles.ts", "../comp/cutify.ts", "../comp/JSONVeiwer.tsx", "../comp/E2E.tsx", "../utils/convertMilliseconds.ts", "../comp/hooks/useNonInitialEffect.ts", "../comp/icon/DustbinIcon.tsx", "../comp/History.tsx", "../comp/icon/DocumentIcon.tsx", "../comp/icon/HistoryIcon.tsx", "../comp/icon/ReFetchIcon.tsx", "../comp/icon/SchemaIcon.tsx", "../comp/icon/SettingIcon.tsx", "../comp/icon/TestIcon.tsx", "../comp/icon/CopyIcon.tsx", "../comp/icon/RunTestIcon.tsx", "../comp/icon/SuccessIcon.tsx", "../comp/hooks/useOutsideClick.ts", "../comp/icon/ChevronDownIcon.tsx", "../comp/Selected.tsx", "../comp/MultiSelect.tsx", "../comp/Main.tsx", "../comp/icon/Fullscreen-exit.tsx", "../comp/icon/Fullscreen.tsx", "../comp/Modal.tsx", "../comp/Schema.tsx", "../comp/icon/TickIcon.tsx", "../comp/Setting.tsx", "../comp/preact.tsx", "../hydrate.tsx"], - "sourcesContent": ["export {\n createContext,\n Fragment,\n h,\n hydrate,\n} from \"https://esm.sh/preact@10.5.15\";\nexport {\n useCallback,\n useContext,\n useEffect,\n useMemo,\n useReducer,\n useRef,\n useState,\n \n} from \"https://esm.sh/preact@10.5.15/hooks\";\n\nexport type {\n FunctionalComponent,\n RefCallback,\n RefObject,\n} from \"https://esm.sh/preact@10.5.15\";\n\nexport type { Ref, EffectCallback, StateUpdater } from \"https://esm.sh/preact@10.5.15/hooks\";\n", "export const uid = () =>\n Date.now().toString(36) + Math.random().toString(36).substr(2);\n", "import { uid } from \"../../utils/uid.ts\";\nimport { IState } from \"./actionType.ts\";\n\nconst tabInitial = {\n tabsData: [\n {\n service: \"\",\n schema: \"\",\n act: \"\",\n postFields: {},\n getFields: {},\n formData: {},\n response: null,\n },\n ],\n activeTab: 0,\n setActiveTab: () => ({}),\n addTab: () => ({}),\n closeTab: () => ({}),\n setTabsData: () => ({}),\n};\n\nconst schemaInitial = {\n schemasObj: {},\n actsObj: {},\n\n setService: () => ({}),\n setMethod: () => ({}),\n setSchema: () => ({}),\n setAct: () => ({}),\n setActsObj: () => ({}),\n setSchemasObj: () => ({}),\n setPostFields: () => ({}),\n resetPostFields: () => ({}),\n setGetFields: () => ({}),\n resetGetFields: () => ({}),\n setFormData: () => ({}),\n setResponse: () => ({}),\n};\n\nconst historyInitial = {\n history: [],\n\n deleteItemHistory: () => ({}),\n\n setHistory: () => ({}),\n};\n\nconst headerInitial = {\n headers: { Authorization: \"\" },\n setHeader: () => ({}),\n};\n\nexport const e2eFirstInp = () => ({\n id: uid(),\n bodyHeaders: `\n{\n \"headers\": {\n \"Content-Type\": \"application/json\",\n \"Authorization\": \"\"\n },\n \"body\": {\n \"service\": \"main\",\n \"contents\": \"dynamic\",\n \"model\": \"\",\n \"act\": \"\"\n \"details\": {\n \"get\": {\n },\n \"set\": {\n }\n }\n}\n}\n `,\n repeat: 1,\n captures: [],\n});\n\nconst e2eInitial = {\n e2eForms: [e2eFirstInp()],\n\n setE2eForms: () => ({}),\n addE2eForm: () => ({}),\n};\n\nconst modalInitial = {\n modal: null,\n setModal: () => ({}),\n};\n\n// TODO: Have to Find Someway to Prevent from Rewriting Function Types\nexport const initialState: IState = {\n ...tabInitial,\n ...schemaInitial,\n ...historyInitial,\n ...headerInitial,\n ...e2eInitial,\n ...modalInitial,\n};\n", "import { ACTION_TYPE, IState, TAction } from \"./actionType.ts\";\n\nexport function lesanReducer(state: IState, action: TAction): IState {\n const { type, payload } = action;\n switch (type) {\n case ACTION_TYPE.SET_SERVICE: {\n const copyTabsData = [...state.tabsData];\n copyTabsData[payload.index] = {\n ...copyTabsData[payload.index],\n service: payload.data,\n };\n return {\n ...state,\n tabsData: [...copyTabsData],\n };\n }\n case ACTION_TYPE.SET_SCHEMA: {\n const copyTabsData = [...state.tabsData];\n copyTabsData[payload.index] = {\n ...copyTabsData[payload.index],\n schema: payload.data,\n };\n return {\n ...state,\n tabsData: [...copyTabsData],\n };\n }\n case ACTION_TYPE.SET_ACT: {\n const copyTabsData = [...state.tabsData];\n copyTabsData[payload.index] = {\n ...copyTabsData[payload.index],\n act: payload.data,\n };\n return {\n ...state,\n tabsData: [...copyTabsData],\n };\n }\n case ACTION_TYPE.SET_POST_FIELDS: {\n const copyTabsData = [...state.tabsData];\n copyTabsData[payload.index] = {\n ...copyTabsData[payload.index],\n postFields: payload.data,\n };\n return {\n ...state,\n tabsData: [...copyTabsData],\n };\n }\n case ACTION_TYPE.RESET_POST_FIELDS: {\n const copyTabsData = [...state.tabsData];\n copyTabsData[payload] = { ...copyTabsData[payload], postFields: {} };\n return {\n ...state,\n tabsData: [...copyTabsData],\n };\n }\n case ACTION_TYPE.SET_GET_FIELDS: {\n const copyTabsData = [...state.tabsData];\n copyTabsData[payload.index] = {\n ...copyTabsData[payload.index],\n getFields: payload.data,\n };\n return {\n ...state,\n tabsData: [...copyTabsData],\n };\n }\n case ACTION_TYPE.RESET_GET_FIELDS: {\n const copyTabsData = [...state.tabsData];\n copyTabsData[payload] = { ...copyTabsData[payload], getFields: {} };\n return {\n ...state,\n tabsData: [...copyTabsData],\n };\n }\n case ACTION_TYPE.SET_FORM_DATA: {\n const copyTabsData = [...state.tabsData];\n copyTabsData[payload.index] = {\n ...copyTabsData[payload.index],\n formData: payload.data,\n };\n return {\n ...state,\n tabsData: [...copyTabsData],\n };\n }\n case ACTION_TYPE.SET_HEADER: {\n return {\n ...state,\n headers: payload,\n };\n }\n case ACTION_TYPE.SET_HISTORY: {\n return {\n ...state,\n history: payload,\n };\n }\n\n case ACTION_TYPE.SET_TABS_DATA: {\n return {\n ...state,\n tabsData: payload,\n };\n }\n\n case ACTION_TYPE.SET_RESPONSE: {\n const copyTabsData = [...state.tabsData];\n copyTabsData[payload.index] = {\n ...copyTabsData[payload.index],\n response: payload.data,\n };\n return {\n ...state,\n tabsData: [...copyTabsData],\n };\n }\n case ACTION_TYPE.ADD_TAB: {\n return {\n ...state,\n tabsData: [\n ...state.tabsData,\n {\n service: \"\",\n schema: \"\",\n act: \"\",\n postFields: {},\n getFields: {},\n formData: {},\n response: null,\n },\n ],\n activeTab: state.tabsData.length,\n };\n }\n case ACTION_TYPE.SET_ACTIVE_TAB: {\n return {\n ...state,\n activeTab: payload,\n };\n }\n case ACTION_TYPE.CLOSE_TAB: {\n const copyTabsData = [...state.tabsData];\n copyTabsData.length > 1 && copyTabsData.splice(payload, 1);\n return {\n ...state,\n tabsData: [...copyTabsData],\n activeTab: copyTabsData.length >= 1 &&\n state.activeTab >= payload &&\n state.activeTab !== 0\n ? state.activeTab - 1\n : state.activeTab,\n };\n }\n\n case ACTION_TYPE.DELETE_ITEM_HISTORY: {\n return {\n ...state,\n history: state.history\n .slice(0, payload)\n .concat(state.history.slice(payload + 1)),\n };\n }\n\n case ACTION_TYPE.SET_ACTS_OBJ: {\n return {\n ...state,\n actsObj: payload,\n };\n }\n case ACTION_TYPE.SET_SCHEMAS_OBJ: {\n return {\n ...state,\n schemasObj: payload,\n };\n }\n case ACTION_TYPE.SET_E2E_FORMS: {\n return {\n ...state,\n e2eForms: payload,\n };\n }\n case ACTION_TYPE.ADD_E2E_FORM: {\n return {\n ...state,\n e2eForms: [...state.e2eForms, payload],\n };\n }\n case ACTION_TYPE.OPEN_MODAL: {\n return {\n ...state,\n modal: payload,\n };\n }\n default:\n throw new Error(`Unhandled action type`);\n }\n}\n", "/** @jsx h */\nimport { h, useMemo } from \"../../reactDeps.ts\";\nimport { createContext } from \"../../reactDeps.ts\";\nimport { useCallback } from \"../../reactDeps.ts\";\nimport { useReducer } from \"../../reactDeps.ts\";\nimport { E2eForm, IState, MODAL_TYPES } from \"./actionType.ts\";\nimport { TObjectArray } from \"./actionType.ts\";\nimport { THistory } from \"./actionType.ts\";\nimport { TTabsData } from \"./actionType.ts\";\nimport { ACTION_TYPE } from \"./actionType.ts\";\nimport { initialState } from \"./initials.ts\";\nimport { lesanReducer } from \"./reducer.ts\";\n\nexport const LesanContext = createContext(initialState);\n\nexport const LesanProvider = (props: any) => {\n const [state, dispatch] = useReducer(lesanReducer, initialState);\n\n const setService = useCallback(\n (payload: { data: string; index: number }) =>\n dispatch({ type: ACTION_TYPE.SET_SERVICE, payload }),\n [dispatch],\n );\n\n const setSchema = useCallback(\n (payload: { data: string; index: number }) =>\n dispatch({ type: ACTION_TYPE.SET_SCHEMA, payload }),\n [dispatch],\n );\n\n const setAct = useCallback(\n (payload: { data: string; index: number }) =>\n dispatch({ type: ACTION_TYPE.SET_ACT, payload }),\n [dispatch],\n );\n\n const setPostFields = useCallback(\n (payload: { data: string; index: number }) =>\n dispatch({ type: ACTION_TYPE.SET_POST_FIELDS, payload }),\n [dispatch],\n );\n\n const resetPostFields = useCallback(\n (payload: number) =>\n dispatch({ type: ACTION_TYPE.RESET_POST_FIELDS, payload }),\n [dispatch],\n );\n\n const setGetFields = useCallback(\n (payload: { data: string; index: number }) =>\n dispatch({ type: ACTION_TYPE.SET_GET_FIELDS, payload }),\n [dispatch],\n );\n\n const resetGetFields = useCallback(\n (payload: number) =>\n dispatch({ type: ACTION_TYPE.RESET_GET_FIELDS, payload }),\n [dispatch],\n );\n\n const setFormData = useCallback(\n (payload: { data: any; index: number }) =>\n dispatch({ type: ACTION_TYPE.SET_FORM_DATA, payload }),\n [dispatch],\n );\n\n const setActiveTab = useCallback(\n (payload: number) =>\n dispatch({ type: ACTION_TYPE.SET_ACTIVE_TAB, payload }),\n [dispatch],\n );\n\n const addTab = useCallback(\n (payload: null) => dispatch({ type: ACTION_TYPE.ADD_TAB, payload }),\n [dispatch],\n );\n\n const closeTab = useCallback(\n (payload: number) => dispatch({ type: ACTION_TYPE.CLOSE_TAB, payload }),\n [dispatch],\n );\n\n const deleteItemHistory = useCallback(\n (payload: number) =>\n dispatch({ type: ACTION_TYPE.DELETE_ITEM_HISTORY, payload }),\n [dispatch],\n );\n\n const setHeader = useCallback(\n (payload: TObjectArray) =>\n dispatch({ type: ACTION_TYPE.SET_HEADER, payload }),\n [dispatch],\n );\n\n const setHistory = useCallback(\n (payload: THistory[]) =>\n dispatch({ type: ACTION_TYPE.SET_HISTORY, payload }),\n [dispatch],\n );\n\n const setTabsData = useCallback(\n (payload: TTabsData[]) =>\n dispatch({ type: ACTION_TYPE.SET_TABS_DATA, payload }),\n [dispatch],\n );\n\n const setResponse = useCallback(\n (payload: { data: any; index: number }) =>\n dispatch({ type: ACTION_TYPE.SET_RESPONSE, payload }),\n [dispatch],\n );\n\n const setSchemasObj = useCallback(\n (payload: Record) =>\n dispatch({ type: ACTION_TYPE.SET_SCHEMAS_OBJ, payload }),\n [dispatch],\n );\n const setActsObj = useCallback(\n (payload: Record) =>\n dispatch({ type: ACTION_TYPE.SET_ACTS_OBJ, payload }),\n [dispatch],\n );\n\n const setE2eForms = useCallback(\n (payload: E2eForm[]) =>\n dispatch({ type: ACTION_TYPE.SET_E2E_FORMS, payload }),\n [dispatch],\n );\n\n const addE2eForm = useCallback(\n (payload: E2eForm) => dispatch({ type: ACTION_TYPE.ADD_E2E_FORM, payload }),\n [dispatch],\n );\n const setModal = useCallback(\n (payload: MODAL_TYPES | null) =>\n dispatch({ type: ACTION_TYPE.OPEN_MODAL, payload }),\n [dispatch],\n );\n\n const value = useMemo(\n () => ({\n ...state,\n setService,\n setSchema,\n setAct,\n setPostFields,\n resetPostFields,\n setGetFields,\n resetGetFields,\n setFormData,\n setHeader,\n setHistory,\n setTabsData,\n setResponse,\n setActsObj,\n setSchemasObj,\n setActiveTab,\n addTab,\n closeTab,\n deleteItemHistory,\n setE2eForms,\n addE2eForm,\n setModal,\n }),\n [state],\n );\n\n return ;\n};\n", "/** @jsx h */\nimport { h, useContext } from \"../reactDeps.ts\";\nimport { LesanContext, LesanProvider } from \"./context/provider.tsx\";\n\nconst useLesan = () => {\n const context = useContext(LesanContext);\n if (context === undefined) {\n console.warn(`useLesan must be used within a LesanProvider`);\n }\n return context;\n};\n\nconst ManagedLesanContext = (props: { children: h.JSX.Element }) => {\n const { children } = props;\n\n return {children};\n};\n\nexport { ManagedLesanContext, useLesan };\n", "export const createNestedObjectsFromKeys = (\n obj: Record,\n): Record => {\n const result: Record = { get: {}, set: {} };\n\n // For each object path (property key) in the object\n for (const objectPath in obj) {\n if (obj[objectPath] || obj[objectPath] === 0) {\n // Split path into component parts\n const parts = objectPath.split(\".\");\n\n // Create sub-objects along path as needed\n let target: Record = result;\n while (parts.length > 1) {\n const part = parts.shift()!;\n target[part] = target[part] || {};\n target = target[part];\n }\n\n // Set value at end of path\n target[parts[0]] = obj[objectPath];\n }\n }\n\n return result;\n};\n", "export const generateFormData = (\n formData: Record,\n returnFormData: Record,\n keyname: string,\n) => {\n for (const key in formData) {\n typeof formData[key] === \"object\"\n ? generateFormData(\n formData[key],\n returnFormData,\n keyname ? `${keyname}.${key}` : key,\n )\n : (returnFormData[`${keyname}.${key}`] = formData[key]);\n }\n return returnFormData;\n};\n", "/** @jsx h */\nimport { h } from \"../../reactDeps.ts\";\n\nexport default function Search() {\n return (\n \n \n \n );\n};\n\n", "/** @jsx h */\nimport { h } from \"../../reactDeps.ts\";\n\nexport default function ExportIcon() {\n return (\n \n \n\n \n \n );\n}\n", "/** @jsx h */\nimport { Fragment, h, useEffect, useState } from \"../reactDeps.ts\";\nimport { useLesan } from \"./ManagedLesanContext.tsx\";\nimport Search from \"./icon/Search.tsx\";\nimport { uid } from \"../utils/uid.ts\";\nimport ExportIcon from \"./icon/ExportIcon.tsx\";\n\nexport function Act() {\n const { actsObj } = useLesan();\n const exportActs = () => {\n const jsonString = `data:text/json;chatset=utf-8,${encodeURIComponent(\n JSON.stringify(actsObj)\n )}`;\n const link = document.createElement(\"a\");\n link.href = jsonString;\n link.download = \"acts.json\";\n\n link.click();\n };\n\n const rainbowClass = [\n \"color-1\",\n \"color-2\",\n \"color-3\",\n \"color-4\",\n \"color-5\",\n \"color-6\",\n \"color-7\",\n ];\n\n const proceedActs = (acts: Record) => {\n return Object.keys(acts).map((act: any, index) => {\n const newUid = uid();\n return (\n
\n {\n document.getElementById(newUid)?.classList.toggle(\"open\");\n }}\n >\n

{act}

\n ...\n
\n
\n {proceedChildActs(actsObj[act])}\n
\n \n );\n });\n };\n\n const proceedChildActs = (childActs: Record) => {\n return Object.keys(childActs).map((childAct: any, index) => {\n const newUid = uid();\n\n return (\n \n {\n document.getElementById(newUid)?.classList.toggle(\"open\");\n }}\n >\n

{childAct}

\n {childActs[childAct].type && (\n

\n {childActs[childAct].type}\n

\n )}\n
\n {\" \"}\n {typeof childActs[childAct] === \"object\" &&\n childActs[childAct].schema !== null && ...}\n
\n \n
\n {typeof childActs[childAct] === \"object\" &&\n childActs[childAct] !== null &&\n childActs[childAct].schema !== null &&\n proceedChildActs(\n childActs[childAct].validator\n ? childActs[childAct].validator.schema\n : childActs[childAct].schema\n ? childActs[childAct].schema\n : childActs[childAct]\n )}\n
\n \n );\n });\n };\n\n return (\n
\n {\" \"}\n
\n \n \n Export\n \n
\n
\n \n \n \n \n
\n
{proceedActs(actsObj)}
\n
\n );\n}\n", "/** @jsx h */\nimport { h } from \"../../reactDeps.ts\";\n\nexport default function BackIcon() {\n return (\n \n \n \n\n \n \n );\n}\n", "/** @jsx h */\n// import { StateUpdater } from \"https://esm.sh/v118/preact@10.5.15/hooks/src/index.js\";\nimport { StateUpdater, h, useState } from \"../reactDeps.ts\";\nimport BackIcon from \"./icon/BackIcon.tsx\";\n\ninterface IHelpProps {\n setView: StateUpdater<\"help\" | \"e2e\" | \"result\">;\n}\n\nexport const Help = ({setView}: IHelpProps) => {\n return (\n
\n {\" \"}\n {\n setView(\"e2e\");\n }}\n >\n \n Back\n \n
\n

\n With E2E Test, you can test the whole application by sending a\n sequence of HTTP requests.\n

\n

\n In the image below, you can see the first view of the E2E test\n modal page, which contains a button bar at the top and two\n separate requests.\n

\n \n\n
\n\n

\n In the button bar, you have these buttons:\n \n

    \n
  • Add: This button adds one request section.
  • \n
  • \n Run E2E Test: This button runs all requests and shows their\n results.\n
  • \n
  • \n Import: This button stands for importing an E2E config in JSON\n format.\n
  • \n
  • \n Export: This button stands for exporting an existing E2E\n config in JSON format.\n
  • \n
  • \n Help: This button switches to the help of the E2E modal page.\n
  • \n
\n

\n\n
\n\n
\n

Each request section have 2 side

\n \n\n
\n\n
\n

\n The right side is a set of configurations for the repeat time\n of each request and capturing variables of the request\n response. In the Capture Variables section, you can add a pair\n of tuple inputs for the key name of the capture variable and\n its value. You can capture the value of a capture variable\n with braces syntax. For example, if you get back this response\n from a request:\n

\n                    {\"{\\n\"}\n                    {\"  body: [\\n\"}\n                    {\"    {\\n\"}\n                    {\"      _id: 64c6839c50adc3cb65726934,\\n\"}\n                    {\"      name: \u0647\u0645\u062F\u0627\u0646,\\n\"}\n                    {\"      enName: Hamedan,\\n\"}\n                    {\"      abb: HM\\n\"}\n                    {\"    }\\n\"}\n                    {\"  ],\\n\"}\n                    {\"  success: true\\n\"}\n                    {\"  }\\n\"}\n                    {\"}\\n\"}\n                  
\n You can capture _id with [body][0][_id] or for name:\n [body][0][name].\n

\n \n
\n\n
\n\n
\n \n

\n The left side is a text area for writing headers and the body\n of the request in JSON format. In this text area, you can use\n a text parser to implement the captured value you captured\n before inside these symbols {\"{}\"}.\n

\n
\n\n
\n\n

\n Also, we have some buttons on the top right side of each request\n section. With these buttons, you can move up and down and delete\n requests.\n \n

\n
\n\n
\n\n
\n

\n After clicking on the Run E2E Test button, you can see the\n result of each test. Also, in the result view, you can export\n the results in JSON format.\n

\n \n
\n\n
\n\n
\n

\n Additionally, you can go to the E2E Test modal page from the\n main page by clicking on the Test icon inside the response\n header section. This way, you can add a new test section and\n prepopulate the Header and Body text areas with the sent request\n from the main page.\n \n

\n
\n
\n
\n )\n}", "/** @jsx h */\nimport { h } from \"../../reactDeps.ts\";\n\nexport default function AddIcon() {\n return (\n \n \n \n \n );\n}\n", "/** @jsx h */\nimport { h } from \"../../reactDeps.ts\";\n\nconst DeleteIcon = () => {\n return (\n \n \n \n \n );\n};\n\nexport default DeleteIcon;\n", "/** @jsx h */\nimport { h } from \"../../reactDeps.ts\";\n\nexport default function DownIcon() {\n return (\n \n \n \n \n );\n}\n", "/** @jsx h */\nimport { h } from \"../../reactDeps.ts\";\n\nexport default function HelpIcon() {\n return (\n \n \n\n \n \n );\n}\n", "/** @jsx h */\nimport { h } from \"../../reactDeps.ts\";\n\nconst Hide = () => {\n return (\n \n \n\n \n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n \n\n \n\n \n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n \n \n\n \n\n \n \n \n\n \n\n \n\n \n\n \n \n \n );\n};\nexport default Hide;\n", "/** @jsx h */\nimport { h } from \"../../reactDeps.ts\";\n\nexport default function ImportIcon() {\n return (\n \n \n\n \n \n );\n}\n", "/** @jsx h */\nimport { h } from \"../../reactDeps.ts\";\n\nexport default function RunIcon() {\n return (\n \n \n \n \n \n );\n}\n", "/** @jsx h */\nimport { h } from \"../../reactDeps.ts\";\n\nexport const Show = () => {\n return (\n \n \n\n \n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n \n\n \n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n\n \n \n \n\n \n\n \n \n \n\n \n\n \n\n \n\n \n \n \n );\n};\n", "/** @jsx h */\nimport { h } from \"../../reactDeps.ts\";\n\nexport default function UpIcon() {\n return (\n \n \n \n \n );\n}\n", "export enum ClassNames {\n string = \"cute-string\",\n undefined = \"cute-undefined\",\n function = \"cute-function\",\n number = \"cute-number\",\n boolean = \"cute-boolean\",\n null = \"cute-null\",\n colon = \"cute-colon\",\n key = \"cute-key\",\n}\n\nexport const pre = {\n fontFamily: '-apple-system, BlinkMacSystemFont, \"Segoe UI\", Helvetica, Arial',\n // fontSize: 15,\n // lineHeight: \"20px\",\n display: \"inline-block\",\n borderRadius: 3,\n padding: \"10px 10px\",\n // background: \"#272822\",\n color: \"#f8f8f2\",\n textShadow: \"1px 1px black\",\n // overflow: \"auto\",\n whiteSpace: \"pre-wrap\",\n // margin:'0'\n // width:'100%',\n};\n", "import { ClassNames } from \"./styles.ts\";\n\nconst regEx =\n /(\"(\\\\u[a-zA-Z0-9]{4}|\\\\[^u]|[^\\\\\"])*\"(\\s*:)?|\\b(true|false|null)\\b|-?\\d+(?:\\.\\d*)?(?:[eE][+\\-]?\\d+)?)/g;\nconst syntaxHighlight = (json: Object): string => {\n const jsonString = JSON.stringify(json, replacer, 2)\n .replace(/&/g, \"&\")\n .replace(//g, \">\");\n\n return jsonString.replace(regEx, (match) => {\n let className = ClassNames.number;\n let text = match;\n\n if (/^\"/.test(match)) {\n if (/:$/.test(match)) {\n className = ClassNames.key;\n text = text.replace(\":\", `:`);\n } else {\n if (match === \"\\\"undefined\\\"\") {\n className = ClassNames.undefined;\n } else if (match === \"\\\"[Function]\\\"\") {\n className = ClassNames.function;\n } else {\n className = ClassNames.string;\n }\n }\n } else if (/true|false/.test(match)) {\n className = ClassNames.boolean;\n } else if (/null/.test(match)) {\n className = ClassNames.null;\n }\n\n return `${text}`;\n });\n};\n\nconst replacer = (_: string, value: any) => {\n if (typeof value === \"function\") {\n return \"[Function]\";\n }\n\n if (typeof value === \"undefined\") {\n return \"undefined\";\n }\n\n return value;\n};\n\nexport const cutify = (json: Object): string => {\n return syntaxHighlight(json)\n .replace(/\"/g, \"\");\n};\n", "/** @jsx h */\nimport { Fragment, FunctionalComponent, h } from \"../reactDeps.ts\";\nimport { cutify } from \"./cutify.ts\";\nimport * as styles from \"./styles.ts\";\n\ninterface JSONViewerProps {\n jsonData: any;\n}\n\nexport const JSONViewer: FunctionalComponent = ({\n jsonData,\n}) => {\n const cutifiedJson = cutify(jsonData);\n return (\n \n \n \n );\n};\n", "/** @jsx h */\nimport { Fragment, h, useState } from \"../reactDeps.ts\";\nimport { uid } from \"../utils/uid.ts\";\nimport { TRequest } from \"./context/actionType.ts\";\nimport { e2eFirstInp } from \"./context/initials.ts\";\nimport { Help } from \"./Help.tsx\";\nimport AddIcon from \"./icon/AddIcon.tsx\";\nimport BackIcon from \"./icon/BackIcon.tsx\";\nimport DeleteIcon from \"./icon/deleteIcon.tsx\";\nimport DownIcon from \"./icon/DownIcon.tsx\";\nimport ExportIcon from \"./icon/ExportIcon.tsx\";\nimport HelpIcon from \"./icon/HelpIcon.tsx\";\nimport Hide from \"./icon/Hide.tsx\";\nimport ImportIcon from \"./icon/ImportIcon.tsx\";\nimport RunIcon from \"./icon/RunIcon.tsx\";\nimport { Show } from \"./icon/Show.tsx\";\nimport UpIcon from \"./icon/UpIcon.tsx\";\nimport { JSONViewer } from \"./JSONVeiwer.tsx\";\nimport { useLesan } from \"./ManagedLesanContext.tsx\";\n\nexport function E2E({ baseUrl }: { baseUrl: string; bodyHeaders?: string }) {\n const { e2eForms, setE2eForms } = useLesan();\n type TReqDetails = {\n allReqPerformance: number;\n numberRequest: number;\n sequenceDetail: {\n bodyHeader: string;\n time: number;\n repeat: number;\n success: number;\n fails: number;\n // captures: { key: string; value: string; captured: any }[];\n }[];\n };\n const [isShowE2eResponse, setIsShowE2eResponse] = useState(true);\n const [isShowE2eButton, setIsShowE2eButton] = useState(false);\n const [requestDetail, setRequestDetail] = useState({\n allReqPerformance: 0,\n numberRequest: 0,\n sequenceDetail: [],\n });\n\n const handleMove = (fromIndex: any, toIndex: any) => {\n if (fromIndex === 0 && toIndex <= 0) {\n return;\n } else {\n const element = e2eForms[fromIndex];\n e2eForms.splice(fromIndex, 1);\n e2eForms.splice(toIndex, 0, element);\n setE2eForms([...e2eForms]);\n }\n };\n\n const handleDelete = (fromIndex: any) => {\n e2eForms[fromIndex];\n e2eForms.splice(fromIndex, 1);\n setE2eForms([...e2eForms]);\n };\n\n const [view, setView] = useState<\"help\" | \"e2e\" | \"result\">(\"e2e\");\n const [results, setResults] = useState<\n {\n id: string;\n request: Record;\n response: Record;\n responseTime: number;\n }[]\n >([]);\n\n const exportForm = () => {\n const jsonString = `data:text/json;chatset=utf-8,${encodeURIComponent(\n JSON.stringify(e2eForms)\n )}`;\n const link = document.createElement(\"a\");\n link.href = jsonString;\n link.download = \"Configdata.json\";\n\n link.click();\n };\n\n const jsonFileUpload = (e: any) => {\n const fileReader = new FileReader();\n fileReader.readAsText(e.target.files[0], \"UTF-8\");\n fileReader.onload = (e) => {\n const data = JSON.parse(e.target!.result as string);\n setE2eForms(data);\n };\n };\n\n const exportResults = () => {\n const jsonString = `data:text/json;chatset=utf-8,${encodeURIComponent(\n JSON.stringify(results)\n )}`;\n const link = document.createElement(\"a\");\n link.href = jsonString;\n link.download = \"data.json\";\n\n link.click();\n };\n\n const lesanAPI = async ({\n baseUrl,\n options,\n }: {\n baseUrl: string;\n options: TRequest;\n }) => {\n const fetching = await fetch(`${baseUrl}lesan`, options);\n return await fetching.json();\n };\n\n const replaceCaptureString = (\n obj: Record,\n variablesSet: Set\n ) => {\n for (const key in obj) {\n if (typeof obj[key] === \"object\") {\n replaceCaptureString(obj[key], variablesSet);\n }\n\n const value = obj[key];\n\n if (typeof value === \"string\" && value.includes(\"{\")) {\n const openBraceIndexes: number[] = [];\n for (let index = 0; index < value.length; index++) {\n if (value[index] === \"{\") {\n openBraceIndexes.push(index);\n }\n }\n\n const closeBraceIndexes: number[] = [];\n for (let index = 0; index < value.length; index++) {\n if (value[index] === \"}\") {\n closeBraceIndexes.push(index);\n }\n }\n\n const variablesName = openBraceIndexes.map((openBrace, index) => {\n return value.slice(openBrace + 1, closeBraceIndexes[index]);\n });\n\n variablesName.forEach((variableName) => {\n for (const setValue of variablesSet) {\n if (setValue.key === variableName) {\n obj[key] = obj[key].replace(`{${variableName}}`, setValue.value);\n }\n }\n });\n }\n }\n };\n\n const runE2eTest = async () => {\n const parsedCaptures = new Set();\n\n const allReqPerformance0 = performance.now();\n const requestDetail: TReqDetails = {\n allReqPerformance: 0,\n numberRequest: 0,\n sequenceDetail: [],\n };\n\n let numberRequest = 0;\n for await (const e2eForm of e2eForms) {\n const parsedHeaderBody = JSON.parse(e2eForm.bodyHeaders);\n\n replaceCaptureString(parsedHeaderBody, parsedCaptures);\n\n const body: TRequest = {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...parsedHeaderBody.headers,\n },\n body: JSON.stringify(parsedHeaderBody.body),\n };\n\n let jsonSendedRequest: any;\n\n const sequenceTime0 = performance.now();\n let sequenceRepeat = 0;\n let succeccCount = 0;\n let failsCount = 0;\n for (let repeat = 0; repeat < e2eForm.repeat; repeat++) {\n const tResTime0 = performance.now();\n jsonSendedRequest = await lesanAPI({\n baseUrl: baseUrl,\n options: body,\n });\n const tResTime1 = performance.now();\n sequenceRepeat += 1;\n numberRequest += 1;\n if (jsonSendedRequest.success) {\n succeccCount += 1;\n } else {\n failsCount += 1;\n }\n\n setResults((results) => [\n ...results,\n {\n id: uid(),\n request: { ...body, body: parsedHeaderBody.body },\n response: jsonSendedRequest,\n responseTime: tResTime1 - tResTime0,\n },\n ]);\n }\n const sequenceTime1 = performance.now();\n\n const captures = [...e2eForm.captures].filter(\n (capture) => capture.key && capture.value\n );\n\n const parsedCapuresValue = captures.map((capture) => {\n const parts = capture.value.split(\"[\");\n const value: (string | number)[] = [];\n\n parts.forEach((part: any) => {\n let slicedPart: string | number = part.slice(0, part.indexOf(\"]\"));\n if (!isNaN(Number(slicedPart))) {\n slicedPart = Number(slicedPart);\n }\n value.push(slicedPart);\n });\n value.shift();\n return { key: capture.key, value };\n });\n // let getedValues: any;\n parsedCapuresValue.forEach((capture) => {\n if (capture.value.length > 0) {\n let getedValue: any = jsonSendedRequest;\n capture.value.forEach((capValue) => {\n getedValue = getedValue[capValue];\n });\n parsedCaptures.add({ key: capture.key, value: getedValue });\n // getedValues = [...getedValue, ...e2eForm.captures];\n }\n });\n\n requestDetail.sequenceDetail.push({\n bodyHeader: e2eForm.bodyHeaders,\n repeat: sequenceRepeat,\n time: sequenceTime1 - sequenceTime0,\n success: succeccCount,\n fails: failsCount,\n // captures: [...getedValues],\n });\n }\n\n const allReqPerformance1 = performance.now();\n setRequestDetail({\n ...requestDetail,\n numberRequest,\n allReqPerformance: allReqPerformance1 - allReqPerformance0,\n });\n console.log(requestDetail);\n };\n\n // plus repeat\n const plusRepeatHandler = (index: number) => {\n const copy = [...e2eForms];\n copy[index].repeat += 1;\n setE2eForms([...copy]);\n };\n\n // mines repeat\n const minesRepeatHandler = (index: number) => {\n const copy = [...e2eForms];\n if (copy[index].repeat > 0) {\n copy[index].repeat -= 1;\n }\n setE2eForms([...copy]);\n };\n\n return (\n
\n {view === \"result\" ? (\n \n
\n
\n
\n {\n setResults([]);\n setView(\"e2e\");\n }}\n >\n \n Back\n \n \n \n Export\n \n
\n setIsShowE2eResponse(!isShowE2eResponse)}\n >\n REQUESTS\n \n {isShowE2eResponse ? : }\n \n
\n {isShowE2eResponse &&\n results.map((re) => (\n
\n
\n REQUEST\n \n
\n
\n RESPONSE\n \n {re.responseTime}ms\n \n\n \n
\n
\n ))}\n
\n {requestDetail.sequenceDetail.map((sequence, index) => (\n
\n
\n Body Header\n \n
\n
\n Description\n
\n

\n you send {sequence.repeat} times of this\n request\n

\n

\n the avrage time for each request is\n {sequence.time / sequence.repeat}ms\n

\n

\n and whole time is\n {sequence.time}ms \n

\n

\n this sequence sends\n {sequence.success} success request and{\" \"}\n {sequence.fails} it be fails\n

\n {/* {sequence.captures.length && (\n

\n you capture theese in this sequence :\n {sequence.captures.map((capture) => (\n

\n {capture.value} as \n {capture.key} with value of \n
\n ))}\n

\n )} */}\n
\n
\n
\n ))}\n \n ) : view === \"e2e\" ? (\n \n
\n {e2eForms.map((e2eForm, idx) => (\n \n
\n {e2eForms.length > 1 && (\n
\n handleMove(idx, idx - 1)}\n >\n \n
\n handleMove(idx, idx + 1)}\n >\n \n
\n handleDelete(idx)}\n >\n \n
\n \n )}\n
\n
\n set test body and headers\n
\n {\n const copy = [...e2eForms];\n copy[idx].bodyHeaders = e.target.value;\n setE2eForms([...copy]);\n }}\n />\n
\n
\n
\n set repeat time\n
\n
\n {\n const copy = [...e2eForms];\n copy[idx].repeat = e.target.value;\n setE2eForms([...copy]);\n }}\n />\n plusRepeatHandler(idx)}\n >\n +\n \n minesRepeatHandler(idx)}\n >\n -\n \n
\n
\n capture variables\n
\n {\n const copy = [...e2eForms];\n copy[idx].captures.push({ key: \"\", value: \"\" });\n setE2eForms([...copy]);\n }}\n >\n add capture\n \n\n {e2eForm.captures.map((capture, capId) => (\n \n
\n {\n const copy = [...e2eForms];\n copy[idx].captures[capId].key = e.target.value;\n setE2eForms([...copy]);\n }}\n />\n {\n const copy = [...e2eForms];\n copy[idx].captures[capId].value = e.target.value;\n setE2eForms([...copy]);\n }}\n />\n
\n
\n
\n ))}\n
\n \n
\n ))}\n \n setIsShowE2eButton(!isShowE2eButton)}\n >\n show btn\n \n
\n {\n setE2eForms([...e2eForms, e2eFirstInp()]);\n }}\n >\n \n Add\n \n {\n setView(\"result\");\n await runE2eTest();\n }}\n >\n \n Run E2E Test\n \n
\n \n ) : view === \"help\" ? (\n \n ) : (\n \"\"\n )}\n \n );\n}\n", "/** @jsx h */\n\nexport function ConvertMilliseconds(milliseconds: number) {\n const hours = Math.floor(milliseconds / 3600000);\n const minutes = Math.floor((milliseconds % 3600000) / 60000);\n const seconds = Math.floor(((milliseconds % 360000) % 60000) / 1000);\n\n return hours > 0\n ? `${hours}h ${minutes}m ${seconds}s`\n : minutes > 0\n ? `${minutes}m ${seconds}s`\n : seconds > 0\n ? `${seconds}s`\n : `${milliseconds}ms`;\n}\n", "/** @jsx h */\nimport { useEffect, EffectCallback, useRef } from \"../../reactDeps.ts\";\n\ntype useNonInitialEffectReturn = void | (() => void | undefined);\n\nexport const useNonInitialEffect = (\n effect: EffectCallback,\n deps?: any\n): useNonInitialEffectReturn => {\n const initialRender = useRef(true);\n\n useEffect(() => {\n let effectReturns: any = () => {\n /* Empty Return fallback */\n };\n\n if (initialRender.current) {\n initialRender.current = false;\n } else {\n effectReturns = effect();\n }\n\n if (effectReturns && typeof effectReturns === \"function\") {\n return effectReturns;\n }\n }, deps);\n};\n", "/** @jsx h */\nimport { h } from \"../../reactDeps.ts\";\n\nexport default function Dustbin() {\n return (\n \n {/* Clear History */}\n \n \n );\n}\n", "/** @jsx h */\nimport { h, useEffect, useState } from \"../reactDeps.ts\";\nimport { ConvertMilliseconds } from \"../utils/convertMilliseconds.ts\";\nimport { useNonInitialEffect } from \"./hooks/useNonInitialEffect.ts\";\nimport DeleteIcon from \"./icon/deleteIcon.tsx\";\nimport DustbinIcon from \"./icon/DustbinIcon.tsx\";\nimport { JSONViewer } from \"./JSONVeiwer.tsx\";\nimport { useLesan } from \"./ManagedLesanContext.tsx\";\n\nexport function History({\n setFormFromHistory,\n}: // ,localHistory\n{\n setFormFromHistory: (form: any) => void;\n // localHistory:any\n}) {\n const { history, setHistory, deleteItemHistory } = useLesan();\n const [show, setShow] = useState(\"\");\n\n useNonInitialEffect(() => {\n localStorage.setItem(\"localHistory\", JSON.stringify(history));\n }, [history]);\n\n return (\n
\n {history && history?.length > 0 ? (\n
\n
\n {history.map((hi, index) => (\n
\n
\n \n REQUEST\n {hi.reqDate}\n
\n
\n
\n {\" \"}\n \n |\n
\n \n
\n
\n {show === hi.id ? (\n setShow(\"\")}\n className=\"history-re-detail-button\"\n >\n Hide\n \n –\n \n \n ) : (\n {\n setShow(hi.id);\n document.getElementById(hi.id)?.scrollIntoView();\n }}\n className=\"history-re-detail-button\"\n >\n Show{\" \"}\n \n +\n \n \n )}\n
\n \n {\" \"}\n \n
\n \n
\n {\n event.stopPropagation();\n deleteItemHistory(index);\n }}\n >\n \n \n \n \n RESPONSE\n \n \n {ConvertMilliseconds(hi.response.tookTime)}\n \n
\n
\n
\n
\n {\" \"}\n \n success:\n \n
\n \n
\n
\n
\n setFormFromHistory(hi.request)}\n className=\"history-re-detail-button\"\n >\n Use{\" \"}\n \n ➜{\" \"}\n \n \n
\n \n {\" \"}\n \n \n \n \n ))}\n \n ) : (\n \"There is no history to display\"\n )}\n {history && history.length > 0 ? (\n
\n {\n if (confirm(\"Clear All History?\") == true) {\n setHistory([]);\n }\n }}\n >\n {\" \"}\n \n Clear History\n \n
\n ) : (\n \"\"\n )}\n \n );\n}\n", "/** @jsx h */\nimport { h } from \"../../reactDeps.ts\";\n\nexport default function DocumentIcon() {\n return (\n \n \n \n \n \n {\" \"}\n \n {\" \"}\n \n {\" \"}\n \n {\" \"}\n \n \n {\" \"}\n \n \n );\n}\n", "/** @jsx h */\nimport { h } from \"../../reactDeps.ts\";\n\nexport default function HistoryIcon() {\n return (\n \n \n \n \n );\n}\n", "/** @jsx h */\nimport { h } from \"../../reactDeps.ts\";\n\nexport default function ReFetchIcon() {\n return (\n \n \n \n \n {\" \"}\n {\" \"}\n {\" \"}\n \n \n );\n}\n", "/** @jsx h */\nimport { h } from \"../../reactDeps.ts\";\n\nexport default function SchemaIcon() {\n return (\n \n \n \n \n {\" \"}\n \n {\" \"}\n {\" \"}\n {\" \"}\n {\" \"}\n {\" \"}\n {\" \"}\n {\" \"}\n {\" \"}\n \n \n );\n}\n", "/** @jsx h */\nimport { h } from \"../../reactDeps.ts\";\n\nexport default function SettingIcon() {\n return (\n \n \n \n \n );\n}\n", "/** @jsx h */\nimport { h } from \"../../reactDeps.ts\";\n\nexport default function TestIcon() {\n return (\n \n \n \n \n \n );\n}\n", "/** @jsx h */\nimport { h } from \"../../reactDeps.ts\";\n\nexport default function CopyIcon() {\n return (\n \n \n \n \n \n // \n // \n // \n );\n}\n", "/** @jsx h */\nimport { h } from \"../../reactDeps.ts\";\n\nexport default function RunTestIcon() {\n return (\n \n \n \n \n {\" \"}\n \n {\" \"}\n {\" \"}\n {\" \"}\n \n \n );\n}\n", "/** @jsx h */\nimport { h } from \"../../reactDeps.ts\";\n\nexport default function SuccessIcon() {\n return (\n \n \n \n );\n}\n", "/** @jsx h */\nimport { Ref, useEffect, useRef } from \"../../reactDeps.ts\";\n\nexport function useOutsideClick(callback: any) {\n const ref = useRef(null);\n\n useEffect(() => {\n const handleClick = (event: any) => {\n if (ref.current && !ref.current.contains(event?.target)) {\n callback();\n }\n };\n\n document.addEventListener(\"click\", handleClick);\n\n return () => {\n document.removeEventListener(\"click\", handleClick);\n };\n }, [ref]);\n\n return ref;\n}\n", "/** @jsx h */\nimport { h } from \"../../reactDeps.ts\";\n\nexport default function ChevronDownIcon({\n className = \"\",\n}: {\n className?: string;\n}) {\n return (\n \n \n \n \n {\" \"}\n {\" \"}\n \n \n );\n}\n", "/** @jsx h */\nimport { h, useState, useEffect, Ref } from \"../reactDeps.ts\";\nimport { useOutsideClick } from \"./hooks/useOutsideClick.ts\";\nimport ChevronDownIcon from \"./icon/ChevronDownIcon.tsx\";\n\nexport function Selected({\n items,\n onClickItem,\n incomeActiveItem,\n canShow,\n}: {\n items: string[];\n onClickItem: (item: string) => void;\n incomeActiveItem?: string | null;\n canShow?: boolean;\n}) {\n const [show, setShow] = useState(false);\n const [activeItem, setActiveItem] = useState(\"\");\n\n useEffect(() => {\n setActiveItem(incomeActiveItem || \"\");\n }, [incomeActiveItem]);\n\n const handleClickOutside = () => {\n setShow(false);\n };\n\n const ref = useOutsideClick(handleClickOutside);\n\n return (\n
\n
\n setShow(!show)}\n >\n
\n {\" \"}\n {\n setActiveItem(\"\");\n onClickItem(\"\");\n setShow(false);\n e.stopPropagation();\n }}\n >\n x\n \n {activeItem}\n
\n\n \n
\n\n {show && (\n
\n {items?.map((item, index) => (\n {\n setActiveItem(item);\n onClickItem(item);\n setShow(false);\n }}\n >\n {item}\n
\n ))}\n
\n )}\n \n \n );\n}\n", "/** @jsx h */\nimport { h, FunctionalComponent, useState } from \"../reactDeps.ts\";\nimport ChevronDownIcon from \"./icon/ChevronDownIcon.tsx\";\nimport { useOutsideClick } from \"./hooks/useOutsideClick.ts\";\n\nexport interface IOption {\n value: string;\n label: string;\n}\n\ninterface MultiSelectProps {\n options: IOption[];\n onChange: (options: IOption[]) => void;\n}\n\nconst MultiSelect: FunctionalComponent = ({\n options,\n onChange,\n}) => {\n const [selectedOptions, setSelectedOptions] = useState([]);\n const [unselectedOptions, setUnselectedOptions] =\n useState(options);\n const [isOpen, setIsOpen] = useState(false);\n\n const handleOptionChange = (selectedOption: IOption) => {\n if (selectedOptions.includes(selectedOption)) {\n const filteredSelectedOptions = selectedOptions.filter(\n (option) => option.value !== selectedOption.value\n );\n setSelectedOptions(filteredSelectedOptions);\n setUnselectedOptions([...unselectedOptions, selectedOption]);\n onChange(filteredSelectedOptions);\n } else {\n const filteredUnselectedOptions = unselectedOptions.filter(\n (option) => option.value !== selectedOption.value\n );\n setSelectedOptions([...selectedOptions, selectedOption]);\n setUnselectedOptions(filteredUnselectedOptions);\n onChange([...selectedOptions, selectedOption]);\n }\n };\n\n const resetOptions = () => {\n setSelectedOptions([]);\n onChange([]);\n setUnselectedOptions(options);\n };\n\n const toggleDropdown = () => {\n setIsOpen(!isOpen);\n };\n\n const ref = useOutsideClick(() => {\n setIsOpen(false);\n });\n\n return (\n
\n
\n
\n {selectedOptions.map((item) => (\n
\n
\n {item.label}\n
\n {\n e.stopPropagation();\n handleOptionChange(item);\n }}\n >\n x\n
\n
\n ))}\n
\n
\n {selectedOptions.length ? (\n {\n e.stopPropagation();\n resetOptions();\n }}\n >\n x\n
\n ) : null}\n\n
\n \n
\n
\n \n {isOpen ? (\n
\n {unselectedOptions.length ? (\n unselectedOptions.map((option) => (\n {\n e.stopPropagation();\n handleOptionChange(option);\n }}\n className=\"multi-select__option\"\n >\n
{option.label}
\n
\n ))\n ) : (\n
No Options!
\n )}\n \n ) : null}\n \n );\n};\n\nexport default MultiSelect;\n", "/** @jsx h */\nimport { Fragment, h, useRef, useState } from \"../reactDeps.ts\";\nimport { createNestedObjectsFromKeys } from \"../utils/createNestedObjectsFromKeys.ts\";\nimport { uid } from \"../utils/uid.ts\";\nimport { E2eForm, MODAL_TYPES, TRequest } from \"./context/actionType.ts\";\nimport { ConvertMilliseconds } from \"../utils/convertMilliseconds.ts\";\nimport CopyIcon from \"./icon/CopyIcon.tsx\";\nimport RunTestIcon from \"./icon/RunTestIcon.tsx\";\nimport SuccessIcon from \"./icon/SuccessIcon.tsx\";\nimport { JSONViewer } from \"./JSONVeiwer.tsx\";\nimport { useLesan } from \"./ManagedLesanContext.tsx\";\nimport { Selected } from \"./Selected.tsx\";\nimport MultiSelect from \"./MultiSelect.tsx\";\n\nconst lesanAPI = ({\n baseUrl,\n options,\n}: {\n baseUrl: string;\n options: TRequest;\n}) => fetch(`${baseUrl}lesan`, options).then((res) => res.json());\n\nexport const Main = ({ urlAddress }: { urlAddress: string }) => {\n const {\n activeTab,\n tabsData,\n actsObj,\n headers,\n history,\n setService,\n setSchema,\n setAct,\n setPostFields,\n setGetFields,\n setFormData,\n setHistory,\n setResponse,\n resetGetFields,\n resetPostFields,\n addE2eForm,\n setModal,\n } = useLesan();\n\n const [active, setActive] = useState(false);\n\n const changeGetValue = (\n value: 0 | 1 | null,\n keyname: string,\n getObj: Record,\n returnObj: Record\n ) => {\n for (const key in getObj) {\n getObj[key].type === \"enums\"\n ? (returnObj[`${keyname}.${key}`] = value)\n : changeGetValue(\n value,\n `${keyname}.${key}`,\n getObj[key].schema,\n returnObj\n );\n }\n return returnObj;\n };\n\n const formRef = useRef(null);\n\n const handleChange = (event: any) => {\n const { name, value, type, alt } = event.target;\n let updatedValue: string | number | boolean | any[];\n\n if (type === \"number\") {\n updatedValue = Number(value);\n } else if (alt === \"array\" || alt === \"boolean\") {\n updatedValue = JSON.parse(value);\n } else {\n updatedValue = value;\n }\n\n setFormData({\n data: {\n ...tabsData[activeTab].formData,\n [name]: updatedValue,\n },\n index: activeTab,\n });\n };\n\n const renderPostFields = ({\n key,\n field,\n isMultiEnum = false,\n formData,\n }: {\n key: string;\n field: Record;\n isMultiEnum?: boolean;\n formData?: any;\n }): h.JSX.Element => {\n if (field.type === \"array\") {\n return renderPostFields({\n key,\n formData,\n field: field[\"schema\"],\n isMultiEnum: true,\n });\n } else if (field[\"type\"] === \"enums\" && isMultiEnum) {\n return (\n ({\n label: schemaKey,\n value: field[\"schema\"][schemaKey],\n }))}\n onChange={(options) => {\n const value = options.map((item) => item.value);\n setFormData({\n data: {\n ...formData,\n [`set.${key}`]: value,\n },\n index: activeTab,\n });\n localStorage.setItem(\"localTabsData\", JSON.stringify(tabsData));\n }}\n >\n );\n } else if (field[\"type\"] === \"enums\") {\n return (\n {\n setFormData({\n data: {\n ...formData,\n [`set.${key}`]: value,\n },\n index: activeTab,\n });\n localStorage.setItem(\"localTabsData\", JSON.stringify(tabsData));\n }}\n incomeActiveItem={formData[`set.${key}`]}\n items={Object.keys(field[\"schema\"])}\n />\n );\n } else {\n return (\n \n );\n }\n };\n\n const renderGetFields = ({\n getField,\n keyName,\n margin,\n }: {\n getField: any;\n keyName: string;\n margin: number;\n }) => (\n \n
{keyName}
\n {Object.keys(getField[\"schema\"]).map((item, index) =>\n getField[\"schema\"][item].type === \"enums\" ? (\n \n \n
\n {\n const copy = { ...tabsData[activeTab].formData };\n delete copy[`get.${keyName}.${item}`];\n setFormData({ data: copy, index: activeTab });\n }}\n >\n {\n setFormData({\n index: activeTab,\n data: {\n ...tabsData[activeTab].formData,\n [`get.${keyName}.${item}`]: 0,\n },\n });\n }}\n >\n 0\n \n {\n setFormData({\n data: {\n ...tabsData[activeTab].formData,\n [`get.${keyName}.${item}`]: 1,\n },\n index: activeTab,\n });\n }}\n >\n 1\n \n
\n \n ) : (\n renderGetFields({\n getField: getField[\"schema\"][item],\n keyName: `${keyName}.${item}`,\n margin: margin + 1,\n })\n )\n )}\n \n );\n\n const requestFunction = () => {\n const details = createNestedObjectsFromKeys(tabsData[activeTab].formData);\n\n const body: TRequest = {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...headers,\n },\n body: JSON.stringify({\n service: tabsData[activeTab].service,\n model: tabsData[activeTab].schema,\n act: tabsData[activeTab].act,\n details,\n }),\n };\n return { body };\n };\n\n const handleSubmit = async (event: any) => {\n event.preventDefault();\n const sendRequest = new Date().toLocaleDateString();\n\n setActive(true);\n\n setTimeout(() => {\n setActive(false);\n }, 450);\n\n const t0 = performance.now();\n const jsonSendedRequest = await lesanAPI({\n baseUrl: urlAddress,\n options: requestFunction().body,\n });\n const t1 = performance.now();\n const tookTime = t1 - t0;\n\n /* event.target.reset(); */\n /* setFormData({}); */\n\n setResponse({ data: { ...jsonSendedRequest, tookTime }, index: activeTab });\n\n const newHistory = [\n {\n request: {\n ...requestFunction().body,\n body: JSON.parse(requestFunction().body.body),\n },\n response: { ...jsonSendedRequest, tookTime },\n id: uid(),\n reqDate: sendRequest,\n },\n ...history,\n ];\n setHistory(newHistory);\n localStorage.setItem(\"localHistory\", JSON.stringify(newHistory));\n\n localStorage.setItem(\"localTabsData\", JSON.stringify(tabsData));\n };\n\n const canShowRequestFields =\n tabsData[activeTab].service &&\n tabsData[activeTab].schema &&\n tabsData[activeTab].postFields &&\n tabsData[activeTab].getFields &&\n tabsData[activeTab].act;\n\n const canShowSchema = tabsData[activeTab].service;\n\n const canShowAct = tabsData[activeTab].service && tabsData[activeTab].schema;\n\n const copyResponse = () => {\n const response = JSON.stringify(tabsData[activeTab].response);\n navigator.clipboard.writeText(response);\n };\n\n const copyRequest = () => {\n const request: any = requestFunction();\n console.log(request);\n request.body.body = JSON.parse(request.body.body);\n navigator.clipboard.writeText(JSON.stringify(request));\n };\n\n const runE2eRequest = () => {\n const request: any = requestFunction();\n request.body.body = JSON.parse(request.body.body);\n const { method, ...rest } = request.body;\n const newE2eForm: E2eForm = {\n id: uid(),\n bodyHeaders: JSON.stringify({ ...rest }, null, 2),\n repeat: 1,\n captures: [],\n };\n addE2eForm(newE2eForm);\n setModal(MODAL_TYPES.E2E_TEST);\n };\n\n const onClickItem = (\n item: string,\n type: \"service\" | \"method\" | \"schema\" | \"action\"\n ) => {\n if (type === \"service\") {\n setService({\n data: item,\n index: activeTab,\n });\n setSchema({ data: \"\", index: activeTab });\n }\n if (type === \"method\") {\n setSchema({ data: \"\", index: activeTab });\n }\n if (type === \"schema\") {\n setSchema({ data: item, index: activeTab });\n }\n setAct({ data: \"\", index: activeTab });\n resetGetFields(activeTab);\n resetPostFields(activeTab);\n\n if (type === \"action\") {\n const actObj = (actsObj as any)[tabsData[activeTab].service][\n tabsData[activeTab].schema\n ][item][\"validator\"][\"schema\"];\n\n formRef && formRef.current && formRef.current.reset();\n setAct({ data: item, index: activeTab });\n setGetFields({\n data: actObj[\"get\"][\"schema\"],\n index: activeTab,\n });\n setPostFields({\n data: actObj[\"set\"][\"schema\"],\n index: activeTab,\n });\n }\n\n setFormData({ data: {}, index: activeTab });\n localStorage.setItem(\"localTabsData\", JSON.stringify(tabsData));\n };\n\n return (\n \n
\n
\n
\n
select services
\n onClickItem(item, \"service\")}\n items={Object.keys(actsObj)}\n incomeActiveItem={\n tabsData[activeTab].service ? tabsData[activeTab].service : null\n }\n />\n
\n\n
\n console.log(canShowSchema)}\n className=\"sidebar__section-heading\"\n >\n select schema\n
\n onClickItem(item, \"schema\")}\n items={\n canShowSchema\n ? Object.keys((actsObj as any)[tabsData[activeTab].service])\n : []\n }\n incomeActiveItem={\n tabsData[activeTab].schema ? tabsData[activeTab].schema : null\n }\n />\n
\n\n
\n
select action
\n onClickItem(item, \"action\")}\n items={\n canShowAct\n ? Object.keys(\n (actsObj as any)[tabsData[activeTab].service][\n tabsData[activeTab].schema\n ]\n )\n : []\n }\n incomeActiveItem={\n tabsData[activeTab].act ? tabsData[activeTab].act : null\n }\n />\n
\n
\n \n\n {canShowRequestFields && (\n
\n
\n
\n SET fields\n
\n {Object.keys(tabsData[activeTab].postFields).map((item) => (\n
\n \n {renderPostFields({\n key: item,\n field: tabsData[activeTab].postFields[item],\n formData: tabsData[activeTab].formData,\n })}\n
\n ))}\n
\n GET fields\n
\n\n
\n \n
\n {\n const copy = changeGetValue(\n null,\n \"get\",\n tabsData[activeTab].getFields,\n {}\n );\n\n setFormData({\n data: { ...tabsData[activeTab].formData, ...copy },\n index: activeTab,\n });\n }}\n >\n {\n const copy = changeGetValue(\n 0,\n \"get\",\n tabsData[activeTab].getFields,\n {}\n );\n setFormData({\n data: {\n ...tabsData[activeTab].formData,\n ...copy,\n },\n index: activeTab,\n });\n }}\n >\n 0\n \n {\n const copy = changeGetValue(\n 1,\n \"get\",\n tabsData[activeTab].getFields,\n {}\n );\n setFormData({\n data: {\n ...tabsData[activeTab].formData,\n ...copy,\n },\n index: activeTab,\n });\n }}\n >\n 1\n \n
\n
\n\n {Object.keys(tabsData[activeTab].getFields).map((item) =>\n tabsData[activeTab].getFields[item].type === \"enums\" ? (\n \n \n
\n {\n setFormData({\n data: {\n ...tabsData[activeTab].formData,\n [`get.${item}`]: null,\n },\n index: activeTab,\n });\n }}\n >\n {\n setFormData({\n data: {\n ...tabsData[activeTab].formData,\n [`get.${item}`]: 0,\n },\n index: activeTab,\n });\n }}\n >\n 0\n \n {\n setFormData({\n data: {\n ...tabsData[activeTab].formData,\n [`get.${item}`]: 1,\n },\n index: activeTab,\n });\n }}\n >\n 1\n \n
\n
\n ) : (\n renderGetFields({\n getField: tabsData[activeTab].getFields[item],\n keyName: item,\n margin: 0,\n })\n )\n )}\n
\n \n
\n \n \n )}\n\n
\n {tabsData[activeTab].response && (\n
\n
\n

Response

\n
\n copyRequest()}\n >\n \n Copy Request\n
\n {\n copyResponse();\n }}\n >\n \n Copy Response\n
\n {\n runE2eRequest();\n }}\n >\n \n Run E2E Test\n
\n
\n \n
\n
\n {\" \"}\n \n
\n\n \n took:\n {ConvertMilliseconds(tabsData[activeTab].response?.tookTime!)}\n \n {tabsData[activeTab].response &&\n tabsData[activeTab].response?.success === true ? (\n
\n ) : (\n
\n )}\n
\n \n )}\n \n
\n );\n};\n", "/** @jsx h */\nimport { h } from \"../../reactDeps.ts\";\n\nconst FullScreenExit = () => {\n return (\n \n \n \n \n );\n};\n\nexport default FullScreenExit", "/** @jsx h */\nimport { h } from \"../../reactDeps.ts\";\n\nconst FullScreen = () => {\n return (\n \n \n \n \n );\n};\n\nexport default FullScreen;\n", "/** @jsx h */\nimport { h, useState } from \"../reactDeps.ts\";\nimport FullScreenExit from \"./icon/Fullscreen-exit.tsx\";\nimport FullScreen from \"./icon/Fullscreen.tsx\";\nimport DeleteIcon from \"./icon/deleteIcon.tsx\";\n\ninterface ModalType {\n children?: h.JSX.Element;\n toggle: () => void;\n title: string;\n}\n\nconst Modal = (props: ModalType) => {\n const [toggleFullScreen, setToggleFullScreen] = useState(false);\n return (\n
\n e.stopPropagation()}\n >\n
\n \n \n \n setToggleFullScreen(!toggleFullScreen)}\n >\n {toggleFullScreen ? : }\n \n {props.title}\n
\n
{props.children}
\n
\n \n );\n};\nexport default Modal;\n", "/** @jsx h */\nimport { h, useState, useEffect } from \"../reactDeps.ts\";\nimport { uid } from \"../utils/uid.ts\";\nimport { JSONViewer } from \"./JSONVeiwer.tsx\";\nimport { useLesan } from \"./ManagedLesanContext.tsx\";\nimport ExportIcon from \"./icon/ExportIcon.tsx\";\nimport HelpIcon from \"./icon/HelpIcon.tsx\";\nimport Search from \"./icon/Search.tsx\";\n\nexport const Schema = () => {\n const { schemasObj } = useLesan();\n const [reProduceSchemaObj, setreProduceSchemaObj] = useState<\n Record\n >({});\n\n useEffect(() => {\n const myNewObj: Record = {};\n for (const schema in schemasObj) {\n myNewObj[schema] = {\n ...myNewObj[schema],\n pure: schemasObj[schema].pure,\n };\n for (const mainRels in schemasObj[schema].mainRelations) {\n myNewObj[schema] = {\n ...myNewObj[schema],\n mainRelations: {\n ...myNewObj[schema].mainRelations,\n [mainRels]: {\n type: \"relation\",\n extraDetails: schemasObj[schema].mainRelations[mainRels],\n schema: {\n ...schemasObj[\n schemasObj[schema].mainRelations[mainRels].schemaName\n ].pure,\n },\n },\n },\n };\n }\n for (const relatedRels in schemasObj[schema].relatedRelations) {\n myNewObj[schema] = {\n ...myNewObj[schema],\n relatedRelations: {\n ...myNewObj[schema].relatedRelations,\n [relatedRels]: {\n type: \"relation\",\n extraDetails: schemasObj[schema].relatedRelations[relatedRels],\n schema: {\n ...schemasObj[\n schemasObj[schema].relatedRelations[relatedRels].schemaName\n ].pure,\n },\n },\n },\n };\n }\n }\n setreProduceSchemaObj(myNewObj);\n }, []);\n\n const exportSchemas = () => {\n const jsonString = `data:text/json;chatset=utf-8,${encodeURIComponent(\n JSON.stringify(schemasObj)\n )}`;\n const link = document.createElement(\"a\");\n link.href = jsonString;\n link.download = \"schemas.json\";\n\n link.click();\n };\n\n const rainbowClass = [\n \"color-1\",\n \"color-2\",\n \"color-3\",\n \"color-4\",\n \"color-5\",\n \"color-6\",\n \"color-7\",\n ];\n\n const proceedSchemas = (schemas: Record) => {\n return Object.keys(schemas).map((schema: any) => {\n const newUid = uid();\n return (\n
\n {\n document.getElementById(newUid)?.classList.toggle(\"open\");\n }}\n >\n

{schema}

\n ...\n
\n
\n {proceedChildSchema(schemas[schema])}\n\n {/* {proceedChildSchema(schemasObj[schema][\"pure\"])} */}\n
\n \n );\n });\n };\n\n const proceedChildSchema = (childSchema: Record) => {\n return Object.keys(childSchema).map((childItem: any) => {\n const newUid = uid();\n return (\n \n {\n document.getElementById(newUid)?.classList.toggle(\"open\");\n }}\n >\n

{childItem}

\n
\n {\" \"}\n

\n {\" \"}\n {childSchema[childItem][\"type\"]}\n

\n
\n {childSchema[childItem][\"extraDetails\"] && }\n {childSchema[childItem][\"extraDetails\"] && (\n
\n \n
\n )}\n
\n {typeof childSchema[childItem] === \"object\" &&\n childSchema[childItem].schema !== null && ...}\n
\n \n
\n {typeof childSchema[childItem] === \"object\" &&\n childSchema[childItem] !== null &&\n childSchema[childItem].schema !== null &&\n proceedChildSchema(\n childSchema[childItem].pure\n ? childSchema[childItem].pure\n : childSchema[childItem].relatedRelations\n ? childSchema[childItem].relatedRelations\n : childSchema[childItem].mainRelation\n ? childSchema[childItem].mainRelation\n : childSchema[childItem].type === \"relation\"\n ? childSchema[childItem].schema\n : childSchema[childItem]\n )}\n {/* {childSchema[childItem].type === \"object\" &&\n proceedChildSchema(childSchema[childItem].schema)} */}\n
\n \n );\n });\n };\n\n return (\n
\n
\n \n \n Export\n \n
\n
\n \n \n \n \n
\n
{proceedSchemas(reProduceSchemaObj)}
\n
\n );\n};\n", "/** @jsx h */\nimport { h } from \"../../reactDeps.ts\";\n\nexport default function TickIcon() {\n return (\n \n
{\" \"}\n \n \n );\n}\n", "/** @jsx h */\nimport { Fragment, h, useEffect, useState } from \"../reactDeps.ts\";\nimport { useLesan } from \"./ManagedLesanContext.tsx\";\nimport AddIcon from \"./icon/AddIcon.tsx\";\nimport TickIcon from \"./icon/TickIcon.tsx\";\nimport DeleteIcon from \"./icon/deleteIcon.tsx\";\n\nexport function Setting({\n configUrl,\n}: {\n configUrl: (address?: string) => void;\n}) {\n const handleDelete = (fromIndex: any) => {\n headersState[fromIndex];\n headersState.splice(fromIndex, 1);\n setHeadersState([...headersState]);\n };\n const { headers, setHeader } = useLesan();\n const [headersState, setHeadersState] = useState<\n { key: string; value: string }[]\n >([{ key: \"\", value: \"\" }]);\n\n const [urlAddress, setUrlAddress] = useState(\"\");\n\n useEffect(() => {\n const arrHeader = [];\n for (const key in headers) {\n arrHeader.push({ key, value: headers[key] });\n }\n setHeadersState(arrHeader);\n }, []);\n\n return (\n
\n
\n

Fetch Config

\n\n
\n {\" \"}\n setUrlAddress(e.target.value)}\n />\n configUrl(urlAddress)}\n >\n \n Apply{\" \"}\n \n
\n
\n
\n
\n {\" \"}\n Set Headers\n {\n setHeadersState([...headersState, { key: \"\", value: \"\" }]);\n }}\n >\n \n Add Header\n \n
\n
\n
\n {headersState?.map((hst, idx) => (\n
\n
\n Key:\n {\n setHeadersState((prevState) => {\n prevState[idx].key = e.target.value;\n return prevState;\n });\n }}\n />\n
\n
\n Value:\n {\n setHeadersState((prevState) => {\n prevState[idx].value = e.target.value;\n return prevState;\n });\n }}\n />\n
\n {headersState.length > 1 && (\n handleDelete(idx)}\n >\n \n
\n )}\n
\n ))}\n
\n {\n const newHeaders: Record = {};\n for (const header of headersState) {\n const { key, value } = header;\n newHeaders[key] = value;\n }\n\n setHeader(newHeaders);\n }}\n >\n \n Apply\n \n
\n
\n \n );\n}\n", "/** @jsx h */\nimport { Fragment, h, useEffect, useState } from \"../reactDeps.ts\";\nimport { createNestedObjectsFromKeys } from \"../utils/createNestedObjectsFromKeys.ts\";\nimport { generateFormData } from \"../utils/generateFormData.ts\";\nimport { Act } from \"./Act.tsx\";\nimport { MODAL_TYPES } from \"./context/actionType.ts\";\nimport { E2E } from \"./E2E.tsx\";\nimport { History } from \"./History.tsx\";\nimport DocumentIcon from \"./icon/DocumentIcon.tsx\";\nimport HistoryIcon from \"./icon/HistoryIcon.tsx\";\nimport ReFetchIcon from \"./icon/ReFetchIcon.tsx\";\nimport SchemaIcon from \"./icon/SchemaIcon.tsx\";\nimport SettingIcon from \"./icon/SettingIcon.tsx\";\nimport TestIcon from \"./icon/TestIcon.tsx\";\nimport { Main } from \"./Main.tsx\";\nimport { useLesan } from \"./ManagedLesanContext.tsx\";\nimport Modal from \"./Modal.tsx\";\nimport { Schema } from \"./Schema.tsx\";\nimport { Setting } from \"./Setting.tsx\";\nimport { useOutsideClick } from \"./hooks/useOutsideClick.ts\";\n\nconst getSchemasAPI = ({ baseUrl }: { baseUrl: string }) =>\n fetch(`${baseUrl}playground/static/get/schemas`).then((res) => res.json());\n\nexport const Page = () => {\n const {\n tabsData,\n setTabsData,\n activeTab,\n actsObj,\n addTab,\n setActiveTab,\n setService,\n setSchema,\n setAct,\n setPostFields,\n setGetFields,\n setFormData,\n setHistory,\n setResponse,\n resetGetFields,\n closeTab,\n resetPostFields,\n setSchemasObj,\n setActsObj,\n setModal,\n modal,\n } = useLesan();\n\n const [show, setShow] = useState(\"\");\n const [mediaShow, setMediaShow] = useState(false);\n\n const parsedWindowUrl = () => {\n return window && window.location\n ? `${new URL(window.location.href).origin}/`\n : \"http://localhost:1366/\";\n };\n\n const [urlAddress, setUrlAddress] = useState(\"\");\n const handleClickOutside = () => {\n setMediaShow(false);\n };\n const ref: any = useOutsideClick(handleClickOutside);\n\n useEffect(() => {\n configUrl(parsedWindowUrl());\n\n const localHistory = JSON.parse(localStorage.getItem(\"localHistory\")!);\n if (localHistory) setHistory(localHistory);\n }, []);\n\n const configUrl = (address?: string) => {\n address && setUrlAddress(address);\n\n setService({ data: \"\", index: activeTab });\n setSchema({ data: \"\", index: activeTab });\n resetGetFields(activeTab);\n resetPostFields(activeTab);\n setFormData({ data: {}, index: activeTab });\n\n getSchemasAPI({ baseUrl: address ? address : urlAddress }).then(\n ({ schemas, acts }) => {\n setActsObj(acts);\n setSchemasObj(schemas);\n\n let localTabsData = localStorage.getItem(\"localTabsData\");\n\n if (localTabsData) {\n localTabsData = JSON.parse(localTabsData);\n\n const parsedLocalTabData: any[] = [];\n\n const proccessTabData = (tab: any) => {\n parsedLocalTabData.pop();\n\n // form data section --- begin\n const parsedFromData = createNestedObjectsFromKeys(tab.formData);\n\n // set fileds section --- begin\n for (const setKeys in parsedFromData.set) {\n if (\n acts[tab.service][tab.schema][tab.act].validator.schema.set\n .schema[setKeys] === undefined\n ) {\n delete parsedFromData.set[setKeys];\n }\n }\n // TODO : we need to check field type also in set fields inside acts[tab.service][tab.schema][tab.act].validator.schema.set.schema[setKeys].type\n\n // set fileds section --- end\n\n // get fileds section --- begin\n for (const getKey in parsedFromData.get) {\n if (\n acts[tab.service][tab.schema][tab.act].validator.schema.get\n .schema[getKey] === undefined\n ) {\n delete parsedFromData.get[getKey];\n }\n }\n // get fileds section --- end\n\n const newGeneratedFormData = generateFormData(\n parsedFromData,\n {},\n \"\"\n );\n // form data section --- end\n\n // set fileds section --- begin\n tab.postFields =\n acts[tab.service][tab.schema][\n tab.act\n ].validator.schema.set.schema;\n // set fileds section --- end\n\n // get fileds section --- begin\n tab.getFields =\n acts[tab.service][tab.schema][\n tab.act\n ].validator.schema.get.schema;\n // get fileds section --- end\n\n parsedLocalTabData.push({\n ...tab,\n formData: newGeneratedFormData,\n });\n };\n\n for (const tab of localTabsData as any) {\n if (tab.service && tab.service in acts) {\n parsedLocalTabData.push(tab);\n }\n\n if (tab.schema && !(tab.schema in acts[tab.service])) {\n parsedLocalTabData.pop();\n }\n\n if (tab.act && !(tab.act in acts[tab.service][tab.schema])) {\n parsedLocalTabData.pop();\n }\n\n if (\n tab.service &&\n tab.schema &&\n tab.act &&\n tab.act in acts[tab.service][tab.schema]\n ) {\n proccessTabData(tab);\n }\n }\n if (parsedLocalTabData.length < 1) {\n parsedLocalTabData.push({\n service: \"\",\n schema: \"\",\n act: \"\",\n postFields: {},\n getFields: {},\n formData: {},\n response: null,\n });\n }\n setTabsData(parsedLocalTabData);\n }\n }\n );\n };\n\n const toggleModal = () => {\n setModal(null);\n };\n\n const setFormFromHistory = (request: any) => {\n setService({ data: request.body.service, index: activeTab });\n setSchema({ data: request.body.model, index: activeTab });\n setAct({ data: request.body.act, index: activeTab });\n\n const actObj = (actsObj as any)[request.body.service][request.body.model][\n request.body.act\n ][\"validator\"][\"schema\"];\n\n setGetFields({ data: actObj[\"get\"][\"schema\"], index: activeTab });\n setPostFields({ data: actObj[\"set\"][\"schema\"], index: activeTab });\n\n setResponse({ data: null, index: activeTab });\n\n const historyFromData = generateFormData(request.body.details, {}, \"\");\n\n setFormData({ data: historyFromData, index: activeTab });\n\n toggleModal();\n };\n\n return (\n setMediaShow(false)}\n >\n
\n {tabsData.map((tab, index) => (\n \n {\n setActiveTab(index);\n }}\n >\n {\" \"}\n \n {\" \"}\n {tabsData[index].act\n ? `${tabsData[index].schema} | ${tabsData[index].act}`\n : tabsData[index].schema\n ? `${tabsData[index].service} | ${tabsData[index].schema}`\n : tabsData[index].service\n ? tabsData[index].service\n : `Tab ${index}`}\n \n {\n event.stopPropagation();\n closeTab(index);\n }}\n title=\"Close tab\"\n >\n x\n \n
\n \n ))}\n {\n addTab(null);\n localStorage.setItem(\"localTabsData\", JSON.stringify(tabsData));\n }}\n >\n +\n \n \n
\n\n {/* under 768px heigh button */}\n {\n setMediaShow(!mediaShow);\n }}\n >\n menu\n \n {/* */}\n\n
\n configUrl()}>\n Refetch\n \n \n setModal(MODAL_TYPES.SETTING)}\n >\n Setting\n \n \n setModal(MODAL_TYPES.HISTORY)}\n >\n History\n \n \n setModal(MODAL_TYPES.E2E_TEST)}\n >\n E2E Test\n \n \n \n \n Document\n \n \n setModal(MODAL_TYPES.SCHEMA)}\n onMouseEnter={() => setShow(\"document\")}\n onMouseLeave={() => setShow(\"\")}\n >\n Schema\n \n \n setModal(MODAL_TYPES.ACT)}\n onMouseEnter={() => setShow(\"document\")}\n onMouseLeave={() => setShow(\"\")}\n >\n Act\n \n \n
\n\n {modal !== null && (\n \n {modal === MODAL_TYPES.HISTORY ? (\n \n ) : modal === MODAL_TYPES.SETTING ? (\n \n ) : modal === MODAL_TYPES.E2E_TEST ? (\n \n ) : modal === MODAL_TYPES.SCHEMA ? (\n \n ) : modal === MODAL_TYPES.ACT ? (\n \n ) : (\n \n )}\n \n )}\n \n );\n};\n", "/** @jsx h */\nimport { ManagedLesanContext } from \"./comp/ManagedLesanContext.tsx\";\nimport { Page } from \"./comp/preact.tsx\";\nimport { h, hydrate } from \"./reactDeps.ts\";\n\nhydrate(\n \n \n ,\n document.getElementById(\"root\")!,\n);\n"], - "mappings": "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", - "names": ["createContext", "Fragment", "h", "hydrate", "useCallback", "useContext", "useEffect", "useMemo", "useReducer", "useRef", "useState", "uid", "tabInitial", "schemaInitial", "historyInitial", "headerInitial", "e2eFirstInp", "uid", "e2eInitial", "modalInitial", "initialState", "lesanReducer", "state", "action", "type", "payload", "copyTabsData", "LesanContext", "createContext", "initialState", "LesanProvider", "props", "state", "dispatch", "useReducer", "lesanReducer", "setService", "useCallback", "payload", "setSchema", "setAct", "setPostFields", "resetPostFields", "setGetFields", "resetGetFields", "setFormData", "setActiveTab", "addTab", "closeTab", "deleteItemHistory", "setHeader", "setHistory", "setTabsData", "setResponse", "setSchemasObj", "setActsObj", "setE2eForms", "addE2eForm", "setModal", "value", "useMemo", "h", "useLesan", "context", "useContext", "LesanContext", "ManagedLesanContext", "props", "children", "h", "LesanProvider", "createNestedObjectsFromKeys", "obj", "result", "objectPath", "parts", "target", "part", "generateFormData", "formData", "returnFormData", "keyname", "key", "Search", "h", "ExportIcon", "h", "Act", "actsObj", "useLesan", "exportActs", "jsonString", "link", "rainbowClass", "proceedActs", "acts", "act", "index", "newUid", "uid", "h", "proceedChildActs", "childActs", "childAct", "ExportIcon", "Search", "BackIcon", "h", "Help", "setView", "h", "BackIcon", "AddIcon", "h", "DeleteIcon", "h", "deleteIcon_default", "DownIcon", "h", "HelpIcon", "h", "Hide", "h", "Hide_default", "ImportIcon", "h", "RunIcon", "h", "Show", "h", "UpIcon", "h", "pre", "regEx", "syntaxHighlight", "json", "replacer", "match", "className", "text", "_", "value", "cutify", "JSONViewer", "jsonData", "cutifiedJson", "cutify", "h", "Fragment", "pre", "E2E", "baseUrl", "e2eForms", "setE2eForms", "useLesan", "isShowE2eResponse", "setIsShowE2eResponse", "useState", "isShowE2eButton", "setIsShowE2eButton", "requestDetail", "setRequestDetail", "handleMove", "fromIndex", "toIndex", "element", "handleDelete", "view", "setView", "results", "setResults", "exportForm", "jsonString", "link", "jsonFileUpload", "e", "fileReader", "data", "exportResults", "lesanAPI", "options", "replaceCaptureString", "obj", "variablesSet", "key", "value", "openBraceIndexes", "index", "closeBraceIndexes", "openBrace", "variableName", "setValue", "runE2eTest", "parsedCaptures", "allReqPerformance0", "numberRequest", "e2eForm", "parsedHeaderBody", "body", "jsonSendedRequest", "sequenceTime0", "sequenceRepeat", "succeccCount", "failsCount", "repeat", "tResTime0", "tResTime1", "uid", "sequenceTime1", "capture", "parts", "part", "slicedPart", "getedValue", "capValue", "allReqPerformance1", "plusRepeatHandler", "copy", "minesRepeatHandler", "h", "Fragment", "BackIcon", "ExportIcon", "Hide_default", "Show", "re", "JSONViewer", "sequence", "idx", "UpIcon", "DownIcon", "deleteIcon_default", "capId", "e2eFirstInp", "AddIcon", "RunIcon", "ImportIcon", "HelpIcon", "Help", "ConvertMilliseconds", "milliseconds", "hours", "minutes", "seconds", "useNonInitialEffect", "effect", "deps", "initialRender", "useRef", "useEffect", "effectReturns", "Dustbin", "h", "History", "setFormFromHistory", "history", "setHistory", "deleteItemHistory", "useLesan", "show", "setShow", "useState", "useNonInitialEffect", "h", "hi", "index", "JSONViewer", "event", "deleteIcon_default", "ConvertMilliseconds", "Dustbin", "DocumentIcon", "h", "HistoryIcon", "h", "ReFetchIcon", "h", "SchemaIcon", "h", "SettingIcon", "h", "TestIcon", "h", "CopyIcon", "h", "RunTestIcon", "h", "SuccessIcon", "h", "useOutsideClick", "callback", "ref", "useRef", "useEffect", "handleClick", "event", "ChevronDownIcon", "className", "h", "Selected", "items", "onClickItem", "incomeActiveItem", "canShow", "show", "setShow", "useState", "activeItem", "setActiveItem", "useEffect", "ref", "useOutsideClick", "h", "e", "ChevronDownIcon", "item", "index", "MultiSelect", "options", "onChange", "selectedOptions", "setSelectedOptions", "useState", "unselectedOptions", "setUnselectedOptions", "isOpen", "setIsOpen", "handleOptionChange", "selectedOption", "filteredSelectedOptions", "option", "filteredUnselectedOptions", "resetOptions", "toggleDropdown", "ref", "useOutsideClick", "h", "item", "e", "ChevronDownIcon", "MultiSelect_default", "lesanAPI", "baseUrl", "options", "res", "Main", "urlAddress", "activeTab", "tabsData", "actsObj", "headers", "history", "setService", "setSchema", "setAct", "setPostFields", "setGetFields", "setFormData", "setHistory", "setResponse", "resetGetFields", "resetPostFields", "addE2eForm", "setModal", "useLesan", "active", "setActive", "useState", "changeGetValue", "value", "keyname", "getObj", "returnObj", "key", "formRef", "useRef", "handleChange", "event", "name", "type", "alt", "updatedValue", "renderPostFields", "field", "isMultiEnum", "formData", "h", "MultiSelect_default", "schemaKey", "item", "Selected", "renderGetFields", "getField", "keyName", "margin", "index", "copy", "requestFunction", "details", "createNestedObjectsFromKeys", "handleSubmit", "sendRequest", "t0", "jsonSendedRequest", "tookTime", "newHistory", "uid", "canShowRequestFields", "canShowSchema", "canShowAct", "copyResponse", "response", "copyRequest", "request", "runE2eRequest", "method", "rest", "newE2eForm", "onClickItem", "actObj", "Fragment", "SuccessIcon", "CopyIcon", "RunTestIcon", "JSONViewer", "ConvertMilliseconds", "FullScreenExit", "h", "Fullscreen_exit_default", "FullScreen", "h", "Fullscreen_default", "Modal", "props", "toggleFullScreen", "setToggleFullScreen", "useState", "h", "e", "deleteIcon_default", "Fullscreen_exit_default", "Fullscreen_default", "Modal_default", "Schema", "schemasObj", "useLesan", "reProduceSchemaObj", "setreProduceSchemaObj", "useState", "useEffect", "myNewObj", "schema", "mainRels", "relatedRels", "exportSchemas", "jsonString", "link", "rainbowClass", "proceedSchemas", "schemas", "newUid", "uid", "h", "proceedChildSchema", "childSchema", "childItem", "HelpIcon", "JSONViewer", "ExportIcon", "Search", "TickIcon", "h", "Setting", "configUrl", "handleDelete", "fromIndex", "headersState", "setHeadersState", "headers", "setHeader", "useLesan", "useState", "urlAddress", "setUrlAddress", "useEffect", "arrHeader", "key", "h", "e", "TickIcon", "AddIcon", "hst", "idx", "prevState", "deleteIcon_default", "newHeaders", "header", "value", "getSchemasAPI", "baseUrl", "res", "Page", "tabsData", "setTabsData", "activeTab", "actsObj", "addTab", "setActiveTab", "setService", "setSchema", "setAct", "setPostFields", "setGetFields", "setFormData", "setHistory", "setResponse", "resetGetFields", "closeTab", "resetPostFields", "setSchemasObj", "setActsObj", "setModal", "modal", "useLesan", "show", "setShow", "useState", "mediaShow", "setMediaShow", "parsedWindowUrl", "urlAddress", "setUrlAddress", "ref", "useOutsideClick", "useEffect", "configUrl", "localHistory", "address", "schemas", "acts", "localTabsData", "parsedLocalTabData", "proccessTabData", "tab", "parsedFromData", "createNestedObjectsFromKeys", "setKeys", "getKey", "newGeneratedFormData", "generateFormData", "toggleModal", "setFormFromHistory", "request", "actObj", "historyFromData", "h", "index", "Fragment", "event", "Main", "ReFetchIcon", "SettingIcon", "HistoryIcon", "TestIcon", "SchemaIcon", "DocumentIcon", "Modal_default", "History", "Setting", "E2E", "Schema", "Act", "hydrate", "h", "ManagedLesanContext", "Page"] + "sources": ["../reactDeps.ts", "../utils/uid.ts", "../comp/context/initials.ts", "../comp/context/reducer.ts", "../comp/context/provider.tsx", "../comp/ManagedLesanContext.tsx", "../utils/createNestedObjectsFromKeys.ts", "../utils/generateFormData.ts", "../comp/icon/Search.tsx", "../comp/icon/ExportIcon.tsx", "../comp/Act.tsx", "../comp/icon/BackIcon.tsx", "../comp/Help.tsx", "../comp/icon/AddIcon.tsx", "../comp/icon/deleteIcon.tsx", "../comp/icon/DownIcon.tsx", "../comp/icon/HelpIcon.tsx", "../comp/icon/ImportIcon.tsx", "../comp/icon/RunIcon.tsx", "../comp/icon/UpIcon.tsx", "../comp/styles.ts", "../comp/cutify.ts", "../comp/JSONVeiwer.tsx", "../comp/icon/InfoIcon.tsx", "../comp/ResultSlider.tsx", "../comp/SequenceSlider.tsx", "../comp/E2E.tsx", "../utils/convertMilliseconds.ts", "../comp/hooks/useNonInitialEffect.ts", "../comp/icon/DustbinIcon.tsx", "../comp/History.tsx", "../comp/icon/DocumentIcon.tsx", "../comp/icon/HistoryIcon.tsx", "../comp/icon/ReFetchIcon.tsx", "../comp/icon/SchemaIcon.tsx", "../comp/icon/SettingIcon.tsx", "../comp/icon/TestIcon.tsx", "../comp/icon/CopyIcon.tsx", "../comp/icon/RunTestIcon.tsx", "../comp/icon/SuccessIcon.tsx", "../comp/hooks/useOutsideClick.ts", "../comp/icon/ChevronDownIcon.tsx", "../comp/Selected.tsx", "../comp/MultiSelect.tsx", "../comp/Main.tsx", "../comp/icon/Fullscreen-exit.tsx", "../comp/icon/Fullscreen.tsx", "../comp/icon/Up2Icon.tsx", "../comp/Modal.tsx", "../comp/Schema.tsx", "../comp/icon/TickIcon.tsx", "../comp/Setting.tsx", "../comp/preact.tsx", "../hydrate.tsx"], + "sourcesContent": ["export {\n createContext,\n Fragment,\n h,\n hydrate,\n} from \"https://esm.sh/preact@10.5.15\";\nexport {\n useCallback,\n useContext,\n useEffect,\n useMemo,\n useReducer,\n useRef,\n useState,\n \n} from \"https://esm.sh/preact@10.5.15/hooks\";\n\nexport type {\n FunctionalComponent,\n RefCallback,\n RefObject,\n} from \"https://esm.sh/preact@10.5.15\";\n\nexport type { Ref, EffectCallback, StateUpdater } from \"https://esm.sh/preact@10.5.15/hooks\";\n", "export const uid = () =>\n Date.now().toString(36) + Math.random().toString(36).substr(2);\n", "import { uid } from \"../../utils/uid.ts\";\nimport { IState } from \"./actionType.ts\";\n\nconst tabInitial = {\n tabsData: [\n {\n service: \"\",\n schema: \"\",\n act: \"\",\n postFields: {},\n getFields: {},\n formData: {},\n response: null,\n },\n ],\n activeTab: 0,\n setActiveTab: () => ({}),\n addTab: () => ({}),\n closeTab: () => ({}),\n setTabsData: () => ({}),\n};\n\nconst schemaInitial = {\n schemasObj: {},\n actsObj: {},\n\n setService: () => ({}),\n setMethod: () => ({}),\n setSchema: () => ({}),\n setAct: () => ({}),\n setActsObj: () => ({}),\n setSchemasObj: () => ({}),\n setPostFields: () => ({}),\n resetPostFields: () => ({}),\n setGetFields: () => ({}),\n resetGetFields: () => ({}),\n setFormData: () => ({}),\n setResponse: () => ({}),\n};\n\nconst historyInitial = {\n history: [],\n\n deleteItemHistory: () => ({}),\n\n setHistory: () => ({}),\n};\n\nconst headerInitial = {\n headers: { Authorization: \"\" },\n setHeader: () => ({}),\n};\n\nexport const e2eFirstInp = () => ({\n id: uid(),\n bodyHeaders: `\n{\n \"headers\": {\n \"Content-Type\": \"application/json\",\n \"Authorization\": \"\"\n },\n \"body\": {\n \"service\": \"main\",\n \"contents\": \"dynamic\",\n \"model\": \"\",\n \"act\": \"\"\n \"details\": {\n \"get\": {\n },\n \"set\": {\n }\n }\n}\n}\n `,\n repeat: 1,\n captures: [],\n});\n\nconst e2eInitial = {\n e2eForms: [e2eFirstInp()],\n\n setE2eForms: () => ({}),\n addE2eForm: () => ({}),\n};\n\nconst modalInitial = {\n modal: null,\n setModal: () => ({}),\n};\n\n// TODO: Have to Find Someway to Prevent from Rewriting Function Types\nexport const initialState: IState = {\n ...tabInitial,\n ...schemaInitial,\n ...historyInitial,\n ...headerInitial,\n ...e2eInitial,\n ...modalInitial,\n};\n", "import { ACTION_TYPE, IState, TAction } from \"./actionType.ts\";\n\nexport function lesanReducer(state: IState, action: TAction): IState {\n const { type, payload } = action;\n switch (type) {\n case ACTION_TYPE.SET_SERVICE: {\n const copyTabsData = [...state.tabsData];\n copyTabsData[payload.index] = {\n ...copyTabsData[payload.index],\n service: payload.data,\n };\n return {\n ...state,\n tabsData: [...copyTabsData],\n };\n }\n case ACTION_TYPE.SET_SCHEMA: {\n const copyTabsData = [...state.tabsData];\n copyTabsData[payload.index] = {\n ...copyTabsData[payload.index],\n schema: payload.data,\n };\n return {\n ...state,\n tabsData: [...copyTabsData],\n };\n }\n case ACTION_TYPE.SET_ACT: {\n const copyTabsData = [...state.tabsData];\n copyTabsData[payload.index] = {\n ...copyTabsData[payload.index],\n act: payload.data,\n };\n return {\n ...state,\n tabsData: [...copyTabsData],\n };\n }\n case ACTION_TYPE.SET_POST_FIELDS: {\n const copyTabsData = [...state.tabsData];\n copyTabsData[payload.index] = {\n ...copyTabsData[payload.index],\n postFields: payload.data,\n };\n return {\n ...state,\n tabsData: [...copyTabsData],\n };\n }\n case ACTION_TYPE.RESET_POST_FIELDS: {\n const copyTabsData = [...state.tabsData];\n copyTabsData[payload] = { ...copyTabsData[payload], postFields: {} };\n return {\n ...state,\n tabsData: [...copyTabsData],\n };\n }\n case ACTION_TYPE.SET_GET_FIELDS: {\n const copyTabsData = [...state.tabsData];\n copyTabsData[payload.index] = {\n ...copyTabsData[payload.index],\n getFields: payload.data,\n };\n return {\n ...state,\n tabsData: [...copyTabsData],\n };\n }\n case ACTION_TYPE.RESET_GET_FIELDS: {\n const copyTabsData = [...state.tabsData];\n copyTabsData[payload] = { ...copyTabsData[payload], getFields: {} };\n return {\n ...state,\n tabsData: [...copyTabsData],\n };\n }\n case ACTION_TYPE.SET_FORM_DATA: {\n const copyTabsData = [...state.tabsData];\n copyTabsData[payload.index] = {\n ...copyTabsData[payload.index],\n formData: payload.data,\n };\n return {\n ...state,\n tabsData: [...copyTabsData],\n };\n }\n case ACTION_TYPE.SET_HEADER: {\n return {\n ...state,\n headers: payload,\n };\n }\n case ACTION_TYPE.SET_HISTORY: {\n return {\n ...state,\n history: payload,\n };\n }\n\n case ACTION_TYPE.SET_TABS_DATA: {\n return {\n ...state,\n tabsData: payload,\n };\n }\n\n case ACTION_TYPE.SET_RESPONSE: {\n const copyTabsData = [...state.tabsData];\n copyTabsData[payload.index] = {\n ...copyTabsData[payload.index],\n response: payload.data,\n };\n return {\n ...state,\n tabsData: [...copyTabsData],\n };\n }\n case ACTION_TYPE.ADD_TAB: {\n return {\n ...state,\n tabsData: [\n ...state.tabsData,\n {\n service: \"\",\n schema: \"\",\n act: \"\",\n postFields: {},\n getFields: {},\n formData: {},\n response: null,\n },\n ],\n activeTab: state.tabsData.length,\n };\n }\n case ACTION_TYPE.SET_ACTIVE_TAB: {\n return {\n ...state,\n activeTab: payload,\n };\n }\n case ACTION_TYPE.CLOSE_TAB: {\n const copyTabsData = [...state.tabsData];\n copyTabsData.length > 1 && copyTabsData.splice(payload, 1);\n return {\n ...state,\n tabsData: [...copyTabsData],\n activeTab: copyTabsData.length >= 1 &&\n state.activeTab >= payload &&\n state.activeTab !== 0\n ? state.activeTab - 1\n : state.activeTab,\n };\n }\n\n case ACTION_TYPE.DELETE_ITEM_HISTORY: {\n return {\n ...state,\n history: state.history\n .slice(0, payload)\n .concat(state.history.slice(payload + 1)),\n };\n }\n\n case ACTION_TYPE.SET_ACTS_OBJ: {\n return {\n ...state,\n actsObj: payload,\n };\n }\n case ACTION_TYPE.SET_SCHEMAS_OBJ: {\n return {\n ...state,\n schemasObj: payload,\n };\n }\n case ACTION_TYPE.SET_E2E_FORMS: {\n return {\n ...state,\n e2eForms: payload,\n };\n }\n case ACTION_TYPE.ADD_E2E_FORM: {\n return {\n ...state,\n e2eForms: [...state.e2eForms, payload],\n };\n }\n case ACTION_TYPE.OPEN_MODAL: {\n return {\n ...state,\n modal: payload,\n };\n }\n default:\n throw new Error(`Unhandled action type`);\n }\n}\n", "/** @jsx h */\nimport { h, useMemo } from \"../../reactDeps.ts\";\nimport { createContext } from \"../../reactDeps.ts\";\nimport { useCallback } from \"../../reactDeps.ts\";\nimport { useReducer } from \"../../reactDeps.ts\";\nimport { E2eForm, IState, MODAL_TYPES } from \"./actionType.ts\";\nimport { TObjectArray } from \"./actionType.ts\";\nimport { THistory } from \"./actionType.ts\";\nimport { TTabsData } from \"./actionType.ts\";\nimport { ACTION_TYPE } from \"./actionType.ts\";\nimport { initialState } from \"./initials.ts\";\nimport { lesanReducer } from \"./reducer.ts\";\n\nexport const LesanContext = createContext(initialState);\n\nexport const LesanProvider = (props: any) => {\n const [state, dispatch] = useReducer(lesanReducer, initialState);\n\n const setService = useCallback(\n (payload: { data: string; index: number }) =>\n dispatch({ type: ACTION_TYPE.SET_SERVICE, payload }),\n [dispatch],\n );\n\n const setSchema = useCallback(\n (payload: { data: string; index: number }) =>\n dispatch({ type: ACTION_TYPE.SET_SCHEMA, payload }),\n [dispatch],\n );\n\n const setAct = useCallback(\n (payload: { data: string; index: number }) =>\n dispatch({ type: ACTION_TYPE.SET_ACT, payload }),\n [dispatch],\n );\n\n const setPostFields = useCallback(\n (payload: { data: string; index: number }) =>\n dispatch({ type: ACTION_TYPE.SET_POST_FIELDS, payload }),\n [dispatch],\n );\n\n const resetPostFields = useCallback(\n (payload: number) =>\n dispatch({ type: ACTION_TYPE.RESET_POST_FIELDS, payload }),\n [dispatch],\n );\n\n const setGetFields = useCallback(\n (payload: { data: string; index: number }) =>\n dispatch({ type: ACTION_TYPE.SET_GET_FIELDS, payload }),\n [dispatch],\n );\n\n const resetGetFields = useCallback(\n (payload: number) =>\n dispatch({ type: ACTION_TYPE.RESET_GET_FIELDS, payload }),\n [dispatch],\n );\n\n const setFormData = useCallback(\n (payload: { data: any; index: number }) =>\n dispatch({ type: ACTION_TYPE.SET_FORM_DATA, payload }),\n [dispatch],\n );\n\n const setActiveTab = useCallback(\n (payload: number) =>\n dispatch({ type: ACTION_TYPE.SET_ACTIVE_TAB, payload }),\n [dispatch],\n );\n\n const addTab = useCallback(\n (payload: null) => dispatch({ type: ACTION_TYPE.ADD_TAB, payload }),\n [dispatch],\n );\n\n const closeTab = useCallback(\n (payload: number) => dispatch({ type: ACTION_TYPE.CLOSE_TAB, payload }),\n [dispatch],\n );\n\n const deleteItemHistory = useCallback(\n (payload: number) =>\n dispatch({ type: ACTION_TYPE.DELETE_ITEM_HISTORY, payload }),\n [dispatch],\n );\n\n const setHeader = useCallback(\n (payload: TObjectArray) =>\n dispatch({ type: ACTION_TYPE.SET_HEADER, payload }),\n [dispatch],\n );\n\n const setHistory = useCallback(\n (payload: THistory[]) =>\n dispatch({ type: ACTION_TYPE.SET_HISTORY, payload }),\n [dispatch],\n );\n\n const setTabsData = useCallback(\n (payload: TTabsData[]) =>\n dispatch({ type: ACTION_TYPE.SET_TABS_DATA, payload }),\n [dispatch],\n );\n\n const setResponse = useCallback(\n (payload: { data: any; index: number }) =>\n dispatch({ type: ACTION_TYPE.SET_RESPONSE, payload }),\n [dispatch],\n );\n\n const setSchemasObj = useCallback(\n (payload: Record) =>\n dispatch({ type: ACTION_TYPE.SET_SCHEMAS_OBJ, payload }),\n [dispatch],\n );\n const setActsObj = useCallback(\n (payload: Record) =>\n dispatch({ type: ACTION_TYPE.SET_ACTS_OBJ, payload }),\n [dispatch],\n );\n\n const setE2eForms = useCallback(\n (payload: E2eForm[]) =>\n dispatch({ type: ACTION_TYPE.SET_E2E_FORMS, payload }),\n [dispatch],\n );\n\n const addE2eForm = useCallback(\n (payload: E2eForm) => dispatch({ type: ACTION_TYPE.ADD_E2E_FORM, payload }),\n [dispatch],\n );\n const setModal = useCallback(\n (payload: MODAL_TYPES | null) =>\n dispatch({ type: ACTION_TYPE.OPEN_MODAL, payload }),\n [dispatch],\n );\n\n const value = useMemo(\n () => ({\n ...state,\n setService,\n setSchema,\n setAct,\n setPostFields,\n resetPostFields,\n setGetFields,\n resetGetFields,\n setFormData,\n setHeader,\n setHistory,\n setTabsData,\n setResponse,\n setActsObj,\n setSchemasObj,\n setActiveTab,\n addTab,\n closeTab,\n deleteItemHistory,\n setE2eForms,\n addE2eForm,\n setModal,\n }),\n [state],\n );\n\n return ;\n};\n", "/** @jsx h */\nimport { h, useContext } from \"../reactDeps.ts\";\nimport { LesanContext, LesanProvider } from \"./context/provider.tsx\";\n\nconst useLesan = () => {\n const context = useContext(LesanContext);\n if (context === undefined) {\n console.warn(`useLesan must be used within a LesanProvider`);\n }\n return context;\n};\n\nconst ManagedLesanContext = (props: { children: h.JSX.Element }) => {\n const { children } = props;\n\n return {children};\n};\n\nexport { ManagedLesanContext, useLesan };\n", "export const createNestedObjectsFromKeys = (\n obj: Record,\n): Record => {\n const result: Record = { get: {}, set: {} };\n\n // For each object path (property key) in the object\n for (const objectPath in obj) {\n if (obj[objectPath] || obj[objectPath] === 0) {\n // Split path into component parts\n const parts = objectPath.split(\".\");\n\n // Create sub-objects along path as needed\n let target: Record = result;\n while (parts.length > 1) {\n const part = parts.shift()!;\n target[part] = target[part] || {};\n target = target[part];\n }\n\n // Set value at end of path\n target[parts[0]] = obj[objectPath];\n }\n }\n\n return result;\n};\n", "export const generateFormData = (\n formData: Record,\n returnFormData: Record,\n keyname: string,\n) => {\n for (const key in formData) {\n typeof formData[key] === \"object\"\n ? generateFormData(\n formData[key],\n returnFormData,\n keyname ? `${keyname}.${key}` : key,\n )\n : (returnFormData[`${keyname}.${key}`] = formData[key]);\n }\n return returnFormData;\n};\n", "/** @jsx h */\nimport { h } from \"../../reactDeps.ts\";\n\nexport default function Search() {\n return (\n \n \n \n );\n};\n\n", "/** @jsx h */\nimport { h } from \"../../reactDeps.ts\";\n\nexport default function ExportIcon() {\n return (\n \n \n\n \n \n );\n}\n", "/** @jsx h */\nimport { Fragment, h, useEffect, useState } from \"../reactDeps.ts\";\nimport { useLesan } from \"./ManagedLesanContext.tsx\";\nimport Search from \"./icon/Search.tsx\";\nimport { uid } from \"../utils/uid.ts\";\nimport ExportIcon from \"./icon/ExportIcon.tsx\";\n\nexport function Act() {\n const { actsObj } = useLesan();\n const exportActs = () => {\n const jsonString = `data:text/json;chatset=utf-8,${encodeURIComponent(\n JSON.stringify(actsObj)\n )}`;\n const link = document.createElement(\"a\");\n link.href = jsonString;\n link.download = \"acts.json\";\n\n link.click();\n };\n\n const rainbowClass = [\n \"color-1\",\n \"color-2\",\n \"color-3\",\n \"color-4\",\n \"color-5\",\n \"color-6\",\n \"color-7\",\n ];\n\n const proceedActs = (acts: Record) => {\n return Object.keys(acts).map((act: any, index) => {\n const newUid = uid();\n return (\n
\n {\n document.getElementById(newUid)?.classList.toggle(\"open\");\n }}\n >\n

{act}

\n ...\n
\n
\n {proceedChildActs(actsObj[act])}\n
\n \n );\n });\n };\n\n const proceedChildActs = (childActs: Record) => {\n return Object.keys(childActs).map((childAct: any, index) => {\n const newUid = uid();\n\n return (\n \n {\n document.getElementById(newUid)?.classList.toggle(\"open\");\n }}\n >\n

{childAct}

\n {childActs[childAct].type && (\n

\n {childActs[childAct].type}\n

\n )}\n
\n {\" \"}\n {typeof childActs[childAct] === \"object\" &&\n childActs[childAct].schema !== null && ...}\n
\n \n
\n {typeof childActs[childAct] === \"object\" &&\n childActs[childAct] !== null &&\n childActs[childAct].schema !== null &&\n proceedChildActs(\n childActs[childAct].validator\n ? childActs[childAct].validator.schema\n : childActs[childAct].schema\n ? childActs[childAct].schema\n : childActs[childAct]\n )}\n
\n \n );\n });\n };\n\n return (\n
\n {\" \"}\n
\n \n \n Export\n \n
\n
\n \n \n \n \n
\n
{proceedActs(actsObj)}
\n
\n );\n}\n", "/** @jsx h */\nimport { h } from \"../../reactDeps.ts\";\n\nexport default function BackIcon() {\n return (\n \n \n \n\n \n \n );\n}\n", "/** @jsx h */\n// import { StateUpdater } from \"https://esm.sh/v118/preact@10.5.15/hooks/src/index.js\";\nimport { StateUpdater, h, useState } from \"../reactDeps.ts\";\nimport BackIcon from \"./icon/BackIcon.tsx\";\n\ninterface IHelpProps {\n setView: StateUpdater<\"help\" | \"e2e\" | \"result\">;\n}\n\nexport const Help = ({setView}: IHelpProps) => {\n return (\n
\n {\" \"}\n {\n setView(\"e2e\");\n }}\n >\n \n Back\n \n
\n

\n With E2E Test, you can test the whole application by sending a\n sequence of HTTP requests.\n

\n

\n In the image below, you can see the first view of the E2E test\n modal page, which contains a button bar at the top and two\n separate requests.\n

\n \n\n
\n\n

\n In the button bar, you have these buttons:\n \n

    \n
  • Add: This button adds one request section.
  • \n
  • \n Run E2E Test: This button runs all requests and shows their\n results.\n
  • \n
  • \n Import: This button stands for importing an E2E config in JSON\n format.\n
  • \n
  • \n Export: This button stands for exporting an existing E2E\n config in JSON format.\n
  • \n
  • \n Help: This button switches to the help of the E2E modal page.\n
  • \n
\n

\n\n
\n\n
\n

Each request section have 2 side

\n \n\n
\n\n
\n

\n The right side is a set of configurations for the repeat time\n of each request and capturing variables of the request\n response. In the Capture Variables section, you can add a pair\n of tuple inputs for the key name of the capture variable and\n its value. You can capture the value of a capture variable\n with braces syntax. For example, if you get back this response\n from a request:\n

\n                    {\"{\\n\"}\n                    {\"  body: [\\n\"}\n                    {\"    {\\n\"}\n                    {\"      _id: 64c6839c50adc3cb65726934,\\n\"}\n                    {\"      name: \u0647\u0645\u062F\u0627\u0646,\\n\"}\n                    {\"      enName: Hamedan,\\n\"}\n                    {\"      abb: HM\\n\"}\n                    {\"    }\\n\"}\n                    {\"  ],\\n\"}\n                    {\"  success: true\\n\"}\n                    {\"  }\\n\"}\n                    {\"}\\n\"}\n                  
\n You can capture _id with [body][0][_id] or for name:\n [body][0][name].\n

\n \n
\n\n
\n\n
\n \n

\n The left side is a text area for writing headers and the body\n of the request in JSON format. In this text area, you can use\n a text parser to implement the captured value you captured\n before inside these symbols {\"{}\"}.\n

\n
\n\n
\n\n

\n Also, we have some buttons on the top right side of each request\n section. With these buttons, you can move up and down and delete\n requests.\n \n

\n
\n\n
\n\n
\n

\n After clicking on the Run E2E Test button, you can see the\n result of each test. Also, in the result view, you can export\n the results in JSON format.\n

\n \n
\n\n
\n\n
\n

\n Additionally, you can go to the E2E Test modal page from the\n main page by clicking on the Test icon inside the response\n header section. This way, you can add a new test section and\n prepopulate the Header and Body text areas with the sent request\n from the main page.\n \n

\n
\n
\n
\n )\n}", "/** @jsx h */\nimport { h } from \"../../reactDeps.ts\";\n\nexport default function AddIcon() {\n return (\n \n \n \n \n );\n}\n", "/** @jsx h */\nimport { h } from \"../../reactDeps.ts\";\n\nconst DeleteIcon = () => {\n return (\n \n \n \n \n );\n};\n\nexport default DeleteIcon;\n", "/** @jsx h */\nimport { h } from \"../../reactDeps.ts\";\n\nexport default function DownIcon() {\n return (\n \n \n \n \n );\n}\n", "/** @jsx h */\nimport { h } from \"../../reactDeps.ts\";\n\nexport default function HelpIcon() {\n return (\n \n \n\n \n \n );\n}\n", "/** @jsx h */\nimport { h } from \"../../reactDeps.ts\";\n\nexport default function ImportIcon() {\n return (\n \n \n\n \n \n );\n}\n", "/** @jsx h */\nimport { h } from \"../../reactDeps.ts\";\n\nexport default function RunIcon() {\n return (\n \n \n \n \n \n );\n}\n", "/** @jsx h */\nimport { h } from \"../../reactDeps.ts\";\n\nexport default function UpIcon() {\n return (\n \n \n \n \n );\n}\n", "export enum ClassNames {\n string = \"cute-string\",\n undefined = \"cute-undefined\",\n function = \"cute-function\",\n number = \"cute-number\",\n boolean = \"cute-boolean\",\n null = \"cute-null\",\n colon = \"cute-colon\",\n key = \"cute-key\",\n}\n\nexport const pre = {\n fontFamily: '-apple-system, BlinkMacSystemFont, \"Segoe UI\", Helvetica, Arial',\n // fontSize: 15,\n // lineHeight: \"20px\",\n display: \"inline-block\",\n borderRadius: 3,\n padding: \"10px 10px\",\n // background: \"#272822\",\n color: \"#f8f8f2\",\n textShadow: \"1px 1px black\",\n // overflow: \"auto\",\n whiteSpace: \"pre-wrap\",\n // margin:'0'\n // width:'100%',\n};\n", "import { ClassNames } from \"./styles.ts\";\n\nconst regEx =\n /(\"(\\\\u[a-zA-Z0-9]{4}|\\\\[^u]|[^\\\\\"])*\"(\\s*:)?|\\b(true|false|null)\\b|-?\\d+(?:\\.\\d*)?(?:[eE][+\\-]?\\d+)?)/g;\nconst syntaxHighlight = (json: Object): string => {\n const jsonString = JSON.stringify(json, replacer, 2)\n .replace(/&/g, \"&\")\n .replace(//g, \">\");\n\n return jsonString.replace(regEx, (match) => {\n let className = ClassNames.number;\n let text = match;\n\n if (/^\"/.test(match)) {\n if (/:$/.test(match)) {\n className = ClassNames.key;\n text = text.replace(\":\", `:`);\n } else {\n if (match === \"\\\"undefined\\\"\") {\n className = ClassNames.undefined;\n } else if (match === \"\\\"[Function]\\\"\") {\n className = ClassNames.function;\n } else {\n className = ClassNames.string;\n }\n }\n } else if (/true|false/.test(match)) {\n className = ClassNames.boolean;\n } else if (/null/.test(match)) {\n className = ClassNames.null;\n }\n\n return `${text}`;\n });\n};\n\nconst replacer = (_: string, value: any) => {\n if (typeof value === \"function\") {\n return \"[Function]\";\n }\n\n if (typeof value === \"undefined\") {\n return \"undefined\";\n }\n\n return value;\n};\n\nexport const cutify = (json: Object): string => {\n return syntaxHighlight(json)\n .replace(/\"/g, \"\");\n};\n", "/** @jsx h */\nimport { Fragment, FunctionalComponent, h } from \"../reactDeps.ts\";\nimport { cutify } from \"./cutify.ts\";\nimport * as styles from \"./styles.ts\";\n\ninterface JSONViewerProps {\n jsonData: any;\n}\n\nexport const JSONViewer: FunctionalComponent = ({\n jsonData,\n}) => {\n const cutifiedJson = cutify(jsonData);\n return (\n \n \n \n );\n};\n", "/** @jsx h */\nimport { h } from \"../../reactDeps.ts\";\n\nexport default function InfoIcon() {\n return (\n // \n // \n // \n // \n // {\" \"}\n // \n // {\" \"}\n // \n // {\" \"}\n // {\" \"}\n // {\" \"}\n // {\" \"}\n // \n // {\" \"}\n // \n // {\" \"}\n // {\" \"}\n // {\" \"}\n // {\" \"}\n // \n // {\" \"}\n // \n // {\" \"}\n // {\" \"}\n // {\" \"}\n // {\" \"}\n // \n // \n \n \n \n \n {\" \"}\n \n {\" \"}\n \n {\" \"}\n {\" \"}\n {\" \"}\n {\" \"}\n {\" \"}\n {\" \"}\n {\" \"}\n {\" \"}\n {\" \"}\n {\" \"}\n {\" \"}\n {\" \"}\n {\" \"}\n {\" \"}\n {\" \"}\n {\" \"}\n {\" \"}\n {\" \"}\n {\" \"}\n {\" \"}\n {\" \"}\n {\" \"}\n \n \n );\n}\n", "/** @jsx h */\nimport { StateUpdater, h, useState } from \"../reactDeps.ts\";\nimport { TResults } from \"./E2E.tsx\";\nimport { JSONViewer } from \"./JSONVeiwer.tsx\";\nimport InfoIcon from \"./icon/InfoIcon.tsx\";\n\nexport const ResultSlider = ({\n results,\n setIsShowE2eResponse,\n}: {\n results: TResults[];\n setIsShowE2eResponse: StateUpdater;\n}) => {\n const [show, setShow] = useState(0);\n // const slice = () => {\n // const showSlice = results.slice(show, show + 5);\n // showSlice.map((result, index,arr) => {\n // const showslice = arr.slice(show,show + 5)\n // setShow(show)}>{index + 1}\n // })\n // };\n return (\n \n {/*
\n {\n setShow(show === results.length - 1 ? 0 : show + 1);\n }}\n >\n +\n \n {\n setShow(show === 0 ? results.length - 1 : show - 1);\n }}\n >\n -\n \n {\n setShow(0);\n }}\n >\n first\n \n {\n setShow(results.length - 1);\n }}\n >\n last\n \n
*/}\n
\n
\n setIsShowE2eResponse(true)}\n >\n \n \n REQUEST\n
\n \n \n {results.map((_re, index) => (\n setShow(index)}\n data-show={show === index}\n >\n {index + 1}\n \n ))}\n {/* {slice()} */}\n \n
\n
\n
\n RESPONSE\n \n {results[show].responseTime}ms\n \n
\n\n \n
\n \n );\n};\n", "/** @jsx h */\nimport { Fragment, h, useState } from \"../reactDeps.ts\";\nimport { TReqDetails, TSequenceDetail } from \"./E2E.tsx\";\nimport { JSONViewer } from \"./JSONVeiwer.tsx\";\nimport { ResultSlider } from \"./ResultSlider.tsx\";\nimport InfoIcon from \"./icon/InfoIcon.tsx\";\n\nexport function SequenceSlider({ sequence }: { sequence: TSequenceDetail }) {\n const [isShowE2eResponse, setIsShowE2eResponse] = useState(true);\n\n return (\n
\n {isShowE2eResponse ? (\n \n
\n
\n setIsShowE2eResponse(false)}\n >\n \n \n Body Header\n
\n \n
\n
\n
\n Description\n
\n
\n

\n you send {sequence.repeat} times of this request\n

\n

\n the avrage time for each request is\n {sequence.time / sequence.repeat}ms\n

\n

\n and whole time is\n {sequence.time}ms\n

\n

\n this sequence sends\n {sequence.success} success request and{\" \"}\n {sequence.fails} it be fails\n

\n {/* {sequence.captures.length && (\n

\n you capture theese in this sequence :\n {sequence.captures.map((capture) => (\n

\n `{capture.value} as \n {capture.key} with value of \n
\n ))}\n

\n )} */}\n
\n
\n
\n ) : (\n \n )}\n
\n );\n}\n", "/** @jsx h */\nimport { Fragment, h, useState, useEffect } from \"../reactDeps.ts\";\nimport { uid } from \"../utils/uid.ts\";\nimport { TRequest } from \"./context/actionType.ts\";\nimport { e2eFirstInp } from \"./context/initials.ts\";\nimport { Help } from \"./Help.tsx\";\nimport AddIcon from \"./icon/AddIcon.tsx\";\nimport BackIcon from \"./icon/BackIcon.tsx\";\nimport DeleteIcon from \"./icon/deleteIcon.tsx\";\nimport DownIcon from \"./icon/DownIcon.tsx\";\nimport ExportIcon from \"./icon/ExportIcon.tsx\";\nimport HelpIcon from \"./icon/HelpIcon.tsx\";\nimport Hide from \"./icon/Hide.tsx\";\nimport ImportIcon from \"./icon/ImportIcon.tsx\";\nimport RunIcon from \"./icon/RunIcon.tsx\";\nimport { Show } from \"./icon/Show.tsx\";\nimport UpIcon from \"./icon/UpIcon.tsx\";\nimport { JSONViewer } from \"./JSONVeiwer.tsx\";\nimport { useLesan } from \"./ManagedLesanContext.tsx\";\nimport InfoIcon from \"./icon/InfoIcon.tsx\";\nimport { SequenceSlider } from \"./SequenceSlider.tsx\";\nimport { ResultSlider } from \"./ResultSlider.tsx\";\nimport { useNonInitialEffect } from \"./hooks/useNonInitialEffect.ts\";\nimport { number } from \"../../../npmDeps.ts\";\n\nexport type TResults = {\n id: string;\n request: Record;\n response: Record;\n responseTime: number;\n};\n\nexport type TSequenceDetail = {\n id: string;\n bodyHeader: string;\n time: number;\n repeat: number;\n success: number;\n fails: number;\n // captures: { key: string; value: string; captured: any }[];\n results: TResults[];\n};\n\nexport type TReqDetails = {\n allReqPerformance: number;\n numberRequest: number;\n success: number;\n fails: number;\n sequenceDetail: TSequenceDetail[];\n};\n\nexport function E2E({ baseUrl }: { baseUrl: string; bodyHeaders?: string }) {\n const notSorted: number[] = [];\n const [sorted, setSorted] = useState([]);\n\n useEffect(() => {\n setSorted(notSorted);\n }, [notSorted]);\n const { e2eForms, setE2eForms } = useLesan();\n\n const initialRequestDetail = {\n allReqPerformance: 0,\n numberRequest: 0,\n success: 0,\n fails: 0,\n sequenceDetail: [],\n };\n\n const [isShowE2eResponse, setIsShowE2eResponse] = useState(true);\n const [isShowE2eButton, setIsShowE2eButton] = useState(false);\n const [requestDetail, setRequestDetail] =\n useState(initialRequestDetail);\n\n const handleMove = (fromIndex: any, toIndex: any) => {\n if (fromIndex === 0 && toIndex <= 0) {\n return;\n } else {\n const element = e2eForms[fromIndex];\n e2eForms.splice(fromIndex, 1);\n e2eForms.splice(toIndex, 0, element);\n setE2eForms([...e2eForms]);\n }\n };\n\n const handleDelete = (fromIndex: any) => {\n e2eForms[fromIndex];\n e2eForms.splice(fromIndex, 1);\n setE2eForms([...e2eForms]);\n };\n\n const [view, setView] = useState<\"help\" | \"e2e\" | \"result\">(\"e2e\");\n\n const exportForm = () => {\n const jsonString = `data:text/json;chatset=utf-8,${encodeURIComponent(\n JSON.stringify(e2eForms)\n )}`;\n const link = document.createElement(\"a\");\n link.href = jsonString;\n link.download = \"Configdata.json\";\n\n link.click();\n };\n\n const jsonFileUpload = (e: any) => {\n const fileReader = new FileReader();\n fileReader.readAsText(e.target.files[0], \"UTF-8\");\n fileReader.onload = (e) => {\n const data = JSON.parse(e.target!.result as string);\n setE2eForms(data);\n };\n };\n\n const exportResults = () => {\n const jsonString = `data:text/json;chatset=utf-8,${encodeURIComponent(\n JSON.stringify(requestDetail)\n )}`;\n const link = document.createElement(\"a\");\n link.href = jsonString;\n link.download = \"data.json\";\n\n link.click();\n };\n\n const lesanAPI = async ({\n baseUrl,\n options,\n }: {\n baseUrl: string;\n options: TRequest;\n }) => {\n const fetching = await fetch(`${baseUrl}lesan`, options);\n return await fetching.json();\n };\n\n const replaceCaptureString = (\n obj: Record,\n variablesSet: Set\n ) => {\n for (const key in obj) {\n if (typeof obj[key] === \"object\") {\n replaceCaptureString(obj[key], variablesSet);\n }\n\n const value = obj[key];\n\n if (typeof value === \"string\" && value.includes(\"{\")) {\n const openBraceIndexes: number[] = [];\n for (let index = 0; index < value.length; index++) {\n if (value[index] === \"{\") {\n openBraceIndexes.push(index);\n }\n }\n\n const closeBraceIndexes: number[] = [];\n for (let index = 0; index < value.length; index++) {\n if (value[index] === \"}\") {\n closeBraceIndexes.push(index);\n }\n }\n\n const variablesName = openBraceIndexes.map((openBrace, index) => {\n return value.slice(openBrace + 1, closeBraceIndexes[index]);\n });\n\n variablesName.forEach((variableName) => {\n for (const setValue of variablesSet) {\n if (setValue.key === variableName) {\n obj[key] = obj[key].replace(`{${variableName}}`, setValue.value);\n }\n }\n });\n }\n }\n };\n\n const runE2eTest = async () => {\n const parsedCaptures = new Set();\n\n const requestDetail: TReqDetails = {\n allReqPerformance: 0,\n numberRequest: 0,\n success: 0,\n fails: 0,\n sequenceDetail: [],\n };\n const allReqPerformance0 = performance.now();\n\n for await (const e2eForm of e2eForms) {\n const parsedHeaderBody = JSON.parse(e2eForm.bodyHeaders);\n\n replaceCaptureString(parsedHeaderBody, parsedCaptures);\n\n const body: TRequest = {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...parsedHeaderBody.headers,\n },\n body: JSON.stringify(parsedHeaderBody.body),\n };\n\n let jsonSendedRequest: any;\n\n const sequenceTime0 = performance.now();\n\n const sequenceDetail: TSequenceDetail = {\n id: uid(),\n bodyHeader: e2eForm.bodyHeaders,\n time: 0,\n repeat: 0,\n success: 0,\n fails: 0,\n results: [],\n };\n for (let repeat = 0; repeat < e2eForm.repeat; repeat++) {\n const tResTime0 = performance.now();\n jsonSendedRequest = await lesanAPI({\n baseUrl: baseUrl,\n options: body,\n });\n const tResTime1 = performance.now();\n sequenceDetail.repeat = sequenceDetail.repeat + 1;\n requestDetail.numberRequest = requestDetail.numberRequest + 1;\n\n if (jsonSendedRequest.success) {\n sequenceDetail.success = sequenceDetail.success + 1;\n requestDetail.success = requestDetail.success + 1;\n } else {\n sequenceDetail.fails = sequenceDetail.fails + 1;\n requestDetail.fails = requestDetail.fails + 1;\n }\n\n sequenceDetail.results.push({\n id: uid(),\n request: { ...body, body: parsedHeaderBody.body },\n response: jsonSendedRequest,\n responseTime: tResTime1 - tResTime0,\n });\n }\n sequenceDetail.time = performance.now() - sequenceTime0;\n\n const captures = [...e2eForm.captures].filter(\n (capture) => capture.key && capture.value\n );\n\n const parsedCapuresValue = captures.map((capture) => {\n const parts = capture.value.split(\"[\");\n const value: (string | number)[] = [];\n\n parts.forEach((part: any) => {\n let slicedPart: string | number = part.slice(0, part.indexOf(\"]\"));\n if (!isNaN(Number(slicedPart))) {\n slicedPart = Number(slicedPart);\n }\n value.push(slicedPart);\n });\n value.shift();\n return { key: capture.key, value };\n });\n // let getedValues: any;\n parsedCapuresValue.forEach((capture) => {\n if (capture.value.length > 0) {\n let getedValue: any = jsonSendedRequest;\n capture.value.forEach((capValue) => {\n getedValue = getedValue[capValue];\n });\n parsedCaptures.add({ key: capture.key, value: getedValue });\n // getedValues = [...getedValue, ...e2eForm.captures];\n }\n });\n\n requestDetail.sequenceDetail.push(sequenceDetail);\n }\n\n const allReqPerformance1 = performance.now();\n setRequestDetail({\n ...requestDetail,\n allReqPerformance: allReqPerformance1 - allReqPerformance0,\n });\n console.log(requestDetail);\n };\n\n // plus repeat\n const plusRepeatHandler = (index: number) => {\n const copy = [...e2eForms];\n copy[index].repeat += 1;\n setE2eForms([...copy]);\n };\n\n // mines repeat\n const minesRepeatHandler = (index: number) => {\n const copy = [...e2eForms];\n if (copy[index].repeat > 0) {\n copy[index].repeat -= 1;\n }\n setE2eForms([...copy]);\n };\n\n return (\n
\n {view === \"result\" ? (\n \n
\n
\n {\n setRequestDetail(initialRequestDetail);\n setView(\"e2e\");\n }}\n >\n \n Back\n \n \n \n Export\n \n
\n {/* setIsShowE2eResponse(!isShowE2eResponse)}\n >\n REQUESTS\n \n {isShowE2eResponse ? : }\n \n
*/}\n
\n \n \n All Request Count: {requestDetail.numberRequest}\n \n {\" \"}\n All Request Time: {requestDetail.allReqPerformance}ms\n \n \n \n All Success Request: {requestDetail.success}\n All Fails Request : {requestDetail.fails} \n \n \n Best Request Time: {sorted[0]}ms\n worst Request Time : {sorted[sorted.length - 1]}ms\n \n \n\n
\n {requestDetail.sequenceDetail.map((sequence) => {\n notSorted.push(sequence.time);\n notSorted.sort(function (a, b) {\n return a - b;\n });\n return (\n
\n \n
\n );\n })}\n
\n \n ) : view === \"e2e\" ? (\n \n
\n {e2eForms.map((e2eForm, idx) => (\n \n
\n {e2eForms.length > 1 && (\n
\n handleMove(idx, idx - 1)}\n >\n \n
\n handleMove(idx, idx + 1)}\n >\n \n
\n handleDelete(idx)}\n >\n \n
\n \n )}\n
\n
\n set test body and headers\n
\n {\n const copy = [...e2eForms];\n copy[idx].bodyHeaders = e.target.value;\n setE2eForms([...copy]);\n }}\n />\n
\n
\n
\n set repeat time\n
\n
\n {\n const copy = [...e2eForms];\n copy[idx].repeat = e.target.value;\n setE2eForms([...copy]);\n }}\n />\n plusRepeatHandler(idx)}\n >\n +\n \n minesRepeatHandler(idx)}\n >\n -\n \n
\n
\n capture variables\n
\n {\n const copy = [...e2eForms];\n copy[idx].captures.push({ key: \"\", value: \"\" });\n setE2eForms([...copy]);\n }}\n >\n add capture\n \n\n {e2eForm.captures.map((capture, capId) => (\n \n
\n {\n const copy = [...e2eForms];\n copy[idx].captures[capId].key = e.target.value;\n setE2eForms([...copy]);\n }}\n />\n {\n const copy = [...e2eForms];\n copy[idx].captures[capId].value = e.target.value;\n setE2eForms([...copy]);\n }}\n />\n
\n
\n
\n ))}\n
\n \n
\n ))}\n \n setIsShowE2eButton(!isShowE2eButton)}\n >\n show btn\n \n
\n {\n setE2eForms([...e2eForms, e2eFirstInp()]);\n }}\n >\n \n Add\n \n {\n setView(\"result\");\n await runE2eTest();\n }}\n >\n \n Run E2E Test\n \n
\n \n ) : view === \"help\" ? (\n \n ) : (\n \"\"\n )}\n \n );\n}\n", "/** @jsx h */\n\nexport function ConvertMilliseconds(milliseconds: number) {\n const hours = Math.floor(milliseconds / 3600000);\n const minutes = Math.floor((milliseconds % 3600000) / 60000);\n const seconds = Math.floor(((milliseconds % 360000) % 60000) / 1000);\n\n return hours > 0\n ? `${hours}h ${minutes}m ${seconds}s`\n : minutes > 0\n ? `${minutes}m ${seconds}s`\n : seconds > 0\n ? `${seconds}s`\n : `${milliseconds}ms`;\n}\n", "/** @jsx h */\nimport { useEffect, EffectCallback, useRef } from \"../../reactDeps.ts\";\n\ntype useNonInitialEffectReturn = void | (() => void | undefined);\n\nexport const useNonInitialEffect = (\n effect: EffectCallback,\n deps?: any\n): useNonInitialEffectReturn => {\n const initialRender = useRef(true);\n\n useEffect(() => {\n let effectReturns: any = () => {\n /* Empty Return fallback */\n };\n\n if (initialRender.current) {\n initialRender.current = false;\n } else {\n effectReturns = effect();\n }\n\n if (effectReturns && typeof effectReturns === \"function\") {\n return effectReturns;\n }\n }, deps);\n};\n", "/** @jsx h */\nimport { h } from \"../../reactDeps.ts\";\n\nexport default function Dustbin() {\n return (\n \n \n \n );\n}\n", "/** @jsx h */\nimport { Fragment, h, useEffect, useState, useRef } from \"../reactDeps.ts\";\nimport { ConvertMilliseconds } from \"../utils/convertMilliseconds.ts\";\nimport { useNonInitialEffect } from \"./hooks/useNonInitialEffect.ts\";\nimport DeleteIcon from \"./icon/deleteIcon.tsx\";\nimport DustbinIcon from \"./icon/DustbinIcon.tsx\";\nimport { JSONViewer } from \"./JSONVeiwer.tsx\";\nimport { useLesan } from \"./ManagedLesanContext.tsx\";\nexport function History({\n setFormFromHistory,\n}: // ,localHistory\n{\n setFormFromHistory: (form: any) => void;\n // localHistory:any\n}) {\n const { history, setHistory, deleteItemHistory } = useLesan();\n const [show, setShow] = useState(\"\");\n\n useNonInitialEffect(() => {\n localStorage.setItem(\"localHistory\", JSON.stringify(history));\n }, [history]);\n\n return (\n \n {history && history?.length > 0 ? (\n
\n
\n {history.map((hi, index) => (\n
\n
\n \n REQUEST\n {hi.reqDate}\n
\n
\n
\n {\" \"}\n \n |\n
\n \n
\n
\n {show === hi.id ? (\n setShow(\"\")}\n className=\"history-re-detail-button\"\n >\n Hide\n \n –\n \n \n ) : (\n {\n setShow(hi.id);\n document.getElementById(hi.id)?.scrollIntoView();\n }}\n className=\"history-re-detail-button\"\n >\n Show{\" \"}\n \n +\n \n \n )}\n
\n \n {\" \"}\n \n
\n \n
\n \n {\n event.stopPropagation();\n deleteItemHistory(index);\n }}\n >\n \n \n \n RESPONSE\n \n \n {ConvertMilliseconds(hi.response.tookTime)}\n \n \n
\n
\n
\n {\" \"}\n \n success:\n \n
\n \n
\n
\n
\n setFormFromHistory(hi.request)}\n className=\"history-re-detail-button\"\n >\n Use{\" \"}\n \n ➜{\" \"}\n \n \n
\n \n {\" \"}\n \n \n
\n \n ))}\n \n ) : (\n \"There is no history to display\"\n )}\n {history && history.length > 0 ? (\n
\n {\n if (confirm(\"Clear All History?\") == true) {\n setHistory([]);\n }\n }}\n >\n \n Clear History\n \n
\n ) : (\n \"\"\n )}\n
\n );\n}\n", "/** @jsx h */\nimport { h } from \"../../reactDeps.ts\";\n\nexport default function DocumentIcon() {\n return (\n \n \n \n \n \n {\" \"}\n \n {\" \"}\n \n {\" \"}\n \n {\" \"}\n \n \n {\" \"}\n \n \n );\n}\n", "/** @jsx h */\nimport { h } from \"../../reactDeps.ts\";\n\nexport default function HistoryIcon() {\n return (\n \n \n \n \n );\n}\n", "/** @jsx h */\nimport { h } from \"../../reactDeps.ts\";\n\nexport default function ReFetchIcon() {\n return (\n \n \n \n \n {\" \"}\n {\" \"}\n {\" \"}\n \n \n );\n}\n", "/** @jsx h */\nimport { h } from \"../../reactDeps.ts\";\n\nexport default function SchemaIcon() {\n return (\n \n \n \n \n {\" \"}\n \n {\" \"}\n {\" \"}\n {\" \"}\n {\" \"}\n {\" \"}\n {\" \"}\n {\" \"}\n {\" \"}\n \n \n );\n}\n", "/** @jsx h */\nimport { h } from \"../../reactDeps.ts\";\n\nexport default function SettingIcon() {\n return (\n \n \n \n \n );\n}\n", "/** @jsx h */\nimport { h } from \"../../reactDeps.ts\";\n\nexport default function TestIcon() {\n return (\n \n \n \n \n \n );\n}\n", "/** @jsx h */\nimport { h } from \"../../reactDeps.ts\";\n\nexport default function CopyIcon() {\n return (\n \n \n \n \n \n // \n // \n // \n );\n}\n", "/** @jsx h */\nimport { h } from \"../../reactDeps.ts\";\n\nexport default function RunTestIcon() {\n return (\n \n \n \n \n {\" \"}\n \n {\" \"}\n {\" \"}\n {\" \"}\n \n \n );\n}\n", "/** @jsx h */\nimport { h } from \"../../reactDeps.ts\";\n\nexport default function SuccessIcon() {\n return (\n \n \n \n );\n}\n", "/** @jsx h */\nimport { Ref, useEffect, useRef } from \"../../reactDeps.ts\";\n\nexport function useOutsideClick(callback: any) {\n const ref = useRef(null);\n\n useEffect(() => {\n const handleClick = (event: any) => {\n if (ref.current && !ref.current.contains(event?.target)) {\n callback();\n }\n };\n\n document.addEventListener(\"click\", handleClick);\n\n return () => {\n document.removeEventListener(\"click\", handleClick);\n };\n }, [ref]);\n\n return ref;\n}\n", "/** @jsx h */\nimport { h } from \"../../reactDeps.ts\";\n\nexport default function ChevronDownIcon({\n className = \"\",\n}: {\n className?: string;\n}) {\n return (\n \n \n \n \n {\" \"}\n {\" \"}\n \n \n );\n}\n", "/** @jsx h */\nimport { h, useState, useEffect, Ref } from \"../reactDeps.ts\";\nimport { useOutsideClick } from \"./hooks/useOutsideClick.ts\";\nimport ChevronDownIcon from \"./icon/ChevronDownIcon.tsx\";\n\nexport function Selected({\n items,\n onClickItem,\n incomeActiveItem,\n canShow,\n}: {\n items: string[];\n onClickItem: (item: string) => void;\n incomeActiveItem?: string | null;\n canShow?: boolean;\n}) {\n const [show, setShow] = useState(false);\n const [activeItem, setActiveItem] = useState(\"\");\n\n useEffect(() => {\n setActiveItem(incomeActiveItem || \"\");\n }, [incomeActiveItem]);\n\n const handleClickOutside = () => {\n setShow(false);\n };\n\n const ref = useOutsideClick(handleClickOutside);\n\n return (\n
\n
\n setShow(!show)}\n >\n
\n {\" \"}\n {\n setActiveItem(\"\");\n onClickItem(\"\");\n setShow(false);\n e.stopPropagation();\n }}\n >\n x\n \n {activeItem}\n
\n\n \n
\n\n {show && (\n
\n {items?.map((item, index) => (\n {\n setActiveItem(item);\n onClickItem(item);\n setShow(false);\n }}\n >\n {item}\n
\n ))}\n
\n )}\n \n \n );\n}\n", "/** @jsx h */\nimport { h, FunctionalComponent, useState } from \"../reactDeps.ts\";\nimport ChevronDownIcon from \"./icon/ChevronDownIcon.tsx\";\nimport { useOutsideClick } from \"./hooks/useOutsideClick.ts\";\n\nexport interface IOption {\n value: string;\n label: string;\n}\n\ninterface MultiSelectProps {\n options: IOption[];\n onChange: (options: IOption[]) => void;\n}\n\nconst MultiSelect: FunctionalComponent = ({\n options,\n onChange,\n}) => {\n const [selectedOptions, setSelectedOptions] = useState([]);\n const [unselectedOptions, setUnselectedOptions] =\n useState(options);\n const [isOpen, setIsOpen] = useState(false);\n\n const handleOptionChange = (selectedOption: IOption) => {\n if (selectedOptions.includes(selectedOption)) {\n const filteredSelectedOptions = selectedOptions.filter(\n (option) => option.value !== selectedOption.value\n );\n setSelectedOptions(filteredSelectedOptions);\n setUnselectedOptions([...unselectedOptions, selectedOption]);\n onChange(filteredSelectedOptions);\n } else {\n const filteredUnselectedOptions = unselectedOptions.filter(\n (option) => option.value !== selectedOption.value\n );\n setSelectedOptions([...selectedOptions, selectedOption]);\n setUnselectedOptions(filteredUnselectedOptions);\n onChange([...selectedOptions, selectedOption]);\n }\n };\n\n const resetOptions = () => {\n setSelectedOptions([]);\n onChange([]);\n setUnselectedOptions(options);\n };\n\n const toggleDropdown = () => {\n setIsOpen(!isOpen);\n };\n\n const ref = useOutsideClick(() => {\n setIsOpen(false);\n });\n\n return (\n
\n
\n
\n {selectedOptions.map((item) => (\n
\n
\n {item.label}\n
\n {\n e.stopPropagation();\n handleOptionChange(item);\n }}\n >\n x\n
\n
\n ))}\n
\n
\n {selectedOptions.length ? (\n {\n e.stopPropagation();\n resetOptions();\n }}\n >\n x\n
\n ) : null}\n\n
\n \n
\n
\n \n {isOpen ? (\n
\n {unselectedOptions.length ? (\n unselectedOptions.map((option) => (\n {\n e.stopPropagation();\n handleOptionChange(option);\n }}\n className=\"multi-select__option\"\n >\n
{option.label}
\n
\n ))\n ) : (\n
No Options!
\n )}\n \n ) : null}\n \n );\n};\n\nexport default MultiSelect;\n", "/** @jsx h */\nimport { Fragment, h, useRef, useState } from \"../reactDeps.ts\";\nimport { createNestedObjectsFromKeys } from \"../utils/createNestedObjectsFromKeys.ts\";\nimport { uid } from \"../utils/uid.ts\";\nimport { E2eForm, MODAL_TYPES, TRequest } from \"./context/actionType.ts\";\nimport { ConvertMilliseconds } from \"../utils/convertMilliseconds.ts\";\nimport CopyIcon from \"./icon/CopyIcon.tsx\";\nimport RunTestIcon from \"./icon/RunTestIcon.tsx\";\nimport SuccessIcon from \"./icon/SuccessIcon.tsx\";\nimport { JSONViewer } from \"./JSONVeiwer.tsx\";\nimport { useLesan } from \"./ManagedLesanContext.tsx\";\nimport { Selected } from \"./Selected.tsx\";\nimport MultiSelect from \"./MultiSelect.tsx\";\n\nconst lesanAPI = ({\n baseUrl,\n options,\n}: {\n baseUrl: string;\n options: TRequest;\n}) => fetch(`${baseUrl}lesan`, options).then((res) => res.json());\n\nexport const Main = ({ urlAddress }: { urlAddress: string }) => {\n const {\n activeTab,\n tabsData,\n actsObj,\n headers,\n history,\n setService,\n setSchema,\n setAct,\n setPostFields,\n setGetFields,\n setFormData,\n setHistory,\n setResponse,\n resetGetFields,\n resetPostFields,\n addE2eForm,\n setModal,\n } = useLesan();\n\n const [active, setActive] = useState(false);\n\n const changeGetValue = (\n value: 0 | 1 | null,\n keyname: string,\n getObj: Record,\n returnObj: Record\n ) => {\n for (const key in getObj) {\n getObj[key].type === \"enums\"\n ? (returnObj[`${keyname}.${key}`] = value)\n : changeGetValue(\n value,\n `${keyname}.${key}`,\n getObj[key].schema,\n returnObj\n );\n }\n return returnObj;\n };\n\n const formRef = useRef(null);\n\n const handleChange = (event: any) => {\n const { name, value, type, alt } = event.target;\n let updatedValue: string | number | boolean | any[];\n\n if (type === \"number\") {\n updatedValue = Number(value);\n } else if (alt === \"array\" || alt === \"boolean\") {\n updatedValue = JSON.parse(value);\n } else {\n updatedValue = value;\n }\n\n setFormData({\n data: {\n ...tabsData[activeTab].formData,\n [name]: updatedValue,\n },\n index: activeTab,\n });\n };\n\n const renderPostFields = ({\n key,\n field,\n isMultiEnum = false,\n formData,\n }: {\n key: string;\n field: Record;\n isMultiEnum?: boolean;\n formData?: any;\n }): h.JSX.Element => {\n if (field.type === \"array\") {\n return renderPostFields({\n key,\n formData,\n field: field[\"schema\"],\n isMultiEnum: true,\n });\n } else if (field[\"type\"] === \"enums\" && isMultiEnum) {\n return (\n ({\n label: schemaKey,\n value: field[\"schema\"][schemaKey],\n }))}\n onChange={(options) => {\n const value = options.map((item) => item.value);\n setFormData({\n data: {\n ...formData,\n [`set.${key}`]: value,\n },\n index: activeTab,\n });\n localStorage.setItem(\"localTabsData\", JSON.stringify(tabsData));\n }}\n >\n );\n } else if (field[\"type\"] === \"enums\") {\n return (\n {\n setFormData({\n data: {\n ...formData,\n [`set.${key}`]: value,\n },\n index: activeTab,\n });\n localStorage.setItem(\"localTabsData\", JSON.stringify(tabsData));\n }}\n incomeActiveItem={formData[`set.${key}`]}\n items={Object.keys(field[\"schema\"])}\n />\n );\n } else {\n return (\n \n );\n }\n };\n\n const renderGetFields = ({\n getField,\n keyName,\n margin,\n }: {\n getField: any;\n keyName: string;\n margin: number;\n }) => (\n \n
{keyName}
\n {Object.keys(getField[\"schema\"]).map((item, index) =>\n getField[\"schema\"][item].type === \"enums\" ? (\n \n \n
\n {\n const copy = { ...tabsData[activeTab].formData };\n delete copy[`get.${keyName}.${item}`];\n setFormData({ data: copy, index: activeTab });\n }}\n >\n {\n setFormData({\n index: activeTab,\n data: {\n ...tabsData[activeTab].formData,\n [`get.${keyName}.${item}`]: 0,\n },\n });\n }}\n >\n 0\n \n {\n setFormData({\n data: {\n ...tabsData[activeTab].formData,\n [`get.${keyName}.${item}`]: 1,\n },\n index: activeTab,\n });\n }}\n >\n 1\n \n
\n \n ) : (\n renderGetFields({\n getField: getField[\"schema\"][item],\n keyName: `${keyName}.${item}`,\n margin: margin + 1,\n })\n )\n )}\n \n );\n\n const requestFunction = () => {\n const details = createNestedObjectsFromKeys(tabsData[activeTab].formData);\n\n const body: TRequest = {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...headers,\n },\n body: JSON.stringify({\n service: tabsData[activeTab].service,\n model: tabsData[activeTab].schema,\n act: tabsData[activeTab].act,\n details,\n }),\n };\n return { body };\n };\n\n const handleSubmit = async (event: any) => {\n event.preventDefault();\n const sendRequest = new Date().toLocaleDateString();\n\n setActive(true);\n\n setTimeout(() => {\n setActive(false);\n }, 450);\n\n const t0 = performance.now();\n const jsonSendedRequest = await lesanAPI({\n baseUrl: urlAddress,\n options: requestFunction().body,\n });\n const t1 = performance.now();\n const tookTime = (t1 - t0).toFixed(1);\n\n /* event.target.reset(); */\n /* setFormData({}); */\n\n setResponse({ data: { ...jsonSendedRequest, tookTime }, index: activeTab });\n\n const newHistory = [\n {\n request: {\n ...requestFunction().body,\n body: JSON.parse(requestFunction().body.body),\n },\n response: { ...jsonSendedRequest, tookTime },\n id: uid(),\n reqDate: sendRequest,\n },\n ...history,\n ];\n setHistory(newHistory);\n localStorage.setItem(\"localHistory\", JSON.stringify(newHistory));\n\n localStorage.setItem(\"localTabsData\", JSON.stringify(tabsData));\n };\n\n const canShowRequestFields =\n tabsData[activeTab].service &&\n tabsData[activeTab].schema &&\n tabsData[activeTab].postFields &&\n tabsData[activeTab].getFields &&\n tabsData[activeTab].act;\n\n const canShowSchema = tabsData[activeTab].service;\n\n const canShowAct = tabsData[activeTab].service && tabsData[activeTab].schema;\n\n const copyResponse = () => {\n const response = JSON.stringify(tabsData[activeTab].response);\n navigator.clipboard.writeText(response);\n };\n\n const copyRequest = () => {\n const request: any = requestFunction();\n console.log(request);\n request.body.body = JSON.parse(request.body.body);\n navigator.clipboard.writeText(JSON.stringify(request));\n };\n\n const runE2eRequest = () => {\n const request: any = requestFunction();\n request.body.body = JSON.parse(request.body.body);\n const { method, ...rest } = request.body;\n const newE2eForm: E2eForm = {\n id: uid(),\n bodyHeaders: JSON.stringify({ ...rest }, null, 2),\n repeat: 1,\n captures: [],\n };\n addE2eForm(newE2eForm);\n setModal(MODAL_TYPES.E2E_TEST);\n };\n\n const onClickItem = (\n item: string,\n type: \"service\" | \"method\" | \"schema\" | \"action\"\n ) => {\n if (type === \"service\") {\n setService({\n data: item,\n index: activeTab,\n });\n setSchema({ data: \"\", index: activeTab });\n }\n if (type === \"method\") {\n setSchema({ data: \"\", index: activeTab });\n }\n if (type === \"schema\") {\n setSchema({ data: item, index: activeTab });\n }\n setAct({ data: \"\", index: activeTab });\n resetGetFields(activeTab);\n resetPostFields(activeTab);\n\n if (type === \"action\") {\n const actObj = (actsObj as any)[tabsData[activeTab].service][\n tabsData[activeTab].schema\n ][item][\"validator\"][\"schema\"];\n\n formRef && formRef.current && formRef.current.reset();\n setAct({ data: item, index: activeTab });\n setGetFields({\n data: actObj[\"get\"][\"schema\"],\n index: activeTab,\n });\n setPostFields({\n data: actObj[\"set\"][\"schema\"],\n index: activeTab,\n });\n }\n\n setFormData({ data: {}, index: activeTab });\n localStorage.setItem(\"localTabsData\", JSON.stringify(tabsData));\n };\n\n return (\n \n
\n
\n
\n
select services
\n onClickItem(item, \"service\")}\n items={Object.keys(actsObj)}\n incomeActiveItem={\n tabsData[activeTab].service ? tabsData[activeTab].service : null\n }\n />\n
\n\n
\n console.log(canShowSchema)}\n className=\"sidebar__section-heading\"\n >\n select schema\n
\n onClickItem(item, \"schema\")}\n items={\n canShowSchema\n ? Object.keys((actsObj as any)[tabsData[activeTab].service])\n : []\n }\n incomeActiveItem={\n tabsData[activeTab].schema ? tabsData[activeTab].schema : null\n }\n />\n
\n\n
\n
select action
\n onClickItem(item, \"action\")}\n items={\n canShowAct\n ? Object.keys(\n (actsObj as any)[tabsData[activeTab].service][\n tabsData[activeTab].schema\n ]\n )\n : []\n }\n incomeActiveItem={\n tabsData[activeTab].act ? tabsData[activeTab].act : null\n }\n />\n
\n
\n \n\n {canShowRequestFields && (\n
\n
\n
\n SET fields\n
\n {Object.keys(tabsData[activeTab].postFields).map((item) => (\n
\n \n {renderPostFields({\n key: item,\n field: tabsData[activeTab].postFields[item],\n formData: tabsData[activeTab].formData,\n })}\n
\n ))}\n
\n GET fields\n
\n\n
\n \n
\n {\n const copy = changeGetValue(\n null,\n \"get\",\n tabsData[activeTab].getFields,\n {}\n );\n\n setFormData({\n data: { ...tabsData[activeTab].formData, ...copy },\n index: activeTab,\n });\n }}\n >\n {\n const copy = changeGetValue(\n 0,\n \"get\",\n tabsData[activeTab].getFields,\n {}\n );\n setFormData({\n data: {\n ...tabsData[activeTab].formData,\n ...copy,\n },\n index: activeTab,\n });\n }}\n >\n 0\n \n {\n const copy = changeGetValue(\n 1,\n \"get\",\n tabsData[activeTab].getFields,\n {}\n );\n setFormData({\n data: {\n ...tabsData[activeTab].formData,\n ...copy,\n },\n index: activeTab,\n });\n }}\n >\n 1\n \n
\n
\n\n {Object.keys(tabsData[activeTab].getFields).map((item) =>\n tabsData[activeTab].getFields[item].type === \"enums\" ? (\n \n \n
\n {\n setFormData({\n data: {\n ...tabsData[activeTab].formData,\n [`get.${item}`]: null,\n },\n index: activeTab,\n });\n }}\n >\n {\n setFormData({\n data: {\n ...tabsData[activeTab].formData,\n [`get.${item}`]: 0,\n },\n index: activeTab,\n });\n }}\n >\n 0\n \n {\n setFormData({\n data: {\n ...tabsData[activeTab].formData,\n [`get.${item}`]: 1,\n },\n index: activeTab,\n });\n }}\n >\n 1\n \n
\n
\n ) : (\n renderGetFields({\n getField: tabsData[activeTab].getFields[item],\n keyName: item,\n margin: 0,\n })\n )\n )}\n
\n \n
\n \n \n )}\n\n
\n {tabsData[activeTab].response && (\n
\n
\n

Response

\n
\n copyRequest()}\n >\n \n Copy Request\n
\n {\n copyResponse();\n }}\n >\n \n Copy Response\n
\n {\n runE2eRequest();\n }}\n >\n \n Run E2E Test\n
\n
\n \n
\n
\n {\" \"}\n \n
\n\n \n took:\n {ConvertMilliseconds(tabsData[activeTab].response?.tookTime!)}\n \n {tabsData[activeTab].response &&\n tabsData[activeTab].response?.success === true ? (\n
\n ) : (\n
\n )}\n
\n \n )}\n \n
\n );\n};\n", "/** @jsx h */\nimport { h } from \"../../reactDeps.ts\";\n\nconst FullScreenExit = () => {\n return (\n \n \n \n \n );\n};\n\nexport default FullScreenExit", "/** @jsx h */\nimport { h } from \"../../reactDeps.ts\";\n\nconst FullScreen = () => {\n return (\n \n \n \n \n );\n};\n\nexport default FullScreen;\n", "/** @jsx h */\nimport { h } from \"../../reactDeps.ts\";\n\nexport default function Up2Icon() {\n return (\n \n \n \n \n
\n
\n \n \n );\n}\n", "/** @jsx h */\nimport { h, useState, useRef } from \"../reactDeps.ts\";\nimport FullScreenExit from \"./icon/Fullscreen-exit.tsx\";\nimport FullScreen from \"./icon/Fullscreen.tsx\";\nimport Up2Icon from \"./icon/Up2Icon.tsx\";\nimport DeleteIcon from \"./icon/deleteIcon.tsx\";\n\ninterface ModalType {\n children?: h.JSX.Element;\n toggle: () => void;\n title: string;\n}\n\nconst Modal = (props: ModalType) => {\n const [showBtn, setShowBtn] = useState(\"myBtn none\");\n const [toggleFullScreen, setToggleFullScreen] = useState(false);\n\n const divRef = useRef(null);\n\n const scrollToTop = () => {\n divRef.current!.scroll;\n document.getElementById(\"test\")?.scroll({\n top: 0,\n behavior: \"smooth\",\n });\n };\n\n const handleScroll = (event: any) => {\n event.currentTarget.scrollTop > 20\n ? setShowBtn(\"myBtn\")\n : setShowBtn(\"none\");\n };\n\n return (\n
\n e.stopPropagation()}\n >\n
\n \n \n \n setToggleFullScreen(!toggleFullScreen)}\n >\n {toggleFullScreen ? : }\n \n {props.title}\n
\n \n {props.children}\n
\n scrollToTop()}\n >\n \n Go To Top\n \n
\n
\n \n \n );\n};\nexport default Modal;\n", "/** @jsx h */\nimport { h, useState, useEffect } from \"../reactDeps.ts\";\nimport { uid } from \"../utils/uid.ts\";\nimport { JSONViewer } from \"./JSONVeiwer.tsx\";\nimport { useLesan } from \"./ManagedLesanContext.tsx\";\nimport ExportIcon from \"./icon/ExportIcon.tsx\";\nimport HelpIcon from \"./icon/HelpIcon.tsx\";\nimport Search from \"./icon/Search.tsx\";\n\nexport const Schema = () => {\n const { schemasObj } = useLesan();\n const [reProduceSchemaObj, setreProduceSchemaObj] = useState<\n Record\n >({});\n\n useEffect(() => {\n const myNewObj: Record = {};\n for (const schema in schemasObj) {\n myNewObj[schema] = {\n ...myNewObj[schema],\n pure: schemasObj[schema].pure,\n };\n for (const mainRels in schemasObj[schema].mainRelations) {\n myNewObj[schema] = {\n ...myNewObj[schema],\n mainRelations: {\n ...myNewObj[schema].mainRelations,\n [mainRels]: {\n type: \"relation\",\n extraDetails: schemasObj[schema].mainRelations[mainRels],\n schema: {\n ...schemasObj[\n schemasObj[schema].mainRelations[mainRels].schemaName\n ].pure,\n },\n },\n },\n };\n }\n for (const relatedRels in schemasObj[schema].relatedRelations) {\n myNewObj[schema] = {\n ...myNewObj[schema],\n relatedRelations: {\n ...myNewObj[schema].relatedRelations,\n [relatedRels]: {\n type: \"relation\",\n extraDetails: schemasObj[schema].relatedRelations[relatedRels],\n schema: {\n ...schemasObj[\n schemasObj[schema].relatedRelations[relatedRels].schemaName\n ].pure,\n },\n },\n },\n };\n }\n }\n setreProduceSchemaObj(myNewObj);\n }, []);\n\n const exportSchemas = () => {\n const jsonString = `data:text/json;chatset=utf-8,${encodeURIComponent(\n JSON.stringify(schemasObj)\n )}`;\n const link = document.createElement(\"a\");\n link.href = jsonString;\n link.download = \"schemas.json\";\n\n link.click();\n };\n\n const rainbowClass = [\n \"color-1\",\n \"color-2\",\n \"color-3\",\n \"color-4\",\n \"color-5\",\n \"color-6\",\n \"color-7\",\n ];\n\n const proceedSchemas = (schemas: Record) => {\n return Object.keys(schemas).map((schema: any) => {\n const newUid = uid();\n return (\n
\n {\n document.getElementById(newUid)?.classList.toggle(\"open\");\n }}\n >\n

{schema}

\n ...\n
\n
\n {proceedChildSchema(schemas[schema])}\n\n {/* {proceedChildSchema(schemasObj[schema][\"pure\"])} */}\n
\n \n );\n });\n };\n\n const proceedChildSchema = (childSchema: Record) => {\n return Object.keys(childSchema).map((childItem: any) => {\n const newUid = uid();\n return (\n \n {\n document.getElementById(newUid)?.classList.toggle(\"open\");\n }}\n >\n

{childItem}

\n
\n {\" \"}\n

\n {\" \"}\n {childSchema[childItem][\"type\"]}\n

\n
\n {childSchema[childItem][\"extraDetails\"] && }\n {childSchema[childItem][\"extraDetails\"] && (\n
\n \n
\n )}\n
\n {typeof childSchema[childItem] === \"object\" &&\n childSchema[childItem].schema !== null && ...}\n
\n \n
\n {typeof childSchema[childItem] === \"object\" &&\n childSchema[childItem] !== null &&\n childSchema[childItem].schema !== null &&\n proceedChildSchema(\n childSchema[childItem].pure\n ? childSchema[childItem].pure\n : childSchema[childItem].relatedRelations\n ? childSchema[childItem].relatedRelations\n : childSchema[childItem].mainRelation\n ? childSchema[childItem].mainRelation\n : childSchema[childItem].type === \"relation\"\n ? childSchema[childItem].schema\n : childSchema[childItem]\n )}\n {/* {childSchema[childItem].type === \"object\" &&\n proceedChildSchema(childSchema[childItem].schema)} */}\n
\n \n );\n });\n };\n\n return (\n
\n
\n \n \n Export\n \n
\n
\n \n \n \n \n
\n
{proceedSchemas(reProduceSchemaObj)}
\n
\n );\n};\n", "/** @jsx h */\nimport { h } from \"../../reactDeps.ts\";\n\nexport default function TickIcon() {\n return (\n \n {\" \"}\n \n \n );\n}\n", "/** @jsx h */\nimport { Fragment, h, useEffect, useState } from \"../reactDeps.ts\";\nimport { useLesan } from \"./ManagedLesanContext.tsx\";\nimport AddIcon from \"./icon/AddIcon.tsx\";\nimport TickIcon from \"./icon/TickIcon.tsx\";\nimport DeleteIcon from \"./icon/deleteIcon.tsx\";\n\nexport function Setting({\n configUrl,\n}: {\n configUrl: (address?: string) => void;\n}) {\n const handleDelete = (fromIndex: any) => {\n headersState[fromIndex];\n headersState.splice(fromIndex, 1);\n setHeadersState([...headersState]);\n };\n const { headers, setHeader } = useLesan();\n const [headersState, setHeadersState] = useState<\n { key: string; value: string }[]\n >([{ key: \"\", value: \"\" }]);\n\n const [urlAddress, setUrlAddress] = useState(\"\");\n\n useEffect(() => {\n const arrHeader = [];\n for (const key in headers) {\n arrHeader.push({ key, value: headers[key] });\n }\n setHeadersState(arrHeader);\n }, []);\n\n return (\n
\n
\n

Fetch Config

\n\n
\n {\" \"}\n setUrlAddress(e.target.value)}\n />\n configUrl(urlAddress)}\n >\n \n Apply{\" \"}\n \n
\n
\n
\n
\n {\" \"}\n Set Headers\n {\n setHeadersState([...headersState, { key: \"\", value: \"\" }]);\n }}\n >\n \n Add Header\n \n
\n
\n
\n {headersState?.map((hst, idx) => (\n
\n
\n Key:\n {\n setHeadersState((prevState) => {\n prevState[idx].key = e.target.value;\n return prevState;\n });\n }}\n />\n
\n
\n Value:\n {\n setHeadersState((prevState) => {\n prevState[idx].value = e.target.value;\n return prevState;\n });\n }}\n />\n
\n {headersState.length > 1 && (\n handleDelete(idx)}\n >\n \n
\n )}\n
\n ))}\n
\n {\n const newHeaders: Record = {};\n for (const header of headersState) {\n const { key, value } = header;\n newHeaders[key] = value;\n }\n\n setHeader(newHeaders);\n }}\n >\n \n Apply\n \n
\n
\n \n );\n}\n", "/** @jsx h */\nimport { Fragment, h, useEffect, useState } from \"../reactDeps.ts\";\nimport { createNestedObjectsFromKeys } from \"../utils/createNestedObjectsFromKeys.ts\";\nimport { generateFormData } from \"../utils/generateFormData.ts\";\nimport { Act } from \"./Act.tsx\";\nimport { MODAL_TYPES } from \"./context/actionType.ts\";\nimport { E2E } from \"./E2E.tsx\";\nimport { History } from \"./History.tsx\";\nimport DocumentIcon from \"./icon/DocumentIcon.tsx\";\nimport HistoryIcon from \"./icon/HistoryIcon.tsx\";\nimport ReFetchIcon from \"./icon/ReFetchIcon.tsx\";\nimport SchemaIcon from \"./icon/SchemaIcon.tsx\";\nimport SettingIcon from \"./icon/SettingIcon.tsx\";\nimport TestIcon from \"./icon/TestIcon.tsx\";\nimport { Main } from \"./Main.tsx\";\nimport { useLesan } from \"./ManagedLesanContext.tsx\";\nimport Modal from \"./Modal.tsx\";\nimport { Schema } from \"./Schema.tsx\";\nimport { Setting } from \"./Setting.tsx\";\nimport { useOutsideClick } from \"./hooks/useOutsideClick.ts\";\n\nconst getSchemasAPI = ({ baseUrl }: { baseUrl: string }) =>\n fetch(`${baseUrl}playground/static/get/schemas`).then((res) => res.json());\n\nexport const Page = () => {\n const {\n tabsData,\n setTabsData,\n activeTab,\n actsObj,\n addTab,\n setActiveTab,\n setService,\n setSchema,\n setAct,\n setPostFields,\n setGetFields,\n setFormData,\n setHistory,\n setResponse,\n resetGetFields,\n closeTab,\n resetPostFields,\n setSchemasObj,\n setActsObj,\n setModal,\n modal,\n } = useLesan();\n\n const [show, setShow] = useState(\"\");\n const [mediaShow, setMediaShow] = useState(false);\n\n const parsedWindowUrl = () => {\n return window && window.location\n ? `${new URL(window.location.href).origin}/`\n : \"http://localhost:1366/\";\n };\n\n const [urlAddress, setUrlAddress] = useState(\"\");\n const handleClickOutside = () => {\n setMediaShow(false);\n };\n const ref: any = useOutsideClick(handleClickOutside);\n\n useEffect(() => {\n configUrl(parsedWindowUrl());\n\n const localHistory = JSON.parse(localStorage.getItem(\"localHistory\")!);\n if (localHistory) setHistory(localHistory);\n }, []);\n\n const configUrl = (address?: string) => {\n address && setUrlAddress(address);\n\n setService({ data: \"\", index: activeTab });\n setSchema({ data: \"\", index: activeTab });\n resetGetFields(activeTab);\n resetPostFields(activeTab);\n setFormData({ data: {}, index: activeTab });\n\n getSchemasAPI({ baseUrl: address ? address : urlAddress }).then(\n ({ schemas, acts }) => {\n setActsObj(acts);\n setSchemasObj(schemas);\n\n let localTabsData = localStorage.getItem(\"localTabsData\");\n\n if (localTabsData) {\n localTabsData = JSON.parse(localTabsData);\n\n const parsedLocalTabData: any[] = [];\n\n const proccessTabData = (tab: any) => {\n parsedLocalTabData.pop();\n\n // form data section --- begin\n const parsedFromData = createNestedObjectsFromKeys(tab.formData);\n\n // set fileds section --- begin\n for (const setKeys in parsedFromData.set) {\n if (\n acts[tab.service][tab.schema][tab.act].validator.schema.set\n .schema[setKeys] === undefined\n ) {\n delete parsedFromData.set[setKeys];\n }\n }\n // TODO : we need to check field type also in set fields inside acts[tab.service][tab.schema][tab.act].validator.schema.set.schema[setKeys].type\n\n // set fileds section --- end\n\n // get fileds section --- begin\n for (const getKey in parsedFromData.get) {\n if (\n acts[tab.service][tab.schema][tab.act].validator.schema.get\n .schema[getKey] === undefined\n ) {\n delete parsedFromData.get[getKey];\n }\n }\n // get fileds section --- end\n\n const newGeneratedFormData = generateFormData(\n parsedFromData,\n {},\n \"\"\n );\n // form data section --- end\n\n // set fileds section --- begin\n tab.postFields =\n acts[tab.service][tab.schema][\n tab.act\n ].validator.schema.set.schema;\n // set fileds section --- end\n\n // get fileds section --- begin\n tab.getFields =\n acts[tab.service][tab.schema][\n tab.act\n ].validator.schema.get.schema;\n // get fileds section --- end\n\n parsedLocalTabData.push({\n ...tab,\n formData: newGeneratedFormData,\n });\n };\n\n for (const tab of localTabsData as any) {\n if (tab.service && tab.service in acts) {\n parsedLocalTabData.push(tab);\n }\n\n if (tab.schema && !(tab.schema in acts[tab.service])) {\n parsedLocalTabData.pop();\n }\n\n if (tab.act && !(tab.act in acts[tab.service][tab.schema])) {\n parsedLocalTabData.pop();\n }\n\n if (\n tab.service &&\n tab.schema &&\n tab.act &&\n tab.act in acts[tab.service][tab.schema]\n ) {\n proccessTabData(tab);\n }\n }\n if (parsedLocalTabData.length < 1) {\n parsedLocalTabData.push({\n service: \"\",\n schema: \"\",\n act: \"\",\n postFields: {},\n getFields: {},\n formData: {},\n response: null,\n });\n }\n setTabsData(parsedLocalTabData);\n }\n }\n );\n };\n\n const toggleModal = () => {\n setModal(null);\n };\n\n const setFormFromHistory = (request: any) => {\n setService({ data: request.body.service, index: activeTab });\n setSchema({ data: request.body.model, index: activeTab });\n setAct({ data: request.body.act, index: activeTab });\n\n const actObj = (actsObj as any)[request.body.service][request.body.model][\n request.body.act\n ][\"validator\"][\"schema\"];\n\n setGetFields({ data: actObj[\"get\"][\"schema\"], index: activeTab });\n setPostFields({ data: actObj[\"set\"][\"schema\"], index: activeTab });\n\n setResponse({ data: null, index: activeTab });\n\n const historyFromData = generateFormData(request.body.details, {}, \"\");\n\n setFormData({ data: historyFromData, index: activeTab });\n\n toggleModal();\n };\n\n return (\n setMediaShow(false)}\n >\n
\n {tabsData.map((tab, index) => (\n \n {\n setActiveTab(index);\n }}\n >\n {\" \"}\n \n {\" \"}\n {tabsData[index].act\n ? `${tabsData[index].schema} | ${tabsData[index].act}`\n : tabsData[index].schema\n ? `${tabsData[index].service} | ${tabsData[index].schema}`\n : tabsData[index].service\n ? tabsData[index].service\n : `Tab ${index}`}\n \n {\n event.stopPropagation();\n closeTab(index);\n }}\n title=\"Close tab\"\n >\n x\n \n
\n \n ))}\n {\n addTab(null);\n localStorage.setItem(\"localTabsData\", JSON.stringify(tabsData));\n }}\n >\n +\n \n \n
\n\n {/* under 768px heigh button */}\n {\n setMediaShow(!mediaShow);\n }}\n >\n menu\n \n {/* */}\n\n
\n configUrl()}>\n Refetch\n \n \n setModal(MODAL_TYPES.SETTING)}\n >\n Setting\n \n \n setModal(MODAL_TYPES.HISTORY)}\n >\n History\n \n \n setModal(MODAL_TYPES.E2E_TEST)}\n >\n E2E Test\n \n \n \n \n Document\n \n \n setModal(MODAL_TYPES.SCHEMA)}\n onMouseEnter={() => setShow(\"document\")}\n onMouseLeave={() => setShow(\"\")}\n >\n Schema\n \n \n setModal(MODAL_TYPES.ACT)}\n onMouseEnter={() => setShow(\"document\")}\n onMouseLeave={() => setShow(\"\")}\n >\n Act\n \n \n
\n\n {modal !== null && (\n \n {modal === MODAL_TYPES.HISTORY ? (\n \n ) : modal === MODAL_TYPES.SETTING ? (\n \n ) : modal === MODAL_TYPES.E2E_TEST ? (\n \n ) : modal === MODAL_TYPES.SCHEMA ? (\n \n ) : modal === MODAL_TYPES.ACT ? (\n \n ) : (\n \n )}\n \n )}\n \n );\n};\n", "/** @jsx h */\nimport { ManagedLesanContext } from \"./comp/ManagedLesanContext.tsx\";\nimport { Page } from \"./comp/preact.tsx\";\nimport { h, hydrate } from \"./reactDeps.ts\";\n\nhydrate(\n \n \n ,\n document.getElementById(\"root\")!,\n);\n"], + "mappings": "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", + "names": ["createContext", "Fragment", "h", "hydrate", "useCallback", "useContext", "useEffect", "useMemo", "useReducer", "useRef", "useState", "uid", "tabInitial", "schemaInitial", "historyInitial", "headerInitial", "e2eFirstInp", "uid", "e2eInitial", "modalInitial", "initialState", "lesanReducer", "state", "action", "type", "payload", "copyTabsData", "LesanContext", "createContext", "initialState", "LesanProvider", "props", "state", "dispatch", "useReducer", "lesanReducer", "setService", "useCallback", "payload", "setSchema", "setAct", "setPostFields", "resetPostFields", "setGetFields", "resetGetFields", "setFormData", "setActiveTab", "addTab", "closeTab", "deleteItemHistory", "setHeader", "setHistory", "setTabsData", "setResponse", "setSchemasObj", "setActsObj", "setE2eForms", "addE2eForm", "setModal", "value", "useMemo", "h", "useLesan", "context", "useContext", "LesanContext", "ManagedLesanContext", "props", "children", "h", "LesanProvider", "createNestedObjectsFromKeys", "obj", "result", "objectPath", "parts", "target", "part", "generateFormData", "formData", "returnFormData", "keyname", "key", "Search", "h", "ExportIcon", "h", "Act", "actsObj", "useLesan", "exportActs", "jsonString", "link", "rainbowClass", "proceedActs", "acts", "act", "index", "newUid", "uid", "h", "proceedChildActs", "childActs", "childAct", "ExportIcon", "Search", "BackIcon", "h", "Help", "setView", "h", "BackIcon", "AddIcon", "h", "DeleteIcon", "h", "deleteIcon_default", "DownIcon", "h", "HelpIcon", "h", "ImportIcon", "h", "RunIcon", "h", "UpIcon", "h", "pre", "regEx", "syntaxHighlight", "json", "replacer", "match", "className", "text", "_", "value", "cutify", "JSONViewer", "jsonData", "cutifiedJson", "cutify", "h", "Fragment", "pre", "InfoIcon", "h", "ResultSlider", "results", "setIsShowE2eResponse", "show", "setShow", "useState", "h", "InfoIcon", "JSONViewer", "_re", "index", "SequenceSlider", "sequence", "isShowE2eResponse", "setIsShowE2eResponse", "useState", "h", "Fragment", "InfoIcon", "JSONViewer", "ResultSlider", "E2E", "baseUrl", "notSorted", "sorted", "setSorted", "useState", "useEffect", "e2eForms", "setE2eForms", "useLesan", "initialRequestDetail", "isShowE2eResponse", "setIsShowE2eResponse", "isShowE2eButton", "setIsShowE2eButton", "requestDetail", "setRequestDetail", "handleMove", "fromIndex", "toIndex", "element", "handleDelete", "view", "setView", "exportForm", "jsonString", "link", "jsonFileUpload", "e", "fileReader", "data", "exportResults", "lesanAPI", "options", "replaceCaptureString", "obj", "variablesSet", "key", "value", "openBraceIndexes", "index", "closeBraceIndexes", "openBrace", "variableName", "setValue", "runE2eTest", "parsedCaptures", "allReqPerformance0", "e2eForm", "parsedHeaderBody", "body", "jsonSendedRequest", "sequenceTime0", "sequenceDetail", "uid", "repeat", "tResTime0", "tResTime1", "capture", "parts", "part", "slicedPart", "getedValue", "capValue", "allReqPerformance1", "plusRepeatHandler", "copy", "minesRepeatHandler", "h", "BackIcon", "ExportIcon", "sequence", "a", "b", "SequenceSlider", "Fragment", "idx", "UpIcon", "DownIcon", "deleteIcon_default", "capId", "e2eFirstInp", "AddIcon", "RunIcon", "ImportIcon", "HelpIcon", "Help", "ConvertMilliseconds", "milliseconds", "hours", "minutes", "seconds", "useNonInitialEffect", "effect", "deps", "initialRender", "useRef", "useEffect", "effectReturns", "Dustbin", "h", "History", "setFormFromHistory", "history", "setHistory", "deleteItemHistory", "useLesan", "show", "setShow", "useState", "useNonInitialEffect", "h", "Fragment", "hi", "index", "JSONViewer", "event", "deleteIcon_default", "ConvertMilliseconds", "Dustbin", "DocumentIcon", "h", "HistoryIcon", "h", "ReFetchIcon", "h", "SchemaIcon", "h", "SettingIcon", "h", "TestIcon", "h", "CopyIcon", "h", "RunTestIcon", "h", "SuccessIcon", "h", "useOutsideClick", "callback", "ref", "useRef", "useEffect", "handleClick", "event", "ChevronDownIcon", "className", "h", "Selected", "items", "onClickItem", "incomeActiveItem", "canShow", "show", "setShow", "useState", "activeItem", "setActiveItem", "useEffect", "ref", "useOutsideClick", "h", "e", "ChevronDownIcon", "item", "index", "MultiSelect", "options", "onChange", "selectedOptions", "setSelectedOptions", "useState", "unselectedOptions", "setUnselectedOptions", "isOpen", "setIsOpen", "handleOptionChange", "selectedOption", "filteredSelectedOptions", "option", "filteredUnselectedOptions", "resetOptions", "toggleDropdown", "ref", "useOutsideClick", "h", "item", "e", "ChevronDownIcon", "MultiSelect_default", "lesanAPI", "baseUrl", "options", "res", "Main", "urlAddress", "activeTab", "tabsData", "actsObj", "headers", "history", "setService", "setSchema", "setAct", "setPostFields", "setGetFields", "setFormData", "setHistory", "setResponse", "resetGetFields", "resetPostFields", "addE2eForm", "setModal", "useLesan", "active", "setActive", "useState", "changeGetValue", "value", "keyname", "getObj", "returnObj", "key", "formRef", "useRef", "handleChange", "event", "name", "type", "alt", "updatedValue", "renderPostFields", "field", "isMultiEnum", "formData", "h", "MultiSelect_default", "schemaKey", "item", "Selected", "renderGetFields", "getField", "keyName", "margin", "index", "copy", "requestFunction", "details", "createNestedObjectsFromKeys", "handleSubmit", "sendRequest", "t0", "jsonSendedRequest", "tookTime", "newHistory", "uid", "canShowRequestFields", "canShowSchema", "canShowAct", "copyResponse", "response", "copyRequest", "request", "runE2eRequest", "method", "rest", "newE2eForm", "onClickItem", "actObj", "Fragment", "SuccessIcon", "CopyIcon", "RunTestIcon", "JSONViewer", "ConvertMilliseconds", "FullScreenExit", "h", "Fullscreen_exit_default", "FullScreen", "h", "Fullscreen_default", "Up2Icon", "h", "Modal", "props", "showBtn", "setShowBtn", "useState", "toggleFullScreen", "setToggleFullScreen", "divRef", "useRef", "scrollToTop", "handleScroll", "event", "h", "e", "deleteIcon_default", "Fullscreen_exit_default", "Fullscreen_default", "Up2Icon", "Modal_default", "Schema", "schemasObj", "useLesan", "reProduceSchemaObj", "setreProduceSchemaObj", "useState", "useEffect", "myNewObj", "schema", "mainRels", "relatedRels", "exportSchemas", "jsonString", "link", "rainbowClass", "proceedSchemas", "schemas", "newUid", "uid", "h", "proceedChildSchema", "childSchema", "childItem", "HelpIcon", "JSONViewer", "ExportIcon", "Search", "TickIcon", "h", "Setting", "configUrl", "handleDelete", "fromIndex", "headersState", "setHeadersState", "headers", "setHeader", "useLesan", "useState", "urlAddress", "setUrlAddress", "useEffect", "arrHeader", "key", "h", "e", "TickIcon", "AddIcon", "hst", "idx", "prevState", "deleteIcon_default", "newHeaders", "header", "value", "getSchemasAPI", "baseUrl", "res", "Page", "tabsData", "setTabsData", "activeTab", "actsObj", "addTab", "setActiveTab", "setService", "setSchema", "setAct", "setPostFields", "setGetFields", "setFormData", "setHistory", "setResponse", "resetGetFields", "closeTab", "resetPostFields", "setSchemasObj", "setActsObj", "setModal", "modal", "useLesan", "show", "setShow", "useState", "mediaShow", "setMediaShow", "parsedWindowUrl", "urlAddress", "setUrlAddress", "ref", "useOutsideClick", "useEffect", "configUrl", "localHistory", "address", "schemas", "acts", "localTabsData", "parsedLocalTabData", "proccessTabData", "tab", "parsedFromData", "createNestedObjectsFromKeys", "setKeys", "getKey", "newGeneratedFormData", "generateFormData", "toggleModal", "setFormFromHistory", "request", "actObj", "historyFromData", "h", "index", "Fragment", "event", "Main", "ReFetchIcon", "SettingIcon", "HistoryIcon", "TestIcon", "SchemaIcon", "DocumentIcon", "Modal_default", "History", "Setting", "E2E", "Schema", "Act", "hydrate", "h", "ManagedLesanContext", "Page"] } diff --git a/src/server/playground/dist/bundleContent.ts b/src/server/playground/dist/bundleContent.ts index bff60170..3c062385 100644 --- a/src/server/playground/dist/bundleContent.ts +++ b/src/server/playground/dist/bundleContent.ts @@ -1,50 +1,34 @@ - export const bundleTs = "import{createContext as Re,Fragment as q,h as e,hydrate as Me}from\"https://esm.sh/preact@10.5.15\";import{useCallback as x,useContext as Oe,useEffect as $,useMemo as Le,useReducer as Fe,useRef as W,useState as C}from\"https://esm.sh/preact@10.5.15/hooks\";var A=()=>Date.now().toString(36)+Math.random().toString(36).substr(2);var et={tabsData:[{service:\"\",schema:\"\",act:\"\",postFields:{},getFields:{},formData:{},response:null}],activeTab:0,setActiveTab:()=>({}),addTab:()=>({}),closeTab:()=>({}),setTabsData:()=>({})},tt={schemasObj:{},actsObj:{},setService:()=>({}),setMethod:()=>({}),setSchema:()=>({}),setAct:()=>({}),setActsObj:()=>({}),setSchemasObj:()=>({}),setPostFields:()=>({}),resetPostFields:()=>({}),setGetFields:()=>({}),resetGetFields:()=>({}),setFormData:()=>({}),setResponse:()=>({})},st={history:[],deleteItemHistory:()=>({}),setHistory:()=>({})},at={headers:{Authorization:\"\"},setHeader:()=>({})},ue=()=>({id:A(),bodyHeaders:`\n{\n \"headers\": {\n \"Content-Type\": \"application/json\",\n \"Authorization\": \"\"\n },\n \"body\": {\n \"service\": \"main\",\n \"contents\": \"dynamic\",\n \"model\": \"\",\n \"act\": \"\"\n \"details\": {\n \"get\": {\n },\n \"set\": {\n }\n }\n}\n}\n `,repeat:1,captures:[]}),ot={e2eForms:[ue()],setE2eForms:()=>({}),addE2eForm:()=>({})},nt={modal:null,setModal:()=>({})},ge={...et,...tt,...st,...at,...ot,...nt};function Ie(a,s){let{type:t,payload:o}=s;switch(t){case\"SET_SELECTED_SERVICE\":{let i=[...a.tabsData];return i[o.index]={...i[o.index],service:o.data},{...a,tabsData:[...i]}}case\"SET_SCHEMA\":{let i=[...a.tabsData];return i[o.index]={...i[o.index],schema:o.data},{...a,tabsData:[...i]}}case\"SET_ACT\":{let i=[...a.tabsData];return i[o.index]={...i[o.index],act:o.data},{...a,tabsData:[...i]}}case\"SET_POST_FIELDS\":{let i=[...a.tabsData];return i[o.index]={...i[o.index],postFields:o.data},{...a,tabsData:[...i]}}case\"RESET_POST_FIELDS\":{let i=[...a.tabsData];return i[o]={...i[o],postFields:{}},{...a,tabsData:[...i]}}case\"SET_GET_FIELDS\":{let i=[...a.tabsData];return i[o.index]={...i[o.index],getFields:o.data},{...a,tabsData:[...i]}}case\"RESET_GET_FIELDS\":{let i=[...a.tabsData];return i[o]={...i[o],getFields:{}},{...a,tabsData:[...i]}}case\"SET_FORM_DATA\":{let i=[...a.tabsData];return i[o.index]={...i[o.index],formData:o.data},{...a,tabsData:[...i]}}case\"SET_HEADER\":return{...a,headers:o};case\"ADD_HISTORY\":return{...a,history:o};case\"SET_TABS_DATA\":return{...a,tabsData:o};case\"SET_RESPONSE\":{let i=[...a.tabsData];return i[o.index]={...i[o.index],response:o.data},{...a,tabsData:[...i]}}case\"ADD_TAB\":return{...a,tabsData:[...a.tabsData,{service:\"\",schema:\"\",act:\"\",postFields:{},getFields:{},formData:{},response:null}],activeTab:a.tabsData.length};case\"SET_ACTIVE_TAB\":return{...a,activeTab:o};case\"CLOSE_TAB\":{let i=[...a.tabsData];return i.length>1&&i.splice(o,1),{...a,tabsData:[...i],activeTab:i.length>=1&&a.activeTab>=o&&a.activeTab!==0?a.activeTab-1:a.activeTab}}case\"DELETE_ITEM_HISTORY\":return{...a,history:a.history.slice(0,o).concat(a.history.slice(o+1))};case\"SET_ACTS_OBJ\":return{...a,actsObj:o};case\"SET_SCHEMAS_OBJ\":return{...a,schemasObj:o};case\"SET_E2E_FORMS\":return{...a,e2eForms:o};case\"ADD_E2E_FORM\":return{...a,e2eForms:[...a.e2eForms,o]};case\"OPEN_MODAL\":return{...a,modal:o};default:throw new Error(\"Unhandled action type\")}}var fe=Re(ge),He=a=>{let[s,t]=Fe(Ie,ge),o=x(c=>t({type:\"SET_SELECTED_SERVICE\",payload:c}),[t]),i=x(c=>t({type:\"SET_SCHEMA\",payload:c}),[t]),u=x(c=>t({type:\"SET_ACT\",payload:c}),[t]),p=x(c=>t({type:\"SET_POST_FIELDS\",payload:c}),[t]),l=x(c=>t({type:\"RESET_POST_FIELDS\",payload:c}),[t]),r=x(c=>t({type:\"SET_GET_FIELDS\",payload:c}),[t]),b=x(c=>t({type:\"RESET_GET_FIELDS\",payload:c}),[t]),N=x(c=>t({type:\"SET_FORM_DATA\",payload:c}),[t]),y=x(c=>t({type:\"SET_ACTIVE_TAB\",payload:c}),[t]),S=x(c=>t({type:\"ADD_TAB\",payload:c}),[t]),R=x(c=>t({type:\"CLOSE_TAB\",payload:c}),[t]),h=x(c=>t({type:\"DELETE_ITEM_HISTORY\",payload:c}),[t]),z=x(c=>t({type:\"SET_HEADER\",payload:c}),[t]),Y=x(c=>t({type:\"ADD_HISTORY\",payload:c}),[t]),K=x(c=>t({type:\"SET_TABS_DATA\",payload:c}),[t]),Q=x(c=>t({type:\"SET_RESPONSE\",payload:c}),[t]),L=x(c=>t({type:\"SET_SCHEMAS_OBJ\",payload:c}),[t]),O=x(c=>t({type:\"SET_ACTS_OBJ\",payload:c}),[t]),V=x(c=>t({type:\"SET_E2E_FORMS\",payload:c}),[t]),P=x(c=>t({type:\"ADD_E2E_FORM\",payload:c}),[t]),m=x(c=>t({type:\"OPEN_MODAL\",payload:c}),[t]),g=Le(()=>({...s,setService:o,setSchema:i,setAct:u,setPostFields:p,resetPostFields:l,setGetFields:r,resetGetFields:b,setFormData:N,setHeader:z,setHistory:Y,setTabsData:K,setResponse:Q,setActsObj:O,setSchemasObj:L,setActiveTab:y,addTab:S,closeTab:R,deleteItemHistory:h,setE2eForms:V,addE2eForm:P,setModal:m}),[s]);return e(fe.Provider,{value:g,...a})};var I=()=>{let a=Oe(fe);return a},Ae=a=>{let{children:s}=a;return e(He,null,s)};var ce=a=>{let s={get:{},set:{}};for(let t in a)if(a[t]||a[t]===0){let o=t.split(\".\"),i=s;for(;o.length>1;){let u=o.shift();i[u]=i[u]||{},i=i[u]}i[o[0]]=a[t]}return s};var le=(a,s,t)=>{for(let o in a)typeof a[o]==\"object\"?le(a[o],s,t?`${t}.${o}`:o):s[`${t}.${o}`]=a[o];return s};function te(){return e(\"svg\",{width:\"30px\",height:\"35px\",viewBox:\"0 0 24 24\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\"},e(\"path\",{d:\"M16.6725 16.6412L21 21M19 11C19 15.4183 15.4183 19 11 19C6.58172 19 3 15.4183 3 11C3 6.58172 6.58172 3 11 3C15.4183 3 19 6.58172 19 11Z\",stroke:\"#000000\",\"stroke-width\":\"2\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}))}function G(){return e(\"svg\",{width:\"25px\",height:\"25px\",viewBox:\"0 0 24 24\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\"},e(\"path\",{\"fill-rule\":\"evenodd\",\"clip-rule\":\"evenodd\",d:\"M11.2501 7.06066L8.03039 10.2803L6.96973 9.21967L12.0001 4.18934L17.0304 9.21967L15.9697 10.2803L12.7501 7.06066L12.7501 16.5L11.2501 16.5L11.2501 7.06066Z\",fill:\"lightcoral\"}),e(\"path\",{\"fill-rule\":\"evenodd\",\"clip-rule\":\"evenodd\",d:\"M23 12C23 18.0751 18.0751 23 12 23C5.92487 23 1 18.0751 1 12C1 5.92487 5.92487 1 12 1C18.0751 1 23 5.92487 23 12ZM3.00683 12C3.00683 16.9668 7.03321 20.9932 12 20.9932C16.9668 20.9932 20.9932 16.9668 20.9932 12C20.9932 7.03321 16.9668 3.00683 12 3.00683C7.03321 3.00683 3.00683 7.03321 3.00683 12Z\",fill:\"bisque\"}))}function he(){let{actsObj:a}=I(),s=()=>{let u=`data:text/json;chatset=utf-8,${encodeURIComponent(JSON.stringify(a))}`,p=document.createElement(\"a\");p.href=u,p.download=\"acts.json\",p.click()},t=[\"color-1\",\"color-2\",\"color-3\",\"color-4\",\"color-5\",\"color-6\",\"color-7\"],o=u=>Object.keys(u).map((p,l)=>{let r=A();return e(\"div\",{className:\"schema\"},e(\"div\",{className:\"schema-name\",onClick:()=>{document.getElementById(r)?.classList.toggle(\"open\")}},e(\"p\",{className:\"schema-title\"},p),e(\"span\",null,\"...\")),e(\"div\",{className:\"proceed-child-container\",id:r},i(a[p])))}),i=u=>Object.keys(u).map((p,l)=>{let r=A();return e(\"div\",{className:`inside-schema ${t[Math.floor(Math.random()*t.length)]}`},e(\"div\",{className:`inside ${typeof u[p]==\"object\"&&u[p].schema!==null&&\"schema-pointer\"}`,onClick:()=>{document.getElementById(r)?.classList.toggle(\"open\")}},e(\"p\",{className:\"schema-title\"},p),u[p].type&&e(\"p\",{className:\"schema-title schema-type\"},u[p].type),e(\"div\",null,\" \",typeof u[p]==\"object\"&&u[p].schema!==null&&e(\"span\",null,\"...\"))),e(\"div\",{id:r,className:\"proceed-child\"},typeof u[p]==\"object\"&&u[p]!==null&&u[p].schema!==null&&i(u[p].validator?u[p].validator.schema:u[p].schema?u[p].schema:u[p])))});return e(\"div\",{className:\"schema-modal\"},\" \",e(\"div\",{className:\"results-buttons\"},e(\"button\",{className:\" schema-export-button btn e2e-back-button e2e-export_results-button\",onClick:s},e(G,null),e(\"span\",null,\"Export\"))),e(\"div\",{className:\"search-box\"},e(\"input\",{className:\"input\",type:\"text\",placeholder:\"search...\"}),e(\"span\",{className:\"search-icon\"},e(te,null))),e(\"div\",{className:\"schema-list\"},o(a)))}function se(){return e(\"svg\",{width:\"25px\",viewBox:\"0 0 24 24\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\"},e(\"path\",{d:\"M9.00002 15.3802H13.92C15.62 15.3802 17 14.0002 17 12.3002C17 10.6002 15.62 9.22021 13.92 9.22021H7.15002\",stroke:\"lightcoral\",\"stroke-width\":\"1.5\",\"stroke-miterlimit\":\"10\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),e(\"path\",{d:\"M8.57 10.7701L7 9.19012L8.57 7.62012\",stroke:\"lightcoral\",\"stroke-width\":\"1.5\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),e(\"path\",{\"fill-rule\":\"evenodd\",\"clip-rule\":\"evenodd\",d:\"M23 12C23 18.0751 18.0751 23 12 23C5.92487 23 1 18.0751 1 12C1 5.92487 5.92487 1 12 1C18.0751 1 23 5.92487 23 12ZM3.00683 12C3.00683 16.9668 7.03321 20.9932 12 20.9932C16.9668 20.9932 20.9932 16.9668 20.9932 12C20.9932 7.03321 16.9668 3.00683 12 3.00683C7.03321 3.00683 3.00683 7.03321 3.00683 12Z\",fill:\"bisque\"}))}var je=({setView:a})=>e(\"div\",{className:\"help\"},\" \",e(\"button\",{className:\"btn e2e-back-button\",onClick:()=>{a(\"e2e\")}},e(se,null),e(\"span\",null,\"Back\")),e(\"section\",{className:\"e2e_help-content\"},e(\"p\",null,\"With E2E Test, you can test the whole application by sending a sequence of HTTP requests.\"),e(\"p\",null,\"In the image below, you can see the first view of the E2E test modal page, which contains a button bar at the top and two separate requests.\"),e(\"img\",{src:\"https://github.com/MiaadTeam/lesan/assets/6236123/829b3288-3d69-4fd0-a1fc-22d011b8d079\",alt:\"full screen e2e\",className:\"e2e_help--fullscreen-img\"}),e(\"hr\",null),e(\"p\",null,\"In the button bar, you have these buttons:\",e(\"img\",{src:\"https://github.com/MiaadTeam/lesan/assets/6236123/4edd6034-d6b2-4de9-8c43-8f2fe511aa14\",alt:\"full screen e2e\",className:\"e2e_help--fullscreen-img\"}),e(\"ul\",null,e(\"li\",null,\"Add: This button adds one request section.\"),e(\"li\",null,\"Run E2E Test: This button runs all requests and shows their results.\"),e(\"li\",null,\"Import: This button stands for importing an E2E config in JSON format.\"),e(\"li\",null,\"Export: This button stands for exporting an existing E2E config in JSON format.\"),e(\"li\",null,\"Help: This button switches to the help of the E2E modal page.\"))),e(\"hr\",null),e(\"div\",null,e(\"p\",null,\"Each request section have 2 side\"),e(\"img\",{src:\"https://github.com/MiaadTeam/lesan/assets/6236123/fa9ceb35-21dd-493a-82cc-cd7391f5fc79\",alt:\"full screen e2e\",className:\"e2e_help--fullscreen-img\"}),e(\"hr\",null),e(\"section\",{className:\"e2e_help--section---right-side\"},e(\"p\",null,\"The right side is a set of configurations for the repeat time of each request and capturing variables of the request response. In the Capture Variables section, you can add a pair of tuple inputs for the key name of the capture variable and its value. You can capture the value of a capture variable with braces syntax. For example, if you get back this response from a request:\",e(\"pre\",null,`{\n`,` body: [\n`,` {\n`,` _id: 64c6839c50adc3cb65726934,\n`,` name: \\u0647\\u0645\\u062F\\u0627\\u0646,\n`,` enName: Hamedan,\n`,` abb: HM\n`,` }\n`,` ],\n`,` success: true\n`,` }\n`,`}\n`),\"You can capture _id with [body][0][_id] or for name: [body][0][name].\"),e(\"img\",{src:\"https://github.com/MiaadTeam/lesan/assets/6236123/1cea1db3-44c2-49b5-8739-a9afa8a6e1fa\",alt:\"full screen e2e\",className:\"e2e_help--fullscreen-img\"})),e(\"hr\",null),e(\"section\",{className:\"e2e_help--section---right-side\"},e(\"img\",{src:\"https://github.com/MiaadTeam/lesan/assets/6236123/5c9899fa-8be6-42d1-8f4f-8fd965264645\",alt:\"full screen e2e\",className:\"e2e_help--fullscreen-img\"}),e(\"p\",null,\"The left side is a text area for writing headers and the body of the request in JSON format. In this text area, you can use a text parser to implement the captured value you captured before inside these symbols \",\"{}\",\".\")),e(\"hr\",null),e(\"p\",null,\"Also, we have some buttons on the top right side of each request section. With these buttons, you can move up and down and delete requests.\",e(\"img\",{src:\"https://github.com/MiaadTeam/lesan/assets/6236123/900a5b98-3e7f-460a-a756-403ecaedcf86\",alt:\"full screen e2e\",className:\"e2e_help--fullscreen-img\"}))),e(\"hr\",null),e(\"div\",null,e(\"p\",null,\"After clicking on the Run E2E Test button, you can see the result of each test. Also, in the result view, you can export the results in JSON format.\"),e(\"img\",{src:\"https://github.com/MiaadTeam/lesan/assets/6236123/8c367965-a1b7-40b8-8638-60d2d0ea2609\",alt:\"full screen e2e\",className:\"e2e_help--fullscreen-img\"})),e(\"hr\",null),e(\"div\",null,e(\"p\",null,\"Additionally, you can go to the E2E Test modal page from the main page by clicking on the Test icon inside the response header section. This way, you can add a new test section and prepopulate the Header and Body text areas with the sent request from the main page.\",e(\"img\",{src:\"https://github.com/MiaadTeam/lesan/assets/6236123/74dc9e93-2b41-4840-afc1-f4e8e83c9889\",alt:\"full screen e2e\",className:\"e2e_help--fullscreen-img\"})))));function ae(){return e(\"svg\",{width:\"25px\",height:\"25px\",viewBox:\"0 0 24 24\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\"},e(\"path\",{d:\"M11 8C11 7.44772 11.4477 7 12 7C12.5523 7 13 7.44772 13 8V11H16C16.5523 11 17 11.4477 17 12C17 12.5523 16.5523 13 16 13H13V16C13 16.5523 12.5523 17 12 17C11.4477 17 11 16.5523 11 16V13H8C7.44771 13 7 12.5523 7 12C7 11.4477 7.44772 11 8 11H11V8Z\",fill:\"lightcoral\"}),e(\"path\",{\"fill-rule\":\"evenodd\",\"clip-rule\":\"evenodd\",d:\"M23 12C23 18.0751 18.0751 23 12 23C5.92487 23 1 18.0751 1 12C1 5.92487 5.92487 1 12 1C18.0751 1 23 5.92487 23 12ZM3.00683 12C3.00683 16.9668 7.03321 20.9932 12 20.9932C16.9668 20.9932 20.9932 16.9668 20.9932 12C20.9932 7.03321 16.9668 3.00683 12 3.00683C7.03321 3.00683 3.00683 7.03321 3.00683 12Z\",fill:\"bisque\"}))}var rt=()=>e(\"svg\",{width:\"25px\",viewBox:\"-0.5 0 25 25\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\"},e(\"path\",{d:\"M12 22.4199C17.5228 22.4199 22 17.9428 22 12.4199C22 6.89707 17.5228 2.41992 12 2.41992C6.47715 2.41992 2 6.89707 2 12.4199C2 17.9428 6.47715 22.4199 12 22.4199Z\",stroke:\"bisque\",\"stroke-width\":\"1.5\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),e(\"path\",{id:\"Vector\",d:\"M16 16L12 12M12 12L8 8M12 12L16 8M12 12L8 16\",stroke:\"lightcoral\",\"stroke-width\":\"1.5\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"})),U=rt;function ve(){return e(\"svg\",{width:\"25px\",viewBox:\"-0.5 0 25 25\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\"},e(\"path\",{d:\"M12 22.4199C17.5228 22.4199 22 17.9428 22 12.4199C22 6.89707 17.5228 2.41992 12 2.41992C6.47715 2.41992 2 6.89707 2 12.4199C2 17.9428 6.47715 22.4199 12 22.4199Z\",stroke:\"bisque\",\"stroke-width\":\"1.5\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),e(\"path\",{d:\"M16 10.99L13.13 14.05C12.9858 14.2058 12.811 14.3298 12.6166 14.4148C12.4221 14.4998 12.2122 14.5437 12 14.5437C11.7878 14.5437 11.5779 14.4998 11.3834 14.4148C11.189 14.3298 11.0142 14.2058 10.87 14.05L8 10.99\",stroke:\"lightcoral\",\"stroke-width\":\"1.5\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}))}function oe(){return e(\"svg\",{width:\"25px\",height:\"25px\",viewBox:\"0 0 24 24\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\"},e(\"path\",{d:\"M12 17V16.9929M12 14.8571C12 11.6429 15 12.3571 15 9.85714C15 8.27919 13.6568 7 12 7C10.6567 7 9.51961 7.84083 9.13733 9\",stroke:\"lightcoral\",\"stroke-width\":\"1.5\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),e(\"path\",{\"fill-rule\":\"evenodd\",\"clip-rule\":\"evenodd\",d:\"M23 12C23 18.0751 18.0751 23 12 23C5.92487 23 1 18.0751 1 12C1 5.92487 5.92487 1 12 1C18.0751 1 23 5.92487 23 12ZM3.00683 12C3.00683 16.9668 7.03321 20.9932 12 20.9932C16.9668 20.9932 20.9932 16.9668 20.9932 12C20.9932 7.03321 16.9668 3.00683 12 3.00683C7.03321 3.00683 3.00683 7.03321 3.00683 12Z\",fill:\"bisque\"}))}var ct=()=>e(\"svg\",{fill:\"bisque\",width:\"20px\",height:\"20px\",viewBox:\"0 0 64 64\",version:\"1.1\",xmlns:\"http://www.w3.org/2000/svg\",style:\"fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2;\"},e(\"rect\",{id:\"Icons\",x:\"-960\",y:\"-256\",width:\"1280\",height:\"800\",style:\"fill:none;\"}),e(\"g\",{id:\"Icons1\"},e(\"g\",{id:\"Strike\"}),e(\"g\",{id:\"H1\"}),e(\"g\",{id:\"H2\"}),e(\"g\",{id:\"H3\"}),e(\"g\",{id:\"list-ul\"}),e(\"g\",{id:\"hamburger-1\"}),e(\"g\",{id:\"hamburger-2\"}),e(\"g\",{id:\"list-ol\"}),e(\"g\",{id:\"list-task\"}),e(\"g\",{id:\"trash\"}),e(\"g\",{id:\"vertical-menu\"}),e(\"g\",{id:\"horizontal-menu\"}),e(\"g\",{id:\"sidebar-2\"}),e(\"g\",{id:\"Pen\"}),e(\"g\",{id:\"Pen1\"}),e(\"g\",{id:\"clock\"}),e(\"g\",{id:\"external-link\"}),e(\"g\",{id:\"hr\"}),e(\"g\",{id:\"info\"}),e(\"g\",{id:\"warning\"}),e(\"g\",{id:\"plus-circle\"}),e(\"g\",{id:\"minus-circle\"}),e(\"g\",{id:\"vue\"}),e(\"g\",{id:\"cog\"}),e(\"g\",{id:\"logo\"}),e(\"g\",{id:\"radio-check\"}),e(\"g\",{id:\"eye-slash\"},e(\"path\",{d:\"M13.673,10.345l-3.097,3.096l39.853,39.854l3.097,-3.097l-39.853,-39.853Z\"}),e(\"path\",{d:\"M17.119,19.984l2.915,2.915c-3.191,2.717 -5.732,6.099 -7.374,9.058l-0.005,0.01c4.573,7.646 11.829,14.872 20.987,13.776c2.472,-0.296 4.778,-1.141 6.885,-2.35l2.951,2.95c-4.107,2.636 -8.815,4.032 -13.916,3.342c-9.198,-1.244 -16.719,-8.788 -21.46,-17.648c2.226,-4.479 5.271,-8.764 9.017,-12.053Zm6.63,-4.32c2.572,-1.146 5.355,-1.82 8.327,-1.868c0.165,-0.001 2.124,0.092 3.012,0.238c0.557,0.092 1.112,0.207 1.659,0.35c8.725,2.273 15.189,10.054 19.253,17.653c-1.705,3.443 -3.938,6.398 -6.601,9.277l-2.827,-2.827c1.967,-2.12 3.622,-4.161 4.885,-6.45c0,0 -1.285,-2.361 -2.248,-3.643c-0.619,-0.824 -1.27,-1.624 -1.954,-2.395c-0.54,-0.608 -2.637,-2.673 -3.136,-3.103c-3.348,-2.879 -7.279,-5.138 -11.994,-5.1c-1.826,0.029 -3.582,0.389 -5.249,0.995l-3.127,-3.127Z\",style:\"fill-rule:nonzero;\"}),e(\"path\",{d:\"M25.054,27.92l2.399,2.398c-0.157,0.477 -0.243,0.987 -0.243,1.516c0,2.672 2.169,4.841 4.841,4.841c0.529,0 1.039,-0.085 1.516,-0.243l2.399,2.399c-1.158,0.65 -2.494,1.02 -3.915,1.02c-4.425,0 -8.017,-3.592 -8.017,-8.017c0,-1.421 0.371,-2.756 1.02,-3.914Zm6.849,-4.101c0.049,-0.001 0.099,-0.002 0.148,-0.002c4.425,0 8.017,3.593 8.017,8.017c0,0.05 0,0.099 -0.001,0.148l-8.164,-8.163Z\"})),e(\"g\",{id:\"eye\"}),e(\"g\",{id:\"toggle-off\"}),e(\"g\",{id:\"shredder\"}),e(\"g\",{id:\"spinner--loading--dots-\"}),e(\"g\",{id:\"react\"}),e(\"g\",{id:\"check-selected\"}),e(\"g\",{id:\"turn-off\"}),e(\"g\",{id:\"code-block\"}),e(\"g\",{id:\"user\"}),e(\"g\",{id:\"coffee-bean\"}),e(\"g\",{id:\"coffee-beans\"},e(\"g\",{id:\"coffee-bean1\"})),e(\"g\",{id:\"coffee-bean-filled\"}),e(\"g\",{id:\"coffee-beans-filled\"},e(\"g\",{id:\"coffee-bean2\"})),e(\"g\",{id:\"clipboard\"}),e(\"g\",{id:\"clipboard-paste\"}),e(\"g\",{id:\"clipboard-copy\"}),e(\"g\",{id:\"Layer1\"}))),qe=ct;function be(){return e(\"svg\",{width:\"25px\",height:\"25px\",viewBox:\"0 0 24 24\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\"},e(\"path\",{\"fill-rule\":\"evenodd\",\"clip-rule\":\"evenodd\",d:\"M12.75 13.9393L15.9697 10.7197L17.0303 11.7803L12 16.8107L6.96967 11.7803L8.03033 10.7197L11.25 13.9393L11.25 4.5L12.75 4.5L12.75 13.9393Z\",fill:\"lightcoral\"}),e(\"path\",{\"fill-rule\":\"evenodd\",\"clip-rule\":\"evenodd\",d:\"M23 12C23 18.0751 18.0751 23 12 23C5.92487 23 1 18.0751 1 12C1 5.92487 5.92487 1 12 1C18.0751 1 23 5.92487 23 12ZM3.00683 12C3.00683 16.9668 7.03321 20.9932 12 20.9932C16.9668 20.9932 20.9932 16.9668 20.9932 12C20.9932 7.03321 16.9668 3.00683 12 3.00683C7.03321 3.00683 3.00683 7.03321 3.00683 12Z\",fill:\"bisque\"}))}function ye(){return e(\"svg\",{width:\"25px\",height:\"25px\",viewBox:\"0 0 24 24\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\"},e(\"path\",{d:\"M13.8876 9.9348C14.9625 10.8117 15.5 11.2501 15.5 12C15.5 12.7499 14.9625 13.1883 13.8876 14.0652C13.5909 14.3073 13.2966 14.5352 13.0261 14.7251C12.7888 14.8917 12.5201 15.064 12.2419 15.2332C11.1695 15.8853 10.6333 16.2114 10.1524 15.8504C9.6715 15.4894 9.62779 14.7336 9.54038 13.2222C9.51566 12.7947 9.5 12.3757 9.5 12C9.5 11.6243 9.51566 11.2053 9.54038 10.7778C9.62779 9.26636 9.6715 8.51061 10.1524 8.1496C10.6333 7.78859 11.1695 8.11466 12.2419 8.76679C12.5201 8.93597 12.7888 9.10831 13.0261 9.27492C13.2966 9.46483 13.5909 9.69274 13.8876 9.9348Z\",stroke:\"lightcoral\",\"stroke-width\":\"2\"}),e(\"path\",{\"fill-rule\":\"evenodd\",\"clip-rule\":\"evenodd\",d:\"M23 12C23 18.0751 18.0751 23 12 23C5.92487 23 1 18.0751 1 12C1 5.92487 5.92487 1 12 1C18.0751 1 23 5.92487 23 12ZM3.00683 12C3.00683 16.9668 7.03321 20.9932 12 20.9932C16.9668 20.9932 20.9932 16.9668 20.9932 12C20.9932 7.03321 16.9668 3.00683 12 3.00683C7.03321 3.00683 3.00683 7.03321 3.00683 12Z\",fill:\"bisque\"}))}var $e=()=>e(\"svg\",{fill:\"bisque\",width:\"20px\",height:\"20px\",viewBox:\"0 0 64 64\",version:\"1.1\",xmlns:\"http://www.w3.org/2000/svg\",style:\"fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2;\"},e(\"rect\",{id:\"Icons\",x:\"-896\",y:\"-256\",width:\"1280\",height:\"800\",style:\"fill:none;\"}),e(\"g\",{id:\"Icons1\"},e(\"g\",{id:\"Strike\"}),e(\"g\",{id:\"H1\"}),e(\"g\",{id:\"H2\"}),e(\"g\",{id:\"H3\"}),e(\"g\",{id:\"list-ul\"}),e(\"g\",{id:\"hamburger-1\"}),e(\"g\",{id:\"hamburger-2\"}),e(\"g\",{id:\"list-ol\"}),e(\"g\",{id:\"list-task\"}),e(\"g\",{id:\"trash\"}),e(\"g\",{id:\"vertical-menu\"}),e(\"g\",{id:\"horizontal-menu\"}),e(\"g\",{id:\"sidebar-2\"}),e(\"g\",{id:\"Pen\"}),e(\"g\",{id:\"Pen1\"}),e(\"g\",{id:\"clock\"}),e(\"g\",{id:\"external-link\"}),e(\"g\",{id:\"hr\"}),e(\"g\",{id:\"info\"}),e(\"g\",{id:\"warning\"}),e(\"g\",{id:\"plus-circle\"}),e(\"g\",{id:\"minus-circle\"}),e(\"g\",{id:\"vue\"}),e(\"g\",{id:\"cog\"}),e(\"g\",{id:\"logo\"}),e(\"g\",{id:\"radio-check\"}),e(\"g\",{id:\"eye-slash\"}),e(\"g\",{id:\"eye\"},e(\"path\",{d:\"M32.513,13.926c10.574,0.15 19.141,9.894 23.487,18.074c0,0 -1.422,2.892 -2.856,4.895c-0.694,0.969 -1.424,1.913 -2.191,2.826c-0.547,0.65 -1.112,1.283 -1.698,1.898c-5.237,5.5 -12.758,9.603 -20.7,8.01c-8.823,-1.77 -15.732,-9.498 -20.058,-17.629c0,0 1.248,-2.964 2.69,-4.964c0.646,-0.897 1.324,-1.77 2.034,-2.617c0.544,-0.649 1.108,-1.282 1.691,-1.897c4.627,-4.876 10.564,-8.63 17.601,-8.596Zm-0.037,4c-5.89,-0.022 -10.788,3.267 -14.663,7.35c-0.527,0.555 -1.035,1.127 -1.527,1.713c-0.647,0.772 -1.265,1.569 -1.854,2.386c-0.544,0.755 -1.057,1.805 -1.451,2.59c3.773,6.468 9.286,12.323 16.361,13.742c6.563,1.317 12.688,-2.301 17.016,-6.846c0.529,-0.555 1.04,-1.128 1.534,-1.715c0.7,-0.833 1.366,-1.694 1.999,-2.579c0.557,-0.778 1.144,-1.767 1.588,-2.567c-3.943,-6.657 -10.651,-13.944 -19.003,-14.074Z\"}),e(\"path\",{d:\"M32.158,23.948c4.425,0 8.018,3.593 8.018,8.017c0,4.425 -3.593,8.017 -8.018,8.017c-4.424,0 -8.017,-3.592 -8.017,-8.017c0,-4.424 3.593,-8.017 8.017,-8.017Zm0,4.009c2.213,0 4.009,1.796 4.009,4.008c0,2.213 -1.796,4.009 -4.009,4.009c-2.212,0 -4.008,-1.796 -4.008,-4.009c0,-2.212 1.796,-4.008 4.008,-4.008Z\"})),e(\"g\",{id:\"toggle-off\"}),e(\"g\",{id:\"shredder\"}),e(\"g\",{id:\"spinner--loading--dots-\"}),e(\"g\",{id:\"react\"}),e(\"g\",{id:\"check-selected\"}),e(\"g\",{id:\"turn-off\"}),e(\"g\",{id:\"code-block\"}),e(\"g\",{id:\"user\"}),e(\"g\",{id:\"coffee-bean\"}),e(\"g\",{id:\"coffee-beans\"},e(\"g\",{id:\"coffee-bean1\"})),e(\"g\",{id:\"coffee-bean-filled\"}),e(\"g\",{id:\"coffee-beans-filled\"},e(\"g\",{id:\"coffee-bean2\"})),e(\"g\",{id:\"clipboard\"}),e(\"g\",{id:\"clipboard-paste\"}),e(\"g\",{id:\"clipboard-copy\"}),e(\"g\",{id:\"Layer1\"})));function Ce(){return e(\"svg\",{width:\"25px\",viewBox:\"-0.5 0 25 25\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\"},e(\"path\",{d:\"M12 22.4199C17.5228 22.4199 22 17.9428 22 12.4199C22 6.89707 17.5228 2.41992 12 2.41992C6.47715 2.41992 2 6.89707 2 12.4199C2 17.9428 6.47715 22.4199 12 22.4199Z\",stroke:\"bisque\",\"stroke-width\":\"1.5\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),e(\"path\",{d:\"M8 13.8599L10.87 10.8C11.0125 10.6416 11.1868 10.5149 11.3815 10.4282C11.5761 10.3415 11.7869 10.2966 12 10.2966C12.2131 10.2966 12.4239 10.3415 12.6185 10.4282C12.8132 10.5149 12.9875 10.6416 13.13 10.8L16 13.8599\",stroke:\"lightcoral\",\"stroke-width\":\"1.5\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}))}var Ve={fontFamily:'-apple-system, BlinkMacSystemFont, \"Segoe UI\", Helvetica, Arial',display:\"inline-block\",borderRadius:3,padding:\"10px 10px\",color:\"#f8f8f2\",textShadow:\"1px 1px black\",whiteSpace:\"pre-wrap\"};var dt=/(\"(\\\\u[a-zA-Z0-9]{4}|\\\\[^u]|[^\\\\\"])*\"(\\s*:)?|\\b(true|false|null)\\b|-?\\d+(?:\\.\\d*)?(?:[eE][+\\-]?\\d+)?)/g,pt=a=>JSON.stringify(a,mt,2).replace(/&/g,\"&\").replace(//g,\">\").replace(dt,t=>{let o=\"cute-number\",i=t;return/^\"/.test(t)?/:$/.test(t)?(o=\"cute-key\",i=i.replace(\":\",':')):t==='\"undefined\"'?o=\"cute-undefined\":t==='\"[Function]\"'?o=\"cute-function\":o=\"cute-string\":/true|false/.test(t)?o=\"cute-boolean\":/null/.test(t)&&(o=\"cute-null\"),`${i}`}),mt=(a,s)=>typeof s==\"function\"?\"[Function]\":typeof s>\"u\"?\"undefined\":s,Pe=a=>pt(a).replace(/\"/g,\"\");var H=({jsonData:a})=>{let s=Pe(a);return e(q,null,e(\"pre\",{style:Ve,dangerouslySetInnerHTML:{__html:s}}))};function Be({baseUrl:a}){let{e2eForms:s,setE2eForms:t}=I(),[o,i]=C(!0),[u,p]=C(!1),[l,r]=C({allReqPerformance:0,numberRequest:0,sequenceDetail:[]}),b=(m,g)=>{if(!(m===0&&g<=0)){let c=s[m];s.splice(m,1),s.splice(g,0,c),t([...s])}},N=m=>{s[m],s.splice(m,1),t([...s])},[y,S]=C(\"e2e\"),[R,h]=C([]),z=()=>{let m=`data:text/json;chatset=utf-8,${encodeURIComponent(JSON.stringify(s))}`,g=document.createElement(\"a\");g.href=m,g.download=\"Configdata.json\",g.click()},Y=m=>{let g=new FileReader;g.readAsText(m.target.files[0],\"UTF-8\"),g.onload=c=>{let E=JSON.parse(c.target.result);t(E)}},K=()=>{let m=`data:text/json;chatset=utf-8,${encodeURIComponent(JSON.stringify(R))}`,g=document.createElement(\"a\");g.href=m,g.download=\"data.json\",g.click()},Q=async({baseUrl:m,options:g})=>await(await fetch(`${m}lesan`,g)).json(),L=(m,g)=>{for(let c in m){typeof m[c]==\"object\"&&L(m[c],g);let E=m[c];if(typeof E==\"string\"&&E.includes(\"{\")){let j=[];for(let _=0;_E.slice(_+1,M[F])).forEach(_=>{for(let F of g)F.key===_&&(m[c]=m[c].replace(`{${_}}`,F.value))})}}},O=async()=>{let m=new Set,g=performance.now(),c={allReqPerformance:0,numberRequest:0,sequenceDetail:[]},E=0;for await(let M of s){let B=JSON.parse(M.bodyHeaders);L(B,m);let _={method:\"POST\",headers:{\"Content-Type\":\"application/json\",...B.headers},body:JSON.stringify(B.body)},F,ee=performance.now(),w=0,n=0,f=0;for(let d=0;d[...Z,{id:A(),request:{..._,body:B.body},response:F,responseTime:J-D}])}let T=performance.now();[...M.captures].filter(d=>d.key&&d.value).map(d=>{let D=d.value.split(\"[\"),J=[];return D.forEach(Z=>{let re=Z.slice(0,Z.indexOf(\"]\"));isNaN(Number(re))||(re=Number(re)),J.push(re)}),J.shift(),{key:d.key,value:J}}).forEach(d=>{if(d.value.length>0){let D=F;d.value.forEach(J=>{D=D[J]}),m.add({key:d.key,value:D})}}),c.sequenceDetail.push({bodyHeader:M.bodyHeaders,repeat:w,time:T-ee,success:n,fails:f})}let j=performance.now();r({...c,numberRequest:E,allReqPerformance:j-g})},V=m=>{let g=[...s];g[m].repeat+=1,t([...g])},P=m=>{let g=[...s];g[m].repeat>0&&(g[m].repeat-=1),t([...g])};return e(\"div\",{className:\"e2e modal-content\"},y===\"result\"?e(q,null,e(\"br\",null),e(\"div\",{className:\"results\"},e(\"div\",{className:\"results-buttons\"},e(\"button\",{className:\"btn e2e-back-button\",onClick:()=>{h([]),S(\"e2e\")}},e(se,null),e(\"span\",null,\"Back\")),e(\"button\",{className:\"btn e2e-back-button e2e-export_results-button\",onClick:K},e(G,null),e(\"span\",null,\"Export\"))),e(\"div\",{className:\"container-e2e\",onClick:()=>i(!o)},e(\"span\",{className:\"container-header\"},\"REQUESTS\"),e(\"span\",{className:\"container-header\"},o?e(qe,null):e($e,null))),o&&R.map(m=>e(\"div\",{key:m.id,className:\"container-detail\"},e(\"section\",{className:\"container-re\"},e(\"span\",{className:\"container-re-title\"},\"REQUEST\"),e(H,{jsonData:m.request})),e(\"section\",{className:\"container-re container-response\"},e(\"span\",{className:\"container-re-title\"},\"RESPONSE\"),e(\"span\",{className:\"e2e-re-timeNumber-request\"},m.responseTime,\"ms\"),e(H,{jsonData:m.response}))))),l.sequenceDetail.map((m,g)=>e(\"div\",{key:g,className:\"container-detail\"},e(\"section\",{className:\"sequence-re\"},e(\"span\",{className:\"container-re-title\"},\"Body Header\"),e(H,{jsonData:JSON.parse(m.bodyHeader)})),e(\"section\",{className:\"sequence-re sequence-response \"},e(\"span\",{className:\"container-re-title\"},\"Description\"),e(\"div\",{className:\"detail-sequence\"},e(\"p\",null,\"you send \",e(\"span\",null,m.repeat),\" times of this request\"),e(\"p\",null,\"the avrage time for each request is\",e(\"span\",null,\" \",m.time/m.repeat,\"ms\")),e(\"p\",null,\"and whole time is\",e(\"span\",null,\" \",m.time,\"ms \")),e(\"p\",null,\"this sequence sends\",e(\"span\",null,\" \",m.success,\" \"),\" success request and\",\" \",e(\"span\",null,m.fails),\" it be fails\")))))):y===\"e2e\"?e(q,null,e(\"div\",{className:\"sidebar__section sidebar__section--headers\"},s.map((m,g)=>e(q,null,e(\"div\",{className:\"sidebar__input-double\",key:m.id},s.length>1&&e(\"div\",{className:\"e2e-move-buttons\"},e(\"div\",{className:\"e2e-move-div\",onClick:()=>b(g,g-1)},e(Ce,null)),e(\"div\",{className:\"e2e-move-div\",onClick:()=>b(g,g+1)},e(ve,null)),e(\"div\",{className:\"e2e-move-div e2e-move-close\",onClick:()=>N(g)},e(U,null))),e(\"div\",{className:\"sidebar__section-body-heading\"},e(\"div\",{className:\"sidebar__section-heading\"},\"set test body and headers\"),e(\"textarea\",{placeholder:\"please paste a request body here\",value:m.bodyHeaders,name:`${m.id}-body`,rows:18,onChange:c=>{let E=[...s];E[g].bodyHeaders=c.target.value,t([...E])}})),e(\"div\",{className:\"sidebar__section-capture\"},e(\"div\",{className:\"e2e_sidebar__section-heading\"},\"set repeat time\"),e(\"div\",{className:\"repeat__number\"},e(\"input\",{className:\"input\",placeholder:\"set repeat number\",value:m.repeat,name:`${m.id}-repeat`,type:\"number\",onChange:c=>{let E=[...s];E[g].repeat=c.target.value,t([...E])}}),e(\"button\",{className:\"e2e-back-button e2e-export_results-button\",onClick:()=>V(g)},\"+\"),e(\"button\",{className:\"e2e-back-button e2e-export_results-button\",onClick:()=>P(g)},\"-\")),e(\"div\",{className:\"e2e_sidebar__section-heading\"},\"capture variables\"),e(\"button\",{className:\"btn btn--add e2e-back-button e2e-export_results-button e2e-add-capture \",onClick:()=>{let c=[...s];c[g].captures.push({key:\"\",value:\"\"}),t([...c])}},\"add capture\"),m.captures.map((c,E)=>e(q,null,e(\"div\",{className:\"sidebar__section-add-capture\"},e(\"input\",{className:\"input\",placeholder:\"set a variable name\",value:c.key,onChange:j=>{let M=[...s];M[g].captures[E].key=j.target.value,t([...M])}}),e(\"input\",{className:\"input\",placeholder:\"set a value for variable\",value:c.value,onChange:j=>{let M=[...s];M[g].captures[E].value=j.target.value,t([...M])}})),e(\"hr\",null)))))))),e(\"button\",{className:\"btn btn-show-results-buttons \",onClick:()=>p(!u)},\"show btn\"),e(\"div\",{className:\"results-buttons\",\"data-show\":u===!0},e(\"button\",{className:\"btn btn-e2e-action e2e-back-button e2e-export_results-button\",onClick:()=>{t([...s,ue()])}},e(ae,null),e(\"span\",null,\"Add\")),e(\"button\",{className:\"btn btn-e2e-action e2e-back-button e2e-run-botton e2e-export_results-button\",onClick:async()=>{S(\"result\"),await O()}},e(ye,null),e(\"span\",null,\"Run E2E Test\")),e(\"input\",{id:\"actual-btn\",type:\"file\",onChange:Y,hidden:!0}),e(\"label\",{htmlFor:\"actual-btn\",className:\"btn btn-e2e-action e2e-back-button e2e-export_results-button\"},e(be,null),e(\"span\",null,\"Import\")),e(\"button\",{className:\"btn btn-e2e-action e2e-back-button e2e-export_results-button\",onClick:z},e(G,null),e(\"span\",null,\"Export\")),e(\"button\",{onClick:()=>S(\"help\"),className:\"btn btn-e2e-action e2e-back-button e2e-export_results-button\"},e(oe,null),e(\"span\",null,\"Help\")))):y===\"help\"?e(je,{setView:S}):\"\")}function de(a){let s=Math.floor(a/36e5),t=Math.floor(a%36e5/6e4),o=Math.floor(a%36e4%6e4/1e3);return s>0?`${s}h ${t}m ${o}s`:t>0?`${t}m ${o}s`:o>0?`${o}s`:`${a}ms`}var Ze=(a,s)=>{let t=W(!0);$(()=>{let o=()=>{};if(t.current?t.current=!1:o=a(),o&&typeof o==\"function\")return o},s)};function Se(){return e(\"svg\",{id:\"Layer_1\",\"data-name\":\"Layer 1\",xmlns:\"http://www.w3.org/2000/svg\",viewBox:\"0 0 105.7 122.88\",width:20},e(\"path\",{fill:\"white\",d:\"M30.46,14.57V5.22A5.18,5.18,0,0,1,32,1.55v0A5.19,5.19,0,0,1,35.68,0H70a5.22,5.22,0,0,1,3.67,1.53l0,0a5.22,5.22,0,0,1,1.53,3.67v9.35h27.08a3.36,3.36,0,0,1,3.38,3.37V29.58A3.38,3.38,0,0,1,102.32,33H98.51l-8.3,87.22a3,3,0,0,1-2.95,2.69H18.43a3,3,0,0,1-3-2.95L7.19,33H3.37A3.38,3.38,0,0,1,0,29.58V17.94a3.36,3.36,0,0,1,3.37-3.37Zm36.27,0V8.51H39v6.06ZM49.48,49.25a3.4,3.4,0,0,1,6.8,0v51.81a3.4,3.4,0,1,1-6.8,0V49.25ZM69.59,49a3.4,3.4,0,1,1,6.78.42L73,101.27a3.4,3.4,0,0,1-6.78-.43L69.59,49Zm-40.26.42A3.39,3.39,0,1,1,36.1,49l3.41,51.8a3.39,3.39,0,1,1-6.77.43L29.33,49.46ZM92.51,33.38H13.19l7.94,83.55H84.56l8-83.55Z\"}))}function Je({setFormFromHistory:a}){let{history:s,setHistory:t,deleteItemHistory:o}=I(),[i,u]=C(\"\");return Ze(()=>{localStorage.setItem(\"localHistory\",JSON.stringify(s))},[s]),e(\"div\",{className:\"history modal-content\"},s&&s?.length>0?e(\"div\",{className:\"\"},e(\"br\",null),s.map((p,l)=>e(\"div\",{className:\"container-detail\",id:p.id},e(\"section\",{className:\"container-re\"},e(\"div\",{style:{position:\"relative\"}},e(\"span\",{className:\"container-re-title\"},\"REQUEST\"),e(\"span\",{className:\"history-re-detail-date\"},p.reqDate)),e(\"div\",{className:\"container-re-detail\"},e(\"div\",{className:\"container-re-detail-title\"},\" \",e(H,{jsonData:p.request.body.model}),e(\"span\",null,\"|\"),e(\"div\",null,e(H,{jsonData:p.request.body.act}))),i===p.id?e(\"button\",{onClick:()=>u(\"\"),className:\"history-re-detail-button\"},\"Hide\",e(\"span\",{className:\"history-re-detail-button-icon\"},\"\\u2013\")):e(\"button\",{onClick:()=>{u(p.id),document.getElementById(p.id)?.scrollIntoView()},className:\"history-re-detail-button\"},\"Show\",\" \",e(\"span\",{className:\"history-re-detail-button-icon\"},\"+\"))),e(\"div\",{className:\"history-re-detail-complete\",\"data-show\":i===p.id},\" \",e(H,{jsonData:p.request}))),e(\"section\",{className:\"container-re container-response\"},e(\"div\",{className:\"history-re-title_delete\",style:{position:\"relative\"},onClick:r=>{r.stopPropagation(),o(l)}},e(\"span\",{className:\"history-re-delete\"},e(U,null)),e(\"span\",{className:\"container-re-title history-response-title\"},\"RESPONSE\"),e(\"span\",{className:\"history-re-detail-date history-response-took\"},de(p.response.tookTime))),e(\"div\",{className:\"container-re-detail\"},e(\"div\",{className:\"history-re-detail-title\"},e(\"div\",{className:\"history-re-response-title\"},\" \",e(\"span\",{className:\"history-re-response-title-status\"},\"success:\"),e(\"div\",{className:\"history-re-response-info\"},e(H,{jsonData:p.response.success})))),e(\"button\",{onClick:()=>a(p.request),className:\"history-re-detail-button\"},\"Use\",\" \",e(\"span\",{className:\"history-re-detail-button-icon\"},\"\\u279C\",\" \"))),e(\"div\",{className:\"history-re-detail-complete\",\"data-show\":i===p.id},\" \",e(H,{jsonData:p.response})))))):e(\"span\",{className:\"no-history\"},'\"There is no history to display\"'),s&&s.length>0?e(\"div\",{className:\"clear-history\"},e(\"button\",{className:\"btn clear-history-button tooltip\",onClick:()=>{confirm(\"Clear All History?\")==!0&&t([])}},\" \",e(Se,null),e(\"span\",{className:\"tooltip-text\"},\"Clear History\"))):\"\")}function Ee(){return e(\"svg\",{width:\"25px\",viewBox:\"0 0 26 24\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\"},e(\"g\",{id:\"SVGRepo_bgCarrier\",\"stroke-width\":\"0\"}),e(\"g\",{id:\"SVGRepo_tracerCarrier\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),e(\"g\",{id:\"SVGRepo_iconCarrier\"},\" \",e(\"path\",{d:\"M4 6V19C4 20.6569 5.34315 22 7 22H17C18.6569 22 20 20.6569 20 19V9C20 7.34315 18.6569 6 17 6H4ZM4 6V5\",stroke:\"lightcoral\",\"stroke-width\":\"1.5\"}),\" \",e(\"path\",{d:\"M18 6.00002V6.75002H18.75V6.00002H18ZM15.7172 2.32614L15.6111 1.58368L15.7172 2.32614ZM4.91959 3.86865L4.81353 3.12619H4.81353L4.91959 3.86865ZM5.07107 6.75002H18V5.25002H5.07107V6.75002ZM18.75 6.00002V4.30604H17.25V6.00002H18.75ZM15.6111 1.58368L4.81353 3.12619L5.02566 4.61111L15.8232 3.0686L15.6111 1.58368ZM4.81353 3.12619C3.91638 3.25435 3.25 4.0227 3.25 4.92895H4.75C4.75 4.76917 4.86749 4.63371 5.02566 4.61111L4.81353 3.12619ZM18.75 4.30604C18.75 2.63253 17.2678 1.34701 15.6111 1.58368L15.8232 3.0686C16.5763 2.96103 17.25 3.54535 17.25 4.30604H18.75ZM5.07107 5.25002C4.89375 5.25002 4.75 5.10627 4.75 4.92895H3.25C3.25 5.9347 4.06532 6.75002 5.07107 6.75002V5.25002Z\",fill:\"lightcoral\"}),\" \",e(\"path\",{opacity:\"0.5\",d:\"M8 12H16\",stroke:\"lightcoral\",\"stroke-width\":\"1.5\",\"stroke-linecap\":\"round\"}),\" \",e(\"path\",{opacity:\"0.5\",d:\"M8 15.5H13.5\",stroke:\"lightcoral\",\"stroke-width\":\"1.5\",\"stroke-linecap\":\"round\"}),\" \"))}function Te(){return e(\"svg\",{width:\"25px\",viewBox:\"0 0 24 24\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\"},e(\"path\",{\"fill-rule\":\"evenodd\",opacity:\"0.5\",\"clip-rule\":\"evenodd\",d:\"M5.07868 5.06891C8.87402 1.27893 15.0437 1.31923 18.8622 5.13778C22.6824 8.95797 22.7211 15.1313 18.9262 18.9262C15.1312 22.7211 8.95793 22.6824 5.13774 18.8622C2.87389 16.5984 1.93904 13.5099 2.34047 10.5812C2.39672 10.1708 2.775 9.88377 3.18537 9.94002C3.59575 9.99627 3.88282 10.3745 3.82658 10.7849C3.4866 13.2652 4.27782 15.881 6.1984 17.8016C9.44288 21.0461 14.6664 21.0646 17.8655 17.8655C21.0646 14.6664 21.046 9.44292 17.8015 6.19844C14.5587 2.95561 9.33889 2.93539 6.13935 6.12957L6.88705 6.13333C7.30126 6.13541 7.63535 6.47288 7.63327 6.88709C7.63119 7.3013 7.29372 7.63539 6.87951 7.63331L4.33396 7.62052C3.92269 7.61845 3.58981 7.28556 3.58774 6.8743L3.57495 4.32874C3.57286 3.91454 3.90696 3.57707 4.32117 3.57498C4.73538 3.5729 5.07285 3.907 5.07493 4.32121L5.07868 5.06891Z\",fill:\"lightcoral\"}),e(\"path\",{d:\"M12 7.25C12.4142 7.25 12.75 7.58579 12.75 8V11.6893L15.0303 13.9697C15.3232 14.2626 15.3232 14.7374 15.0303 15.0303C14.7374 15.3232 14.2626 15.3232 13.9697 15.0303L11.5429 12.6036C11.3554 12.416 11.25 12.1617 11.25 11.8964V8C11.25 7.58579 11.5858 7.25 12 7.25Z\",fill:\"lightcoral\"}))}function _e(){return e(\"svg\",{height:\"25px\",width:\"25px\",version:\"1.1\",id:\"Layer_1\",xmlns:\"http://www.w3.org/2000/svg\",viewBox:\"0 0 512 512\",fill:\"#000000\"},e(\"g\",{id:\"SVGRepo_bgCarrier\",\"stroke-width\":\"0\"}),e(\"g\",{id:\"SVGRepo_tracerCarrier\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),e(\"g\",{id:\"SVGRepo_iconCarrier\"},\" \",e(\"circle\",{opacity:.34,style:\"fill:lightcoral;\",cx:\"256.602\",cy:\"226.267\",r:\"171.059\"}),\" \",e(\"path\",{style:\"fill:lightcoral\",d:\"M482.195,226.196C482.195,101.471,380.725,0,256.001,0S29.804,101.471,29.804,226.196 c0,7.409,6.007,13.416,13.416,13.416s13.416-6.008,13.416-13.416c0-109.93,89.434-199.363,199.363-199.363 s199.363,89.434,199.363,199.363c0,109.928-89.434,199.362-199.363,199.362h-23.276l33.282-37.255 c4.937-5.525,4.458-14.007-1.067-18.944c-5.525-4.937-14.008-4.457-18.944,1.068l-47.576,53.255c-7.788,8.718-7.788,21.866,0,30.584 l47.576,53.255c2.651,2.968,6.322,4.478,10.01,4.478c3.181,0,6.375-1.126,8.934-3.41c5.526-4.937,6.004-13.419,1.067-18.944 l-33.282-37.255h23.276C380.725,452.39,482.195,350.919,482.195,226.196z\"}),\" \"))}function we(){return e(\"svg\",{fill:\"lightcoral\",height:\"25px\",width:\"25px\",viewBox:\"0 0 436.668 436.668\"},e(\"g\",{id:\"SVGRepo_bgCarrier\",\"stroke-width\":\"0\"}),e(\"g\",{id:\"SVGRepo_tracerCarrier\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),e(\"g\",{id:\"SVGRepo_iconCarrier\"},\" \",e(\"g\",null,\" \",e(\"path\",{opacity:.34,d:\"M203.334,85.818v59.141c4.884-0.8,9.893-1.223,15-1.223s10.116,0.423,15,1.223V85.818c14.657-5.935,25-20.296,25-37.081 c0-22.092-17.909-40-40-40s-40,17.908-40,40C178.334,65.522,188.677,79.883,203.334,85.818z\"}),\" \",e(\"path\",{opacity:.34,d:\"M70.642,204.021l56.242,18.274c1.539-10.139,4.732-19.74,9.292-28.525L79.912,175.49 c-1.115-15.774-11.577-30.049-27.541-35.236c-21.01-6.827-43.576,4.672-50.403,25.682c-6.827,21.01,4.672,43.576,25.682,50.403 C43.614,221.525,60.468,216.126,70.642,204.021z\"}),\" \",e(\"path\",{opacity:.34,d:\"M152.577,301.224l-34.792,47.887c-15.346-3.813-32.156,1.725-42.022,15.305c-12.985,17.872-9.023,42.887,8.849,55.872 s42.887,9.023,55.872-8.849c9.866-13.579,9.939-31.277,1.571-44.694l34.772-47.86C167.8,314.333,159.616,308.347,152.577,301.224z\"}),\" \",e(\"path\",{opacity:.34,d:\"M318.883,349.112l-34.792-47.887c-7.039,7.122-15.223,13.109-24.25,17.661l34.772,47.86 c-8.369,13.417-8.296,31.115,1.571,44.694c12.985,17.872,38,21.834,55.872,8.849s21.834-38,8.849-55.872 C351.038,350.837,334.229,345.298,318.883,349.112z\"}),\" \",e(\"path\",{opacity:.34,d:\"M434.699,165.936c-6.827-21.01-29.393-32.508-50.403-25.682c-15.964,5.187-26.426,19.462-27.541,35.236l-56.263,18.281 c4.559,8.784,7.752,18.386,9.292,28.525l56.242-18.274c10.174,12.105,27.028,17.504,42.992,12.318 C430.028,209.512,441.526,186.946,434.699,165.936z\"}),\" \",e(\"path\",{d:\"M280.834,236.237c0-34.462-28.037-62.5-62.5-62.5s-62.5,28.038-62.5,62.5s28.037,62.5,62.5,62.5 S280.834,270.7,280.834,236.237z\"}),\" \"),\" \"))}function Ne(){return e(\"svg\",{width:\"25px\",height:25,viewBox:\"0 0 24 24\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\"},e(\"path\",{d:\"M3 9.10986V14.8799C3 16.9999 3 16.9999 5 18.3499L10.5 21.5299C11.33 22.0099 12.68 22.0099 13.5 21.5299L19 18.3499C21 16.9999 21 16.9999 21 14.8899V9.10986C21 6.99986 21 6.99986 19 5.64986L13.5 2.46986C12.68 1.98986 11.33 1.98986 10.5 2.46986L5 5.64986C3 6.99986 3 6.99986 3 9.10986Z\",stroke:\"lightcoral\",\"stroke-width\":\"1.5\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\",opacity:.34}),e(\"path\",{d:\"M12 15C13.6569 15 15 13.6569 15 12C15 10.3431 13.6569 9 12 9C10.3431 9 9 10.3431 9 12C9 13.6569 10.3431 15 12 15Z\",stroke:\"lightcoral\",\"stroke-width\":\"1.5\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}))}function xe(){return e(\"svg\",{width:\"25px\",viewBox:\"0 0 24 24\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\"},e(\"path\",{opacity:.5,d:\"M9.74872 2.49415L18.1594 7.31987M9.74872 2.49415L2.65093 14.7455C1.31093 17.0584 2.10615 20.0159 4.42709 21.3513C6.74803 22.6867 9.7158 21.8942 11.0558 19.5813L12.5511 17.0003L14.1886 14.1738L15.902 11.2163L18.1594 7.31987M9.74872 2.49415L8.91283 2M18.1594 7.31987L19 7.80374\",stroke:\"lightcoral\",\"stroke-width\":\"1.5\",\"stroke-linecap\":\"round\"}),e(\"path\",{d:\"M15.9021 11.2164L13.3441 9.74463M14.1887 14.1739L9.98577 11.7557M12.5512 17.0004L9.93848 15.4972\",stroke:\"lightcpral\",\"stroke-width\":\"1.5\",\"stroke-linecap\":\"round\"}),e(\"path\",{d:\"M22 14.9166C22 16.0672 21.1046 16.9999 20 16.9999C18.8954 16.9999 18 16.0672 18 14.9166C18 14.1967 18.783 13.2358 19.3691 12.6174C19.7161 12.2512 20.2839 12.2512 20.6309 12.6174C21.217 13.2358 22 14.1967 22 14.9166Z\",stroke:\"lightcoral\",\"stroke-width\":\"1.5\"}))}function pe(){return e(\"svg\",{width:\"28px\",fill:\"white\",viewBox:\"0 0 32 32\",style:\"fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2;\",version:\"1.1\"},e(\"path\",{d:\"M9.101,7l8.899,0c1.857,-0 3.637,0.737 4.95,2.05c1.313,1.313 2.05,3.093 2.05,4.95l0,8.899c0.953,-0.195 1.837,-0.665 2.536,-1.363c0.937,-0.938 1.464,-2.21 1.464,-3.536c0,-2.977 0,-7.023 0,-10c0,-1.326 -0.527,-2.598 -1.464,-3.536c-0.938,-0.937 -2.21,-1.464 -3.536,-1.464c-2.977,0 -7.023,0 -10,0c-1.326,-0 -2.598,0.527 -3.536,1.464c-0.698,0.699 -1.168,1.583 -1.363,2.536Z\"}),e(\"path\",{d:\"M23,14c0,-1.326 -0.527,-2.598 -1.464,-3.536c-0.938,-0.937 -2.21,-1.464 -3.536,-1.464c-2.977,0 -7.023,0 -10,0c-1.326,-0 -2.598,0.527 -3.536,1.464c-0.937,0.938 -1.464,2.21 -1.464,3.536c0,2.977 0,7.023 0,10c-0,1.326 0.527,2.598 1.464,3.536c0.938,0.937 2.21,1.464 3.536,1.464c2.977,-0 7.023,-0 10,-0c1.326,0 2.598,-0.527 3.536,-1.464c0.937,-0.938 1.464,-2.21 1.464,-3.536l0,-10Zm-15,10l10,0c0.552,0 1,-0.448 1,-1c0,-0.552 -0.448,-1 -1,-1l-10,0c-0.552,0 -1,0.448 -1,1c0,0.552 0.448,1 1,1Zm0,-4l10,0c0.552,0 1,-0.448 1,-1c0,-0.552 -0.448,-1 -1,-1l-10,0c-0.552,0 -1,0.448 -1,1c0,0.552 0.448,1 1,1Zm0,-4l10,0c0.552,0 1,-0.448 1,-1c0,-0.552 -0.448,-1 -1,-1l-10,0c-0.552,0 -1,0.448 -1,1c0,0.552 0.448,1 1,1Z\"}),e(\"g\",{id:\"Icon\"}))}function ke(){return e(\"svg\",{width:25,height:25,fill:\"#ffffff\",version:\"1.1\",id:\"Capa_1\",xmlns:\"http://www.w3.org/2000/svg\",viewBox:\"0 0 104.778 104.778\"},e(\"g\",{id:\"SVGRepo_bgCarrier\",\"stroke-width\":\"0\"}),e(\"g\",{id:\"SVGRepo_tracerCarrier\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),e(\"g\",{id:\"SVGRepo_iconCarrier\"},\" \",e(\"g\",null,\" \",e(\"path\",{d:\"M96.832,88.406l-23.02-39.908V21.959c4.385-1.595,7.447-5.797,7.447-10.618C81.26,5.089,76.176,0,69.928,0H42.6 c-6.251,0-11.334,5.089-11.334,11.341c0,4.815,3.07,9.017,7.457,10.618v26.55l-2.083,3.685V30.359c0-1.546-1.257-2.802-2.803-2.802 H8.723c-1.546,0-2.801,1.256-2.801,2.802v59.557c0,7.475,5.742,13.614,13.174,14.648c0.331,0.126,0.683,0.214,1.059,0.214h67.227 c4.79,0,8.433-1.762,10.282-4.979C99.503,96.598,99.208,92.543,96.832,88.406z M11.513,89.916v-6.079h8.254 c1.546,0,2.802-1.26,2.802-2.802c0-1.549-1.256-2.802-2.802-2.802h-8.254v-9.09h8.254c1.546,0,2.802-1.263,2.802-2.801 c0-1.555-1.256-2.802-2.802-2.802h-8.254v-9.097h8.254c1.546,0,2.802-1.256,2.802-2.801c0-1.55-1.256-2.803-2.802-2.803h-8.254 V33.149h19.512v56.767c0,5.095-4.375,9.248-9.756,9.248C15.883,99.17,11.513,95.011,11.513,89.916z M92.794,96.997 c-0.799,1.379-2.779,2.178-5.432,2.178H33.189c2.118-2.55,3.439-5.734,3.439-9.259V63.19c0.245-0.207,0.476-0.443,0.645-0.743 l6.679-11.82c0.236-0.422,0.364-0.898,0.364-1.379V19.776c0-1.415-1.048-2.603-2.449-2.78c-2.859-0.364-5.015-2.796-5.015-5.655 c0-3.161,2.571-5.738,5.731-5.738H69.91c3.165,0,5.734,2.577,5.734,5.738c0,2.859-2.155,5.286-5.017,5.655 c-1.401,0.178-2.446,1.365-2.446,2.78v29.472c0,0.493,0.122,0.977,0.374,1.401l23.396,40.559 C93.292,93.506,93.593,95.617,92.794,96.997z M76.466,79.53c0,5.412-4.377,9.794-9.801,9.794c-5.411,0-9.795-4.382-9.795-9.794 c0-5.406,4.384-9.795,9.795-9.795C72.089,69.735,76.466,74.124,76.466,79.53z M54.609,68.877c0,2.665-2.146,4.799-4.802,4.799 c-2.657,0-4.802-2.156-4.802-4.799c0-2.644,2.15-4.8,4.802-4.8C52.468,64.077,54.609,66.233,54.609,68.877z M58.195,58.048 c-1.672,0-3.015-1.341-3.015-3.01c0-1.667,1.343-3.009,3.015-3.009c1.663,0,3.015,1.343,3.015,3.009 C61.21,56.707,59.853,58.048,58.195,58.048z M49.534,86.315c0,1.669-1.352,3.009-3.016,3.009c-1.665,0-3.014-1.34-3.014-3.009 c0-1.663,1.349-3.016,3.014-3.016C48.182,83.3,49.534,84.652,49.534,86.315z M54.805,46.184c-2.185,0-3.956-1.771-3.956-3.957 c0-2.186,1.771-3.957,3.956-3.957c2.183,0,3.957,1.771,3.957,3.957C58.762,44.414,56.983,46.184,54.805,46.184z\"}),\" \"),\" \"))}function De(){return e(\"svg\",{version:\"1.1\",viewBox:\"0 0 29.756 29.756\",style:\"enable-background:new 0 0 29.756 29.756;\"},e(\"path\",{d:\"M29.049,5.009L28.19,4.151c-0.943-0.945-2.488-0.945-3.434,0L10.172,18.737l-5.175-5.173 c-0.943-0.944-2.489-0.944-3.432,0.001l-0.858,0.857c-0.943,0.944-0.943,2.489,0,3.433l7.744,7.752 c0.944,0.943,2.489,0.943,3.433,0L29.049,8.442C29.991,7.498,29.991,5.953,29.049,5.009z\"}))}function X(a){let s=W(null);return $(()=>{let t=o=>{s.current&&!s.current.contains(o?.target)&&a()};return document.addEventListener(\"click\",t),()=>{document.removeEventListener(\"click\",t)}},[s]),s}function ne({className:a=\"\"}){return e(\"svg\",{width:25,height:25,viewBox:\"0 0 24 24\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\",className:a},e(\"g\",{id:\"SVGRepo_bgCarrier\",\"stroke-width\":\"0\"}),e(\"g\",{id:\"SVGRepo_tracerCarrier\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),e(\"g\",{id:\"SVGRepo_iconCarrier\"},\" \",e(\"path\",{d:\"M6 9L12 15L18 9M12 9H12.01\",stroke:\"lightcoral\",\"stroke-width\":\"2\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),\" \"))}function ie({items:a,onClickItem:s,incomeActiveItem:t,canShow:o}){let[i,u]=C(!1),[p,l]=C(\"\");$(()=>{l(t||\"\")},[t]);let b=X(()=>{u(!1)});return e(\"div\",null,e(\"div\",{className:\"select\",disabled:o},e(\"div\",{className:`select--empty ${i===!0?\"active-select--empty\":\"\"}`,ref:b,onClick:()=>u(!i)},e(\"div\",{className:\"select--empty--left-side\"},\" \",e(\"span\",{className:`${p?\"select-empty--left-side--clear\":\"select-empty--left-side--clear--inactive\"}`,onClick:N=>{l(\"\"),s(\"\"),u(!1),N.stopPropagation()}},\"x\"),e(\"span\",null,p)),e(ne,null)),i&&e(\"div\",{className:\"select--sub-buttons\",\"data-show\":i},a?.map((N,y)=>e(\"div\",{className:`option ${N===p?\"active-option\":\"\"}`,onClick:()=>{l(N),s(N),u(!1)}},N)))))}var ut=({options:a,onChange:s})=>{let[t,o]=C([]),[i,u]=C(a),[p,l]=C(!1),r=S=>{if(t.includes(S)){let R=t.filter(h=>h.value!==S.value);o(R),u([...i,S]),s(R)}else{let R=i.filter(h=>h.value!==S.value);o([...t,S]),u(R),s([...t,S])}},b=()=>{o([]),s([]),u(a)},N=()=>{l(!p)},y=X(()=>{l(!1)});return e(\"div\",{ref:y,className:\"multi-select__wrapper\"},e(\"div\",{className:\"multi-select__field\",onClick:N},e(\"div\",{className:\"multi-select__selected-item-wrapper\"},t.map(S=>e(\"div\",{className:\"multi-select__selected-item\",key:S},e(\"div\",{className:\"multi-select__selected-item-text\"},S.label),e(\"div\",{className:\"multi-select__selected-item-btn\",role:\"button\",onClick:R=>{R.stopPropagation(),r(S)}},\"x\")))),e(\"div\",{className:\"multi-select__icons-wrapper\"},t.length?e(\"div\",{className:\"multi-select__close-icon-wrapper\",role:\"button\",onClick:S=>{S.stopPropagation(),b()}},e(\"span\",{className:\"multi-select__close-icon\"},\"x\")):null,e(\"div\",{className:\"multi-select__arrow-icon-wrapper\",role:\"button\"},e(ne,{className:\"multi-select__arrow-icon\"})))),p?e(\"div\",{className:\"multi-select__options\"},i.length?i.map(S=>e(\"div\",{key:S.value,onClick:R=>{R.stopPropagation(),r(S)},className:\"multi-select__option\"},e(\"div\",{className:\"multi-select__option-label\"},S.label))):e(\"div\",{className:\"multi-select__option--no-option\"},\"No Options!\")):null)},Ge=ut;var ft=({baseUrl:a,options:s})=>fetch(`${a}lesan`,s).then(t=>t.json()),Ue=({urlAddress:a})=>{let{activeTab:s,tabsData:t,actsObj:o,headers:i,history:u,setService:p,setSchema:l,setAct:r,setPostFields:b,setGetFields:N,setFormData:y,setHistory:S,setResponse:R,resetGetFields:h,resetPostFields:z,addE2eForm:Y,setModal:K}=I(),[Q,L]=C(!1),O=(n,f,T,v)=>{for(let k in T)T[k].type===\"enums\"?v[`${f}.${k}`]=n:O(n,`${f}.${k}`,T[k].schema,v);return v},V=W(null),P=n=>{let{name:f,value:T,type:v,alt:k}=n.target,d;v===\"number\"?d=Number(T):k===\"array\"||k===\"boolean\"?d=JSON.parse(T):d=T,y({data:{...t[s].formData,[f]:d},index:s})},m=({key:n,field:f,isMultiEnum:T=!1,formData:v})=>f.type===\"array\"?m({key:n,formData:v,field:f.schema,isMultiEnum:!0}):f.type===\"enums\"&&T?e(Ge,{options:Object.keys(f.schema).map(k=>({label:k,value:f.schema[k]})),onChange:k=>{let d=k.map(D=>D.value);y({data:{...v,[`set.${n}`]:d},index:s}),localStorage.setItem(\"localTabsData\",JSON.stringify(t))}}):f.type===\"enums\"?e(ie,{onClickItem:k=>{y({data:{...v,[`set.${n}`]:k},index:s}),localStorage.setItem(\"localTabsData\",JSON.stringify(t))},incomeActiveItem:v[`set.${n}`],items:Object.keys(f.schema)}):e(\"input\",{className:\"input\",placeholder:n,id:n,value:v[`set.${n}`],name:`set.${n}`,type:f.type===\"number\"?\"number\":\"string\",alt:f.type,onChange:P}),g=({getField:n,keyName:f,margin:T})=>e(\"div\",{style:{marginLeft:`${T+1}px`},className:\"sidebar__section_container\",key:`${s}.${f}`},e(\"div\",{className:\"sidebar__section-heading--subfields\"},f),Object.keys(n.schema).map((v,k)=>n.schema[v].type===\"enums\"?e(\"div\",{className:\"input-cnt get-items\",key:`${s}.${v}-${k}`},e(\"label\",{htmlFor:v},f,\".\",v,\":\"),e(\"div\",{className:\"get-values\"},e(\"span\",{onClick:()=>{let d={...t[s].formData};delete d[`get.${f}.${v}`],y({data:d,index:s})}}),e(\"span\",{className:t[s].formData[`get.${f}.${v}`]===0?\"active\":\"\",onClick:()=>{y({index:s,data:{...t[s].formData,[`get.${f}.${v}`]:0}})}},\"0\"),e(\"span\",{className:t[s].formData[`get.${f}.${v}`]===1?\"active\":\"\",onClick:()=>{y({data:{...t[s].formData,[`get.${f}.${v}`]:1},index:s})}},\"1\"))):g({getField:n.schema[v],keyName:`${f}.${v}`,margin:T+1}))),c=()=>{let n=ce(t[s].formData);return{body:{method:\"POST\",headers:{\"Content-Type\":\"application/json\",...i},body:JSON.stringify({service:t[s].service,model:t[s].schema,act:t[s].act,details:n})}}},E=async n=>{n.preventDefault();let f=new Date().toLocaleDateString();L(!0),setTimeout(()=>{L(!1)},450);let T=performance.now(),v=await ft({baseUrl:a,options:c().body}),d=performance.now()-T;R({data:{...v,tookTime:d},index:s});let D=[{request:{...c().body,body:JSON.parse(c().body.body)},response:{...v,tookTime:d},id:A(),reqDate:f},...u];S(D),localStorage.setItem(\"localHistory\",JSON.stringify(D)),localStorage.setItem(\"localTabsData\",JSON.stringify(t))},j=t[s].service&&t[s].schema&&t[s].postFields&&t[s].getFields&&t[s].act,M=t[s].service,B=t[s].service&&t[s].schema,_=()=>{let n=JSON.stringify(t[s].response);navigator.clipboard.writeText(n)},F=()=>{let n=c();n.body.body=JSON.parse(n.body.body),navigator.clipboard.writeText(JSON.stringify(n))},ee=()=>{let n=c();n.body.body=JSON.parse(n.body.body);let{method:f,...T}=n.body,v={id:A(),bodyHeaders:JSON.stringify({...T},null,2),repeat:1,captures:[]};Y(v),K(\"E2E TEST\")},w=(n,f)=>{if(f===\"service\"&&(p({data:n,index:s}),l({data:\"\",index:s})),f===\"method\"&&l({data:\"\",index:s}),f===\"schema\"&&l({data:n,index:s}),r({data:\"\",index:s}),h(s),z(s),f===\"action\"){let T=o[t[s].service][t[s].schema][n].validator.schema;V&&V.current&&V.current.reset(),r({data:n,index:s}),N({data:T.get.schema,index:s}),b({data:T.set.schema,index:s})}y({data:{},index:s}),localStorage.setItem(\"localTabsData\",JSON.stringify(t))};return e(q,null,e(\"div\",{className:\"sidebar\"},e(\"div\",{className:\"sidebar__sections-wrapper\"},e(\"div\",{className:\"sidebar__section sidebar__section--services\"},e(\"div\",{className:\"sidebar__section-heading\"},\"select services\"),e(ie,{onClickItem:n=>w(n,\"service\"),items:Object.keys(o),incomeActiveItem:t[s].service?t[s].service:null})),e(\"div\",{className:\"sidebar__section sidebar__section--schema\"},e(\"div\",{onClick:()=>{},className:\"sidebar__section-heading\"},\"select schema\"),e(ie,{canShow:!M,onClickItem:n=>w(n,\"schema\"),items:M?Object.keys(o[t[s].service]):[],incomeActiveItem:t[s].schema?t[s].schema:null})),e(\"div\",{className:\"sidebar__section sidebar__section--act\"},e(\"div\",{className:\"sidebar__section-heading\"},\"select action\"),e(ie,{canShow:!B,onClickItem:n=>w(n,\"action\"),items:B?Object.keys(o[t[s].service][t[s].schema]):[],incomeActiveItem:t[s].act?t[s].act:null})))),j&&e(\"div\",{className:\"sidebar sidebar--fields\"},e(\"form\",{ref:V,onSubmit:E,className:\"form--fields\"},e(\"div\",{className:\"sidebar__section-heading sidebar__section-heading--fields\"},\"SET fields\"),Object.keys(t[s].postFields).map(n=>e(\"div\",{className:\"input-cnt\",key:`${s}.${n}-----`},e(\"label\",{htmlFor:n},n,\" :\"),m({key:n,field:t[s].postFields[n],formData:t[s].formData}))),e(\"div\",{className:\"sidebar__section-heading sidebar__section-heading--fields\"},\"GET fields\"),e(\"div\",{className:\"input-cnt get-items border-bottom\"},e(\"label\",null,\"All Items :\"),e(\"div\",{className:\"get-values\"},e(\"span\",{onClick:()=>{let n=O(null,\"get\",t[s].getFields,{});y({data:{...t[s].formData,...n},index:s})}}),e(\"span\",{onClick:()=>{let n=O(0,\"get\",t[s].getFields,{});y({data:{...t[s].formData,...n},index:s})}},\"0\"),e(\"span\",{onClick:()=>{let n=O(1,\"get\",t[s].getFields,{});y({data:{...t[s].formData,...n},index:s})}},\"1\"))),Object.keys(t[s].getFields).map(n=>t[s].getFields[n].type===\"enums\"?e(\"div\",{className:\"input-cnt get-items\",key:`${s}.${n}-------`},e(\"label\",{htmlFor:n},n,\":\"),e(\"div\",{className:\"get-values\"},e(\"span\",{onClick:()=>{y({data:{...t[s].formData,[`get.${n}`]:null},index:s})}}),e(\"span\",{className:t[s].formData[`get.${n}`]===0?\"active\":\"\",onClick:()=>{y({data:{...t[s].formData,[`get.${n}`]:0},index:s})}},\"0\"),e(\"span\",{className:t[s].formData[`get.${n}`]===1?\"active\":\"\",onClick:()=>{y({data:{...t[s].formData,[`get.${n}`]:1},index:s})}},\"1\"))):g({getField:t[s].getFields[n],keyName:n,margin:0})),e(\"div\",{class:\"wrapper\"},e(\"button\",{class:\"send-button\",\"data-active\":Q},e(\"span\",null,\"Send\"),e(\"div\",{class:\"successe\"},e(De,null)))))),e(\"div\",{className:\"response\"},t[s].response&&e(\"div\",{class:\"response-detail\"},e(\"div\",{className:\"response-detail-button_title\"},e(\"p\",{className:\"response-detail-title\"},\"Response\"),e(\"div\",{className:\"response-detail-buttons\"},e(\"div\",{className:\"btn response-detail-button \",onClick:()=>F()},e(pe,null),e(\"span\",{className:\"tooltip-text\"},\"Copy Request\")),e(\"div\",{className:\"btn response-detail-button \",onClick:()=>{_()}},e(pe,null),e(\"span\",{className:\"tooltip-text\"},\"Copy Response\")),e(\"div\",{className:\"btn response-detail-button \",onClick:()=>{ee()}},e(ke,null),e(\"span\",{className:\"tooltip-text\"},\"Run E2E Test\")))),e(\"div\",{className:\"response-detail-info\"},e(\"div\",{style:{display:\"flex\",flexDirection:\"column\"}},\" \",e(H,{jsonData:{body:t[s].response?.body,success:t[s].response?.success}})),e(\"span\",{className:\"response-took\"},\"took:\",de(t[s].response?.tookTime)),t[s].response&&t[s].response?.success===!0?e(\"div\",{className:\"success\"}):e(\"div\",{className:\"fail\"})))))};var vt=()=>e(\"svg\",{width:\"15px\",height:\"15px\",viewBox:\"0 0 24 24\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\"},e(\"path\",{d:\"M20.04 10.1109L18.0252 8.09612L21.7071 4.41421C22.0976 4.02369 22.0976 3.39052 21.7071 3L21 2.29289C20.6095 1.90237 19.9763 1.90237 19.5858 2.29289L15.9039 5.9748L14.04 4.11089C13.754 3.82489 13.3239 3.73933 12.9502 3.89411C12.5765 4.04889 12.3329 4.41353 12.3329 4.81799V10.818C12.3329 11.3703 12.7806 11.818 13.3329 11.818H19.3329C19.7373 11.818 20.102 11.5744 20.2568 11.2007C20.4115 10.827 20.326 10.3969 20.04 10.1109Z\",fill:\"bisque\"}),e(\"path\",{d:\"M3.96 13.8891L5.97478 15.9039L2.29289 19.5858C1.90237 19.9763 1.90237 20.6095 2.29289 21L3 21.7071C3.39052 22.0976 4.02369 22.0976 4.41421 21.7071L8.0961 18.0252L9.96 19.8891C10.246 20.1751 10.6761 20.2607 11.0498 20.1059C11.4235 19.9511 11.6671 19.5865 11.6671 19.182V13.182C11.6671 12.6297 11.2194 12.182 10.6671 12.182H4.66711C4.26265 12.182 3.89801 12.4256 3.74323 12.7993C3.58845 13.173 3.674 13.6031 3.96 13.8891Z\",fill:\"bisque\"})),ze=vt;var bt=()=>e(\"svg\",{width:\"15px\",height:\"15px\",viewBox:\"0 0 24 24\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\"},e(\"path\",{d:\"M7.69233 18.2781L9.70711 20.2929C9.9931 20.5789 10.0787 21.009 9.92388 21.3827C9.7691 21.7564 9.40446 22 9 22H3C2.44772 22 2 21.5523 2 21V15C2 14.5955 2.24364 14.2309 2.61732 14.0761C2.99099 13.9213 3.42111 14.0069 3.70711 14.2929L5.571 16.1568L9.25289 12.4749C9.64342 12.0844 10.2766 12.0844 10.6671 12.4749L11.3742 13.182C11.7647 13.5725 11.7647 14.2057 11.3742 14.5962L7.69233 18.2781Z\",fill:\"bisque\"}),e(\"path\",{d:\"M16.3077 5.72187L14.2929 3.70711C14.0069 3.42111 13.9213 2.99099 14.0761 2.61732C14.2309 2.24364 14.5955 2 15 2H21C21.5523 2 22 2.44772 22 3V9C22 9.40446 21.7564 9.7691 21.3827 9.92388C21.009 10.0787 20.5789 9.9931 20.2929 9.70711L18.429 7.84319L14.7471 11.5251C14.3566 11.9156 13.7234 11.9156 13.3329 11.5251L12.6258 10.818C12.2352 10.4275 12.2352 9.7943 12.6258 9.40378L16.3077 5.72187Z\",fill:\"bisque\"})),Ye=bt;var yt=a=>{let[s,t]=C(!1);return e(\"div\",{className:\"modal-overlay\",onClick:a.toggle},e(\"div\",{className:s?\"modal-box-fullscreen\":\"modal-box\",onClick:o=>o.stopPropagation()},e(\"div\",{className:\"action-modal\"},e(\"span\",{className:\"modal-close\",onClick:a.toggle},e(U,null)),e(\"span\",{className:\"modal-fullscreen\",onClick:()=>t(!s)},s?e(ze,null):e(Ye,null)),e(\"span\",{className:\"modal-title\"},a.title)),e(\"div\",{className:\"modal-content\"},a.children)))},Ke=yt;var Qe=()=>{let{schemasObj:a}=I(),[s,t]=C({});$(()=>{let l={};for(let r in a){l[r]={...l[r],pure:a[r].pure};for(let b in a[r].mainRelations)l[r]={...l[r],mainRelations:{...l[r].mainRelations,[b]:{type:\"relation\",extraDetails:a[r].mainRelations[b],schema:{...a[a[r].mainRelations[b].schemaName].pure}}}};for(let b in a[r].relatedRelations)l[r]={...l[r],relatedRelations:{...l[r].relatedRelations,[b]:{type:\"relation\",extraDetails:a[r].relatedRelations[b],schema:{...a[a[r].relatedRelations[b].schemaName].pure}}}}}t(l)},[]);let o=()=>{let l=`data:text/json;chatset=utf-8,${encodeURIComponent(JSON.stringify(a))}`,r=document.createElement(\"a\");r.href=l,r.download=\"schemas.json\",r.click()},i=[\"color-1\",\"color-2\",\"color-3\",\"color-4\",\"color-5\",\"color-6\",\"color-7\"],u=l=>Object.keys(l).map(r=>{let b=A();return e(\"div\",{className:\"schema\"},e(\"div\",{className:\"schema-name\",onClick:()=>{document.getElementById(b)?.classList.toggle(\"open\")}},e(\"p\",{className:\"schema-title\"},r),e(\"span\",null,\"...\")),e(\"div\",{className:\"proceed-child-container\",id:b},p(l[r])))}),p=l=>Object.keys(l).map(r=>{let b=A();return e(\"div\",{className:`inside-schema ${i[Math.floor(Math.random()*i.length)]}`},e(\"div\",{className:`inside ${typeof l[r]==\"object\"&&l[r].schema!==null&&\"schema-pointer\"}`,onClick:()=>{document.getElementById(b)?.classList.toggle(\"open\")}},e(\"p\",{className:\"schema-title\"},r),e(\"div\",{className:\"schema-info\"},\" \",e(\"p\",{className:\"schema-title schema-type\"},\" \",l[r].type),e(\"div\",{className:\"schema-help\"},l[r].extraDetails&&e(oe,null),l[r].extraDetails&&e(\"div\",{className:\" tooltip-text\"},e(H,{jsonData:l[r].extraDetails}))),typeof l[r]==\"object\"&&l[r].schema!==null&&e(\"span\",null,\"...\"))),e(\"div\",{id:b,className:\"proceed-child\"},typeof l[r]==\"object\"&&l[r]!==null&&l[r].schema!==null&&p(l[r].pure?l[r].pure:l[r].relatedRelations?l[r].relatedRelations:l[r].mainRelation?l[r].mainRelation:l[r].type===\"relation\"?l[r].schema:l[r])))});return e(\"div\",{className:\"schema-modal\"},e(\"div\",{className:\"results-buttons\"},e(\"button\",{className:\" schema-export-button btn e2e-back-button e2e-export_results-button\",onClick:o},e(G,null),e(\"span\",null,\"Export\"))),e(\"div\",{className:\"search-box\"},e(\"input\",{className:\"input\",type:\"text\",placeholder:\"search...\"}),e(\"span\",{className:\"search-icon\"},e(te,null))),e(\"div\",{className:\"schema-list\"},u(s)))};function me(){return e(\"svg\",{width:25,height:25,viewBox:\"0 0 24 24\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\"},e(\"path\",{d:\"M7.75 11.9999L10.58 14.8299L16.25 9.16992\",stroke:\"lightcoral\",\"stroke-width\":\"2\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),\" \",e(\"path\",{\"fill-rule\":\"evenodd\",\"clip-rule\":\"evenodd\",d:\"M23 12C23 18.0751 18.0751 23 12 23C5.92487 23 1 18.0751 1 12C1 5.92487 5.92487 1 12 1C18.0751 1 23 5.92487 23 12ZM3.00683 12C3.00683 16.9668 7.03321 20.9932 12 20.9932C16.9668 20.9932 20.9932 16.9668 20.9932 12C20.9932 7.03321 16.9668 3.00683 12 3.00683C7.03321 3.00683 3.00683 7.03321 3.00683 12Z\",fill:\"bisque\"}))}function We({configUrl:a}){let s=r=>{i[r],i.splice(r,1),u([...i])},{headers:t,setHeader:o}=I(),[i,u]=C([{key:\"\",value:\"\"}]),[p,l]=C(\"\");return $(()=>{let r=[];for(let b in t)r.push({key:b,value:t[b]});u(r)},[]),e(\"div\",{className:\"setting modal-content\"},e(\"div\",{className:\"url\"},e(\"p\",{className:\"url-title\"},\"Fetch Config\"),e(\"div\",{className:\"url-detail\"},\" \",e(\"input\",{className:\"input url-input \",placeholder:\"Set URL\",onChange:r=>l(r.target.value)}),e(\"button\",{className:\"setting_fetch-config--apply-button e2e-back-button e2e-add-capture \",onClick:()=>a(p)},e(me,null),e(\"span\",null,\"Apply\"),\" \"))),e(\"div\",{className:\"sidebar__section sidebar__section--headers\"},e(\"div\",{className:\"sidebar__section-heading setting_heading\"},\" \",e(\"span\",{className:\"setting_heading--title\"},\"Set Headers\"),e(\"button\",{className:\"setting_add-header--button e2e-back-button e2e-export_results-button e2e-add-capture \",onClick:()=>{u([...i,{key:\"\",value:\"\"}])}},e(ae,null),e(\"span\",null,\"Add Header\"))),e(\"div\",{className:\"setting_container--setheaders\"},e(\"div\",{className:\"setting_set-headers\"},i?.map((r,b)=>e(\"div\",{key:`${b}____`,className:\"setting_set-headers--inputs\"},e(\"div\",{className:\"setting__set-headers--key-value setting__set-headers--key\"},e(\"span\",null,\"Key:\"),e(\"input\",{className:\"setting_set-headers--inputs--key input\",placeholder:\"Authotization\",value:r.key,onChange:N=>{u(y=>(y[b].key=N.target.value,y))}})),e(\"div\",{className:\"setting__set-headers--key-value setting__set-headers--value\"},e(\"span\",null,\"Value:\"),e(\"input\",{className:\"setting_set-headers--inputs--value input\",placeholder:\"some string ...\",value:r.value,onChange:N=>{u(y=>(y[b].value=N.target.value,y))}})),i.length>1&&e(\"div\",{className:\"setting_set-headers--delete-button e2e-move-div e2e-move-close\",onClick:()=>s(b)},e(U,null))))),e(\"button\",{className:\"setting_set-headers--apply-button e2e-back-button e2e-add-capture \",onClick:()=>{let r={};for(let b of i){let{key:N,value:y}=b;r[N]=y}o(r)}},e(me,null),e(\"span\",null,\"Apply\")))))}var Ct=({baseUrl:a})=>fetch(`${a}playground/static/get/schemas`).then(s=>s.json()),Xe=()=>{let{tabsData:a,setTabsData:s,activeTab:t,actsObj:o,addTab:i,setActiveTab:u,setService:p,setSchema:l,setAct:r,setPostFields:b,setGetFields:N,setFormData:y,setHistory:S,setResponse:R,resetGetFields:h,closeTab:z,resetPostFields:Y,setSchemasObj:K,setActsObj:Q,setModal:L,modal:O}=I(),[V,P]=C(\"\"),[m,g]=C(!1),c=()=>window&&window.location?`${new URL(window.location.href).origin}/`:\"http://localhost:1366/\",[E,j]=C(\"\"),B=X(()=>{g(!1)});$(()=>{_(c());let w=JSON.parse(localStorage.getItem(\"localHistory\"));w&&S(w)},[]);let _=w=>{w&&j(w),p({data:\"\",index:t}),l({data:\"\",index:t}),h(t),Y(t),y({data:{},index:t}),Ct({baseUrl:w||E}).then(({schemas:n,acts:f})=>{Q(f),K(n);let T=localStorage.getItem(\"localTabsData\");if(T){T=JSON.parse(T);let v=[],k=d=>{v.pop();let D=ce(d.formData);for(let Z in D.set)f[d.service][d.schema][d.act].validator.schema.set.schema[Z]===void 0&&delete D.set[Z];for(let Z in D.get)f[d.service][d.schema][d.act].validator.schema.get.schema[Z]===void 0&&delete D.get[Z];let J=le(D,{},\"\");d.postFields=f[d.service][d.schema][d.act].validator.schema.set.schema,d.getFields=f[d.service][d.schema][d.act].validator.schema.get.schema,v.push({...d,formData:J})};for(let d of T)d.service&&d.service in f&&v.push(d),d.schema&&!(d.schema in f[d.service])&&v.pop(),d.act&&!(d.act in f[d.service][d.schema])&&v.pop(),d.service&&d.schema&&d.act&&d.act in f[d.service][d.schema]&&k(d);v.length<1&&v.push({service:\"\",schema:\"\",act:\"\",postFields:{},getFields:{},formData:{},response:null}),s(v)}})},F=()=>{L(null)},ee=w=>{p({data:w.body.service,index:t}),l({data:w.body.model,index:t}),r({data:w.body.act,index:t});let n=o[w.body.service][w.body.model][w.body.act].validator.schema;N({data:n.get.schema,index:t}),b({data:n.set.schema,index:t}),R({data:null,index:t});let f=le(w.body.details,{},\"\");y({data:f,index:t}),F()};return e(\"div\",{className:\"cnt\"},e(\"div\",{className:\"tabs-container\",style:{display:\"flex\"}},a.map((w,n)=>e(q,null,e(\"div\",{className:\"tab-name\",\"data-tab\":t===n,onClick:()=>{u(n)}},\" \",e(\"span\",{title:a[n].act?`${a[n].schema} | ${a[n].act}`:a[n].schema?`${a[n].service} | ${a[n].schema}`:a[n].service?a[n].service:`Tab ${n}`},\" \",a[n].act?`${a[n].schema} | ${a[n].act}`:a[n].schema?`${a[n].service} | ${a[n].schema}`:a[n].service?a[n].service:`Tab ${n}`),e(\"span\",{className:` tab-close ${t===n?\"active-tab-close\":\"\"}`,onClick:f=>{f.stopPropagation(),z(n)},title:\"Close tab\"},\"x\")))),e(\"span\",{className:\"add-tab\",title:\"Open a new tab\",onClick:()=>{i(null),localStorage.setItem(\"localTabsData\",JSON.stringify(a))}},\"+\")),e(Ue,{urlAddress:E}),e(\"button\",{ref:B,className:\"media--main-btn-wrapper \",onClick:()=>{g(!m)}},\"menu\"),e(\"div\",{className:\"main-btn-wrapper\",\"data-show\":m===!0},e(\"span\",{className:\"btn btn-modal \",onClick:()=>_()},e(\"span\",{className:\"btn-modal-title\"},\"Refetch\"),e(_e,null)),e(\"span\",{className:\"btn btn-modal \",onClick:()=>L(\"SETTING\")},e(\"span\",{className:\"btn-modal-title\"},\"Setting\"),e(Ne,null)),e(\"span\",{className:\"btn btn-modal\",onClick:()=>L(\"HISTORY\")},e(\"span\",{className:\"btn-modal-title\"},\"History\"),e(Te,null)),e(\"span\",{className:\"btn btn-modal\",onClick:()=>L(\"E2E TEST\")},e(\"span\",{className:\"btn-modal-title\"},\"E2E Test\"),e(xe,null)),e(\"span\",{className:\" btn-modal-document\",\"data-show\":V===\"document\"},e(\"span\",{className:\"btn-modal-document--title\",\"data-show\":V===\"document\"},\"Document\")),e(\"span\",{className:\"btn btn-modal btn-doc\",onClick:()=>L(\"SCHEMA\"),onMouseEnter:()=>P(\"document\"),onMouseLeave:()=>P(\"\")},e(\"span\",{className:\"btn-modal-title\"},\"Schema\"),e(we,null)),e(\"span\",{className:\"btn btn-modal btn-doc \",onClick:()=>L(\"ACT\"),onMouseEnter:()=>P(\"document\"),onMouseLeave:()=>P(\"\")},e(\"span\",{className:\"btn-modal-title\"},\"Act\"),e(Ee,null))),O!==null&&e(Ke,{toggle:F,title:O},O===\"HISTORY\"?e(Je,{setFormFromHistory:ee}):O===\"SETTING\"?e(We,{configUrl:_}):O===\"E2E TEST\"?e(Be,{baseUrl:E}):O===\"SCHEMA\"?e(Qe,null):O===\"ACT\"?e(he,null):e(q,null)))};Me(e(Ae,null,e(Xe,null)),document.getElementById(\"root\"));\n//# sourceMappingURL=bundle-es.js.map\n"; + export const bundleTs = "import{createContext as Me,Fragment as O,h as e,hydrate as he}from\"https://esm.sh/preact@10.5.15\";import{useCallback as k,useContext as Oe,useEffect as L,useMemo as Ie,useReducer as Le,useRef as U,useState as y}from\"https://esm.sh/preact@10.5.15/hooks\";var F=()=>Date.now().toString(36)+Math.random().toString(36).substr(2);var tt={tabsData:[{service:\"\",schema:\"\",act:\"\",postFields:{},getFields:{},formData:{},response:null}],activeTab:0,setActiveTab:()=>({}),addTab:()=>({}),closeTab:()=>({}),setTabsData:()=>({})},st={schemasObj:{},actsObj:{},setService:()=>({}),setMethod:()=>({}),setSchema:()=>({}),setAct:()=>({}),setActsObj:()=>({}),setSchemasObj:()=>({}),setPostFields:()=>({}),resetPostFields:()=>({}),setGetFields:()=>({}),resetGetFields:()=>({}),setFormData:()=>({}),setResponse:()=>({})},at={history:[],deleteItemHistory:()=>({}),setHistory:()=>({})},ot={headers:{Authorization:\"\"},setHeader:()=>({})},ue=()=>({id:F(),bodyHeaders:`\n{\n \"headers\": {\n \"Content-Type\": \"application/json\",\n \"Authorization\": \"\"\n },\n \"body\": {\n \"service\": \"main\",\n \"contents\": \"dynamic\",\n \"model\": \"\",\n \"act\": \"\"\n \"details\": {\n \"get\": {\n },\n \"set\": {\n }\n }\n}\n}\n `,repeat:1,captures:[]}),nt={e2eForms:[ue()],setE2eForms:()=>({}),addE2eForm:()=>({})},rt={modal:null,setModal:()=>({})},fe={...tt,...st,...at,...ot,...nt,...rt};function Fe(s,a){let{type:t,payload:r}=a;switch(t){case\"SET_SELECTED_SERVICE\":{let o=[...s.tabsData];return o[r.index]={...o[r.index],service:r.data},{...s,tabsData:[...o]}}case\"SET_SCHEMA\":{let o=[...s.tabsData];return o[r.index]={...o[r.index],schema:r.data},{...s,tabsData:[...o]}}case\"SET_ACT\":{let o=[...s.tabsData];return o[r.index]={...o[r.index],act:r.data},{...s,tabsData:[...o]}}case\"SET_POST_FIELDS\":{let o=[...s.tabsData];return o[r.index]={...o[r.index],postFields:r.data},{...s,tabsData:[...o]}}case\"RESET_POST_FIELDS\":{let o=[...s.tabsData];return o[r]={...o[r],postFields:{}},{...s,tabsData:[...o]}}case\"SET_GET_FIELDS\":{let o=[...s.tabsData];return o[r.index]={...o[r.index],getFields:r.data},{...s,tabsData:[...o]}}case\"RESET_GET_FIELDS\":{let o=[...s.tabsData];return o[r]={...o[r],getFields:{}},{...s,tabsData:[...o]}}case\"SET_FORM_DATA\":{let o=[...s.tabsData];return o[r.index]={...o[r.index],formData:r.data},{...s,tabsData:[...o]}}case\"SET_HEADER\":return{...s,headers:r};case\"ADD_HISTORY\":return{...s,history:r};case\"SET_TABS_DATA\":return{...s,tabsData:r};case\"SET_RESPONSE\":{let o=[...s.tabsData];return o[r.index]={...o[r.index],response:r.data},{...s,tabsData:[...o]}}case\"ADD_TAB\":return{...s,tabsData:[...s.tabsData,{service:\"\",schema:\"\",act:\"\",postFields:{},getFields:{},formData:{},response:null}],activeTab:s.tabsData.length};case\"SET_ACTIVE_TAB\":return{...s,activeTab:r};case\"CLOSE_TAB\":{let o=[...s.tabsData];return o.length>1&&o.splice(r,1),{...s,tabsData:[...o],activeTab:o.length>=1&&s.activeTab>=r&&s.activeTab!==0?s.activeTab-1:s.activeTab}}case\"DELETE_ITEM_HISTORY\":return{...s,history:s.history.slice(0,r).concat(s.history.slice(r+1))};case\"SET_ACTS_OBJ\":return{...s,actsObj:r};case\"SET_SCHEMAS_OBJ\":return{...s,schemasObj:r};case\"SET_E2E_FORMS\":return{...s,e2eForms:r};case\"ADD_E2E_FORM\":return{...s,e2eForms:[...s.e2eForms,r]};case\"OPEN_MODAL\":return{...s,modal:r};default:throw new Error(\"Unhandled action type\")}}var ve=Me(fe),He=s=>{let[a,t]=Le(Fe,fe),r=k(i=>t({type:\"SET_SELECTED_SERVICE\",payload:i}),[t]),o=k(i=>t({type:\"SET_SCHEMA\",payload:i}),[t]),c=k(i=>t({type:\"SET_ACT\",payload:i}),[t]),d=k(i=>t({type:\"SET_POST_FIELDS\",payload:i}),[t]),p=k(i=>t({type:\"RESET_POST_FIELDS\",payload:i}),[t]),l=k(i=>t({type:\"SET_GET_FIELDS\",payload:i}),[t]),g=k(i=>t({type:\"RESET_GET_FIELDS\",payload:i}),[t]),N=k(i=>t({type:\"SET_FORM_DATA\",payload:i}),[t]),b=k(i=>t({type:\"SET_ACTIVE_TAB\",payload:i}),[t]),E=k(i=>t({type:\"ADD_TAB\",payload:i}),[t]),D=k(i=>t({type:\"CLOSE_TAB\",payload:i}),[t]),V=k(i=>t({type:\"DELETE_ITEM_HISTORY\",payload:i}),[t]),P=k(i=>t({type:\"SET_HEADER\",payload:i}),[t]),B=k(i=>t({type:\"ADD_HISTORY\",payload:i}),[t]),W=k(i=>t({type:\"SET_TABS_DATA\",payload:i}),[t]),K=k(i=>t({type:\"SET_RESPONSE\",payload:i}),[t]),A=k(i=>t({type:\"SET_SCHEMAS_OBJ\",payload:i}),[t]),M=k(i=>t({type:\"SET_ACTS_OBJ\",payload:i}),[t]),q=k(i=>t({type:\"SET_E2E_FORMS\",payload:i}),[t]),$=k(i=>t({type:\"ADD_E2E_FORM\",payload:i}),[t]),J=k(i=>t({type:\"OPEN_MODAL\",payload:i}),[t]),Z=Ie(()=>({...a,setService:r,setSchema:o,setAct:c,setPostFields:d,resetPostFields:p,setGetFields:l,resetGetFields:g,setFormData:N,setHeader:P,setHistory:B,setTabsData:W,setResponse:K,setActsObj:M,setSchemasObj:A,setActiveTab:b,addTab:E,closeTab:D,deleteItemHistory:V,setE2eForms:q,addE2eForm:$,setModal:J}),[a]);return e(ve.Provider,{value:Z,...s})};var H=()=>{let s=Oe(ve);return s},Ae=s=>{let{children:a}=s;return e(He,null,a)};var le=s=>{let a={get:{},set:{}};for(let t in s)if(s[t]||s[t]===0){let r=t.split(\".\"),o=a;for(;r.length>1;){let c=r.shift();o[c]=o[c]||{},o=o[c]}o[r[0]]=s[t]}return a};var ce=(s,a,t)=>{for(let r in s)typeof s[r]==\"object\"?ce(s[r],a,t?`${t}.${r}`:r):a[`${t}.${r}`]=s[r];return a};function te(){return e(\"svg\",{width:\"30px\",height:\"35px\",viewBox:\"0 0 24 24\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\"},e(\"path\",{d:\"M16.6725 16.6412L21 21M19 11C19 15.4183 15.4183 19 11 19C6.58172 19 3 15.4183 3 11C3 6.58172 6.58172 3 11 3C15.4183 3 19 6.58172 19 11Z\",stroke:\"#000000\",\"stroke-width\":\"2\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}))}function z(){return e(\"svg\",{width:\"25px\",height:\"25px\",viewBox:\"0 0 24 24\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\"},e(\"path\",{\"fill-rule\":\"evenodd\",\"clip-rule\":\"evenodd\",d:\"M11.2501 7.06066L8.03039 10.2803L6.96973 9.21967L12.0001 4.18934L17.0304 9.21967L15.9697 10.2803L12.7501 7.06066L12.7501 16.5L11.2501 16.5L11.2501 7.06066Z\",fill:\"lightcoral\"}),e(\"path\",{\"fill-rule\":\"evenodd\",\"clip-rule\":\"evenodd\",d:\"M23 12C23 18.0751 18.0751 23 12 23C5.92487 23 1 18.0751 1 12C1 5.92487 5.92487 1 12 1C18.0751 1 23 5.92487 23 12ZM3.00683 12C3.00683 16.9668 7.03321 20.9932 12 20.9932C16.9668 20.9932 20.9932 16.9668 20.9932 12C20.9932 7.03321 16.9668 3.00683 12 3.00683C7.03321 3.00683 3.00683 7.03321 3.00683 12Z\",fill:\"bisque\"}))}function je(){let{actsObj:s}=H(),a=()=>{let c=`data:text/json;chatset=utf-8,${encodeURIComponent(JSON.stringify(s))}`,d=document.createElement(\"a\");d.href=c,d.download=\"acts.json\",d.click()},t=[\"color-1\",\"color-2\",\"color-3\",\"color-4\",\"color-5\",\"color-6\",\"color-7\"],r=c=>Object.keys(c).map((d,p)=>{let l=F();return e(\"div\",{className:\"schema\"},e(\"div\",{className:\"schema-name\",onClick:()=>{document.getElementById(l)?.classList.toggle(\"open\")}},e(\"p\",{className:\"schema-title\"},d),e(\"span\",null,\"...\")),e(\"div\",{className:\"proceed-child-container\",id:l},o(s[d])))}),o=c=>Object.keys(c).map((d,p)=>{let l=F();return e(\"div\",{className:`inside-schema ${t[Math.floor(Math.random()*t.length)]}`},e(\"div\",{className:`inside ${typeof c[d]==\"object\"&&c[d].schema!==null&&\"schema-pointer\"}`,onClick:()=>{document.getElementById(l)?.classList.toggle(\"open\")}},e(\"p\",{className:\"schema-title\"},d),c[d].type&&e(\"p\",{className:\"schema-title schema-type\"},c[d].type),e(\"div\",null,\" \",typeof c[d]==\"object\"&&c[d].schema!==null&&e(\"span\",null,\"...\"))),e(\"div\",{id:l,className:\"proceed-child\"},typeof c[d]==\"object\"&&c[d]!==null&&c[d].schema!==null&&o(c[d].validator?c[d].validator.schema:c[d].schema?c[d].schema:c[d])))});return e(\"div\",{className:\"schema-modal\"},\" \",e(\"div\",{className:\"results-buttons\"},e(\"button\",{className:\" schema-export-button btn e2e-back-button e2e-export_results-button\",onClick:a},e(z,null),e(\"span\",null,\"Export\"))),e(\"div\",{className:\"search-box\"},e(\"input\",{className:\"input\",type:\"text\",placeholder:\"search...\"}),e(\"span\",{className:\"search-icon\"},e(te,null))),e(\"div\",{className:\"schema-list\"},r(s)))}function se(){return e(\"svg\",{width:\"25px\",viewBox:\"0 0 24 24\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\"},e(\"path\",{d:\"M9.00002 15.3802H13.92C15.62 15.3802 17 14.0002 17 12.3002C17 10.6002 15.62 9.22021 13.92 9.22021H7.15002\",stroke:\"lightcoral\",\"stroke-width\":\"1.5\",\"stroke-miterlimit\":\"10\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),e(\"path\",{d:\"M8.57 10.7701L7 9.19012L8.57 7.62012\",stroke:\"lightcoral\",\"stroke-width\":\"1.5\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),e(\"path\",{\"fill-rule\":\"evenodd\",\"clip-rule\":\"evenodd\",d:\"M23 12C23 18.0751 18.0751 23 12 23C5.92487 23 1 18.0751 1 12C1 5.92487 5.92487 1 12 1C18.0751 1 23 5.92487 23 12ZM3.00683 12C3.00683 16.9668 7.03321 20.9932 12 20.9932C16.9668 20.9932 20.9932 16.9668 20.9932 12C20.9932 7.03321 16.9668 3.00683 12 3.00683C7.03321 3.00683 3.00683 7.03321 3.00683 12Z\",fill:\"bisque\"}))}var qe=({setView:s})=>e(\"div\",{className:\"help\"},\" \",e(\"button\",{className:\"btn e2e-back-button\",onClick:()=>{s(\"e2e\")}},e(se,null),e(\"span\",null,\"Back\")),e(\"section\",{className:\"e2e_help-content\"},e(\"p\",null,\"With E2E Test, you can test the whole application by sending a sequence of HTTP requests.\"),e(\"p\",null,\"In the image below, you can see the first view of the E2E test modal page, which contains a button bar at the top and two separate requests.\"),e(\"img\",{src:\"https://github.com/MiaadTeam/lesan/assets/6236123/829b3288-3d69-4fd0-a1fc-22d011b8d079\",alt:\"full screen e2e\",className:\"e2e_help--fullscreen-img\"}),e(\"hr\",null),e(\"p\",null,\"In the button bar, you have these buttons:\",e(\"img\",{src:\"https://github.com/MiaadTeam/lesan/assets/6236123/4edd6034-d6b2-4de9-8c43-8f2fe511aa14\",alt:\"full screen e2e\",className:\"e2e_help--fullscreen-img\"}),e(\"ul\",null,e(\"li\",null,\"Add: This button adds one request section.\"),e(\"li\",null,\"Run E2E Test: This button runs all requests and shows their results.\"),e(\"li\",null,\"Import: This button stands for importing an E2E config in JSON format.\"),e(\"li\",null,\"Export: This button stands for exporting an existing E2E config in JSON format.\"),e(\"li\",null,\"Help: This button switches to the help of the E2E modal page.\"))),e(\"hr\",null),e(\"div\",null,e(\"p\",null,\"Each request section have 2 side\"),e(\"img\",{src:\"https://github.com/MiaadTeam/lesan/assets/6236123/fa9ceb35-21dd-493a-82cc-cd7391f5fc79\",alt:\"full screen e2e\",className:\"e2e_help--fullscreen-img\"}),e(\"hr\",null),e(\"section\",{className:\"e2e_help--section---right-side\"},e(\"p\",null,\"The right side is a set of configurations for the repeat time of each request and capturing variables of the request response. In the Capture Variables section, you can add a pair of tuple inputs for the key name of the capture variable and its value. You can capture the value of a capture variable with braces syntax. For example, if you get back this response from a request:\",e(\"pre\",null,`{\n`,` body: [\n`,` {\n`,` _id: 64c6839c50adc3cb65726934,\n`,` name: \\u0647\\u0645\\u062F\\u0627\\u0646,\n`,` enName: Hamedan,\n`,` abb: HM\n`,` }\n`,` ],\n`,` success: true\n`,` }\n`,`}\n`),\"You can capture _id with [body][0][_id] or for name: [body][0][name].\"),e(\"img\",{src:\"https://github.com/MiaadTeam/lesan/assets/6236123/1cea1db3-44c2-49b5-8739-a9afa8a6e1fa\",alt:\"full screen e2e\",className:\"e2e_help--fullscreen-img\"})),e(\"hr\",null),e(\"section\",{className:\"e2e_help--section---right-side\"},e(\"img\",{src:\"https://github.com/MiaadTeam/lesan/assets/6236123/5c9899fa-8be6-42d1-8f4f-8fd965264645\",alt:\"full screen e2e\",className:\"e2e_help--fullscreen-img\"}),e(\"p\",null,\"The left side is a text area for writing headers and the body of the request in JSON format. In this text area, you can use a text parser to implement the captured value you captured before inside these symbols \",\"{}\",\".\")),e(\"hr\",null),e(\"p\",null,\"Also, we have some buttons on the top right side of each request section. With these buttons, you can move up and down and delete requests.\",e(\"img\",{src:\"https://github.com/MiaadTeam/lesan/assets/6236123/900a5b98-3e7f-460a-a756-403ecaedcf86\",alt:\"full screen e2e\",className:\"e2e_help--fullscreen-img\"}))),e(\"hr\",null),e(\"div\",null,e(\"p\",null,\"After clicking on the Run E2E Test button, you can see the result of each test. Also, in the result view, you can export the results in JSON format.\"),e(\"img\",{src:\"https://github.com/MiaadTeam/lesan/assets/6236123/8c367965-a1b7-40b8-8638-60d2d0ea2609\",alt:\"full screen e2e\",className:\"e2e_help--fullscreen-img\"})),e(\"hr\",null),e(\"div\",null,e(\"p\",null,\"Additionally, you can go to the E2E Test modal page from the main page by clicking on the Test icon inside the response header section. This way, you can add a new test section and prepopulate the Header and Body text areas with the sent request from the main page.\",e(\"img\",{src:\"https://github.com/MiaadTeam/lesan/assets/6236123/74dc9e93-2b41-4840-afc1-f4e8e83c9889\",alt:\"full screen e2e\",className:\"e2e_help--fullscreen-img\"})))));function ae(){return e(\"svg\",{width:\"25px\",height:\"25px\",viewBox:\"0 0 24 24\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\"},e(\"path\",{d:\"M11 8C11 7.44772 11.4477 7 12 7C12.5523 7 13 7.44772 13 8V11H16C16.5523 11 17 11.4477 17 12C17 12.5523 16.5523 13 16 13H13V16C13 16.5523 12.5523 17 12 17C11.4477 17 11 16.5523 11 16V13H8C7.44771 13 7 12.5523 7 12C7 11.4477 7.44772 11 8 11H11V8Z\",fill:\"lightcoral\"}),e(\"path\",{\"fill-rule\":\"evenodd\",\"clip-rule\":\"evenodd\",d:\"M23 12C23 18.0751 18.0751 23 12 23C5.92487 23 1 18.0751 1 12C1 5.92487 5.92487 1 12 1C18.0751 1 23 5.92487 23 12ZM3.00683 12C3.00683 16.9668 7.03321 20.9932 12 20.9932C16.9668 20.9932 20.9932 16.9668 20.9932 12C20.9932 7.03321 16.9668 3.00683 12 3.00683C7.03321 3.00683 3.00683 7.03321 3.00683 12Z\",fill:\"bisque\"}))}var lt=()=>e(\"svg\",{width:\"25px\",viewBox:\"-0.5 0 25 25\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\"},e(\"path\",{d:\"M12 22.4199C17.5228 22.4199 22 17.9428 22 12.4199C22 6.89707 17.5228 2.41992 12 2.41992C6.47715 2.41992 2 6.89707 2 12.4199C2 17.9428 6.47715 22.4199 12 22.4199Z\",stroke:\"bisque\",\"stroke-width\":\"1.5\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),e(\"path\",{id:\"Vector\",d:\"M16 16L12 12M12 12L8 8M12 12L16 8M12 12L8 16\",stroke:\"lightcoral\",\"stroke-width\":\"1.5\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"})),Y=lt;function ge(){return e(\"svg\",{width:\"25px\",viewBox:\"-0.5 0 25 25\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\"},e(\"path\",{d:\"M12 22.4199C17.5228 22.4199 22 17.9428 22 12.4199C22 6.89707 17.5228 2.41992 12 2.41992C6.47715 2.41992 2 6.89707 2 12.4199C2 17.9428 6.47715 22.4199 12 22.4199Z\",stroke:\"bisque\",\"stroke-width\":\"1.5\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),e(\"path\",{d:\"M16 10.99L13.13 14.05C12.9858 14.2058 12.811 14.3298 12.6166 14.4148C12.4221 14.4998 12.2122 14.5437 12 14.5437C11.7878 14.5437 11.5779 14.4998 11.3834 14.4148C11.189 14.3298 11.0142 14.2058 10.87 14.05L8 10.99\",stroke:\"lightcoral\",\"stroke-width\":\"1.5\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}))}function oe(){return e(\"svg\",{width:\"25px\",height:\"25px\",viewBox:\"0 0 24 24\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\"},e(\"path\",{d:\"M12 17V16.9929M12 14.8571C12 11.6429 15 12.3571 15 9.85714C15 8.27919 13.6568 7 12 7C10.6567 7 9.51961 7.84083 9.13733 9\",stroke:\"lightcoral\",\"stroke-width\":\"1.5\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),e(\"path\",{\"fill-rule\":\"evenodd\",\"clip-rule\":\"evenodd\",d:\"M23 12C23 18.0751 18.0751 23 12 23C5.92487 23 1 18.0751 1 12C1 5.92487 5.92487 1 12 1C18.0751 1 23 5.92487 23 12ZM3.00683 12C3.00683 16.9668 7.03321 20.9932 12 20.9932C16.9668 20.9932 20.9932 16.9668 20.9932 12C20.9932 7.03321 16.9668 3.00683 12 3.00683C7.03321 3.00683 3.00683 7.03321 3.00683 12Z\",fill:\"bisque\"}))}function be(){return e(\"svg\",{width:\"25px\",height:\"25px\",viewBox:\"0 0 24 24\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\"},e(\"path\",{\"fill-rule\":\"evenodd\",\"clip-rule\":\"evenodd\",d:\"M12.75 13.9393L15.9697 10.7197L17.0303 11.7803L12 16.8107L6.96967 11.7803L8.03033 10.7197L11.25 13.9393L11.25 4.5L12.75 4.5L12.75 13.9393Z\",fill:\"lightcoral\"}),e(\"path\",{\"fill-rule\":\"evenodd\",\"clip-rule\":\"evenodd\",d:\"M23 12C23 18.0751 18.0751 23 12 23C5.92487 23 1 18.0751 1 12C1 5.92487 5.92487 1 12 1C18.0751 1 23 5.92487 23 12ZM3.00683 12C3.00683 16.9668 7.03321 20.9932 12 20.9932C16.9668 20.9932 20.9932 16.9668 20.9932 12C20.9932 7.03321 16.9668 3.00683 12 3.00683C7.03321 3.00683 3.00683 7.03321 3.00683 12Z\",fill:\"bisque\"}))}function ye(){return e(\"svg\",{width:\"25px\",height:\"25px\",viewBox:\"0 0 24 24\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\"},e(\"path\",{d:\"M13.8876 9.9348C14.9625 10.8117 15.5 11.2501 15.5 12C15.5 12.7499 14.9625 13.1883 13.8876 14.0652C13.5909 14.3073 13.2966 14.5352 13.0261 14.7251C12.7888 14.8917 12.5201 15.064 12.2419 15.2332C11.1695 15.8853 10.6333 16.2114 10.1524 15.8504C9.6715 15.4894 9.62779 14.7336 9.54038 13.2222C9.51566 12.7947 9.5 12.3757 9.5 12C9.5 11.6243 9.51566 11.2053 9.54038 10.7778C9.62779 9.26636 9.6715 8.51061 10.1524 8.1496C10.6333 7.78859 11.1695 8.11466 12.2419 8.76679C12.5201 8.93597 12.7888 9.10831 13.0261 9.27492C13.2966 9.46483 13.5909 9.69274 13.8876 9.9348Z\",stroke:\"lightcoral\",\"stroke-width\":\"2\"}),e(\"path\",{\"fill-rule\":\"evenodd\",\"clip-rule\":\"evenodd\",d:\"M23 12C23 18.0751 18.0751 23 12 23C5.92487 23 1 18.0751 1 12C1 5.92487 5.92487 1 12 1C18.0751 1 23 5.92487 23 12ZM3.00683 12C3.00683 16.9668 7.03321 20.9932 12 20.9932C16.9668 20.9932 20.9932 16.9668 20.9932 12C20.9932 7.03321 16.9668 3.00683 12 3.00683C7.03321 3.00683 3.00683 7.03321 3.00683 12Z\",fill:\"bisque\"}))}function Ce(){return e(\"svg\",{width:\"25px\",viewBox:\"-0.5 0 25 25\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\"},e(\"path\",{d:\"M12 22.4199C17.5228 22.4199 22 17.9428 22 12.4199C22 6.89707 17.5228 2.41992 12 2.41992C6.47715 2.41992 2 6.89707 2 12.4199C2 17.9428 6.47715 22.4199 12 22.4199Z\",stroke:\"bisque\",\"stroke-width\":\"1.5\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),e(\"path\",{d:\"M8 13.8599L10.87 10.8C11.0125 10.6416 11.1868 10.5149 11.3815 10.4282C11.5761 10.3415 11.7869 10.2966 12 10.2966C12.2131 10.2966 12.4239 10.3415 12.6185 10.4282C12.8132 10.5149 12.9875 10.6416 13.13 10.8L16 13.8599\",stroke:\"lightcoral\",\"stroke-width\":\"1.5\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}))}var Ve={fontFamily:'-apple-system, BlinkMacSystemFont, \"Segoe UI\", Helvetica, Arial',display:\"inline-block\",borderRadius:3,padding:\"10px 10px\",color:\"#f8f8f2\",textShadow:\"1px 1px black\",whiteSpace:\"pre-wrap\"};var dt=/(\"(\\\\u[a-zA-Z0-9]{4}|\\\\[^u]|[^\\\\\"])*\"(\\s*:)?|\\b(true|false|null)\\b|-?\\d+(?:\\.\\d*)?(?:[eE][+\\-]?\\d+)?)/g,pt=s=>JSON.stringify(s,mt,2).replace(/&/g,\"&\").replace(//g,\">\").replace(dt,t=>{let r=\"cute-number\",o=t;return/^\"/.test(t)?/:$/.test(t)?(r=\"cute-key\",o=o.replace(\":\",':')):t==='\"undefined\"'?r=\"cute-undefined\":t==='\"[Function]\"'?r=\"cute-function\":r=\"cute-string\":/true|false/.test(t)?r=\"cute-boolean\":/null/.test(t)&&(r=\"cute-null\"),`${o}`}),mt=(s,a)=>typeof a==\"function\"?\"[Function]\":typeof a>\"u\"?\"undefined\":a,Be=s=>pt(s).replace(/\"/g,\"\");var I=({jsonData:s})=>{let a=Be(s);return e(O,null,e(\"pre\",{style:Ve,dangerouslySetInnerHTML:{__html:a}}))};function ne(){return e(\"svg\",{fill:\"#fff\",height:\"20px\",width:\"20px\",version:\"1.1\",id:\"Capa_1\",xmlns:\"http://www.w3.org/2000/svg\",viewBox:\"0 0 452.025 452.025\"},e(\"g\",{id:\"SVGRepo_bgCarrier\",\"stroke-width\":\"0\"}),e(\"g\",{id:\"SVGRepo_tracerCarrier\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),e(\"g\",{id:\"SVGRepo_iconCarrier\"},\" \",e(\"g\",null,\" \",e(\"g\",null,\" \",e(\"path\",{d:\"M362.612,34.125h-55.2l13.6-13.6c4.7-4.7,4.7-12.3,0-17s-12.3-4.7-17,0l-34,34.1c-2.3,2.3-3.5,5.3-3.5,8.5 s1.3,6.2,3.5,8.5l34.1,34.1c2.3,2.3,5.4,3.5,8.5,3.5s6.1-1.2,8.5-3.5c4.7-4.7,4.7-12.3,0-17l-13.6-13.6h55.2c35.9,0,65,29.2,65,65 v40.3c0,6.6,5.4,12,12,12s12-5.4,12-12v-40.3C451.712,74.025,411.712,34.125,362.612,34.125z\"}),\" \",e(\"path\",{d:\"M438.812,230.925h-197.1c-6.6,0-12,5.4-12,12v197.1c0,6.6,5.4,12,12,12h197.1c6.6,0,12-5.4,12-12v-197.1 C450.812,236.225,445.412,230.925,438.812,230.925z M426.812,428.025h-173.1v-173.1h173.1L426.812,428.025L426.812,428.025z\"}),\" \",e(\"path\",{d:\"M147.912,363.325c-4.7-4.7-12.3-4.7-17,0c-4.7,4.7-4.7,12.3,0,17l13.6,13.6h-55.2c-35.9,0-65-29.2-65-65v-40.3 c0-6.6-5.4-12-12-12s-12,5.4-12,12v40.3c0,49.1,39.9,89,89,89h55.2l-13.6,13.6c-4.7,4.7-4.7,12.3,0,17c2.3,2.3,5.4,3.5,8.5,3.5 s6.1-1.2,8.5-3.5l34.1-34.1c4.7-4.7,4.7-12.3,0-17L147.912,363.325z\"}),\" \",e(\"path\",{d:\"M13.212,24.025c3.2,0,6.3-1.3,8.5-3.5s3.5-5.3,3.5-8.5c0-3.1-1.3-6.3-3.5-8.5s-5.3-3.5-8.5-3.5s-6.3,1.3-8.5,3.5 s-3.5,5.3-3.5,8.5s1.3,6.3,3.5,8.5C7.012,22.725,10.012,24.025,13.212,24.025z\"}),\" \",e(\"path\",{d:\"M111.812,24.025c6.6,0,12-5.4,12-12s-5.4-12-12-12s-12,5.4-12,12S105.112,24.025,111.812,24.025z\"}),\" \",e(\"path\",{d:\"M62.512,24.025c6.6,0,12-5.4,12-12s-5.4-12-12-12s-12,5.4-12,12S55.912,24.025,62.512,24.025z\"}),\" \",e(\"path\",{d:\"M161.012,24.025c6.6,0,12-5.4,12-12s-5.4-12-12-12s-12,5.4-12,12S154.412,24.025,161.012,24.025z\"}),\" \",e(\"path\",{d:\"M210.312,0.025c-3.1,0-6.3,1.3-8.5,3.5s-3.5,5.3-3.5,8.5s1.3,6.3,3.5,8.5s5.3,3.5,8.5,3.5s6.3-1.3,8.5-3.5 s3.5-5.3,3.5-8.5s-1.3-6.3-3.5-8.5S213.512,0.025,210.312,0.025z\"}),\" \",e(\"path\",{d:\"M210.312,147.925c-6.6,0-12,5.4-12,12s5.4,12,12,12s12-5.4,12-12C222.312,153.225,217.012,147.925,210.312,147.925z\"}),\" \",e(\"path\",{d:\"M210.312,98.625c-6.6,0-12,5.4-12,12s5.4,12,12,12s12-5.4,12-12C222.312,103.925,217.012,98.625,210.312,98.625z\"}),\" \",e(\"path\",{d:\"M210.312,49.325c-6.6,0-12,5.4-12,12s5.4,12,12,12s12-5.4,12-12C222.312,54.725,217.012,49.325,210.312,49.325z\"}),\" \",e(\"path\",{d:\"M210.312,197.125c-3.2,0-6.3,1.3-8.5,3.5s-3.5,5.3-3.5,8.5c0,3.1,1.3,6.3,3.5,8.5s5.3,3.5,8.5,3.5s6.3-1.3,8.5-3.5 s3.5-5.3,3.5-8.5s-1.3-6.3-3.5-8.5C216.613,198.425,213.512,197.125,210.312,197.125z\"}),\" \",e(\"path\",{d:\"M161.012,221.125c6.6,0,12-5.4,12-12s-5.4-12-12-12s-12,5.4-12,12C149.012,215.825,154.412,221.125,161.012,221.125z\"}),\" \",e(\"path\",{d:\"M111.812,221.125c6.6,0,12-5.4,12-12s-5.4-12-12-12s-12,5.4-12,12C99.812,215.825,105.112,221.125,111.812,221.125z\"}),\" \",e(\"path\",{d:\"M62.512,221.125c6.6,0,12-5.4,12-12s-5.4-12-12-12s-12,5.4-12,12C50.512,215.825,55.912,221.125,62.512,221.125z\"}),\" \",e(\"path\",{d:\"M13.212,221.125c3.2,0,6.3-1.3,8.5-3.5s3.5-5.3,3.5-8.5s-1.3-6.3-3.5-8.5s-5.3-3.5-8.5-3.5s-6.3,1.3-8.5,3.5 s-3.5,5.3-3.5,8.5c0,3.1,1.3,6.3,3.5,8.5C7.012,219.825,10.012,221.125,13.212,221.125z\"}),\" \",e(\"path\",{d:\"M13.212,171.925c6.6,0,12-5.4,12-12s-5.4-12-12-12s-12,5.4-12,12S6.612,171.925,13.212,171.925z\"}),\" \",e(\"path\",{d:\"M13.212,122.625c6.6,0,12-5.4,12-12s-5.4-12-12-12s-12,5.4-12,12C1.212,117.225,6.612,122.625,13.212,122.625z\"}),\" \",e(\"path\",{d:\"M13.212,73.325c6.6,0,12-5.4,12-12s-5.4-12-12-12s-12,5.4-12,12S6.612,73.325,13.212,73.325z\"}),\" \"),\" \"),\" \"))}var $e=({results:s,setIsShowE2eResponse:a})=>{let[t,r]=y(0);return e(\"div\",{style:{display:\"flex\",minWidth:\"100%\",position:\"relative\"},id:s[t].id},e(\"section\",{className:\"container-re\"},e(\"div\",{className:\"container-re--header\"},e(\"span\",{className:\"container-re--header--icon\",onClick:()=>a(!0)},e(ne,null)),e(\"span\",{className:\"container-re-title\"},\"REQUEST\")),e(I,{jsonData:s[t].request}),e(\"div\",{className:\"pagination\",style:{position:\"absolute\",bottom:\"0px\",right:\"-87.5px\",zIndex:\"1\",backgroundColor:\"#2c2e2c\",padding:\"9px 5px 5px 5px\",display:\"flex\",gap:\"5px\",width:\"175px\",justifyContent:\"flex-start\",overflowY:\"scroll\",overflowWrap:\"anywhere\",whiteSpace:\"nowrap\",border:\"1px solid bisque\",borderBottom:\"none\",borderRadius:\"7px 7px 0 0\",color:\"gainsboro\",flexWrap:\"wrap\",height:\"42px\"}},s.map((o,c)=>e(\"span\",{className:\"pagination--item\",style:{cursor:\"pointer\"},onClick:()=>r(c),\"data-show\":t===c},c+1)))),e(\"section\",{className:\"container-re container-response\"},e(\"div\",{className:\"container-re--header\"},e(\"span\",{className:\"container-re-title\"},\"RESPONSE\"),e(\"span\",{className:\"e2e-re-timeNumber-request\"},s[t].responseTime,\"ms\")),e(I,{jsonData:s[t].response})))};function Pe({sequence:s}){let[a,t]=y(!0);return e(\"div\",{key:s.id,className:\"container-detail\"},a?e(O,null,e(\"section\",{className:\"sequence-re\"},e(\"div\",{className:\"container-re--header\"},e(\"span\",{className:\"container-re--header--icon\",onClick:()=>t(!1)},e(ne,null)),e(\"span\",{className:\"container-re-title\"},\"Body Header\")),e(I,{jsonData:JSON.parse(s.bodyHeader)})),e(\"section\",{className:\"sequence-re sequence-response \"},e(\"div\",{className:\"container-re--header\"},e(\"span\",{className:\"container-re-title\"},\"Description\")),e(\"div\",{className:\"detail-sequence\"},e(\"p\",null,\"you send \",e(\"span\",null,s.repeat),\" times of this request\"),e(\"p\",null,\"the avrage time for each request is\",e(\"span\",null,\" \",s.time/s.repeat,\"ms\")),e(\"p\",null,\"and whole time is\",e(\"span\",null,\" \",s.time,\"ms\")),e(\"p\",null,\"this sequence sends\",e(\"span\",null,\" \",s.success),\" success request and\",\" \",e(\"span\",null,\" \",s.fails),\" it be fails\")))):e($e,{results:s.results,setIsShowE2eResponse:t}))}function Je({baseUrl:s}){let a=[],[t,r]=y([]);L(()=>{r(a)},[a]);let{e2eForms:o,setE2eForms:c}=H(),d={allReqPerformance:0,numberRequest:0,success:0,fails:0,sequenceDetail:[]},[p,l]=y(!0),[g,N]=y(!1),[b,E]=y(d),D=(i,m)=>{if(!(i===0&&m<=0)){let C=o[i];o.splice(i,1),o.splice(m,0,C),c([...o])}},V=i=>{o[i],o.splice(i,1),c([...o])},[P,B]=y(\"e2e\"),W=()=>{let i=`data:text/json;chatset=utf-8,${encodeURIComponent(JSON.stringify(o))}`,m=document.createElement(\"a\");m.href=i,m.download=\"Configdata.json\",m.click()},K=i=>{let m=new FileReader;m.readAsText(i.target.files[0],\"UTF-8\"),m.onload=C=>{let w=JSON.parse(C.target.result);c(w)}},A=()=>{let i=`data:text/json;chatset=utf-8,${encodeURIComponent(JSON.stringify(b))}`,m=document.createElement(\"a\");m.href=i,m.download=\"data.json\",m.click()},M=async({baseUrl:i,options:m})=>await(await fetch(`${i}lesan`,m)).json(),q=(i,m)=>{for(let C in i){typeof i[C]==\"object\"&&q(i[C],m);let w=i[C];if(typeof w==\"string\"&&w.includes(\"{\")){let h=[];for(let x=0;xw.slice(x+1,R[S])).forEach(x=>{for(let S of m)S.key===x&&(i[C]=i[C].replace(`{${x}}`,S.value))})}}},$=async()=>{let i=new Set,m={allReqPerformance:0,numberRequest:0,success:0,fails:0,sequenceDetail:[]},C=performance.now();for await(let h of o){let R=JSON.parse(h.bodyHeaders);q(R,i);let G={method:\"POST\",headers:{\"Content-Type\":\"application/json\",...R.headers},body:JSON.stringify(R.body)},x,S=performance.now(),n={id:F(),bodyHeader:h.bodyHeaders,time:0,repeat:0,success:0,fails:0,results:[]};for(let f=0;ff.key&&f.value).map(f=>{let T=f.value.split(\"[\"),u=[];return T.forEach(j=>{let X=j.slice(0,j.indexOf(\"]\"));isNaN(Number(X))||(X=Number(X)),u.push(X)}),u.shift(),{key:f.key,value:u}}).forEach(f=>{if(f.value.length>0){let T=x;f.value.forEach(u=>{T=T[u]}),i.add({key:f.key,value:T})}}),m.sequenceDetail.push(n)}let w=performance.now();E({...m,allReqPerformance:w-C})},J=i=>{let m=[...o];m[i].repeat+=1,c([...m])},Z=i=>{let m=[...o];m[i].repeat>0&&(m[i].repeat-=1),c([...m])};return e(\"div\",null,P===\"result\"?e(\"div\",{style:{display:\"flex\",flexDirection:\"column\",gap:\"7px\",marginTop:\"27px\"}},e(\"div\",{className:\"results\"},e(\"div\",{className:\"results-buttons\"},e(\"button\",{className:\"btn e2e-back-button\",onClick:()=>{E(d),B(\"e2e\")}},e(se,null),e(\"span\",null,\"Back\")),e(\"button\",{className:\"btn e2e-back-button e2e-export_results-button\",onClick:A},e(z,null),e(\"span\",null,\"Export\")))),e(\"div\",{style:{padding:\"30px\",backgroundColor:\"darkslategray\",borderRadius:\"10px\",display:\"flex\",justifyContent:\"space-between\",flexWrap:\"wrap\",color:\"gainsboro\",border:\"1px solid bisque\"}},e(\"div\",{style:{display:\"flex\",flexDirection:\"column\",padding:\"5px\"}},e(\"span\",null,\"All Request Count: \",b.numberRequest),e(\"span\",null,\" \",\"All Request Time: \",b.allReqPerformance,\"ms\")),e(\"div\",{style:{display:\"flex\",flexDirection:\"column\",padding:\"5px\"}},e(\"span\",null,\"All Success Request: \",b.success),e(\"span\",null,\"All Fails Request : \",b.fails,\" \")),e(\"div\",{style:{display:\"flex\",flexDirection:\"column\",padding:\"5px\"}},e(\"span\",null,\"Best Request Time: \",t[0],\"ms\"),e(\"span\",null,\"worst Request Time : \",t[t.length-1],\"ms\"))),e(\"div\",null,b.sequenceDetail.map(i=>(a.push(i.time),a.sort(function(m,C){return m-C}),e(\"div\",null,e(Pe,{sequence:i})))))):P===\"e2e\"?e(O,null,e(\"div\",{className:\"sidebar__section sidebar__section--headers\"},o.map((i,m)=>e(O,null,e(\"div\",{className:\"sidebar__input-double\",key:i.id},o.length>1&&e(\"div\",{className:\"e2e-move-buttons\"},e(\"div\",{className:\"e2e-move-div\",onClick:()=>D(m,m-1)},e(Ce,null)),e(\"div\",{className:\"e2e-move-div\",onClick:()=>D(m,m+1)},e(ge,null)),e(\"div\",{className:\"e2e-move-div e2e-move-close\",onClick:()=>V(m)},e(Y,null))),e(\"div\",{className:\"sidebar__section-body-heading\"},e(\"div\",{className:\"sidebar__section-heading\"},\"set test body and headers\"),e(\"textarea\",{placeholder:\"please paste a request body here\",value:i.bodyHeaders,name:`${i.id}-body`,rows:18,onChange:C=>{let w=[...o];w[m].bodyHeaders=C.target.value,c([...w])}})),e(\"div\",{className:\"sidebar__section-capture\"},e(\"div\",{className:\"e2e_sidebar__section-heading\"},\"set repeat time\"),e(\"div\",{className:\"repeat__number\"},e(\"input\",{className:\"input\",placeholder:\"set repeat number\",value:i.repeat,name:`${i.id}-repeat`,type:\"number\",onChange:C=>{let w=[...o];w[m].repeat=C.target.value,c([...w])}}),e(\"button\",{className:\"e2e-back-button e2e-export_results-button\",onClick:()=>J(m)},\"+\"),e(\"button\",{className:\"e2e-back-button e2e-export_results-button\",onClick:()=>Z(m)},\"-\")),e(\"div\",{className:\"e2e_sidebar__section-heading\"},\"capture variables\"),e(\"button\",{className:\"btn btn--add e2e-back-button e2e-export_results-button e2e-add-capture \",onClick:()=>{let C=[...o];C[m].captures.push({key:\"\",value:\"\"}),c([...C])}},\"add capture\"),i.captures.map((C,w)=>e(O,null,e(\"div\",{className:\"sidebar__section-add-capture\"},e(\"input\",{className:\"input\",placeholder:\"set a variable name\",value:C.key,onChange:h=>{let R=[...o];R[m].captures[w].key=h.target.value,c([...R])}}),e(\"input\",{className:\"input\",placeholder:\"set a value for variable\",value:C.value,onChange:h=>{let R=[...o];R[m].captures[w].value=h.target.value,c([...R])}})),e(\"hr\",null)))))))),e(\"button\",{className:\"btn btn-show-results-buttons \",onClick:()=>N(!g)},\"show btn\"),e(\"div\",{className:\"results-buttons\",\"data-show\":g===!0},e(\"button\",{className:\"btn btn-e2e-action e2e-back-button e2e-export_results-button\",onClick:()=>{c([...o,ue()])}},e(ae,null),e(\"span\",null,\"Add\")),e(\"button\",{className:\"btn btn-e2e-action e2e-back-button e2e-run-botton e2e-export_results-button\",onClick:async()=>{B(\"result\"),await $()}},e(ye,null),e(\"span\",null,\"Run E2E Test\")),e(\"input\",{id:\"actual-btn\",type:\"file\",onChange:K,hidden:!0}),e(\"label\",{htmlFor:\"actual-btn\",className:\"btn btn-e2e-action e2e-back-button e2e-export_results-button\"},e(be,null),e(\"span\",null,\"Import\")),e(\"button\",{className:\"btn btn-e2e-action e2e-back-button e2e-export_results-button\",onClick:W},e(z,null),e(\"span\",null,\"Export\")),e(\"button\",{onClick:()=>B(\"help\"),className:\"btn btn-e2e-action e2e-back-button e2e-export_results-button\"},e(oe,null),e(\"span\",null,\"Help\")))):P===\"help\"?e(qe,{setView:B}):\"\")}function de(s){let a=Math.floor(s/36e5),t=Math.floor(s%36e5/6e4),r=Math.floor(s%36e4%6e4/1e3);return a>0?`${a}h ${t}m ${r}s`:t>0?`${t}m ${r}s`:r>0?`${r}s`:`${s}ms`}var Ze=(s,a)=>{let t=U(!0);L(()=>{let r=()=>{};if(t.current?t.current=!1:r=s(),r&&typeof r==\"function\")return r},a)};function Se(){return e(\"svg\",{id:\"Layer_1\",\"data-name\":\"Layer 1\",xmlns:\"http://www.w3.org/2000/svg\",viewBox:\"0 0 105.7 122.88\",width:20},e(\"path\",{fill:\"white\",d:\"M30.46,14.57V5.22A5.18,5.18,0,0,1,32,1.55v0A5.19,5.19,0,0,1,35.68,0H70a5.22,5.22,0,0,1,3.67,1.53l0,0a5.22,5.22,0,0,1,1.53,3.67v9.35h27.08a3.36,3.36,0,0,1,3.38,3.37V29.58A3.38,3.38,0,0,1,102.32,33H98.51l-8.3,87.22a3,3,0,0,1-2.95,2.69H18.43a3,3,0,0,1-3-2.95L7.19,33H3.37A3.38,3.38,0,0,1,0,29.58V17.94a3.36,3.36,0,0,1,3.37-3.37Zm36.27,0V8.51H39v6.06ZM49.48,49.25a3.4,3.4,0,0,1,6.8,0v51.81a3.4,3.4,0,1,1-6.8,0V49.25ZM69.59,49a3.4,3.4,0,1,1,6.78.42L73,101.27a3.4,3.4,0,0,1-6.78-.43L69.59,49Zm-40.26.42A3.39,3.39,0,1,1,36.1,49l3.41,51.8a3.39,3.39,0,1,1-6.77.43L29.33,49.46ZM92.51,33.38H13.19l7.94,83.55H84.56l8-83.55Z\"}))}function Ge({setFormFromHistory:s}){let{history:a,setHistory:t,deleteItemHistory:r}=H(),[o,c]=y(\"\");return Ze(()=>{localStorage.setItem(\"localHistory\",JSON.stringify(a))},[a]),e(O,null,a&&a?.length>0?e(\"div\",null,e(\"br\",null),a.map((d,p)=>e(\"div\",{className:\"container-detail\",id:d.id},e(\"section\",{className:\"container-re\"},e(\"div\",{style:{position:\"relative\",borderBottom:\"1px solid gainsboro\"}},e(\"span\",{className:\"container-re-title\"},\"REQUEST\"),e(\"span\",{className:\"history-re-detail-date\"},d.reqDate)),e(\"div\",{className:\"container-re-detail\"},e(\"div\",{className:\"container-re-detail-title\"},\" \",e(I,{jsonData:d.request.body.model}),e(\"span\",null,\"|\"),e(\"div\",null,e(I,{jsonData:d.request.body.act}))),o===d.id?e(\"button\",{onClick:()=>c(\"\"),className:\"history-re-detail-button\"},\"Hide\",e(\"span\",{className:\"history-re-detail-button-icon\"},\"\\u2013\")):e(\"button\",{onClick:()=>{c(d.id),document.getElementById(d.id)?.scrollIntoView()},className:\"history-re-detail-button\"},\"Show\",\" \",e(\"span\",{className:\"history-re-detail-button-icon\"},\"+\"))),e(\"div\",{className:\"history-re-detail-complete\",\"data-show\":o===d.id},\" \",e(I,{jsonData:d.request}))),e(\"section\",{className:\"container-re container-response\"},e(\"div\",{className:\"history-re-title_delete\",style:{position:\"relative\",borderBottom:\"1px solid gainsboro\"}},e(\"span\",{className:\"history-re-delete\",onClick:l=>{l.stopPropagation(),r(p)}},e(Y,null)),e(\"span\",{className:\"container-re-title history-response-title\"},\"RESPONSE\"),e(\"span\",{className:\"history-re-detail-date history-response-took\"},de(d.response.tookTime))),e(\"div\",{className:\"container-re-detail\"},e(\"div\",{className:\"history-re-detail-title\"},e(\"div\",{className:\"history-re-response-title\"},\" \",e(\"span\",{className:\"history-re-response-title-status\"},\"success:\"),e(\"div\",{className:\"history-re-response-info\"},e(I,{jsonData:d.response.success})))),e(\"button\",{onClick:()=>s(d.request),className:\"history-re-detail-button\"},\"Use\",\" \",e(\"span\",{className:\"history-re-detail-button-icon\"},\"\\u279C\",\" \"))),e(\"div\",{className:\"history-re-detail-complete\",\"data-show\":o===d.id},\" \",e(I,{jsonData:d.response})))))):e(\"span\",{className:\"no-history\"},'\"There is no history to display\"'),a&&a.length>0?e(\"div\",{className:\"clear-history\"},e(\"button\",{className:\"btn clear-history-button tooltip\",onClick:()=>{confirm(\"Clear All History?\")==!0&&t([])}},e(Se,null),e(\"span\",{className:\"tooltip-text\"},\"Clear History\"))):\"\")}function Te(){return e(\"svg\",{width:\"25px\",viewBox:\"0 0 26 24\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\"},e(\"g\",{id:\"SVGRepo_bgCarrier\",\"stroke-width\":\"0\"}),e(\"g\",{id:\"SVGRepo_tracerCarrier\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),e(\"g\",{id:\"SVGRepo_iconCarrier\"},\" \",e(\"path\",{d:\"M4 6V19C4 20.6569 5.34315 22 7 22H17C18.6569 22 20 20.6569 20 19V9C20 7.34315 18.6569 6 17 6H4ZM4 6V5\",stroke:\"lightcoral\",\"stroke-width\":\"1.5\"}),\" \",e(\"path\",{d:\"M18 6.00002V6.75002H18.75V6.00002H18ZM15.7172 2.32614L15.6111 1.58368L15.7172 2.32614ZM4.91959 3.86865L4.81353 3.12619H4.81353L4.91959 3.86865ZM5.07107 6.75002H18V5.25002H5.07107V6.75002ZM18.75 6.00002V4.30604H17.25V6.00002H18.75ZM15.6111 1.58368L4.81353 3.12619L5.02566 4.61111L15.8232 3.0686L15.6111 1.58368ZM4.81353 3.12619C3.91638 3.25435 3.25 4.0227 3.25 4.92895H4.75C4.75 4.76917 4.86749 4.63371 5.02566 4.61111L4.81353 3.12619ZM18.75 4.30604C18.75 2.63253 17.2678 1.34701 15.6111 1.58368L15.8232 3.0686C16.5763 2.96103 17.25 3.54535 17.25 4.30604H18.75ZM5.07107 5.25002C4.89375 5.25002 4.75 5.10627 4.75 4.92895H3.25C3.25 5.9347 4.06532 6.75002 5.07107 6.75002V5.25002Z\",fill:\"lightcoral\"}),\" \",e(\"path\",{opacity:\"0.5\",d:\"M8 12H16\",stroke:\"lightcoral\",\"stroke-width\":\"1.5\",\"stroke-linecap\":\"round\"}),\" \",e(\"path\",{opacity:\"0.5\",d:\"M8 15.5H13.5\",stroke:\"lightcoral\",\"stroke-width\":\"1.5\",\"stroke-linecap\":\"round\"}),\" \"))}function Ee(){return e(\"svg\",{width:\"25px\",viewBox:\"0 0 24 24\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\"},e(\"path\",{\"fill-rule\":\"evenodd\",opacity:\"0.5\",\"clip-rule\":\"evenodd\",d:\"M5.07868 5.06891C8.87402 1.27893 15.0437 1.31923 18.8622 5.13778C22.6824 8.95797 22.7211 15.1313 18.9262 18.9262C15.1312 22.7211 8.95793 22.6824 5.13774 18.8622C2.87389 16.5984 1.93904 13.5099 2.34047 10.5812C2.39672 10.1708 2.775 9.88377 3.18537 9.94002C3.59575 9.99627 3.88282 10.3745 3.82658 10.7849C3.4866 13.2652 4.27782 15.881 6.1984 17.8016C9.44288 21.0461 14.6664 21.0646 17.8655 17.8655C21.0646 14.6664 21.046 9.44292 17.8015 6.19844C14.5587 2.95561 9.33889 2.93539 6.13935 6.12957L6.88705 6.13333C7.30126 6.13541 7.63535 6.47288 7.63327 6.88709C7.63119 7.3013 7.29372 7.63539 6.87951 7.63331L4.33396 7.62052C3.92269 7.61845 3.58981 7.28556 3.58774 6.8743L3.57495 4.32874C3.57286 3.91454 3.90696 3.57707 4.32117 3.57498C4.73538 3.5729 5.07285 3.907 5.07493 4.32121L5.07868 5.06891Z\",fill:\"lightcoral\"}),e(\"path\",{d:\"M12 7.25C12.4142 7.25 12.75 7.58579 12.75 8V11.6893L15.0303 13.9697C15.3232 14.2626 15.3232 14.7374 15.0303 15.0303C14.7374 15.3232 14.2626 15.3232 13.9697 15.0303L11.5429 12.6036C11.3554 12.416 11.25 12.1617 11.25 11.8964V8C11.25 7.58579 11.5858 7.25 12 7.25Z\",fill:\"lightcoral\"}))}function _e(){return e(\"svg\",{height:\"25px\",width:\"25px\",version:\"1.1\",id:\"Layer_1\",xmlns:\"http://www.w3.org/2000/svg\",viewBox:\"0 0 512 512\",fill:\"#000000\"},e(\"g\",{id:\"SVGRepo_bgCarrier\",\"stroke-width\":\"0\"}),e(\"g\",{id:\"SVGRepo_tracerCarrier\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),e(\"g\",{id:\"SVGRepo_iconCarrier\"},\" \",e(\"circle\",{opacity:.34,style:\"fill:lightcoral;\",cx:\"256.602\",cy:\"226.267\",r:\"171.059\"}),\" \",e(\"path\",{style:\"fill:lightcoral\",d:\"M482.195,226.196C482.195,101.471,380.725,0,256.001,0S29.804,101.471,29.804,226.196 c0,7.409,6.007,13.416,13.416,13.416s13.416-6.008,13.416-13.416c0-109.93,89.434-199.363,199.363-199.363 s199.363,89.434,199.363,199.363c0,109.928-89.434,199.362-199.363,199.362h-23.276l33.282-37.255 c4.937-5.525,4.458-14.007-1.067-18.944c-5.525-4.937-14.008-4.457-18.944,1.068l-47.576,53.255c-7.788,8.718-7.788,21.866,0,30.584 l47.576,53.255c2.651,2.968,6.322,4.478,10.01,4.478c3.181,0,6.375-1.126,8.934-3.41c5.526-4.937,6.004-13.419,1.067-18.944 l-33.282-37.255h23.276C380.725,452.39,482.195,350.919,482.195,226.196z\"}),\" \"))}function we(){return e(\"svg\",{fill:\"lightcoral\",height:\"25px\",width:\"25px\",viewBox:\"0 0 436.668 436.668\"},e(\"g\",{id:\"SVGRepo_bgCarrier\",\"stroke-width\":\"0\"}),e(\"g\",{id:\"SVGRepo_tracerCarrier\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),e(\"g\",{id:\"SVGRepo_iconCarrier\"},\" \",e(\"g\",null,\" \",e(\"path\",{opacity:.34,d:\"M203.334,85.818v59.141c4.884-0.8,9.893-1.223,15-1.223s10.116,0.423,15,1.223V85.818c14.657-5.935,25-20.296,25-37.081 c0-22.092-17.909-40-40-40s-40,17.908-40,40C178.334,65.522,188.677,79.883,203.334,85.818z\"}),\" \",e(\"path\",{opacity:.34,d:\"M70.642,204.021l56.242,18.274c1.539-10.139,4.732-19.74,9.292-28.525L79.912,175.49 c-1.115-15.774-11.577-30.049-27.541-35.236c-21.01-6.827-43.576,4.672-50.403,25.682c-6.827,21.01,4.672,43.576,25.682,50.403 C43.614,221.525,60.468,216.126,70.642,204.021z\"}),\" \",e(\"path\",{opacity:.34,d:\"M152.577,301.224l-34.792,47.887c-15.346-3.813-32.156,1.725-42.022,15.305c-12.985,17.872-9.023,42.887,8.849,55.872 s42.887,9.023,55.872-8.849c9.866-13.579,9.939-31.277,1.571-44.694l34.772-47.86C167.8,314.333,159.616,308.347,152.577,301.224z\"}),\" \",e(\"path\",{opacity:.34,d:\"M318.883,349.112l-34.792-47.887c-7.039,7.122-15.223,13.109-24.25,17.661l34.772,47.86 c-8.369,13.417-8.296,31.115,1.571,44.694c12.985,17.872,38,21.834,55.872,8.849s21.834-38,8.849-55.872 C351.038,350.837,334.229,345.298,318.883,349.112z\"}),\" \",e(\"path\",{opacity:.34,d:\"M434.699,165.936c-6.827-21.01-29.393-32.508-50.403-25.682c-15.964,5.187-26.426,19.462-27.541,35.236l-56.263,18.281 c4.559,8.784,7.752,18.386,9.292,28.525l56.242-18.274c10.174,12.105,27.028,17.504,42.992,12.318 C430.028,209.512,441.526,186.946,434.699,165.936z\"}),\" \",e(\"path\",{d:\"M280.834,236.237c0-34.462-28.037-62.5-62.5-62.5s-62.5,28.038-62.5,62.5s28.037,62.5,62.5,62.5 S280.834,270.7,280.834,236.237z\"}),\" \"),\" \"))}function xe(){return e(\"svg\",{width:\"25px\",height:25,viewBox:\"0 0 24 24\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\"},e(\"path\",{d:\"M3 9.10986V14.8799C3 16.9999 3 16.9999 5 18.3499L10.5 21.5299C11.33 22.0099 12.68 22.0099 13.5 21.5299L19 18.3499C21 16.9999 21 16.9999 21 14.8899V9.10986C21 6.99986 21 6.99986 19 5.64986L13.5 2.46986C12.68 1.98986 11.33 1.98986 10.5 2.46986L5 5.64986C3 6.99986 3 6.99986 3 9.10986Z\",stroke:\"lightcoral\",\"stroke-width\":\"1.5\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\",opacity:.34}),e(\"path\",{d:\"M12 15C13.6569 15 15 13.6569 15 12C15 10.3431 13.6569 9 12 9C10.3431 9 9 10.3431 9 12C9 13.6569 10.3431 15 12 15Z\",stroke:\"lightcoral\",\"stroke-width\":\"1.5\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}))}function Ne(){return e(\"svg\",{width:\"25px\",viewBox:\"0 0 24 24\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\"},e(\"path\",{opacity:.5,d:\"M9.74872 2.49415L18.1594 7.31987M9.74872 2.49415L2.65093 14.7455C1.31093 17.0584 2.10615 20.0159 4.42709 21.3513C6.74803 22.6867 9.7158 21.8942 11.0558 19.5813L12.5511 17.0003L14.1886 14.1738L15.902 11.2163L18.1594 7.31987M9.74872 2.49415L8.91283 2M18.1594 7.31987L19 7.80374\",stroke:\"lightcoral\",\"stroke-width\":\"1.5\",\"stroke-linecap\":\"round\"}),e(\"path\",{d:\"M15.9021 11.2164L13.3441 9.74463M14.1887 14.1739L9.98577 11.7557M12.5512 17.0004L9.93848 15.4972\",stroke:\"lightcpral\",\"stroke-width\":\"1.5\",\"stroke-linecap\":\"round\"}),e(\"path\",{d:\"M22 14.9166C22 16.0672 21.1046 16.9999 20 16.9999C18.8954 16.9999 18 16.0672 18 14.9166C18 14.1967 18.783 13.2358 19.3691 12.6174C19.7161 12.2512 20.2839 12.2512 20.6309 12.6174C21.217 13.2358 22 14.1967 22 14.9166Z\",stroke:\"lightcoral\",\"stroke-width\":\"1.5\"}))}function pe(){return e(\"svg\",{width:\"28px\",fill:\"white\",viewBox:\"0 0 32 32\",style:\"fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2;\",version:\"1.1\"},e(\"path\",{d:\"M9.101,7l8.899,0c1.857,-0 3.637,0.737 4.95,2.05c1.313,1.313 2.05,3.093 2.05,4.95l0,8.899c0.953,-0.195 1.837,-0.665 2.536,-1.363c0.937,-0.938 1.464,-2.21 1.464,-3.536c0,-2.977 0,-7.023 0,-10c0,-1.326 -0.527,-2.598 -1.464,-3.536c-0.938,-0.937 -2.21,-1.464 -3.536,-1.464c-2.977,0 -7.023,0 -10,0c-1.326,-0 -2.598,0.527 -3.536,1.464c-0.698,0.699 -1.168,1.583 -1.363,2.536Z\"}),e(\"path\",{d:\"M23,14c0,-1.326 -0.527,-2.598 -1.464,-3.536c-0.938,-0.937 -2.21,-1.464 -3.536,-1.464c-2.977,0 -7.023,0 -10,0c-1.326,-0 -2.598,0.527 -3.536,1.464c-0.937,0.938 -1.464,2.21 -1.464,3.536c0,2.977 0,7.023 0,10c-0,1.326 0.527,2.598 1.464,3.536c0.938,0.937 2.21,1.464 3.536,1.464c2.977,-0 7.023,-0 10,-0c1.326,0 2.598,-0.527 3.536,-1.464c0.937,-0.938 1.464,-2.21 1.464,-3.536l0,-10Zm-15,10l10,0c0.552,0 1,-0.448 1,-1c0,-0.552 -0.448,-1 -1,-1l-10,0c-0.552,0 -1,0.448 -1,1c0,0.552 0.448,1 1,1Zm0,-4l10,0c0.552,0 1,-0.448 1,-1c0,-0.552 -0.448,-1 -1,-1l-10,0c-0.552,0 -1,0.448 -1,1c0,0.552 0.448,1 1,1Zm0,-4l10,0c0.552,0 1,-0.448 1,-1c0,-0.552 -0.448,-1 -1,-1l-10,0c-0.552,0 -1,0.448 -1,1c0,0.552 0.448,1 1,1Z\"}),e(\"g\",{id:\"Icon\"}))}function ke(){return e(\"svg\",{width:25,height:25,fill:\"#ffffff\",version:\"1.1\",id:\"Capa_1\",xmlns:\"http://www.w3.org/2000/svg\",viewBox:\"0 0 104.778 104.778\"},e(\"g\",{id:\"SVGRepo_bgCarrier\",\"stroke-width\":\"0\"}),e(\"g\",{id:\"SVGRepo_tracerCarrier\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),e(\"g\",{id:\"SVGRepo_iconCarrier\"},\" \",e(\"g\",null,\" \",e(\"path\",{d:\"M96.832,88.406l-23.02-39.908V21.959c4.385-1.595,7.447-5.797,7.447-10.618C81.26,5.089,76.176,0,69.928,0H42.6 c-6.251,0-11.334,5.089-11.334,11.341c0,4.815,3.07,9.017,7.457,10.618v26.55l-2.083,3.685V30.359c0-1.546-1.257-2.802-2.803-2.802 H8.723c-1.546,0-2.801,1.256-2.801,2.802v59.557c0,7.475,5.742,13.614,13.174,14.648c0.331,0.126,0.683,0.214,1.059,0.214h67.227 c4.79,0,8.433-1.762,10.282-4.979C99.503,96.598,99.208,92.543,96.832,88.406z M11.513,89.916v-6.079h8.254 c1.546,0,2.802-1.26,2.802-2.802c0-1.549-1.256-2.802-2.802-2.802h-8.254v-9.09h8.254c1.546,0,2.802-1.263,2.802-2.801 c0-1.555-1.256-2.802-2.802-2.802h-8.254v-9.097h8.254c1.546,0,2.802-1.256,2.802-2.801c0-1.55-1.256-2.803-2.802-2.803h-8.254 V33.149h19.512v56.767c0,5.095-4.375,9.248-9.756,9.248C15.883,99.17,11.513,95.011,11.513,89.916z M92.794,96.997 c-0.799,1.379-2.779,2.178-5.432,2.178H33.189c2.118-2.55,3.439-5.734,3.439-9.259V63.19c0.245-0.207,0.476-0.443,0.645-0.743 l6.679-11.82c0.236-0.422,0.364-0.898,0.364-1.379V19.776c0-1.415-1.048-2.603-2.449-2.78c-2.859-0.364-5.015-2.796-5.015-5.655 c0-3.161,2.571-5.738,5.731-5.738H69.91c3.165,0,5.734,2.577,5.734,5.738c0,2.859-2.155,5.286-5.017,5.655 c-1.401,0.178-2.446,1.365-2.446,2.78v29.472c0,0.493,0.122,0.977,0.374,1.401l23.396,40.559 C93.292,93.506,93.593,95.617,92.794,96.997z M76.466,79.53c0,5.412-4.377,9.794-9.801,9.794c-5.411,0-9.795-4.382-9.795-9.794 c0-5.406,4.384-9.795,9.795-9.795C72.089,69.735,76.466,74.124,76.466,79.53z M54.609,68.877c0,2.665-2.146,4.799-4.802,4.799 c-2.657,0-4.802-2.156-4.802-4.799c0-2.644,2.15-4.8,4.802-4.8C52.468,64.077,54.609,66.233,54.609,68.877z M58.195,58.048 c-1.672,0-3.015-1.341-3.015-3.01c0-1.667,1.343-3.009,3.015-3.009c1.663,0,3.015,1.343,3.015,3.009 C61.21,56.707,59.853,58.048,58.195,58.048z M49.534,86.315c0,1.669-1.352,3.009-3.016,3.009c-1.665,0-3.014-1.34-3.014-3.009 c0-1.663,1.349-3.016,3.014-3.016C48.182,83.3,49.534,84.652,49.534,86.315z M54.805,46.184c-2.185,0-3.956-1.771-3.956-3.957 c0-2.186,1.771-3.957,3.956-3.957c2.183,0,3.957,1.771,3.957,3.957C58.762,44.414,56.983,46.184,54.805,46.184z\"}),\" \"),\" \"))}function Re(){return e(\"svg\",{version:\"1.1\",viewBox:\"0 0 29.756 29.756\",style:\"enable-background:new 0 0 29.756 29.756;\"},e(\"path\",{d:\"M29.049,5.009L28.19,4.151c-0.943-0.945-2.488-0.945-3.434,0L10.172,18.737l-5.175-5.173 c-0.943-0.944-2.489-0.944-3.432,0.001l-0.858,0.857c-0.943,0.944-0.943,2.489,0,3.433l7.744,7.752 c0.944,0.943,2.489,0.943,3.433,0L29.049,8.442C29.991,7.498,29.991,5.953,29.049,5.009z\"}))}function Q(s){let a=U(null);return L(()=>{let t=r=>{a.current&&!a.current.contains(r?.target)&&s()};return document.addEventListener(\"click\",t),()=>{document.removeEventListener(\"click\",t)}},[a]),a}function re({className:s=\"\"}){return e(\"svg\",{width:25,height:25,viewBox:\"0 0 24 24\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\",className:s},e(\"g\",{id:\"SVGRepo_bgCarrier\",\"stroke-width\":\"0\"}),e(\"g\",{id:\"SVGRepo_tracerCarrier\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),e(\"g\",{id:\"SVGRepo_iconCarrier\"},\" \",e(\"path\",{d:\"M6 9L12 15L18 9M12 9H12.01\",stroke:\"lightcoral\",\"stroke-width\":\"2\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),\" \"))}function ie({items:s,onClickItem:a,incomeActiveItem:t,canShow:r}){let[o,c]=y(!1),[d,p]=y(\"\");L(()=>{p(t||\"\")},[t]);let g=Q(()=>{c(!1)});return e(\"div\",null,e(\"div\",{className:\"select\",disabled:r},e(\"div\",{className:`select--empty ${o===!0?\"active-select--empty\":\"\"}`,ref:g,onClick:()=>c(!o)},e(\"div\",{className:\"select--empty--left-side\"},\" \",e(\"span\",{className:`${d?\"select-empty--left-side--clear\":\"select-empty--left-side--clear--inactive\"}`,onClick:N=>{p(\"\"),a(\"\"),c(!1),N.stopPropagation()}},\"x\"),e(\"span\",null,d)),e(re,null)),o&&e(\"div\",{className:\"select--sub-buttons\",\"data-show\":o},s?.map((N,b)=>e(\"div\",{className:`option ${N===d?\"active-option\":\"\"}`,onClick:()=>{p(N),a(N),c(!1)}},N)))))}var ut=({options:s,onChange:a})=>{let[t,r]=y([]),[o,c]=y(s),[d,p]=y(!1),l=E=>{if(t.includes(E)){let D=t.filter(V=>V.value!==E.value);r(D),c([...o,E]),a(D)}else{let D=o.filter(V=>V.value!==E.value);r([...t,E]),c(D),a([...t,E])}},g=()=>{r([]),a([]),c(s)},N=()=>{p(!d)},b=Q(()=>{p(!1)});return e(\"div\",{ref:b,className:\"multi-select__wrapper\"},e(\"div\",{className:\"multi-select__field\",onClick:N},e(\"div\",{className:\"multi-select__selected-item-wrapper\"},t.map(E=>e(\"div\",{className:\"multi-select__selected-item\",key:E},e(\"div\",{className:\"multi-select__selected-item-text\"},E.label),e(\"div\",{className:\"multi-select__selected-item-btn\",role:\"button\",onClick:D=>{D.stopPropagation(),l(E)}},\"x\")))),e(\"div\",{className:\"multi-select__icons-wrapper\"},t.length?e(\"div\",{className:\"multi-select__close-icon-wrapper\",role:\"button\",onClick:E=>{E.stopPropagation(),g()}},e(\"span\",{className:\"multi-select__close-icon\"},\"x\")):null,e(\"div\",{className:\"multi-select__arrow-icon-wrapper\",role:\"button\"},e(re,{className:\"multi-select__arrow-icon\"})))),d?e(\"div\",{className:\"multi-select__options\"},o.length?o.map(E=>e(\"div\",{key:E.value,onClick:D=>{D.stopPropagation(),l(E)},className:\"multi-select__option\"},e(\"div\",{className:\"multi-select__option-label\"},E.label))):e(\"div\",{className:\"multi-select__option--no-option\"},\"No Options!\")):null)},Ue=ut;var vt=({baseUrl:s,options:a})=>fetch(`${s}lesan`,a).then(t=>t.json()),ze=({urlAddress:s})=>{let{activeTab:a,tabsData:t,actsObj:r,headers:o,history:c,setService:d,setSchema:p,setAct:l,setPostFields:g,setGetFields:N,setFormData:b,setHistory:E,setResponse:D,resetGetFields:V,resetPostFields:P,addE2eForm:B,setModal:W}=H(),[K,A]=y(!1),M=(n,v,_,f)=>{for(let T in _)_[T].type===\"enums\"?f[`${v}.${T}`]=n:M(n,`${v}.${T}`,_[T].schema,f);return f},q=U(null),$=n=>{let{name:v,value:_,type:f,alt:T}=n.target,u;f===\"number\"?u=Number(_):T===\"array\"||T===\"boolean\"?u=JSON.parse(_):u=_,b({data:{...t[a].formData,[v]:u},index:a})},J=({key:n,field:v,isMultiEnum:_=!1,formData:f})=>v.type===\"array\"?J({key:n,formData:f,field:v.schema,isMultiEnum:!0}):v.type===\"enums\"&&_?e(Ue,{options:Object.keys(v.schema).map(T=>({label:T,value:v.schema[T]})),onChange:T=>{let u=T.map(j=>j.value);b({data:{...f,[`set.${n}`]:u},index:a}),localStorage.setItem(\"localTabsData\",JSON.stringify(t))}}):v.type===\"enums\"?e(ie,{onClickItem:T=>{b({data:{...f,[`set.${n}`]:T},index:a}),localStorage.setItem(\"localTabsData\",JSON.stringify(t))},incomeActiveItem:f[`set.${n}`],items:Object.keys(v.schema)}):e(\"input\",{className:\"input\",placeholder:n,id:n,value:f[`set.${n}`],name:`set.${n}`,type:v.type===\"number\"?\"number\":\"string\",alt:v.type,onChange:$}),Z=({getField:n,keyName:v,margin:_})=>e(\"div\",{style:{marginLeft:`${_+1}px`},className:\"sidebar__section_container\",key:`${a}.${v}`},e(\"div\",{className:\"sidebar__section-heading--subfields\"},v),Object.keys(n.schema).map((f,T)=>n.schema[f].type===\"enums\"?e(\"div\",{className:\"input-cnt get-items\",key:`${a}.${f}-${T}`},e(\"label\",{htmlFor:f},v,\".\",f,\":\"),e(\"div\",{className:\"get-values\"},e(\"span\",{onClick:()=>{let u={...t[a].formData};delete u[`get.${v}.${f}`],b({data:u,index:a})}}),e(\"span\",{className:t[a].formData[`get.${v}.${f}`]===0?\"active\":\"\",onClick:()=>{b({index:a,data:{...t[a].formData,[`get.${v}.${f}`]:0}})}},\"0\"),e(\"span\",{className:t[a].formData[`get.${v}.${f}`]===1?\"active\":\"\",onClick:()=>{b({data:{...t[a].formData,[`get.${v}.${f}`]:1},index:a})}},\"1\"))):Z({getField:n.schema[f],keyName:`${v}.${f}`,margin:_+1}))),i=()=>{let n=le(t[a].formData);return{body:{method:\"POST\",headers:{\"Content-Type\":\"application/json\",...o},body:JSON.stringify({service:t[a].service,model:t[a].schema,act:t[a].act,details:n})}}},m=async n=>{n.preventDefault();let v=new Date().toLocaleDateString();A(!0),setTimeout(()=>{A(!1)},450);let _=performance.now(),f=await vt({baseUrl:s,options:i().body}),u=(performance.now()-_).toFixed(1);D({data:{...f,tookTime:u},index:a});let j=[{request:{...i().body,body:JSON.parse(i().body.body)},response:{...f,tookTime:u},id:F(),reqDate:v},...c];E(j),localStorage.setItem(\"localHistory\",JSON.stringify(j)),localStorage.setItem(\"localTabsData\",JSON.stringify(t))},C=t[a].service&&t[a].schema&&t[a].postFields&&t[a].getFields&&t[a].act,w=t[a].service,h=t[a].service&&t[a].schema,R=()=>{let n=JSON.stringify(t[a].response);navigator.clipboard.writeText(n)},G=()=>{let n=i();n.body.body=JSON.parse(n.body.body),navigator.clipboard.writeText(JSON.stringify(n))},x=()=>{let n=i();n.body.body=JSON.parse(n.body.body);let{method:v,..._}=n.body,f={id:F(),bodyHeaders:JSON.stringify({..._},null,2),repeat:1,captures:[]};B(f),W(\"E2E TEST\")},S=(n,v)=>{if(v===\"service\"&&(d({data:n,index:a}),p({data:\"\",index:a})),v===\"method\"&&p({data:\"\",index:a}),v===\"schema\"&&p({data:n,index:a}),l({data:\"\",index:a}),V(a),P(a),v===\"action\"){let _=r[t[a].service][t[a].schema][n].validator.schema;q&&q.current&&q.current.reset(),l({data:n,index:a}),N({data:_.get.schema,index:a}),g({data:_.set.schema,index:a})}b({data:{},index:a}),localStorage.setItem(\"localTabsData\",JSON.stringify(t))};return e(O,null,e(\"div\",{className:\"sidebar\"},e(\"div\",{className:\"sidebar__sections-wrapper\"},e(\"div\",{className:\"sidebar__section sidebar__section--services\"},e(\"div\",{className:\"sidebar__section-heading\"},\"select services\"),e(ie,{onClickItem:n=>S(n,\"service\"),items:Object.keys(r),incomeActiveItem:t[a].service?t[a].service:null})),e(\"div\",{className:\"sidebar__section sidebar__section--schema\"},e(\"div\",{onClick:()=>{},className:\"sidebar__section-heading\"},\"select schema\"),e(ie,{canShow:!w,onClickItem:n=>S(n,\"schema\"),items:w?Object.keys(r[t[a].service]):[],incomeActiveItem:t[a].schema?t[a].schema:null})),e(\"div\",{className:\"sidebar__section sidebar__section--act\"},e(\"div\",{className:\"sidebar__section-heading\"},\"select action\"),e(ie,{canShow:!h,onClickItem:n=>S(n,\"action\"),items:h?Object.keys(r[t[a].service][t[a].schema]):[],incomeActiveItem:t[a].act?t[a].act:null})))),C&&e(\"div\",{className:\"sidebar sidebar--fields\"},e(\"form\",{ref:q,onSubmit:m,className:\"form--fields\"},e(\"div\",{className:\"sidebar__section-heading sidebar__section-heading--fields\"},\"SET fields\"),Object.keys(t[a].postFields).map(n=>e(\"div\",{className:\"input-cnt\",key:`${a}.${n}-----`},e(\"label\",{htmlFor:n},n,\" :\"),J({key:n,field:t[a].postFields[n],formData:t[a].formData}))),e(\"div\",{className:\"sidebar__section-heading sidebar__section-heading--fields\"},\"GET fields\"),e(\"div\",{className:\"input-cnt get-items border-bottom\"},e(\"label\",null,\"All Items :\"),e(\"div\",{className:\"get-values\"},e(\"span\",{onClick:()=>{let n=M(null,\"get\",t[a].getFields,{});b({data:{...t[a].formData,...n},index:a})}}),e(\"span\",{onClick:()=>{let n=M(0,\"get\",t[a].getFields,{});b({data:{...t[a].formData,...n},index:a})}},\"0\"),e(\"span\",{onClick:()=>{let n=M(1,\"get\",t[a].getFields,{});b({data:{...t[a].formData,...n},index:a})}},\"1\"))),Object.keys(t[a].getFields).map(n=>t[a].getFields[n].type===\"enums\"?e(\"div\",{className:\"input-cnt get-items\",key:`${a}.${n}-------`},e(\"label\",{htmlFor:n},n,\":\"),e(\"div\",{className:\"get-values\"},e(\"span\",{onClick:()=>{b({data:{...t[a].formData,[`get.${n}`]:null},index:a})}}),e(\"span\",{className:t[a].formData[`get.${n}`]===0?\"active\":\"\",onClick:()=>{b({data:{...t[a].formData,[`get.${n}`]:0},index:a})}},\"0\"),e(\"span\",{className:t[a].formData[`get.${n}`]===1?\"active\":\"\",onClick:()=>{b({data:{...t[a].formData,[`get.${n}`]:1},index:a})}},\"1\"))):Z({getField:t[a].getFields[n],keyName:n,margin:0})),e(\"div\",{class:\"wrapper\"},e(\"button\",{class:\"send-button\",\"data-active\":K},e(\"span\",null,\"Send\"),e(\"div\",{class:\"successe\"},e(Re,null)))))),e(\"div\",{className:\"response\"},t[a].response&&e(\"div\",{class:\"response-detail\"},e(\"div\",{className:\"response-detail-button_title\"},e(\"p\",{className:\"response-detail-title\"},\"Response\"),e(\"div\",{className:\"response-detail-buttons\"},e(\"div\",{className:\"btn response-detail-button \",onClick:()=>G()},e(pe,null),e(\"span\",{className:\"tooltip-text\"},\"Copy Request\")),e(\"div\",{className:\"btn response-detail-button \",onClick:()=>{R()}},e(pe,null),e(\"span\",{className:\"tooltip-text\"},\"Copy Response\")),e(\"div\",{className:\"btn response-detail-button \",onClick:()=>{x()}},e(ke,null),e(\"span\",{className:\"tooltip-text\"},\"Run E2E Test\")))),e(\"div\",{className:\"response-detail-info\"},e(\"div\",{style:{display:\"flex\",flexDirection:\"column\"}},\" \",e(I,{jsonData:{body:t[a].response?.body,success:t[a].response?.success}})),e(\"span\",{className:\"response-took\"},\"took:\",de(t[a].response?.tookTime)),t[a].response&&t[a].response?.success===!0?e(\"div\",{className:\"success\"}):e(\"div\",{className:\"fail\"})))))};var gt=()=>e(\"svg\",{width:\"15px\",height:\"15px\",viewBox:\"0 0 24 24\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\"},e(\"path\",{d:\"M20.04 10.1109L18.0252 8.09612L21.7071 4.41421C22.0976 4.02369 22.0976 3.39052 21.7071 3L21 2.29289C20.6095 1.90237 19.9763 1.90237 19.5858 2.29289L15.9039 5.9748L14.04 4.11089C13.754 3.82489 13.3239 3.73933 12.9502 3.89411C12.5765 4.04889 12.3329 4.41353 12.3329 4.81799V10.818C12.3329 11.3703 12.7806 11.818 13.3329 11.818H19.3329C19.7373 11.818 20.102 11.5744 20.2568 11.2007C20.4115 10.827 20.326 10.3969 20.04 10.1109Z\",fill:\"bisque\"}),e(\"path\",{d:\"M3.96 13.8891L5.97478 15.9039L2.29289 19.5858C1.90237 19.9763 1.90237 20.6095 2.29289 21L3 21.7071C3.39052 22.0976 4.02369 22.0976 4.41421 21.7071L8.0961 18.0252L9.96 19.8891C10.246 20.1751 10.6761 20.2607 11.0498 20.1059C11.4235 19.9511 11.6671 19.5865 11.6671 19.182V13.182C11.6671 12.6297 11.2194 12.182 10.6671 12.182H4.66711C4.26265 12.182 3.89801 12.4256 3.74323 12.7993C3.58845 13.173 3.674 13.6031 3.96 13.8891Z\",fill:\"bisque\"})),Ye=gt;var bt=()=>e(\"svg\",{width:\"15px\",height:\"15px\",viewBox:\"0 0 24 24\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\"},e(\"path\",{d:\"M7.69233 18.2781L9.70711 20.2929C9.9931 20.5789 10.0787 21.009 9.92388 21.3827C9.7691 21.7564 9.40446 22 9 22H3C2.44772 22 2 21.5523 2 21V15C2 14.5955 2.24364 14.2309 2.61732 14.0761C2.99099 13.9213 3.42111 14.0069 3.70711 14.2929L5.571 16.1568L9.25289 12.4749C9.64342 12.0844 10.2766 12.0844 10.6671 12.4749L11.3742 13.182C11.7647 13.5725 11.7647 14.2057 11.3742 14.5962L7.69233 18.2781Z\",fill:\"bisque\"}),e(\"path\",{d:\"M16.3077 5.72187L14.2929 3.70711C14.0069 3.42111 13.9213 2.99099 14.0761 2.61732C14.2309 2.24364 14.5955 2 15 2H21C21.5523 2 22 2.44772 22 3V9C22 9.40446 21.7564 9.7691 21.3827 9.92388C21.009 10.0787 20.5789 9.9931 20.2929 9.70711L18.429 7.84319L14.7471 11.5251C14.3566 11.9156 13.7234 11.9156 13.3329 11.5251L12.6258 10.818C12.2352 10.4275 12.2352 9.7943 12.6258 9.40378L16.3077 5.72187Z\",fill:\"bisque\"})),We=bt;function De(){return e(\"svg\",{width:25,height:25,fill:\"#000000\",viewBox:\"0 0 24 24\",id:\"up-direction\",\"data-name\":\"Line Color\",xmlns:\"http://www.w3.org/2000/svg\",class:\"icon line-color\"},e(\"g\",{id:\"SVGRepo_bgCarrier\",\"stroke-width\":\"0\"}),e(\"g\",{id:\"SVGRepo_tracerCarrier\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),e(\"g\",{id:\"SVGRepo_iconCarrier\"},e(\"path\",{id:\"secondary\",d:\"M10,9.66V20a1,1,0,0,0,1,1h2a1,1,0,0,0,1-1V9.66\",style:\"fill: none; stroke: darkred; stroke-linecap: round; stroke-linejoin: round; stroke-width: 2;\"}),e(\"path\",{id:\"primary\",d:\"M14,9.66l3.4,2.92,2.6-3-7.35-6.3a1,1,0,0,0-1.3,0L4,9.54l2.6,3L10,9.66\",style:\"fill: none; stroke: darkred; stroke-linecap: round; stroke-linejoin: round; stroke-width: 2;\"})))}var yt=s=>{let[a,t]=y(\"myBtn none\"),[r,o]=y(!1),c=U(null),d=()=>{c.current.scroll,document.getElementById(\"test\")?.scroll({top:0,behavior:\"smooth\"})},p=l=>{l.currentTarget.scrollTop>20?t(\"myBtn\"):t(\"none\")};return e(\"div\",{className:\"modal-overlay\",onClick:s.toggle},e(\"div\",{className:r?\"modal-box-fullscreen\":\"modal-box\",onClick:l=>l.stopPropagation()},e(\"div\",{className:\"action-modal\"},e(\"span\",{className:\"modal-close\",onClick:s.toggle},e(Y,null)),e(\"span\",{className:\"modal-fullscreen\",onClick:()=>o(!r)},r?e(Ye,null):e(We,null)),e(\"span\",{className:\"modal-title\"},s.title)),e(\"div\",{className:\"modal-content\",id:\"test\",ref:c,onScroll:p},s.children,e(\"div\",{className:a},e(\"button\",{className:\"myBtn-active tooltip\",onClick:()=>d()},e(De,null),e(\"span\",{className:\"tooltip-text\"},\"Go To Top\"))))))},Ke=yt;var Xe=()=>{let{schemasObj:s}=H(),[a,t]=y({});L(()=>{let p={};for(let l in s){p[l]={...p[l],pure:s[l].pure};for(let g in s[l].mainRelations)p[l]={...p[l],mainRelations:{...p[l].mainRelations,[g]:{type:\"relation\",extraDetails:s[l].mainRelations[g],schema:{...s[s[l].mainRelations[g].schemaName].pure}}}};for(let g in s[l].relatedRelations)p[l]={...p[l],relatedRelations:{...p[l].relatedRelations,[g]:{type:\"relation\",extraDetails:s[l].relatedRelations[g],schema:{...s[s[l].relatedRelations[g].schemaName].pure}}}}}t(p)},[]);let r=()=>{let p=`data:text/json;chatset=utf-8,${encodeURIComponent(JSON.stringify(s))}`,l=document.createElement(\"a\");l.href=p,l.download=\"schemas.json\",l.click()},o=[\"color-1\",\"color-2\",\"color-3\",\"color-4\",\"color-5\",\"color-6\",\"color-7\"],c=p=>Object.keys(p).map(l=>{let g=F();return e(\"div\",{className:\"schema\"},e(\"div\",{className:\"schema-name\",onClick:()=>{document.getElementById(g)?.classList.toggle(\"open\")}},e(\"p\",{className:\"schema-title\"},l),e(\"span\",null,\"...\")),e(\"div\",{className:\"proceed-child-container\",id:g},d(p[l])))}),d=p=>Object.keys(p).map(l=>{let g=F();return e(\"div\",{className:`inside-schema ${o[Math.floor(Math.random()*o.length)]}`},e(\"div\",{className:`inside ${typeof p[l]==\"object\"&&p[l].schema!==null&&\"schema-pointer\"}`,onClick:()=>{document.getElementById(g)?.classList.toggle(\"open\")}},e(\"p\",{className:\"schema-title\"},l),e(\"div\",{className:\"schema-info\"},\" \",e(\"p\",{className:\"schema-title schema-type\"},\" \",p[l].type),e(\"div\",{className:\"schema-help\"},p[l].extraDetails&&e(oe,null),p[l].extraDetails&&e(\"div\",{className:\" tooltip-text\"},e(I,{jsonData:p[l].extraDetails}))),typeof p[l]==\"object\"&&p[l].schema!==null&&e(\"span\",null,\"...\"))),e(\"div\",{id:g,className:\"proceed-child\"},typeof p[l]==\"object\"&&p[l]!==null&&p[l].schema!==null&&d(p[l].pure?p[l].pure:p[l].relatedRelations?p[l].relatedRelations:p[l].mainRelation?p[l].mainRelation:p[l].type===\"relation\"?p[l].schema:p[l])))});return e(\"div\",{className:\"schema-modal\"},e(\"div\",{className:\"results-buttons\"},e(\"button\",{className:\" schema-export-button btn e2e-back-button e2e-export_results-button\",onClick:r},e(z,null),e(\"span\",null,\"Export\"))),e(\"div\",{className:\"search-box\"},e(\"input\",{className:\"input\",type:\"text\",placeholder:\"search...\"}),e(\"span\",{className:\"search-icon\"},e(te,null))),e(\"div\",{className:\"schema-list\"},c(a)))};function me(){return e(\"svg\",{width:25,height:25,viewBox:\"0 0 24 24\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\"},e(\"path\",{d:\"M7.75 11.9999L10.58 14.8299L16.25 9.16992\",stroke:\"lightcoral\",\"stroke-width\":\"2\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}),\" \",e(\"path\",{\"fill-rule\":\"evenodd\",\"clip-rule\":\"evenodd\",d:\"M23 12C23 18.0751 18.0751 23 12 23C5.92487 23 1 18.0751 1 12C1 5.92487 5.92487 1 12 1C18.0751 1 23 5.92487 23 12ZM3.00683 12C3.00683 16.9668 7.03321 20.9932 12 20.9932C16.9668 20.9932 20.9932 16.9668 20.9932 12C20.9932 7.03321 16.9668 3.00683 12 3.00683C7.03321 3.00683 3.00683 7.03321 3.00683 12Z\",fill:\"bisque\"}))}function Qe({configUrl:s}){let a=l=>{o[l],o.splice(l,1),c([...o])},{headers:t,setHeader:r}=H(),[o,c]=y([{key:\"\",value:\"\"}]),[d,p]=y(\"\");return L(()=>{let l=[];for(let g in t)l.push({key:g,value:t[g]});c(l)},[]),e(\"div\",{className:\"setting modal-content\"},e(\"div\",{className:\"url\"},e(\"p\",{className:\"url-title\"},\"Fetch Config\"),e(\"div\",{className:\"url-detail\"},\" \",e(\"input\",{className:\"input url-input \",placeholder:\"Set URL\",onChange:l=>p(l.target.value)}),e(\"button\",{className:\"setting_fetch-config--apply-button e2e-back-button e2e-add-capture \",onClick:()=>s(d)},e(me,null),e(\"span\",null,\"Apply\"),\" \"))),e(\"div\",{className:\"sidebar__section sidebar__section--headers\"},e(\"div\",{className:\"sidebar__section-heading setting_heading\"},\" \",e(\"span\",{className:\"setting_heading--title\"},\"Set Headers\"),e(\"button\",{className:\"setting_add-header--button e2e-back-button e2e-export_results-button e2e-add-capture \",onClick:()=>{c([...o,{key:\"\",value:\"\"}])}},e(ae,null),e(\"span\",null,\"Add Header\"))),e(\"div\",{className:\"setting_container--setheaders\"},e(\"div\",{className:\"setting_set-headers\"},o?.map((l,g)=>e(\"div\",{key:`${g}____`,className:\"setting_set-headers--inputs\"},e(\"div\",{className:\"setting__set-headers--key-value setting__set-headers--key\"},e(\"span\",null,\"Key:\"),e(\"input\",{className:\"setting_set-headers--inputs--key input\",placeholder:\"Authotization\",value:l.key,onChange:N=>{c(b=>(b[g].key=N.target.value,b))}})),e(\"div\",{className:\"setting__set-headers--key-value setting__set-headers--value\"},e(\"span\",null,\"Value:\"),e(\"input\",{className:\"setting_set-headers--inputs--value input\",placeholder:\"some string ...\",value:l.value,onChange:N=>{c(b=>(b[g].value=N.target.value,b))}})),o.length>1&&e(\"div\",{className:\"setting_set-headers--delete-button e2e-move-div e2e-move-close\",onClick:()=>a(g)},e(Y,null))))),e(\"button\",{className:\"setting_set-headers--apply-button e2e-back-button e2e-add-capture \",onClick:()=>{let l={};for(let g of o){let{key:N,value:b}=g;l[N]=b}r(l)}},e(me,null),e(\"span\",null,\"Apply\")))))}var Ct=({baseUrl:s})=>fetch(`${s}playground/static/get/schemas`).then(a=>a.json()),et=()=>{let{tabsData:s,setTabsData:a,activeTab:t,actsObj:r,addTab:o,setActiveTab:c,setService:d,setSchema:p,setAct:l,setPostFields:g,setGetFields:N,setFormData:b,setHistory:E,setResponse:D,resetGetFields:V,closeTab:P,resetPostFields:B,setSchemasObj:W,setActsObj:K,setModal:A,modal:M}=H(),[q,$]=y(\"\"),[J,Z]=y(!1),i=()=>window&&window.location?`${new URL(window.location.href).origin}/`:\"http://localhost:1366/\",[m,C]=y(\"\"),h=Q(()=>{Z(!1)});L(()=>{R(i());let S=JSON.parse(localStorage.getItem(\"localHistory\"));S&&E(S)},[]);let R=S=>{S&&C(S),d({data:\"\",index:t}),p({data:\"\",index:t}),V(t),B(t),b({data:{},index:t}),Ct({baseUrl:S||m}).then(({schemas:n,acts:v})=>{K(v),W(n);let _=localStorage.getItem(\"localTabsData\");if(_){_=JSON.parse(_);let f=[],T=u=>{f.pop();let j=le(u.formData);for(let ee in j.set)v[u.service][u.schema][u.act].validator.schema.set.schema[ee]===void 0&&delete j.set[ee];for(let ee in j.get)v[u.service][u.schema][u.act].validator.schema.get.schema[ee]===void 0&&delete j.get[ee];let X=ce(j,{},\"\");u.postFields=v[u.service][u.schema][u.act].validator.schema.set.schema,u.getFields=v[u.service][u.schema][u.act].validator.schema.get.schema,f.push({...u,formData:X})};for(let u of _)u.service&&u.service in v&&f.push(u),u.schema&&!(u.schema in v[u.service])&&f.pop(),u.act&&!(u.act in v[u.service][u.schema])&&f.pop(),u.service&&u.schema&&u.act&&u.act in v[u.service][u.schema]&&T(u);f.length<1&&f.push({service:\"\",schema:\"\",act:\"\",postFields:{},getFields:{},formData:{},response:null}),a(f)}})},G=()=>{A(null)},x=S=>{d({data:S.body.service,index:t}),p({data:S.body.model,index:t}),l({data:S.body.act,index:t});let n=r[S.body.service][S.body.model][S.body.act].validator.schema;N({data:n.get.schema,index:t}),g({data:n.set.schema,index:t}),D({data:null,index:t});let v=ce(S.body.details,{},\"\");b({data:v,index:t}),G()};return e(\"div\",{className:\"cnt\"},e(\"div\",{className:\"tabs-container\",style:{display:\"flex\"}},s.map((S,n)=>e(O,null,e(\"div\",{className:\"tab-name\",\"data-tab\":t===n,onClick:()=>{c(n)}},\" \",e(\"span\",{title:s[n].act?`${s[n].schema} | ${s[n].act}`:s[n].schema?`${s[n].service} | ${s[n].schema}`:s[n].service?s[n].service:`Tab ${n}`},\" \",s[n].act?`${s[n].schema} | ${s[n].act}`:s[n].schema?`${s[n].service} | ${s[n].schema}`:s[n].service?s[n].service:`Tab ${n}`),e(\"span\",{className:` tab-close ${t===n?\"active-tab-close\":\"\"}`,onClick:v=>{v.stopPropagation(),P(n)},title:\"Close tab\"},\"x\")))),e(\"span\",{className:\"add-tab\",title:\"Open a new tab\",onClick:()=>{o(null),localStorage.setItem(\"localTabsData\",JSON.stringify(s))}},\"+\")),e(ze,{urlAddress:m}),e(\"button\",{ref:h,className:\"media--main-btn-wrapper \",onClick:()=>{Z(!J)}},\"menu\"),e(\"div\",{className:\"main-btn-wrapper\",\"data-show\":J===!0},e(\"span\",{className:\"btn btn-modal \",onClick:()=>R()},e(\"span\",{className:\"btn-modal-title\"},\"Refetch\"),e(_e,null)),e(\"span\",{className:\"btn btn-modal \",onClick:()=>A(\"SETTING\")},e(\"span\",{className:\"btn-modal-title\"},\"Setting\"),e(xe,null)),e(\"span\",{className:\"btn btn-modal\",onClick:()=>A(\"HISTORY\")},e(\"span\",{className:\"btn-modal-title\"},\"History\"),e(Ee,null)),e(\"span\",{className:\"btn btn-modal\",onClick:()=>A(\"E2E TEST\")},e(\"span\",{className:\"btn-modal-title\"},\"E2E Test\"),e(Ne,null)),e(\"span\",{className:\" btn-modal-document\",\"data-show\":q===\"document\"},e(\"span\",{className:\"btn-modal-document--title\",\"data-show\":q===\"document\"},\"Document\")),e(\"span\",{className:\"btn btn-modal btn-doc\",onClick:()=>A(\"SCHEMA\"),onMouseEnter:()=>$(\"document\"),onMouseLeave:()=>$(\"\")},e(\"span\",{className:\"btn-modal-title\"},\"Schema\"),e(we,null)),e(\"span\",{className:\"btn btn-modal btn-doc \",onClick:()=>A(\"ACT\"),onMouseEnter:()=>$(\"document\"),onMouseLeave:()=>$(\"\")},e(\"span\",{className:\"btn-modal-title\"},\"Act\"),e(Te,null))),M!==null&&e(Ke,{toggle:G,title:M},M===\"HISTORY\"?e(Ge,{setFormFromHistory:x}):M===\"SETTING\"?e(Qe,{configUrl:R}):M===\"E2E TEST\"?e(Je,{baseUrl:m}):M===\"SCHEMA\"?e(Xe,null):M===\"ACT\"?e(je,null):e(O,null)))};he(e(Ae,null,e(et,null)),document.getElementById(\"root\"));\n//# sourceMappingURL=bundle-es.js.map\n"; - export const bundleCss = `:root { - /* ------------------------------------------------------------------------ */ - /* Configuration */ - /* ------------------------------------------------------------------------ */ - - /* -------------------------------- Colors -------------------------------- */ + export const bundleCss = `/* css/index.css */ +:root { --color-bg-base: var(--color-colonial-1); --color-bg-primary: var(--color-blue-1); --color-bg-primary-hover: var(--color-blue-1-hover); --color-bg-secondary: var(--color-blue-2); - --color-text-base: var(--color-gray-4); - --color-success: #2a7e2e; --color-error: #d92525; --color-warning: #d92525; - --color-colonial-1: #fdf0d5; --color-colonial-2: #e07016; - --color-green-1: #06d6a0; --color-green-2: #a5dc86; - --color-blue-1: #003049; --color-blue-2: #2b3b4e; --color-blue-3: #669bbc; --color-blue-4: #03a9f4; --color-blue-1-hover: #a2978a; - --color-gray-1: #d1d5db; --color-gray-2: #9e9e9e; --color-gray-3: #1f2937; --color-gray-4: #030712; - - /* --------------------------------- Fonts -------------------------------- */ --base-font-family: sans-serif; --headers-font-family: serif; --base-font-lineheight: 1.5em; - - /* ------------------------------- Constants ------------------------------ */ --height-cnt--btn-send: 55px; } - -/* NORMALIZING HTML AND BODY */ html, body { color: var(--color-text-base); @@ -59,23 +43,30 @@ body { padding: 0; overflow-x: hidden; } - +::-webkit-scrollbar { + width: 3px; +} +::-webkit-scrollbar-thumb { + background-color: #737d7a; + border-radius: 10px; +} +::-webkit-scrollbar-thumb:hover { + background: rgba(196, 194, 194, 0.83); + width: 15px; +} *, *::after, *::before { box-sizing: border-box; } - h1 { font-size: 24px; color: gray; margin-left: 2rem; } - label { color: #eeeeee; } - input, select { padding: 5px 10px; @@ -85,15 +76,17 @@ select { font-size: 1rem; box-sizing: border-box; } - -input[type="number"] { +input[type=number] { -moz-appearance: textfield; } - +input::-webkit-outer-spin-button, +input::-webkit-inner-spin-button { + -webkit-appearance: none; + margin: 0; +} textarea { resize: none; } - .input { height: 35px; border: 1px solid gainsboro; @@ -103,29 +96,23 @@ textarea { backdrop-filter: blur(10px); color: gainsboro; } - .input:hover { border-color: bisque; } - .input:focus { outline: none; background-color: rgba(220, 220, 220, 0.2); color: bisque; } - .input:focus::placeholder { color: gainsboro; } - .input::placeholder { color: rgba(255, 255, 255, 0.4); } - .cnt { display: flex; } - .sidebar { display: flex; flex-direction: column; @@ -139,27 +126,22 @@ textarea { border-right: 1px solid slategrey; padding-top: 53px; } - @media (min-width: 760px) and (max-width: 1025px) { .sidebar { width: 30%; } } - @media (min-width: 1025px) { .sidebar { width: 20%; } } - .sidebar__sections-wrapper { width: 100%; } - .sidebar__section { margin-bottom: 10px; } - .sidebar__section-heading { color: gainsboro; text-transform: capitalize; @@ -167,7 +149,6 @@ textarea { padding: 10px 0; position: relative; } - .sidebar__section-heading::after { position: absolute; right: 0; @@ -178,7 +159,6 @@ textarea { background-color: gainsboro; border-radius: 10px; } - .sidebar__input-double { display: flex; margin-bottom: 25px; @@ -188,22 +168,18 @@ textarea { padding-bottom: 1.5rem; position: relative; } - .sidebar__section-body-heading, .sidebar__section-capture { padding: 0.5rem 2rem; } - .sidebar__section-capture { width: 40%; } - .sidebar__section-body-heading { position: relative; width: 70%; min-height: 50%; } - .sidebar__section-body-heading::after { content: ""; position: absolute; @@ -212,24 +188,20 @@ textarea { top: 5%; border-right: 1px solid #808080; } - .sidebar__section-body-heading textarea { width: 99%; border-radius: 5px; min-height: calc(100% - 3.6rem); } - .repeat__number { display: flex; align-items: center; gap: 1rem; justify-content: space-between; } - .repeat__number input { width: 80%; } - .repeat__number button { background-color: rgba(70, 70, 70, 0.5); color: lightcoral; @@ -240,25 +212,21 @@ textarea { border-top: 1px solid bisque; border-radius: 5px; } - .sidebar__section-add-capture { display: flex; justify-content: space-between; gap: 10px; width: 100%; } - .sidebar__section-add-capture input { width: 50%; } - .btn { border: none; padding: 8px; border-radius: 5px; text-transform: capitalize; } - .btn--add { background-color: var(--color-colonial-2); color: white; @@ -267,7 +235,6 @@ textarea { cursor: pointer; white-space: nowrap; } - .btn__action { position: fixed; top: 0; @@ -277,28 +244,24 @@ textarea { gap: 2rem; height: 46px; } - .btn__action button { width: 25%; height: 30px; } - .select { display: flex; flex-direction: column; position: relative; margin: 10px 0; } - -.select[disabled="true"] { +.select[disabled=true] { opacity: 0.6; pointer-events: none; } - .select--sub-buttons { display: none; } -.select--sub-buttons[data-show="true"] { +.select--sub-buttons[data-show=true] { display: flex; flex-direction: column; border: 1px solid gainsboro; @@ -312,13 +275,11 @@ textarea { border-top: none; box-sizing: border-box; } - .select--empty { display: flex; justify-content: space-between; align-items: center; padding: 0 5px 0 10px; - height: 35px; border: 1px solid gainsboro; background-color: rgba(70, 70, 70, 0.5); @@ -328,30 +289,24 @@ textarea { color: gainsboro; box-sizing: border-box; } - .select--empty:hover { border-color: bisque; } - .active-select--empty { border-radius: 10px 10px 0 0; } - .select--empty--left-side { display: flex; align-items: center; gap: 10px; } - .select-empty--left-side--clear { color: lightcoral; visibility: visible; } - .select-empty--left-side--clear--inactive { visibility: hidden; } - .option { width: 100%; height: 35px; @@ -362,26 +317,21 @@ textarea { box-sizing: border-box; line-height: 2.125rem; } - .option:last-child { border: none; } - .option:hover { background-color: rgba(255, 228, 196, 0.5); color: black; } - .active-option { background-color: rgba(220, 220, 220, 0.5); color: #021307; } - .select--empty:hover .option { opacity: 100; background-color: #24123b; } - .sidebar__select { padding: 5px 10px; font-size: 1rem; @@ -390,29 +340,24 @@ textarea { border-radius: 5px; width: 100%; } - .url { margin-bottom: 15px; } - .url-title { color: white; border-bottom: 1px solid white; } - .url-detail { display: flex; align-items: center; justify-content: center; gap: 15px; } - .url-input { width: 75%; padding: 10px; height: 43px; } - .url-button { width: 20%; height: 31px; @@ -420,18 +365,15 @@ textarea { background-color: var(--color-colonial-2); color: white; } - @media (min-width: 1024px) and (max-width: 1440px) { .sidebar__section-add-capture { flex-direction: column; } - .sidebar__section-add-capture input { margin: 0; width: 100%; } } - .main-btn-wrapper { position: absolute; bottom: 30px; @@ -439,7 +381,6 @@ textarea { flex-direction: column; gap: 10px; } - .btn-modal { display: flex; align-items: center; @@ -458,38 +399,31 @@ textarea { position: relative; height: 50px; } - .media--main-btn-wrapper { display: none; } - .btn-modal > svg { position: absolute; right: 0.5rem; transition: all 0.8s; } - .btn-modal > span { opacity: 0; margin-right: 0; transition: all 0.4s; white-space: nowrap; } - .btn-modal:hover { background-color: dimgray; width: 8rem; } - .btn-modal:hover > span { opacity: 100; margin-right: 1.6rem; } - .btn-modal:hover > svg { right: 0.4rem; } - .btn-modal-document { border-bottom: 1px solid bisque; width: 5rem; @@ -500,17 +434,14 @@ textarea { color: bisque; position: relative; } - -.btn-modal-document[data-show="true"] { +.btn-modal-document[data-show=true] { width: 8rem; transition: all 0.4s; } - .btn-modal-document--title { opacity: 0; } - -.btn-modal-document--title[data-show="true"] { +.btn-modal-document--title[data-show=true] { position: absolute; bottom: -10px; left: 123px; @@ -520,7 +451,6 @@ textarea { white-space: nowrap; opacity: 100; } - @media (max-height: 768px) { .btn-modal { height: 35px; @@ -528,34 +458,28 @@ textarea { border-radius: 5px; border: none; } - .btn-modal span { opacity: 100; margin-right: 0; transition: all 0.4s; white-space: nowrap; } - .btn-modal > svg { position: absolute; right: 8px; transition: all 0.8s; } - .btn-modal:hover { background-color: dimgray; width: 100%; } - .btn-modal:hover > svg { right: 8px; } - .main-btn-wrapper { display: none; } - - .main-btn-wrapper[data-show="true"] { + .main-btn-wrapper[data-show=true] { display: flex; gap: 5px; width: 28%; @@ -567,7 +491,6 @@ textarea { padding: 10px 10px 39px 10px; backdrop-filter: blur(40px); } - .media--main-btn-wrapper { display: block; position: absolute; @@ -584,54 +507,42 @@ textarea { z-index: 5; cursor: pointer; } - .media--main-btn-wrapper:hover { background-color: dimgray; } - .btn-modal-document { display: none; } } - @media (min-width: 1025px) { .media--main-btn-wrapper { width: 15%; left: 2.5%; } } - -/* -------------------------------------------------------------------------- */ - .sidebar--fields { width: 23%; background-color: var(--color-bg-secondary); position: relative; padding-top: 53px; } - @media (min-width: 760px) and (max-width: 1025px) { .sidebar--fields { width: 30%; } } - @media (min-width: 1025px) { .sidebar--fields { width: 30%; } } - .sidebar__section-heading--fields { color: var(--color-gray-1); } - .sidebar__section-heading--fields::after { background-color: var(--color-gray-1); } - .sidebar__section-heading--subfields { - /* background-color: var(--color-gray-2); */ padding: 0.2rem 0.2rem 0.2rem 1rem; margin-bottom: 0.5rem; color: var(--color-colonial-1); @@ -640,47 +551,35 @@ textarea { align-self: flex-start; border-bottom: 1px solid slategray; } - .sidebar__section_container { border: 1px solid slategray; border-radius: 0.5rem; margin-bottom: 0.3rem; padding: 0.5rem; } - .border-bottom { border-bottom: 1px solid slategray; margin-bottom: 0.5rem; } - .form--fields { width: 100%; height: 100vh; overflow-y: scroll; padding-bottom: var(--height-cnt--btn-send); - - /* Hide scrollbar for IE, Edge and Firefox */ -ms-overflow-style: none; - /* IE and Edge */ scrollbar-width: none; - /* Firefox */ } - -/* Hide scrollbar for Chrome, Safari and Opera */ .form--fields::-webkit-scrollbar { display: none; } - .input-cnt { display: flex; flex-direction: column; justify-content: center; } - .label--big { font-size: 1.2rem; } - .cnt--btn-send { position: absolute; display: flex; @@ -694,7 +593,6 @@ textarea { box-shadow: 0px -5px 12px 0px var(--color-bg-secondary); overflow: hidden; } - .btn--send { background-color: var(--color-blue-4); width: 80%; @@ -702,9 +600,6 @@ textarea { text-transform: capitalize; font-size: 1.1rem; } - -/* btn */ - .wrapper { position: absolute; right: 0; @@ -713,18 +608,15 @@ textarea { width: 100%; height: 7%; } - .send-button { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); - width: 85%; height: 40px; line-height: 1; font-size: 18px; - /* font-weight: bold; */ letter-spacing: 1px; border: 2px solid gainsboro; background-color: rgba(70, 70, 70, 0.5); @@ -734,19 +626,16 @@ textarea { overflow: hidden; transition: all 0.35s; } - .send-button:hover { background-color: gainsboro; color: #021307; border: 2px solid rgba(70, 70, 70, 0.5); } - .send-button span { opacity: 1; visibility: visible; transition: all 0.35s; } - .successe { position: absolute; top: 0; @@ -754,13 +643,11 @@ textarea { width: 100%; height: 100%; background: #fff; - /* border-radius: 50%; */ z-index: 1; opacity: 0; visibility: hidden; transition: all 0.35s; } - .successe svg { width: 20px; height: 20px; @@ -769,44 +656,34 @@ textarea { transform: translateY(-50%) rotate(0deg) scale(0); transition: all 0.35s; } - -.send-button[data-active="true"] { +.send-button[data-active=true] { width: 40px; height: 40px; } - -.send-button[data-active="true"] .successe { +.send-button[data-active=true] .successe { opacity: 1; visibility: visible; } - -.send-button[data-active="true"] .successe svg { +.send-button[data-active=true] .successe svg { margin-top: 50%; transform: translateY(-50%) rotate(720deg) scale(1); } - -.send-button[data-active="true"] span { +.send-button[data-active=true] span { opacity: 0; visibility: hidden; } - .response { display: flex; flex-direction: column; height: 100vh; - /* overflow-y: scroll; */ - /* width: min-content; */ flex-grow: 1; - /* padding: 0 20px; */ background-color: #272822; } - @media (min-width: 760px) { .response { width: 40%; } } - .response-detail { background-color: #272822; display: flex; @@ -820,7 +697,6 @@ textarea { position: relative; margin-top: 80px; } - .response-detail-button_title { background-color: #105a86; color: white; @@ -828,11 +704,7 @@ textarea { padding: 10px; border-radius: 10px 10px 0 0; display: flex; - /* justify-content: flex-start; */ - /* align-items: center; */ - /* gap: 210px; */ } - .response-detail-buttons { display: flex; gap: 10px; @@ -840,7 +712,6 @@ textarea { right: 80px; top: 7px; } - .response-detail-button { cursor: pointer; color: white; @@ -849,7 +720,6 @@ textarea { padding: 0; position: relative; } - .response-detail-button .tooltip-text { background-color: cornflowerblue; white-space: nowrap; @@ -861,42 +731,35 @@ textarea { margin-top: 5px; height: fit-content; } - .response-detail-button:hover svg { fill: bisque; } - .response-detail-button .tooltip-text::after { top: -10px; border-color: transparent transparent rgb(255, 255, 255) transparent; } - .response-detail-button:hover .tooltip-text { visibility: visible; opacity: 1; } - .response-detail-title { margin: 0; font-size: 20px; } - .response-detail-info { padding: 0 10px; - overflow: scroll; + overflow-wrap: anywhere; + overflow-y: scroll; } - .response-took { position: absolute; top: 50px; right: 15px; color: #ffe4c496; } - .success { border-radius: 10px; background-color: rgb(255, 255, 255); - /* background-color: rgb(51, 169, 77); */ width: 15px; height: 15px; position: absolute; @@ -907,17 +770,14 @@ textarea { animation-iteration-count: infinite; animation-timing-function: cubic-bezier(0.45, 0.05, 0.55, 0.95); } - @keyframes success { 0% { background-color: rgb(255, 255, 255); } - 50% { background-color: green; } } - .fail { background-color: rgb(255, 255, 255); border-radius: 10px; @@ -931,25 +791,20 @@ textarea { animation-iteration-count: infinite; animation-timing-function: cubic-bezier(0.45, 0.05, 0.55, 0.95); } - @keyframes fail { 0% { background-color: rgb(255, 255, 255); } - 50% { background-color: red; } - 70% { background-color: rgb(255, 255, 255); } - 100% { background-color: rgb(255, 255, 255); } } - @media (min-width: 760px) and (max-width: 1024px) { .response-detail-buttons { right: 33px; @@ -961,7 +816,6 @@ textarea { right: 10px; } } - .modal-overlay { z-index: 9999; width: 100vw; @@ -975,7 +829,6 @@ textarea { align-items: center; backdrop-filter: blur(1px); } - .modal-box-fullscreen { display: block; background: rgb(80, 80, 80, 0.5); @@ -989,7 +842,6 @@ textarea { box-sizing: border-box; position: relative; } - .modal-box { display: block; background: rgb(80, 80, 80, 0.5); @@ -1003,17 +855,22 @@ textarea { box-sizing: border-box; position: relative; } - .modal-content { - overflow: scroll; + overflow-y: scroll; width: 100%; height: 100%; } - +.e2e { + display: flex; + flex-direction: column; + gap: 7px; +} +.pagination--item[data-show=true] { + color: gold; +} .sidebar__section--headers { margin-top: 50px; } - .e2e_sidebar__section-heading { color: gainsboro; text-transform: capitalize; @@ -1021,7 +878,6 @@ textarea { padding: 10px 0; position: relative; } - .e2e_sidebar__section-heading::after { position: absolute; right: 0; @@ -1032,7 +888,6 @@ textarea { background-color: bisque; border-radius: 10px; } - .e2e-move-buttons { display: flex; gap: 5px; @@ -1040,7 +895,6 @@ textarea { position: absolute; right: 1.5rem; } - .e2e-move-div { display: flex; gap: 7px; @@ -1051,21 +905,17 @@ textarea { padding: 6px; color: bisque; } - .e2e-move-div svg:hover { background-color: dimgray; } - .e2e-move-div.e2e-move-close svg:hover { background-color: brown; } - .e2e-move-div svg { border-radius: 50%; backdrop-filter: blur(10px); width: 30px; } - .e2e-back-button { display: flex; gap: 7px; @@ -1081,15 +931,12 @@ textarea { backdrop-filter: blur(10px); border-top: none; } - .e2e-back-button.e2e-run-botton { background-color: darkslategray; } - .e2e-back-button:hover { background-color: dimgray; } - .e2e-add-capture { border-top: 1px solid bisque; border-radius: 5px; @@ -1098,35 +945,28 @@ textarea { margin: 10px 0; white-space: nowrap; } - .btn-e2e-action { left: 150px; display: flex; justify-content: space-around; transition: all 0.8s; } - .e2e-export_results-button-hide { display: none; } - .btn-show-results-buttons { display: none; } - .actionShow-btn { display: none; } - .e2e-export-form-button { color: black; font-size: 14px; } - .results { margin-top: 5px; } - .results-buttons { position: absolute; top: 0; @@ -1135,19 +975,16 @@ textarea { gap: 20px; z-index: 1; } - .help .e2e-back-button { position: absolute; top: 0; } - .e2e-re-timeNumber-request { position: absolute; right: 1rem; color: bisque; font-size: 12px; } - .e2e_help-content { color: gainsboro; padding: 1rem; @@ -1155,92 +992,93 @@ textarea { margin-top: 2rem; border-radius: 0.5rem; } - .e2e_help--fullscreen-img { width: 95%; margin-left: 2.5%; border: 1px solid gainsboro; border-radius: 0.5rem; } - .e2e_help--section---right-side { margin-top: 1rem; display: flex; gap: 1rem; } - .e2e_help--section---right-side > img { flex: 1; } - .e2e_help--section---right-side > p { flex: 1; } - .myBtn { display: block; position: fixed; bottom: 20px; right: 30px; z-index: 99; - font-size: 18px; border: none; outline: none; - background-color: red; + background: none; + color: white; +} +.myBtn .tooltip-text { + background-color: rgb(236 237 215 / 1); + color: darkred; + border: 1px solid darkred; +} +.myBtn .tooltip-text::after { + border-color: darkred transparent transparent transparent; +} +.myBtn-active { + border: 1px solid darkred; + outline: none; color: white; cursor: pointer; - padding: 15px; - border-radius: 4px; + border-radius: 50%; + background-color: rgb(236 237 215 / 0.9); + width: 2.5rem; + height: 2.5rem; + border: 1px solid whiItesmoke; + cursor: pointer; + border-radius: 50%; } - .none { display: none; } - -.myBtn:hover { - background-color: #555; +.myBtn-active:hover { + background-color: rgb(236 237 215 / 1); } - .detail-requests { display: flex; justify-content: space-between; align-items: flex-end; gap: 2rem; margin: 0 2rem; - /* width: 100%; */ } - .sequence-re { width: 50%; background-color: rgba(147, 147, 147, 0.1); border-radius: 10px 0 0 10px; position: relative; } - .sequence-response { background-color: #2b3b4e; border-radius: 0 10px 10px 0; border-left: 1px solid gainsboro; } - .detail-sequence { padding: 1rem; color: red; } - .detail-sequence p { color: bisque; } - .detail-sequence p span { color: #f1fa8c; } - .schema-modal { width: 97%; margin: 2rem auto 0 auto; } - .schema-modal .search-box { display: flex; align-items: center; @@ -1250,28 +1088,23 @@ textarea { width: 80%; margin: 0 auto; } - .schema-modal .search-box input { width: 100%; } - .schema-modal .search-box .search-icon { padding: 7px; } - .schema-modal .schema-list { margin-top: 3rem; display: flex; flex-direction: column; gap: 1rem; } - .schema { background: rgba(79, 79, 79, 0.79); border-left: 2px dotted #f8f8f2; border-radius: 0 7px 7px 0; } - .schema-list .schema .schema-name { display: flex; justify-content: space-between; @@ -1281,19 +1114,16 @@ textarea { padding: 5px 30px; cursor: pointer; } - .schema-title { margin: 5px 0 2px 0; color: bisque; } - .schema-type { position: absolute; top: 0; right: 60px; color: #dcdcdc75; } - .schema-help { cursor: pointer; color: white; @@ -1302,7 +1132,6 @@ textarea { padding: 0; position: relative; } - .schema-help .tooltip-text { background-color: rgba(70, 70, 70, 0.5); white-space: nowrap; @@ -1317,17 +1146,14 @@ textarea { border: 1px solid gainsboro; backdrop-filter: blur(10px); } - .schema-help .tooltip-text::after { top: 100%; border-color: bisque transparent transparent transparent; } - .schema-help:hover .tooltip-text { visibility: visible; opacity: 1; } - .schema-info { display: flex; gap: 135px; @@ -1335,77 +1161,63 @@ textarea { .schema-pointer { cursor: pointer; } - .schema-list .schema .inside-schema { margin: 0 0 0 15px; padding: 10px; color: #fff; } - .proceed-child-container { display: none; margin: 0 10px 10px 0; } - .proceed-child { display: none; } .open { display: block; } - .schema .inside-schema .inside { display: flex; justify-content: space-between; align-items: center; position: relative; } - .color-1 { border-left: 2px dotted rgb(109, 18, 13); background-color: rgba(109, 18, 13, 0.1); } - .color-2 { border-left: 2px dotted rgb(194, 173, 67); background-color: rgba(194, 173, 67, 0.1); } - .color-3 { border-left: 2px dotted rgb(20, 189, 43); background-color: rgba(20, 189, 43, 0.1); } - .color-4 { border-left: 2px dotted rgb(21, 66, 189); background-color: rgba(21, 66, 189, 0.1); } - .color-5 { border-left: 2px dotted rgb(94, 21, 189); background-color: rgba(94, 21, 189, 0.1); } - .color-6 { border-left: 2px dotted rgb(189, 21, 116); background-color: rgba(189, 21, 116, 0.1); } - .color-7 { border-left: 2px dotted rgb(8, 168, 217); background-color: rgb(8, 168, 217, 0.1); } - .setting { overflow: hidden; } - @media (max-width: 1025px) { .results-buttons { display: none; } - - .results-buttons[data-show="true"] { + .results-buttons[data-show=true] { display: flex; flex-direction: column; width: 20%; @@ -1416,7 +1228,6 @@ textarea { border-radius: 0 0 10px 10px; padding-top: 3rem; } - .btn-e2e-action { border: none; border-radius: 10px; @@ -1429,23 +1240,18 @@ textarea { justify-content: space-between; padding: 2px 8px; } - .btn-e2e-action span { transition: all 0.5s; } - .btn-e2e-action:hover span { margin-right: 15px; } - .btn-e2e-action svg { width: 18px; } - .e2e-run-botton span { font-size: 10px; } - .btn-show-results-buttons { display: flex; cursor: pointer; @@ -1462,35 +1268,28 @@ textarea { justify-content: center; z-index: 100; } - .actionShow-btn { display: flex; } - .e2e-add-capture { font-size: 11px; } - .setting { - overflow: scroll; + overflow-y: scroll; } } - .setting_fetch-config--apply-button { width: 6rem; border-radius: 7px; } - .setting_heading { display: flex; align-items: end; justify-content: space-between; } - .setting_heading--title { flex-grow: 1; } - .setting_add-header--button { border-bottom: none; margin-bottom: 0; @@ -1498,13 +1297,11 @@ textarea { margin-right: 19px; width: unset; } - .setting_container--setheaders { position: relative; display: flex; flex-direction: column; } - .setting_set-headers { display: flex; flex-direction: column; @@ -1514,13 +1311,12 @@ textarea { border: 1px solid #808080; padding-bottom: 1.5rem; position: relative; - overflow: scroll; + overflow-y: scroll; height: 40vh; margin-top: 5px; padding-bottom: 65px; padding-top: 5px; } - .setting_set-headers--inputs { display: flex; padding: 0 10px; @@ -1530,7 +1326,6 @@ textarea { border-radius: 7px; position: relative; } - .setting__set-headers--key-value { display: flex; gap: 10px; @@ -1538,31 +1333,25 @@ textarea { color: white; padding: 5px; } - .setting__set-headers--key { width: 25%; } - .setting__set-headers--value { flex-grow: 1; } - .setting_set-headers--inputs--key { width: 75%; cursor: text; } - .setting_set-headers--inputs--value { flex-grow: 1; cursor: text; } - .setting_set-headers--delete-button { position: absolute; right: 0; top: -25px; } - .setting_set-headers--apply-button { width: 6rem; margin-right: 31px; @@ -1572,7 +1361,6 @@ textarea { right: -10px; margin-bottom: 40px; } - .container-e2e { border-radius: 7px; border: 1px solid bisque; @@ -1584,12 +1372,10 @@ textarea { cursor: pointer; font-size: 12px; } - .container-e2e span { color: bisque; height: 20px; } - .container-detail { display: flex; justify-content: space-between; @@ -1599,7 +1385,6 @@ textarea { border-radius: 10px; margin-top: 5px; } - .container-re { overflow-wrap: anywhere; width: 50%; @@ -1607,14 +1392,25 @@ textarea { border-radius: 10px 0 0 10px; position: relative; } - .container-re-detail { display: flex; justify-content: space-between; align-items: baseline; color: white; } - +.container-re--header { + display: flex; + align-items: center; + border-bottom: 1px solid gainsboro; + padding: 5px; + background-color: rgba(20, 20, 20, 0.1); +} +.container-re--header--icon { + display: flex; + position: absolute; + left: 10px; + cursor: pointer; +} .history-re-delete { position: absolute; right: 25px; @@ -1623,18 +1419,15 @@ textarea { z-index: 5; height: 100%; } - .history-re-delete svg { backdrop-filter: blur(10px); border-radius: 50%; } - .container-re-detail-title { display: flex; color: white; align-items: baseline; } - .history-re-detail-date { font-size: 11px; position: absolute; @@ -1642,19 +1435,15 @@ textarea { top: 0; color: white; } - .history-response-took { left: 12px; } - .history-response-title { border-radius: 0 10px 0 0; } - .history-re-detail-collapse { padding-right: 2.5rem; } - .history-re-detail-button { margin-right: 2.5rem; background-color: gainsboro; @@ -1670,82 +1459,66 @@ textarea { width: 78px; white-space: nowrap; } - .history-re-detail-button-icon { width: 10px; display: inline-block; font-size: 20px; margin-right: 5px; } - .history-re-response-title { display: flex; align-items: center; padding-left: 15px; } - .history-re-response-title-status { position: relative; bottom: 2px; } - .history-re-detail-complete { display: none; } - -.history-re-detail-complete[data-show="true"] { +.history-re-detail-complete[data-show=true] { display: block; } - .container-response { background-color: rgba(7, 148, 191, 0.1); border-radius: 0 10px 10px 0; border-left: 1px solid gainsboro; } - .container-re-title { text-align: center; - background-color: rgba(20, 20, 20, 0.1); width: 100%; - border-bottom: 1px solid gainsboro; display: inline-block; color: bisque; } - .history-re-title_date { position: relative; border-right: 1px solid bisque; } - .clear-history { position: absolute; - bottom: 0; - right: 27px; + bottom: 20px; + left: 27px; display: flex; justify-content: end; - margin: 0 auto 5px auto; - padding: 10px 2px 10px 0; z-index: 5; } - .clear-history-button { border-radius: 50%; - background-color: darkred; - width: 3.5rem; - height: 3.5rem; + background-color: rgba(139, 0, 0, 0.9); + width: 2.5rem; + height: 2.5rem; border: 1px solid whiItesmoke; cursor: pointer; + border: 1px solid white; } - .clear-history-button:hover { - background-color: rgb(190, 6, 6); + background-color: rgba(139, 0, 0, 1); } - .tooltip { position: relative; display: inline; } - .tooltip-text { visibility: hidden; width: 100px; @@ -1754,36 +1527,28 @@ textarea { text-align: center; border-radius: 6px; padding: 5px 0; - position: absolute; z-index: 1; - - /* bottom: 0; */ bottom: 110%; left: 50%; margin-left: -50px; - opacity: 0; transition: opacity 1s; } - .tooltip:hover .tooltip-text { visibility: visible; opacity: 1; } - .tooltip-text::after { content: " "; position: absolute; top: 100%; - /* At the bottom of the tooltip */ left: 50%; margin-left: -5px; border-width: 5px; border-style: solid; border-color: rgb(255, 255, 255) transparent transparent transparent; } - .action-modal { display: flex; align-items: center; @@ -1792,7 +1557,6 @@ textarea { top: -1.35rem; right: 1.5rem; } - .modal-title { margin: 0 1rem; display: inline-block; @@ -1805,7 +1569,6 @@ textarea { backdrop-filter: blur(10px); z-index: 7; } - .modal-fullscreen { width: 25px; height: 25px; @@ -1813,7 +1576,6 @@ textarea { background-color: red; transition: visibility 200ms ease; } - .modal-close, .modal-fullscreen { display: flex; @@ -1824,45 +1586,38 @@ textarea { transition: visibility 200ms ease; border: 1px solid gainsboro; cursor: pointer; - backdrop-filter: blur(10px); color: #fff; + backdrop-filter: blur(10px); + -webkit-backdrop-filter: blur(10px); } - .modal-fullscreen { background-color: rgba(66, 196, 66, 0.5); } - .modal-close svg, .modal-fullscreen svg { opacity: 0; width: 20px; height: 20px; } - .modal-fullscreen svg { width: 13px; display: flex; margin: auto; } - .modal-close svg path:first-child { display: none; } - .modal-close svg path { stroke: #fff; } - .modal-close:hover, .modal-fullscreen:hover { opacity: 1; } - .modal-close:hover svg, .modal-fullscreen:hover svg { opacity: 1; } - .no-history { background-color: lightslategrey; font-size: 1.5rem; @@ -1872,7 +1627,6 @@ textarea { border-radius: 10px; padding: 10px; } - .tabs-container { display: flex; gap: 10px; @@ -1882,10 +1636,8 @@ textarea { z-index: 5; padding: 8px 8px 8px 8px; border-bottom: 1px solid gainsboro; - overflow-y: scroll; } - .tab-name { color: gainsboro; padding: 5px; @@ -1899,16 +1651,13 @@ textarea { white-space: nowrap; overflow: hidden; } - .tab-name:hover { background-color: #303632; } - -.tab-name[data-tab="true"] { +.tab-name[data-tab=true] { background-color: #1d201e; border: 1px solid gainsboro; } - .add-tab { color: gainsboro; align-self: center; @@ -1919,11 +1668,9 @@ textarea { cursor: pointer; border-radius: 5px; } - .add-tab:hover { background-color: #56615a; } - .tab-close { font-size: 1rem; line-height: 0.8rem; @@ -1937,66 +1684,50 @@ textarea { cursor: pointer; border-radius: 5px; } - -.tab-name[data-tab="true"]:hover .tab-close { +.tab-name[data-tab=true]:hover .tab-close { background-color: #1d201e; } - -.tab-name[data-tab="true"]:hover .tab-close:hover { +.tab-name[data-tab=true]:hover .tab-close:hover { background-color: #434c46; } - .tab-name:hover .tab-close { background-color: #303632; } - .tab-name:hover .tab-close:hover { background-color: #262b28; } - -.tab-name[data-tab="true"] .tab-close { +.tab-name[data-tab=true] .tab-close { background-color: #1d201e; } - .tab-name .tab-close { background-color: #232724; } - -/* ------------------------------- JSON Viewer ------------------------------ */ .cute-string { color: #f1fa8c; } - .cute-number { color: #50fa7b; } - .cute-boolean { color: #ff79c6; } - .cute-function { color: #bd93f9; } - .cute-null { color: #bd93f9; } - .cute-undefined { color: #bd93f9; } - .cute-key { color: #66d9ef; margin-right: 5px; } - .cute-colon { color: #f8f8f2; margin-left: 1px; } - .get-items { display: flex; justify-content: space-between; @@ -2004,63 +1735,49 @@ textarea { padding: 0.3rem 0; flex-flow: row wrap; } - .get-values { display: flex; border: 1px solid gainsboro; border-radius: 10px; margin-bottom: 5px; } - .get-values span { width: 1.5rem; - /* height: 1.5rem; */ cursor: pointer; padding: 0.2rem; text-align: center; color: bisque; } - .get-values span:first-child { background-color: rgba(129, 123, 123, 0.5); border-left: none; border-radius: 10px 0 0 10px; } - .get-values span:first-child:hover { background-color: #666666; } - .get-values span:nth-child(2) { background-color: #464646; border-left: 1px solid gainsboro; } - .get-values span:nth-child(2):hover { background-color: #666666; } - .get-values span:nth-child(3) { background-color: #333; border-left: 1px solid gainsboro; border-radius: 0 10px 10px 0; } - .get-values span:nth-child(3):hover { background-color: #666666; } - .get-values span.active { background-color: gainsboro; color: #021307; } - -/* ------------------------ MultiSelect Component CSS ----------------------- */ - .multi-select__wrapper { position: relative; } - .multi-select__field { background-color: rgba(70, 70, 70, 0.5); min-height: 35px; @@ -2074,7 +1791,6 @@ textarea { display: flex; flex-wrap: wrap; } - .multi-select__selected-item-wrapper { -webkit-box-align: center; align-items: center; @@ -2085,7 +1801,6 @@ textarea { overflow: hidden; box-sizing: border-box; } - .multi-select__icons-wrapper { -webkit-box-align: center; align-items: center; @@ -2094,7 +1809,6 @@ textarea { flex-shrink: 0; box-sizing: border-box; } - .multi-select__arrow-icon-wrapper { display: flex; position: relative; @@ -2103,7 +1817,6 @@ textarea { padding-left: 4px; box-sizing: border-box; } - .multi-select__arrow-icon-wrapper::before { content: ""; position: absolute; @@ -2113,11 +1826,9 @@ textarea { background-color: var(--color-bg-primary-hover); height: 100%; } - .multi-select__arrow-icon { stroke-width: 0; } - .multi-select__close-icon-wrapper { display: flex; transition: color 150ms ease 0s; @@ -2126,11 +1837,9 @@ textarea { padding-right: 4px; box-sizing: border-box; } - .multi-select__close-icon { stroke-width: 0; } - .multi-select__selected-item { color: black; display: flex; @@ -2140,7 +1849,6 @@ textarea { margin: 0.125rem; box-sizing: border-box; } - .multi-select__selected-item-text { overflow: hidden; text-overflow: ellipsis; @@ -2151,7 +1859,6 @@ textarea { box-sizing: border-box; cursor: default; } - .multi-select__selected-item-btn { -webkit-box-align: center; align-items: center; @@ -2162,12 +1869,10 @@ textarea { box-sizing: border-box; cursor: pointer; } - .multi-select__selected-item-btn:hover { background-color: var(--color-bg-primary-hover); color: var(--color-error); } - .multi-select__options { position: absolute; top: 100%; @@ -2183,12 +1888,10 @@ textarea { border: 1.2px solid #dcdcdc; z-index: 1; } - .multi-select__option { position: relative; cursor: pointer; } - .multi-select__option-label { display: flex; align-items: center; @@ -2201,7 +1904,6 @@ textarea { display: block; white-space: nowrap; } - .multi-select__option--no-option { cursor: default; display: flex; @@ -2211,7 +1913,6 @@ textarea { color: #dcdcdc; font-weight: bold; } - .multi-select__option::after { content: ""; position: absolute; @@ -2220,7 +1921,6 @@ textarea { width: 100%; background-color: rgba(220, 220, 220, 0.4); } - .multi-select__option:first-child::before { content: ""; position: absolute; @@ -2229,15 +1929,12 @@ textarea { width: 100%; background-color: rgba(220, 220, 220, 0.4); } - .multi-select__option:hover { background-color: rgba(255, 228, 196, 0.5); } - .multi-select__option:hover .multi-select__option-label { color: black; } - .multi-select__option > input { cursor: pointer; }