@egova/egova-api 1.0.225 → 1.0.228

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.
@@ -21181,7 +21181,7 @@ exports.f = DESCRIPTORS ? $getOwnPropertyDescriptor : function getOwnPropertyDes
21181
21181
  /***/ "07ab":
21182
21182
  /***/ (function(module, exports) {
21183
21183
 
21184
- module.exports = "<div class=\"u-tree-node\">\n<!-- <i class=\"iconfont\" :class=\"data.expand? 'icon-expand': 'icon-unexpand'\"></i>-->\n <i class=\"iconfont icon-mulushu\" @click=\"onClickNode\"></i>\n <div class=\"name\" @click=\"onClickNode\">{{data.name}}</div>\n <i-dropdown @on-click=\"onClick\" transfer transfer-class-name=\"node-oprate\" v-if=\"data.id !== 'virtual_root_directory'\">\n <i-icon type=\"ios-more\" />\n <i-dropdown-menu slot=\"list\">\n <i-dropdown-item v-for=\"item in actions\" :key=\"item.name\" :name=\"item.name\">\n <template v-if=\"item.name === 'import'\">\n <i-upload\n class=\"action-item\"\n :action=\"uploadAction\"\n :data=\"uploadParams\"\n accept=\".json\"\n :headers=\"headers\"\n :show-upload-list=\"false\"\n :format=\"['json']\"\n :on-success=\"onSuccess\"\n :before-upload=\"onBeforeUpload\"\n :on-format-error=\"onFormatError\"\n >\n <i title=\"导入\" class=\"iconfont icon-import\"></i>{{item.text}}\n </i-upload>\n </template>\n <template v-else> <i class=\"iconfont\" :class=\"'icon-' + (item.icon || item.name)\"></i>{{item.text}} </template>\n </i-dropdown-item>\n </i-dropdown-menu>\n </i-dropdown>\n</div>\n"
21184
+ module.exports = "<div class=\"u-tree-node\">\r\n<!-- <i class=\"iconfont\" :class=\"data.expand? 'icon-expand': 'icon-unexpand'\"></i>-->\r\n <i class=\"iconfont icon-mulushu\" @click=\"onClickNode\"></i>\r\n <div class=\"name\" @click=\"onClickNode\">{{data.name}}</div>\r\n <i-dropdown @on-click=\"onClick\" transfer transfer-class-name=\"node-oprate\" v-if=\"data.id !== 'virtual_root_directory'\">\r\n <i-icon type=\"ios-more\" />\r\n <i-dropdown-menu slot=\"list\">\r\n <i-dropdown-item v-for=\"item in actions\" :key=\"item.name\" :name=\"item.name\">\r\n <template v-if=\"item.name === 'import'\">\r\n <i-upload\r\n class=\"action-item\"\r\n :action=\"uploadAction\"\r\n :data=\"uploadParams\"\r\n accept=\".json\"\r\n :headers=\"headers\"\r\n :show-upload-list=\"false\"\r\n :format=\"['json']\"\r\n :on-success=\"onSuccess\"\r\n :before-upload=\"onBeforeUpload\"\r\n :on-format-error=\"onFormatError\"\r\n >\r\n <i title=\"导入\" class=\"iconfont icon-import\"></i>{{item.text}}\r\n </i-upload>\r\n </template>\r\n <template v-else> <i class=\"iconfont\" :class=\"'icon-' + (item.icon || item.name)\"></i>{{item.text}} </template>\r\n </i-dropdown-item>\r\n </i-dropdown-menu>\r\n </i-dropdown>\r\n</div>\r\n"
21185
21185
 
21186
21186
  /***/ }),
21187
21187
 
@@ -21219,7 +21219,7 @@ module.exports = "<i-modal draggable sticky transfer reset-drag-position :mask-c
21219
21219
  /***/ "0941":
21220
21220
  /***/ (function(module, exports) {
21221
21221
 
21222
- module.exports = "<i-modal draggable sticky transfer reset-drag-position :mask-closable=\"false\" v-model=\"show\" width=\"1280\" class=\"u-api-project-modal diy-modal\">\n <header slot=\"header\">添加API</header>\n <main>\n <i-split v-model=\"splitHorizontal\">\n <section slot=\"left\" class=\"card-panel card-panel-no-right-border\">\n <div class=\"card-panel-header\">\n <span>选择列表</span>\n </div>\n <div class=\"card-panel-main\">\n <u-tree :commonTaskCategoryID=\"taskCategoryID\" :initSelectItem=\"initNode\" :prop-data=\"treeData\" :isTreeList=\"true\" @on-select=\"onSelect\" />\n </div>\n </section>\n <section slot=\"right\" class=\"right-content\">\n <i-split v-model=\"splitVertical\" mode=\"vertical\" max=\"600\">\n <section slot=\"top\" class=\"card-panel card-panel-no-bottom-border\">\n <div class=\"card-panel-header\">\n <span>选择模型</span>\n </div>\n <div class=\"card-panel-main\">\n <u-api-project-list\n :data=\"tableData\"\n :paging.sync=\"paging\"\n @on-search=\"onSearch\"\n @on-page-index-change=\"onPageIndexChange\"\n @on-page-size-change=\"onPageSizeChange\"\n @on-selection-change=\"onSelectionChange\"\n @on-delete-refresh=\"getTableData\"\n @on-row-click=\"onRowClick\"\n >\n </u-api-project-list>\n </div>\n </section>\n <section slot=\"bottom\" :class=\"['card-panel', collapse ? 'card-panel-no-bottom-border' : '']\">\n <div class=\"card-panel-header\">\n <span>已选({{checkedLength}})</span>\n <span>\n <i-poptip confirm title=\"您确定要清空已选中的数据吗?\" transfer placement=\"top-end\" @on-ok=\"onBatchDelete\">\n <span class=\"action-text\">\n <i class=\"iconfont icon-delete\"></i>\n <span>清空</span>\n </span>\n </i-poptip>\n <span class=\"action-text collapse-text\" @click=\"onClickCollapse\">\n <span>{{collapse ? \"展开\" : \"收起\"}}</span>\n <i class=\"ivu-icon ivu-icon-ios-arrow-forward\" :class=\"{'icon-arrow-collapse':collapse}\"></i>\n </span>\n </span>\n </div>\n <div class=\"card-panel-main\">\n <template v-if=\"checkedData?.length\">\n <i-table class=\"diy-table\" :columns=\"columns\" :data=\"checkedData\">\n <template #operates=\"{row,index}\">\n <div class=\"row-actions\">\n <i-poptip confirm transfer title=\"确认要删除这条数据吗?\" @on-ok=\"onDelete(row)\">\n <i title=\"删除\" class=\"iconfont icon-delete\"></i>\n </i-poptip>\n </div>\n </template>\n </i-table>\n </template>\n <template v-else>\n <div class=\"table-no-data\">\n <div class=\"table-no-data-bg\"></div>\n <div class=\"table-no-data-text\">暂无数据</div>\n </div>\n </template>\n </div>\n </section>\n </i-split>\n </section>\n </i-split>\n <i-spin fix v-if=\"isLoading\">\n <i class=\"spin-icon-load ivu-icon\"></i>\n </i-spin>\n </main>\n <footer slot=\"footer\">\n <i-button type=\"primary\" class=\"diy-btn-primary\" @click=\"onSave\">确定</i-button>\n <i-button class=\"diy-btn-default\" @click=\"onCancel\">取消</i-button>\n </footer>\n</i-modal>\n"
21222
+ module.exports = "<i-modal draggable sticky transfer reset-drag-position :mask-closable=\"false\" v-model=\"show\" width=\"1280\" class=\"u-api-project-modal diy-modal\">\r\n <header slot=\"header\">添加API</header>\r\n <main>\r\n <i-split v-model=\"splitHorizontal\">\r\n <section slot=\"left\" class=\"card-panel card-panel-no-right-border\">\r\n <div class=\"card-panel-header\">\r\n <span>选择列表</span>\r\n </div>\r\n <div class=\"card-panel-main\">\r\n <u-tree :commonTaskCategoryID=\"taskCategoryID\" :initSelectItem=\"initNode\" :prop-data=\"treeData\" :isTreeList=\"true\" @on-select=\"onSelect\" />\r\n </div>\r\n </section>\r\n <section slot=\"right\" class=\"right-content\">\r\n <i-split v-model=\"splitVertical\" mode=\"vertical\" max=\"600\">\r\n <section slot=\"top\" class=\"card-panel card-panel-no-bottom-border\">\r\n <div class=\"card-panel-header\">\r\n <span>选择模型</span>\r\n </div>\r\n <div class=\"card-panel-main\">\r\n <u-api-project-list\r\n :data=\"tableData\"\r\n :paging.sync=\"paging\"\r\n @on-search=\"onSearch\"\r\n @on-page-index-change=\"onPageIndexChange\"\r\n @on-page-size-change=\"onPageSizeChange\"\r\n @on-selection-change=\"onSelectionChange\"\r\n @on-delete-refresh=\"getTableData\"\r\n @on-row-click=\"onRowClick\"\r\n >\r\n </u-api-project-list>\r\n </div>\r\n </section>\r\n <section slot=\"bottom\" :class=\"['card-panel', collapse ? 'card-panel-no-bottom-border' : '']\">\r\n <div class=\"card-panel-header\">\r\n <span>已选({{checkedLength}})</span>\r\n <span>\r\n <i-poptip confirm title=\"您确定要清空已选中的数据吗?\" transfer placement=\"top-end\" @on-ok=\"onBatchDelete\">\r\n <span class=\"action-text\">\r\n <i class=\"iconfont icon-delete\"></i>\r\n <span>清空</span>\r\n </span>\r\n </i-poptip>\r\n <span class=\"action-text collapse-text\" @click=\"onClickCollapse\">\r\n <span>{{collapse ? \"展开\" : \"收起\"}}</span>\r\n <i class=\"ivu-icon ivu-icon-ios-arrow-forward\" :class=\"{'icon-arrow-collapse':collapse}\"></i>\r\n </span>\r\n </span>\r\n </div>\r\n <div class=\"card-panel-main\">\r\n <template v-if=\"checkedData?.length\">\r\n <i-table class=\"diy-table\" :columns=\"columns\" :data=\"checkedData\">\r\n <template #operates=\"{row,index}\">\r\n <div class=\"row-actions\">\r\n <i-poptip confirm transfer title=\"确认要删除这条数据吗?\" @on-ok=\"onDelete(row)\">\r\n <i title=\"删除\" class=\"iconfont icon-delete\"></i>\r\n </i-poptip>\r\n </div>\r\n </template>\r\n </i-table>\r\n </template>\r\n <template v-else>\r\n <div class=\"table-no-data\">\r\n <div class=\"table-no-data-bg\"></div>\r\n <div class=\"table-no-data-text\">暂无数据</div>\r\n </div>\r\n </template>\r\n </div>\r\n </section>\r\n </i-split>\r\n </section>\r\n </i-split>\r\n <i-spin fix v-if=\"isLoading\">\r\n <i class=\"spin-icon-load ivu-icon\"></i>\r\n </i-spin>\r\n </main>\r\n <footer slot=\"footer\">\r\n <i-button type=\"primary\" class=\"diy-btn-primary\" @click=\"onSave\">确定</i-button>\r\n <i-button class=\"diy-btn-default\" @click=\"onCancel\">取消</i-button>\r\n </footer>\r\n</i-modal>\r\n"
21223
21223
 
21224
21224
  /***/ }),
21225
21225
 
@@ -26855,7 +26855,7 @@ module.exports = !!Object.getOwnPropertySymbols && !fails(function () {
26855
26855
  /***/ "4935":
26856
26856
  /***/ (function(module, exports) {
26857
26857
 
26858
- module.exports = "<i-modal draggable sticky reset-drag-position :mask-closable=\"false\" v-model=\"show\" width=\"1280\" class=\"u-data-model-modal diy-modal\" transfer>\n <header slot=\"header\">添加数据模型</header>\n <main>\n <i-split v-model=\"splitHorizontal\">\n <section slot=\"left\" class=\"card-panel card-panel-no-right-border\">\n <div class=\"card-panel-header\">\n <span>选择列表</span>\n </div>\n <div class=\"card-panel-main\">\n <u-tree :commonTaskCategoryID=\"taskCategoryID\" :initSelectItem=\"initNode\" :prop-data=\"treeData\" :isTreeList=\"true\" @on-select=\"onSelect\" />\n </div>\n </section>\n <section slot=\"right\" class=\"right-content\">\n <i-split v-model=\"splitVertical\" mode=\"vertical\" max=\"600\">\n <section slot=\"top\" class=\"card-panel card-panel-no-bottom-border\">\n <div class=\"card-panel-header\">\n <span>选择模型</span>\n </div>\n <div class=\"card-panel-main\">\n <u-data-model-list\n :data=\"tableData\"\n :paging.sync=\"paging\"\n @on-search=\"onSearch\"\n @on-page-index-change=\"onPageIndexChange\"\n @on-page-size-change=\"onPageSizeChange\"\n @on-selection-change=\"onSelectionChange\"\n @on-delete-refresh=\"getTableData\"\n @on-row-click=\"onRowClick\"\n >\n </u-data-model-list>\n </div>\n </section>\n <section slot=\"bottom\" :class=\"['card-panel', collapse ? 'card-panel-no-bottom-border' : '']\">\n <div class=\"card-panel-header\">\n <span>已选({{checkedLength}})</span>\n <span>\n <i-poptip confirm title=\"确定要清空已选中的数据吗?\" transfer placement=\"top-end\" @on-ok=\"onBatchDelete\">\n <span class=\"action-text\">\n <i class=\"iconfont icon-delete\"></i>\n <span>清空</span>\n </span>\n </i-poptip>\n <span class=\"action-text collapse-text\" @click=\"onClickCollapse\">\n <span>{{collapse ? \"展开\" : \"收起\"}}</span>\n <i class=\"ivu-icon ivu-icon-ios-arrow-forward\" :class=\"{'icon-arrow-collapse':collapse}\"></i>\n </span>\n </span>\n </div>\n <div class=\"card-panel-main\">\n <template v-if=\"checkedData?.length\">\n <i-table class=\"diy-table\" :columns=\"columns\" :data=\"checkedData\">\n <template #operates=\"{row,index}\">\n <div class=\"row-actions\">\n <i-poptip confirm transfer title=\"确认要删除这条数据吗?\" @on-ok=\"onDelete(row)\">\n <i title=\"删除\" class=\"iconfont icon-delete\"></i>\n </i-poptip>\n </div>\n </template>\n </i-table>\n </template>\n <template>\n <div class=\"table-no-data\">\n <div class=\"table-no-data-bg\"></div>\n <div class=\"table-no-data-text\">暂无数据</div>\n </div>\n </template>\n </div>\n </section>\n </i-split>\n </section>\n </i-split>\n <i-spin fix v-if=\"isLoading\">\n <i class=\"spin-icon-load ivu-icon\"></i>\n </i-spin>\n </main>\n <footer slot=\"footer\">\n <i-button type=\"primary\" class=\"diy-btn-primary\" @click=\"onSave\">确定</i-button>\n <i-button class=\"diy-btn-default\" @click=\"onCancel\">取消</i-button>\n </footer>\n</i-modal>\n"
26858
+ module.exports = "<i-modal draggable sticky reset-drag-position :mask-closable=\"false\" v-model=\"show\" width=\"1280\" class=\"u-data-model-modal diy-modal\" transfer>\r\n <header slot=\"header\">添加数据模型</header>\r\n <main>\r\n <i-split v-model=\"splitHorizontal\">\r\n <section slot=\"left\" class=\"card-panel card-panel-no-right-border\">\r\n <div class=\"card-panel-header\">\r\n <span>选择列表</span>\r\n </div>\r\n <div class=\"card-panel-main\">\r\n <u-tree :commonTaskCategoryID=\"taskCategoryID\" :initSelectItem=\"initNode\" :prop-data=\"treeData\" :isTreeList=\"true\" @on-select=\"onSelect\" />\r\n </div>\r\n </section>\r\n <section slot=\"right\" class=\"right-content\">\r\n <i-split v-model=\"splitVertical\" mode=\"vertical\" max=\"600\">\r\n <section slot=\"top\" class=\"card-panel card-panel-no-bottom-border\">\r\n <div class=\"card-panel-header\">\r\n <span>选择模型</span>\r\n </div>\r\n <div class=\"card-panel-main\">\r\n <u-data-model-list\r\n :data=\"tableData\"\r\n :paging.sync=\"paging\"\r\n @on-search=\"onSearch\"\r\n @on-page-index-change=\"onPageIndexChange\"\r\n @on-page-size-change=\"onPageSizeChange\"\r\n @on-selection-change=\"onSelectionChange\"\r\n @on-delete-refresh=\"getTableData\"\r\n @on-row-click=\"onRowClick\"\r\n >\r\n </u-data-model-list>\r\n </div>\r\n </section>\r\n <section slot=\"bottom\" :class=\"['card-panel', collapse ? 'card-panel-no-bottom-border' : '']\">\r\n <div class=\"card-panel-header\">\r\n <span>已选({{checkedLength}})</span>\r\n <span>\r\n <i-poptip confirm title=\"确定要清空已选中的数据吗?\" transfer placement=\"top-end\" @on-ok=\"onBatchDelete\">\r\n <span class=\"action-text\">\r\n <i class=\"iconfont icon-delete\"></i>\r\n <span>清空</span>\r\n </span>\r\n </i-poptip>\r\n <span class=\"action-text collapse-text\" @click=\"onClickCollapse\">\r\n <span>{{collapse ? \"展开\" : \"收起\"}}</span>\r\n <i class=\"ivu-icon ivu-icon-ios-arrow-forward\" :class=\"{'icon-arrow-collapse':collapse}\"></i>\r\n </span>\r\n </span>\r\n </div>\r\n <div class=\"card-panel-main\">\r\n <template v-if=\"checkedData?.length\">\r\n <i-table class=\"diy-table\" :columns=\"columns\" :data=\"checkedData\">\r\n <template #operates=\"{row,index}\">\r\n <div class=\"row-actions\">\r\n <i-poptip confirm transfer title=\"确认要删除这条数据吗?\" @on-ok=\"onDelete(row)\">\r\n <i title=\"删除\" class=\"iconfont icon-delete\"></i>\r\n </i-poptip>\r\n </div>\r\n </template>\r\n </i-table>\r\n </template>\r\n <template>\r\n <div class=\"table-no-data\">\r\n <div class=\"table-no-data-bg\"></div>\r\n <div class=\"table-no-data-text\">暂无数据</div>\r\n </div>\r\n </template>\r\n </div>\r\n </section>\r\n </i-split>\r\n </section>\r\n </i-split>\r\n <i-spin fix v-if=\"isLoading\">\r\n <i class=\"spin-icon-load ivu-icon\"></i>\r\n </i-spin>\r\n </main>\r\n <footer slot=\"footer\">\r\n <i-button type=\"primary\" class=\"diy-btn-primary\" @click=\"onSave\">确定</i-button>\r\n <i-button class=\"diy-btn-default\" @click=\"onCancel\">取消</i-button>\r\n </footer>\r\n</i-modal>\r\n"
26859
26859
 
26860
26860
  /***/ }),
26861
26861
 
@@ -40809,7 +40809,7 @@ var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_
40809
40809
  /***/ "88af":
40810
40810
  /***/ (function(module, exports) {
40811
40811
 
40812
- module.exports = "<i-modal draggable sticky reset-drag-position :mask-closable=\"false\" v-model=\"value\" width=\"800\" class=\"u-variable-modal diy-modal\" transfer>\n <header slot=\"header\">批量修改环境变量与授权</header>\n <main class=\"variable-content\">\n <div class=\"left\">\n <div class=\"left-title\">\n <div class=\"left-title-text\">选择API</div>\n </div>\n <div class=\"left-content\">\n <i-input class=\"diy-input search-input\" v-model=\"keyword\" placeholder=\"输入关键字查询\" @on-change=\"onFilter\">\n <template #prefix>\n <i-icon type=\"ios-search\"/>\n </template>\n </i-input>\n <div class=\"security-list\">\n <i-checkbox class=\"security-list-item-checkbox\" v-model=\"allSelect\" @on-change=\"onAllSelect\">全选</i-checkbox>\n <div class=\"security-list-item\"\n v-for=\"(item,index) in apiList\"\n :key=\"item.id || index\"\n >\n <div class=\"security-list-item-name\">\n <i-checkbox v-model=\"item.selected\" @on-change=\"onSelect($event,item)\"></i-checkbox>\n <i class=\"iconfont icon-API\"></i>\n <div class=\"security-list-item-text\" :title=\"item.name\">{{ item.name }}</div>\n </div>\n </div>\n </div>\n </div>\n </div>\n <div class=\"right\">\n <div class=\"right-title\">环境与授权</div>\n <div class=\"right-content\">\n <i-form ref=\"batch-api-form\" class=\"variable-content-form\" label-colon label-position=\"left\" v-if=\"isEmpty\" :rules=\"rules\" :label-width=\"100\" :model=\"formData\">\n <i-form-item class=\"content-form-item un-required-item\" label=\"选择属性\">\n <i-select class=\"diy-select\" placeholder=\"请输入\" clearable v-model=\"type\">\n <i-option value=\"env\">环境变量</i-option>\n <i-option value=\"auth\">授权设置</i-option>\n <i-option value=\"both\">环境变量和授权设置</i-option>\n </i-select>\n </i-form-item>\n <i-form-item class=\"content-form-item\" v-if=\"type !== 'auth'\" label=\"环境变量\" prop=\"envId\">\n <i-select class=\"diy-select diy-batch-select diy-batch-variable-select\" placeholder=\"请选择\" clearable v-model=\"formData.envId\">\n <i-option value=\"empty\">清空所有已设置环境变量</i-option>\n <i-option v-for=\"item in variableList\" :key=\"item.name\" :value=\"item.id\" :title=\"item.name + ':' + item.value\">{{item.name + \":\" + item.value}}</i-option>\n </i-select>\n </i-form-item>\n <i-form-item class=\"content-form-item\" label=\"授权设置\" v-if=\"type !== 'env'\" prop=\"authId\">\n <i-select class=\"diy-select diy-batch-select\" placeholder=\"请选择\" clearable v-model=\"formData.authId\">\n <i-option value=\"empty\">清空所有已设置授权</i-option>\n <i-option v-for=\"item in securityList\" :key=\"item.name\" :value=\"item.id\">{{item.name}} </i-option>\n </i-select>\n </i-form-item>\n </i-form>\n </div>\n </div>\n </main>\n\n <footer slot=\"footer\">\n <template>\n <i-button class=\"diy-btn-default\" @click=\"onCancel\">取消</i-button>\n <i-button type=\"primary\" class=\"diy-btn-primary\" @click=\"onSave\">保存</i-button>\n </template>\n </footer>\n</i-modal>\n"
40812
+ module.exports = "<i-modal draggable sticky reset-drag-position :mask-closable=\"false\" v-model=\"value\" width=\"800\" class=\"u-variable-modal diy-modal\" transfer>\r\n <header slot=\"header\">批量修改环境变量与授权</header>\r\n <main class=\"variable-content\">\r\n <div class=\"left\">\r\n <div class=\"left-title\">\r\n <div class=\"left-title-text\">选择API</div>\r\n </div>\r\n <div class=\"left-content\">\r\n <i-input class=\"diy-input search-input\" v-model=\"keyword\" placeholder=\"输入关键字查询\" @on-change=\"onFilter\">\r\n <template #prefix>\r\n <i-icon type=\"ios-search\"/>\r\n </template>\r\n </i-input>\r\n <div class=\"security-list\">\r\n <i-checkbox class=\"security-list-item-checkbox\" v-model=\"allSelect\" @on-change=\"onAllSelect\">全选</i-checkbox>\r\n <div class=\"security-list-item\"\r\n v-for=\"(item,index) in apiList\"\r\n :key=\"item.id || index\"\r\n >\r\n <div class=\"security-list-item-name\">\r\n <i-checkbox v-model=\"item.selected\" @on-change=\"onSelect($event,item)\"></i-checkbox>\r\n <i class=\"iconfont icon-API\"></i>\r\n <div class=\"security-list-item-text\" :title=\"item.name\">{{ item.name }}</div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"right\">\r\n <div class=\"right-title\">环境与授权</div>\r\n <div class=\"right-content\">\r\n <i-form ref=\"batch-api-form\" class=\"variable-content-form\" label-colon label-position=\"left\" v-if=\"isEmpty\" :rules=\"rules\" :label-width=\"100\" :model=\"formData\">\r\n <i-form-item class=\"content-form-item un-required-item\" label=\"选择属性\">\r\n <i-select class=\"diy-select\" placeholder=\"请输入\" clearable v-model=\"type\">\r\n <i-option value=\"env\">环境变量</i-option>\r\n <i-option value=\"auth\">授权设置</i-option>\r\n <i-option value=\"both\">环境变量和授权设置</i-option>\r\n </i-select>\r\n </i-form-item>\r\n <i-form-item class=\"content-form-item\" v-if=\"type !== 'auth'\" label=\"环境变量\" prop=\"envId\">\r\n <i-select class=\"diy-select diy-batch-select diy-batch-variable-select\" placeholder=\"请选择\" clearable v-model=\"formData.envId\">\r\n <i-option value=\"empty\">清空所有已设置环境变量</i-option>\r\n <i-option v-for=\"item in variableList\" :key=\"item.name\" :value=\"item.id\" :title=\"item.name + ':' + item.value\">{{item.name + \":\" + item.value}}</i-option>\r\n </i-select>\r\n </i-form-item>\r\n <i-form-item class=\"content-form-item\" label=\"授权设置\" v-if=\"type !== 'env'\" prop=\"authId\">\r\n <i-select class=\"diy-select diy-batch-select\" placeholder=\"请选择\" clearable v-model=\"formData.authId\">\r\n <i-option value=\"empty\">清空所有已设置授权</i-option>\r\n <i-option v-for=\"item in securityList\" :key=\"item.name\" :value=\"item.id\">{{item.name}} </i-option>\r\n </i-select>\r\n </i-form-item>\r\n </i-form>\r\n </div>\r\n </div>\r\n </main>\r\n\r\n <footer slot=\"footer\">\r\n <template>\r\n <i-button class=\"diy-btn-default\" @click=\"onCancel\">取消</i-button>\r\n <i-button type=\"primary\" class=\"diy-btn-primary\" @click=\"onSave\">保存</i-button>\r\n </template>\r\n </footer>\r\n</i-modal>\r\n"
40813
40813
 
40814
40814
  /***/ }),
40815
40815
 
@@ -42972,6 +42972,33 @@ module.exports = "<article class=\"catalog-params\">\r\n <i-table height=\"20
42972
42972
 
42973
42973
  // extracted by mini-css-extract-plugin
42974
42974
 
42975
+ /***/ }),
42976
+
42977
+ /***/ "a15b":
42978
+ /***/ (function(module, exports, __webpack_require__) {
42979
+
42980
+ "use strict";
42981
+
42982
+ var $ = __webpack_require__("23e7");
42983
+ var uncurryThis = __webpack_require__("e330");
42984
+ var IndexedObject = __webpack_require__("44ad");
42985
+ var toIndexedObject = __webpack_require__("fc6a");
42986
+ var arrayMethodIsStrict = __webpack_require__("a640");
42987
+
42988
+ var un$Join = uncurryThis([].join);
42989
+
42990
+ var ES3_STRINGS = IndexedObject != Object;
42991
+ var STRICT_METHOD = arrayMethodIsStrict('join', ',');
42992
+
42993
+ // `Array.prototype.join` method
42994
+ // https://tc39.es/ecma262/#sec-array.prototype.join
42995
+ $({ target: 'Array', proto: true, forced: ES3_STRINGS || !STRICT_METHOD }, {
42996
+ join: function join(separator) {
42997
+ return un$Join(toIndexedObject(this), separator === undefined ? ',' : separator);
42998
+ }
42999
+ });
43000
+
43001
+
42975
43002
  /***/ }),
42976
43003
 
42977
43004
  /***/ "a1f0":
@@ -47241,7 +47268,7 @@ $({ target: 'Object', stat: true, forced: Object.assign !== assign }, {
47241
47268
  /***/ "ccf6":
47242
47269
  /***/ (function(module, exports) {
47243
47270
 
47244
- module.exports = "<!DOCTYPE html>\n<article class=\"v-api-combine-wrapper\">\n <i-split v-model=\"split\" min=\"200px\" max=\"1100px\">\n <!-- 左侧内容 -->\n <section slot=\"left\" class=\"left-split-pane\">\n <u-type-tree :taskCategoryID=\"taskCategoryID\" :initSelectItem=\"initNode\" @on-import-success=\"onQuery\" @on-select=\"onNodeSelect\" @on-tree-data=\"onTreeData\"> </u-type-tree>\n </section>\n <!-- 分割线 -->\n <section class=\"trigger\" slot=\"trigger\"></section>\n <!-- 右侧内容 -->\n <section slot=\"right\" class=\"right-split-pane\">\n <section class=\"search-wrapper\">\n <i-form class=\"diy-search-form\" ref=\"searchForm\" :model=\"formData\" label-position=\"left\" label-colon>\n <i-form-item label=\"名称\" prop=\"name\">\n <i-input class=\"diy-input\" v-model=\"formData.name\"></i-input>\n </i-form-item>\n <i-form-item label=\"编码\" prop=\"code\">\n <i-input class=\"diy-input\" v-model=\"formData.code\"></i-input>\n </i-form-item>\n </i-form>\n <div class=\"btns\">\n <i-button class=\"diy-btn-primary\" type=\"primary\" @click=\"onQuery\">查询</i-button>\n <i-button class=\"diy-btn-default\" @click=\"onReset\">重置</i-button>\n </div>\n </section>\n <section class=\"actions-wrapper\">\n <div class=\"action-item action-text\" @click=\"onAdd()\" :class=\"currentNode.id === 'virtual_root_directory' ? 'icon-button-disabled' : ''\">\n <i class=\"iconfont icon-add\"></i>\n <div>新增</div>\n </div>\n <div class=\"action-item action-text\" :class=\"selection.length ? '' : 'icon-button-disabled'\" @click=\"onBatchDelete\">\n <i class=\"iconfont icon-delete\"></i>\n <span>批量删除</span>\n </div>\n </section>\n <section class=\"main-wrapper\">\n <template v-if=\"list?.length\">\n <i-table class=\"diy-table\" :columns=\"columns\" :data=\"list\" @on-selection-change=\"onSelectChange\" @on-row-click=\"onRowClick\">\n <template slot=\"status\" slot-scope=\"{row,index}\">\n <i-switch class=\"diy-switch\" :value=\"row.status==='PUBLISHED'\" @on-change=\"onStatusChange($event, row, index)\"></i-switch>\n <span>{{row.status===\"PUBLISHED\" ? \"已发布\" : \"未发布\"}}</span>\n </template>\n <template slot=\"doc\" slot-scope=\"{row}\">\n <a @click=\"onOpenDoc(row)\">查看</a>\n </template>\n <template #operates=\"{row,index}\">\n <div class=\"row-actions\">\n <i @click.stop=\"onDetail(row)\" title=\"查看\" class=\"iconfont icon-a-xinzengzhibiaobeifen9\"></i>\n <i @click.stop=\"onCopy(row)\" title=\"复制\" class=\"iconfont icon-fuzhi1\"> </i>\n <template v-if=\"row.status!=='PUBLISHED'\">\n <i @click.stop=\"onEdit(row)\" title=\"编辑\" class=\"iconfont icon-Edit\"></i>\n <i-poptip confirm transfer title=\"确认要删除这条数据吗?\" @on-ok=\"onDelete(row)\">\n <i title=\"删除\" class=\"iconfont icon-delete\"></i>\n </i-poptip>\n </template>\n </div>\n </template>\n </i-table>\n <i-page\n class=\"diy-page\"\n show-total\n show-sizer\n show-elevator\n :total=\"paging.totalCount\"\n :current=\"paging.pageIndex\"\n :page-size=\"paging.pageSize\"\n @on-change=\"onPageIndexChange\"\n @on-page-size-change=\"onPageSizeChange\"\n ></i-page>\n </template>\n <template v-else>\n <div class=\"table-no-data\">\n <div class=\"table-no-data-bg\"></div>\n <div class=\"table-no-data-text\">暂无数据</div>\n </div>\n </template>\n </section>\n </section>\n </i-split>\n <i-spin fix v-show=\"loading\">\n <i class=\"spin-icon-load ivu-icon\"></i>\n </i-spin>\n <u-data-model-doc v-model=\"docShow\" :doc=\"doc\"></u-data-model-doc>\n <i-modal draggable sticky reset-drag-position v-model=\"showCopyModal\" class=\"diy-modal combine-copy-modal\" :mask-closable=\"false\" title=\"复制接口\">\n <i-form :label-width=\"100\" class=\"diy-form\" v-model=\"copyData\" label-colon>\n <i-form-item label=\"接口名称\" required>\n <i-input class=\"diy-input\" v-model=\"copyData.name\"></i-input>\n </i-form-item>\n <i-form-item label=\"接口编码\" required>\n <i-input class=\"diy-input\" v-model=\"copyData.code\"></i-input>\n </i-form-item>\n <i-form-item label=\"选择分组\" required>\n <u-tree-selector :treeData=\"treeData\" leaf-name=\"copy\" :canChooseFolder=\"true\" v-model=\"categoryData.id\" @on-select=\"selectCategory\"> </u-tree-selector>\n </i-form-item>\n </i-form>\n <footer slot=\"footer\">\n <i-button class=\"diy-btn-primary\" type=\"primary\" @click=\"onCopyConfirm\">确定</i-button>\n <i-button class=\"diy-btn-default\" @click=\"onCopyCancel\">取消</i-button>\n </footer>\n </i-modal>\n</article>\n"
47271
+ module.exports = "<!DOCTYPE html>\r\n<article class=\"v-api-combine-wrapper\">\r\n <i-split v-model=\"split\" min=\"200px\" max=\"1100px\">\r\n <!-- 左侧内容 -->\r\n <section slot=\"left\" class=\"left-split-pane\">\r\n <u-type-tree :taskCategoryID=\"taskCategoryID\" :initSelectItem=\"initNode\" @on-import-success=\"onQuery\" @on-select=\"onNodeSelect\" @on-tree-data=\"onTreeData\"> </u-type-tree>\r\n </section>\r\n <!-- 分割线 -->\r\n <section class=\"trigger\" slot=\"trigger\"></section>\r\n <!-- 右侧内容 -->\r\n <section slot=\"right\" class=\"right-split-pane\">\r\n <section class=\"search-wrapper\">\r\n <i-form class=\"diy-search-form\" ref=\"searchForm\" :model=\"formData\" label-position=\"left\" label-colon>\r\n <i-form-item label=\"名称\" prop=\"name\">\r\n <i-input class=\"diy-input\" v-model=\"formData.name\"></i-input>\r\n </i-form-item>\r\n <i-form-item label=\"编码\" prop=\"code\">\r\n <i-input class=\"diy-input\" v-model=\"formData.code\"></i-input>\r\n </i-form-item>\r\n </i-form>\r\n <div class=\"btns\">\r\n <i-button class=\"diy-btn-primary\" type=\"primary\" @click=\"onQuery\">查询</i-button>\r\n <i-button class=\"diy-btn-default\" @click=\"onReset\">重置</i-button>\r\n </div>\r\n </section>\r\n <section class=\"actions-wrapper\">\r\n <div class=\"action-item action-text\" @click=\"onAdd()\" :class=\"currentNode.id === 'virtual_root_directory' ? 'icon-button-disabled' : ''\">\r\n <i class=\"iconfont icon-add\"></i>\r\n <div>新增</div>\r\n </div>\r\n <div class=\"action-item action-text\" :class=\"selection.length ? '' : 'icon-button-disabled'\" @click=\"onBatchDelete\">\r\n <i class=\"iconfont icon-delete\"></i>\r\n <span>批量删除</span>\r\n </div>\r\n </section>\r\n <section class=\"main-wrapper\">\r\n <template v-if=\"list?.length\">\r\n <i-table class=\"diy-table\" :columns=\"columns\" :data=\"list\" @on-selection-change=\"onSelectChange\" @on-row-click=\"onRowClick\">\r\n <template slot=\"status\" slot-scope=\"{row,index}\">\r\n <i-switch class=\"diy-switch\" :value=\"row.status==='PUBLISHED'\" @on-change=\"onStatusChange($event, row, index)\"></i-switch>\r\n <span>{{row.status===\"PUBLISHED\" ? \"已发布\" : \"未发布\"}}</span>\r\n </template>\r\n <template slot=\"doc\" slot-scope=\"{row}\">\r\n <a @click=\"onOpenDoc(row)\">查看</a>\r\n </template>\r\n <template #operates=\"{row,index}\">\r\n <div class=\"row-actions\">\r\n <i @click.stop=\"onDetail(row)\" title=\"查看\" class=\"iconfont icon-a-xinzengzhibiaobeifen9\"></i>\r\n <i @click.stop=\"onCopy(row)\" title=\"复制\" class=\"iconfont icon-fuzhi1\"> </i>\r\n <template v-if=\"row.status!=='PUBLISHED'\">\r\n <i @click.stop=\"onEdit(row)\" title=\"编辑\" class=\"iconfont icon-Edit\"></i>\r\n <i-poptip confirm transfer title=\"确认要删除这条数据吗?\" @on-ok=\"onDelete(row)\">\r\n <i title=\"删除\" class=\"iconfont icon-delete\"></i>\r\n </i-poptip>\r\n </template>\r\n </div>\r\n </template>\r\n </i-table>\r\n <i-page\r\n class=\"diy-page\"\r\n show-total\r\n show-sizer\r\n show-elevator\r\n :total=\"paging.totalCount\"\r\n :current=\"paging.pageIndex\"\r\n :page-size=\"paging.pageSize\"\r\n @on-change=\"onPageIndexChange\"\r\n @on-page-size-change=\"onPageSizeChange\"\r\n ></i-page>\r\n </template>\r\n <template v-else>\r\n <div class=\"table-no-data\">\r\n <div class=\"table-no-data-bg\"></div>\r\n <div class=\"table-no-data-text\">暂无数据</div>\r\n </div>\r\n </template>\r\n </section>\r\n </section>\r\n </i-split>\r\n <i-spin fix v-show=\"loading\">\r\n <i class=\"spin-icon-load ivu-icon\"></i>\r\n </i-spin>\r\n <u-data-model-doc v-model=\"docShow\" :doc=\"doc\"></u-data-model-doc>\r\n <i-modal draggable sticky reset-drag-position v-model=\"showCopyModal\" class=\"diy-modal combine-copy-modal\" :mask-closable=\"false\" title=\"复制接口\">\r\n <i-form :label-width=\"100\" class=\"diy-form\" v-model=\"copyData\" label-colon>\r\n <i-form-item label=\"接口名称\" required>\r\n <i-input class=\"diy-input\" v-model=\"copyData.name\"></i-input>\r\n </i-form-item>\r\n <i-form-item label=\"接口编码\" required>\r\n <i-input class=\"diy-input\" v-model=\"copyData.code\"></i-input>\r\n </i-form-item>\r\n <i-form-item label=\"选择分组\" required>\r\n <u-tree-selector :treeData=\"treeData\" leaf-name=\"copy\" :canChooseFolder=\"true\" v-model=\"categoryData.id\" @on-select=\"selectCategory\"> </u-tree-selector>\r\n </i-form-item>\r\n </i-form>\r\n <footer slot=\"footer\">\r\n <i-button class=\"diy-btn-primary\" type=\"primary\" @click=\"onCopyConfirm\">确定</i-button>\r\n <i-button class=\"diy-btn-default\" @click=\"onCopyCancel\">取消</i-button>\r\n </footer>\r\n </i-modal>\r\n</article>\r\n"
47245
47272
 
47246
47273
  /***/ }),
47247
47274
 
@@ -47293,7 +47320,7 @@ module.exports = require("axios");
47293
47320
  /***/ "cfb3":
47294
47321
  /***/ (function(module, exports) {
47295
47322
 
47296
- module.exports = "<article class=\"project-list\">\n <header>\n <i-input\n class=\"diy-input\"\n v-model=\"condition.name\"\n search\n @on-search=\"onQuery\"\n placeholder=\"输入关键字检索\"\n ></i-input>\n </header>\n <main>\n <header class=\"tool-bar\">\n <span>项目列表</span>\n <div class=\"right-tool\">\n <div class=\"action-btn\">\n <i-upload\n class=\"action-item\"\n :action=\"uploadAction\"\n accept=\".json\"\n :headers=\"headers\"\n :show-upload-list=\"false\"\n :format=\"['json']\"\n :on-success=\"onSuccess\"\n :before-upload=\"onBeforeUpload\"\n :on-format-error=\"onFormatError\"\n >\n <i class=\"api-icon icon-import\"></i>\n <div>导入项目</div>\n </i-upload>\n </div>\n <div class=\"action-btn\" @click=\"onComment\">\n <i\n class=\"api-icon icon-star\"\n @click=\"onCheckType('list')\"\n ></i>\n <div>查看项目动态</div>\n </div>\n <i\n class=\"api-icon icon-list\"\n :class=\"{'active': type === 'list'}\"\n title=\"列表展示\"\n @click=\"onCheckType('list')\"\n ></i>\n <i\n class=\"api-icon icon-card\"\n :class=\"{'active': type === 'card'}\"\n title=\"卡片展示\"\n @click=\"onCheckType('card')\"\n ></i>\n </div>\n </header>\n <main>\n <section class=\"projects\" v-if=\"type==='card'\">\n <div class=\"project-card\" @click=\"onAdd\">\n <div class=\"add-card\">\n <i-icon type=\"md-add\" />\n <p>新建项目</p>\n </div>\n </div>\n <u-card\n v-for=\"item in dataList\"\n :data=\"item\"\n :key=\"item.id\"\n @on-delete=\"onDelete\"\n @on-detail=\"onDetail\"\n @on-edit=\"onEdit\"\n @on-export=\"onExport\"\n ></u-card>\n </section>\n <section class=\"projects\" v-else>\n <i-table class=\"diy-table\" :columns=\"columns\" :data=\"dataList\">\n <template slot-scope=\"{ row,index }\" slot=\"action\">\n <span @click=\"onExport(row)\" class=\"action-btn export\"\n ><i class=\"api-icon icon-export projects-icon-export\" title=\"导出此项目\"></i\n ></span>\n <span @click=\"onDetail(row)\" class=\"action-btn detail\"\n ><i class=\"api-icon icon-detail\" title=\"详情\"></i\n ></span>\n <span @click=\"onEdit(row)\" class=\"action-btn detail\"\n ><i class=\"api-icon icon-edit\" title=\"修改\"></i\n ></span>\n <u-confirm\n title=\"删除项目\"\n @on-ok=\"onDelete(row)\"\n message=\"项目内所有接口将被一并删除, 是否确认执行?\"\n >\n <span class=\"action-btn delete\"\n ><i\n class=\"api-icon icon-delete\"\n title=\"删除\"\n ></i\n ></span>\n </u-confirm>\n </template>\n </i-table>\n </section>\n </main>\n </main>\n <u-add-modal :visiable.sync=\"showAddModal\" :data=\"current\">\n <footer slot=\"footer\">\n <i-button @click=\"showAddModal = false\">取消</i-button>\n <i-button type=\"primary\" class=\"diy-btn-primary \" @click=\"onSave\"\n >确定</i-button\n >\n </footer>\n </u-add-modal>\n <i-spin fix v-show=\"loading\">\n <i class=\"spin-icon-load ivu-icon\"></i>\n </i-spin>\n</article>\n"
47323
+ module.exports = "<article class=\"project-list\">\r\n <header>\r\n <i-input\r\n class=\"diy-input\"\r\n v-model=\"condition.name\"\r\n search\r\n @on-search=\"onQuery\"\r\n placeholder=\"输入关键字检索\"\r\n ></i-input>\r\n </header>\r\n <main>\r\n <header class=\"tool-bar\">\r\n <span>项目列表</span>\r\n <div class=\"right-tool\">\r\n <div class=\"action-btn\">\r\n <i-upload\r\n class=\"action-item\"\r\n :action=\"uploadAction\"\r\n accept=\".json\"\r\n :headers=\"headers\"\r\n :show-upload-list=\"false\"\r\n :format=\"['json']\"\r\n :on-success=\"onSuccess\"\r\n :before-upload=\"onBeforeUpload\"\r\n :on-format-error=\"onFormatError\"\r\n >\r\n <i class=\"api-icon icon-import\"></i>\r\n <div>导入项目</div>\r\n </i-upload>\r\n </div>\r\n <div class=\"action-btn\" @click=\"onComment\">\r\n <i\r\n class=\"api-icon icon-star\"\r\n @click=\"onCheckType('list')\"\r\n ></i>\r\n <div>查看项目动态</div>\r\n </div>\r\n <i\r\n class=\"api-icon icon-list\"\r\n :class=\"{'active': type === 'list'}\"\r\n title=\"列表展示\"\r\n @click=\"onCheckType('list')\"\r\n ></i>\r\n <i\r\n class=\"api-icon icon-card\"\r\n :class=\"{'active': type === 'card'}\"\r\n title=\"卡片展示\"\r\n @click=\"onCheckType('card')\"\r\n ></i>\r\n </div>\r\n </header>\r\n <main>\r\n <section class=\"projects\" v-if=\"type==='card'\">\r\n <div class=\"project-card\" @click=\"onAdd\">\r\n <div class=\"add-card\">\r\n <i-icon type=\"md-add\" />\r\n <p>新建项目</p>\r\n </div>\r\n </div>\r\n <u-card\r\n v-for=\"item in dataList\"\r\n :data=\"item\"\r\n :key=\"item.id\"\r\n @on-delete=\"onDelete\"\r\n @on-detail=\"onDetail\"\r\n @on-edit=\"onEdit\"\r\n @on-export=\"onExport\"\r\n ></u-card>\r\n </section>\r\n <section class=\"projects\" v-else>\r\n <i-table class=\"diy-table\" :columns=\"columns\" :data=\"dataList\">\r\n <template slot-scope=\"{ row,index }\" slot=\"action\">\r\n <span @click=\"onExport(row)\" class=\"action-btn export\"\r\n ><i class=\"api-icon icon-export projects-icon-export\" title=\"导出此项目\"></i\r\n ></span>\r\n <span @click=\"onDetail(row)\" class=\"action-btn detail\"\r\n ><i class=\"api-icon icon-detail\" title=\"详情\"></i\r\n ></span>\r\n <span @click=\"onEdit(row)\" class=\"action-btn detail\"\r\n ><i class=\"api-icon icon-edit\" title=\"修改\"></i\r\n ></span>\r\n <u-confirm\r\n title=\"删除项目\"\r\n @on-ok=\"onDelete(row)\"\r\n message=\"项目内所有接口将被一并删除, 是否确认执行?\"\r\n >\r\n <span class=\"action-btn delete\"\r\n ><i\r\n class=\"api-icon icon-delete\"\r\n title=\"删除\"\r\n ></i\r\n ></span>\r\n </u-confirm>\r\n </template>\r\n </i-table>\r\n </section>\r\n </main>\r\n </main>\r\n <u-add-modal :visiable.sync=\"showAddModal\" :data=\"current\">\r\n <footer slot=\"footer\">\r\n <i-button @click=\"showAddModal = false\">取消</i-button>\r\n <i-button type=\"primary\" class=\"diy-btn-primary \" @click=\"onSave\"\r\n >确定</i-button\r\n >\r\n </footer>\r\n </u-add-modal>\r\n <i-spin fix v-show=\"loading\">\r\n <i class=\"spin-icon-load ivu-icon\"></i>\r\n </i-spin>\r\n</article>\r\n"
47297
47324
 
47298
47325
  /***/ }),
47299
47326
 
@@ -47414,7 +47441,7 @@ module.exports = Object.setPrototypeOf || ('__proto__' in {} ? function () {
47414
47441
  /***/ "d30a":
47415
47442
  /***/ (function(module, exports) {
47416
47443
 
47417
- module.exports = "<div class=\"u-selector-tree-node\" @click=\"onClickNode\">\n <i-icon v-if=\"!data.children\" type=\"ios-bookmark-outline\" />\n <template v-else>\n<!-- <i-->\n<!-- class=\"iconfont\"-->\n<!-- :class=\"data.expand? 'icon-expand': 'icon-unexpand'\"-->\n<!-- ></i>-->\n <i class=\"iconfont icon-bumenkaohe\"></i>\n </template>\n <span>{{data.title}}</span>\n</div>\n"
47444
+ module.exports = "<div class=\"u-selector-tree-node\" @click=\"onClickNode\">\r\n <i-icon v-if=\"!data.children\" type=\"ios-bookmark-outline\" />\r\n <template v-else>\r\n<!-- <i-->\r\n<!-- class=\"iconfont\"-->\r\n<!-- :class=\"data.expand? 'icon-expand': 'icon-unexpand'\"-->\r\n<!-- ></i>-->\r\n <i class=\"iconfont icon-bumenkaohe\"></i>\r\n </template>\r\n <span>{{data.title}}</span>\r\n</div>\r\n"
47418
47445
 
47419
47446
  /***/ }),
47420
47447
 
@@ -47467,7 +47494,7 @@ module.exports = /ipad|iphone|ipod/i.test(userAgent) && global.Pebble !== undefi
47467
47494
  /***/ "d63e":
47468
47495
  /***/ (function(module, exports) {
47469
47496
 
47470
- module.exports = "<article class=\"project-detail\">\n <header>\n <div class=\"environment\">\n <i class=\"iconfont icon-zhankai\" @click=\"onBack\"></i>\n <p>{{projectName}}</p>\n <!-- <span>环境变量:</span> -->\n <!-- <i-select class=\"diy-select\"></i-select> -->\n </div>\n <div class=\"btns\">\n <!-- <i-button type=\"primary\" ghost class=\"diy-btn-primary\" @click=\"onOpenGlobalModal\"> <i class=\"api-icon icon-setting\"></i>全局参数设置</i-button> -->\n <!-- <i-button type=\"success\" ghost class=\"diy-btn-success\" @click=\"onOpenCurrentModal\"><i class=\"api-icon icon-view\"></i>查看当前变量</i-button> -->\n <i-button v-if=\"projectId && projectName\" type=\"primary\" class=\"diy-btn-primary security-btn\" ghost @click=\"onSecurity\"><i class=\"iconfont icon-xinzengzhibiao\"></i>授权认证</i-button>\n <i-button v-if=\"projectId && projectName\" type=\"primary\" class=\"diy-btn-primary\" ghost @click=\"onOpenEnvModal\"><i class=\"iconfont icon-bianliang\"></i>环境变量</i-button>\n <i-button v-show=\"active.id\" type=\"primary\" class=\"diy-btn-primary\" ghost @click=\"onToggleLayout\"><i class=\"api-icon icon-switch\"></i>切换布局</i-button>\n </div>\n </header>\n <!-- <main> -->\n <i-split v-model=\"split\" min=\"200px\" max=\"900px\">\n <u-tree slot=\"left\" @on-check-interface=\"onCheckInterface\" @on-edit-interface-success=\"onEditInterfaceSuccess\" :project-id=\"projectId\" @on-success=\"onBatchSuccess\"></u-tree>\n <section slot=\"right\" class=\"interface-box\">\n <header class=\"interface-bar\">\n <swiper class=\"swiper\" :options=\"swiperOption\" @click-slide=\"onClickSlide\" @ready=\"onSwiperReadied\">\n <swiper-slide class=\"tag\" @click=\"onClickTag(item)\" :class=\"{'active': item.id === active.id}\" v-for=\"(item,index) in openInterfaceList\" :key=\"item.id\"\n ><span>{{item.name}}</span> <i-icon type=\"md-close\" @click.stop=\"onClose(index)\"></i-icon\n ></swiper-slide>\n </swiper>\n <!-- <div class=\"tag\" @click=\"onClickTag(item)\" :class=\"{'active': item.id === active.id}\" v-for=\"(item,index) in openInterfaceList\" :key=\"item.id\">\n <span>{{item.name}}</span>\n <i-icon type=\"md-close\" @click.stop=\"onClose(index)\"></i-icon>\n </div> -->\n </header>\n <u-settings ref=\"interface-settings\" :interface-model.sync=\"active\" :project-id=\"projectId\" v-if=\"active.id\" :lengthwise=\"lengthwise\"></u-settings>\n </section>\n </i-split>\n <i-spin fix v-show=\"loading\">\n <i class=\"spin-icon-load ivu-icon\"></i>\n </i-spin>\n <!-- </main> -->\n <u-global-modal :visiable.sync=\"showGlobalModal\">\n <footer slot=\"footer\">\n <i-button @click=\"showGlobalModal = false\">取消</i-button>\n <i-button type=\"primary\" class=\"diy-btn-primary\">确定</i-button>\n </footer>\n </u-global-modal>\n <u-current-modal :visiable.sync=\"showCurrentModal\"> </u-current-modal>\n <u-security-modal v-model=\"showSecurity\" :projectID=\"projectId\"></u-security-modal>\n <u-environment-modal :visiable.sync=\"showEnvironmentModal\" :projectId=\"projectId\" @on-refresh=\"onEnvironmentRefresh\"></u-environment-modal>\n</article>\n"
47497
+ module.exports = "<article class=\"project-detail\">\r\n <header>\r\n <div class=\"environment\">\r\n <i class=\"iconfont icon-zhankai\" @click=\"onBack\"></i>\r\n <p>{{projectName}}</p>\r\n <!-- <span>环境变量:</span> -->\r\n <!-- <i-select class=\"diy-select\"></i-select> -->\r\n </div>\r\n <div class=\"btns\">\r\n <!-- <i-button type=\"primary\" ghost class=\"diy-btn-primary\" @click=\"onOpenGlobalModal\"> <i class=\"api-icon icon-setting\"></i>全局参数设置</i-button> -->\r\n <!-- <i-button type=\"success\" ghost class=\"diy-btn-success\" @click=\"onOpenCurrentModal\"><i class=\"api-icon icon-view\"></i>查看当前变量</i-button> -->\r\n <i-button v-if=\"projectId && projectName\" type=\"primary\" class=\"diy-btn-primary security-btn\" ghost @click=\"onSecurity\"><i class=\"iconfont icon-xinzengzhibiao\"></i>授权认证</i-button>\r\n <i-button v-if=\"projectId && projectName\" type=\"primary\" class=\"diy-btn-primary\" ghost @click=\"onOpenEnvModal\"><i class=\"iconfont icon-bianliang\"></i>环境变量</i-button>\r\n <i-button v-show=\"active.id\" type=\"primary\" class=\"diy-btn-primary\" ghost @click=\"onToggleLayout\"><i class=\"api-icon icon-switch\"></i>切换布局</i-button>\r\n </div>\r\n </header>\r\n <!-- <main> -->\r\n <i-split v-model=\"split\" min=\"200px\" max=\"900px\">\r\n <u-tree slot=\"left\" @on-check-interface=\"onCheckInterface\" @on-edit-interface-success=\"onEditInterfaceSuccess\" :project-id=\"projectId\" @on-success=\"onBatchSuccess\"></u-tree>\r\n <section slot=\"right\" class=\"interface-box\">\r\n <header class=\"interface-bar\">\r\n <swiper class=\"swiper\" :options=\"swiperOption\" @click-slide=\"onClickSlide\" @ready=\"onSwiperReadied\">\r\n <swiper-slide class=\"tag\" @click=\"onClickTag(item)\" :class=\"{'active': item.id === active.id}\" v-for=\"(item,index) in openInterfaceList\" :key=\"item.id\"\r\n ><span>{{item.name}}</span> <i-icon type=\"md-close\" @click.stop=\"onClose(index)\"></i-icon\r\n ></swiper-slide>\r\n </swiper>\r\n <!-- <div class=\"tag\" @click=\"onClickTag(item)\" :class=\"{'active': item.id === active.id}\" v-for=\"(item,index) in openInterfaceList\" :key=\"item.id\">\r\n <span>{{item.name}}</span>\r\n <i-icon type=\"md-close\" @click.stop=\"onClose(index)\"></i-icon>\r\n </div> -->\r\n </header>\r\n <u-settings ref=\"interface-settings\" :interface-model.sync=\"active\" :project-id=\"projectId\" v-if=\"active.id\" :lengthwise=\"lengthwise\"></u-settings>\r\n </section>\r\n </i-split>\r\n <i-spin fix v-show=\"loading\">\r\n <i class=\"spin-icon-load ivu-icon\"></i>\r\n </i-spin>\r\n <!-- </main> -->\r\n <u-global-modal :visiable.sync=\"showGlobalModal\">\r\n <footer slot=\"footer\">\r\n <i-button @click=\"showGlobalModal = false\">取消</i-button>\r\n <i-button type=\"primary\" class=\"diy-btn-primary\">确定</i-button>\r\n </footer>\r\n </u-global-modal>\r\n <u-current-modal :visiable.sync=\"showCurrentModal\"> </u-current-modal>\r\n <u-security-modal v-model=\"showSecurity\" :projectID=\"projectId\"></u-security-modal>\r\n <u-environment-modal :visiable.sync=\"showEnvironmentModal\" :projectId=\"projectId\" @on-refresh=\"onEnvironmentRefresh\"></u-environment-modal>\r\n</article>\r\n"
47471
47498
 
47472
47499
  /***/ }),
47473
47500
 
@@ -47596,14 +47623,14 @@ module.exports = fails(function () {
47596
47623
  /***/ "d8b4":
47597
47624
  /***/ (function(module, exports) {
47598
47625
 
47599
- module.exports = "<div class=\"v-parameter-list-container\">\n <main>\n <div class=\"parameter-table-btns\" v-if=\"isEdit\">\n <span class=\"table-btns table-btns-add\" @click=\"onAdd\">\n <i class=\"iconfont icon-add\"></i>\n <span class=\"table-btns-text\">新增</span>\n </span>\n <span class=\"table-btns table-btns-delete\" :class=\"selections.length ? '' : 'icon-button-disabled'\" @click=\"onBatchDelete\">\n <i class=\"iconfont icon-delete\"></i>\n <span class=\"table-btns-text\">批量删除</span>\n </span>\n </div>\n <template v-if=\"data?.length\">\n <i-table class=\"diy-table\" :columns=\"columns\" :data=\"data\" @on-selection-change=\"onSelectionChange\">\n <div slot=\"name\" slot-scope=\"{row}\">\n <i-input class=\"diy-input\" v-if=\"row.isEdit\" v-model=\"row.name\">{{row.name}}</i-input>\n <span v-else>{{row.name}}</span>\n </div>\n <div slot=\"type\" slot-scope=\"{row}\">\n <i-select class=\"diy-select\" v-if=\"row.isEdit\" v-model=\"row.type\" transfer>\n <i-option v-for=\"item in typeList\" :value=\"item.name\" :key=\"item.name\">{{item.text}}</i-option>\n </i-select>\n <span v-else>{{getTypeText(row.type)}}</span>\n </div>\n <div slot=\"required\" slot-scope=\"{row}\">\n <i-select class=\"diy-select\" v-if=\"row.isEdit\" :value=\"booleanObj[row.required]\" @on-change=\"onChangeRequired($event, row)\" transfer>\n <i-option :value=\"0\" key=\"0\">否</i-option>\n <i-option :value=\"1\" key=\"1\">是</i-option>\n </i-select>\n <span v-else>{{row.required ? \"是\" : \"否\"}}</span>\n </div>\n <div slot=\"defaultValue\" slot-scope=\"{row}\">\n <i-input class=\"diy-input\" v-if=\"row.isEdit\" v-model=\"row.defaultValue\"></i-input>\n <span v-else>{{row.defaultValue}}</span>\n </div>\n <div slot=\"description\" slot-scope=\"{row}\">\n <i-input class=\"diy-input\" v-if=\"row.isEdit\" v-model=\"row.description\"></i-input>\n <span v-else>{{row.description}}</span>\n </div>\n <div v-if=\"isEdit\" class=\"row-actions\" slot=\"actions\" slot-scope=\"{row,index}\">\n <div v-if=\"row.isEdit\" class=\"edit-status\">\n <i class=\"iconfont icon-ok\" title=\"确认\" @click=\"onConfirm(row, index)\"></i>\n <i class=\"iconfont icon-cancel\" title=\"取消\" @click=\"onCancel(index)\"></i>\n </div>\n <div v-else class=\"read-status\">\n <i class=\"iconfont icon-edit\" title=\"编辑\" @click=\"onEdit(row)\"></i>\n <i-poptip confirm transfer title=\"确认删除这条数据吗?\" @on-ok=\"onDelete(row, index)\">\n <i class=\"iconfont icon-delete\" title=\"删除\"> </i>\n </i-poptip>\n </div>\n </div>\n </i-table>\n </template>\n <template v-else>\n <div class=\"table-no-data-wrap\">\n <div class=\"table-no-data\">\n <div class=\"table-no-data-bg\"></div>\n <div class=\"table-no-data-text\">暂无数据</div>\n </div>\n </div>\n </template>\n </main>\n</div>\n"
47626
+ module.exports = "<div class=\"v-parameter-list-container\">\r\n <main>\r\n <div class=\"parameter-table-btns\" v-if=\"isEdit\">\r\n <span class=\"table-btns table-btns-add\" @click=\"onAdd\">\r\n <i class=\"iconfont icon-add\"></i>\r\n <span class=\"table-btns-text\">新增</span>\r\n </span>\r\n <span class=\"table-btns table-btns-delete\" :class=\"selections.length ? '' : 'icon-button-disabled'\" @click=\"onBatchDelete\">\r\n <i class=\"iconfont icon-delete\"></i>\r\n <span class=\"table-btns-text\">批量删除</span>\r\n </span>\r\n </div>\r\n <template v-if=\"data?.length\">\r\n <i-table class=\"diy-table\" :columns=\"columns\" :data=\"data\" @on-selection-change=\"onSelectionChange\">\r\n <div slot=\"name\" slot-scope=\"{row}\">\r\n <i-input class=\"diy-input\" v-if=\"row.isEdit\" v-model=\"row.name\">{{row.name}}</i-input>\r\n <span v-else>{{row.name}}</span>\r\n </div>\r\n <div slot=\"type\" slot-scope=\"{row}\">\r\n <i-select class=\"diy-select\" v-if=\"row.isEdit\" v-model=\"row.type\" transfer>\r\n <i-option v-for=\"item in typeList\" :value=\"item.name\" :key=\"item.name\">{{item.text}}</i-option>\r\n </i-select>\r\n <span v-else>{{getTypeText(row.type)}}</span>\r\n </div>\r\n <div slot=\"required\" slot-scope=\"{row}\">\r\n <i-select class=\"diy-select\" v-if=\"row.isEdit\" :value=\"booleanObj[row.required]\" @on-change=\"onChangeRequired($event, row)\" transfer>\r\n <i-option :value=\"0\" key=\"0\">否</i-option>\r\n <i-option :value=\"1\" key=\"1\">是</i-option>\r\n </i-select>\r\n <span v-else>{{row.required ? \"是\" : \"否\"}}</span>\r\n </div>\r\n <div slot=\"defaultValue\" slot-scope=\"{row}\">\r\n <i-input class=\"diy-input\" v-if=\"row.isEdit\" v-model=\"row.defaultValue\"></i-input>\r\n <span v-else>{{row.defaultValue}}</span>\r\n </div>\r\n <div slot=\"description\" slot-scope=\"{row}\">\r\n <i-input class=\"diy-input\" v-if=\"row.isEdit\" v-model=\"row.description\"></i-input>\r\n <span v-else>{{row.description}}</span>\r\n </div>\r\n <div v-if=\"isEdit\" class=\"row-actions\" slot=\"actions\" slot-scope=\"{row,index}\">\r\n <div v-if=\"row.isEdit\" class=\"edit-status\">\r\n <i class=\"iconfont icon-ok\" title=\"确认\" @click=\"onConfirm(row, index)\"></i>\r\n <i class=\"iconfont icon-cancel\" title=\"取消\" @click=\"onCancel(index)\"></i>\r\n </div>\r\n <div v-else class=\"read-status\">\r\n <i class=\"iconfont icon-edit\" title=\"编辑\" @click=\"onEdit(row)\"></i>\r\n <i-poptip confirm transfer title=\"确认删除这条数据吗?\" @on-ok=\"onDelete(row, index)\">\r\n <i class=\"iconfont icon-delete\" title=\"删除\"> </i>\r\n </i-poptip>\r\n </div>\r\n </div>\r\n </i-table>\r\n </template>\r\n <template v-else>\r\n <div class=\"table-no-data-wrap\">\r\n <div class=\"table-no-data\">\r\n <div class=\"table-no-data-bg\"></div>\r\n <div class=\"table-no-data-text\">暂无数据</div>\r\n </div>\r\n </div>\r\n </template>\r\n </main>\r\n</div>\r\n"
47600
47627
 
47601
47628
  /***/ }),
47602
47629
 
47603
47630
  /***/ "d8e7":
47604
47631
  /***/ (function(module, exports) {
47605
47632
 
47606
- module.exports = "<!DOCTYPE html>\n<article class=\"v-api-combine-info-wrapper\">\n <header class=\"header\">\n {{title}}\n </header>\n <main>\n <i-form ref=\"form\" class=\"info-form\" :model=\"model\" :rules=\"rules\">\n <i-row>\n <section class=\"title-g\">基本信息</section>\n <i-form-item label=\"名称:\" prop=\"name\">\n <i-input class=\"diy-input\" placeholder=\"请输入名称\" v-model=\"model.name\" :disabled=\"!isEdit\"></i-input>\n </i-form-item>\n <i-form-item label=\"编码:\" prop=\"code\">\n <i-input class=\"diy-input\" placeholder=\"请输入编码\" v-model=\"model.code\" :disabled=\"!isEdit\"></i-input>\n </i-form-item>\n <i-form-item class=\"full-width\" label=\"描述:\">\n <i-input type=\"textarea\" class=\"diy-input-textarea\" :rows=\"1\" placeholder=\"请输入描述\" v-model=\"model.description\" :disabled=\"!isEdit\"></i-input>\n </i-form-item>\n </i-row>\n <i-row>\n <section class=\"title-g\">待合并列表</section>\n <section class=\"to-combine-list\">\n <template v-if=\"isEdit\">\n <i-button class=\"diy-btn-default\" @click=\"onAddDataModel\">添加数据模型</i-button>\n <i-button class=\"diy-btn-default\" @click=\"onAddApiProject\">添加 API</i-button>\n </template>\n <template v-if=\"model.relations?.length\">\n <i-table class=\"diy-table\" :columns=\"relationColumns\" :data=\"model.relations\">\n <template #type=\"{row}\">\n <span>{{row.type==='MODEL'?'数据模型':row.type==='API'?'API':''}}</span>\n </template>\n <template #operates=\"{row,index}\">\n <div class=\"row-actions\">\n <i title=\"查看\" class=\"iconfont icon-rizhichakan\" @click=\"onDetail(row)\"></i>\n <i-poptip v-if=\"isEdit\" confirm transfer title=\"确认删除这条数据吗?\" @on-ok=\"onRelationDelete(row)\">\n <i title=\"删除\" class=\"iconfont icon-delete\"></i>\n </i-poptip>\n </div>\n </template>\n </i-table>\n </template>\n <template v-else>\n <div class=\"table-no-data\">\n <div class=\"table-no-data-bg\"></div>\n <div class=\"table-no-data-text\">暂无数据</div>\n </div>\n </template>\n </section>\n </i-row>\n <i-row>\n <section class=\"title-g\">参数详情</section>\n <section class=\"parameter-detail\">\n <section class=\"card-panel card-panel-no-right-border\">\n <i-tabs>\n <i-tab-pane label=\"请求参数\" name=\"request\">\n <u-request-parameter-list :data=\"model.reqParams\" :isEdit=\"isEdit\"></u-request-parameter-list>\n </i-tab-pane>\n <i-tab-pane label=\"响应参数\" name=\"response\">\n <u-response-parameter-list :data=\"model.respParams\" :isEdit=\"isEdit\"></u-response-parameter-list>\n </i-tab-pane>\n </i-tabs>\n </section>\n <section class=\"card-panel\">\n <div class=\"card-panel-header\">\n <div>\n <span>执行脚本</span>\n <i-icon class=\"help-icon\" type=\"md-alert\" @click=\"onOpenDoc\" title=\"帮助文档\"> </i-icon>\n </div>\n <span class=\"action-text\" @click.stop=\"onOpenTest\">\n <i class=\"iconfont icon-run\"></i>\n <span>试运行</span>\n </span>\n </div>\n <div class=\"card-panel-main\">\n <u-base-editor class=\"editor\" :data.sync=\"model.content\" :readOnly=\"!isEdit\"></u-base-editor>\n </div>\n </section>\n </section>\n </i-row>\n </i-form>\n </main>\n <footer>\n <template v-if=\"isEdit\">\n <i-button type=\"primary\" class=\"diy-btn-primary\" @click.stop=\"onSave\">确定</i-button>\n <i-button type=\"text\" class=\"diy-btn-text\" @click.stop=\"onBack\">取消</i-button>\n </template>\n <template v-else>\n <i-button type=\"primary\" class=\"diy-btn-primary\" @click.stop=\"onBack\">关闭</i-button>\n </template>\n </footer>\n <u-data-model-modal v-model=\"dataModelShow\" :data=\"dataModelRelations\" @save=\"onRelationsSave\"></u-data-model-modal>\n <u-api-project-modal v-model=\"apiProjectShow\" :data=\"apiProjectRelations\" @save=\"onRelationsSave\"></u-api-project-modal>\n <u-data-model-doc-modal v-model=\"dataModelDocShow\" :doc=\"dataModelDoc\"></u-data-model-doc-modal>\n <u-api-project-detail-modal :visiable.sync=\"apiProjectDetailShow\" :model=\"apiProjectDetail\"></u-api-project-detail-modal>\n <u-test-run-modal :visible.sync=\"testShow\" :params=\"model.reqParams\" :data=\"testResult\" @on-run=\"onTestRun\"></u-test-run-modal>\n <u-data-model-doc v-model=\"docShow\" :doc=\"doc\"></u-data-model-doc>\n</article>\n"
47633
+ module.exports = "<!DOCTYPE html>\r\n<article class=\"v-api-combine-info-wrapper\">\r\n <header class=\"header\">\r\n {{title}}\r\n </header>\r\n <main>\r\n <i-form ref=\"form\" class=\"info-form\" :model=\"model\" :rules=\"rules\">\r\n <i-row>\r\n <section class=\"title-g\">基本信息</section>\r\n <i-form-item label=\"名称:\" prop=\"name\">\r\n <i-input class=\"diy-input\" placeholder=\"请输入名称\" v-model=\"model.name\" :disabled=\"!isEdit\"></i-input>\r\n </i-form-item>\r\n <i-form-item label=\"编码:\" prop=\"code\">\r\n <i-input class=\"diy-input\" placeholder=\"请输入编码\" v-model=\"model.code\" :disabled=\"!isEdit\"></i-input>\r\n </i-form-item>\r\n <i-form-item class=\"full-width\" label=\"描述:\">\r\n <i-input type=\"textarea\" class=\"diy-input-textarea\" :rows=\"1\" placeholder=\"请输入描述\" v-model=\"model.description\" :disabled=\"!isEdit\"></i-input>\r\n </i-form-item>\r\n </i-row>\r\n <i-row>\r\n <section class=\"title-g\">待合并列表</section>\r\n <section class=\"to-combine-list\">\r\n <template v-if=\"isEdit\">\r\n <i-button class=\"diy-btn-default\" @click=\"onAddDataModel\">添加数据模型</i-button>\r\n <i-button class=\"diy-btn-default\" @click=\"onAddApiProject\">添加 API</i-button>\r\n </template>\r\n <template v-if=\"model.relations?.length\">\r\n <i-table class=\"diy-table\" :columns=\"relationColumns\" :data=\"model.relations\">\r\n <template #type=\"{row}\">\r\n <span>{{row.type==='MODEL'?'数据模型':row.type==='API'?'API':''}}</span>\r\n </template>\r\n <template #operates=\"{row,index}\">\r\n <div class=\"row-actions\">\r\n <i title=\"查看\" class=\"iconfont icon-rizhichakan\" @click=\"onDetail(row)\"></i>\r\n <i-poptip v-if=\"isEdit\" confirm transfer title=\"确认删除这条数据吗?\" @on-ok=\"onRelationDelete(row)\">\r\n <i title=\"删除\" class=\"iconfont icon-delete\"></i>\r\n </i-poptip>\r\n </div>\r\n </template>\r\n </i-table>\r\n </template>\r\n <template v-else>\r\n <div class=\"table-no-data\">\r\n <div class=\"table-no-data-bg\"></div>\r\n <div class=\"table-no-data-text\">暂无数据</div>\r\n </div>\r\n </template>\r\n </section>\r\n </i-row>\r\n <i-row>\r\n <section class=\"title-g\">参数详情</section>\r\n <section class=\"parameter-detail\">\r\n <section class=\"card-panel card-panel-no-right-border\">\r\n <i-tabs>\r\n <i-tab-pane label=\"请求参数\" name=\"request\">\r\n <u-request-parameter-list :data=\"model.reqParams\" :isEdit=\"isEdit\"></u-request-parameter-list>\r\n </i-tab-pane>\r\n <i-tab-pane label=\"响应参数\" name=\"response\">\r\n <u-response-parameter-list :data=\"model.respParams\" :isEdit=\"isEdit\"></u-response-parameter-list>\r\n </i-tab-pane>\r\n </i-tabs>\r\n </section>\r\n <section class=\"card-panel\">\r\n <div class=\"card-panel-header\">\r\n <div>\r\n <span>执行脚本</span>\r\n <i-icon class=\"help-icon\" type=\"md-alert\" @click=\"onOpenDoc\" title=\"帮助文档\"> </i-icon>\r\n </div>\r\n <span class=\"action-text\" @click.stop=\"onOpenTest\">\r\n <i class=\"iconfont icon-run\"></i>\r\n <span>试运行</span>\r\n </span>\r\n </div>\r\n <div class=\"card-panel-main\">\r\n <u-base-editor class=\"editor\" :data.sync=\"model.content\" :readOnly=\"!isEdit\"></u-base-editor>\r\n </div>\r\n </section>\r\n </section>\r\n </i-row>\r\n </i-form>\r\n </main>\r\n <footer>\r\n <template v-if=\"isEdit\">\r\n <i-button type=\"primary\" class=\"diy-btn-primary\" @click.stop=\"onSave\">确定</i-button>\r\n <i-button type=\"text\" class=\"diy-btn-text\" @click.stop=\"onBack\">取消</i-button>\r\n </template>\r\n <template v-else>\r\n <i-button type=\"primary\" class=\"diy-btn-primary\" @click.stop=\"onBack\">关闭</i-button>\r\n </template>\r\n </footer>\r\n <u-data-model-modal v-model=\"dataModelShow\" :data=\"dataModelRelations\" @save=\"onRelationsSave\"></u-data-model-modal>\r\n <u-api-project-modal v-model=\"apiProjectShow\" :data=\"apiProjectRelations\" @save=\"onRelationsSave\"></u-api-project-modal>\r\n <u-data-model-doc-modal v-model=\"dataModelDocShow\" :doc=\"dataModelDoc\"></u-data-model-doc-modal>\r\n <u-api-project-detail-modal :visiable.sync=\"apiProjectDetailShow\" :model=\"apiProjectDetail\"></u-api-project-detail-modal>\r\n <u-test-run-modal :visible.sync=\"testShow\" :params=\"model.reqParams\" :data=\"testResult\" @on-run=\"onTestRun\"></u-test-run-modal>\r\n <u-data-model-doc v-model=\"docShow\" :doc=\"doc\"></u-data-model-doc>\r\n</article>\r\n"
47607
47634
 
47608
47635
  /***/ }),
47609
47636
 
@@ -47617,7 +47644,7 @@ module.exports = "<!DOCTYPE html>\n<article class=\"v-api-combine-info-wrapper\"
47617
47644
  /***/ "d953":
47618
47645
  /***/ (function(module, exports) {
47619
47646
 
47620
- module.exports = "<div class=\"interface-tree-node\">\n <span v-if=\"isLeaf && data.method\" class=\"method\" :class=\"data.method.toLowerCase() \" @click=\"onClick\"\n >{{data.method}}</span\n >\n <i :class=\"isLeaf ? 'iconfont icon-API' : 'iconfont icon-APIfenzu2'\" @click=\"onClick\"></i>\n <span class=\"interface-tree-node-name\" :title=\"data.title\" @click=\"onClick\">{{data.title}}</span>\n <i-dropdown\n transfer\n stop-propagation\n class=\"diy-dropdown\"\n transfer-class-name=\"diy-transfer-dropdown\"\n @on-click=\"onClickAction\"\n >\n <i class=\"api-icon icon-more\"></i>\n <i-dropdown-menu slot=\"list\">\n <template v-if=\"isLeaf\">\n <i-dropdown-item name=\"edit-interface\">修改</i-dropdown-item>\n <i-dropdown-item name=\"delete-interface\">删除</i-dropdown-item>\n <i-dropdown-item name=\"copy-interface\">复制</i-dropdown-item>\n </template>\n <template v-else>\n <i-dropdown-item name=\"edit-group\">修改</i-dropdown-item>\n <i-dropdown-item name=\"add-interface\">新增接口</i-dropdown-item>\n <i-dropdown-item name=\"edit-attribute\">批量修改属性</i-dropdown-item>\n <u-confirm\n title=\"删除接口\"\n @on-ok=\"onDelete('delete-group')\"\n message=\"分组内的接口一并删除, 是否确认执行?\"\n >\n <i-dropdown-item>删除</i-dropdown-item>\n </u-confirm>\n </template>\n </i-dropdown-menu>\n </i-dropdown>\n</div>\n"
47647
+ module.exports = "<div class=\"interface-tree-node\">\r\n <span v-if=\"isLeaf && data.method\" class=\"method\" :class=\"data.method.toLowerCase() \" @click=\"onClick\"\r\n >{{data.method}}</span\r\n >\r\n <i :class=\"isLeaf ? 'iconfont icon-API' : 'iconfont icon-APIfenzu2'\" @click=\"onClick\"></i>\r\n <span class=\"interface-tree-node-name\" :title=\"data.title\" @click=\"onClick\">{{data.title}}</span>\r\n <i-dropdown\r\n transfer\r\n stop-propagation\r\n class=\"diy-dropdown\"\r\n transfer-class-name=\"diy-transfer-dropdown\"\r\n @on-click=\"onClickAction\"\r\n >\r\n <i class=\"api-icon icon-more\"></i>\r\n <i-dropdown-menu slot=\"list\">\r\n <template v-if=\"isLeaf\">\r\n <i-dropdown-item name=\"edit-interface\">修改</i-dropdown-item>\r\n <i-dropdown-item name=\"delete-interface\">删除</i-dropdown-item>\r\n <i-dropdown-item name=\"copy-interface\">复制</i-dropdown-item>\r\n </template>\r\n <template v-else>\r\n <i-dropdown-item name=\"edit-group\">修改</i-dropdown-item>\r\n <i-dropdown-item name=\"add-interface\">新增接口</i-dropdown-item>\r\n <i-dropdown-item name=\"edit-attribute\">批量修改属性</i-dropdown-item>\r\n <u-confirm\r\n title=\"删除接口\"\r\n @on-ok=\"onDelete('delete-group')\"\r\n message=\"分组内的接口一并删除, 是否确认执行?\"\r\n >\r\n <i-dropdown-item>删除</i-dropdown-item>\r\n </u-confirm>\r\n </template>\r\n </i-dropdown-menu>\r\n </i-dropdown>\r\n</div>\r\n"
47621
47648
 
47622
47649
  /***/ }),
47623
47650
 
@@ -48703,7 +48730,7 @@ if ($stringify) {
48703
48730
  /***/ "ef27":
48704
48731
  /***/ (function(module, exports) {
48705
48732
 
48706
- module.exports = "<article class=\"project-card\" @click=\"onDetail\">\n <header>{{data.name}}</header>\n <i-dropdown transfer transfer-class-name=\"api-project-oprate\" class=\"project-card-i-dropdown\" @on-click=\"onClick\">\n <i-icon type=\"ios-more\" />\n <i-dropdown-menu slot=\"list\">\n <i-dropdown-item :name=\"'export'\">\n <i\n class=\"api-icon icon-export project-card-i-dropdown-item-icon\"\n title=\"导出此项目\"\n @click.stop=\"onExport\"\n ></i>\n 导出此项目\n </i-dropdown-item>\n </i-dropdown-menu>\n </i-dropdown>\n <main></main>\n <footer>\n <div @click.stop=\"onEdit\">修改</div>\n <u-confirm\n class=\"delete\"\n title=\"删除项目\"\n message=\"项目内所有接口将被一并删除, 是否确认执行?\"\n @on-ok=\"onDelete\"\n >\n <span>删除</span>\n </u-confirm>\n </footer>\n</article>\n"
48733
+ module.exports = "<article class=\"project-card\" @click=\"onDetail\">\r\n <header>{{data.name}}</header>\r\n <i-dropdown transfer transfer-class-name=\"api-project-oprate\" class=\"project-card-i-dropdown\" @on-click=\"onClick\">\r\n <i-icon type=\"ios-more\" />\r\n <i-dropdown-menu slot=\"list\">\r\n <i-dropdown-item :name=\"'export'\">\r\n <i\r\n class=\"api-icon icon-export project-card-i-dropdown-item-icon\"\r\n title=\"导出此项目\"\r\n @click.stop=\"onExport\"\r\n ></i>\r\n 导出此项目\r\n </i-dropdown-item>\r\n </i-dropdown-menu>\r\n </i-dropdown>\r\n <main></main>\r\n <footer>\r\n <div @click.stop=\"onEdit\">修改</div>\r\n <u-confirm\r\n class=\"delete\"\r\n title=\"删除项目\"\r\n message=\"项目内所有接口将被一并删除, 是否确认执行?\"\r\n @on-ok=\"onDelete\"\r\n >\r\n <span>删除</span>\r\n </u-confirm>\r\n </footer>\r\n</article>\r\n"
48707
48734
 
48708
48735
  /***/ }),
48709
48736
 
@@ -48843,7 +48870,7 @@ module.exports = uncurryThis([].slice);
48843
48870
  /***/ "f40e":
48844
48871
  /***/ (function(module, exports) {
48845
48872
 
48846
- module.exports = "<article class=\"interface-settings\" :class=\"{'script-max': scriptView}\">\r\n <header v-show=\"!scriptView\">\r\n<!-- <i-input class=\"diy-input\" v-model=\"interfaceModel.info.url\">-->\r\n<!-- <i-select transfer slot=\"prepend\" class=\"diy-select\" v-model=\"interfaceModel.info.method\">-->\r\n<!-- <i-option v-for=\"item in typeList\" :key=\"item.value\" :value=\"item.value\">{{item.text}}</i-option>-->\r\n<!-- </i-select>-->\r\n<!-- </i-input>-->\r\n <i-select class=\"diy-select method-select\" v-model=\"interfaceModel.info.method\">\r\n <i-option v-for=\"item in typeList\" :key=\"item.value\" :value=\"item.value\">{{item.text}}</i-option>\r\n </i-select>\r\n <i-select ref=\"addEnvParamSelect\" class=\"diy-select env-select\" v-model=\"interfaceModel.info.envId\" placeholder=\"请选择环境变量\" clearable>\r\n <i-option v-for=\"item in paramList\" :key=\"item.id\" :value=\"item.id\">{{item.name + \":\" + item.value}}</i-option>\r\n <i-option class=\"add-security-item\" value=\"''\">\r\n <div class=\"add-security-item-content\" @click.stop=\"onAddEnvParam\">\r\n <i class=\"api-icon icon-add\"></i>\r\n <span>新增环境变量</span>\r\n </div>\r\n </i-option>\r\n </i-select>\r\n <i-input class=\"diy-input url-input\" v-model=\"interfaceModel.info.url\"></i-input>\r\n\r\n <i-button type=\"primary\" class=\"diy-btn-primary submit-btn\" @click=\"onRun\">发送</i-button>\r\n <i-button type=\"primary\" class=\"diy-btn-primary\" @click=\"onSave\" ghost>保存</i-button>\r\n <i-button type=\"primary\" class=\"diy-btn-primary his-btn\" @click=\"onVersion\" ghost>查看历史版本</i-button>\r\n <i class=\"export iconfont icon-xiazai\" title=\"导出\" type=\"md-download\" @click=\"onExport\"></i>\r\n <i-upload action=\"\" :before-upload=\"onImport\" :show-upload-list=\"false\">\r\n <i class=\"import iconfont icon-shangchuan\" title=\"导入\" type=\"md-cloud-upload\"></i>\r\n </i-upload>\r\n\r\n </header>\r\n <main :class=\"{'transverse': !lengthwise}\">\r\n <section class=\"request\">\r\n <div v-show=\"!scriptView\" class=\"request-bar\">\r\n <div\r\n class=\"tag\"\r\n :class=\"{'active': currentRequestSettingType.name.indexOf(item.name) === 0}\"\r\n v-for=\"(item,index) in requertSettingTypeList\"\r\n :key=\"item.name\"\r\n @click=\"onClickRequertSettingTpye(item)\"\r\n >\r\n <span>{{item.title}}</span>\r\n </div>\r\n </div>\r\n <div class=\"request-content\">\r\n <component\r\n :is=\"currentRequestSettingType.name\"\r\n :lengthwise=\"lengthwise\"\r\n :interface-model=\"interfaceModel\"\r\n :response=\"response\"\r\n :key=\"interfaceModel.info.id + currentRequestSettingType.name\"\r\n :projectID=\"projectId\"\r\n :currentSecurityID=\"currentId\"\r\n :errorLine=\"!originId || originId === interfaceModel.info.id ? errorLine : []\"\r\n @on-current-id=\"onCurrentId\"\r\n @on-script-run=\"onScriptRun\"\r\n @on-script-save=\"onSave\"\r\n @on-script-max=\"onScriptMax\"\r\n ></component>\r\n </div>\r\n </section>\r\n <response :key=\"interfaceModel.info.id + 'response'\" :lengthwise=\"lengthwise\" :response=\"response\"></response>\r\n </main>\r\n <i-spin fix v-show=\"loading\">\r\n <i class=\"spin-icon-load ivu-icon\"></i>\r\n </i-spin>\r\n <u-environment-modal :visiable.sync=\"showEnvironmentModal\" :projectId=\"projectId\" @on-refresh=\"getEnvironmentParamList\" :isAdd=\"true\"></u-environment-modal>\r\n</article>\r\n"
48873
+ module.exports = "<article class=\"interface-settings\" :class=\"{'script-max': scriptView}\">\r\n <header v-show=\"!scriptView\">\r\n<!-- <i-input class=\"diy-input\" v-model=\"interfaceModel.info.url\">-->\r\n<!-- <i-select transfer slot=\"prepend\" class=\"diy-select\" v-model=\"interfaceModel.info.method\">-->\r\n<!-- <i-option v-for=\"item in typeList\" :key=\"item.value\" :value=\"item.value\">{{item.text}}</i-option>-->\r\n<!-- </i-select>-->\r\n<!-- </i-input>-->\r\n <i-select class=\"diy-select method-select\" v-model=\"interfaceModel.info.method\">\r\n <i-option v-for=\"item in typeList\" :key=\"item.value\" :value=\"item.value\">{{item.text}}</i-option>\r\n </i-select>\r\n <i-select ref=\"addEnvParamSelect\" class=\"diy-select env-select\" v-model=\"interfaceModel.info.envId\" placeholder=\"请选择环境变量\" clearable>\r\n <i-option v-for=\"item in paramList\" :key=\"item.id\" :value=\"item.id\">{{item.name + \":\" + item.value}}</i-option>\r\n <i-option class=\"add-security-item\" value=\"''\">\r\n <div class=\"add-security-item-content\" @click.stop=\"onAddEnvParam\">\r\n <i class=\"api-icon icon-add\"></i>\r\n <span>新增环境变量</span>\r\n </div>\r\n </i-option>\r\n </i-select>\r\n <i-input class=\"diy-input url-input\" v-model=\"interfaceModel.info.url\"></i-input>\r\n\r\n <i-button type=\"primary\" class=\"diy-btn-primary submit-btn\" @click=\"onRun\">发送</i-button>\r\n <i-button type=\"primary\" class=\"diy-btn-primary\" @click=\"onSave\" ghost>保存</i-button>\r\n <i-button type=\"primary\" class=\"diy-btn-primary his-btn\" @click=\"onVersion\" ghost>查看历史版本</i-button>\r\n <i class=\"export iconfont icon-xiazai\" title=\"导出\" type=\"md-download\" @click=\"onExport\"></i>\r\n <i-upload action=\"\" :before-upload=\"onImport\" :show-upload-list=\"false\">\r\n <i class=\"import iconfont icon-shangchuan\" title=\"导入\" type=\"md-cloud-upload\"></i>\r\n </i-upload>\r\n\r\n </header>\r\n <main :class=\"{'transverse': !lengthwise}\">\r\n <section class=\"request\">\r\n <div v-show=\"!scriptView\" class=\"request-bar\">\r\n <div\r\n class=\"tag\"\r\n :class=\"{'active': currentRequestSettingType.name.indexOf(item.name) === 0}\"\r\n v-for=\"(item,index) in requertSettingTypeList\"\r\n :key=\"item.name\"\r\n @click=\"onClickRequertSettingTpye(item)\"\r\n >\r\n <span>{{item.title}}</span>\r\n </div>\r\n </div>\r\n <div class=\"request-content\">\r\n <component\r\n :is=\"currentRequestSettingType.name\"\r\n :lengthwise=\"lengthwise\"\r\n :interface-model=\"interfaceModel\"\r\n :response=\"response\"\r\n :key=\"interfaceModel.info.id + currentRequestSettingType.name\"\r\n :projectID=\"projectId\"\r\n :currentSecurityID=\"currentId\"\r\n :errorLine=\"!originId || originId === interfaceModel.info.id ? errorLine : []\"\r\n @on-current-id=\"onCurrentId\"\r\n @on-script-run=\"onScriptRun\"\r\n @on-script-save=\"onSave\"\r\n @on-script-max=\"onScriptMax\"\r\n ></component>\r\n </div>\r\n </section>\r\n <response :key=\"interfaceModel.info.id + 'response'\" :lengthwise=\"lengthwise\" :response=\"response\"></response>\r\n </main>\r\n <i-spin fix v-show=\"loading\">\r\n <i class=\"spin-icon-load ivu-icon\"></i>\r\n </i-spin>\r\n <u-environment-modal :visiable.sync=\"showEnvironmentModal\" :projectId=\"projectId\" @on-refresh=\"getEnvironmentParamList\" :isAdd=\"true\"></u-environment-modal>\r\n <i-modal class=\"diy-modal edit-import-name\" v-model=\"showImportModal\" :mask-closable=\"false\">\r\n <p slot=\"header\">编辑名称</p>\r\n <i-form ref=\"import\" :model=\"apiForm\" :rules=\"rules\">\r\n <i-form-item label=\"环境变量:\" prop=\"envName\">\r\n <i-input v-model=\"apiForm.envName\"></i-input>\r\n </i-form-item>\r\n\r\n <i-form-item label=\"授权:\" prop=\"authName\">\r\n <i-input v-model=\"apiForm.authName\"></i-input>\r\n </i-form-item>\r\n </i-form>\r\n <div class=\"handle-btn\" slot=\"footer\">\r\n <i-button class=\"diy-btn-primary\" type=\"primary\" @click.stop=\"saveImportData(importObj)\">确定</i-button>\r\n <i-button class=\"diy-btn-text\" @click.stop=\"cancleModify\">取消</i-button>\r\n </div>\r\n </i-modal>\r\n</article>\r\n"
48847
48874
 
48848
48875
  /***/ }),
48849
48876
 
@@ -56293,7 +56320,6 @@ var request_parameter_list = __webpack_require__("9e10");
56293
56320
 
56294
56321
 
56295
56322
 
56296
-
56297
56323
 
56298
56324
  var request_parameter_list_extends = undefined && undefined.__extends || function () {
56299
56325
  var _extendStatics = function extendStatics(d, b) {
@@ -56323,22 +56349,6 @@ var request_parameter_list_extends = undefined && undefined.__extends || functio
56323
56349
  };
56324
56350
  }();
56325
56351
 
56326
- var request_parameter_list_assign = undefined && undefined.__assign || function () {
56327
- request_parameter_list_assign = Object.assign || function (t) {
56328
- for (var s, i = 1, n = arguments.length; i < n; i++) {
56329
- s = arguments[i];
56330
-
56331
- for (var p in s) {
56332
- if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
56333
- }
56334
- }
56335
-
56336
- return t;
56337
- };
56338
-
56339
- return request_parameter_list_assign.apply(this, arguments);
56340
- };
56341
-
56342
56352
  var request_parameter_list_decorate = undefined && undefined.__decorate || function (decorators, target, key, desc) {
56343
56353
  var c = arguments.length,
56344
56354
  r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc,
@@ -56571,9 +56581,8 @@ function (_super) {
56571
56581
  };
56572
56582
 
56573
56583
  RequestParameterList.prototype.onCancel = function (index) {
56574
- this.data.splice(index, 1, request_parameter_list_assign(request_parameter_list_assign({}, this.data[index]), {
56575
- isEdit: false
56576
- }));
56584
+ // this.data.splice(index, 1, { ...this.data[index], isEdit: false });
56585
+ this.data.splice(index, 1);
56577
56586
  };
56578
56587
 
56579
56588
  RequestParameterList.prototype.onDelete = function (row, index) {
@@ -58988,7 +58997,11 @@ function (_super) {
58988
58997
  };
58989
58998
 
58990
58999
  ApiService.prototype.onImportAvr = function (data) {
58991
- return this._post("/unity/api/info/import-var", data);
59000
+ return this._post("/unity/api/info/import-model", data);
59001
+ };
59002
+
59003
+ ApiService.prototype.onValidateImport = function (data) {
59004
+ return this._post("/unity/api/info/check-name", data);
58992
59005
  };
58993
59006
 
58994
59007
  var _a, _b;
@@ -59109,6 +59122,11 @@ function (_super) {
59109
59122
  showErrorMsg: true
59110
59123
  }), project_detail_service_metadata("design:type", Function), project_detail_service_metadata("design:paramtypes", [Object]), project_detail_service_metadata("design:returntype", void 0)], ApiService.prototype, "onImportAvr", null);
59111
59124
 
59125
+ project_detail_service_decorate([serviceHandler("query", {
59126
+ title: "单接口详情导入",
59127
+ showErrorMsg: true
59128
+ }), project_detail_service_metadata("design:type", Function), project_detail_service_metadata("design:paramtypes", [Object]), project_detail_service_metadata("design:returntype", void 0)], ApiService.prototype, "onValidateImport", null);
59129
+
59112
59130
  return ApiService;
59113
59131
  }(common_service);
59114
59132
 
@@ -59806,6 +59824,9 @@ function (_super) {
59806
59824
  }(flagwind_web_["View"]);
59807
59825
 
59808
59826
  /* harmony default export */ var views_project_comment = (project_comment_ProjectComment);
59827
+ // EXTERNAL MODULE: ./node_modules/core-js/modules/es.array.join.js
59828
+ var es_array_join = __webpack_require__("a15b");
59829
+
59809
59830
  // EXTERNAL MODULE: ./src/views/project-detail/current-variable-modal/index.scss
59810
59831
  var current_variable_modal = __webpack_require__("8b9b");
59811
59832
 
@@ -64243,6 +64264,14 @@ function (_super) {
64243
64264
  _this.errorLine = null;
64244
64265
  _this.originId = "";
64245
64266
  _this.scriptView = false;
64267
+ _this.apiForm = {
64268
+ envName: null,
64269
+ authName: null
64270
+ };
64271
+ _this.showImportModal = false; // 导入校验名称弹窗
64272
+
64273
+ _this.importObj = {}; // 解析的导入文件数据
64274
+
64246
64275
  _this.typeList = [{
64247
64276
  value: "GET",
64248
64277
  text: "GET"
@@ -64279,6 +64308,18 @@ function (_super) {
64279
64308
  title: "后置脚本",
64280
64309
  name: "after-execution-script"
64281
64310
  }];
64311
+ _this.rules = {
64312
+ envName: [{
64313
+ required: false,
64314
+ validator: _this.validateEnvName,
64315
+ trigger: "blur"
64316
+ }],
64317
+ authName: [{
64318
+ required: false,
64319
+ validator: _this.validateAuthName,
64320
+ trigger: "blur"
64321
+ }]
64322
+ };
64282
64323
  _this.currentRequestSettingType = _this.requertSettingTypeList[0];
64283
64324
  return _this;
64284
64325
  }
@@ -64393,6 +64434,12 @@ function (_super) {
64393
64434
  this.response = this.responseCache.get(this.interfaceModel.info.id) || new Response();
64394
64435
  };
64395
64436
 
64437
+ InterfaceSettings.prototype.showImportModalChange = function (value) {
64438
+ if (!value) {
64439
+ this.$refs.import.resetFields();
64440
+ }
64441
+ };
64442
+
64396
64443
  InterfaceSettings.prototype.onImport = function (file) {
64397
64444
  return interface_settings_awaiter(this, void 0, void 0, function () {
64398
64445
  var reader;
@@ -64405,69 +64452,37 @@ function (_super) {
64405
64452
 
64406
64453
  reader.onload = function (evt) {
64407
64454
  return interface_settings_awaiter(_this, void 0, void 0, function () {
64408
- var fileString, obj, params, res, apiId;
64455
+ var fileString, obj;
64409
64456
 
64410
64457
  var _a, _b, _c, _d, _e, _f;
64411
64458
 
64412
64459
  return interface_settings_generator(this, function (_g) {
64413
- switch (_g.label) {
64414
- case 0:
64415
- fileString = evt.target.result;
64416
- obj = null;
64417
-
64418
- try {
64419
- obj = JSON.parse(fileString);
64420
- } catch (error) {
64421
- this.$message.error("JSON格式有误");
64422
- return [2
64423
- /*return*/
64424
- , false];
64425
- }
64460
+ fileString = evt.target.result;
64461
+ obj = null;
64426
64462
 
64427
- params = {
64428
- projectId: this.projectId,
64429
- authentication: (obj === null || obj === void 0 ? void 0 : obj.authentication) || null,
64430
- environmentParam: (obj === null || obj === void 0 ? void 0 : obj.environmentParam) || null
64431
- };
64432
- return [4
64433
- /*yield*/
64434
- , this.service.onImportAvr(params)];
64435
-
64436
- case 1:
64437
- res = _g.sent();
64438
-
64439
- if (!(res === null || res === void 0 ? void 0 : res.hasError)) {
64440
- this.getEnvironmentParamList();
64441
- obj.environmentParam = ((_a = res === null || res === void 0 ? void 0 : res.result) === null || _a === void 0 ? void 0 : _a.environmentParam) || null;
64442
- obj.authentication = ((_b = res === null || res === void 0 ? void 0 : res.result) === null || _b === void 0 ? void 0 : _b.authentication) || null;
64443
- obj.info.envId = ((_d = (_c = res === null || res === void 0 ? void 0 : res.result) === null || _c === void 0 ? void 0 : _c.environmentParam) === null || _d === void 0 ? void 0 : _d.id) || null;
64444
- obj.info.authId = ((_f = (_e = res === null || res === void 0 ? void 0 : res.result) === null || _e === void 0 ? void 0 : _e.authentication) === null || _f === void 0 ? void 0 : _f.id) || null;
64445
- } else {
64446
- return [2
64447
- /*return*/
64448
- ];
64449
- }
64463
+ try {
64464
+ obj = JSON.parse(fileString);
64465
+ this.importObj = obj;
64466
+ } catch (error) {
64467
+ this.$message.error("JSON格式有误");
64468
+ return [2
64469
+ /*return*/
64470
+ , false];
64471
+ } // 当授权或环境变量都不存在时则直接执行保存事件
64450
64472
 
64451
- apiId = this.interfaceModel.info.id;
64452
- obj.id = apiId;
64453
- obj.info.id = apiId;
64454
- obj.info.name = this.interfaceModel.info.name;
64455
- obj.info.projectId = this.projectId;
64456
- obj.info.categoryId = this.interfaceModel.info.categoryId;
64457
- obj.convertConfig && (obj.convertConfig.apiId = apiId);
64458
- ["fieldMappings", "postScripts", "preScripts", "queryParams", "formParams"].forEach(function (key) {
64459
- obj === null || obj === void 0 ? void 0 : obj[key].forEach(function (f) {
64460
- f.apiId = apiId;
64461
- });
64462
- });
64463
- obj === null || obj === void 0 ? void 0 : obj.requestHeaders.forEach(function (f) {
64464
- f.belongId = apiId;
64465
- });
64466
- this.$emit("update:interfaceModel", obj);
64467
- return [2
64468
- /*return*/
64469
- ];
64473
+
64474
+ if (!((_a = obj === null || obj === void 0 ? void 0 : obj.authentication) === null || _a === void 0 ? void 0 : _a.name) && !((_b = obj === null || obj === void 0 ? void 0 : obj.environmentParam) === null || _b === void 0 ? void 0 : _b.name)) {
64475
+ this.saveImportData(obj);
64476
+ } else {
64477
+ // 当授权或环境变量只要一个不为空则回显值且打开名称修改弹窗
64478
+ this.apiForm.envName = ((_c = obj === null || obj === void 0 ? void 0 : obj.environmentParam) === null || _c === void 0 ? void 0 : _c.name) ? (_d = obj === null || obj === void 0 ? void 0 : obj.environmentParam) === null || _d === void 0 ? void 0 : _d.name : null;
64479
+ this.apiForm.authName = ((_e = obj === null || obj === void 0 ? void 0 : obj.authentication) === null || _e === void 0 ? void 0 : _e.name) ? (_f = obj === null || obj === void 0 ? void 0 : obj.authentication) === null || _f === void 0 ? void 0 : _f.name : null;
64480
+ this.showImportModal = true;
64470
64481
  }
64482
+
64483
+ return [2
64484
+ /*return*/
64485
+ ];
64471
64486
  });
64472
64487
  });
64473
64488
  };
@@ -64478,6 +64493,84 @@ function (_super) {
64478
64493
  });
64479
64494
  });
64480
64495
  };
64496
+ /**
64497
+ * 选择导入文件且名称校验弹窗通过之后的保存事件
64498
+ * @param obj 导入文件解析之后的数据
64499
+ * @returns
64500
+ */
64501
+
64502
+
64503
+ InterfaceSettings.prototype.saveImportData = function (obj) {
64504
+ var _a, _b;
64505
+
64506
+ return interface_settings_awaiter(this, void 0, void 0, function () {
64507
+ var valid, apiId, res;
64508
+ return interface_settings_generator(this, function (_c) {
64509
+ switch (_c.label) {
64510
+ case 0:
64511
+ if (!(((_a = obj === null || obj === void 0 ? void 0 : obj.authentication) === null || _a === void 0 ? void 0 : _a.name) || ((_b = obj === null || obj === void 0 ? void 0 : obj.environmentParam) === null || _b === void 0 ? void 0 : _b.name))) return [3
64512
+ /*break*/
64513
+ , 2];
64514
+ return [4
64515
+ /*yield*/
64516
+ , this.$refs.import.validate()];
64517
+
64518
+ case 1:
64519
+ valid = _c.sent();
64520
+
64521
+ if (!valid) {
64522
+ this.$message.warning("验证不通过");
64523
+ return [2
64524
+ /*return*/
64525
+ ];
64526
+ }
64527
+
64528
+ _c.label = 2;
64529
+
64530
+ case 2:
64531
+ apiId = this.interfaceModel.info.id;
64532
+ obj.id = apiId;
64533
+ obj.info.id = apiId;
64534
+ obj.info.name = this.interfaceModel.info.name;
64535
+ obj.info.projectId = this.projectId;
64536
+ obj.info.categoryId = this.interfaceModel.info.categoryId;
64537
+ obj.authentication && (obj.authentication.projectId = this.projectId);
64538
+ obj.authentication && (obj.authentication.name = this.apiForm.authName);
64539
+ obj.environmentParam && (obj.environmentParam.projectId = this.projectId);
64540
+ obj.environmentParam && (obj.environmentParam.name = this.apiForm.envName);
64541
+ obj.convertConfig && (obj.convertConfig.apiId = apiId);
64542
+ ["fieldMappings", "postScripts", "preScripts", "queryParams", "formParams"].forEach(function (key) {
64543
+ obj === null || obj === void 0 ? void 0 : obj[key].forEach(function (f) {
64544
+ f.apiId = apiId;
64545
+ });
64546
+ });
64547
+ obj === null || obj === void 0 ? void 0 : obj.requestHeaders.forEach(function (f) {
64548
+ f.belongId = apiId;
64549
+ });
64550
+ return [4
64551
+ /*yield*/
64552
+ , this.service.onImportAvr(obj)];
64553
+
64554
+ case 3:
64555
+ res = _c.sent();
64556
+
64557
+ if (!(res === null || res === void 0 ? void 0 : res.hasError)) {
64558
+ this.showImportModal = false;
64559
+ this.getEnvironmentParamList();
64560
+ this.$publish("api://project-detail-save");
64561
+ } else {
64562
+ return [2
64563
+ /*return*/
64564
+ ];
64565
+ }
64566
+
64567
+ return [2
64568
+ /*return*/
64569
+ ];
64570
+ }
64571
+ });
64572
+ });
64573
+ };
64481
64574
 
64482
64575
  InterfaceSettings.prototype.onExport = function () {
64483
64576
  var str = JSON.stringify(this.interfaceModel, null, 4);
@@ -64489,6 +64582,77 @@ function (_super) {
64489
64582
  link.click();
64490
64583
  };
64491
64584
 
64585
+ InterfaceSettings.prototype.validateEnvName = function (rule, value, callback) {
64586
+ var _a, _b, _c, _d, _e;
64587
+
64588
+ return interface_settings_awaiter(this, void 0, void 0, function () {
64589
+ var res;
64590
+ return interface_settings_generator(this, function (_f) {
64591
+ switch (_f.label) {
64592
+ case 0:
64593
+ return [4
64594
+ /*yield*/
64595
+ , this.service.onValidateImport({
64596
+ projectId: this.projectId,
64597
+ envName: ((_a = this.apiForm) === null || _a === void 0 ? void 0 : _a.envName) ? (_b = this.apiForm) === null || _b === void 0 ? void 0 : _b.envName : null,
64598
+ authName: ((_c = this.apiForm) === null || _c === void 0 ? void 0 : _c.authName) ? (_d = this.apiForm) === null || _d === void 0 ? void 0 : _d.authName : null
64599
+ })];
64600
+
64601
+ case 1:
64602
+ res = _f.sent();
64603
+
64604
+ if (!(res === null || res === void 0 ? void 0 : res.hasError) && !((_e = res === null || res === void 0 ? void 0 : res.result) === null || _e === void 0 ? void 0 : _e.envNameRepeat)) {
64605
+ callback();
64606
+ } else {
64607
+ callback(new Error("环境变量名重复"));
64608
+ }
64609
+
64610
+ return [2
64611
+ /*return*/
64612
+ ];
64613
+ }
64614
+ });
64615
+ });
64616
+ };
64617
+
64618
+ InterfaceSettings.prototype.validateAuthName = function (rule, value, callback) {
64619
+ var _a, _b, _c, _d, _e;
64620
+
64621
+ return interface_settings_awaiter(this, void 0, void 0, function () {
64622
+ var res;
64623
+ return interface_settings_generator(this, function (_f) {
64624
+ switch (_f.label) {
64625
+ case 0:
64626
+ return [4
64627
+ /*yield*/
64628
+ , this.service.onValidateImport({
64629
+ projectId: this.projectId,
64630
+ envName: ((_a = this.apiForm) === null || _a === void 0 ? void 0 : _a.envName) ? (_b = this.apiForm) === null || _b === void 0 ? void 0 : _b.envName : null,
64631
+ authName: ((_c = this.apiForm) === null || _c === void 0 ? void 0 : _c.authName) ? (_d = this.apiForm) === null || _d === void 0 ? void 0 : _d.authName : null
64632
+ })];
64633
+
64634
+ case 1:
64635
+ res = _f.sent();
64636
+
64637
+ if (!(res === null || res === void 0 ? void 0 : res.hasError) && !((_e = res === null || res === void 0 ? void 0 : res.result) === null || _e === void 0 ? void 0 : _e.authNameRepeat)) {
64638
+ callback();
64639
+ } else {
64640
+ callback(new Error("授权名重复"));
64641
+ }
64642
+
64643
+ return [2
64644
+ /*return*/
64645
+ ];
64646
+ }
64647
+ });
64648
+ });
64649
+ };
64650
+
64651
+ InterfaceSettings.prototype.cancleModify = function () {
64652
+ this.$refs.import.resetFields();
64653
+ this.showImportModal = false;
64654
+ };
64655
+
64492
64656
  InterfaceSettings.prototype.onVersion = function () {
64493
64657
  var id = (this.interfaceModel.info || {}).id;
64494
64658
 
@@ -64587,6 +64751,8 @@ function (_super) {
64587
64751
  immediate: true
64588
64752
  }), interface_settings_metadata("design:type", Function), interface_settings_metadata("design:paramtypes", []), interface_settings_metadata("design:returntype", void 0)], InterfaceSettings.prototype, "interfaceModelChange", null);
64589
64753
 
64754
+ interface_settings_decorate([Object(flagwind_web_["watch"])("showImportModal"), interface_settings_metadata("design:type", Function), interface_settings_metadata("design:paramtypes", [Boolean]), interface_settings_metadata("design:returntype", void 0)], InterfaceSettings.prototype, "showImportModalChange", null);
64755
+
64590
64756
  InterfaceSettings = interface_settings_decorate([Object(flagwind_web_["component"])({
64591
64757
  template: __webpack_require__("f40e"),
64592
64758
  components: {
@@ -66147,6 +66313,7 @@ var vue_awesome_swiper = __webpack_require__("7212");
66147
66313
 
66148
66314
 
66149
66315
 
66316
+
66150
66317
 
66151
66318
 
66152
66319
  var project_detail_extends = undefined && undefined.__extends || function () {
@@ -66429,13 +66596,15 @@ function (_super) {
66429
66596
  };
66430
66597
 
66431
66598
  ProjectDetail.prototype.onCheckInterface = function (data, isResume) {
66599
+ var _a;
66600
+
66432
66601
  return project_detail_awaiter(this, void 0, void 0, function () {
66433
66602
  var resumeData, text, set, result, res, index;
66434
66603
 
66435
66604
  var _this = this;
66436
66605
 
66437
- return project_detail_generator(this, function (_a) {
66438
- switch (_a.label) {
66606
+ return project_detail_generator(this, function (_b) {
66607
+ switch (_b.label) {
66439
66608
  case 0:
66440
66609
  this.current = data;
66441
66610
  resumeData = {};
@@ -66447,13 +66616,14 @@ function (_super) {
66447
66616
  if (text) {
66448
66617
  resumeData = JSON.parse(text);
66449
66618
  }
66450
- } catch (_b) {//
66619
+ } catch (_c) {//
66451
66620
  }
66452
66621
 
66453
66622
  resumeData = project_detail_assign(project_detail_assign({}, resumeData), {
66454
66623
  name: data.name,
66455
66624
  id: data.id
66456
- }); // 获取默认值
66625
+ });
66626
+ resumeData.authentication.content = (((_a = resumeData.authentication) === null || _a === void 0 ? void 0 : _a.content) || []).join("\n") || ""; // 获取默认值
66457
66627
 
66458
66628
  !resumeData.fieldMappings && (resumeData.fieldMappings = []);
66459
66629
  !resumeData.pathParams && (resumeData.pathParams = []);
@@ -66487,17 +66657,17 @@ function (_super) {
66487
66657
  , this.service.apiInfo(data.id)];
66488
66658
 
66489
66659
  case 2:
66490
- res = _a.sent();
66660
+ res = _b.sent();
66491
66661
  result = project_detail_assign(project_detail_assign({}, res.result || {}), {
66492
66662
  name: data.name,
66493
66663
  id: data.id
66494
66664
  });
66495
- _a.label = 3;
66665
+ _b.label = 3;
66496
66666
 
66497
66667
  case 3:
66498
66668
  this.openInterfaceList.push(result);
66499
66669
  this.loading = false;
66500
- _a.label = 4;
66670
+ _b.label = 4;
66501
66671
 
66502
66672
  case 4:
66503
66673
  index = this.openInterfaceList.findIndex(function (i) {
@@ -66588,6 +66758,9 @@ function (_super) {
66588
66758
  this.$subscribe("api://project-detail-save", function () {
66589
66759
  return project_detail_awaiter(_this, void 0, void 0, function () {
66590
66760
  var res, result;
66761
+
66762
+ var _this = this;
66763
+
66591
66764
  return project_detail_generator(this, function (_a) {
66592
66765
  switch (_a.label) {
66593
66766
  case 0:
@@ -66602,6 +66775,9 @@ function (_super) {
66602
66775
  id: this.current.id
66603
66776
  });
66604
66777
  this.active = result;
66778
+ this.openInterfaceList[this.openInterfaceList.findIndex(function (i) {
66779
+ return i.id === _this.current.id;
66780
+ })] = result;
66605
66781
  return [2
66606
66782
  /*return*/
66607
66783
  ];