service-forge 0.1.18__py3-none-any.whl → 0.1.39__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of service-forge might be problematic. Click here for more details.
- service_forge/__init__.py +0 -0
- service_forge/api/deprecated_websocket_api.py +91 -33
- service_forge/api/deprecated_websocket_manager.py +70 -53
- service_forge/api/http_api.py +205 -55
- service_forge/api/kafka_api.py +113 -25
- service_forge/api/routers/meta_api/meta_api_router.py +57 -0
- service_forge/api/routers/service/service_router.py +42 -6
- service_forge/api/routers/trace/trace_router.py +326 -0
- service_forge/api/routers/websocket/websocket_router.py +69 -1
- service_forge/api/service_studio.py +9 -0
- service_forge/db/database.py +17 -0
- service_forge/execution_context.py +106 -0
- service_forge/frontend/static/assets/CreateNewNodeDialog-DkrEMxSH.js +1 -0
- service_forge/frontend/static/assets/CreateNewNodeDialog-DwFcBiGp.css +1 -0
- service_forge/frontend/static/assets/EditorSidePanel-BNVms9Fq.css +1 -0
- service_forge/frontend/static/assets/EditorSidePanel-DZbB3ILL.js +1 -0
- service_forge/frontend/static/assets/FeedbackPanel-CC8HX7Yo.js +1 -0
- service_forge/frontend/static/assets/FeedbackPanel-ClgniIVk.css +1 -0
- service_forge/frontend/static/assets/FormattedCodeViewer.vue_vue_type_script_setup_true_lang-BNuI1NCs.js +1 -0
- service_forge/frontend/static/assets/NodeDetailWrapper-BqFFM7-r.js +1 -0
- service_forge/frontend/static/assets/NodeDetailWrapper-pZBxv3J0.css +1 -0
- service_forge/frontend/static/assets/TestRunningDialog-D0GrCoYs.js +1 -0
- service_forge/frontend/static/assets/TestRunningDialog-dhXOsPgH.css +1 -0
- service_forge/frontend/static/assets/TracePanelWrapper-B9zvDSc_.js +1 -0
- service_forge/frontend/static/assets/TracePanelWrapper-BiednCrq.css +1 -0
- service_forge/frontend/static/assets/WorkflowEditor-CcaGGbko.js +3 -0
- service_forge/frontend/static/assets/WorkflowEditor-CmasOOYK.css +1 -0
- service_forge/frontend/static/assets/WorkflowList-Copuwi-a.css +1 -0
- service_forge/frontend/static/assets/WorkflowList-LrRJ7B7h.js +1 -0
- service_forge/frontend/static/assets/WorkflowStudio-CthjgII2.css +1 -0
- service_forge/frontend/static/assets/WorkflowStudio-FCyhGD4y.js +2 -0
- service_forge/frontend/static/assets/api-BDer3rj7.css +1 -0
- service_forge/frontend/static/assets/api-DyiqpKJK.js +1 -0
- service_forge/frontend/static/assets/code-editor-DBSql_sc.js +12 -0
- service_forge/frontend/static/assets/el-collapse-item-D4LG0FJ0.css +1 -0
- service_forge/frontend/static/assets/el-empty-D4ZqTl4F.css +1 -0
- service_forge/frontend/static/assets/el-form-item-BWkJzdQ_.css +1 -0
- service_forge/frontend/static/assets/el-input-D6B3r8CH.css +1 -0
- service_forge/frontend/static/assets/el-select-B0XIb2QK.css +1 -0
- service_forge/frontend/static/assets/el-tag-DljBBxJR.css +1 -0
- service_forge/frontend/static/assets/element-ui-D3x2y3TA.js +12 -0
- service_forge/frontend/static/assets/elkjs-Dm5QV7uy.js +24 -0
- service_forge/frontend/static/assets/highlightjs-D4ATuRwX.js +3 -0
- service_forge/frontend/static/assets/index-BMvodlwc.js +2 -0
- service_forge/frontend/static/assets/index-CjSe8i2q.css +1 -0
- service_forge/frontend/static/assets/js-yaml-yTPt38rv.js +32 -0
- service_forge/frontend/static/assets/time-DKCKV6Ug.js +1 -0
- service_forge/frontend/static/assets/ui-components-DQ7-U3pr.js +1 -0
- service_forge/frontend/static/assets/vue-core-DL-LgTX0.js +1 -0
- service_forge/frontend/static/assets/vue-flow-Dn7R8GPr.js +39 -0
- service_forge/frontend/static/index.html +16 -0
- service_forge/frontend/static/vite.svg +1 -0
- service_forge/model/meta_api/__init__.py +0 -0
- service_forge/model/meta_api/schema.py +29 -0
- service_forge/model/trace.py +82 -0
- service_forge/service.py +39 -11
- service_forge/service_config.py +14 -0
- service_forge/sft/cli.py +39 -0
- service_forge/sft/cmd/remote_deploy.py +160 -0
- service_forge/sft/cmd/remote_list_tars.py +111 -0
- service_forge/sft/config/injector.py +54 -7
- service_forge/sft/config/injector_default_files.py +13 -1
- service_forge/sft/config/sf_metadata.py +31 -27
- service_forge/sft/config/sft_config.py +18 -0
- service_forge/sft/util/assert_util.py +0 -1
- service_forge/telemetry.py +66 -0
- service_forge/utils/default_type_converter.py +1 -1
- service_forge/utils/type_converter.py +5 -0
- service_forge/utils/workflow_clone.py +1 -0
- service_forge/workflow/node.py +274 -27
- service_forge/workflow/triggers/fast_api_trigger.py +64 -28
- service_forge/workflow/triggers/websocket_api_trigger.py +66 -38
- service_forge/workflow/workflow.py +140 -37
- service_forge/workflow/workflow_callback.py +27 -4
- service_forge/workflow/workflow_factory.py +14 -0
- {service_forge-0.1.18.dist-info → service_forge-0.1.39.dist-info}/METADATA +4 -1
- service_forge-0.1.39.dist-info/RECORD +134 -0
- service_forge-0.1.18.dist-info/RECORD +0 -83
- {service_forge-0.1.18.dist-info → service_forge-0.1.39.dist-info}/WHEEL +0 -0
- {service_forge-0.1.18.dist-info → service_forge-0.1.39.dist-info}/entry_points.txt +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
:root{--el-popup-modal-bg-color:var(--el-color-black);--el-popup-modal-opacity:.5}.v-modal-enter{animation:v-modal-in var(--el-transition-duration-fast) ease}.v-modal-leave{animation:v-modal-out var(--el-transition-duration-fast) ease forwards}@keyframes v-modal-in{0%{opacity:0}}@keyframes v-modal-out{to{opacity:0}}.v-modal{background:var(--el-popup-modal-bg-color);height:100%;left:0;opacity:var(--el-popup-modal-opacity);position:fixed;top:0;width:100%}.el-popup-parent--hidden{overflow:hidden}.el-dialog{--el-dialog-width:50%;--el-dialog-margin-top:15vh;--el-dialog-bg-color:var(--el-bg-color);--el-dialog-box-shadow:var(--el-box-shadow);--el-dialog-title-font-size:var(--el-font-size-large);--el-dialog-content-font-size:14px;--el-dialog-font-line-height:var(--el-font-line-height-primary);--el-dialog-padding-primary:16px;--el-dialog-border-radius:var(--el-border-radius-base);background:var(--el-dialog-bg-color);border-radius:var(--el-dialog-border-radius);box-shadow:var(--el-dialog-box-shadow);box-sizing:border-box;margin:var(--el-dialog-margin-top,15vh) auto 50px;overflow-wrap:break-word;padding:var(--el-dialog-padding-primary);position:relative;width:var(--el-dialog-width,50%)}.el-dialog:focus{outline:none!important}.el-dialog.is-align-center{margin:auto}.el-dialog.is-fullscreen{--el-dialog-width:100%;--el-dialog-margin-top:0;border-radius:0;height:100%;margin-bottom:0;overflow:auto}.el-dialog__wrapper{inset:0;margin:0;overflow:auto;position:fixed}.el-dialog.is-draggable .el-dialog__header{cursor:move;-webkit-user-select:none;-moz-user-select:none;user-select:none}.el-dialog__header{padding-bottom:var(--el-dialog-padding-primary)}.el-dialog__header.show-close{padding-right:calc(var(--el-dialog-padding-primary) + var(--el-message-close-size, 16px))}.el-dialog__headerbtn{background:transparent;border:none;cursor:pointer;font-size:var(--el-message-close-size,16px);height:48px;outline:none;padding:0;position:absolute;right:0;top:0;width:48px}.el-dialog__headerbtn .el-dialog__close{color:var(--el-color-info);font-size:inherit}.el-dialog__headerbtn:focus .el-dialog__close,.el-dialog__headerbtn:hover .el-dialog__close{color:var(--el-color-primary)}.el-dialog__title{color:var(--el-text-color-primary);font-size:var(--el-dialog-title-font-size);line-height:var(--el-dialog-font-line-height)}.el-dialog__body{color:var(--el-text-color-regular);font-size:var(--el-dialog-content-font-size)}.el-dialog__footer{box-sizing:border-box;padding-top:var(--el-dialog-padding-primary);text-align:right}.el-dialog--center{text-align:center}.el-dialog--center .el-dialog__body{text-align:initial}.el-dialog--center .el-dialog__footer{text-align:inherit}.el-modal-dialog.is-penetrable{pointer-events:none}.el-modal-dialog.is-penetrable .el-dialog{pointer-events:auto}.el-overlay-dialog{inset:0;overflow:auto;position:fixed}.dialog-fade-enter-active{animation:modal-fade-in var(--el-transition-duration)}.dialog-fade-enter-active .el-overlay-dialog{animation:dialog-fade-in var(--el-transition-duration)}.dialog-fade-leave-active{animation:modal-fade-out var(--el-transition-duration)}.dialog-fade-leave-active .el-overlay-dialog{animation:dialog-fade-out var(--el-transition-duration)}@keyframes dialog-fade-in{0%{opacity:0;transform:translate3d(0,-20px,0)}to{opacity:1;transform:translateZ(0)}}@keyframes dialog-fade-out{0%{opacity:1;transform:translateZ(0)}to{opacity:0;transform:translate3d(0,-20px,0)}}@keyframes modal-fade-in{0%{opacity:0}to{opacity:1}}@keyframes modal-fade-out{0%{opacity:1}to{opacity:0}}.el-overlay{background-color:var(--el-overlay-color-lighter);height:100%;inset:0;overflow:auto;position:fixed;z-index:2000}.el-overlay .el-overlay-root{height:0}.el-table{--el-table-border-color:var(--el-border-color-lighter);--el-table-border:1px solid var(--el-table-border-color);--el-table-text-color:var(--el-text-color-regular);--el-table-header-text-color:var(--el-text-color-secondary);--el-table-row-hover-bg-color:var(--el-fill-color-light);--el-table-current-row-bg-color:var(--el-color-primary-light-9);--el-table-header-bg-color:var(--el-bg-color);--el-table-fixed-box-shadow:var(--el-box-shadow-light);--el-table-bg-color:var(--el-fill-color-blank);--el-table-tr-bg-color:var(--el-bg-color);--el-table-expanded-cell-bg-color:var(--el-fill-color-blank);--el-table-fixed-left-column:inset 10px 0 10px -10px rgba(0,0,0,.15);--el-table-fixed-right-column:inset -10px 0 10px -10px rgba(0,0,0,.15);--el-table-index:var(--el-index-normal);background-color:var(--el-table-bg-color);box-sizing:border-box;color:var(--el-table-text-color);font-size:var(--el-font-size-base);height:-moz-fit-content;height:fit-content;max-width:100%;overflow:hidden;position:relative;width:100%}.el-table__inner-wrapper{display:flex;flex-direction:column;height:100%;position:relative}.el-table__inner-wrapper:before{bottom:0;height:1px;left:0}.el-table tbody:focus-visible{outline:none}.el-table.has-footer.el-table--fluid-height tr:last-child td.el-table__cell,.el-table.has-footer.el-table--scrollable-y tr:last-child td.el-table__cell{border-bottom-color:transparent}.el-table__empty-block{align-items:center;display:flex;justify-content:center;left:0;min-height:60px;position:sticky;text-align:center;width:100%}.el-table__empty-text{color:var(--el-text-color-secondary);line-height:60px;width:50%}.el-table__expand-column .cell{padding:0;text-align:center;-webkit-user-select:none;-moz-user-select:none;user-select:none}.el-table__expand-icon{color:var(--el-text-color-regular);cursor:pointer;font-size:12px;height:20px;position:relative;transition:transform var(--el-transition-duration-fast) ease-in-out}.el-table__expand-icon--expanded{transform:rotate(90deg)}.el-table__expand-icon>.el-icon{font-size:12px}.el-table__expanded-cell{background-color:var(--el-table-expanded-cell-bg-color)}.el-table__expanded-cell[class*=cell]{padding:20px 50px}.el-table__expanded-cell:hover{background-color:transparent!important}.el-table__placeholder{display:inline-block;width:20px}.el-table__append-wrapper{overflow:hidden}.el-table--fit{border-bottom:0;border-right:0}.el-table--fit .el-table__cell.gutter{border-right-width:1px}.el-table--fit .el-table__inner-wrapper:before{width:100%}.el-table thead{color:var(--el-table-header-text-color)}.el-table thead th{font-weight:600}.el-table thead.is-group th.el-table__cell{background:var(--el-fill-color-light)}.el-table .el-table__cell{box-sizing:border-box;min-width:0;padding:8px 0;position:relative;text-align:left;text-overflow:ellipsis;vertical-align:middle;z-index:var(--el-table-index)}.el-table .el-table__cell.is-center{text-align:center}.el-table .el-table__cell.is-right{text-align:right}.el-table .el-table__cell.gutter{border-bottom-width:0;border-right-width:0;padding:0;width:15px}.el-table .el-table__cell.is-hidden>*{visibility:hidden}.el-table .cell{box-sizing:border-box;line-height:23px;overflow:hidden;overflow-wrap:break-word;padding:0 12px;text-overflow:ellipsis;white-space:normal}.el-table .cell.el-tooltip{min-width:50px;white-space:nowrap}.el-table--large{font-size:var(--el-font-size-base)}.el-table--large .el-table__cell{padding:12px 0}.el-table--large .cell{padding:0 16px}.el-table--default{font-size:var(--el-font-size-base)}.el-table--default .el-table__cell{padding:8px 0}.el-table--default .cell{padding:0 12px}.el-table--small{font-size:var(--el-font-size-extra-small)}.el-table--small .el-table__cell{padding:4px 0}.el-table--small .cell{padding:0 8px}.el-table tr{background-color:var(--el-table-tr-bg-color)}.el-table tr input[type=checkbox]{margin:0}.el-table td.el-table__cell,.el-table th.el-table__cell.is-leaf{border-bottom:var(--el-table-border)}.el-table th.el-table__cell.is-sortable{cursor:pointer}.el-table th.el-table__cell{background-color:var(--el-table-header-bg-color)}.el-table th.el-table__cell>.cell.highlight{color:var(--el-color-primary)}.el-table th.el-table__cell.required>div:before{background:#ff4d51;border-radius:50%;content:"";display:inline-block;height:8px;margin-right:5px;vertical-align:middle;width:8px}.el-table td.el-table__cell div{box-sizing:border-box}.el-table td.el-table__cell.gutter{width:0}.el-table--border .el-table__inner-wrapper:after,.el-table--border:after,.el-table--border:before,.el-table__inner-wrapper:before{background-color:var(--el-table-border-color);content:"";position:absolute;z-index:calc(var(--el-table-index) + 2)}.el-table--border .el-table__inner-wrapper:after{height:1px;left:0;top:0;width:100%;z-index:calc(var(--el-table-index) + 2)}.el-table--border:before{height:100%;left:0;top:-1px;width:1px}.el-table--border:after{height:100%;right:0;top:-1px;width:1px}.el-table--border .el-table__inner-wrapper{border-bottom:none;border-right:none}.el-table--border .el-table__footer-wrapper{flex-shrink:0;position:relative}.el-table--border .el-table__cell{border-right:var(--el-table-border)}.el-table--border th.el-table__cell.gutter:last-of-type{border-bottom:var(--el-table-border);border-bottom-width:1px}.el-table--border th.el-table__cell{border-bottom:var(--el-table-border)}.el-table--hidden{visibility:hidden}.el-table__body-wrapper,.el-table__footer-wrapper,.el-table__header-wrapper{width:100%}.el-table__body-wrapper tr td.el-table-fixed-column--left,.el-table__body-wrapper tr td.el-table-fixed-column--right,.el-table__body-wrapper tr th.el-table-fixed-column--left,.el-table__body-wrapper tr th.el-table-fixed-column--right,.el-table__footer-wrapper tr td.el-table-fixed-column--left,.el-table__footer-wrapper tr td.el-table-fixed-column--right,.el-table__footer-wrapper tr th.el-table-fixed-column--left,.el-table__footer-wrapper tr th.el-table-fixed-column--right,.el-table__header-wrapper tr td.el-table-fixed-column--left,.el-table__header-wrapper tr td.el-table-fixed-column--right,.el-table__header-wrapper tr th.el-table-fixed-column--left,.el-table__header-wrapper tr th.el-table-fixed-column--right{background:inherit;position:sticky!important;z-index:calc(var(--el-table-index) + 1)}.el-table__body-wrapper tr td.el-table-fixed-column--left.is-first-column:before,.el-table__body-wrapper tr td.el-table-fixed-column--left.is-last-column:before,.el-table__body-wrapper tr td.el-table-fixed-column--right.is-first-column:before,.el-table__body-wrapper tr td.el-table-fixed-column--right.is-last-column:before,.el-table__body-wrapper tr th.el-table-fixed-column--left.is-first-column:before,.el-table__body-wrapper tr th.el-table-fixed-column--left.is-last-column:before,.el-table__body-wrapper tr th.el-table-fixed-column--right.is-first-column:before,.el-table__body-wrapper tr th.el-table-fixed-column--right.is-last-column:before,.el-table__footer-wrapper tr td.el-table-fixed-column--left.is-first-column:before,.el-table__footer-wrapper tr td.el-table-fixed-column--left.is-last-column:before,.el-table__footer-wrapper tr td.el-table-fixed-column--right.is-first-column:before,.el-table__footer-wrapper tr td.el-table-fixed-column--right.is-last-column:before,.el-table__footer-wrapper tr th.el-table-fixed-column--left.is-first-column:before,.el-table__footer-wrapper tr th.el-table-fixed-column--left.is-last-column:before,.el-table__footer-wrapper tr th.el-table-fixed-column--right.is-first-column:before,.el-table__footer-wrapper tr th.el-table-fixed-column--right.is-last-column:before,.el-table__header-wrapper tr td.el-table-fixed-column--left.is-first-column:before,.el-table__header-wrapper tr td.el-table-fixed-column--left.is-last-column:before,.el-table__header-wrapper tr td.el-table-fixed-column--right.is-first-column:before,.el-table__header-wrapper tr td.el-table-fixed-column--right.is-last-column:before,.el-table__header-wrapper tr th.el-table-fixed-column--left.is-first-column:before,.el-table__header-wrapper tr th.el-table-fixed-column--left.is-last-column:before,.el-table__header-wrapper tr th.el-table-fixed-column--right.is-first-column:before,.el-table__header-wrapper tr th.el-table-fixed-column--right.is-last-column:before{bottom:-1px;box-shadow:none;content:"";overflow-x:hidden;overflow-y:hidden;pointer-events:none;position:absolute;top:0;touch-action:none;width:10px}.el-table__body-wrapper tr td.el-table-fixed-column--left.is-first-column:before,.el-table__body-wrapper tr td.el-table-fixed-column--right.is-first-column:before,.el-table__body-wrapper tr th.el-table-fixed-column--left.is-first-column:before,.el-table__body-wrapper tr th.el-table-fixed-column--right.is-first-column:before,.el-table__footer-wrapper tr td.el-table-fixed-column--left.is-first-column:before,.el-table__footer-wrapper tr td.el-table-fixed-column--right.is-first-column:before,.el-table__footer-wrapper tr th.el-table-fixed-column--left.is-first-column:before,.el-table__footer-wrapper tr th.el-table-fixed-column--right.is-first-column:before,.el-table__header-wrapper tr td.el-table-fixed-column--left.is-first-column:before,.el-table__header-wrapper tr td.el-table-fixed-column--right.is-first-column:before,.el-table__header-wrapper tr th.el-table-fixed-column--left.is-first-column:before,.el-table__header-wrapper tr th.el-table-fixed-column--right.is-first-column:before{left:-10px}.el-table__body-wrapper tr td.el-table-fixed-column--left.is-last-column:before,.el-table__body-wrapper tr td.el-table-fixed-column--right.is-last-column:before,.el-table__body-wrapper tr th.el-table-fixed-column--left.is-last-column:before,.el-table__body-wrapper tr th.el-table-fixed-column--right.is-last-column:before,.el-table__footer-wrapper tr td.el-table-fixed-column--left.is-last-column:before,.el-table__footer-wrapper tr td.el-table-fixed-column--right.is-last-column:before,.el-table__footer-wrapper tr th.el-table-fixed-column--left.is-last-column:before,.el-table__footer-wrapper tr th.el-table-fixed-column--right.is-last-column:before,.el-table__header-wrapper tr td.el-table-fixed-column--left.is-last-column:before,.el-table__header-wrapper tr td.el-table-fixed-column--right.is-last-column:before,.el-table__header-wrapper tr th.el-table-fixed-column--left.is-last-column:before,.el-table__header-wrapper tr th.el-table-fixed-column--right.is-last-column:before{right:-10px}.el-table__body-wrapper tr td.el-table__fixed-right-patch,.el-table__body-wrapper tr th.el-table__fixed-right-patch,.el-table__footer-wrapper tr td.el-table__fixed-right-patch,.el-table__footer-wrapper tr th.el-table__fixed-right-patch,.el-table__header-wrapper tr td.el-table__fixed-right-patch,.el-table__header-wrapper tr th.el-table__fixed-right-patch{background:#fff;position:sticky!important;right:0;z-index:calc(var(--el-table-index) + 1)}.el-table__header-wrapper{flex-shrink:0}.el-table__header-wrapper tr th.el-table-fixed-column--left,.el-table__header-wrapper tr th.el-table-fixed-column--right{background-color:var(--el-table-header-bg-color)}.el-table__body,.el-table__footer,.el-table__header{border-collapse:separate;table-layout:fixed}.el-table__header-wrapper{overflow:hidden}.el-table__header-wrapper tbody td.el-table__cell{background-color:var(--el-table-row-hover-bg-color);color:var(--el-table-text-color)}.el-table__footer-wrapper{flex-shrink:0;overflow:hidden}.el-table__footer-wrapper tfoot td.el-table__cell{background-color:var(--el-table-row-hover-bg-color);color:var(--el-table-text-color)}.el-table__body-wrapper .el-table-column--selection>.cell,.el-table__header-wrapper .el-table-column--selection>.cell{align-items:center;display:inline-flex;height:23px}.el-table__body-wrapper .el-table-column--selection .el-checkbox,.el-table__header-wrapper .el-table-column--selection .el-checkbox{height:unset}.el-table.is-scrolling-left .el-table-fixed-column--right.is-first-column:before{box-shadow:var(--el-table-fixed-right-column)}.el-table.is-scrolling-left.el-table--border .el-table-fixed-column--left.is-last-column.el-table__cell{border-right:var(--el-table-border)}.el-table.is-scrolling-left th.el-table-fixed-column--left{background-color:var(--el-table-header-bg-color)}.el-table.is-scrolling-right .el-table-fixed-column--left.is-last-column:before{box-shadow:var(--el-table-fixed-left-column)}.el-table.is-scrolling-right .el-table-fixed-column--left.is-last-column.el-table__cell{border-right:none}.el-table.is-scrolling-right th.el-table-fixed-column--right{background-color:var(--el-table-header-bg-color)}.el-table.is-scrolling-middle .el-table-fixed-column--left.is-last-column.el-table__cell{border-right:none}.el-table.is-scrolling-middle .el-table-fixed-column--right.is-first-column:before{box-shadow:var(--el-table-fixed-right-column)}.el-table.is-scrolling-middle .el-table-fixed-column--left.is-last-column:before{box-shadow:var(--el-table-fixed-left-column)}.el-table.is-scrolling-none .el-table-fixed-column--left.is-first-column:before,.el-table.is-scrolling-none .el-table-fixed-column--left.is-last-column:before,.el-table.is-scrolling-none .el-table-fixed-column--right.is-first-column:before,.el-table.is-scrolling-none .el-table-fixed-column--right.is-last-column:before{box-shadow:none}.el-table.is-scrolling-none th.el-table-fixed-column--left,.el-table.is-scrolling-none th.el-table-fixed-column--right{background-color:var(--el-table-header-bg-color)}.el-table__body-wrapper{flex:1;overflow:hidden;position:relative}.el-table__body-wrapper .el-scrollbar__bar{z-index:calc(var(--el-table-index) + 2)}.el-table .caret-wrapper{align-items:center;cursor:pointer;display:inline-flex;flex-direction:column;height:14px;overflow:initial;position:relative;vertical-align:middle;width:24px}.el-table .sort-caret{border:5px solid transparent;height:0;left:7px;position:absolute;width:0}.el-table .sort-caret.ascending{border-bottom-color:var(--el-text-color-placeholder);top:-5px}.el-table .sort-caret.descending{border-top-color:var(--el-text-color-placeholder);bottom:-3px}.el-table .ascending .sort-caret.ascending{border-bottom-color:var(--el-color-primary)}.el-table .descending .sort-caret.descending{border-top-color:var(--el-color-primary)}.el-table .hidden-columns{position:absolute;visibility:hidden;z-index:-1}.el-table--striped .el-table__body tr.el-table__row--striped td.el-table__cell{background:var(--el-fill-color-lighter)}.el-table--striped .el-table__body tr.el-table__row--striped.current-row td.el-table__cell{background-color:var(--el-table-current-row-bg-color)}.el-table__body tr.hover-row.current-row>td.el-table__cell,.el-table__body tr.hover-row.el-table__row--striped.current-row>td.el-table__cell,.el-table__body tr.hover-row.el-table__row--striped>td.el-table__cell,.el-table__body tr.hover-row>td.el-table__cell{background-color:var(--el-table-row-hover-bg-color)}.el-table__body tr>td.hover-cell{background-color:var(--el-table-row-hover-bg-color)}.el-table__body tr.current-row>td.el-table__cell{background-color:var(--el-table-current-row-bg-color)}.el-table.el-table--scrollable-y .el-table__body-header{position:sticky;top:0;z-index:calc(var(--el-table-index) + 2)}.el-table.el-table--scrollable-y .el-table__body-footer{bottom:0;position:sticky;z-index:calc(var(--el-table-index) + 2)}.el-table__column-resize-proxy{border-left:var(--el-table-border);bottom:0;left:200px;position:absolute;top:0;width:0;z-index:calc(var(--el-table-index) + 9)}.el-table__column-filter-trigger{cursor:pointer;display:inline-block}.el-table__column-filter-trigger i{color:var(--el-color-info);font-size:14px;vertical-align:middle}.el-table__border-left-patch{height:100%;top:0;width:1px}.el-table__border-bottom-patch,.el-table__border-left-patch{background-color:var(--el-table-border-color);left:0;position:absolute;z-index:calc(var(--el-table-index) + 2)}.el-table__border-bottom-patch{height:1px}.el-table__border-right-patch{background-color:var(--el-table-border-color);height:100%;position:absolute;top:0;width:1px;z-index:calc(var(--el-table-index) + 2)}.el-table--enable-row-transition .el-table__body td.el-table__cell{transition:background-color .25s ease}.el-table--enable-row-hover .el-table__body tr:hover>td.el-table__cell{background-color:var(--el-table-row-hover-bg-color)}.el-table [class*=el-table__row--level] .el-table__expand-icon{display:inline-block;height:12px;line-height:12px;margin-right:8px;text-align:center;width:12px}.el-table .el-table.el-table--border .el-table__cell{border-right:var(--el-table-border)}.el-table:not(.el-table--border) .el-table__cell{border-right:none}.el-table:not(.el-table--border)>.el-table__inner-wrapper:after{content:none}.el-checkbox{--el-checkbox-font-size:14px;--el-checkbox-font-weight:var(--el-font-weight-primary);--el-checkbox-text-color:var(--el-text-color-regular);--el-checkbox-input-height:14px;--el-checkbox-input-width:14px;--el-checkbox-border-radius:var(--el-border-radius-small);--el-checkbox-bg-color:var(--el-fill-color-blank);--el-checkbox-input-border:var(--el-border);--el-checkbox-disabled-border-color:var(--el-border-color);--el-checkbox-disabled-input-fill:var(--el-fill-color-light);--el-checkbox-disabled-icon-color:var(--el-text-color-placeholder);--el-checkbox-disabled-checked-input-fill:var(--el-border-color-extra-light);--el-checkbox-disabled-checked-input-border-color:var(--el-border-color);--el-checkbox-disabled-checked-icon-color:var(--el-text-color-placeholder);--el-checkbox-checked-text-color:var(--el-color-primary);--el-checkbox-checked-input-border-color:var(--el-color-primary);--el-checkbox-checked-bg-color:var(--el-color-primary);--el-checkbox-checked-icon-color:var(--el-color-white);--el-checkbox-input-border-color-hover:var(--el-color-primary);align-items:center;color:var(--el-checkbox-text-color);cursor:pointer;display:inline-flex;font-size:var(--el-font-size-base);font-weight:var(--el-checkbox-font-weight);height:var(--el-checkbox-height,32px);margin-right:30px;position:relative;-webkit-user-select:none;-moz-user-select:none;user-select:none;white-space:nowrap}.el-checkbox.is-disabled{cursor:not-allowed}.el-checkbox.is-bordered{border:var(--el-border);border-radius:var(--el-border-radius-base);box-sizing:border-box;padding:0 15px 0 9px}.el-checkbox.is-bordered.is-checked{border-color:var(--el-color-primary)}.el-checkbox.is-bordered.is-disabled{border-color:var(--el-border-color-lighter)}.el-checkbox.is-bordered.el-checkbox--large{border-radius:var(--el-border-radius-base);padding:0 19px 0 11px}.el-checkbox.is-bordered.el-checkbox--large .el-checkbox__label{font-size:var(--el-font-size-base)}.el-checkbox.is-bordered.el-checkbox--large .el-checkbox__inner{height:14px;width:14px}.el-checkbox.is-bordered.el-checkbox--small{border-radius:calc(var(--el-border-radius-base) - 1px);padding:0 11px 0 7px}.el-checkbox.is-bordered.el-checkbox--small .el-checkbox__label{font-size:12px}.el-checkbox.is-bordered.el-checkbox--small .el-checkbox__inner{height:12px;width:12px}.el-checkbox.is-bordered.el-checkbox--small .el-checkbox__inner:after{height:6px;width:2px}.el-checkbox input:focus-visible+.el-checkbox__inner{border-radius:var(--el-checkbox-border-radius);outline:2px solid var(--el-checkbox-input-border-color-hover);outline-offset:1px}.el-checkbox__input{cursor:pointer;display:inline-flex;outline:none;position:relative;white-space:nowrap}.el-checkbox__input.is-disabled .el-checkbox__inner{background-color:var(--el-checkbox-disabled-input-fill);border-color:var(--el-checkbox-disabled-border-color);cursor:not-allowed}.el-checkbox__input.is-disabled .el-checkbox__inner:after{border-color:var(--el-checkbox-disabled-icon-color);cursor:not-allowed}.el-checkbox__input.is-disabled.is-checked .el-checkbox__inner{background-color:var(--el-checkbox-disabled-checked-input-fill);border-color:var(--el-checkbox-disabled-checked-input-border-color)}.el-checkbox__input.is-disabled.is-checked .el-checkbox__inner:after{border-color:var(--el-checkbox-disabled-checked-icon-color)}.el-checkbox__input.is-disabled.is-indeterminate .el-checkbox__inner{background-color:var(--el-checkbox-disabled-checked-input-fill);border-color:var(--el-checkbox-disabled-checked-input-border-color)}.el-checkbox__input.is-disabled.is-indeterminate .el-checkbox__inner:before{background-color:var(--el-checkbox-disabled-checked-icon-color);border-color:var(--el-checkbox-disabled-checked-icon-color)}.el-checkbox__input.is-disabled+span.el-checkbox__label{color:var(--el-disabled-text-color);cursor:not-allowed}.el-checkbox__input.is-checked .el-checkbox__inner{background-color:var(--el-checkbox-checked-bg-color);border-color:var(--el-checkbox-checked-input-border-color)}.el-checkbox__input.is-checked .el-checkbox__inner:after{border-color:var(--el-checkbox-checked-icon-color);transform:translate(-45%,-60%) rotate(45deg) scaleY(1)}.el-checkbox__input.is-checked+.el-checkbox__label{color:var(--el-checkbox-checked-text-color)}.el-checkbox__input.is-focus:not(.is-checked) .el-checkbox__original:not(:focus-visible){border-color:var(--el-checkbox-input-border-color-hover)}.el-checkbox__input.is-indeterminate .el-checkbox__inner{background-color:var(--el-checkbox-checked-bg-color);border-color:var(--el-checkbox-checked-input-border-color)}.el-checkbox__input.is-indeterminate .el-checkbox__inner:before{background-color:var(--el-checkbox-checked-icon-color);content:"";display:block;height:2px;left:0;position:absolute;right:0;top:5px;transform:scale(.5)}.el-checkbox__input.is-indeterminate .el-checkbox__inner:after{display:none}.el-checkbox__inner{background-color:var(--el-checkbox-bg-color);border:var(--el-checkbox-input-border);border-radius:var(--el-checkbox-border-radius);box-sizing:border-box;display:inline-block;height:var(--el-checkbox-input-height);position:relative;transition:border-color .25s cubic-bezier(.71,-.46,.29,1.46),background-color .25s cubic-bezier(.71,-.46,.29,1.46),outline .25s cubic-bezier(.71,-.46,.29,1.46);width:var(--el-checkbox-input-width);z-index:var(--el-index-normal)}.el-checkbox__inner:hover{border-color:var(--el-checkbox-input-border-color-hover)}.el-checkbox__inner:after{border:1px solid transparent;border-left:0;border-top:0;box-sizing:content-box;content:"";height:7px;left:50%;position:absolute;top:50%;transform:translate(-45%,-60%) rotate(45deg) scaleY(0);transform-origin:center;transition:transform .15s ease-in .05s;width:3px}.el-checkbox__original{height:0;margin:0;opacity:0;outline:none;position:absolute;width:0;z-index:-1}.el-checkbox__label{display:inline-block;font-size:var(--el-checkbox-font-size);line-height:1;padding-left:8px}.el-checkbox.el-checkbox--large{height:40px}.el-checkbox.el-checkbox--large .el-checkbox__label{font-size:14px}.el-checkbox.el-checkbox--large .el-checkbox__inner{height:14px;width:14px}.el-checkbox.el-checkbox--small{height:24px}.el-checkbox.el-checkbox--small .el-checkbox__label{font-size:12px}.el-checkbox.el-checkbox--small .el-checkbox__inner{height:12px;width:12px}.el-checkbox.el-checkbox--small .el-checkbox__input.is-indeterminate .el-checkbox__inner:before{top:4px}.el-checkbox.el-checkbox--small .el-checkbox__inner:after{height:6px;width:2px}.el-checkbox:last-of-type{margin-right:0}.el-table-column--selection .cell{padding-left:14px;padding-right:14px}.el-table-filter{background-color:#fff;border:1px solid var(--el-border-color-lighter);border-radius:2px;box-shadow:var(--el-box-shadow-light);box-sizing:border-box}.el-table-filter__list{list-style:none;margin:0;min-width:100px;padding:5px 0}.el-table-filter__list-item{cursor:pointer;font-size:var(--el-font-size-base);line-height:36px;padding:0 10px}.el-table-filter__list-item:hover{background-color:var(--el-color-primary-light-9);color:var(--el-color-primary)}.el-table-filter__list-item.is-active{background-color:var(--el-color-primary);color:#fff}.el-table-filter__content{min-width:100px}.el-table-filter__bottom{border-top:1px solid var(--el-border-color-lighter);padding:8px}.el-table-filter__bottom button{background:transparent;border:none;color:var(--el-text-color-regular);cursor:pointer;font-size:var(--el-font-size-small);padding:0 3px}.el-table-filter__bottom button:hover{color:var(--el-color-primary)}.el-table-filter__bottom button:focus{outline:none}.el-table-filter__bottom button.is-disabled{color:var(--el-disabled-text-color);cursor:not-allowed}.el-table-filter__wrap{max-height:280px}.el-table-filter__checkbox-group{padding:10px}.el-table-filter__checkbox-group label.el-checkbox{align-items:center;display:flex;height:unset;margin-bottom:12px;margin-left:5px;margin-right:5px}.el-table-filter__checkbox-group .el-checkbox:last-child{margin-bottom:0}.type-info[data-v-ce5c662a]{display:flex;flex-direction:column;gap:20px;margin-top:24px}.type-info-entry-title[data-v-ce5c662a]{font-size:1.25rem;font-weight:500;padding-left:12px}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.editor-side-panel[data-v-202d287c]{display:flex;flex-direction:column;height:100%;overflow:hidden;background:var(--color-card-bg)}.panel-header[data-v-202d287c]{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 12px;border-bottom:1px solid var(--color-border)}.panel-header-icon[data-v-202d287c]{width:16px;height:16px}.panel-header-text[data-v-202d287c]{flex:1;font-size:16px;font-weight:600;color:var(--color-text-1);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import"./api-DyiqpKJK.js";import"./WorkflowEditor-CcaGGbko.js";import{u as l}from"./ui-components-DQ7-U3pr.js";import{e as c,o as p}from"./element-ui-D3x2y3TA.js";import{v as d,J as e,G as m,y as n,K as _,B as t,z as C,U as u,L as f,O as h,u as v}from"./vue-core-DL-LgTX0.js";import{_ as L}from"./index-BMvodlwc.js";import"./vue-flow-Dn7R8GPr.js";import"./js-yaml-yTPt38rv.js";import"./WorkflowStudio-FCyhGD4y.js";import"./elkjs-Dm5QV7uy.js";import"./code-editor-DBSql_sc.js";/* empty css */const B=l({tag:"svg",attr:{viewBox:"0 0 24 24",fill:"none"},child:[{tag:"path",attr:{d:"M6.2253 4.81108C5.83477 4.42056 5.20161 4.42056 4.81108 4.81108C4.42056 5.20161 4.42056 5.83477 4.81108 6.2253L10.5858 12L4.81114 17.7747C4.42062 18.1652 4.42062 18.7984 4.81114 19.1889C5.20167 19.5794 5.83483 19.5794 6.22535 19.1889L12 13.4142L17.7747 19.1889C18.1652 19.5794 18.7984 19.5794 19.1889 19.1889C19.5794 18.7984 19.5794 18.1652 19.1889 17.7747L13.4142 12L19.189 6.2253C19.5795 5.83477 19.5795 5.20161 19.189 4.81108C18.7985 4.42056 18.1653 4.42056 17.7748 4.81108L12 10.5858L6.2253 4.81108Z",fill:"currentColor"},child:[]}]}),x={class:"editor-side-panel"},y={class:"panel-header"},g={class:"panel-header-text"},k=d({__name:"EditorSidePanel",props:{show:{type:Boolean},icon:{},title:{},onClose:{type:Function}},setup(s){const o=s;return(a,S)=>{const i=c,r=p;return o.show??!0?(n(),e(r,{key:0,min:"20%",size:"25%"},{default:_(()=>[t("div",x,[t("div",y,[(n(),e(f(o.icon),{class:"panel-header-icon"})),t("div",g,h(o.title),1),u(i,{icon:v(B),color:"",text:"",onClick:o.onClose},null,8,["icon","onClick"])]),C(a.$slots,"default",{},void 0,!0)])]),_:3})):m("",!0)}}}),K=L(k,[["__scopeId","data-v-202d287c"]]);export{K as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{a as V,e as D}from"./api-DyiqpKJK.js";/* empty css */import{W as I}from"./WorkflowStudio-FCyhGD4y.js";import{v as g,c as w,x as o,y as a,B as n,J as d,G as m,O as i,u as N,U as u,r as v,aC as O,i as R,w as W,R as $,H as b,a9 as j,K as y,a2 as A}from"./vue-core-DL-LgTX0.js";import{_ as K}from"./FormattedCodeViewer.vue_vue_type_script_setup_true_lang-BNuI1NCs.js";import{f as L}from"./time-DKCKV6Ug.js";import{u as T,v as U,w as P,e as z,b as G,a as H}from"./element-ui-D3x2y3TA.js";import{_ as x}from"./index-BMvodlwc.js";import"./ui-components-DQ7-U3pr.js";import"./js-yaml-yTPt38rv.js";import"./elkjs-Dm5QV7uy.js";import"./highlightjs-D4ATuRwX.js";const J={class:"feedback-item-card"},M={class:"feedback-time"},S={key:1,class:"feedback-comment"},q={class:"feedback-comment-text full-comment"},Q={class:"feedback-comment-text collapsed-comment"},X={key:2,class:"feedback-meta"},Y=g({__name:"FeedbackItemCard",props:{feedback:{}},setup(_){const l=_,e=w(()=>l.feedback);return(p,t)=>{const c=T;return a(),o("div",J,[n("p",M,i(N(L)(e.value.created_at)),1),e.value.rating!==void 0&&e.value.rating!==null?(a(),d(c,{key:0,modelValue:e.value.rating,"onUpdate:modelValue":t[0]||(t[0]=r=>e.value.rating=r),max:5,"show-text":!1,size:"small",disabled:""},null,8,["modelValue"])):m("",!0),e.value.comment?(a(),o("details",S,[t[1]||(t[1]=n("summary",{class:"detail-item-title"},"评论",-1)),n("p",q,i(e.value.comment),1)])):m("",!0),n("p",Q,i(e.value.comment),1),e.value.metadata&&Object.keys(e.value.metadata).length>0?(a(),o("details",X,[t[2]||(t[2]=n("summary",{class:"detail-item-title"},"元数据",-1)),u(K,{class:"feedback-meta-content",content:e.value.metadata,lang:"json"},null,8,["content"])])):m("",!0)])}}}),Z=x(Y,[["__scopeId","data-v-a25b1194"]]),ee={class:"trace-list-area"},ae={key:0,class:"trace-list"},te=g({__name:"FeedbackPanel",setup(_){const l=v(!1),e=v([]),p=O(),t=w(()=>p.params.id),c=R(I.WORKFLOW_DATA),r=async()=>{if(t.value){l.value=!0;try{const s=await V.get("/",{base:D(),params:c?.value?.name?{workflow_name:c?.value?.name}:void 0});e.value=s.feedbacks}catch(s){H.error(s?.message||"加载反馈失败"),console.error("Failed to load feedbacks:",s)}finally{l.value=!1}}};return W(t,s=>{s&&r()},{immediate:!0}),(s,f)=>{const h=P,F=z,E=G,B=U;return $((a(),o("div",ee,[e.value.length>0?(a(),o("div",ae,[(a(!0),o(b,null,j(e.value,(k,C)=>(a(),o(b,{key:k.feedback_id},[u(Z,{feedback:k},null,8,["feedback"]),C<e.value.length-1?(a(),d(h,{key:0,class:"trace-item-divider"})):m("",!0)],64))),128))])):(a(),d(E,{key:1,class:"empty-state"},{default:y(()=>[u(F,{type:"primary",onClick:r},{default:y(()=>[...f[0]||(f[0]=[A("重新加载",-1)])]),_:1})]),_:1}))])),[[B,l.value]])}}}),fe=x(te,[["__scopeId","data-v-4fb29a7e"]]);export{fe as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.el-rate{--el-rate-height:20px;--el-rate-font-size:var(--el-font-size-base);--el-rate-icon-size:18px;--el-rate-icon-margin:6px;--el-rate-void-color:var(--el-border-color-darker);--el-rate-fill-color:#f7ba2a;--el-rate-disabled-void-color:var(--el-fill-color);--el-rate-text-color:var(--el-text-color-primary);--el-rate-outline-color:var(--el-color-primary-light-5);align-items:center;display:inline-flex;height:32px}.el-rate:active,.el-rate:focus{outline:none}.el-rate:focus-visible .el-rate__item .el-rate__icon.is-focus-visible{outline:2px solid var(--el-rate-outline-color);transition:outline-offset 0s,outline 0s}.el-rate__item{color:var(--el-rate-void-color);cursor:pointer;display:inline-block;font-size:0;line-height:normal;position:relative;vertical-align:middle}.el-rate .el-rate__icon{display:inline-block;font-size:var(--el-rate-icon-size);margin-right:var(--el-rate-icon-margin);position:relative;transition:var(--el-transition-duration)}.el-rate .el-rate__icon.hover{transform:scale(1.15)}.el-rate .el-rate__icon .path2{left:0;position:absolute;top:0}.el-rate .el-rate__icon.is-active{color:var(--el-rate-fill-color)}.el-rate__decimal{color:var(--el-rate-fill-color);display:inline-block;overflow:hidden}.el-rate__decimal,.el-rate__decimal--box{left:0;position:absolute;top:0}.el-rate__text{color:var(--el-rate-text-color);font-size:var(--el-rate-font-size);vertical-align:middle}.el-rate--large{height:40px}.el-rate--small{height:24px}.el-rate--small .el-rate__icon{font-size:14px}.el-rate.is-disabled .el-rate__item{color:var(--el-rate-disabled-void-color);cursor:auto}.feedback-item-card[data-v-a25b1194]{display:flex;flex-direction:column;gap:4px;border-radius:var(--radius-m);transition:all .2s}.feedback-time[data-v-a25b1194]{font-size:.75rem;color:var(--color-text-4);flex-shrink:0}.feedback-comment .full-comment[data-v-a25b1194]{margin-top:4px}.feedback-comment:open~.collapsed-comment[data-v-a25b1194]{display:none}.collapsed-comment[data-v-a25b1194]{display:-webkit-box;line-clamp:2;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}.feedback-meta[data-v-a25b1194]{margin-top:8px}.detail-item-title[data-v-a25b1194]{font-size:.75rem;cursor:pointer;color:var(--color-text-3)}.feedback-meta-content[data-v-a25b1194]{font-size:.875rem;padding:8px;margin-top:4px;border-radius:var(--radius-m);background:var(--color-card-bg-dark)}.trace-list-area[data-v-4fb29a7e]{width:100%;flex:1;overflow-y:auto}.trace-list[data-v-4fb29a7e]{display:flex;flex-direction:column;padding:12px 16px}.empty-state[data-v-4fb29a7e]{width:100%;align-self:center}.trace-item-divider[data-v-4fb29a7e]{margin:16px 0}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{j as u}from"./js-yaml-yTPt38rv.js";import{f as b}from"./element-ui-D3x2y3TA.js";import{r as T}from"./highlightjs-D4ATuRwX.js";import{v as R,c as d,x as p,y as A,B as O}from"./vue-core-DL-LgTX0.js";var C=T();const i=b(C);function S(e){const n={className:"attr",begin:/"(\\.|[^\\"\r\n])*"(?=\s*:)/,relevance:1.01},t={match:/[{}[\],:]/,className:"punctuation",relevance:0},a=["true","false","null"],s={scope:"literal",beginKeywords:a.join(" ")};return{name:"JSON",aliases:["jsonc"],keywords:{literal:a},contains:[n,t,e.QUOTE_STRING_MODE,s,e.C_NUMBER_MODE,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE],illegal:"\\S"}}function v(e){const n="true false yes no null",t="[\\w#;/?:@&=+$,.~*'()[\\]]+",a={className:"attr",variants:[{begin:/[\w*@][\w*@ :()\./-]*:(?=[ \t]|$)/},{begin:/"[\w*@][\w*@ :()\./-]*":(?=[ \t]|$)/},{begin:/'[\w*@][\w*@ :()\./-]*':(?=[ \t]|$)/}]},s={className:"template-variable",variants:[{begin:/\{\{/,end:/\}\}/},{begin:/%\{/,end:/\}/}]},E={className:"string",relevance:0,begin:/'/,end:/'/,contains:[{match:/''/,scope:"char.escape",relevance:0}]},o={className:"string",relevance:0,variants:[{begin:/"/,end:/"/},{begin:/\S+/}],contains:[e.BACKSLASH_ESCAPE,s]},g=e.inherit(o,{variants:[{begin:/'/,end:/'/,contains:[{begin:/''/,relevance:0}]},{begin:/"/,end:/"/},{begin:/[^\s,{}[\]]+/}]}),m={className:"number",begin:"\\b"+"[0-9]{4}(-[0-9][0-9]){0,2}"+"([Tt \\t][0-9][0-9]?(:[0-9][0-9]){2})?"+"(\\.[0-9]*)?"+"([ \\t])*(Z|[-+][0-9][0-9]?(:[0-9][0-9])?)?"+"\\b"},c={end:",",endsWithParent:!0,excludeEnd:!0,keywords:n,relevance:0},_={begin:/\{/,end:/\}/,contains:[c],illegal:"\\n",relevance:0},N={begin:"\\[",end:"\\]",contains:[c],illegal:"\\n",relevance:0},l=[a,{className:"meta",begin:"^---\\s*$",relevance:10},{className:"string",begin:"[\\|>]([1-9]?[+-])?[ ]*\\n( +)[^ ][^\\n]*\\n(\\2[^\\n]+\\n?)*"},{begin:"<%[%=-]?",end:"[%-]?%>",subLanguage:"ruby",excludeBegin:!0,excludeEnd:!0,relevance:0},{className:"type",begin:"!\\w+!"+t},{className:"type",begin:"!<"+t+">"},{className:"type",begin:"!"+t},{className:"type",begin:"!!"+t},{className:"meta",begin:"&"+e.UNDERSCORE_IDENT_RE+"$"},{className:"meta",begin:"\\*"+e.UNDERSCORE_IDENT_RE+"$"},{className:"bullet",begin:"-(?=[ ]|$)",relevance:0},e.HASH_COMMENT_MODE,{beginKeywords:n,keywords:{literal:n}},m,{className:"number",begin:e.C_NUMBER_RE+"\\b",relevance:0},_,N,E,o],r=[...l];return r.pop(),r.push(g),c.contains=r,{name:"YAML",case_insensitive:!0,aliases:["yml"],contains:l}}i.registerLanguage("json",S);i.registerLanguage("yaml",v);const M={class:"code-viewer"},I=["lang","innerHTML"],$=R({__name:"FormattedCodeViewer",props:{lang:{},content:{}},setup(e){const n=e,t=d(()=>{let a="";try{return n.lang==="yaml"?a=u.dump(n.content,{indent:2}):a=JSON.stringify(n.content,null,2),i.highlight(a,{language:n.lang||"json"}).value}catch{return a}});return(a,s)=>(A(),p("pre",M,[O("code",{lang:n.lang||"json",innerHTML:t.value},null,8,I)]))}});export{$ as _};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import"./api-DyiqpKJK.js";/* empty css */import{f as me,u as fe,G as V,W as h,g as ve}from"./WorkflowStudio-FCyhGD4y.js";/* empty css *//* empty css *//* empty css *//* empty css */import{u as _e}from"./vue-flow-Dn7R8GPr.js";import{u as ne}from"./ui-components-DQ7-U3pr.js";import{v as U,x as k,y as o,J as v,B as f,a2 as G,u as w,O as B,U as i,i as O,c as N,r as L,V as ae,w as oe,G as S,K as d,H as A,a9 as x,n as Ne,R as ee,S as te}from"./vue-core-DL-LgTX0.js";import{_ as q}from"./index-BMvodlwc.js";import{u as ge}from"./WorkflowEditor-CcaGGbko.js";import{_ as Q}from"./FormattedCodeViewer.vue_vue_type_script_setup_true_lang-BNuI1NCs.js";import{r as le,d as ye,s as ue,x as he,y as we,q as se,e as Oe,b as Ie}from"./element-ui-D3x2y3TA.js";import"./js-yaml-yTPt38rv.js";import"./elkjs-Dm5QV7uy.js";import"./code-editor-DBSql_sc.js";import"./highlightjs-D4ATuRwX.js";const be=ne({tag:"svg",attr:{viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true"},child:[{tag:"path",attr:{"fill-rule":"evenodd",d:"M7.28 7.72a.75.75 0 0 1 0 1.06l-2.47 2.47H21a.75.75 0 0 1 0 1.5H4.81l2.47 2.47a.75.75 0 1 1-1.06 1.06l-3.75-3.75a.75.75 0 0 1 0-1.06l3.75-3.75a.75.75 0 0 1 1.06 0Z",clipRule:"evenodd"},child:[]}]}),Ee=ne({tag:"svg",attr:{viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true"},child:[{tag:"path",attr:{"fill-rule":"evenodd",d:"M16.72 7.72a.75.75 0 0 1 1.06 0l3.75 3.75a.75.75 0 0 1 0 1.06l-3.75 3.75a.75.75 0 1 1-1.06-1.06l2.47-2.47H3a.75.75 0 0 1 0-1.5h16.19l-2.47-2.47a.75.75 0 0 1 0-1.06Z",clipRule:"evenodd"},child:[]}]}),Ve={class:"flow-target-item"},ke={class:"target-node-name"},Te={class:"target-handle-name"},De=U({__name:"FlowTargetItem",props:{nodeName:{},handleName:{},direction:{}},setup(R){const _=R;return(l,g)=>(o(),k("div",Ve,[_.direction==="from"?(o(),v(w(be),{key:0,class:"flow-icon"})):(o(),v(w(Ee),{key:1,class:"flow-icon"})),f("span",ke,B(_.nodeName||"?"),1),g[0]||(g[0]=G(" · ",-1)),f("span",Te,B(_.handleName||"?"),1)]))}}),X=q(De,[["__scopeId","data-v-6fafc360"]]),Se={class:"operation-hint"},Re=U({__name:"OperationHint",props:{content:{}},setup(R){const _=R;return(l,g)=>(o(),k("p",Se,[i(w(me),{class:"operation-hint-icon"}),G(" "+B(_.content),1)]))}}),re=q(Re,[["__scopeId","data-v-f445d7ea"]]),He={key:0,class:"node-detail-form-wrapper"},$e={class:"target-list-wrapper"},Fe={class:"record-parts"},Ce={class:"record-parts"},je=U({__name:"ModuleNodeDetail",setup(R){const _=O(h.IS_EDIT_MODE),l=O(h.NODE_FOR_INSPECTION),g=O(h.NODE_DATA_MAP),y=O(h.WORKFLOW_DATA),H=O(h.TRACE_FOR_INSPECTION),C=O(h.TEST_RUNNING_RECORD),$=fe().nodeSchemaMap,u=N(()=>g?.value?.get(l?.value?.id||"")),j=N(()=>{if(u.value?.outputs)return Object.keys(u.value.outputs)[0]}),m=N(()=>{if(u.value?.type)return $.get(u.value?.type)}),M=N(()=>{if(!H?.detail)return;const e={};return H.detail.spans.forEach(t=>{if(t.node_name===u.value?.name)try{const a=t.attributes?.["node.inputs"];a&&(e.input=JSON.parse(String(a)));const r=t.attributes?.["node.output"];r&&(e.output=JSON.parse(String(r)))}catch{}}),e}),W=N(()=>{if(!(!u.value||!C?.nodeOutput)&&u.value.name in C.nodeOutput){const e=C.nodeOutput[u.value.name];return typeof e=="object"?{output:e}:j.value?{output:{[j.value]:e}}:void 0}}),P=L(["inputs","outputs"]),J=_e(),{renameNode:Z}=ge(J),n=ae({type:"",name:"",args:{},inputs:{},outputs:{}}),s=L(),I=L(!1);oe(u,e=>{e&&(n.type=e.type,n.name=e.name,n.args=e.args||{},n.inputs=e.inputs||{},n.outputs=e.outputs||{}),I.value||Ne(()=>{I.value=!0,s.value?.validate(()=>{}).finally()}).finally()},{immediate:!0,deep:!0});const T=N(()=>{const e=$?.get(u.value?.type||"");return new Set(Object.keys(n.inputs??{}).filter(t=>!e?.inputs?.[t]))}),K=N(()=>{const e=$?.get(u.value?.type||"");return new Set(Object.keys(n.outputs??{}).filter(t=>!e?.outputs?.[t]))}),z=(e,t)=>{n.inputs?.[e]?n.inputs[e].value=t:n.inputs={...n.inputs||{},[e]:{type:"in",handleName:e,nodeId:V.configNameToNodeId(n.name),value:"",hasSource:!1}}},p=(e,t,a)=>{if(!t){a("节点名称不能为空");return}if(t!==u.value?.name&&g?.value?.has(V.configNameToNodeId(t))){a("节点名称已存在");return}a()},D=(e,t,a)=>{const r=e.field?.split(".")?.[1];if(r){if(T.value.has(r)){a("输入端口不合法");return}a()}},ie=(e,t,a)=>{const r=e.field?.split(".")?.[1];if(r&&K.value.has(r)){a("输出端口不合法");return}for(const b of t.to||[]){const E=g?.value?.get(b.nodeId);if(!E){a("流向了不存在的节点");return}if(b.handleName&&!E.inputs?.[b.handleName]){a("流向了不存在的端口");return}}a()},de=N(()=>{const e=Object.keys(u.value?.inputs||{}),t=Object.keys(u.value?.outputs||{}),a={type:[{required:!0,message:"节点类型不能为空",trigger:"blur"},{message:"节点类型不合法",validator:()=>!!m.value,trigger:"change"}],name:[{required:!0,trigger:"blur",validator:p}]};return e.forEach(r=>{a[`inputs.${r}`]=[{validator:D,trigger:"change"}]}),t.forEach(r=>{a[`outputs.${r}`]=[{validator:ie,trigger:"change"}]}),a}),Y=async e=>{if(!u.value||!await s.value?.validateField(e))return;const a=y?.value?.nodes?.find(r=>r.name===V.nodeIdToName(l?.value?.id||""));if(a)if(e.startsWith("inputs.")){const[r,b]=e.split(".");if(b){const E=n.inputs?.[b]?.value;E&&(a.args={...a.args,[b]:E})}}else e==="name"&&(Z(a.name,n.name),l&&(l.value.id=V.configNameToNodeId(n.name)))};return(e,t)=>{const a=ye,r=le,b=ue,E=we,pe=he,ce=se;return u.value?(o(),k("div",He,[i(ce,{ref_key:"formRef",ref:s,disabled:!w(_),model:n,rules:de.value,"label-position":"right","label-width":"auto"},{default:d(()=>[i(r,{label:"类型",prop:"type"},{default:d(()=>[i(a,{type:m.value?"primary":"danger"},{default:d(()=>[G(B(n.type),1)]),_:1},8,["type"])]),_:1}),i(r,{label:"名称",prop:"name"},{default:d(()=>[i(b,{modelValue:n.name,"onUpdate:modelValue":t[0]||(t[0]=c=>n.name=c),onBlur:t[1]||(t[1]=()=>Y("name"))},null,8,["modelValue"])]),_:1}),i(pe,{modelValue:P.value,"onUpdate:modelValue":t[2]||(t[2]=c=>P.value=c)},{default:d(()=>[i(re,{class:"operation-hint",content:"请在画布中进行端口连线,控制输入输出端口的流向。"}),Object.keys(n?.inputs||{}).length>0?(o(),v(E,{key:0,title:"输入端口·默认值",name:"inputs"},{default:d(()=>[(o(!0),k(A,null,x(Object.keys(n?.inputs||{}),c=>(o(),v(r,{key:c,label:c,prop:`inputs.${c}`},{default:d(()=>[i(b,{placeholder:"请输入:"+(m.value?.inputs?.[c]?.type??"未知类型"),"model-value":n.inputs?.[c]?.value,"onUpdate:modelValue":F=>z(c,F),onBlur:()=>Y(`inputs.${c}`)},null,8,["placeholder","model-value","onUpdate:modelValue","onBlur"])]),_:2},1032,["label","prop"]))),128))]),_:1})):S("",!0),Object.keys(n?.outputs||{}).length>0?(o(),v(E,{key:1,title:"输出端口·流向",name:"outputs"},{default:d(()=>[(o(!0),k(A,null,x(Object.keys(n?.outputs||{}),c=>(o(),v(r,{key:c,label:c,prop:`outputs.${c}`},{default:d(()=>[f("div",$e,[(o(!0),k(A,null,x(n.outputs?.[c]?.to||[],F=>(o(),v(X,{key:`${F.nodeId}|${F.handleName}`,"node-name":w(V).nodeIdToName(F.nodeId),"handle-name":F.handleName,direction:"to"},null,8,["node-name","handle-name"]))),128))])]),_:2},1032,["label","prop"]))),128))]),_:1})):S("",!0),M.value?(o(),v(E,{key:2,class:"record-group"},{title:d(()=>[...t[3]||(t[3]=[f("h4",{class:"strong-collapse-title"},"历史记录信息",-1)])]),default:d(()=>[f("div",Fe,[f("div",null,[t[4]||(t[4]=f("h5",{class:"record-part-title"},"节点输入",-1)),i(Q,{class:"code-viewer",lang:"json",content:M.value?.input||null},null,8,["content"])]),f("div",null,[t[5]||(t[5]=f("h5",{class:"record-part-title"},"节点输出",-1)),i(Q,{class:"code-viewer",lang:"json",content:M.value?.output||null},null,8,["content"])])])]),_:1})):S("",!0),W.value?(o(),v(E,{key:3,class:"record-group"},{title:d(()=>[...t[6]||(t[6]=[f("h4",{class:"strong-collapse-title"},"测试运行信息",-1)])]),default:d(()=>[f("div",Ce,[f("div",null,[t[7]||(t[7]=f("h5",{class:"record-part-title"},"节点输出",-1)),i(Q,{class:"code-viewer",lang:"json",content:W.value?.output||null},null,8,["content"])])])]),_:1})):S("",!0)]),_:1},8,["modelValue"])]),_:1},8,["disabled","model","rules"])])):S("",!0)}}}),Me=q(je,[["__scopeId","data-v-c0f77fbd"]]),Ae={class:"node-detail-wrapper"},xe={class:"node-detail-title"},Be={class:"flow-target-list"},Ue=U({__name:"PortNodeDetail",props:{portType:{}},setup(R){const _=R,l=N(()=>_.portType),g=O(h.IS_EDIT_MODE),y=O(h.WORKFLOW_DATA),H=O(h.NODE_DATA_MAP),C=O(h.NODE_FOR_INSPECTION),$=N(()=>H?.value?.get(C?.value?.id||"")),u=N(()=>l.value==="input"?Object.values($.value?.outputs||{}):Object.values($.value?.inputs||{})),j=L(),m=ae({newHandleName:"",inputValue:{}});oe(u,n=>{m.inputValue=Object.fromEntries(n.map(s=>[s.handleName,s.value||""]))},{immediate:!0});const M=(n,s,I)=>{if(s){if(u.value.some(T=>T.handleName===s)){I(new Error("与已存在的端口重名"));return}I()}},W=N(()=>({newHandleName:[{validator:M,trigger:"blur"}]})),P=async()=>{if(m.newHandleName){try{if(!await j.value?.validateField("newHandleName"))return}catch{return}l.value==="output"?y?.value.outputs?.push({name:m.newHandleName,port:""}):y?.value.inputs?.push({name:m.newHandleName,port:""})}},J=n=>{y?.value&&(l.value==="output"?y.value.outputs=y.value.outputs?.filter(s=>s.name!==n):y.value.inputs=y.value.inputs?.filter(s=>s.name!==n))},Z=(n,s)=>{if(l.value!=="input")return;const I=y?.value.inputs?.find(T=>T.name===n);I&&(I.value=s)};return(n,s)=>{const I=Oe,T=ue,K=le,z=se;return o(),k("div",Ae,[f("h3",xe,B(l.value==="input"?"工作流入口":"工作流出口"),1),i(re,{class:"operation-hint",content:"请在画布中进行端口连线,控制流向。"}),i(z,{ref_key:"formRef",ref:j,disabled:!w(g),model:m,rules:W.value,"label-position":"right","label-width":"auto"},{default:d(()=>[ee(i(K,{prop:"newHandleName"},{default:d(()=>[i(T,{placeholder:"添加新端口名称",modelValue:m.newHandleName,"onUpdate:modelValue":s[0]||(s[0]=p=>m.newHandleName=p)},{append:d(()=>[i(I,{onClick:P,disabled:!m.newHandleName},{default:d(()=>[...s[1]||(s[1]=[G("添加",-1)])]),_:1},8,["disabled"])]),_:1},8,["modelValue"])]),_:1},512),[[te,w(g)]]),(o(!0),k(A,null,x(u.value,p=>(o(),k("div",{class:"handle-wrapper",key:p.handleName},[ee(i(w(ve),{class:"delete-icon",onClick:D=>J(p.handleName)},null,8,["onClick"]),[[te,w(g)]]),i(K,{label:p.handleName,class:"handle-content-wrapper",prop:`inputValue.${p.handleName}`},{default:d(()=>[f("div",Be,[l.value==="output"&&p.from?(o(),v(X,{key:0,class:"flow-target-item","node-name":w(V).nodeIdToName(p.from.nodeId),"handle-name":p.from.handleName,direction:"from"},null,8,["node-name","handle-name"])):S("",!0),l.value==="input"?(o(),v(T,{key:1,"model-value":m.inputValue[p.handleName],"onUpdate:modelValue":D=>m.inputValue[p.handleName]=D,onBlur:D=>Z(p.handleName,m.inputValue[p.handleName]||"")},null,8,["model-value","onUpdate:modelValue","onBlur"])):S("",!0),l.value==="input"&&p.to?(o(!0),k(A,{key:2},x(p.to||[],D=>(o(),v(X,{class:"flow-target-item","node-name":w(V).nodeIdToName(D.nodeId),"handle-name":D.handleName,direction:"to"},null,8,["node-name","handle-name"]))),256)):S("",!0)])]),_:2},1032,["label","prop"])]))),128))]),_:1},8,["disabled","model","rules"])])}}}),We=q(Ue,[["__scopeId","data-v-4e2a2e81"]]),st=U({__name:"NodeDetailWrapper",setup(R){const _=O(h.NODE_FOR_INSPECTION),l=N(()=>_?.value?.id?V.isModuleNode(_.value.id)?"module":V.isInputNode(_.value.id)?"input":V.isOutputNode(_.value.id)?"output":"fallback":"fallback");return(g,y)=>{const H=Ie;return l.value==="module"?(o(),v(Me,{key:0})):l.value==="input"||l.value==="output"?(o(),v(We,{key:1,"port-type":l.value},null,8,["port-type"])):(o(),v(H,{key:2,description:"暂无节点数据"}))}}});export{st as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.flow-target-item[data-v-6fafc360]{display:flex;align-items:center;gap:8px;background:var(--color-card-bg-dark);border-radius:var(--radius-m);padding:0 12px;width:fit-content}.flow-target-item[data-v-6fafc360]{display:flex;align-items:center;gap:8px;background:var(--color-card-bg-dark);border-radius:var(--radius-m);padding:0 12px}.flow-icon[data-v-6fafc360]{width:16px;height:16px}.target-node-name[data-v-6fafc360]{font-weight:500}.operation-hint[data-v-f445d7ea]{display:flex;align-items:center;gap:4px;color:var(--color-text-3);font-size:.875rem}.operation-hint .operation-hint-icon[data-v-f445d7ea]{width:16px;height:16px;flex-shrink:0}.node-detail-form-wrapper[data-v-c0f77fbd]{flex:1;overflow-y:auto;padding:8px 12px}.target-list-wrapper[data-v-c0f77fbd]{display:flex;flex-direction:column}.operation-hint[data-v-c0f77fbd]{margin-top:20px;margin-bottom:12px}.record-group[data-v-c0f77fbd]{margin-top:32px}.strong-collapse-title[data-v-c0f77fbd]{font-size:.875rem;font-weight:600;color:var(--color-primary)}.record-parts[data-v-c0f77fbd]{display:flex;flex-direction:column;gap:12px}.record-part-title[data-v-c0f77fbd]{font-size:.75rem;font-weight:600;margin-bottom:4px;color:var(--color-text-2)}.code-viewer[data-v-c0f77fbd]{padding:4px 12px;border-radius:var(--radius-m);background:var(--color-card-bg-dark)}.node-detail-wrapper[data-v-4e2a2e81]{flex:1;overflow-y:auto;padding:12px 16px;display:flex;flex-direction:column;gap:12px}.node-detail-title[data-v-4e2a2e81]{font-size:1rem;font-weight:700}.handle-wrapper[data-v-4e2a2e81]{display:flex;flex:1;align-items:start;gap:20px}.handle-content-wrapper[data-v-4e2a2e81]{width:100%}.delete-icon[data-v-4e2a2e81]{width:1rem;height:1rem;color:var(--color-danger);cursor:pointer;margin-top:8px;flex-shrink:0}.flow-target-list[data-v-4e2a2e81]{display:flex;flex-direction:column;width:100%;gap:8px}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import"./api-DyiqpKJK.js";import{u as T,W as _}from"./WorkflowStudio-FCyhGD4y.js";/* empty css *//* empty css */import{e as x,q as R,r as N,s as B,i as C,t as D,a as F}from"./element-ui-D3x2y3TA.js";import{v as j,c as I,i as y,V as U,w as W,J as c,K as l,U as g,G as A,a2 as k,B as J,x as K,O as L,a9 as M,H as $,k as G,u as b,y as u}from"./vue-core-DL-LgTX0.js";import{_ as q}from"./index-BMvodlwc.js";import"./ui-components-DQ7-U3pr.js";import"./js-yaml-yTPt38rv.js";import"./elkjs-Dm5QV7uy.js";const H={class:"input-hint"},P=j({__name:"TestRunningDialog",props:{startRunning:{type:Function}},setup(v){const i=y(_.TEST_RUNNING_OPEN),m=y(_.WORKFLOW_DATA),V=T().nodeSchemaMap,w=v,o=I(()=>{for(const t of m?.value.nodes||[]){const e=V.get(t.type);if(e&&e.is_trigger)return e}}),s=U({}),h=t=>{const e=o.value?.outputs?.[t]?.type;return!(e==="str"||e==="bool"||e==="float"||e==="int")};W(o,()=>{for(const t of Object.keys(s))delete s[t];if(o.value?.outputs)for(const t of Object.keys(o.value.outputs))s[t]=""});const f=()=>{i&&(i.value=!1)},E=()=>{if(!m?.value||!o.value)return;const t={};for(const[e,a]of Object.entries(s)){if(!a.trim())continue;const p=o.value?.outputs?.[e];if(p)try{switch(p.type){case"str":t[e]=a;break;case"int":t[e]=parseInt(a);break;case"float":t[e]=parseFloat(a);break;case"bool":const r=a.toLowerCase();if(r==="true"||r==="1")t[e]=!0;else if(r==="false"||r==="0")t[e]=!1;else throw new Error(`布尔值格式错误: ${a}`);break;default:t[e]=JSON.parse(a)}}catch(r){F.error(`解析${e}字段时出错: ${r.message}`);return}}w.startRunning(m.value,t),f()};return(t,e)=>{const a=B,p=N,r=R,S=C,d=x;return u(),c(b(D),{modelValue:b(i),"onUpdate:modelValue":e[0]||(e[0]=n=>G(i)?i.value=n:null),title:"测试运行 · 模拟触发","align-center":""},{default:l(()=>[o.value?(u(),c(r,{key:0,model:s,"label-position":"right","label-width":"auto"},{default:l(()=>[J("p",H," 请提供"+L(o.value.name)+"的模拟输出(复杂数据格式需以JSON格式书写) ",1),(u(!0),K($,null,M(Object.keys(s),n=>(u(),c(p,{label:n},{default:l(()=>[g(a,{placeholder:"请输入:"+(o.value?.outputs?.[n]?.type??"未知类型"),type:h(n)?"textarea":"text",modelValue:s[n],"onUpdate:modelValue":O=>s[n]=O},null,8,["placeholder","type","modelValue","onUpdate:modelValue"])]),_:2},1032,["label"]))),256))]),_:1},8,["model"])):(u(),c(S,{key:1,icon:"warning",title:"不可测试","sub-title":"当前工作流没有Trigger类型节点,暂不支持测试运行"}))]),footer:l(()=>[g(d,{onClick:f},{default:l(()=>[...e[1]||(e[1]=[k("取消",-1)])]),_:1}),o.value?(u(),c(d,{key:0,onClick:E,type:"primary"},{default:l(()=>[...e[2]||(e[2]=[k("运行",-1)])]),_:1})):A("",!0)]),_:1},8,["modelValue"])}}}),re=q(P,[["__scopeId","data-v-5d56af4b"]]);export{re as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.input-hint[data-v-5d56af4b]{margin-bottom:16px}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{a as h,d as M}from"./api-DyiqpKJK.js";import{v as P,i as S,a8 as j,x as f,y as l,B as g,J as b,G as R,O as d,u as _,K as e,a2 as n,r as T,R as L,H as C,a9 as U,U as s,c as $,ad as H,aC as G,w as J}from"./vue-core-DL-LgTX0.js";import{W as O}from"./WorkflowStudio-FCyhGD4y.js";/* empty css *//* empty css *//* empty css *//* empty css */import{f as w}from"./time-DKCKV6Ug.js";import{d as B,v as F,w as q,z as Q,e as K,b as X,A as Y,B as Z,y as ee,x as te,a as ae}from"./element-ui-D3x2y3TA.js";import{_ as D}from"./index-BMvodlwc.js";/* empty css */import{E as se}from"./WorkflowEditor-CcaGGbko.js";import{_ as le}from"./FormattedCodeViewer.vue_vue_type_script_setup_true_lang-BNuI1NCs.js";import"./ui-components-DQ7-U3pr.js";import"./js-yaml-yTPt38rv.js";import"./elkjs-Dm5QV7uy.js";import"./vue-flow-Dn7R8GPr.js";import"./code-editor-DBSql_sc.js";import"./highlightjs-D4ATuRwX.js";const I={INTERNAL:0,SERVER:1,CLIENT:2,PRODUCER:3,CONSUMER:4},x={UNSET:0,OK:1,ERROR:2},ne={class:"trace-item-header"},oe={class:"trace-time"},re={class:"trace-id"},ie=P({__name:"TraceListItemCard",props:{trace:{}},setup(E){const o=S(O.TRACE_FOR_INSPECTION),m=E,{trace:a}=j(m),i=()=>{o&&(o.traceId=a.value.trace_id)};return(y,v)=>{const k=B;return l(),f("div",{class:"trace-list-item",onClick:i},[g("div",ne,[g("p",oe,d(_(w)(_(a).timestamp,{absolute:!0,format:{second:"2-digit"}})),1),_(a).status_code===_(x).ERROR?(l(),b(k,{key:0,type:"danger"},{default:e(()=>[...v[0]||(v[0]=[n(" 运行出错 ",-1)])]),_:1})):R("",!0)]),g("div",null,[g("span",null,d(_(a).span_count),1),v[1]||(v[1]=n(" 条SPAN记录 ",-1))]),g("p",re,d(_(a).trace_id),1)])}}}),ce=D(ie,[["__scopeId","data-v-265b69b7"]]),de={class:"trace-list-area"},ue={class:"trace-list"},_e={class:"pagination-container"},pe=P({__name:"TraceListPanel",props:{loading:{type:Boolean},reload:{type:Function},traces:{},total:{},pageSize:{}},setup(E){const o=E,m=T(1);return(a,i)=>{const y=q,v=Q,k=K,p=X,t=F;return L((l(),f("div",de,[o.traces.length>0?(l(),f(C,{key:0},[g("div",ue,[(l(!0),f(C,null,U(o.traces,(u,c)=>(l(),f(C,{key:u.trace_id},[s(ce,{trace:u},null,8,["trace"]),c<o.traces.length-1?(l(),b(y,{key:0,class:"trace-item-divider"})):R("",!0)],64))),128))]),g("div",_e,[s(v,{layout:"prev, pager, next",total:o.total,"page-size":o.pageSize,"pager-count":5,"current-page":m.value,"onUpdate:currentPage":i[0]||(i[0]=u=>m.value=u),onChange:i[1]||(i[1]=u=>E.reload(u))},null,8,["total","page-size","current-page"])])],64)):(l(),b(p,{key:1,class:"empty-state"},{default:e(()=>[s(k,{type:"primary",onClick:i[2]||(i[2]=u=>E.reload(m.value))},{default:e(()=>[...i[3]||(i[3]=[n("重新加载",-1)])]),_:1})]),_:1}))])),[[t,E.loading]])}}}),me=D(pe,[["__scopeId","data-v-16c1593d"]]),fe={class:"trace-detail-panel"},ve={class:"trace-detail-content"},be={class:"span-list-title"},ge={key:0,class:"span-attributes-wrapper"},Ee=P({__name:"TraceDetailPanel",setup(E){const o=S(O.TRACE_FOR_INSPECTION),m=$(()=>o?.traceId),a=$(()=>o?.detail),i=T([]),y=()=>{o&&(o.detail=void 0,o.traceId=void 0)},v=p=>{switch(p){case I.INTERNAL:return"Internal";case I.SERVER:return"Server";case I.CLIENT:return"Client";case I.PRODUCER:return"Producer";case I.CONSUMER:return"Consumer";default:return"Unknown"}},k=p=>{const t=[];p.span_id&&t.push(p.span_id),p.parent_span_id&&t.push(p.parent_span_id),i.value=t};return(p,t)=>{const u=K,c=Y,A=Z,N=B,V=ee,z=te,W=F;return l(),f("div",fe,[s(u,{icon:_(se),onClick:y},{default:e(()=>[...t[1]||(t[1]=[n("返回记录列表",-1)])]),_:1},8,["icon"]),L((l(),f("div",ve,[s(A,{title:m.value,column:1,border:"","label-width":150},H({_:2},[a.value?{name:"default",fn:e(()=>[s(c,{label:"Service Name"},{default:e(()=>[n(d(a.value.service_name),1)]),_:1}),s(c,{label:"Workflow Name"},{default:e(()=>[n(d(a.value.workflow_name),1)]),_:1}),s(c,{label:"Workflow Task ID"},{default:e(()=>[n(d(a.value.service_name),1)]),_:1}),s(c,{label:"Start Time"},{default:e(()=>[n(d(a.value.start_time?_(w)(a.value.start_time,{absolute:!0,format:{second:"2-digit"}}):""),1)]),_:1}),s(c,{label:"End Time"},{default:e(()=>[n(d(a.value.end_time?_(w)(a.value.end_time,{absolute:!0,format:{second:"2-digit"}}):""),1)]),_:1}),s(c,{label:"Has Error"},{default:e(()=>[n(d(a.value.has_error),1)]),_:1})]),key:"0"}:void 0]),1032,["title"]),a.value?(l(),f(C,{key:0},[g("h4",be,[g("span",null,d(a.value.span_count),1),t[2]||(t[2]=n(" 条Span记录 ",-1))]),s(z,{modelValue:i.value,"onUpdate:modelValue":t[0]||(t[0]=r=>i.value=r)},{default:e(()=>[(l(!0),f(C,null,U(a.value.spans,r=>(l(),b(V,{key:r.span_id,name:r.span_id,title:r.span_id},{default:e(()=>[s(A,{column:1,"label-width":150},{default:e(()=>[s(c,{label:"Name","label-class-name":"span-attr-label"},{default:e(()=>[n(d(r.name),1)]),_:2},1024),s(c,{label:"Parent Span ID","label-class-name":"span-attr-label"},{default:e(()=>[r.parent_span_id?(l(),b(u,{key:0,type:"primary",link:"",onClick:Ie=>k(r)},{default:e(()=>[n(d(r.parent_span_id),1)]),_:2},1032,["onClick"])):R("",!0)]),_:2},1024),s(c,{label:"Kind","label-class-name":"span-attr-label"},{default:e(()=>[r.kind!==void 0?(l(),b(N,{key:0,type:"primary"},{default:e(()=>[n(d(v(r.kind)),1)]),_:2},1024)):R("",!0)]),_:2},1024),s(c,{label:"Time","label-class-name":"span-attr-label"},{default:e(()=>[n(d(r.timestamp?_(w)(r.timestamp,{absolute:!0,format:{second:"2-digit"}}):""),1)]),_:2},1024),s(c,{label:"Duration Nano","label-class-name":"span-attr-label"},{default:e(()=>[n(d(r.duration_nano),1)]),_:2},1024),s(c,{label:"Kind","label-class-name":"span-attr-label"},{default:e(()=>[r.status_code===_(x).OK?(l(),b(N,{key:0,type:"success"},{default:e(()=>[...t[3]||(t[3]=[n("OK",-1)])]),_:1})):r.status_code===_(x).ERROR?(l(),b(N,{key:1,type:"danger"},{default:e(()=>[...t[4]||(t[4]=[n(" ERROR ",-1)])]),_:1})):(l(),b(N,{key:2,type:"info"},{default:e(()=>[...t[5]||(t[5]=[n("UNSET",-1)])]),_:1}))]),_:2},1024),s(c,{label:"Node Name","label-class-name":"span-attr-label"},{default:e(()=>[n(d(r.node_name),1)]),_:2},1024),s(c,{label:"Attributes","label-class-name":"span-attr-label"},{default:e(()=>[r.attributes?(l(),f("span",ge,[s(le,{content:r.attributes,lang:"json"},null,8,["content"])])):R("",!0)]),_:2},1024)]),_:2},1024)]),_:2},1032,["name","title"]))),128))]),_:1},8,["modelValue"])],64)):R("",!0)])),[[W,_(o)?.detail===void 0]])])}}}),ye=D(Ee,[["__scopeId","data-v-99cb9cbd"]]),ke={class:"trace-panel-wrapper"},Re=P({__name:"TracePanelWrapper",setup(E){const o=T(!1),m=T(),a=T(100),i=G(),y=$(()=>i.params.id),v=S(O.WORKFLOW_DATA),k=S(O.TRACE_FOR_INSPECTION),p=async t=>{if(y.value){o.value=!0;try{m.value=await h.post("/list",{workflow_name:v?.value?.name,offset:t?(t-1)*a.value:0,limit:a.value},{base:M()})}catch(u){ae.error(u?.message||"加载记录失败"),console.error("Failed to load traces:",u)}finally{o.value=!1}}};return J(y,t=>{t&&p()},{immediate:!0}),(t,u)=>(l(),f("div",ke,[s(me,{loading:o.value,traces:m.value?.traces||[],total:m.value?.total||0,reload:p,pageSize:a.value},null,8,["loading","traces","total","pageSize"]),_(k)?.traceId?(l(),b(ye,{key:0})):R("",!0)]))}}),he=D(Re,[["__scopeId","data-v-21c8fd36"]]);export{he as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.el-pagination{--el-pagination-font-size:14px;--el-pagination-bg-color:var(--el-fill-color-blank);--el-pagination-text-color:var(--el-text-color-primary);--el-pagination-border-radius:2px;--el-pagination-button-color:var(--el-text-color-primary);--el-pagination-button-width:32px;--el-pagination-button-height:32px;--el-pagination-button-disabled-color:var(--el-text-color-placeholder);--el-pagination-button-disabled-bg-color:var(--el-fill-color-blank);--el-pagination-button-bg-color:var(--el-fill-color);--el-pagination-hover-color:var(--el-color-primary);--el-pagination-font-size-small:12px;--el-pagination-button-width-small:24px;--el-pagination-button-height-small:24px;--el-pagination-button-width-large:40px;--el-pagination-button-height-large:40px;--el-pagination-item-gap:16px;align-items:center;color:var(--el-pagination-text-color);display:flex;font-size:var(--el-pagination-font-size);font-weight:400;white-space:nowrap}.el-pagination .el-input__inner{-moz-appearance:textfield;text-align:center}.el-pagination .el-select{width:128px}.el-pagination .btn-next,.el-pagination .btn-prev{align-items:center;background:var(--el-pagination-bg-color);border:none;border-radius:var(--el-pagination-border-radius);box-sizing:border-box;color:var(--el-pagination-button-color);cursor:pointer;display:flex;font-size:var(--el-pagination-font-size);height:var(--el-pagination-button-height);justify-content:center;line-height:var(--el-pagination-button-height);min-width:var(--el-pagination-button-width);padding:0 4px;text-align:center}.el-pagination .btn-next *,.el-pagination .btn-prev *{pointer-events:none}.el-pagination .btn-next:focus,.el-pagination .btn-prev:focus{outline:none}.el-pagination .btn-next:hover,.el-pagination .btn-prev:hover{color:var(--el-pagination-hover-color)}.el-pagination .btn-next.is-active,.el-pagination .btn-prev.is-active{color:var(--el-pagination-hover-color);cursor:default;font-weight:700}.el-pagination .btn-next.is-active.is-disabled,.el-pagination .btn-prev.is-active.is-disabled{color:var(--el-text-color-secondary);font-weight:700}.el-pagination .btn-next.is-disabled,.el-pagination .btn-next:disabled,.el-pagination .btn-prev.is-disabled,.el-pagination .btn-prev:disabled{background-color:var(--el-pagination-button-disabled-bg-color);color:var(--el-pagination-button-disabled-color);cursor:not-allowed}.el-pagination .btn-next:focus-visible,.el-pagination .btn-prev:focus-visible{outline:1px solid var(--el-pagination-hover-color);outline-offset:-1px}.el-pagination .btn-next .el-icon,.el-pagination .btn-prev .el-icon{display:block;font-size:12px;font-weight:700;width:inherit}.el-pagination>.is-first{margin-left:0!important}.el-pagination>.is-last{margin-right:0!important}.el-pagination .btn-prev{margin-left:var(--el-pagination-item-gap)}.el-pagination__sizes,.el-pagination__total{color:var(--el-text-color-regular);font-weight:400;margin-left:var(--el-pagination-item-gap)}.el-pagination__total[disabled=true]{color:var(--el-text-color-placeholder)}.el-pagination__jump{align-items:center;color:var(--el-text-color-regular);display:flex;font-weight:400;margin-left:var(--el-pagination-item-gap)}.el-pagination__jump[disabled=true]{color:var(--el-text-color-placeholder)}.el-pagination__goto{margin-right:8px}.el-pagination__editor{box-sizing:border-box;text-align:center}.el-pagination__editor.el-input{width:56px}.el-pagination__editor .el-input__inner::-webkit-inner-spin-button,.el-pagination__editor .el-input__inner::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.el-pagination__classifier{margin-left:8px}.el-pagination__rightwrapper{align-items:center;display:flex;flex:1;justify-content:flex-end}.el-pagination.is-background .btn-next,.el-pagination.is-background .btn-prev,.el-pagination.is-background .el-pager li{background-color:var(--el-pagination-button-bg-color);margin:0 4px}.el-pagination.is-background .btn-next.is-active,.el-pagination.is-background .btn-prev.is-active,.el-pagination.is-background .el-pager li.is-active{background-color:var(--el-color-primary);color:var(--el-color-white)}.el-pagination.is-background .btn-next.is-disabled,.el-pagination.is-background .btn-next:disabled,.el-pagination.is-background .btn-prev.is-disabled,.el-pagination.is-background .btn-prev:disabled,.el-pagination.is-background .el-pager li.is-disabled,.el-pagination.is-background .el-pager li:disabled{background-color:var(--el-disabled-bg-color);color:var(--el-text-color-placeholder)}.el-pagination.is-background .btn-next.is-disabled.is-active,.el-pagination.is-background .btn-next:disabled.is-active,.el-pagination.is-background .btn-prev.is-disabled.is-active,.el-pagination.is-background .btn-prev:disabled.is-active,.el-pagination.is-background .el-pager li.is-disabled.is-active,.el-pagination.is-background .el-pager li:disabled.is-active{background-color:var(--el-fill-color-dark);color:var(--el-text-color-secondary)}.el-pagination.is-background .btn-prev{margin-left:var(--el-pagination-item-gap)}.el-pagination--small .btn-next,.el-pagination--small .btn-prev,.el-pagination--small .el-pager li{font-size:var(--el-pagination-font-size-small);height:var(--el-pagination-button-height-small);line-height:var(--el-pagination-button-height-small);min-width:var(--el-pagination-button-width-small)}.el-pagination--small button,.el-pagination--small span:not([class*=suffix]){font-size:var(--el-pagination-font-size-small)}.el-pagination--small .el-select{width:100px}.el-pagination--large .btn-next,.el-pagination--large .btn-prev,.el-pagination--large .el-pager li{height:var(--el-pagination-button-height-large);line-height:var(--el-pagination-button-height-large);min-width:var(--el-pagination-button-width-large)}.el-pagination--large .el-select .el-input{width:160px}.el-pager{font-size:0;list-style:none;margin:0;padding:0;-webkit-user-select:none;-moz-user-select:none;user-select:none}.el-pager,.el-pager li{align-items:center;display:flex}.el-pager li{background:var(--el-pagination-bg-color);border:none;border-radius:var(--el-pagination-border-radius);box-sizing:border-box;color:var(--el-pagination-button-color);cursor:pointer;font-size:var(--el-pagination-font-size);height:var(--el-pagination-button-height);justify-content:center;line-height:var(--el-pagination-button-height);min-width:var(--el-pagination-button-width);padding:0 4px;text-align:center}.el-pager li *{pointer-events:none}.el-pager li:focus{outline:none}.el-pager li:hover{color:var(--el-pagination-hover-color)}.el-pager li.is-active{color:var(--el-pagination-hover-color);cursor:default;font-weight:700}.el-pager li.is-active.is-disabled{color:var(--el-text-color-secondary);font-weight:700}.el-pager li.is-disabled,.el-pager li:disabled{background-color:var(--el-pagination-button-disabled-bg-color);color:var(--el-pagination-button-disabled-color);cursor:not-allowed}.el-pager li:focus-visible{outline:1px solid var(--el-pagination-hover-color);outline-offset:-1px}.trace-list-item[data-v-265b69b7]{display:flex;flex-direction:column;gap:4px;cursor:pointer;position:relative;z-index:1}.trace-list-item[data-v-265b69b7]:after{content:"";position:absolute;inset:-4px -8px;z-index:-1;border-radius:var(--radius-m)}.trace-list-item[data-v-265b69b7]:hover:after{background-color:var(--color-card-bg-dark)}.trace-item-header[data-v-265b69b7]{display:flex;align-items:center;justify-content:space-between;width:100%}.trace-time[data-v-265b69b7]{font-weight:600;color:var(--color-text-1)}.trace-id[data-v-265b69b7]{color:var(--color-text-3);font-size:.875rem}.trace-list-area[data-v-16c1593d]{display:flex;flex-direction:column;align-items:center;width:100%;height:100%;overflow-y:auto}.trace-list[data-v-16c1593d]{display:flex;width:100%;flex-direction:column;padding:12px 16px;margin-bottom:128px}.empty-state[data-v-16c1593d]{width:100%;align-self:center}.trace-item-divider[data-v-16c1593d]{margin:16px 0}.pagination-container[data-v-16c1593d]{position:absolute;padding:4px 16px;bottom:16px;background:var(--color-card-bg);z-index:10;border-radius:32px;border:1px solid var(--color-border);box-shadow:var(--box-shadow)}.el-descriptions{--el-descriptions-table-border:1px solid var(--el-border-color-lighter);--el-descriptions-item-bordered-label-background:var(--el-fill-color-light);box-sizing:border-box;color:var(--el-text-color-primary);font-size:var(--el-font-size-base)}.el-descriptions__header{align-items:center;display:flex;justify-content:space-between;margin-bottom:16px}.el-descriptions__title{color:var(--el-text-color-primary);font-size:16px;font-weight:700}.el-descriptions__body{background-color:var(--el-fill-color-blank)}.el-descriptions__body .el-descriptions__table{border-collapse:collapse;width:100%}.el-descriptions__body .el-descriptions__table .el-descriptions__cell{box-sizing:border-box;font-size:14px;line-height:23px;text-align:left}.el-descriptions__body .el-descriptions__table .el-descriptions__cell.is-left{text-align:left}.el-descriptions__body .el-descriptions__table .el-descriptions__cell.is-center{text-align:center}.el-descriptions__body .el-descriptions__table .el-descriptions__cell.is-right{text-align:right}.el-descriptions__body .el-descriptions__table.is-bordered .el-descriptions__cell{border:var(--el-descriptions-table-border);padding:8px 11px}.el-descriptions__body .el-descriptions__table:not(.is-bordered) .el-descriptions__cell{padding-bottom:12px}.el-descriptions--large{font-size:14px}.el-descriptions--large .el-descriptions__header{margin-bottom:20px}.el-descriptions--large .el-descriptions__header .el-descriptions__title{font-size:16px}.el-descriptions--large .el-descriptions__body .el-descriptions__table .el-descriptions__cell{font-size:14px}.el-descriptions--large .el-descriptions__body .el-descriptions__table.is-bordered .el-descriptions__cell{padding:12px 15px}.el-descriptions--large .el-descriptions__body .el-descriptions__table:not(.is-bordered) .el-descriptions__cell{padding-bottom:16px}.el-descriptions--small{font-size:12px}.el-descriptions--small .el-descriptions__header{margin-bottom:12px}.el-descriptions--small .el-descriptions__header .el-descriptions__title{font-size:14px}.el-descriptions--small .el-descriptions__body .el-descriptions__table .el-descriptions__cell{font-size:12px}.el-descriptions--small .el-descriptions__body .el-descriptions__table.is-bordered .el-descriptions__cell{padding:4px 7px}.el-descriptions--small .el-descriptions__body .el-descriptions__table:not(.is-bordered) .el-descriptions__cell{padding-bottom:8px}.el-descriptions__label.el-descriptions__cell.is-bordered-label{background:var(--el-descriptions-item-bordered-label-background);color:var(--el-text-color-regular);font-weight:700}.el-descriptions__label:not(.is-bordered-label){color:var(--el-text-color-primary);margin-right:16px}.el-descriptions__label.el-descriptions__cell:not(.is-bordered-label).is-vertical-label{padding-bottom:6px}.el-descriptions__content.el-descriptions__cell.is-bordered-content{color:var(--el-text-color-primary)}.el-descriptions__content:not(.is-bordered-label){color:var(--el-text-color-regular)}.el-descriptions--large .el-descriptions__label:not(.is-bordered-label){margin-right:16px}.el-descriptions--large .el-descriptions__label.el-descriptions__cell:not(.is-bordered-label).is-vertical-label{padding-bottom:8px}.el-descriptions--small .el-descriptions__label:not(.is-bordered-label){margin-right:12px}.el-descriptions--small .el-descriptions__label.el-descriptions__cell:not(.is-bordered-label).is-vertical-label{padding-bottom:4px}.trace-detail-panel[data-v-99cb9cbd]{position:absolute;inset:0;z-index:20;display:flex;flex-direction:column;gap:24px;padding:12px 16px;overflow-y:auto;background:var(--color-card-bg)}.trace-detail-content[data-v-99cb9cbd]{display:flex;flex-direction:column;gap:16px}.span-list-title[data-v-99cb9cbd],[data-v-99cb9cbd] .span-attr-label{font-weight:600}.span-attributes-wrapper[data-v-99cb9cbd]{display:inline-flex;max-width:400px;overflow-x:auto}.trace-panel-wrapper[data-v-21c8fd36]{width:100%;flex:1;position:relative;overflow:hidden}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./EditorSidePanel-DZbB3ILL.js","./api-DyiqpKJK.js","./api-BDer3rj7.css","./ui-components-DQ7-U3pr.js","./vue-core-DL-LgTX0.js","./element-ui-D3x2y3TA.js","./index-BMvodlwc.js","./index-CjSe8i2q.css","./vue-flow-Dn7R8GPr.js","./js-yaml-yTPt38rv.js","./WorkflowStudio-FCyhGD4y.js","./elkjs-Dm5QV7uy.js","./WorkflowStudio-CthjgII2.css","./code-editor-DBSql_sc.js","./EditorSidePanel-BNVms9Fq.css","./el-tag-DljBBxJR.css","./FeedbackPanel-CC8HX7Yo.js","./FormattedCodeViewer.vue_vue_type_script_setup_true_lang-BNuI1NCs.js","./highlightjs-D4ATuRwX.js","./time-DKCKV6Ug.js","./FeedbackPanel-ClgniIVk.css","./el-empty-D4ZqTl4F.css","./NodeDetailWrapper-BqFFM7-r.js","./NodeDetailWrapper-pZBxv3J0.css","./el-form-item-BWkJzdQ_.css","./el-collapse-item-D4LG0FJ0.css","./el-input-D6B3r8CH.css","./TracePanelWrapper-B9zvDSc_.js","./TracePanelWrapper-BiednCrq.css","./el-select-B0XIb2QK.css","./CreateNewNodeDialog-DkrEMxSH.js","./CreateNewNodeDialog-DwFcBiGp.css"])))=>i.map(i=>d[i]);
|
|
2
|
+
import{_ as me,a as ue}from"./index-BMvodlwc.js";import{a as dt,d as ct}from"./api-DyiqpKJK.js";import{P as Ve,_ as ut,u as Je,a as pt,b as gt,c as ft,d as mt}from"./vue-flow-Dn7R8GPr.js";import{j as q,d as pe,l as ht}from"./js-yaml-yTPt38rv.js";import{u as _e,G as d,A as vt,W as C,a as yt,b as bt,B as Nt,c as _t,d as wt,e as kt,i as xt,l as $t}from"./WorkflowStudio-FCyhGD4y.js";import{E as qe,s as Qe,H as Et,t as r,l as Ct,h as It,a as Tt,d as Ht,b as At,i as St,c as Mt,r as Ot,e as Dt,f as Rt,y as Pt,g as Lt,T as Bt,j as Vt}from"./code-editor-DBSql_sc.js";import{e as jt,n as Ft,d as Wt,a as ie,o as zt,p as Ut}from"./element-ui-D3x2y3TA.js";import{v as oe,i as E,r as j,w as le,j as Gt,x as A,y as w,G as B,B as m,U as h,O as te,K as I,a2 as se,u,c as K,I as Pe,J as W,R as we,H as de,a9 as be,S as ke,al as je,V as xe,aD as ge,q as Fe}from"./vue-core-DL-LgTX0.js";/* empty css */import{u as Y,U as Xe,$ as De}from"./ui-components-DQ7-U3pr.js";function Kt(){const T=_e().nodeSchemaMap,c=l=>{try{return q.load(l),!0}catch(e){return console.error("YAML格式错误:",e),!1}},k=l=>{const e=[];try{const a=q.load(l);return!a||typeof a!="object"||Array.isArray(a)?(e.push("工作流数据必须是一个对象"),{isValid:!1,errors:e}):((!("name"in a)||typeof a.name!="string")&&e.push("缺少必需的name字段或name字段不是字符串类型"),"description"in a&&typeof a.description!="string"&&e.push("description字段必须是字符串类型"),!("nodes"in a)||!Array.isArray(a.nodes)?(e.push("缺少必需的nodes字段或nodes字段不是数组类型"),{isValid:!1,errors:e}):(a.nodes.forEach((o,t)=>{if(!o||typeof o!="object"){e.push(`节点${t}不是一个对象`);return}(!("name"in o)||typeof o.name!="string")&&e.push(`节点${t}缺少必需的name字段或name字段不是字符串类型`),(!("type"in o)||typeof o.type!="string")&&e.push(`节点${t}缺少必需的type字段或type字段不是字符串类型`),"args"in o&&(o.args!==null&&typeof o.args!="object"||Array.isArray(o.args))&&e.push(`节点${t}的args字段必须是对象类型或null`),"outputs"in o&&(o.outputs!==null&&typeof o.outputs!="object"||Array.isArray(o.outputs))&&e.push(`节点${t}的outputs字段必须是对象类型或null`)}),"inputs"in a&&(a.inputs!==null&&!Array.isArray(a.inputs)?e.push("inputs字段必须是数组类型或null"):Array.isArray(a.inputs)&&a.inputs?.forEach((o,t)=>{if(!o||typeof o!="object"){e.push(`inputs[${t}]不是一个对象`);return}(!("name"in o)||typeof o.name!="string")&&e.push(`inputs[${t}]缺少必需的name字段或name字段不是字符串类型`),"port"in o?typeof o.port!="string"&&!Array.isArray(o.port)&&e.push(`inputs[${t}].port字段必须是字符串类型或字符串数组`):e.push(`inputs[${t}]缺少必需的port字段`)})),"outputs"in a&&(a.outputs!==null&&!Array.isArray(a.outputs)?e.push("outputs字段必须是数组类型或null"):Array.isArray(a.outputs)&&a.outputs?.forEach((o,t)=>{if(!o||typeof o!="object"){e.push(`outputs[${t}]不是一个对象`);return}(!("name"in o)||typeof o.name!="string")&&e.push(`outputs[${t}]缺少必需的name字段或name字段不是字符串类型`),(!("port"in o)||typeof o.port!="string")&&e.push(`outputs[${t}]缺少必需的port字段或port字段不是字符串类型`)})),{isValid:e.length===0,errors:e}))}catch(a){return console.error("验证数据结构失败:",a),{isValid:!1,errors:["数据解析失败"]}}},H=l=>{try{const e=q.load(l),a=[];return e&&e.nodes&&Array.isArray(e.nodes)&&e.nodes.forEach(o=>{o.type&&!T.has(o.type)&&a.push(o.type)}),{isValid:a.length===0,invalidTypes:a}}catch(e){return console.error("验证节点类型失败:",e),{isValid:!1,invalidTypes:[]}}},p=l=>{try{const e=q.load(l),a=[];if(!e||!e.nodes||!Array.isArray(e.nodes))return{isValid:!1,duplicateNames:[]};const o=new Map;return e.nodes.forEach(t=>{if(t.name){const s=o.get(t.name)||0;o.set(t.name,s+1)}}),o.forEach((t,s)=>{t>1&&a.push(s)}),{isValid:a.length===0,duplicateNames:a}}catch(e){return console.error("验证节点名称唯一性失败:",e),{isValid:!1,duplicateNames:[]}}},v=l=>{const e=T.get(l);return e?{inputs:Object.keys(e.inputs||{}),outputs:Object.keys(e.outputs||{})}:{inputs:[],outputs:[]}};return{validateYaml:c,validateWorkflowDataStructure:k,validateNodeTypes:H,validateNodeNamesUnique:p,validateNodeOutputs:l=>{const e=[];try{const a=q.load(l);if(!a||!a.nodes||!Array.isArray(a.nodes))return e.push("工作流缺少nodes数组"),{isValid:!1,errors:e};const o=new Set;return a.nodes.forEach(t=>{t.name&&o.add(t.name)}),a.nodes.forEach(t=>{if(!t.outputs||typeof t.outputs!="object")return;const x=v(t.type).outputs;Object.entries(t.outputs).forEach(([g,i])=>{x.includes(g)||e.push(`节点"${t.name}"的输出端口"${g}"不是${t.type}类型的合法输出端口`);const $=_=>{const[D,N]=_?.split("|")||[];if(D&&!o.has(D)){e.push(`节点"${t.name}"的输出端口"${g}"指向的目标节点"${D}"不存在`);return}const y=a.nodes.find(z=>z.name===D);if(!y)return;const O=v(y.type).inputs;N&&!O.includes(N)&&e.push(`节点"${t.name}"的输出端口"${g}"指向的目标端口"${N}"不是${y.type}类型的合法输入端口`)};typeof i=="string"?$(i):Array.isArray(i)&&i.forEach(_=>$(_))})}),{isValid:e.length===0,errors:e}}catch(a){return console.error("验证节点outputs失败:",a),{isValid:!1,errors:["验证节点outputs时发生错误"]}}},validateNodeInputs:l=>{const e=[];try{const a=q.load(l),o=new Map;a.nodes.forEach(s=>{!s.outputs||typeof s.outputs!="object"||Object.entries(s.outputs).forEach(([x,g])=>{(Array.isArray(g)?g:[g]).forEach($=>{const[_,D]=$?.split("|")||[];!_||!D||(o.has(_)||o.set(_,new Set),o.get(_).add(D))})})});const t=new Map;return a.inputs&&Array.isArray(a.inputs)&&a.inputs.forEach(s=>{s.port&&s.port.includes("|")&&(Array.isArray(s.port)?s.port:[s.port]).forEach(g=>{const[i,$]=g?.split("|");!i||!$||(t.has(i)||t.set(i,new Set),t.get(i).add($))})}),{isValid:e.length===0,errors:e}}catch(a){return console.error("验证节点输入失败:",a),{isValid:!1,errors:["验证节点输入时发生错误"]}}},validateWorkflowInputsOutputs:l=>{try{const e=q.load(l),a=[];if(!e.inputs&&!e.outputs)return{isValid:!0,errors:[]};const o={};return e.nodes&&Array.isArray(e.nodes)&&e.nodes.forEach(t=>{o[t.name]=t.type}),e.inputs&&Array.isArray(e.inputs)&&e.inputs.forEach((t,s)=>{if(!t.name){a.push(`inputs[${s}]缺少name字段`);return}if(!t.port){a.push(`inputs[${s}].${t.name}缺少port字段`);return}const x=g=>{const i=g?.split("|")||[];if(i.length!==2){a.push(`inputs[${s}].${t.name}流向的目标格式不正确,应为"节点名|端口名"`);return}const[$,_]=i;if(!$||!o[$]){a.push(`inputs[${s}].${t.name}流向的节点"${$}"不存在`);return}const D=o[$],N=v(D);(!_||!N.inputs.includes(_))&&a.push(`inputs[${s}].${t.name}流向的端口"${_}"不是节点"${$}"(类型:${D})的合法输入端口`)};Array.isArray(t.port)?t.port.forEach(g=>x(g)):x(t.port)}),e.outputs&&Array.isArray(e.outputs)&&e.outputs.forEach((t,s)=>{if(!t.name){a.push(`outputs[${s}]缺少name字段`);return}if(!t.port){a.push(`outputs[${s}].${t.name}缺少port字段`);return}const x=t.port?.split("|");if(x.length!==2){a.push(`outputs[${s}].${t.name}.port格式不正确,应为"节点名|端口名"`);return}const[g,i]=x;if(!g||!o[g]){a.push(`outputs[${s}].${t.name}来源的节点"${g}"不存在`);return}const $=o[g],_=v($);(!i||!_.outputs.includes(i))&&a.push(`outputs[${s}].${t.name}来源的端口"${i}"不是节点"${g}"(类型:${$})的合法输出端口`)}),{isValid:a.length===0,errors:a}}catch(e){return console.error("验证工作流输入输出失败:",e),{isValid:!1,errors:["验证工作流输入输出时发生错误"]}}}}}const $e={fontSize:"14px",fontFamily:"JetBrains Mono, Consolas, monospace",lineHeight:"1.6"},Yt={borderLeftWidth:"2px"},L={insertedTextDecoration:"none",deletedTextDecoration:"line-through",insertedLinePadding:"1px 3px",borderRadious:"3px"},Q={border:"none",paddingRight:"8px",fontSize:"0.9em",fontWeight:"500",lineHeight:"1.78"},Ee={border:"none",borderRadius:"4px",padding:"2px 10px"},Jt={borderRadius:"2px"},Ce={borderRadius:"2px"},Ie={borderRadius:"4px",padding:"0 5px",margin:"0 2px"},Te={width:"12px",height:"12px",borderRadius:"6px"},ve={borderRadius:"4px",padding:"2px 6px"},ae={borderRadius:"4px",borderRadiusSelected:"3px",lineHeight:"1.3",padding:"4px 8px",paddingRight:"8px"},ne="#ffffff",P="#24292e",Ze="#BBDFFF",re="#6e7781",We="#f6f8fa",qt="#116329",F="#6a737d",He="#6f42c1",G="#005cc5",fe="#d73a49",Ae="#032f62",ze="#22863a",X="#e36209",Qt="#f1f8ff",Z="#e1e4e8",Xt="#f8f9fa",ee="#cb2431",Zt="#BBDFFF20",ye=Xt,Se=P,eo=Ze,to="#e8f0fe",oo="#0366d6",Ue="#b08800",Ge="#79b8ff40",Re="#0969da",ao="#8250df",Ke="#e6ffec80",Ye="#ffebe980",Me="#0f6d31",Oe="#cf222e",no=qe.theme({"&":{color:P,backgroundColor:ne,fontSize:$e.fontSize,fontFamily:$e.fontFamily},".cm-content":{caretColor:Se,lineHeight:$e.lineHeight},".cm-cursor, .cm-dropCursor":{borderLeftColor:Se,borderLeftWidth:Yt.borderLeftWidth},".cm-fat-cursor":{backgroundColor:`${Se}99`,color:ne},"&.cm-focused > .cm-scroller > .cm-selectionLayer .cm-selectionBackground, .cm-selectionBackground, .cm-content ::selection":{backgroundColor:eo,color:P},".cm-selectionLayer":{zIndex:100},".cm-searchMatch":{backgroundColor:"#daebff",outline:`1px solid ${G}`,color:P,borderRadius:ve.borderRadius,"& span":{color:P}},".cm-searchMatch.cm-searchMatch-selected":{backgroundColor:"#79b8ff",color:ne,padding:ve.padding,"& span":{color:ne}},".cm-search.cm-panel.cm-textfield":{color:P,borderRadius:ve.borderRadius,padding:ve.padding},".cm-panels":{backgroundColor:We,color:re,borderRadius:"0 0 4px 4px"},".cm-panels.cm-panels-top":{borderBottom:`1px solid ${Z}`},".cm-panels.cm-panels-bottom":{borderTop:`1px solid ${Z}`},".cm-panel button":{backgroundColor:ne,color:P,border:Ee.border,borderRadius:Ee.borderRadius,padding:Ee.padding},".cm-panel button:hover":{backgroundColor:"#f5f5f5"},".cm-activeLine":{backgroundColor:Zt,borderRadius:Jt.borderRadius,zIndex:1},".cm-gutters":{backgroundColor:We,color:re,border:Q.border,borderRight:`1px solid ${Z}`,paddingRight:Q.paddingRight},".cm-activeLineGutter":{backgroundColor:Qt,color:P,fontWeight:Q.fontWeight},".cm-lineNumbers":{fontSize:Q.fontSize,lineHeight:Q.lineHeight},".cm-foldGutter":{fontSize:Q.fontSize,lineHeight:Q.lineHeight},".cm-foldGutter .cm-gutterElement":{color:re,cursor:"pointer"},".cm-foldGutter .cm-gutterElement:hover":{color:P},".cm-insertedLine":{textDecoration:L.insertedTextDecoration,backgroundColor:Ke,color:Me,padding:L.insertedLinePadding,borderRadius:L.borderRadious},"ins.cm-insertedLine, ins.cm-insertedLine:not(:has(.cm-changedText))":{textDecoration:L.insertedTextDecoration,backgroundColor:`${Ke} !important`,color:Me,padding:L.insertedLinePadding,borderRadius:L.borderRadious,border:`1px solid ${Me}30`},"ins.cm-insertedLine .cm-changedText":{background:"transparent !important"},".cm-deletedLine":{textDecoration:L.deletedTextDecoration,backgroundColor:Ye,color:Oe,padding:L.insertedLinePadding,borderRadius:L.borderRadious},"del.cm-deletedLine, del, del:not(:has(.cm-deletedText))":{textDecoration:L.deletedTextDecoration,backgroundColor:`${Ye} !important`,color:Oe,padding:L.insertedLinePadding,borderRadius:L.borderRadious,border:`1px solid ${Oe}30`},"del .cm-deletedText, del .cm-changedText":{background:"transparent !important"},".cm-tooltip":{backgroundColor:ye,border:`1px solid ${Z}`,borderRadius:ae.borderRadius,padding:ae.padding,boxShadow:"0 1px 5px rgba(0, 0, 0, 0.1)"},".cm-tooltip-autocomplete":{"& > ul":{backgroundColor:ye,border:"none"},"& > ul > li":{padding:ae.padding,lineHeight:ae.lineHeight},"& > ul > li[aria-selected]":{backgroundColor:"#0366d630",color:P,borderRadius:ae.borderRadiusSelected},"& > ul > li:hover":{backgroundColor:"#0366d615"},"& > ul > li > span.cm-completionIcon":{color:re,paddingRight:ae.paddingRight},"& > ul > li > span.cm-completionDetail":{color:re,fontStyle:"italic"}},".cm-tooltip .cm-tooltip-arrow:before":{borderTopColor:"transparent",borderBottomColor:"transparent"},".cm-tooltip .cm-tooltip-arrow:after":{borderTopColor:ye,borderBottomColor:ye},".cm-diagnostic":{"&-error":{borderLeft:`3px solid ${ee}`},"&-warning":{borderLeft:`3px solid ${Ue}`},"&-info":{borderLeft:`3px solid ${Re}`}},".cm-lintPoint-error":{borderBottom:`2px wavy ${ee}`},".cm-lintPoint-warning":{borderBottom:`2px wavy ${Ue}`},".cm-matchingBracket":{backgroundColor:to,outline:`1px solid ${oo}80`,borderRadius:Ce.borderRadius},".cm-nonmatchingBracket":{backgroundColor:"#ffeef080",outline:`1px solid ${ee}`,borderRadius:Ce.borderRadius},".cm-selectionMatch":{backgroundColor:Ge,outline:`1px solid ${Ze}50`,borderRadius:Ce.borderRadius},".cm-foldPlaceholder":{backgroundColor:Ge,color:re,border:`1px dotted ${Z}70`,borderRadius:Ie.borderRadius,padding:Ie.padding,margin:Ie.margin},"&.cm-focused":{outline:"none",boxShadow:`0 0 0 2px ${ne}, 0 0 0 3px ${Re}40`},"& .cm-scroller::-webkit-scrollbar":{width:Te.width,height:Te.height},"& .cm-scroller::-webkit-scrollbar-track":{background:Z},"& .cm-scroller::-webkit-scrollbar-thumb":{backgroundColor:P,borderRadius:Te.borderRadius,border:`3px solid ${Z}`},"& .cm-scroller::-webkit-scrollbar-thumb:hover":{backgroundColor:F},".cm-ghostText":{opacity:"0.5",color:"#959da5"}},{dark:!1}),ro=Et.define([{tag:r.keyword,color:fe,fontWeight:"bold"},{tag:r.controlKeyword,color:fe,fontWeight:"bold"},{tag:r.moduleKeyword,color:fe,fontWeight:"bold"},{tag:[r.name,r.deleted,r.character,r.macroName],color:G},{tag:[r.variableName],color:G},{tag:[r.propertyName],color:He,fontStyle:"normal"},{tag:[r.typeName],color:fe},{tag:[r.className],color:He,fontStyle:"italic"},{tag:[r.namespace],color:G,fontStyle:"italic"},{tag:[r.operator,r.operatorKeyword],color:P},{tag:[r.bracket],color:F},{tag:[r.brace],color:F},{tag:[r.punctuation],color:F},{tag:[r.function(r.variableName),r.labelName],color:ze},{tag:[r.definition(r.variableName)],color:G},{tag:r.number,color:X},{tag:r.changed,color:X},{tag:r.annotation,color:ee,fontStyle:"italic"},{tag:r.modifier,color:X,fontStyle:"italic"},{tag:r.self,color:X},{tag:[r.color,r.constant(r.name),r.standard(r.name)],color:X},{tag:[r.atom,r.bool,r.special(r.variableName)],color:X},{tag:[r.processingInstruction,r.inserted],color:ze},{tag:[r.special(r.string),r.regexp],color:Ae},{tag:r.string,color:Ae},{tag:r.definition(r.typeName),color:fe,fontWeight:"bold"},{tag:r.meta,color:F},{tag:r.comment,fontStyle:"italic",color:F},{tag:r.docComment,fontStyle:"italic",color:F},{tag:[r.tagName],color:qt},{tag:[r.attributeName],color:He},{tag:[r.heading],fontWeight:"bold",color:G},{tag:[r.strong],fontWeight:"bold",color:G},{tag:[r.emphasis],fontStyle:"italic",color:Ae},{tag:[r.link],color:ao,fontWeight:"500",textDecoration:"underline",textUnderlinePosition:"under"},{tag:[r.url],color:Re,textDecoration:"underline",textUnderlineOffset:"2px"},{tag:[r.invalid],color:P,textDecoration:"underline wavy",borderBottom:`1px wavy ${ee}`},{tag:[r.strikethrough],color:ee,textDecoration:"line-through"},{tag:r.constant(r.name),color:X},{tag:r.deleted,color:ee},{tag:r.squareBracket,color:F},{tag:r.angleBracket,color:F},{tag:r.monospace,color:P},{tag:[r.contentSeparator],color:G},{tag:r.quote,color:F}]),so=[no,Qe(ro)],io={class:"raw-editor"},lo={key:0,class:"warning-banner"},co={class:"warning-content"},uo={class:"warning-text"},po={key:1,class:"warning-banner"},go={class:"warning-content"},fo={class:"warning-text"},mo={class:"content-container"},ho={key:2,class:"editor-actions"},vo=oe({__name:"RawJsonEditor",setup(T){const c=E("workflowData"),k=E("isEditMode",!1),H=E("emitter"),p=j(`name:
|
|
3
|
+
`),v=j("");let f=null;const S=j(!1),n=j("");let l=null;const e=[Ct(),It(),Tt(),Ht(),At(),St(),Qe(Vt,{fallback:!0}),Mt(),Ot(),Dt(),Rt(),Pt,Lt.tabSize.of(2),so,qe.theme({"&":{height:"100%"}})],a=j(),o=N=>{a.value=N.view},t=N=>{f&&clearTimeout(f),v.value=N,f=setTimeout(()=>{v.value="",f=null},5e3)},s=()=>{v.value="",f&&(clearTimeout(f),f=null)},x=(N,y)=>{n.value=N,l=y,S.value=!0},g=N=>{S.value=!1,l&&(l(N),l=null)},i=Kt(),$=()=>{if(!i.validateYaml(p.value)){t("YAML格式错误,请检查输入!");return}const N=i.validateWorkflowDataStructure(p.value);if(!N.isValid){t(`数据结构不符合要求:${N.errors.join(";")}`);return}const y=i.validateNodeTypes(p.value);if(!y.isValid){t(`节点类型错误:${y.invalidTypes.join(", ")} 不存在于!`);return}const M=i.validateNodeNamesUnique(p.value);if(!M.isValid){t(`节点名称不唯一:${M.duplicateNames.join(", ")} 出现重复!`);return}const O=i.validateNodeOutputs(p.value);if(!O.isValid){t(`节点outputs验证失败:${O.errors.join(";")}`);return}const z=i.validateNodeInputs(p.value);if(!z.isValid){t(`节点输入验证失败:${z.errors.join(";")}`);return}const U=i.validateWorkflowInputsOutputs(p.value);if(!U.isValid){t(`工作流输入输出验证失败:${U.errors.join(";")}`);return}if(s(),H)try{const he=ht(p.value);H.emit("previewJson",pe(he,{indent:2}))}catch{t("预览失败,请检查YAML格式!")}},_=()=>{c?.value&&(p.value=pe(c.value,{indent:2}))},D=()=>{try{if(c?.value)try{p.value=pe(c.value,{indent:2})}catch(N){console.error("序列化失败:",N),p.value="{}"}(!p.value||p.value.trim()==="")&&(p.value="name: ")}catch(N){console.error("初始化编辑元素失败:",N),p.value="{}"}};return le(()=>k,N=>{N&&setTimeout(()=>{D()},10)}),le(()=>c?.value,(N,y)=>{if(N&&y&&k){const M=pe(N,{indent:2});p.value!==M&&x("工作流数据已更新,是否替换当前编辑内容?",O=>{O&&(p.value=M)})}else N&&!k&&(p.value=pe(N,{indent:2}))},{deep:!0}),Gt(()=>{D()}),(N,y)=>{const M=jt;return w(),A("div",io,[v.value?(w(),A("div",lo,[m("div",co,[y[4]||(y[4]=m("span",{class:"warning-icon"},"⚠️",-1)),m("span",uo,te(v.value),1),h(M,{type:"warning",link:"",onClick:s},{default:I(()=>[...y[3]||(y[3]=[se("×",-1)])]),_:1})])])):B("",!0),S.value?(w(),A("div",po,[m("div",go,[y[7]||(y[7]=m("span",{class:"warning-icon"},"⚠️",-1)),m("span",fo,te(n.value),1),h(M,{type:"warning",link:"",onClick:y[0]||(y[0]=O=>g(!1))},{default:I(()=>[...y[5]||(y[5]=[se("取消",-1)])]),_:1}),h(M,{type:"warning",onClick:y[1]||(y[1]=O=>g(!0))},{default:I(()=>[...y[6]||(y[6]=[se("确定替换",-1)])]),_:1})])])):B("",!0),m("div",mo,[h(u(Bt),{modelValue:p.value,"onUpdate:modelValue":y[2]||(y[2]=O=>p.value=O),extensions:e,disabled:!u(k),onReady:o},null,8,["modelValue","disabled"])]),u(k)?(w(),A("div",ho,[h(M,{type:"primary",onClick:$},{default:I(()=>[...y[8]||(y[8]=[se("预览",-1)])]),_:1}),h(M,{onClick:_},{default:I(()=>[...y[9]||(y[9]=[se("重置为原始数据",-1)])]),_:1})])):B("",!0)])}}}),yo=me(vo,[["__scopeId","data-v-c9e7ffc5"]]),bo={class:"handle-name"},No=oe({__name:"NodeHandle",props:{handle:{}},setup(T){const c=T,k=E(C.NODE_DATA_MAP),H=_e().nodeSchemaMap,p=K(()=>{if(d.isModuleNode(c.handle.nodeId)){const v=k?.value?.get(c.handle.nodeId)?.type;if(!v)return!1;const f=H.get(v);return f?c.handle.type==="in"?c.handle.handleName in f.inputs:c.handle.handleName in f.outputs:!1}else return!0});return(v,f)=>{const S=Ft;return w(),A("div",{class:Pe([c.handle.type==="in"?"input-handle":"output-handle",{inValid:!p.value}])},[h(u(ut),{class:"handle-circle",id:u(d).getHandleId(c.handle),position:c.handle.type==="in"?u(Ve).Left:u(Ve).Right},null,8,["id","position"]),m("span",bo,te(c.handle.handleName),1),h(S,null,{default:I(()=>[m("p",null,[f[0]||(f[0]=m("span",{class:"injected-value-title"},"已注入值",-1)),m("span",null,te(c.handle.value),1)])]),reference:I(()=>[c.handle.value?(w(),W(u(vt),{key:0,class:"handle-value-mark"})):B("",!0)]),_:1})],2)}}}),Ne=me(No,[["__scopeId","data-v-37758266"]]),ga=Y({tag:"svg",attr:{viewBox:"0 0 1024 1024"},child:[{tag:"path",attr:{fill:"currentColor",d:"M224 480h640a32 32 0 1 1 0 64H224a32 32 0 0 1 0-64"},child:[]},{tag:"path",attr:{fill:"currentColor",d:"m237.248 512 265.408 265.344a32 32 0 0 1-45.312 45.312l-288-288a32 32 0 0 1 0-45.312l288-288a32 32 0 1 1 45.312 45.312z"},child:[]}]}),_o=Y({tag:"svg",attr:{viewBox:"0 0 1024 1024"},child:[{tag:"path",attr:{fill:"currentColor",d:"M512 64a448 448 0 1 1 0 896 448 448 0 0 1 0-896m-55.808 536.384-99.52-99.584a38.4 38.4 0 1 0-54.336 54.336l126.72 126.72a38.272 38.272 0 0 0 54.336 0l262.4-262.464a38.4 38.4 0 1 0-54.272-54.336z"},child:[]}]}),wo=Y({tag:"svg",attr:{viewBox:"0 0 1024 1024"},child:[{tag:"path",attr:{fill:"currentColor",d:"M512 64a448 448 0 1 1 0 896 448 448 0 0 1 0-896m0 393.664L407.936 353.6a38.4 38.4 0 1 0-54.336 54.336L457.664 512 353.6 616.064a38.4 38.4 0 1 0 54.336 54.336L512 566.336 616.064 670.4a38.4 38.4 0 1 0 54.336-54.336L566.336 512 670.4 407.936a38.4 38.4 0 1 0-54.336-54.336z"},child:[]}]}),et=Y({tag:"svg",attr:{viewBox:"0 0 1024 1024"},child:[{tag:"path",attr:{fill:"currentColor",d:"M512 64a32 32 0 0 1 32 32v192a32 32 0 0 1-64 0V96a32 32 0 0 1 32-32m0 640a32 32 0 0 1 32 32v192a32 32 0 1 1-64 0V736a32 32 0 0 1 32-32m448-192a32 32 0 0 1-32 32H736a32 32 0 1 1 0-64h192a32 32 0 0 1 32 32m-640 0a32 32 0 0 1-32 32H96a32 32 0 0 1 0-64h192a32 32 0 0 1 32 32M195.2 195.2a32 32 0 0 1 45.248 0L376.32 331.008a32 32 0 0 1-45.248 45.248L195.2 240.448a32 32 0 0 1 0-45.248zm452.544 452.544a32 32 0 0 1 45.248 0L828.8 783.552a32 32 0 0 1-45.248 45.248L647.744 692.992a32 32 0 0 1 0-45.248zM828.8 195.264a32 32 0 0 1 0 45.184L692.992 376.32a32 32 0 0 1-45.248-45.248l135.808-135.808a32 32 0 0 1 45.248 0m-452.544 452.48a32 32 0 0 1 0 45.248L240.448 828.8a32 32 0 0 1-45.248-45.248l135.808-135.808a32 32 0 0 1 45.248 0z"},child:[]}]}),ko={class:"module-title"},xo={class:"module-name"},$o={class:"module-handles"},Eo={key:0,class:"module-inputs"},Co={class:"content-list-container"},Io={key:1,class:"module-outputs"},To={class:"content-list-container"},Ho={class:"test-running-progress running-status"},Ao={class:"test-running-progress finished-status"},So={class:"test-running-progress error-status"},Mo=oe({__name:"ModuleNode",props:{id:{},type:{},selected:{type:Boolean},connectable:{type:[Boolean,Number,String,Function]},position:{},dimensions:{},label:{},isValidTargetPos:{type:Function},isValidSourcePos:{type:Function},parent:{},parentNodeId:{},dragging:{type:Boolean},resizing:{type:Boolean},zIndex:{},targetPosition:{},sourcePosition:{},dragHandle:{},data:{},events:{}},setup(T){const c=T,k=E(C.NODE_DATA_MAP),H=E(C.NODE_FOR_INSPECTION),p=E(C.TEST_RUNNING_RECORD),v=_e().nodeSchemaMap,f=K(()=>k?.value?.get(c.id)),S=K(()=>H?.value?.id===c.id||c.selected),n=K(()=>f?.value?.type?v.has(f.value.type):!0),l=K(()=>{const e=d.nodeIdToName(c.id),a=p?.runningNodes.has(e),o=p?.finishedNodes.has(e);if(p?.errorNodes.has(e))return"error";if(a)return"running";if(o)return"finished"});return(e,a)=>{const o=Wt;return f.value?(w(),A("div",{key:0,class:Pe(["module-node",{selected:S.value}])},[m("div",ko,[m("span",xo,te(f.value?.name||"未命名模块"),1),h(o,{class:"module-type",type:n.value?"primary":"danger"},{default:I(()=>[se(te(f.value?.type||"未知类型"),1)]),_:1},8,["type"])]),m("div",$o,[Object.keys(f.value?.inputs||{}).length>0?(w(),A("div",Eo,[a[0]||(a[0]=m("div",{class:"content-section-title"},"输入",-1)),m("div",Co,[(w(!0),A(de,null,be(Object.entries(f.value?.inputs||{})||[],([t,s])=>(w(),W(Ne,{key:t,handle:s},null,8,["handle"]))),128))])])):B("",!0),Object.keys(f.value?.outputs||{}).length>0?(w(),A("div",Io,[a[1]||(a[1]=m("div",{class:"content-section-title"},"输出",-1)),m("div",To,[(w(!0),A(de,null,be(Object.entries(f.value?.outputs||{})||[],([t,s])=>(w(),W(Ne,{key:t,handle:s},null,8,["handle"]))),128))])])):B("",!0)]),we(m("div",Ho,[h(u(et),{class:"progress-status-icon"}),a[2]||(a[2]=m("span",{class:"progress-status-text"},"运行中",-1))],512),[[ke,l.value==="running"]]),we(m("div",Ao,[h(u(_o),{class:"progress-status-icon"}),a[3]||(a[3]=m("span",{class:"progress-status-text"},"运行完毕",-1))],512),[[ke,l.value==="finished"]]),we(m("div",So,[h(u(wo),{class:"progress-status-icon"}),a[4]||(a[4]=m("span",{class:"progress-status-text"},"运行出错",-1))],512),[[ke,l.value==="error"]])],2)):B("",!0)}}}),Oo=me(Mo,[["__scopeId","data-v-4fdfd25e"]]),Do=Y({tag:"svg",attr:{viewBox:"0 0 48 48",fill:"none"},child:[{tag:"path",attr:{d:"M41.5 10H35.5","stroke-width":"4","stroke-linecap":"round","stroke-linejoin":"round"},child:[]},{tag:"path",attr:{d:"M27.5 6V14","stroke-width":"4","stroke-linecap":"round","stroke-linejoin":"round"},child:[]},{tag:"path",attr:{d:"M27.5 10L5.5 10","stroke-width":"4","stroke-linecap":"round","stroke-linejoin":"round"},child:[]},{tag:"path",attr:{d:"M13.5 24H5.5","stroke-width":"4","stroke-linecap":"round","stroke-linejoin":"round"},child:[]},{tag:"path",attr:{d:"M21.5 20V28","stroke-width":"4","stroke-linecap":"round","stroke-linejoin":"round"},child:[]},{tag:"path",attr:{d:"M43.5 24H21.5","stroke-width":"4","stroke-linecap":"round","stroke-linejoin":"round"},child:[]},{tag:"path",attr:{d:"M41.5 38H35.5","stroke-width":"4","stroke-linecap":"round","stroke-linejoin":"round"},child:[]},{tag:"path",attr:{d:"M27.5 34V42","stroke-width":"4","stroke-linecap":"round","stroke-linejoin":"round"},child:[]},{tag:"path",attr:{d:"M27.5 38H5.5","stroke-width":"4","stroke-linecap":"round","stroke-linejoin":"round"},child:[]}]});function tt(T){const c=E(C.WORKFLOW_DATA),k=E(C.NODE_DATA_MAP),H=_e().nodeSchemaMap,p=(n,l)=>{if(!H.has(n)){ie.error(`节点类型 ${n} 不合法`);return}let e="新节点";for(;k?.value.has(d.configNameToNodeId(e));)e+="(1)";const a=d.configNameToNodeId(e);T.addNodes({id:a,type:"module",position:l??{x:0,y:0}});const o={name:e,type:n};c?.value?.nodes.push(o)},v=n=>{const l=n.source,e=n.target,a=k?.value.get(l),o=k?.value.get(e);if(d.isModuleNode(l)&&d.isModuleNode(e)){const t=Object.values(a?.outputs||{}).find(s=>d.getHandleId(s)===n.sourceHandle);if(t){const s=c?.value.nodes.find(x=>a?.name===x.name)?.outputs;if(typeof s?.[t.handleName]=="string"||s?.[t.handleName]===null)delete s[t.handleName];else if(Array.isArray(s?.[t.handleName])){const x=Object.values(o?.inputs||{}).find(g=>d.getHandleId(g)===n.targetHandle);s[t.handleName]=s[t.handleName].filter(g=>g!==`${o?.name}|${x?.handleName}`)}}}if(d.isInputNode(l)){const t=Object.values(a?.outputs||{}).find(s=>d.getHandleId(s)===n.sourceHandle);if(t){const s=c?.value.inputs?.find(x=>x.name===t.handleName);if(typeof s?.port=="string")s.port=[];else if(Array.isArray(s?.port)){const x=Object.values(o?.inputs||{}).find(g=>d.getHandleId(g)===n.targetHandle);s.port=s.port.filter(g=>g!==`${o?.name}|${x?.handleName}`)}}}if(d.isOutputNode(e)){const t=Object.values(o?.inputs||{}).find(s=>d.getHandleId(s)===n.targetHandle);if(t){const s=c?.value.outputs?.find(x=>x.name===t.handleName);s&&(s.port="")}}},f=n=>{const l=T.edges.value.filter(o=>o.targetHandle===n.targetHandle);if(l.some(o=>o.sourceHandle===n.sourceHandle)){ie.warning("无需重复连线");return}for(const o of l)v(o);const e=d.getHandleType(n.sourceHandle||"",n.source),a=d.getHandleType(n.targetHandle||"",n.target);if(e!=="out"||a!=="in"){ie.error("请从输出端口连接到输入端口");return}if(d.isInputNode(n.source)){if(!d.isModuleNode(n.target)){ie.error("暂不支持从入口节点直连出口节点");return}const o=c?.value.inputs?.find(t=>d.getHandleId({nodeId:n.source,type:"out",handleName:t.name})===n.sourceHandle);typeof o?.port=="string"?o.port=[o.port,`${d.nodeIdToName(n.target)}|${d.extractHandleName(n.targetHandle,n.target,"in")}`]:Array.isArray(o?.port)&&(o.port=[...o.port,`${d.nodeIdToName(n.target)}|${d.extractHandleName(n.targetHandle,n.target,"in")}`])}else if(d.isModuleNode(n.source)){if(d.isOutputNode(n.target)){const o=c?.value.outputs?.find(t=>d.getHandleId({nodeId:n.target,type:"in",handleName:t.name})===n.targetHandle);o&&(o.port=`${d.nodeIdToName(n.source)}|${d.extractHandleName(n.sourceHandle,n.source,"out")}`)}else if(d.isModuleNode(n.target)){const o=c?.value.nodes.find(s=>d.configNameToNodeId(s.name)===n.source)?.outputs,t=d.extractHandleName(n.sourceHandle,n.source,"out");o?.[t]===null?o[t]=[`${d.nodeIdToName(n.target)}|${d.extractHandleName(n.targetHandle,n.target,"in")}`]:o?.[t]&&typeof o?.[t]=="string"?o[t]=[o[t],`${d.nodeIdToName(n.target)}|${d.extractHandleName(n.targetHandle,n.target,"in")}`]:Array.isArray(o?.[t])?o[t]=[...o[t],`${d.nodeIdToName(n.target)}|${d.extractHandleName(n.targetHandle,n.target,"in")}`]:o&&!o[t]&&(o[t]=`${d.nodeIdToName(n.target)}|${d.extractHandleName(n.targetHandle,n.target,"in")}`)}}};return{addNewNode:p,disconnectEdge:v,connectEdge:f,renameNode:(n,l)=>{const e=[],a=[],o=d.configNameToNodeId(n),t=d.configNameToNodeId(l),s=T.edges.value.filter(i=>i.target===o);for(const i of s)e.push(i),a.push({source:i.source,sourceHandle:i.sourceHandle,target:t,targetHandle:d.getHandleId({nodeId:t,type:"in",handleName:d.extractHandleName(i.targetHandle,i.target,"in")})});const x=T.edges.value.filter(i=>i.source===o&&d.isOutputNode(i.target));for(const i of x)e.push(i),a.push({source:t,sourceHandle:d.getHandleId({nodeId:t,type:"out",handleName:d.extractHandleName(i.sourceHandle,i.source,"out")}),target:i.target,targetHandle:i.targetHandle});const g=c?.value.nodes.find(i=>i.name===n);g&&(g.name=l);for(const i of e)v(i);for(const i of a)f(i)}}}const Ro={class:"menu-item"},Po=oe({__name:"ElementContextMenu",props:{show:{type:Boolean},options:{}},emits:["close"],setup(T,{emit:c}){const k=T,H=c,p=E(C.WORKFLOW_DATA),v=Je(),{disconnectEdge:f}=tt(v),S=()=>{const n=new Set(v.getSelectedNodes.value.filter(e=>!d.isInputNode(e.id)&&!d.isOutputNode(e.id)).map(e=>e.id)),l=new Set(v.getSelectedEdges.value.filter(e=>!n.has(e.source)));v.edges.value.forEach(e=>{n.has(e.target)&&l.add(e)});for(const e of l)f(e);p&&(p.value.nodes=p?.value.nodes.filter(e=>!n.has(d.configNameToNodeId(e.name))))};return(n,l)=>(w(),W(u(Xe),{show:k.show,options:{...k.options,theme:"studio-canvas-context-menu"},onClose:l[0]||(l[0]=e=>H("close"))},{default:I(()=>[h(u(De),{class:"danger-item",onClick:S},{default:I(()=>[m("div",Ro,[h(u(yt),{class:"menu-item-icon"}),l[1]||(l[1]=m("span",null,"删除",-1))])]),_:1})]),_:1},8,["show","options"]))}}),Lo=Y({tag:"svg",attr:{viewBox:"0 0 448 512"},child:[{tag:"path",attr:{d:"M64 32C64 14.3 49.7 0 32 0S0 14.3 0 32V64 368 480c0 17.7 14.3 32 32 32s32-14.3 32-32V352l64.3-16.1c41.1-10.3 84.6-5.5 122.5 13.4c44.2 22.1 95.5 24.8 141.7 7.4l34.7-13c12.5-4.7 20.8-16.6 20.8-30V66.1c0-23-24.2-38-44.8-27.7l-9.6 4.8c-46.3 23.2-100.8 23.2-147.1 0c-35.1-17.6-75.4-22-113.5-12.5L64 48V32z"},child:[]}]}),Bo=Y({tag:"svg",attr:{viewBox:"0 0 384 512"},child:[{tag:"path",attr:{d:"M215.7 499.2C267 435 384 279.4 384 192C384 86 298 0 192 0S0 86 0 192c0 87.4 117 243 168.3 307.2c12.3 15.3 35.1 15.3 47.4 0zM192 128a64 64 0 1 1 0 128 64 64 0 1 1 0-128z"},child:[]}]}),Vo={class:"port-title"},jo={class:"port-handles"},Fo={key:0,class:"port-inputs"},Wo={class:"content-list-container"},zo={key:1,class:"port-outputs"},Uo={class:"content-list-container"},Go=oe({__name:"WorkflowPortNode",props:{id:{},type:{},selected:{type:Boolean},connectable:{type:[Boolean,Number,String,Function]},position:{},dimensions:{},label:{},isValidTargetPos:{type:Function},isValidSourcePos:{type:Function},parent:{},parentNodeId:{},dragging:{type:Boolean},resizing:{type:Boolean},zIndex:{},targetPosition:{},sourcePosition:{},dragHandle:{},data:{},events:{}},setup(T){const c=T,k=E(C.NODE_DATA_MAP),H=E(C.NODE_FOR_INSPECTION),p=K(()=>d.isInputNode(c.id)?"in":"out"),v=K(()=>k?.value?.get(c.id)),f=K(()=>H?.value?.id===c.id||c.selected);return(S,n)=>(w(),A("div",{class:Pe(["port-node",{selected:f.value}])},[m("div",Vo,[p.value==="in"?(w(),A(de,{key:0},[h(u(Bo),{class:"title-icon"}),n[0]||(n[0]=m("span",{class:"title-text"},"工作流入口",-1))],64)):(w(),A(de,{key:1},[h(u(Lo),{class:"title-icon"}),n[1]||(n[1]=m("span",{class:"title-text"},"工作流出口",-1))],64))]),m("div",jo,[p.value==="out"&&Object.keys(v.value?.inputs||{}).length>0?(w(),A("div",Fo,[m("div",Wo,[(w(!0),A(de,null,be(Object.entries(v.value?.inputs||{})||[],([l,e])=>(w(),W(Ne,{key:l,handle:e},null,8,["handle"]))),128))])])):B("",!0),p.value==="in"&&Object.keys(v.value?.outputs||{}).length>0?(w(),A("div",zo,[m("div",Uo,[(w(!0),A(de,null,be(Object.entries(v.value?.outputs||{})||[],([l,e])=>(w(),W(Ne,{key:l,handle:e},null,8,["handle"]))),128))])])):B("",!0)])],2))}}),Ko=me(Go,[["__scopeId","data-v-6c18ecd2"]]),Yo=Y({tag:"svg",attr:{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round"},child:[{tag:"rect",attr:{width:"7",height:"9",x:"3",y:"3",rx:"1"},child:[]},{tag:"rect",attr:{width:"7",height:"5",x:"14",y:"3",rx:"1"},child:[]},{tag:"rect",attr:{width:"7",height:"9",x:"14",y:"12",rx:"1"},child:[]},{tag:"rect",attr:{width:"7",height:"5",x:"3",y:"16",rx:"1"},child:[]}]}),Jo={class:"menu-item"},qo={class:"menu-item"},Qo=oe({__name:"PaneContextMenu",props:{show:{type:Boolean},options:{}},emits:["close"],setup(T,{emit:c}){const k=T,H=c,p=E(C.IS_EDIT_MODE),v=E(C.WORKFLOW_NEED_LAYOUT),f=E(C.CREATE_NEW_NODE_OPEN),S=()=>{f&&(f.value=!0)},n=()=>{v&&(v.value=!0)};return(l,e)=>(w(),W(u(Xe),{show:k.show,options:{...k.options,theme:"studio-canvas-context-menu"},onClose:e[0]||(e[0]=a=>H("close"))},{default:I(()=>[u(p)?(w(),W(u(De),{key:0,onClick:S},{default:I(()=>[m("div",Jo,[h(u(bt),{class:"menu-item-icon"}),e[1]||(e[1]=m("span",null,"新建节点",-1))])]),_:1})):B("",!0),h(u(De),{onClick:n},{default:I(()=>[m("div",qo,[h(u(Yo),{class:"menu-item-icon"}),e[2]||(e[2]=m("span",null,"重排布局",-1))])]),_:1})]),_:1},8,["show","options"]))}}),Xo={key:0,class:"trace-inspection-indicator"},Zo={class:"trace-inspection-content"},ea={class:"inspected-trace-id"},ta=oe({__name:"WorkflowEditor",setup(T){const c=ge(()=>ue(()=>import("./EditorSidePanel-DZbB3ILL.js"),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15]),import.meta.url)),k=ge(()=>ue(()=>import("./FeedbackPanel-CC8HX7Yo.js"),__vite__mapDeps([16,1,2,10,6,4,3,7,5,9,11,12,17,18,19,20,21]),import.meta.url)),H=ge(()=>ue(()=>import("./NodeDetailWrapper-BqFFM7-r.js"),__vite__mapDeps([22,1,2,10,6,4,3,7,5,9,11,12,8,17,18,13,23,21,24,25,26,15]),import.meta.url)),p=ge(()=>ue(()=>import("./TracePanelWrapper-B9zvDSc_.js"),__vite__mapDeps([27,1,2,4,10,6,3,7,5,9,11,12,19,17,18,8,13,28,21,15,29,26,25]),import.meta.url)),v=ge(()=>ue(()=>import("./CreateNewNodeDialog-DkrEMxSH.js"),__vite__mapDeps([30,1,2,10,6,4,3,7,5,9,11,12,8,13,31,29,15]),import.meta.url)),f=E(C.WORKFLOW_NEED_LAYOUT),S=E(C.NODE_DATA_MAP),n=E(C.TRACE_OPEN),l=E(C.FEEDBACK_OPEN),e=E(C.RAW_JSON_OPEN),a=E(C.IS_EDIT_MODE),o=j(Date.now().toString()),t=Je(o.value),{connectEdge:s}=tt(t),x={module:je(Oo),port:je(Ko)},g=j([]),i=j([]),$=j();le(()=>t.getSelectedNodes.value,(b,R)=>{if(b.length===0){$.value=void 0;return}const V=new Set(R.map(J=>J.id)),ce=b.filter(J=>!V.has(J.id));ce.length>0&&($.value=ce[ce.length-1])});const _=xe({});Fe(C.NODE_FOR_INSPECTION,$),Fe(C.TRACE_FOR_INSPECTION,_),le(()=>S?.value,b=>{if(!b)return;const{nodes:R,edges:V}=xt(b,g.value);g.value=R,i.value=V},{immediate:!0}),le([g,i,f],async()=>{if(!f?.value)return;const b=await $t(g.value,i.value,S?.value??new Map);f&&(f.value=!1),g.value=b},{immediate:!0});const D=()=>{$.value=void 0},N=()=>{_.detail=void 0,_.traceId=void 0},y=async()=>{if(_.traceId)try{const b=await dt.post("/detail",{trace_id:_.traceId},{base:ct()});_.detail=b.trace}catch{ie.error("加载运行记录详情失败"),_.detail=null}};le(()=>_.traceId,b=>{n&&b&&(n.value=!0),y()});const M=j(!1),O=xe({x:0,y:0}),z=j(!1),U=xe({x:0,y:0}),he=b=>{b.event.preventDefault(),b.node.selected?$.value=b.node:(t.setNodes(R=>R.map(V=>({...V,selected:V.id===b.node.id}))),t.removeSelectedEdges(t.edges.value)),a?.value&&(O.x=b.event.x,O.y=b.event.y,M.value=!0)},ot=b=>{b.event.preventDefault(),b.edge.selected||(t.setEdges(R=>R.map(V=>({...V,selected:V.id===b.edge.id}))),t.removeSelectedNodes(t.nodes.value)),a?.value&&(O.x=b.event.x,O.y=b.event.y,M.value=!0)},at=b=>{b.preventDefault(),U.x=b.x,U.y=b.y,z.value=!0},nt=b=>{if(!a?.value){ie.warning("请在编辑模式下进行连线编辑");return}s(b)},Le=()=>{M.value=!1},Be=()=>{z.value=!1},rt=()=>{Le(),Be()},st=()=>{n&&(n.value=!1)},it=()=>{l&&(l.value=!1)},lt=()=>{e&&(e.value=!1)};return(b,R)=>{const V=zt,ce=Ut;return w(),W(ce,{class:"work-flow-editor"},{default:I(()=>[h(V,{class:"flow-wrapper",min:"5%"},{default:I(()=>[h(u(pt),{id:o.value,"node-types":x,nodes:g.value,"onUpdate:nodes":R[0]||(R[0]=J=>g.value=J),edges:i.value,"onUpdate:edges":R[1]||(R[1]=J=>i.value=J),"fit-view":"",class:"flow-canvas",onNodeContextMenu:he,onEdgeContextMenu:ot,onPaneContextMenu:at,onMoveStart:rt,onConnect:nt},{default:I(()=>[h(u(gt)),h(u(ft)),h(u(mt),{pannable:"",zoomable:""})]),_:1},8,["id","nodes","edges"]),h(Po,{show:M.value,options:O,onClose:Le},null,8,["show","options"]),h(Qo,{show:z.value,options:U,onClose:Be},null,8,["show","options"]),h(u(v),{pos:{x:U.x,y:U.y}},null,8,["pos"])]),_:1}),h(u(c),{show:!!$.value,title:"节点信息",icon:u(Do),"on-close":D},{default:I(()=>[h(u(H))]),_:1},8,["show","icon"]),h(u(c),{show:u(n),title:"运行记录",icon:u(Nt),"on-close":st},{default:I(()=>[h(u(p))]),_:1},8,["show","icon"]),h(u(c),{show:u(l),title:"反馈列表",icon:u(_t),"on-close":it},{default:I(()=>[h(u(k))]),_:1},8,["show","icon"]),h(u(c),{show:u(e),title:"配置文本",icon:u(wt),"on-close":lt},{default:I(()=>[h(yo)]),_:1},8,["show","icon"]),_.traceId?(w(),A("div",Xo,[_.detail===void 0?(w(),W(u(et),{key:0,class:"trace-detail-loading-icon"})):B("",!0),m("p",Zo,[R[2]||(R[2]=m("span",{class:"trace-inspection-title"},"正在检视运行记录:",-1)),m("span",ea,te(_.traceId),1)]),h(u(kt),{class:"trace-inspection-exit-btn",onClick:N})])):B("",!0)]),_:1})}}}),oa=me(ta,[["__scopeId","data-v-b5587ee8"]]),fa=Object.freeze(Object.defineProperty({__proto__:null,default:oa},Symbol.toStringTag,{value:"Module"}));export{ga as E,fa as W,tt as u};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.el-splitter{display:flex;height:100%;margin:0;padding:0;position:relative;width:100%}.el-splitter__mask{inset:0;position:absolute;z-index:999}.el-splitter__mask-horizontal{cursor:ew-resize}.el-splitter__mask-vertical{cursor:ns-resize}.el-splitter__horizontal{flex-direction:row}.el-splitter__vertical{flex-direction:column}.el-splitter-bar{flex:none;position:relative;-webkit-user-select:none;-moz-user-select:none;user-select:none}.el-splitter-bar__dragger{background:transparent;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);z-index:1}.el-splitter-bar__dragger:after,.el-splitter-bar__dragger:before{background-color:var(--el-border-color-light);content:"";left:50%;position:absolute;top:50%;transform:translate(-50%,-50%)}.el-splitter-bar__dragger:not(.is-lazy):after{display:none}.el-splitter-bar__dragger:after{opacity:.4}.el-splitter-bar__dragger:hover:not(.is-disabled):before{background-color:var(--el-color-primary-light-5)}.el-splitter-bar__dragger-horizontal:after,.el-splitter-bar__dragger-horizontal:before{height:100%;width:2px}.el-splitter-bar__dragger-vertical:after,.el-splitter-bar__dragger-vertical:before{height:2px;width:100%}.el-splitter-bar__dragger-active:after,.el-splitter-bar__dragger-active:before{background-color:var(--el-color-primary-light-3)}.el-splitter-bar__dragger-active.el-splitter-bar__dragger-horizontal:after{transform:translate(calc(-50% + var(--el-splitter-bar-offset)),-50%)}.el-splitter-bar__dragger-active.el-splitter-bar__dragger-vertical:after{transform:translate(-50%,calc(-50% + var(--el-splitter-bar-offset)))}.el-splitter-bar:hover .el-splitter-bar__collapse-icon{opacity:1}.el-splitter-bar__collapse-icon{align-items:center;background:var(--el-border-color-light);border-radius:2px;cursor:pointer;display:flex;justify-content:center;opacity:0;position:absolute;z-index:9}.el-splitter-bar__collapse-icon:hover{background-color:var(--el-color-primary-light-5);opacity:1}.el-splitter-bar__horizontal-collapse-icon-start{height:24px;left:-12px;top:50%;transform:translate(-50%,-50%);width:16px}.el-splitter-bar__horizontal-collapse-icon-end{height:24px;left:12px;top:50%;transform:translate(-50%,-50%);width:16px}.el-splitter-bar__vertical-collapse-icon-start{height:16px;right:50%;top:-12px;transform:translate(50%,-50%);width:24px}.el-splitter-bar__vertical-collapse-icon-end{height:16px;right:50%;top:12px;transform:translate(50%,-50%);width:24px}.el-splitter-panel{box-sizing:border-box;flex-grow:0;overflow:auto;scrollbar-width:thin}.raw-editor[data-v-c9e7ffc5]{width:100%;flex:1;overflow:hidden;display:flex;flex-direction:column;gap:16px;padding:16px}.editor-actions[data-v-c9e7ffc5]{display:flex;justify-content:end}.content-container[data-v-c9e7ffc5]{flex:1;position:relative;border-radius:var(--radius-m);border:1px solid var(--color-border);overflow:hidden}.warning-banner[data-v-c9e7ffc5]{background-color:var(--color-warning-lighter);border:1px solid var(--color-warning-light);border-radius:var(--radius-m);padding:12px 16px;animation:slideIn-c9e7ffc5 .3s ease-out}.warning-content[data-v-c9e7ffc5]{display:flex;align-items:center;gap:8px;color:#b45309}.warning-icon[data-v-c9e7ffc5]{font-size:18px;flex-shrink:0}.warning-text[data-v-c9e7ffc5]{flex:1;font-size:14px;line-height:1.5}@keyframes slideIn-c9e7ffc5{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.el-popover{--el-popover-bg-color:var(--el-bg-color-overlay);--el-popover-font-size:var(--el-font-size-base);--el-popover-border-color:var(--el-border-color-lighter);--el-popover-padding:12px;--el-popover-padding-large:18px 20px;--el-popover-title-font-size:16px;--el-popover-title-text-color:var(--el-text-color-primary);--el-popover-border-radius:4px}.el-popover.el-popper{background:var(--el-popover-bg-color);border:1px solid var(--el-popover-border-color);border-radius:var(--el-popover-border-radius);box-shadow:var(--el-box-shadow-light);box-sizing:border-box;color:var(--el-text-color-regular);font-size:var(--el-popover-font-size);line-height:1.4;min-width:150px;overflow-wrap:break-word;padding:var(--el-popover-padding);z-index:var(--el-index-popper)}.el-popover.el-popper--plain{padding:var(--el-popover-padding-large)}.el-popover__title{color:var(--el-popover-title-text-color);font-size:var(--el-popover-title-font-size);line-height:1;margin-bottom:12px}.el-popover__reference:focus:hover,.el-popover__reference:focus:not(.focusing){outline-width:0}.el-popover.el-popper.is-dark{--el-popover-bg-color:var(--el-text-color-primary);--el-popover-border-color:var(--el-text-color-primary);--el-popover-title-text-color:var(--el-bg-color);color:var(--el-bg-color)}.el-popover.el-popper:focus,.el-popover.el-popper:focus:active{outline-width:0}.input-handle[data-v-37758266],.output-handle[data-v-37758266]{display:flex;align-items:center;position:relative;gap:4px}.input-handle[data-v-37758266]{justify-content:start}.output-handle[data-v-37758266]{justify-content:end}.handle-name[data-v-37758266]{font-weight:500}.handle-circle[data-v-37758266]{--handle-circle-width: var(--node-horizontal-padding, 12px);width:var(--handle-circle-width);height:var(--handle-circle-width);background:var(--color-primary);border:2px solid var(--color-primary-light);border-radius:50%}.inValid .handle-circle[data-v-37758266]{background:var(--color-danger);border-color:var(--color-danger-light)}.input-handle .handle-circle[data-v-37758266]{position:absolute;left:calc(0px - var(--node-horizontal-padding))}.output-handle .handle-circle[data-v-37758266]{position:absolute;right:calc(0px - var(--node-horizontal-padding))}.handle-value-mark[data-v-37758266]{width:1rem;height:1rem;color:var(--color-info-light)}.injected-value-title[data-v-37758266]{font-weight:600;margin-right:4px}.module-node[data-v-4fdfd25e]{width:240px;border:1px solid var(--color-border);padding:12px 0;border-radius:var(--radius-l);background:var(--color-card-bg);display:flex;flex-direction:column;gap:12px;--node-horizontal-padding: 12px}.module-node[data-v-4fdfd25e]:hover{outline:4px solid var(--color-primary-lighter)}.module-node.selected[data-v-4fdfd25e]{border-color:var(--color-primary)}.module-title[data-v-4fdfd25e]{display:flex;justify-content:space-between;padding:0 var(--node-horizontal-padding);gap:8px}.module-name[data-v-4fdfd25e]{font-weight:800;font-size:16px;color:var(--color-text-1);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.module-type[data-v-4fdfd25e]{flex-shrink:0}.module-args[data-v-4fdfd25e]{padding:0 var(--node-horizontal-padding)}.module-arg-item[data-v-4fdfd25e]{display:flex;justify-content:space-between;gap:8px;padding:2px 8px;background:#f3f3f3;margin-top:4px;border-radius:var(--radius-m)}.module-arg-item .arg-item-name[data-v-4fdfd25e]{font-weight:500;text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.module-handles[data-v-4fdfd25e]{display:flex;gap:12px;width:100%;justify-content:space-between;padding:0 var(--node-horizontal-padding)}.module-inputs[data-v-4fdfd25e]{display:flex;flex-direction:column;align-items:start;flex:1}.module-outputs[data-v-4fdfd25e]{display:flex;flex-direction:column;align-items:end;flex:1}.content-section-title[data-v-4fdfd25e]{font-weight:600;font-size:14px;color:var(--color-text-1)}.test-running-progress[data-v-4fdfd25e]{display:flex;align-items:center;gap:8px;padding:4px var(--node-horizontal-padding)}.test-running-progress.running-status[data-v-4fdfd25e]{background:var(--color-info-lighter);color:var(--color-info)}.test-running-progress.finished-status[data-v-4fdfd25e]{background:var(--color-success-lighter);color:var(--color-success)}.test-running-progress.error-status[data-v-4fdfd25e]{background:var(--color-danger-lighter);color:var(--color-danger)}.progress-status-icon[data-v-4fdfd25e]{width:.75rem;height:.75rem}.running-status .progress-status-icon[data-v-4fdfd25e]{animation:rotate-4fdfd25e 1s linear infinite}.progress-status-text[data-v-4fdfd25e]{font-size:.75rem}@keyframes rotate-4fdfd25e{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.port-node[data-v-6c18ecd2]{width:240px;border:1px solid var(--color-primary);padding:12px 0;border-radius:var(--radius-l);background:var(--color-primary-lighter);display:flex;flex-direction:column;gap:12px;color:var(--color-primary);--node-horizontal-padding: 12px}.port-node[data-v-6c18ecd2]:hover{outline:4px solid var(--color-primary-lighter)}.port-node.selected[data-v-6c18ecd2]{background:var(--color-primary);color:#fff}.port-title[data-v-6c18ecd2]{display:flex;justify-content:center;align-items:center;padding:0 var(--node-horizontal-padding);gap:8px}.title-icon[data-v-6c18ecd2]{width:16px;height:16px}.title-text[data-v-6c18ecd2]{font-size:16px;font-weight:800}.port-handles[data-v-6c18ecd2]{display:flex;gap:12px;width:100%;justify-content:space-between;padding:0 var(--node-horizontal-padding)}.port-inputs[data-v-6c18ecd2]{display:flex;flex-direction:column;align-items:start;flex:1}.port-outputs[data-v-6c18ecd2]{display:flex;flex-direction:column;align-items:end;flex:1}.content-section-title[data-v-6c18ecd2]{font-weight:600;font-size:14px;color:var(--color-text-1)}.work-flow-editor[data-v-b5587ee8]{flex:1;overflow:hidden}.flow-wrapper[data-v-b5587ee8]{width:100%;height:100%;position:relative;overflow:hidden}.flow-canvas[data-v-b5587ee8]{width:100%;height:100%}.trace-inspection-indicator[data-v-b5587ee8]{position:absolute;top:12px;left:50%;max-width:calc(100% - 48px);padding:4px 24px;transform:translate(-50%);display:flex;align-items:center;gap:12px;background:linear-gradient(to left,var(--color-primary),var(--color-primary-light));border:2px solid var(--color-primary-lighter);border-radius:32px;color:#fff;z-index:500;box-shadow:0 0 32px rgb(from var(--color-primary-lighter) r g b / 1)}.trace-detail-loading-icon[data-v-b5587ee8]{width:1rem;height:1rem;animation:rotate-b5587ee8 1s linear infinite}@keyframes rotate-b5587ee8{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.trace-inspection-content[data-v-b5587ee8]{display:flex;overflow:hidden;white-space:nowrap}.trace-inspection-title[data-v-b5587ee8]{font-weight:800}.inspected-trace-id[data-v-b5587ee8]{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.trace-inspection-exit-btn[data-v-b5587ee8]{width:1rem;height:1rem;cursor:pointer}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.el-switch{--el-switch-on-color:var(--el-color-primary);--el-switch-off-color:var(--el-border-color);align-items:center;display:inline-flex;font-size:14px;height:32px;line-height:20px;position:relative;vertical-align:middle}.el-switch.is-disabled .el-switch__core,.el-switch.is-disabled .el-switch__label{cursor:not-allowed}.el-switch__label{color:var(--el-text-color-primary);cursor:pointer;display:inline-block;font-size:14px;font-weight:500;height:20px;transition:var(--el-transition-duration-fast);vertical-align:middle}.el-switch__label.is-active{color:var(--el-color-primary)}.el-switch__label--left{margin-right:10px}.el-switch__label--right{margin-left:10px}.el-switch__label *{display:inline-block;font-size:14px;line-height:1}.el-switch__label .el-icon{height:inherit}.el-switch__label .el-icon svg{vertical-align:middle}.el-switch__input{height:0;margin:0;opacity:0;position:absolute;width:0}.el-switch__input:focus-visible~.el-switch__core{outline:2px solid var(--el-switch-on-color);outline-offset:1px}.el-switch__core{align-items:center;background:var(--el-switch-off-color);border:1px solid var(--el-switch-border-color,var(--el-switch-off-color));border-radius:10px;box-sizing:border-box;cursor:pointer;display:inline-flex;height:20px;min-width:40px;outline:none;position:relative;transition:border-color var(--el-transition-duration),background-color var(--el-transition-duration)}.el-switch__core .el-switch__inner{align-items:center;display:flex;height:16px;justify-content:center;overflow:hidden;padding:0 4px 0 18px;transition:all var(--el-transition-duration);width:100%}.el-switch__core .el-switch__inner .is-icon,.el-switch__core .el-switch__inner .is-text{color:var(--el-color-white);font-size:12px;overflow:hidden;text-overflow:ellipsis;-webkit-user-select:none;-moz-user-select:none;user-select:none;white-space:nowrap}.el-switch__core .el-switch__action{align-items:center;background-color:var(--el-color-white);border-radius:var(--el-border-radius-circle);color:var(--el-switch-off-color);display:flex;height:16px;justify-content:center;left:1px;position:absolute;transition:all var(--el-transition-duration);width:16px}.el-switch.is-checked .el-switch__core{background-color:var(--el-switch-on-color);border-color:var(--el-switch-border-color,var(--el-switch-on-color))}.el-switch.is-checked .el-switch__core .el-switch__action{color:var(--el-switch-on-color);left:calc(100% - 17px)}.el-switch.is-checked .el-switch__core .el-switch__inner{padding:0 18px 0 4px}.el-switch.is-disabled{opacity:.6}.el-switch--wide .el-switch__label.el-switch__label--left span{left:10px}.el-switch--wide .el-switch__label.el-switch__label--right span{right:10px}.el-switch .label-fade-enter-from,.el-switch .label-fade-leave-active{opacity:0}.el-switch--large{font-size:14px;height:40px;line-height:24px}.el-switch--large .el-switch__label{font-size:14px;height:24px}.el-switch--large .el-switch__label *{font-size:14px}.el-switch--large .el-switch__core{border-radius:12px;height:24px;min-width:50px}.el-switch--large .el-switch__core .el-switch__inner{height:20px;padding:0 6px 0 22px}.el-switch--large .el-switch__core .el-switch__action{height:20px;width:20px}.el-switch--large.is-checked .el-switch__core .el-switch__action{left:calc(100% - 21px)}.el-switch--large.is-checked .el-switch__core .el-switch__inner{padding:0 22px 0 6px}.el-switch--small{font-size:12px;height:24px;line-height:16px}.el-switch--small .el-switch__label{font-size:12px;height:16px}.el-switch--small .el-switch__label *{font-size:12px}.el-switch--small .el-switch__core{border-radius:8px;height:16px;min-width:30px}.el-switch--small .el-switch__core .el-switch__inner{height:12px;padding:0 2px 0 14px}.el-switch--small .el-switch__core .el-switch__action{height:12px;width:12px}.el-switch--small.is-checked .el-switch__core .el-switch__action{left:calc(100% - 13px)}.el-switch--small.is-checked .el-switch__core .el-switch__inner{padding:0 14px 0 2px}.workflow-card[data-v-ac2d2f7a]{padding:12px 16px;background:var(--color-card-bg-dark);border-radius:var(--radius-m);border:1px solid var(--color-border);cursor:pointer}.workflow-card[data-v-ac2d2f7a]:hover{border-color:var(--color-primary-light);z-index:10}.card-header[data-v-ac2d2f7a]{display:flex;justify-content:space-between;align-items:center;gap:32px}.workflow-version[data-v-ac2d2f7a]{font-size:1rem;font-weight:600;color:var(--color-text-2)}.status-switch[data-v-ac2d2f7a]{flex-shrink:0}.workflow-card:hover .workflow-version[data-v-ac2d2f7a]{color:var(--color-primary)}.workflow-description[data-v-ac2d2f7a]{display:-webkit-box;font-size:.875rem;color:var(--color-text-3);line-clamp:4;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;margin-top:8px}.workflow-list-container[data-v-e7f19f18]{min-height:100vh;background:var(--color-page-bg);padding:24px min(15%,200px)}.header[data-v-e7f19f18]{margin-bottom:24px}.header-title[data-v-e7f19f18]{display:flex;align-items:center;gap:16px}.service-name[data-v-e7f19f18]{font-size:2.5rem;font-weight:800;color:var(--color-text-1)}.service-description[data-v-e7f19f18]{color:var(--color-text-3);margin-top:12px}.list-title[data-v-e7f19f18]{font-size:1.5rem;font-weight:600;margin-bottom:24px}@keyframes spin-e7f19f18{to{transform:rotate(360deg)}}.list-area[data-v-e7f19f18]{width:100%}.workflow-group-list[data-v-e7f19f18]{display:flex;flex-direction:column;gap:20px}.workflow-group[data-v-e7f19f18]{padding:16px;background:var(--color-card-bg);border-radius:var(--radius-l);border:1px solid var(--color-border)}.workflow-group-title[data-v-e7f19f18]{text-wrap:wrap;white-space:wrap;word-break:break-all;font-size:1.5rem;font-weight:600}.workflows-grid[data-v-e7f19f18]{display:grid;width:100%;grid-template-columns:repeat(auto-fill,minmax(600px,1fr));gap:12px;margin-top:12px}.empty-state[data-v-e7f19f18]{width:100%;align-self:center}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{a as V,g as b}from"./api-DyiqpKJK.js";/* empty css *//* empty css */import{v as W,aA as T,c as U,r as n,x as r,y as t,B as c,U as N,O as d,j,G as w,R as D,J as k,H as B,a9 as C,K as g,a2 as E}from"./vue-core-DL-LgTX0.js";import{E as O,a as h,v as A,b as F,d as G,e as M}from"./element-ui-D3x2y3TA.js";import{_ as $}from"./index-BMvodlwc.js";import"./ui-components-DQ7-U3pr.js";const R={class:"card-header"},H={class:"workflow-version"},J={class:"workflow-description"},K=W({__name:"WorkflowItemCard",props:{workflow:{}},setup(y){const v=y,p=T(),a=U(()=>v.workflow),l=n(!1),i=()=>{p.push({name:"workflow-studio",params:{id:a.value.id}})},m=async()=>{const f=`/workflow/${a.value.id}/${a.value.status==="running"?"stop":"start"}`;try{l.value=!0;const e=await V.post(f,{},{base:b()});if(e.success)return!0;if(e.message)return h.error(e.message),!1}catch(e){return h.error(e.message),!1}finally{l.value=!1}};return(f,e)=>{const o=O;return t(),r("div",{class:"workflow-card",onClick:i},[c("div",R,[c("h3",H,"版本: "+d(a.value.version),1),N(o,{class:"status-switch",modelValue:a.value.status,"onUpdate:modelValue":e[0]||(e[0]=s=>a.value.status=s),"active-value":"running","inactive-value":"stopped","active-text":"运行中","inactive-text":"已停止",loading:l.value,"before-change":m,onClick:e[1]||(e[1]=s=>s.stopPropagation())},null,8,["modelValue","loading"])]),c("p",J,d(a.value.description),1)])}}}),P=$(K,[["__scopeId","data-v-ac2d2f7a"]]),q={class:"workflow-list-container"},z={key:0,class:"header"},Q={class:"header-title"},X={class:"service-name"},Y={key:0,class:"service-description"},Z={class:"list-area"},ee={key:0,class:"workflow-group-list"},se={class:"workflow-group-title"},te={key:0,class:"workflows-grid"},oe=W({__name:"WorkflowList",setup(y){const v=n(""),p=n(""),a=n(""),l=n({}),i=n(!0),m=n(""),f=o=>{const s={};for(const u of o)s[u.name]||(s[u.name]=[]),s[u.name]?.push(u);return s},e=async()=>{i.value=!0,m.value="";try{const o=await V.get("/status",{base:b()});v.value=o.name||"",p.value=o.version||"",a.value=o.description||"",l.value=f(o.workflows||[])}catch(o){h.error(o?.message||"获取工作流列表失败"),console.error("Failed to fetch workflows:",o)}finally{i.value=!1}};return j(()=>{e()}),(o,s)=>{const u=G,I=M,L=F,S=A;return t(),r("div",q,[i.value?w("",!0):(t(),r("header",z,[c("div",Q,[c("h1",X,d(v.value),1),p.value?(t(),k(u,{key:0},{default:g(()=>[E(d(p.value),1)]),_:1})):w("",!0)]),a.value?(t(),r("p",Y,d(a.value),1)):w("",!0)])),s[1]||(s[1]=c("h2",{class:"list-title"},"工作流列表",-1)),D((t(),r("section",Z,[Object.keys(l.value).length>0?(t(),r("div",ee,[(t(!0),r(B,null,C(Object.keys(l.value),_=>(t(),r("div",{key:_,class:"workflow-group"},[c("h3",se,d(_),1),l.value[_].length>0?(t(),r("div",te,[(t(!0),r(B,null,C(l.value[_],x=>(t(),k(P,{workflow:x,key:x.name},null,8,["workflow"]))),128))])):w("",!0)]))),128))])):(t(),k(L,{key:1,class:"empty-state"},{default:g(()=>[N(I,{type:"primary",onClick:e},{default:g(()=>[...s[0]||(s[0]=[E("重新加载",-1)])]),_:1})]),_:1}))])),[[S,i.value]])])}}}),de=$(oe,[["__scopeId","data-v-e7f19f18"]]);export{de as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.el-result{--el-result-padding:40px 30px;--el-result-icon-font-size:64px;--el-result-title-font-size:20px;--el-result-title-margin-top:20px;--el-result-subtitle-margin-top:10px;--el-result-extra-margin-top:30px;align-items:center;box-sizing:border-box;display:flex;flex-direction:column;justify-content:center;padding:var(--el-result-padding);text-align:center}.el-result__icon svg{height:var(--el-result-icon-font-size);width:var(--el-result-icon-font-size)}.el-result__title{margin-top:var(--el-result-title-margin-top)}.el-result__title p{color:var(--el-text-color-primary);font-size:var(--el-result-title-font-size);line-height:1.3;margin:0}.el-result__subtitle{margin-top:var(--el-result-subtitle-margin-top)}.el-result__subtitle p{color:var(--el-text-color-regular);font-size:var(--el-font-size-base);line-height:1.3;margin:0}.el-result__extra{margin-top:var(--el-result-extra-margin-top)}.el-result .icon-primary{--el-result-color:var(--el-color-primary);color:var(--el-result-color)}.el-result .icon-success{--el-result-color:var(--el-color-success);color:var(--el-result-color)}.el-result .icon-warning{--el-result-color:var(--el-color-warning);color:var(--el-result-color)}.el-result .icon-danger{--el-result-color:var(--el-color-danger);color:var(--el-result-color)}.el-result .icon-error{--el-result-color:var(--el-color-error);color:var(--el-result-color)}.el-result .icon-info{--el-result-color:var(--el-color-info);color:var(--el-result-color)}.el-divider{position:relative}.el-divider--horizontal{border-top:1px var(--el-border-color) var(--el-border-style);display:block;height:1px;margin:24px 0;width:100%}.el-divider--vertical{border-left:1px var(--el-border-color) var(--el-border-style);display:inline-block;height:1em;margin:0 8px;position:relative;vertical-align:middle;width:1px}.el-divider__text{background-color:var(--el-bg-color);color:var(--el-text-color-primary);font-size:14px;font-weight:500;padding:0 20px;position:absolute}.el-divider__text.is-left{left:20px;transform:translateY(-50%)}.el-divider__text.is-center{left:50%;transform:translate(-50%) translateY(-50%)}.el-divider__text.is-right{right:20px;transform:translateY(-50%)}.el-page-header.is-contentful .el-page-header__main{border-top:1px solid var(--el-border-color-light);margin-top:16px}.el-page-header__header{align-items:center;display:flex;justify-content:space-between;line-height:24px}.el-page-header__left{align-items:center;display:flex;margin-right:40px;position:relative}.el-page-header__back{align-items:center;cursor:pointer;display:flex}.el-page-header__left .el-divider--vertical{margin:0 16px}.el-page-header__icon{align-items:center;display:flex;font-size:16px;margin-right:10px}.el-page-header__icon .el-icon{font-size:inherit}.el-page-header__title{font-size:14px;font-weight:500}.el-page-header__content{color:var(--el-text-color-primary);font-size:18px}.el-page-header__breadcrumb{margin-bottom:16px}.el-badge{--el-badge-bg-color:var(--el-color-danger);--el-badge-radius:10px;--el-badge-font-size:12px;--el-badge-padding:6px;--el-badge-size:18px;display:inline-block;position:relative;vertical-align:middle;width:-moz-fit-content;width:fit-content}.el-badge__content{align-items:center;background-color:var(--el-badge-bg-color);border:1px solid var(--el-bg-color);border-radius:var(--el-badge-radius);color:var(--el-color-white);display:inline-flex;font-size:var(--el-badge-font-size);height:var(--el-badge-size);justify-content:center;padding:0 var(--el-badge-padding);white-space:nowrap}.el-badge__content.is-fixed{position:absolute;right:calc(1px + var(--el-badge-size)/2);top:0;transform:translateY(-50%) translate(100%);z-index:var(--el-index-normal)}.el-badge__content.is-fixed.is-dot{right:5px}.el-badge__content.is-dot{border-radius:50%;height:8px;padding:0;right:0;width:8px}.el-badge__content.is-hide-zero{display:none}.el-badge__content--primary{background-color:var(--el-color-primary)}.el-badge__content--success{background-color:var(--el-color-success)}.el-badge__content--warning{background-color:var(--el-color-warning)}.el-badge__content--info{background-color:var(--el-color-info)}.el-badge__content--danger{background-color:var(--el-color-danger)}.el-button-group{display:inline-block;vertical-align:middle}.el-button-group:after,.el-button-group:before{content:"";display:table}.el-button-group:after{clear:both}.el-button-group>.el-button{float:left;position:relative}.el-button-group>.el-button+.el-button{margin-left:0}.el-button-group>.el-button:first-child{border-bottom-right-radius:0;border-top-right-radius:0}.el-button-group>.el-button:last-child{border-bottom-left-radius:0;border-top-left-radius:0}.el-button-group>.el-button:first-child:last-child{border-bottom-left-radius:var(--el-border-radius-base);border-bottom-right-radius:var(--el-border-radius-base);border-top-left-radius:var(--el-border-radius-base);border-top-right-radius:var(--el-border-radius-base)}.el-button-group>.el-button:first-child:last-child.is-round{border-radius:var(--el-border-radius-round)}.el-button-group>.el-button:first-child:last-child.is-circle{border-radius:50%}.el-button-group>.el-button:not(:first-child):not(:last-child){border-radius:0}.el-button-group>.el-button:not(:last-child){margin-right:-1px}.el-button-group>.el-button:active,.el-button-group>.el-button:focus,.el-button-group>.el-button:hover{z-index:1}.el-button-group>.el-button.is-active{z-index:1}.el-button-group>.el-dropdown>.el-button{border-bottom-left-radius:0;border-left-color:var(--el-button-divide-border-color);border-top-left-radius:0}.el-button-group .el-button--primary:first-child{border-right-color:var(--el-button-divide-border-color)}.el-button-group .el-button--primary:last-child{border-left-color:var(--el-button-divide-border-color)}.el-button-group .el-button--primary:not(:first-child):not(:last-child){border-left-color:var(--el-button-divide-border-color);border-right-color:var(--el-button-divide-border-color)}.el-button-group .el-button--success:first-child{border-right-color:var(--el-button-divide-border-color)}.el-button-group .el-button--success:last-child{border-left-color:var(--el-button-divide-border-color)}.el-button-group .el-button--success:not(:first-child):not(:last-child){border-left-color:var(--el-button-divide-border-color);border-right-color:var(--el-button-divide-border-color)}.el-button-group .el-button--warning:first-child{border-right-color:var(--el-button-divide-border-color)}.el-button-group .el-button--warning:last-child{border-left-color:var(--el-button-divide-border-color)}.el-button-group .el-button--warning:not(:first-child):not(:last-child){border-left-color:var(--el-button-divide-border-color);border-right-color:var(--el-button-divide-border-color)}.el-button-group .el-button--danger:first-child{border-right-color:var(--el-button-divide-border-color)}.el-button-group .el-button--danger:last-child{border-left-color:var(--el-button-divide-border-color)}.el-button-group .el-button--danger:not(:first-child):not(:last-child){border-left-color:var(--el-button-divide-border-color);border-right-color:var(--el-button-divide-border-color)}.el-button-group .el-button--info:first-child{border-right-color:var(--el-button-divide-border-color)}.el-button-group .el-button--info:last-child{border-left-color:var(--el-button-divide-border-color)}.el-button-group .el-button--info:not(:first-child):not(:last-child){border-left-color:var(--el-button-divide-border-color);border-right-color:var(--el-button-divide-border-color)}.el-popper{--el-popper-border-radius:var(--el-popover-border-radius,4px);border-radius:var(--el-popper-border-radius);font-size:12px;line-height:20px;min-width:10px;overflow-wrap:break-word;padding:5px 11px;position:absolute;visibility:visible;word-break:normal;z-index:2000}.el-popper.is-dark{background:var(--el-text-color-primary);border:1px solid var(--el-text-color-primary);color:var(--el-bg-color)}.el-popper.is-dark>.el-popper__arrow:before{background:var(--el-text-color-primary);border:1px solid var(--el-text-color-primary);right:0}.el-popper.is-light{background:var(--el-bg-color-overlay);border:1px solid var(--el-border-color-light)}.el-popper.is-light>.el-popper__arrow:before{background:var(--el-bg-color-overlay);border:1px solid var(--el-border-color-light);right:0}.el-popper.is-pure{padding:0}.el-popper__arrow{height:10px;position:absolute;width:10px;z-index:-1}.el-popper__arrow:before{background:var(--el-text-color-primary);box-sizing:border-box;content:" ";height:10px;position:absolute;transform:rotate(45deg);width:10px;z-index:-1}.el-popper[data-popper-placement^=top]>.el-popper__arrow{bottom:-5px}.el-popper[data-popper-placement^=top]>.el-popper__arrow:before{border-bottom-right-radius:2px}.el-popper[data-popper-placement^=bottom]>.el-popper__arrow{top:-5px}.el-popper[data-popper-placement^=bottom]>.el-popper__arrow:before{border-top-left-radius:2px}.el-popper[data-popper-placement^=left]>.el-popper__arrow{right:-5px}.el-popper[data-popper-placement^=left]>.el-popper__arrow:before{border-top-right-radius:2px}.el-popper[data-popper-placement^=right]>.el-popper__arrow{left:-5px}.el-popper[data-popper-placement^=right]>.el-popper__arrow:before{border-bottom-left-radius:2px}.el-popper[data-popper-placement^=top]>.el-popper__arrow:before{border-left-color:transparent!important;border-top-color:transparent!important}.el-popper[data-popper-placement^=bottom]>.el-popper__arrow:before{border-bottom-color:transparent!important;border-right-color:transparent!important}.el-popper[data-popper-placement^=left]>.el-popper__arrow:before{border-bottom-color:transparent!important;border-left-color:transparent!important}.el-popper[data-popper-placement^=right]>.el-popper__arrow:before{border-right-color:transparent!important;border-top-color:transparent!important}.workflow-detail-container[data-v-4935a321]{width:max(100vw,800px);height:max(100vh,600px);display:flex;flex-direction:column;background:var(--color-page-bg)}.navbar[data-v-4935a321]{background:#fff;padding:12px 16px;width:100%;overflow:hidden;border-bottom:1px solid var(--color-border);z-index:300}.workflow-title[data-v-4935a321]{display:flex;flex-direction:column;gap:8px;flex:1;position:relative;line-height:1}.workflow-version[data-v-4935a321]{color:var(--color-text-3);font-size:.75rem}.workflow-name[data-v-4935a321]{color:var(--color-text-1);font-size:1rem;font-weight:600}.action-buttons[data-v-4935a321]{display:flex;flex-shrink:0}.error-overlay[data-v-4935a321]{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./WorkflowEditor-CcaGGbko.js","./index-BMvodlwc.js","./vue-core-DL-LgTX0.js","./ui-components-DQ7-U3pr.js","./index-CjSe8i2q.css","./api-DyiqpKJK.js","./api-BDer3rj7.css","./vue-flow-Dn7R8GPr.js","./js-yaml-yTPt38rv.js","./code-editor-DBSql_sc.js","./element-ui-D3x2y3TA.js","./WorkflowEditor-CmasOOYK.css","./el-tag-DljBBxJR.css","./TestRunningDialog-D0GrCoYs.js","./elkjs-Dm5QV7uy.js","./TestRunningDialog-dhXOsPgH.css","./el-form-item-BWkJzdQ_.css","./el-input-D6B3r8CH.css"])))=>i.map(i=>d[i]);
|
|
2
|
+
import{a as X,_ as we}from"./index-BMvodlwc.js";import{a as x,b as ye,t as Ee,c as Te,g as ee}from"./api-DyiqpKJK.js";import{aB as re,r as u,V as ie,w as z,Q as ke,v as Ie,c as te,aC as Se,j as De,x as We,U as f,R as oe,K as h,u as v,J as ne,aD as ae,aE as Ce,B as P,a2 as B,O as R,aA as Re,y as H,q as O}from"./vue-core-DL-LgTX0.js";import{u as m}from"./ui-components-DQ7-U3pr.js";import{a as g,f as be,h as Me,v as Ae,i as Le,j as Pe,k as Be,e as ze,l as Fe,m as He}from"./element-ui-D3x2y3TA.js";import{j as U}from"./js-yaml-yTPt38rv.js";import{r as xe}from"./elkjs-Dm5QV7uy.js";const w={WORKFLOW_DATA:"workflowData",WORKFLOW_NEED_LAYOUT:"workflowNeedLayout",NODE_DATA_MAP:"nodeDataMap",NODE_FOR_INSPECTION:"nodeForInspection",TRACE_FOR_INSPECTION:"traceForInspection",TEST_RUNNING_RECORD:"testRunningRecord",IS_EDIT_MODE:"isEditMode",TRACE_OPEN:"traceOpen",FEEDBACK_OPEN:"feedbackOpen",RAW_JSON_OPEN:"rawJsonOpen",CREATE_NEW_NODE_OPEN:"createNewNodeOpen",TEST_RUNNING_OPEN:"testRunningOpen",EMITTER:"emitter"},Tt=m({tag:"svg",attr:{viewBox:"0 0 1024 1024"},child:[{tag:"path",attr:{d:"M864 256H736v-80c0-35.3-28.7-64-64-64H352c-35.3 0-64 28.7-64 64v80H160c-17.7 0-32 14.3-32 32v32c0 4.4 3.6 8 8 8h60.4l24.7 523c1.6 34.1 29.8 61 63.9 61h454c34.2 0 62.3-26.8 63.9-61l24.7-523H888c4.4 0 8-3.6 8-8v-32c0-17.7-14.3-32-32-32zm-200 0H360v-72h304v72z"},child:[]}]}),kt=m({tag:"svg",attr:{viewBox:"0 0 1024 1024"},child:[{tag:"path",attr:{d:"M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm32 664c0 4.4-3.6 8-8 8h-48c-4.4 0-8-3.6-8-8V456c0-4.4 3.6-8 8-8h48c4.4 0 8 3.6 8 8v272zm-32-344a48.01 48.01 0 0 1 0-96 48.01 48.01 0 0 1 0 96z"},child:[]}]}),It=m({tag:"svg",attr:{viewBox:"0 0 1024 1024",fill:"currentColor","fill-rule":"evenodd"},child:[{tag:"path",attr:{d:"M799.855 166.312c.023.007.043.018.084.059l57.69 57.69c.041.041.052.06.059.084a.118.118 0 0 1 0 .069c-.007.023-.018.042-.059.083L569.926 512l287.703 287.703c.041.04.052.06.059.083a.118.118 0 0 1 0 .07c-.007.022-.018.042-.059.083l-57.69 57.69c-.041.041-.06.052-.084.059a.118.118 0 0 1-.069 0c-.023-.007-.042-.018-.083-.059L512 569.926 224.297 857.629c-.04.041-.06.052-.083.059a.118.118 0 0 1-.07 0c-.022-.007-.042-.018-.083-.059l-57.69-57.69c-.041-.041-.052-.06-.059-.084a.118.118 0 0 1 0-.069c.007-.023.018-.042.059-.083L454.073 512 166.371 224.297c-.041-.04-.052-.06-.059-.083a.118.118 0 0 1 0-.07c.007-.022.018-.042.059-.083l57.69-57.69c.041-.041.06-.052.084-.059a.118.118 0 0 1 .069 0c.023.007.042.018.083.059L512 454.073l287.703-287.702c.04-.041.06-.052.083-.059a.118.118 0 0 1 .07 0Z"},child:[]}]}),Ue=m({tag:"svg",attr:{viewBox:"0 0 1024 1024"},child:[{tag:"path",attr:{d:"M518.3 459a8 8 0 0 0-12.6 0l-112 141.7a7.98 7.98 0 0 0 6.3 12.9h73.9V856c0 4.4 3.6 8 8 8h60c4.4 0 8-3.6 8-8V613.7H624c6.7 0 10.4-7.7 6.3-12.9L518.3 459z"},child:[]},{tag:"path",attr:{d:"M811.4 366.7C765.6 245.9 648.9 160 512.2 160S258.8 245.8 213 366.6C127.3 389.1 64 467.2 64 560c0 110.5 89.5 200 199.9 200H304c4.4 0 8-3.6 8-8v-60c0-4.4-3.6-8-8-8h-40.1c-33.7 0-65.4-13.4-89-37.7-23.5-24.2-36-56.8-34.9-90.6.9-26.4 9.9-51.2 26.2-72.1 16.7-21.3 40.1-36.8 66.1-43.7l37.9-9.9 13.9-36.6c8.6-22.8 20.6-44.1 35.7-63.4a245.6 245.6 0 0 1 52.4-49.9c41.1-28.9 89.5-44.2 140-44.2s98.9 15.3 140 44.2c19.9 14 37.5 30.8 52.4 49.9 15.1 19.3 27.1 40.7 35.7 63.4l13.8 36.5 37.8 10C846.1 454.5 884 503.8 884 560c0 33.1-12.9 64.3-36.3 87.7a123.07 123.07 0 0 1-87.6 36.3H720c-4.4 0-8 3.6-8 8v60c0 4.4 3.6 8 8 8h40.1C870.5 760 960 670.5 960 560c0-92.7-63.1-170.7-148.6-193.3z"},child:[]}]}),$e=m({tag:"svg",attr:{viewBox:"0 0 1024 1024"},child:[{tag:"path",attr:{d:"M257.7 752c2 0 4-.2 6-.5L431.9 722c2-.4 3.9-1.3 5.3-2.8l423.9-423.9a9.96 9.96 0 0 0 0-14.1L694.9 114.9c-1.9-1.9-4.4-2.9-7.1-2.9s-5.2 1-7.1 2.9L256.8 538.8c-1.5 1.5-2.4 3.3-2.8 5.3l-29.5 168.2a33.5 33.5 0 0 0 9.4 29.8c6.6 6.4 14.9 9.9 23.8 9.9zm67.4-174.4L687.8 215l73.3 73.3-362.7 362.6-88.9 15.7 15.6-89zM880 836H144c-17.7 0-32 14.3-32 32v36c0 4.4 3.6 8 8 8h784c4.4 0 8-3.6 8-8v-36c0-17.7-14.3-32-32-32z"},child:[]}]}),Ve=m({tag:"svg",attr:{viewBox:"0 0 1024 1024"},child:[{tag:"path",attr:{d:"M942.2 486.2C847.4 286.5 704.1 186 512 186c-192.2 0-335.4 100.5-430.2 300.3a60.3 60.3 0 0 0 0 51.5C176.6 737.5 319.9 838 512 838c192.2 0 335.4-100.5 430.2-300.3 7.7-16.2 7.7-35 0-51.5zM512 766c-161.3 0-279.4-81.8-362.7-254C232.6 339.8 350.7 258 512 258c161.3 0 279.4 81.8 362.7 254C791.5 684.2 673.4 766 512 766zm-4-430c-97.2 0-176 78.8-176 176s78.8 176 176 176 176-78.8 176-176-78.8-176-176-176zm0 288c-61.9 0-112-50.1-112-112s50.1-112 112-112 112 50.1 112 112-50.1 112-112 112z"},child:[]}]}),St=m({tag:"svg",attr:{viewBox:"0 0 1024 1024"},child:[{tag:"path",attr:{d:"M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm0 820c-205.4 0-372-166.6-372-372s166.6-372 372-372 372 166.6 372 372-166.6 372-372 372z"},child:[]},{tag:"path",attr:{d:"M464 336a48 48 0 1 0 96 0 48 48 0 1 0-96 0zm72 112h-48c-4.4 0-8 3.6-8 8v272c0 4.4 3.6 8 8 8h48c4.4 0 8-3.6 8-8V456c0-4.4-3.6-8-8-8z"},child:[]}]}),Dt=m({tag:"svg",attr:{viewBox:"0 0 1024 1024"},child:[{tag:"path",attr:{d:"M696 480H328c-4.4 0-8 3.6-8 8v48c0 4.4 3.6 8 8 8h368c4.4 0 8-3.6 8-8v-48c0-4.4-3.6-8-8-8z"},child:[]},{tag:"path",attr:{d:"M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm0 820c-205.4 0-372-166.6-372-372s166.6-372 372-372 372 166.6 372 372-166.6 372-372 372z"},child:[]}]}),Ke=m({tag:"svg",attr:{viewBox:"0 0 1024 1024"},child:[{tag:"path",attr:{d:"M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm0 820c-205.4 0-372-166.6-372-372s166.6-372 372-372 372 166.6 372 372-166.6 372-372 372z"},child:[]},{tag:"path",attr:{d:"M719.4 499.1l-296.1-215A15.9 15.9 0 0 0 398 297v430c0 13.1 14.8 20.5 25.3 12.9l296.1-215a15.9 15.9 0 0 0 0-25.8zm-257.6 134V390.9L628.5 512 461.8 633.1z"},child:[]}]}),Wt=m({tag:"svg",attr:{viewBox:"0 0 1024 1024"},child:[{tag:"path",attr:{d:"M482 152h60q8 0 8 8v704q0 8-8 8h-60q-8 0-8-8V160q0-8 8-8Z"},child:[]},{tag:"path",attr:{d:"M192 474h672q8 0 8 8v60q0 8-8 8H160q-8 0-8-8v-60q0-8 8-8Z"},child:[]}]}),je=re("service",()=>{const r=u(""),e=()=>{r.value=window.location.pathname.split("/").filter(Boolean)[2]||""};return window.addEventListener("popstate",e),e(),{serviceName:r}}),se=re("schema",()=>{const r=je().serviceName,e=ie(new Map),t=u(!1),a=async o=>{if(!(o&&e.size>0))try{t.value=!0;const s=await x.get("/schema/nodes",{base:ye()});e.clear(),s.forEach(n=>e.set(n.name,n))}catch(s){throw g.error("获取节点定义失败"),s}finally{t.value=!1}};return z(()=>r,()=>a(!0).finally(),{immediate:!0}),{nodeSchemaMap:e,synchronizing:t,fetchNodeSchemas:a}});class c{static WORKFLOW_INPUT_NODE_ID="$INPUT";static WORKFLOW_OUTPUT_NODE_ID="$OUTPUT";static portTypeToNodeId(e){return e==="in"?c.WORKFLOW_INPUT_NODE_ID:c.WORKFLOW_OUTPUT_NODE_ID}static configNameToNodeId(e){return`_${e}`}static nodeIdToName(e){return e===c.WORKFLOW_INPUT_NODE_ID?"输入":e===c.WORKFLOW_OUTPUT_NODE_ID?"输出":e.slice(1)}static getHandleId(e){return e.nodeId===c.WORKFLOW_INPUT_NODE_ID?`$入口-${e.type}-${e.handleName}`:e.nodeId===c.WORKFLOW_OUTPUT_NODE_ID?`$出口-${e.type}-${e.handleName}`:`_${e.nodeId}-${e.type}-${e.handleName}`}static extractHandleName(e,t,a){return c.isInputNode(t)||c.isOutputNode(t)?e.slice(5+a.length):e.slice(3+t.length+a.length)}static getHandleType(e,t){if(c.isInputNode(t)||c.isOutputNode(t)){const a=e.slice(4);if(a.startsWith("in"))return"in";if(a.startsWith("out"))return"out"}else{const a=e.slice(2+t.length);if(a.startsWith("in"))return"in";if(a.startsWith("out"))return"out"}return"unknown"}static isInputNode(e){return e===c.WORKFLOW_INPUT_NODE_ID}static isOutputNode(e){return e===c.WORKFLOW_OUTPUT_NODE_ID}static isModuleNode(e){return e.startsWith("_")}}var qe=xe();const Je=be(qe);function b(r){const[e,t]=r.split("|");return{nodeId:c.configNameToNodeId(e||""),handleName:t||""}}function Ye(r,e){const t=new Map;return r.nodes.forEach(a=>{t.set(c.configNameToNodeId(a.name),Ze(a,e))}),t.set(c.portTypeToNodeId("in"),Xe(r.inputs)),t.set(c.portTypeToNodeId("out"),et(t,r.outputs)),t.forEach((a,o)=>{tt(o,t)}),t}function Ze(r,e){const t=e.get(r.type);return{name:r.name,type:r.type||"",args:r.args||{},inputs:Qe(r,t),outputs:Ge(r,t)}}function Ge(r,e){const t={};return Object.keys(e?.outputs||{}).forEach(a=>{t[a]={nodeId:c.configNameToNodeId(r.name),handleName:a,type:"out",to:[]}}),Object.entries(r.outputs||{}).forEach(([a,o])=>{let s;a in t?s=t[a]:(s={nodeId:c.configNameToNodeId(r.name),handleName:a,type:"out",to:[]},t[a]=s),typeof o=="string"?s.to.push(b(o)):Array.isArray(o)&&s.to.push(...o.map(b)),t[a]=s}),t}function Qe(r,e){const t={};return[...Object.keys(e?.inputs||{}),...Object.keys(r?.args||{})].forEach(o=>{const s={nodeId:c.configNameToNodeId(r.name),handleName:o,type:"in",hasSource:!1};o in(r?.args||{})&&(s.value=r?.args?.[o]),t[o]=s}),t}function Xe(r){const e={name:"输入",type:"WORKFLOW_INPUT",outputs:{}};return r?.forEach(t=>{const a={nodeId:c.portTypeToNodeId("in"),handleName:t.name,type:"out",to:[]};t.value!==void 0&&t.value!==null&&(a.value=t.value),typeof t.port=="string"?a.to.push(b(t.port)):Array.isArray(t.port)&&a.to.push(...t.port.map(b)),e.outputs&&(e.outputs[t.name]=a)}),e}function et(r,e){const t={name:"输出",type:"WORKFLOW_OUTPUT",inputs:{}},a=c.portTypeToNodeId("out");return e?.forEach(o=>{const s={nodeId:a,handleName:o.name,type:"in",hasSource:!0};o.port&&(s.from=b(o.port)),t.inputs&&(t.inputs[o.name]=s)}),Object.values(t.inputs||{}).forEach(o=>{const s=r.get(o.from?.nodeId||"");if(s&&o.from?.handleName){let n=s.outputs?.[o.from.handleName];n?n.to.push({nodeId:a,handleName:o.handleName}):(n={nodeId:o.from.nodeId,handleName:o.from.handleName,type:"out",to:[{nodeId:a,handleName:o.handleName}]},s.outputs=s.outputs||{},s.outputs[o.from.handleName]=n)}}),t}function tt(r,e){const t=e.get(r);t&&Object.values(t.outputs||{}).forEach(a=>{a.to.forEach(o=>{const s=e.get(o.nodeId);if(s&&o.handleName){let n=s.inputs?.[o.handleName];n?n.hasSource=!0:(n={nodeId:o.nodeId,handleName:o.handleName,type:"in",hasSource:!0},s.inputs=s.inputs||{},s.inputs[o.handleName]=n)}})})}function Ct(r,e){const t=ot(r,e),a=nt(r);return{nodes:t,edges:a}}function ot(r,e){const t=[],a=new Set([...r.keys()].filter(n=>!c.isInputNode(n)&&!c.isOutputNode(n)));let o,s;return e?.forEach(n=>{c.isInputNode(n.id)?o=n:c.isOutputNode(n.id)?s=n:r.has(n.id)&&(t.push(n),a.delete(n.id))}),t.push(o??{id:c.portTypeToNodeId("in"),type:"port",position:{x:0,y:0}}),t.push(s??{id:c.portTypeToNodeId("out"),type:"port",position:{x:0,y:0}}),a.forEach(n=>{r.get(n)&&t.push({id:n,type:"module",position:{x:0,y:0}})}),t}function nt(r){const e=[];return r.forEach((t,a)=>{Object.values(t.outputs||{}).forEach(o=>{o.to.forEach(s=>{const n=r.get(s.nodeId);if(n&&s.handleName){const d=n.inputs?.[s.handleName];if(!d)return;const l={id:`E-${o.nodeId}|${o.handleName}-${s.nodeId}|${s.handleName}`,source:a,sourceHandle:c.getHandleId(o),target:d.nodeId,targetHandle:c.getHandleId(d),markerEnd:"arrow"};(c.isInputNode(l.source)||c.isOutputNode(l.target))&&(l.style={strokeDasharray:"5px 2px"}),e.push(l)}})})}),e}async function Rt(r,e,t){const a=new Je,s={id:"root",layoutOptions:{"elk.algorithm":"layered","elk.direction":"RIGHT","elk.layered.nodePlacement.strategy":"SIMPLE"},children:r.map(d=>{const l=t.get(d.id),I=Object.values(l?.inputs||{}).map(N=>({id:c.getHandleId(N),properties:{side:"WEST"}}))||[],_=Object.values(l?.outputs||{}).map(N=>({id:c.getHandleId(N),properties:{side:"EAST"}}))||[];return{id:d.id,width:350,height:300,properties:{"org.eclipse.elk.portConstraints":"FIXED_ORDER"},ports:[{id:d.id},...I,..._]}}),edges:e.map(d=>({id:d.id,sources:[d.sourceHandle||d.source],targets:[d.targetHandle||d.target]}))},n=await a.layout(s);return r.map(d=>{const l=n.children?.find(I=>I.id===d.id);return{...d,position:{x:l?.x??0,y:l?.y??0}}})}const at="";class st{ws=null;url;protocols;handlers={};isConnected=!1;constructor(e,{params:t,protocols:a,base:o,handlers:s}){const n=new URL((o||at)+e||e,window.location.origin);t&&Object.entries(t).forEach(([d,l])=>n.searchParams.append(d,l)),this.url=Ee(n.toString()),this.protocols=a,this.handlers=s||{}}connect(){return this.ws&&(this.ws.readyState===WebSocket.CONNECTING||this.ws.readyState===WebSocket.OPEN)?this:(this.ws=new WebSocket(this.url,this.protocols),this.ws.onopen=e=>{this.isConnected=!0,this.handlers.onOpen?.(e)},this.ws.onmessage=e=>{let t;try{t=JSON.parse(e.data)}catch{t=e.data}this.handlers.onMessage?.(t,e)},this.ws.onerror=e=>{this.handlers.onError?.(e)},this.ws.onclose=e=>{this.isConnected=!1,this.handlers.onClose?.(e)},this)}send(e){if(!this.ws||this.ws.readyState!==WebSocket.OPEN)return!1;const t=typeof e=="string"?e:JSON.stringify(e);return this.ws.send(t),!0}close(e,t){this.ws&&(this.ws.close(e,t),this.ws=null,this.isConnected=!1)}get connected(){return this.isConnected}get readyState(){return this.ws?.readyState||WebSocket.CLOSED}}function rt(){const r=u(),e=u({}),t=u(),a=u(),o=u(),s=u("unknown"),n=ie({started:!1,ended:!1,runningNodes:new Set,finishedNodes:new Set,errorNodes:new Set,nodeOutput:{}}),d=y=>{if(o.value?.connected&&!n.started){const i=y;if(i.type==="subscribe_response"&&i.success&&i.task_id&&i.workflow_id){t.value=i.task_id,a.value=i.workflow_id;return}else if(i.type==="trigger_response"&&i.success){n.started=!0,g.info("测试运行开始");return}g.error(i.error||"未知原因导致创建测试任务失败"),s.value="failed",_();return}else if(o.value?.connected&&n.started){const i=y;i.type==="workflow_start"&&!n.started?(n.started=!0,g.info("测试运行开始")):i.type==="node_start"&&i.node?n.finishedNodes.has(i.node)||n.runningNodes.add(i.node):i.type==="node_end"&&i.node?(n.runningNodes.delete(i.node),n.finishedNodes.add(i.node)):i.type==="node_stream_output"&&i.node&&((!(i.node in n.nodeOutput)||typeof n.nodeOutput[i.node]!="string")&&(n.nodeOutput[i.node]=""),n.nodeOutput[i.node]+=i.output||""),(i.type==="workflow_end"||i.is_end||i.is_error)&&(i.is_error?(g.error(`测试未通过:${i.output||"未知错误"}`),s.value="failed",i.node&&n.errorNodes.add(i.node)):(g.success("测试通过"),s.value="success"),_())}},l=()=>{o.value?.connected&&o.value.send({type:"subscribe_debug",workflow_config:U.dump(r.value),trigger_args:e.value})},I=()=>{o.value?.connected&&o.value.send({type:"unsubscribe",task_id:t.value??"all"})},_=()=>{I(),t.value=void 0,a.value=void 0,n.ended=!0,s.value==="running"&&(g.info("测试运行已停止"),s.value="unknown"),o.value&&o.value.close()},N=()=>{n.started=!1,n.ended=!1,n.runningNodes.clear(),n.finishedNodes.clear(),n.errorNodes.clear(),n.nodeOutput={}},W=async(y,i)=>{if(s.value==="running"){g.error("当前有测试正在进行中,请等待或手动将其停止");return}s.value="running",N();const C=`debug_${Date.now()}_${Math.random().toString(36).substring(2)}`;r.value={...y,version:C},e.value=i||{},o.value&&o.value.close();try{o.value=new st(`${Te()}`,{handlers:{onOpen:l,onMessage:d,onClose:_,onError:()=>{g.error("测试运行-连接出错"),_(),s.value="failed"}}}),o.value.connect()}catch{g.error("WebSocket连接出错"),_()}};return ke(_),{testStatus:s,record:n,resetRecord:N,startRunning:W,stopRunning:_}}const it=m({tag:"svg",attr:{viewBox:"0 0 24 24"},child:[{tag:"path",attr:{d:"m7.375 16.781 1.25-1.562L4.601 12l4.024-3.219-1.25-1.562-5 4a1 1 0 0 0 0 1.562l5 4zm9.25-9.562-1.25 1.562L19.399 12l-4.024 3.219 1.25 1.562 5-4a1 1 0 0 0 0-1.562l-5-4zm-1.649-4.003-4 18-1.953-.434 4-18z"},child:[]}]}),ct=m({tag:"svg",attr:{viewBox:"0 0 24 24"},child:[{tag:"path",attr:{d:"M12 8v5h5v-2h-3V8z"},child:[]},{tag:"path",attr:{d:"M21.292 8.497a8.957 8.957 0 0 0-1.928-2.862 9.004 9.004 0 0 0-4.55-2.452 9.09 9.09 0 0 0-3.626 0 8.965 8.965 0 0 0-4.552 2.453 9.048 9.048 0 0 0-1.928 2.86A8.963 8.963 0 0 0 4 12l.001.025H2L5 16l3-3.975H6.001L6 12a6.957 6.957 0 0 1 1.195-3.913 7.066 7.066 0 0 1 1.891-1.892 7.034 7.034 0 0 1 2.503-1.054 7.003 7.003 0 0 1 8.269 5.445 7.117 7.117 0 0 1 0 2.824 6.936 6.936 0 0 1-1.054 2.503c-.25.371-.537.72-.854 1.036a7.058 7.058 0 0 1-2.225 1.501 6.98 6.98 0 0 1-1.313.408 7.117 7.117 0 0 1-2.823 0 6.957 6.957 0 0 1-2.501-1.053 7.066 7.066 0 0 1-1.037-.855l-1.414 1.414A8.985 8.985 0 0 0 13 21a9.05 9.05 0 0 0 3.503-.707 9.009 9.009 0 0 0 3.959-3.26A8.968 8.968 0 0 0 22 12a8.928 8.928 0 0 0-.708-3.503z"},child:[]}]}),lt=m({tag:"svg",attr:{viewBox:"0 0 24 24"},child:[{tag:"path",attr:{d:"M12 2C6.486 2 2 5.589 2 10c0 2.908 1.898 5.515 5 6.934V22l5.34-4.005C17.697 17.852 22 14.32 22 10c0-4.411-4.486-8-10-8zm0 14h-.333L9 18v-2.417l-.641-.247C5.67 14.301 4 12.256 4 10c0-3.309 3.589-6 8-6s8 2.691 8 6-3.589 6-8 6z"},child:[]},{tag:"path",attr:{d:"M7 7h10v2H7zm0 4h7v2H7z"},child:[]}]}),ut={class:"workflow-detail-container"},dt={class:"workflow-title"},pt={class:"workflow-name"},ft={class:"workflow-version"},ht={class:"action-buttons"},vt=Ie({__name:"WorkflowStudio",setup(r){const e=ae(()=>X(()=>import("./WorkflowEditor-CcaGGbko.js").then(p=>p.W),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12]),import.meta.url)),t=ae(()=>X(()=>import("./TestRunningDialog-D0GrCoYs.js"),__vite__mapDeps([13,5,6,10,2,1,3,4,8,14,15,16,17]),import.meta.url)),a=Se(),o=Re(),s=se().synchronizing,{startRunning:n,stopRunning:d,testStatus:l,record:I,resetRecord:_}=rt(),N=u(!0),W=u(""),y=u(!1),i=u(!1),C=u(!1),F=te(()=>l.value==="unknown"?{tooltip:"当前版本尚未测试",badgeType:"warning"}:l.value==="success"?{tooltip:"上次测试通过",badgeType:"success"}:l.value==="running"?{tooltip:"测试运行中",badgeType:"warning"}:{tooltip:"上次测试失败",badgeType:"danger"}),T=u({name:"",version:"0",nodes:[]}),$=u(""),ce=u(""),V=u(!0),K=u(new Map),S=u(!1),M=u(!1),A=u(!1),L=u(!1),le=u(!1),j=u(!1),q=se().nodeSchemaMap,ue=te(()=>a.params.id),J=Ce();O(w.WORKFLOW_DATA,T),O(w.WORKFLOW_NEED_LAYOUT,V),O(w.NODE_DATA_MAP,K),O(w.IS_EDIT_MODE,S),O(w.EMITTER,J),O(w.TRACE_OPEN,M),O(w.FEEDBACK_OPEN,A),O(w.RAW_JSON_OPEN,L),O(w.CREATE_NEW_NODE_OPEN,le),O(w.TEST_RUNNING_OPEN,j),O(w.TEST_RUNNING_RECORD,I),z(T,()=>{C.value?i.value=!0:C.value=!0,_(),l.value="unknown"},{deep:!0}),z([()=>T?.value,q],()=>{T?.value&&(K.value=Ye(T.value,q))},{immediate:!0,deep:!0}),z(l,p=>{p==="running"&&(S.value=!1)});const Y=async()=>{C.value=!1,N.value=!0,W.value="";try{const p=await x.get(`/workflow/${ue.value}/status`,{base:ee()});p.config&&(T.value=p.config),$.value=p.version??"",ce.value=p.description??""}catch(p){W.value=p?.message||"加载工作流数据失败",console.error("Failed to load workflow data:",p)}finally{N.value=!1,setTimeout(()=>{V.value=!0},5)}},de=()=>{J.on("previewJson",p=>{try{T.value=U.load(p)}catch(k){console.error("Failed to parse preview YAML:",k)}})},pe=async()=>{let p=!0;i.value&&await He.confirm("你有未保存的更改,是否继续退出?","提醒",{confirmButtonText:"继续退出",cancelButtonText:"取消",type:"warning"})==="cancel"&&(p=!1),p&&await o.push({name:"workflow-list"})},fe=()=>{M.value=!M.value},he=()=>{A.value=!A.value},ve=()=>{L.value=!L.value},ge=()=>{S.value=!S.value},me=async()=>{if(!y.value){if(i.value&&l.value!=="success"){g.warning("更新之后尚未试运行通过,不可保存");return}y.value=!0;try{const p=U.dump(T.value,{indent:2}),k=new FormData;k.append("config_content",p);const E=await x.post("/workflow/upload",k,{base:ee()});E.success?(i.value=!1,g.success("保存工作流成功")):g.error(E.message||"保存工作流失败")}catch(p){g.error(p?.message||"保存工作流失败"),console.error("Failed to save workflow:",p)}finally{y.value=!1}}},_e=async()=>{l.value==="running"?d():j.value=!0};return De(()=>{de(),Y()}),(p,k)=>{const E=ze,D=Be,Z=Pe,G=Fe,Ne=Me,Oe=Le,Q=Ae;return H(),We("div",ut,[f(Ne,{onBack:pe,title:"返回列表",class:"navbar"},{content:h(()=>[P("div",dt,[P("span",pt,R(T.value.name),1),P("span",ft,"版本: "+R($.value),1)])]),extra:h(()=>[P("div",ht,[f(Z,null,{default:h(()=>[f(D,{content:"运行记录"},{default:h(()=>[f(E,{icon:v(ct),onClick:fe,type:M.value?"primary":"default"},null,8,["icon","type"])]),_:1}),f(D,{content:"反馈列表"},{default:h(()=>[f(E,{icon:v(lt),onClick:he,type:A.value?"primary":"default"},null,8,["icon","type"])]),_:1}),f(D,{content:"配置文本"},{default:h(()=>[f(E,{icon:v(it),onClick:ve,type:L.value?"primary":"default"},null,8,["icon","type"])]),_:1})]),_:1}),f(Z,null,{default:h(()=>[f(D,{content:"保存"},{default:h(()=>[f(E,{icon:v(Ue),onClick:me,loading:y.value},{default:h(()=>[f(G,{"is-dot":"",hidden:!i.value},{default:h(()=>[B(R(y.value?"保存中":i.value?"未保存":"已保存"),1)]),_:1},8,["hidden"])]),_:1},8,["icon","loading"])]),_:1}),f(D,{content:F.value.tooltip},{default:h(()=>[f(E,{icon:v(Ke),type:v(l)==="running"?"primary":"default",onClick:_e},{default:h(()=>[f(G,{"is-dot":"",hidden:v(l)==="unknown"&&!i.value,type:F.value.badgeType},{default:h(()=>[B(R(v(l)==="running"?"停止":"试运行"),1)]),_:1},8,["hidden","type"])]),_:1},8,["icon","type"])]),_:1},8,["content"]),f(D,{content:"切换模式"},{default:h(()=>[f(E,{icon:S.value?v($e):v(Ve),onClick:ge,type:S.value?"primary":"default",disabled:v(l)==="running"},{default:h(()=>[B(R(S.value?"编辑模式":"查看模式"),1)]),_:1},8,["icon","type","disabled"])]),_:1})]),_:1})])]),_:1}),W.value?oe((H(),ne(Oe,{key:0,icon:"error","sub-title":"加载工作流失败",class:"error-overlay"},{extra:h(()=>[f(E,{type:"primary",onClick:Y},{default:h(()=>[...k[0]||(k[0]=[B("重新加载",-1)])]),_:1})]),_:1})),[[Q,N.value||v(s)]]):oe((H(),ne(v(e),{key:1},null,512)),[[Q,N.value]]),f(v(t),{"start-running":v(n)},null,8,["start-running"])])}}}),gt=we(vt,[["__scopeId","data-v-4935a321"]]),bt=Object.freeze(Object.defineProperty({__proto__:null,default:gt},Symbol.toStringTag,{value:"Module"}));export{kt as A,ct as B,c as G,w as W,Tt as a,Wt as b,lt as c,it as d,It as e,St as f,Dt as g,bt as h,Ct as i,Rt as l,se as u};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
@charset "UTF-8";:root{--el-color-white:#ffffff;--el-color-black:#000000;--el-color-primary-rgb:64,158,255;--el-color-success-rgb:103,194,58;--el-color-warning-rgb:230,162,60;--el-color-danger-rgb:245,108,108;--el-color-error-rgb:245,108,108;--el-color-info-rgb:144,147,153;--el-font-size-extra-large:20px;--el-font-size-large:18px;--el-font-size-medium:16px;--el-font-size-base:14px;--el-font-size-small:13px;--el-font-size-extra-small:12px;--el-font-family:"Helvetica Neue",Helvetica,"PingFang SC","Hiragino Sans GB","Microsoft YaHei","微软雅黑",Arial,sans-serif;--el-font-weight-primary:500;--el-font-line-height-primary:24px;--el-index-normal:1;--el-index-top:1000;--el-index-popper:2000;--el-border-radius-base:4px;--el-border-radius-small:2px;--el-border-radius-round:20px;--el-border-radius-circle:100%;--el-transition-duration:.3s;--el-transition-duration-fast:.2s;--el-transition-function-ease-in-out-bezier:cubic-bezier(.645,.045,.355,1);--el-transition-function-fast-bezier:cubic-bezier(.23,1,.32,1);--el-transition-all:all var(--el-transition-duration) var(--el-transition-function-ease-in-out-bezier);--el-transition-fade:opacity var(--el-transition-duration) var(--el-transition-function-fast-bezier);--el-transition-md-fade:transform var(--el-transition-duration) var(--el-transition-function-fast-bezier),opacity var(--el-transition-duration) var(--el-transition-function-fast-bezier);--el-transition-fade-linear:opacity var(--el-transition-duration-fast) linear;--el-transition-border:border-color var(--el-transition-duration-fast) var(--el-transition-function-ease-in-out-bezier);--el-transition-box-shadow:box-shadow var(--el-transition-duration-fast) var(--el-transition-function-ease-in-out-bezier);--el-transition-color:color var(--el-transition-duration-fast) var(--el-transition-function-ease-in-out-bezier);--el-component-size-large:40px;--el-component-size:32px;--el-component-size-small:24px}:root{color-scheme:light;--el-color-primary:#409eff;--el-color-primary-light-3:rgb(121,187,255);--el-color-primary-light-5:rgb(160,207,255);--el-color-primary-light-7:rgb(198,226,255);--el-color-primary-light-8:rgb(217,236,255);--el-color-primary-light-9:rgb(236,245,255);--el-color-primary-dark-2:rgb(51,126,204);--el-color-success:#67c23a;--el-color-success-light-3:rgb(149,212,117);--el-color-success-light-5:rgb(179,225,157);--el-color-success-light-7:rgb(209,237,196);--el-color-success-light-8:rgb(225,243,216);--el-color-success-light-9:rgb(240,249,235);--el-color-success-dark-2:rgb(82,155,46);--el-color-warning:#e6a23c;--el-color-warning-light-3:rgb(238,190,119);--el-color-warning-light-5:rgb(243,209,158);--el-color-warning-light-7:rgb(248,227,197);--el-color-warning-light-8:rgb(250,236,216);--el-color-warning-light-9:rgb(253,246,236);--el-color-warning-dark-2:rgb(184,130,48);--el-color-danger:#f56c6c;--el-color-danger-light-3:rgb(248,152,152);--el-color-danger-light-5:rgb(250,182,182);--el-color-danger-light-7:rgb(252,211,211);--el-color-danger-light-8:rgb(253,226,226);--el-color-danger-light-9:rgb(254,240,240);--el-color-danger-dark-2:rgb(196,86,86);--el-color-error:#f56c6c;--el-color-error-light-3:rgb(248,152,152);--el-color-error-light-5:rgb(250,182,182);--el-color-error-light-7:rgb(252,211,211);--el-color-error-light-8:rgb(253,226,226);--el-color-error-light-9:rgb(254,240,240);--el-color-error-dark-2:rgb(196,86,86);--el-color-info:#909399;--el-color-info-light-3:rgb(177,179,184);--el-color-info-light-5:rgb(200,201,204);--el-color-info-light-7:rgb(222,223,224);--el-color-info-light-8:rgb(233,233,235);--el-color-info-light-9:rgb(244,244,245);--el-color-info-dark-2:rgb(115,118,122);--el-bg-color:#ffffff;--el-bg-color-page:#f2f3f5;--el-bg-color-overlay:#ffffff;--el-text-color-primary:#303133;--el-text-color-regular:#606266;--el-text-color-secondary:#909399;--el-text-color-placeholder:#a8abb2;--el-text-color-disabled:#c0c4cc;--el-border-color:#dcdfe6;--el-border-color-light:#e4e7ed;--el-border-color-lighter:#ebeef5;--el-border-color-extra-light:#f2f6fc;--el-border-color-dark:#d4d7de;--el-border-color-darker:#cdd0d6;--el-fill-color:#f0f2f5;--el-fill-color-light:#f5f7fa;--el-fill-color-lighter:#fafafa;--el-fill-color-extra-light:#fafcff;--el-fill-color-dark:#ebedf0;--el-fill-color-darker:#e6e8eb;--el-fill-color-blank:#ffffff;--el-box-shadow:0px 12px 32px 4px rgba(0,0,0,.04),0px 8px 20px rgba(0,0,0,.08);--el-box-shadow-light:0px 0px 12px rgba(0,0,0,.12);--el-box-shadow-lighter:0px 0px 6px rgba(0,0,0,.12);--el-box-shadow-dark:0px 16px 48px 16px rgba(0,0,0,.08),0px 12px 32px rgba(0,0,0,.12),0px 8px 16px -8px rgba(0,0,0,.16);--el-disabled-bg-color:var(--el-fill-color-light);--el-disabled-text-color:var(--el-text-color-placeholder);--el-disabled-border-color:var(--el-border-color-light);--el-overlay-color:rgba(0,0,0,.8);--el-overlay-color-light:rgba(0,0,0,.7);--el-overlay-color-lighter:rgba(0,0,0,.5);--el-mask-color:rgba(255,255,255,.9);--el-mask-color-extra-light:rgba(255,255,255,.3);--el-border-width:1px;--el-border-style:solid;--el-border-color-hover:var(--el-text-color-disabled);--el-border:var(--el-border-width) var(--el-border-style) var(--el-border-color);--el-svg-monochrome-grey:var(--el-border-color)}.fade-in-linear-enter-active,.fade-in-linear-leave-active{transition:var(--el-transition-fade-linear)}.fade-in-linear-enter-from,.fade-in-linear-leave-to{opacity:0}.el-fade-in-linear-enter-active,.el-fade-in-linear-leave-active{transition:var(--el-transition-fade-linear)}.el-fade-in-linear-enter-from,.el-fade-in-linear-leave-to{opacity:0}.el-fade-in-enter-active,.el-fade-in-leave-active{transition:all var(--el-transition-duration) cubic-bezier(.55,0,.1,1)}.el-fade-in-enter-from,.el-fade-in-leave-active{opacity:0}.el-zoom-in-center-enter-active,.el-zoom-in-center-leave-active{transition:all var(--el-transition-duration) cubic-bezier(.55,0,.1,1)}.el-zoom-in-center-enter-from,.el-zoom-in-center-leave-active{opacity:0;transform:scaleX(0)}.el-zoom-in-top-enter-active,.el-zoom-in-top-leave-active{opacity:1;transform:scaleY(1);transform-origin:center top;transition:var(--el-transition-md-fade)}.el-zoom-in-top-enter-active[data-popper-placement^=top],.el-zoom-in-top-leave-active[data-popper-placement^=top]{transform-origin:center bottom}.el-zoom-in-top-enter-from,.el-zoom-in-top-leave-active{opacity:0;transform:scaleY(0)}.el-zoom-in-bottom-enter-active,.el-zoom-in-bottom-leave-active{opacity:1;transform:scaleY(1);transform-origin:center bottom;transition:var(--el-transition-md-fade)}.el-zoom-in-bottom-enter-from,.el-zoom-in-bottom-leave-active{opacity:0;transform:scaleY(0)}.el-zoom-in-left-enter-active,.el-zoom-in-left-leave-active{opacity:1;transform:scale(1);transform-origin:top left;transition:var(--el-transition-md-fade)}.el-zoom-in-left-enter-from,.el-zoom-in-left-leave-active{opacity:0;transform:scale(.45)}.collapse-transition{transition:var(--el-transition-duration) height ease-in-out,var(--el-transition-duration) padding-top ease-in-out,var(--el-transition-duration) padding-bottom ease-in-out}.el-collapse-transition-enter-active,.el-collapse-transition-leave-active{transition:var(--el-transition-duration) max-height ease-in-out,var(--el-transition-duration) padding-top ease-in-out,var(--el-transition-duration) padding-bottom ease-in-out}.horizontal-collapse-transition{transition:var(--el-transition-duration) width ease-in-out,var(--el-transition-duration) padding-left ease-in-out,var(--el-transition-duration) padding-right ease-in-out}.el-list-enter-active,.el-list-leave-active{transition:all 1s}.el-list-enter-from,.el-list-leave-to{opacity:0;transform:translateY(-30px)}.el-list-leave-active{position:absolute!important}.el-opacity-transition{transition:opacity var(--el-transition-duration) cubic-bezier(.55,0,.1,1)}.el-icon--right{margin-left:5px}.el-icon--left{margin-right:5px}@keyframes rotating{0%{transform:rotate(0)}to{transform:rotate(1turn)}}.el-icon{--color:inherit;align-items:center;display:inline-flex;height:1em;justify-content:center;line-height:1em;position:relative;width:1em;fill:currentColor;color:var(--color);font-size:inherit}.el-icon.is-loading{animation:rotating 2s linear infinite}.el-icon svg{height:1em;width:1em}:root{--el-loading-spinner-size:42px;--el-loading-fullscreen-spinner-size:50px}.el-loading-parent--relative{position:relative!important}.el-loading-parent--hidden{overflow:hidden!important}.el-loading-mask{background-color:var(--el-mask-color);inset:0;margin:0;position:absolute;transition:opacity var(--el-transition-duration);z-index:2000}.el-loading-mask.is-fullscreen{position:fixed}.el-loading-mask.is-fullscreen .el-loading-spinner{margin-top:calc((0px - var(--el-loading-fullscreen-spinner-size))/2)}.el-loading-mask.is-fullscreen .el-loading-spinner .circular{height:var(--el-loading-fullscreen-spinner-size);width:var(--el-loading-fullscreen-spinner-size)}.el-loading-spinner{margin-top:calc((0px - var(--el-loading-spinner-size))/2);position:absolute;text-align:center;top:50%;width:100%}.el-loading-spinner .el-loading-text{color:var(--el-color-primary);font-size:14px;margin:3px 0}.el-loading-spinner .circular{animation:loading-rotate 2s linear infinite;display:inline;height:var(--el-loading-spinner-size);width:var(--el-loading-spinner-size)}.el-loading-spinner .path{animation:loading-dash 1.5s ease-in-out infinite;stroke-dasharray:90,150;stroke-dashoffset:0;stroke-width:2;stroke:var(--el-color-primary);stroke-linecap:round}.el-loading-spinner i{color:var(--el-color-primary)}.el-loading-fade-enter-from,.el-loading-fade-leave-to{opacity:0}@keyframes loading-rotate{to{transform:rotate(1turn)}}@keyframes loading-dash{0%{stroke-dasharray:1,200;stroke-dashoffset:0}50%{stroke-dasharray:90,150;stroke-dashoffset:-40px}to{stroke-dasharray:90,150;stroke-dashoffset:-120px}}.el-button{--el-button-font-weight:var(--el-font-weight-primary);--el-button-border-color:var(--el-border-color);--el-button-bg-color:var(--el-fill-color-blank);--el-button-text-color:var(--el-text-color-regular);--el-button-disabled-text-color:var(--el-disabled-text-color);--el-button-disabled-bg-color:var(--el-fill-color-blank);--el-button-disabled-border-color:var(--el-border-color-light);--el-button-divide-border-color:rgba(255,255,255,.5);--el-button-hover-text-color:var(--el-color-primary);--el-button-hover-bg-color:var(--el-color-primary-light-9);--el-button-hover-border-color:var(--el-color-primary-light-7);--el-button-active-text-color:var(--el-button-hover-text-color);--el-button-active-border-color:var(--el-color-primary);--el-button-active-bg-color:var(--el-button-hover-bg-color);--el-button-outline-color:var(--el-color-primary-light-5);--el-button-hover-link-text-color:var(--el-text-color-secondary);--el-button-active-color:var(--el-text-color-primary);align-items:center;-webkit-appearance:none;background-color:var(--el-button-bg-color);border:var(--el-border);border-color:var(--el-button-border-color);box-sizing:border-box;color:var(--el-button-text-color);cursor:pointer;display:inline-flex;font-weight:var(--el-button-font-weight);height:32px;justify-content:center;line-height:1;outline:none;text-align:center;transition:.1s;-webkit-user-select:none;-moz-user-select:none;user-select:none;vertical-align:middle;white-space:nowrap}.el-button:hover{background-color:var(--el-button-hover-bg-color);border-color:var(--el-button-hover-border-color);color:var(--el-button-hover-text-color);outline:none}.el-button:active{background-color:var(--el-button-active-bg-color);border-color:var(--el-button-active-border-color);color:var(--el-button-active-text-color);outline:none}.el-button:focus-visible{outline:2px solid var(--el-button-outline-color);outline-offset:1px;transition:outline-offset 0s,outline 0s}.el-button>span{align-items:center;display:inline-flex}.el-button+.el-button{margin-left:12px}.el-button{border-radius:var(--el-border-radius-base);font-size:var(--el-font-size-base)}.el-button,.el-button.is-round{padding:8px 15px}.el-button::-moz-focus-inner{border:0}.el-button [class*=el-icon]+span{margin-left:6px}.el-button [class*=el-icon] svg{vertical-align:bottom}.el-button.is-plain{--el-button-hover-text-color:var(--el-color-primary);--el-button-hover-bg-color:var(--el-fill-color-blank);--el-button-hover-border-color:var(--el-color-primary)}.el-button.is-active{background-color:var(--el-button-active-bg-color);border-color:var(--el-button-active-border-color);color:var(--el-button-active-text-color);outline:none}.el-button.is-disabled,.el-button.is-disabled:hover{background-color:var(--el-button-disabled-bg-color);background-image:none;border-color:var(--el-button-disabled-border-color);color:var(--el-button-disabled-text-color);cursor:not-allowed}.el-button.is-loading{pointer-events:none;position:relative}.el-button.is-loading:before{background-color:var(--el-mask-color-extra-light);border-radius:inherit;content:"";inset:-1px;pointer-events:none;position:absolute;z-index:1}.el-button.is-round{border-radius:var(--el-border-radius-round)}.el-button.is-circle{border-radius:50%;padding:8px;width:32px}.el-button.is-text{background-color:transparent;border:0 solid transparent;color:var(--el-button-text-color)}.el-button.is-text.is-disabled{background-color:transparent!important;color:var(--el-button-disabled-text-color)}.el-button.is-text:not(.is-disabled):hover{background-color:var(--el-fill-color-light)}.el-button.is-text:not(.is-disabled):focus-visible{outline:2px solid var(--el-button-outline-color);outline-offset:1px;transition:outline-offset 0s,outline 0s}.el-button.is-text:not(.is-disabled):active{background-color:var(--el-fill-color)}.el-button.is-text:not(.is-disabled).is-has-bg{background-color:var(--el-fill-color-light)}.el-button.is-text:not(.is-disabled).is-has-bg:hover{background-color:var(--el-fill-color)}.el-button.is-text:not(.is-disabled).is-has-bg:active{background-color:var(--el-fill-color-dark)}.el-button__text--expand{letter-spacing:.3em;margin-right:-.3em}.el-button.is-link{background:transparent;border-color:transparent;color:var(--el-button-text-color);height:auto;padding:2px}.el-button.is-link:hover{color:var(--el-button-hover-link-text-color)}.el-button.is-link.is-disabled{background-color:transparent!important;border-color:transparent!important;color:var(--el-button-disabled-text-color)}.el-button.is-link:not(.is-disabled):hover{background-color:transparent;border-color:transparent}.el-button.is-link:not(.is-disabled):active{background-color:transparent;border-color:transparent;color:var(--el-button-active-color)}.el-button--text{background:transparent;border-color:transparent;color:var(--el-color-primary);padding-left:0;padding-right:0}.el-button--text.is-disabled{background-color:transparent!important;border-color:transparent!important;color:var(--el-button-disabled-text-color)}.el-button--text:not(.is-disabled):hover{background-color:transparent;border-color:transparent;color:var(--el-color-primary-light-3)}.el-button--text:not(.is-disabled):active{background-color:transparent;border-color:transparent;color:var(--el-color-primary-dark-2)}.el-button__link--expand{letter-spacing:.3em;margin-right:-.3em}.el-button--primary{--el-button-text-color:var(--el-color-white);--el-button-bg-color:var(--el-color-primary);--el-button-border-color:var(--el-color-primary);--el-button-outline-color:var(--el-color-primary-light-5);--el-button-active-color:var(--el-color-primary-dark-2);--el-button-hover-text-color:var(--el-color-white);--el-button-hover-link-text-color:var(--el-color-primary-light-5);--el-button-hover-bg-color:var(--el-color-primary-light-3);--el-button-hover-border-color:var(--el-color-primary-light-3);--el-button-active-bg-color:var(--el-color-primary-dark-2);--el-button-active-border-color:var(--el-color-primary-dark-2);--el-button-disabled-text-color:var(--el-color-white);--el-button-disabled-bg-color:var(--el-color-primary-light-5);--el-button-disabled-border-color:var(--el-color-primary-light-5)}.el-button--primary.is-link,.el-button--primary.is-plain,.el-button--primary.is-text{--el-button-text-color:var(--el-color-primary);--el-button-bg-color:var(--el-color-primary-light-9);--el-button-border-color:var(--el-color-primary-light-5);--el-button-hover-text-color:var(--el-color-white);--el-button-hover-bg-color:var(--el-color-primary);--el-button-hover-border-color:var(--el-color-primary);--el-button-active-text-color:var(--el-color-white)}.el-button--primary.is-link.is-disabled,.el-button--primary.is-link.is-disabled:active,.el-button--primary.is-link.is-disabled:focus,.el-button--primary.is-link.is-disabled:hover,.el-button--primary.is-plain.is-disabled,.el-button--primary.is-plain.is-disabled:active,.el-button--primary.is-plain.is-disabled:focus,.el-button--primary.is-plain.is-disabled:hover,.el-button--primary.is-text.is-disabled,.el-button--primary.is-text.is-disabled:active,.el-button--primary.is-text.is-disabled:focus,.el-button--primary.is-text.is-disabled:hover{background-color:var(--el-color-primary-light-9);border-color:var(--el-color-primary-light-8);color:var(--el-color-primary-light-5)}.el-button--success{--el-button-text-color:var(--el-color-white);--el-button-bg-color:var(--el-color-success);--el-button-border-color:var(--el-color-success);--el-button-outline-color:var(--el-color-success-light-5);--el-button-active-color:var(--el-color-success-dark-2);--el-button-hover-text-color:var(--el-color-white);--el-button-hover-link-text-color:var(--el-color-success-light-5);--el-button-hover-bg-color:var(--el-color-success-light-3);--el-button-hover-border-color:var(--el-color-success-light-3);--el-button-active-bg-color:var(--el-color-success-dark-2);--el-button-active-border-color:var(--el-color-success-dark-2);--el-button-disabled-text-color:var(--el-color-white);--el-button-disabled-bg-color:var(--el-color-success-light-5);--el-button-disabled-border-color:var(--el-color-success-light-5)}.el-button--success.is-link,.el-button--success.is-plain,.el-button--success.is-text{--el-button-text-color:var(--el-color-success);--el-button-bg-color:var(--el-color-success-light-9);--el-button-border-color:var(--el-color-success-light-5);--el-button-hover-text-color:var(--el-color-white);--el-button-hover-bg-color:var(--el-color-success);--el-button-hover-border-color:var(--el-color-success);--el-button-active-text-color:var(--el-color-white)}.el-button--success.is-link.is-disabled,.el-button--success.is-link.is-disabled:active,.el-button--success.is-link.is-disabled:focus,.el-button--success.is-link.is-disabled:hover,.el-button--success.is-plain.is-disabled,.el-button--success.is-plain.is-disabled:active,.el-button--success.is-plain.is-disabled:focus,.el-button--success.is-plain.is-disabled:hover,.el-button--success.is-text.is-disabled,.el-button--success.is-text.is-disabled:active,.el-button--success.is-text.is-disabled:focus,.el-button--success.is-text.is-disabled:hover{background-color:var(--el-color-success-light-9);border-color:var(--el-color-success-light-8);color:var(--el-color-success-light-5)}.el-button--warning{--el-button-text-color:var(--el-color-white);--el-button-bg-color:var(--el-color-warning);--el-button-border-color:var(--el-color-warning);--el-button-outline-color:var(--el-color-warning-light-5);--el-button-active-color:var(--el-color-warning-dark-2);--el-button-hover-text-color:var(--el-color-white);--el-button-hover-link-text-color:var(--el-color-warning-light-5);--el-button-hover-bg-color:var(--el-color-warning-light-3);--el-button-hover-border-color:var(--el-color-warning-light-3);--el-button-active-bg-color:var(--el-color-warning-dark-2);--el-button-active-border-color:var(--el-color-warning-dark-2);--el-button-disabled-text-color:var(--el-color-white);--el-button-disabled-bg-color:var(--el-color-warning-light-5);--el-button-disabled-border-color:var(--el-color-warning-light-5)}.el-button--warning.is-link,.el-button--warning.is-plain,.el-button--warning.is-text{--el-button-text-color:var(--el-color-warning);--el-button-bg-color:var(--el-color-warning-light-9);--el-button-border-color:var(--el-color-warning-light-5);--el-button-hover-text-color:var(--el-color-white);--el-button-hover-bg-color:var(--el-color-warning);--el-button-hover-border-color:var(--el-color-warning);--el-button-active-text-color:var(--el-color-white)}.el-button--warning.is-link.is-disabled,.el-button--warning.is-link.is-disabled:active,.el-button--warning.is-link.is-disabled:focus,.el-button--warning.is-link.is-disabled:hover,.el-button--warning.is-plain.is-disabled,.el-button--warning.is-plain.is-disabled:active,.el-button--warning.is-plain.is-disabled:focus,.el-button--warning.is-plain.is-disabled:hover,.el-button--warning.is-text.is-disabled,.el-button--warning.is-text.is-disabled:active,.el-button--warning.is-text.is-disabled:focus,.el-button--warning.is-text.is-disabled:hover{background-color:var(--el-color-warning-light-9);border-color:var(--el-color-warning-light-8);color:var(--el-color-warning-light-5)}.el-button--danger{--el-button-text-color:var(--el-color-white);--el-button-bg-color:var(--el-color-danger);--el-button-border-color:var(--el-color-danger);--el-button-outline-color:var(--el-color-danger-light-5);--el-button-active-color:var(--el-color-danger-dark-2);--el-button-hover-text-color:var(--el-color-white);--el-button-hover-link-text-color:var(--el-color-danger-light-5);--el-button-hover-bg-color:var(--el-color-danger-light-3);--el-button-hover-border-color:var(--el-color-danger-light-3);--el-button-active-bg-color:var(--el-color-danger-dark-2);--el-button-active-border-color:var(--el-color-danger-dark-2);--el-button-disabled-text-color:var(--el-color-white);--el-button-disabled-bg-color:var(--el-color-danger-light-5);--el-button-disabled-border-color:var(--el-color-danger-light-5)}.el-button--danger.is-link,.el-button--danger.is-plain,.el-button--danger.is-text{--el-button-text-color:var(--el-color-danger);--el-button-bg-color:var(--el-color-danger-light-9);--el-button-border-color:var(--el-color-danger-light-5);--el-button-hover-text-color:var(--el-color-white);--el-button-hover-bg-color:var(--el-color-danger);--el-button-hover-border-color:var(--el-color-danger);--el-button-active-text-color:var(--el-color-white)}.el-button--danger.is-link.is-disabled,.el-button--danger.is-link.is-disabled:active,.el-button--danger.is-link.is-disabled:focus,.el-button--danger.is-link.is-disabled:hover,.el-button--danger.is-plain.is-disabled,.el-button--danger.is-plain.is-disabled:active,.el-button--danger.is-plain.is-disabled:focus,.el-button--danger.is-plain.is-disabled:hover,.el-button--danger.is-text.is-disabled,.el-button--danger.is-text.is-disabled:active,.el-button--danger.is-text.is-disabled:focus,.el-button--danger.is-text.is-disabled:hover{background-color:var(--el-color-danger-light-9);border-color:var(--el-color-danger-light-8);color:var(--el-color-danger-light-5)}.el-button--info{--el-button-text-color:var(--el-color-white);--el-button-bg-color:var(--el-color-info);--el-button-border-color:var(--el-color-info);--el-button-outline-color:var(--el-color-info-light-5);--el-button-active-color:var(--el-color-info-dark-2);--el-button-hover-text-color:var(--el-color-white);--el-button-hover-link-text-color:var(--el-color-info-light-5);--el-button-hover-bg-color:var(--el-color-info-light-3);--el-button-hover-border-color:var(--el-color-info-light-3);--el-button-active-bg-color:var(--el-color-info-dark-2);--el-button-active-border-color:var(--el-color-info-dark-2);--el-button-disabled-text-color:var(--el-color-white);--el-button-disabled-bg-color:var(--el-color-info-light-5);--el-button-disabled-border-color:var(--el-color-info-light-5)}.el-button--info.is-link,.el-button--info.is-plain,.el-button--info.is-text{--el-button-text-color:var(--el-color-info);--el-button-bg-color:var(--el-color-info-light-9);--el-button-border-color:var(--el-color-info-light-5);--el-button-hover-text-color:var(--el-color-white);--el-button-hover-bg-color:var(--el-color-info);--el-button-hover-border-color:var(--el-color-info);--el-button-active-text-color:var(--el-color-white)}.el-button--info.is-link.is-disabled,.el-button--info.is-link.is-disabled:active,.el-button--info.is-link.is-disabled:focus,.el-button--info.is-link.is-disabled:hover,.el-button--info.is-plain.is-disabled,.el-button--info.is-plain.is-disabled:active,.el-button--info.is-plain.is-disabled:focus,.el-button--info.is-plain.is-disabled:hover,.el-button--info.is-text.is-disabled,.el-button--info.is-text.is-disabled:active,.el-button--info.is-text.is-disabled:focus,.el-button--info.is-text.is-disabled:hover{background-color:var(--el-color-info-light-9);border-color:var(--el-color-info-light-8);color:var(--el-color-info-light-5)}.el-button--large{--el-button-size:40px;height:var(--el-button-size)}.el-button--large [class*=el-icon]+span{margin-left:8px}.el-button--large{border-radius:var(--el-border-radius-base);font-size:var(--el-font-size-base);padding:12px 19px}.el-button--large.is-round{padding:12px 19px}.el-button--large.is-circle{padding:12px;width:var(--el-button-size)}.el-button--small{--el-button-size:24px;height:var(--el-button-size)}.el-button--small [class*=el-icon]+span{margin-left:4px}.el-button--small{border-radius:calc(var(--el-border-radius-base) - 1px);font-size:12px;padding:5px 11px}.el-button--small.is-round{padding:5px 11px}.el-button--small.is-circle{padding:5px;width:var(--el-button-size)}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
async function c(t,{method:n="GET",params:o,body:e,headers:l,base:u}){const p=new URL((u||"")+t||t,window.location.origin);o&&Object.entries(o).forEach(([w,s])=>{s!=null&&p.searchParams.append(w,s)});const a=await fetch(p,{method:n,headers:e instanceof FormData?{...l||{}}:{"Content-Type":"application/json",...l||{}},body:e instanceof FormData?e:e?JSON.stringify(e):void 0}),r=(a.headers.get("content-type")||"").includes("application/json")?await a.json():await a.text();if(!a.ok)throw new Error(typeof r=="string"?r:JSON.stringify(r));return r}const d={get:(t,n)=>c(t,{...n,method:"GET"}),post:(t,n,o)=>c(t,{...o,method:"POST",body:n}),put:(t,n,o)=>c(t,{...o,method:"PUT",body:n}),del:(t,n)=>c(t,{...n,method:"DELETE"})};function i(t){const n=window.location.pathname.split("/").filter(Boolean);return n[n.length-1]==="studio"&&(n[n.length-1]=t),n.join("/")}function g(){const t=i("meta-api");return`${window.location.origin}/${t}`}function h(){const t=i("feedback");return`${window.location.origin}/${t}`}function U(){const t=i("service");return`${window.location.origin}/${t}`}function $(){const t=i("ws");return`${window.location.origin}/${t}`}function E(t,n){const o=new URL(t);return o.protocol=o.protocol.replace("http","ws"),o.toString()}function m(){const t=i("trace");return`${window.location.origin}/${t}`}export{d as a,g as b,$ as c,m as d,h as e,U as g,E as t};
|