@egova/egova-api 1.3.36 → 1.3.38

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.umd.js CHANGED
@@ -91,7 +91,7 @@ return /******/ (function(modules) { // webpackBootstrap
91
91
  /******/
92
92
  /******/
93
93
  /******/ // Load entry module and return exports
94
- /******/ return __webpack_require__(__webpack_require__.s = "d345");
94
+ /******/ return __webpack_require__(__webpack_require__.s = "cb40");
95
95
  /******/ })
96
96
  /************************************************************************/
97
97
  /******/ ({
@@ -634,7 +634,7 @@ module.exports = function (fn) {
634
634
  /***/ "2c48":
635
635
  /***/ (function(module, exports) {
636
636
 
637
- module.exports = "<article class=\"response\" :class=\"{'response-expand':expand}\">\r\n <header :class=\"{'status-success': response.code === 200, 'status-fail': response.code && response.code!==200}\">\r\n <span class=\"title\">响应</span>\r\n <span class=\"collapse-text\" @click=\"onClickCollapse\">\r\n <i class=\"ivu-icon ivu-icon-ios-arrow-forward\" :class=\"{'icon-arrow-collapse':expand}\"></i>\r\n <span>{{expand ? \"收起\" : \"展开\"}}</span>\r\n </span>\r\n <div class=\"items-div\">\r\n <span class=\"item-name\">响应码:</span>\r\n <span class=\"item-value\">{{response.code}}</span>\r\n <span class=\"item-name\">时间:</span>\r\n <span class=\"item-value\">{{response.time}}ms</span>\r\n <span class=\"item-name\">大小:</span>\r\n <span class=\"item-value\">{{response.size}}B</span>\r\n </div>\r\n </header>\r\n <main v-show=\"expand\">\r\n <div class=\"response-bar\">\r\n <div\r\n class=\"tag\"\r\n @click=\"onClickResponseSettingTpye(item)\"\r\n :class=\"{'active': item.name === active.name}\"\r\n v-for=\"(item,index) in responseSettingTypeList\"\r\n :key=\"item.name\"\r\n >\r\n <span>{{item.title + (item.num > 0 ? '(' + item.num + ')': \"\")}}</span>\r\n </div>\r\n </div>\r\n <div class=\"response-content\">\r\n <template v-if=\"active.name === 'content'\">\r\n <header>\r\n <i-radio-group type=\"button\" class=\"diy-radio-group-button response-content-radio-group\" v-model=\"contentType\">\r\n <i-radio label=\"originalContent\">转换前</i-radio>\r\n <i-radio label=\"content\">转换后</i-radio>\r\n </i-radio-group>\r\n <i-dropdown class=\"diy-dropdown response-content-dropdown\" @on-click=\"onChangeLang\">\r\n <i-button ghost type=\"primary\" class=\"diy-btn-primary\">\r\n <span class=\"lang\">{{lang.toUpperCase()}}</span>\r\n <i class=\"api-icon icon-select\"></i>\r\n </i-button>\r\n <i-dropdown-menu slot=\"list\">\r\n <i-dropdown-item name=\"json\">JSON</i-dropdown-item>\r\n <i-dropdown-item name=\"xml\">XML</i-dropdown-item>\r\n </i-dropdown-menu>\r\n </i-dropdown>\r\n </header>\r\n <u-editor :value=\"content\" :lang=\"lang\" @inited=\"onEditorInited\"></u-editor>\r\n </template>\r\n <div v-if=\"active.name === 'responseHeaders'\">\r\n <i-table :columns=\"headerColumns\" :data=\"responseHeaders\" class=\"diy-table\"> </i-table>\r\n </div>\r\n <template v-if=\"active.name === 'requestHeaders'\">\r\n <i-table :columns=\"headerColumns\" :data=\"requestHeaders\" class=\"diy-table\"> </i-table>\r\n </template>\r\n <template v-if=\"active.name === 'cookies'\">\r\n <i-table :columns=\"headerColumns\" :data=\"cookies\" class=\"diy-table\"> </i-table>\r\n </template>\r\n <template v-if=\"active.name==='output'\">\r\n <span class=\"output\">{{output}}</span>\r\n </template>\r\n </div>\r\n </main>\r\n</article>\r\n"
637
+ module.exports = "<article class=\"response\" :class=\"{'response-expand':expand}\">\r\n <header :class=\"{'status-success': response.code === 200, 'status-fail': response.code && response.code!==200}\">\r\n <div class=\"header-left\">\r\n <span class=\"title\">响应</span>\r\n <span class=\"collapse-text\" @click=\"onClickCollapse\">\r\n <i class=\"ivu-icon ivu-icon-ios-arrow-forward\" :class=\"{'icon-arrow-collapse':expand}\"></i>\r\n <span>{{expand ? \"收起\" : \"展开\"}}</span>\r\n </span>\r\n <div class=\"stream-switch\">\r\n <span class=\"stream-text\">流式响应</span>\r\n <i-switch v-model=\"interfaceInfo.streamResponseFlag\" :true-value=\"1\" :false-value=\"0\"></i-switch>\r\n </div>\r\n </div>\r\n <div class=\"items-div\">\r\n <span class=\"item-name\">响应码:</span>\r\n <span class=\"item-value\">{{response.code}}</span>\r\n <span class=\"item-name\">时间:</span>\r\n <span class=\"item-value\">{{response.time}}ms</span>\r\n <span class=\"item-name\">大小:</span>\r\n <span class=\"item-value\">{{response.size}}B</span>\r\n </div>\r\n </header>\r\n <main v-show=\"expand\">\r\n <div class=\"response-bar\">\r\n <div\r\n class=\"tag\"\r\n @click=\"onClickResponseSettingTpye(item)\"\r\n :class=\"{'active': item.name === active.name}\"\r\n v-for=\"(item,index) in responseSettingTypeList\"\r\n :key=\"item.name\"\r\n >\r\n <span>{{item.title + (item.num > 0 ? '(' + item.num + ')': \"\")}}</span>\r\n </div>\r\n </div>\r\n <div class=\"response-content\">\r\n <template v-if=\"active.name === 'content'\">\r\n <header>\r\n <i-radio-group type=\"button\" class=\"diy-radio-group-button response-content-radio-group\" v-model=\"contentType\">\r\n <i-radio label=\"originalContent\">转换前</i-radio>\r\n <i-radio label=\"content\">转换后</i-radio>\r\n </i-radio-group>\r\n <i-dropdown class=\"diy-dropdown response-content-dropdown\" @on-click=\"onChangeLang\">\r\n <i-button ghost type=\"primary\" class=\"diy-btn-primary\">\r\n <span class=\"lang\">{{lang.toUpperCase()}}</span>\r\n <i class=\"api-icon icon-select\"></i>\r\n </i-button>\r\n <i-dropdown-menu slot=\"list\">\r\n <i-dropdown-item name=\"json\">JSON</i-dropdown-item>\r\n <i-dropdown-item name=\"xml\">XML</i-dropdown-item>\r\n </i-dropdown-menu>\r\n </i-dropdown>\r\n </header>\r\n <u-editor :value=\"content\" :lang=\"lang\" @inited=\"onEditorInited\"></u-editor>\r\n </template>\r\n <div v-if=\"active.name === 'responseHeaders'\">\r\n <i-table :columns=\"headerColumns\" :data=\"responseHeaders\" class=\"diy-table\"> </i-table>\r\n </div>\r\n <template v-if=\"active.name === 'requestHeaders'\">\r\n <i-table :columns=\"headerColumns\" :data=\"requestHeaders\" class=\"diy-table\"> </i-table>\r\n </template>\r\n <template v-if=\"active.name === 'cookies'\">\r\n <i-table :columns=\"headerColumns\" :data=\"cookies\" class=\"diy-table\"> </i-table>\r\n </template>\r\n <template v-if=\"active.name==='output'\">\r\n <span class=\"output\">{{output}}</span>\r\n </template>\r\n </div>\r\n </main>\r\n</article>\r\n"
638
638
 
639
639
  /***/ }),
640
640
 
@@ -906,7 +906,7 @@ module.exports = __WEBPACK_EXTERNAL_MODULE__3fb3__;
906
906
  /***/ "40aa":
907
907
  /***/ (function(module, exports) {
908
908
 
909
- module.exports = "<!DOCTYPE html>\n<i-drawer\n width=\"700\"\n draggable\n sticky\n reset-drag-position\n v-model=\"show\"\n class=\"interface-modal diy-modal\"\n transfer\n title=\"已关联流程配置\"\n :mask-closable=\"false\"\n @on-cancel=\"onCancel\"\n>\n <div class=\"drawer-content\">\n <div class=\"header\">\n <i-select v-model=\"proxyName\" :placeholder=\"proxyList?.length ? `已有${proxyList?.length}个代理服务`:'暂无数据'\" @on-select=\"selectProxyName\">\n <i-option v-for=\"item in proxyList\" :value=\"item.id\" :key=\"item.id\"> {{item.name}} </i-option>\n </i-select>\n <i-button class=\"diy-btn-primary\" type=\"primary\" @click=\"onAdd\">新增配置</i-button>\n </div>\n\n <template>\n <i-form v-show=\"proxyName || isAdding \" ref=\"configform\" label-position=\"left\" :label-width=\"125\" label-colon :rules=\"rulesValidate\" :model=\"model\">\n <div class=\"form-title\">{{formTitle}}</div>\n <i-form-item v-show=\"isAdding\" label=\"所属分类\" prop=\"categoryId\" class=\"proxy-category-validate\" required>\n <u-tree-selector\n :treeData=\"categoryList\"\n :canChooseFolder=\"true\"\n v-model=\"model.categoryId\"\n @on-select=\"selectCategory\"\n placeholder=\"请选择所属分类\"\n ></u-tree-selector>\n </i-form-item>\n <i-form-item label=\"代理名称\" prop=\"name\" class=\"proxy-name-validate\" required>\n <i-input class=\"diy-input\" v-model=\"model.name\" placeholder=\"请输入代理名称\"></i-input>\n </i-form-item>\n <i-form-item class=\"proxy-name-validate\" prop=\"code\" label=\"接口编码\" required>\n <i-input class=\"diy-input\" v-model=\"model.code\" placeholder=\"请输入接口编码\"></i-input>\n </i-form-item>\n <i-form-item class=\"un-required-item copy-item\" label=\"接口地址\">\n <i-input class=\"diy-input\" disabled :value=\"url\"></i-input>\n <div class=\"set-btn\" @click=\"onCopy(url)\">复制</div>\n </i-form-item>\n <i-form-item label=\"描述\" prop=\"description\" class=\"proxy-description-validate un-required-item\">\n <i-input type=\"textarea\" v-model=\"model.description\" placeholder=\"请输入描述\" :rows=\"2\"></i-input>\n </i-form-item>\n <i-row class=\"retry-wrap\" style=\"padding-top: 8px\">\n <i-col span=\"24\">\n <i-form-item class=\"un-required-item copy-item\">\n <template #label>\n <i-poptip slot=\"label\" trigger=\"hover\" word-wrap transfer>\n <icon style=\"cursor: help; font-size: 0.16rem\" type=\"ios-information-circle-outline\" />\n <div slot=\"content\" style=\"width: 3rem\">\n <span style=\"font-size: 0.14rem\"\n >在右侧勾选日志记录的请求类型。需记录慢接口时,可以设置最小耗时阈值(大于该值将记录日志),不勾选时则不记录。日志表会记录请求头、请求参数和响应体,如果内容较多时建议关闭,请求次数频繁比较占数据库资源。选项【失败】仅记录调用失败的日志</span\n >\n </div>\n </i-poptip>\n <span>记录日志:</span>\n </template>\n <i-checkboxGroup class=\"diy-checkbox\" v-model=\"logSavingEnabledList\">\n <i-checkbox v-for=\"item in loginLevelFlag\" :disabled=\"readonly\" :label=\"item.value\">{{ item.name }}</i-checkbox>\n </i-checkboxGroup>\n <i-form-item class=\"slow-log-threshold\" prop=\"slowLogThreshold\">\n >\n <i-input class=\"diy-input\" type=\"number\" :disabled=\"slowLogThreshold\" v-model=\"model.slowLogThreshold\"> </i-input>\n 毫秒\n </i-form-item>\n </i-form-item>\n </i-col>\n </i-row>\n <template v-if=\"model.logSavingEnabled\">\n <i-row class=\"retry-wrap\">\n <i-col span=\"11\">\n <i-form-item label=\"开启重推\" required>\n <i-select class=\"diy-select\" v-model=\"model.enableRetry\">\n <i-option v-for=\"(item,index) in isRetryList\" :value=\"item.value\" :key=\"index\">{{ item.name }}</i-option>\n </i-select>\n </i-form-item>\n </i-col>\n <i-col span=\"11\">\n <i-form-item class=\"un-required-item\" label=\"重推次数\" prop=\"retryTimes\">\n <tips-table-label class=\"data-type-tips\" slot=\"label\" label-colon labelTitle=\"重推次数\"></tips-table-label>\n <i-input class=\"diy-input\" type=\"number\" :disabled=\"isRetryTimesReadonly\" v-model=\"model.retryTimes\" placeholder=\"请输入重推次数\"></i-input>\n </i-form-item>\n </i-col>\n </i-row>\n <i-row v-show=\"model.enableRetry === 'true' \">\n <i-col span=\"11\">\n <i-form-item class=\"un-required-item status-code\">\n <template #label>\n <i-poptip slot=\"label\" trigger=\"hover\" content=\"当接口状态码和配置项相同时,才触发重推;多个自定义状态码以英文逗号分隔\" word-wrap transfer>\n <icon style=\"cursor: help; font-size: 0.16rem\" type=\"ios-information-circle-outline\" />\n </i-poptip>\n <span>重推接口状态码:</span>\n </template>\n <i-form-item>\n <i-select ref=\"statusCodeSelect\" v-model=\"statusCode\" class=\"diy-select code-select\" @on-change=\"onStatusCodeChange\">\n <i-option v-for=\"item in statusCodeList\" :value=\"item.value\" :key=\"item.value\">{{ item.name }}</i-option>\n </i-select>\n </i-form-item>\n <i-form-item prop=\"retryCode\">\n <i-input\n style=\"min-width: 0.32rem\"\n v-show=\"statusCode === '2'\"\n class=\"diy-input\"\n v-model=\"model.retryCode\"\n placeholder=\"请输入状态码\"\n ></i-input>\n </i-form-item>\n </i-form-item>\n </i-col>\n </i-row>\n </template>\n\n <i-row class=\"retry-wrap\">\n <i-col span=\"11\">\n <i-form-item label=\"需要认证\" class=\"un-required-item copy-item\">\n <i-select class=\"diy-select\" style=\"margin-top: 6px\" v-model=\"model.authFlag\">\n <i-option v-for=\"item in authFlag\" :value=\"item.value\" :key=\"item.value\">{{ item.name }}</i-option>\n </i-select>\n </i-form-item>\n </i-col>\n <i-col span=\"11\">\n <i-form-item class=\"un-required-item copy-item\">\n <template #label>\n <i-poptip slot=\"label\" trigger=\"hover\" content=\"使用用户中心token访问该接口时,将校验登陆是否拥有该资源代码的权限\" word-wrap transfer>\n <icon style=\"cursor: help; font-size: 0.16rem\" type=\"ios-information-circle-outline\" />\n </i-poptip>\n <span>用户中心资源代码:</span>\n </template>\n <i-input\n class=\"diy-input\"\n style=\"margin-top: 6px\"\n v-model=\"model.resourceCode\"\n :disabled=\"!isResourceCodeEnabled\"\n placeholder=\"请输入用户中心资源代码\"\n ></i-input>\n </i-form-item>\n </i-col>\n </i-row>\n <template>\n <i-row class=\"retry-wrap\">\n <i-col span=\"11\">\n <i-form-item label=\"代理类型\">\n <i-input class=\"diy-input\" value=\"外部接口\" disabled></i-input>\n </i-form-item>\n </i-col>\n <i-col span=\"11\">\n <i-form-item label=\"API项目\">\n <i-select disabled class=\"diy-select\" v-model=\"apiModel.projectId\">\n <i-option v-for=\"(item,index) in projectList\" :value=\"item.id\" :key=\"item.id\">{{ item.name }}</i-option>\n </i-select>\n </i-form-item>\n </i-col>\n </i-row>\n <i-form-item label=\"API接口\">\n <u-tree-selector\n readonly\n :treeData=\"apiTree\"\n leaf-name=\"apis\"\n v-model=\"apiModel.typeId\"\n placeholder=\"请选择API接口\"\n @on-select=\"onApiTreeSelect\"\n ></u-tree-selector>\n </i-form-item>\n <i-form-item label=\"接口路径\">\n <i-input class=\"diy-input\" :readonly=\"true\" v-model=\"apiModel.path\" :rows=\"4\"></i-input>\n </i-form-item>\n </template>\n </i-form>\n </template>\n <i-table v-if=\"proxyName || isAdding\" class=\"diy-table\" height=\"200\" :columns=\"apiColumns\" :data=\"apiParamList\"> </i-table>\n <div v-if=\"!proxyName && !isAdding \" class=\"no-data\">暂无数据</div>\n </div>\n <div class=\"footer\">\n <i-button class=\"diy-btn-primary\" type=\"primary\" :loading=\"loading\" @click.stop=\"onSave\">保存</i-button>\n <i-button class=\"diy-btn-default\" @click.stop=\"onCancel\">取消</i-button>\n </div>\n</i-drawer>\n"
909
+ module.exports = "<!DOCTYPE html>\r\n<i-drawer\r\n width=\"700\"\r\n draggable\r\n sticky\r\n reset-drag-position\r\n v-model=\"show\"\r\n class=\"interface-modal diy-modal\"\r\n transfer\r\n title=\"已关联流程配置\"\r\n :mask-closable=\"false\"\r\n @on-cancel=\"onCancel\"\r\n>\r\n <div class=\"drawer-content\">\r\n <div class=\"header\">\r\n <i-select v-model=\"proxyName\" :placeholder=\"proxyList?.length ? `已有${proxyList?.length}个代理服务`:'暂无数据'\" @on-select=\"selectProxyName\">\r\n <i-option v-for=\"item in proxyList\" :value=\"item.id\" :key=\"item.id\"> {{item.name}} </i-option>\r\n </i-select>\r\n <i-button class=\"diy-btn-primary\" type=\"primary\" @click=\"onAdd\">新增配置</i-button>\r\n </div>\r\n\r\n <template>\r\n <i-form v-show=\"proxyName || isAdding \" ref=\"configform\" label-position=\"left\" :label-width=\"125\" label-colon :rules=\"rulesValidate\" :model=\"model\">\r\n <div class=\"form-title\">{{formTitle}}</div>\r\n <i-form-item v-show=\"isAdding\" label=\"所属分类\" prop=\"categoryId\" class=\"proxy-category-validate\" required>\r\n <u-tree-selector\r\n :treeData=\"categoryList\"\r\n :canChooseFolder=\"true\"\r\n v-model=\"model.categoryId\"\r\n @on-select=\"selectCategory\"\r\n placeholder=\"请选择所属分类\"\r\n ></u-tree-selector>\r\n </i-form-item>\r\n <i-form-item label=\"代理名称\" prop=\"name\" class=\"proxy-name-validate\" required>\r\n <i-input class=\"diy-input\" v-model=\"model.name\" placeholder=\"请输入代理名称\"></i-input>\r\n </i-form-item>\r\n <i-form-item class=\"proxy-name-validate\" prop=\"code\" label=\"接口编码\" required>\r\n <i-input class=\"diy-input\" v-model=\"model.code\" placeholder=\"请输入接口编码\"></i-input>\r\n </i-form-item>\r\n <i-form-item class=\"un-required-item copy-item\" label=\"接口地址\">\r\n <i-input class=\"diy-input\" disabled :value=\"url\"></i-input>\r\n <div class=\"set-btn\" @click=\"onCopy(url)\">复制</div>\r\n </i-form-item>\r\n <i-form-item label=\"描述\" prop=\"description\" class=\"proxy-description-validate un-required-item\">\r\n <i-input type=\"textarea\" v-model=\"model.description\" placeholder=\"请输入描述\" :rows=\"2\"></i-input>\r\n </i-form-item>\r\n <i-row class=\"retry-wrap\" style=\"padding-top: 8px\">\r\n <i-col span=\"24\">\r\n <i-form-item class=\"un-required-item copy-item\">\r\n <template #label>\r\n <i-poptip slot=\"label\" trigger=\"hover\" word-wrap transfer>\r\n <icon style=\"cursor: help; font-size: 0.16rem\" type=\"ios-information-circle-outline\" />\r\n <div slot=\"content\" style=\"width: 3rem\">\r\n <span style=\"font-size: 0.14rem\"\r\n >在右侧勾选日志记录的请求类型。需记录慢接口时,可以设置最小耗时阈值(大于该值将记录日志),不勾选时则不记录。日志表会记录请求头、请求参数和响应体,如果内容较多时建议关闭,请求次数频繁比较占数据库资源。选项【失败】仅记录调用失败的日志</span\r\n >\r\n </div>\r\n </i-poptip>\r\n <span>记录日志:</span>\r\n </template>\r\n <i-checkboxGroup class=\"diy-checkbox\" v-model=\"logSavingEnabledList\">\r\n <i-checkbox v-for=\"item in loginLevelFlag\" :disabled=\"readonly\" :label=\"item.value\">{{ item.name }}</i-checkbox>\r\n </i-checkboxGroup>\r\n <i-form-item class=\"slow-log-threshold\" prop=\"slowLogThreshold\">\r\n >\r\n <i-input class=\"diy-input\" type=\"number\" :disabled=\"slowLogThreshold\" v-model=\"model.slowLogThreshold\"> </i-input>\r\n 毫秒\r\n </i-form-item>\r\n </i-form-item>\r\n </i-col>\r\n </i-row>\r\n <template v-if=\"model.logSavingEnabled\">\r\n <i-row class=\"retry-wrap\">\r\n <i-col span=\"11\">\r\n <i-form-item label=\"开启重推\" required>\r\n <i-select class=\"diy-select\" v-model=\"model.enableRetry\">\r\n <i-option v-for=\"(item,index) in isRetryList\" :value=\"item.value\" :key=\"index\">{{ item.name }}</i-option>\r\n </i-select>\r\n </i-form-item>\r\n </i-col>\r\n <i-col span=\"11\">\r\n <i-form-item class=\"un-required-item\" label=\"重推次数\" prop=\"retryTimes\">\r\n <tips-table-label class=\"data-type-tips\" slot=\"label\" label-colon labelTitle=\"重推次数\"></tips-table-label>\r\n <i-input class=\"diy-input\" type=\"number\" :disabled=\"isRetryTimesReadonly\" v-model=\"model.retryTimes\" placeholder=\"请输入重推次数\"></i-input>\r\n </i-form-item>\r\n </i-col>\r\n </i-row>\r\n <i-row v-show=\"model.enableRetry === 'true' \">\r\n <i-col span=\"11\">\r\n <i-form-item class=\"un-required-item status-code\">\r\n <template #label>\r\n <i-poptip slot=\"label\" trigger=\"hover\" content=\"当接口状态码和配置项相同时,才触发重推;多个自定义状态码以英文逗号分隔\" word-wrap transfer>\r\n <icon style=\"cursor: help; font-size: 0.16rem\" type=\"ios-information-circle-outline\" />\r\n </i-poptip>\r\n <span>重推接口状态码:</span>\r\n </template>\r\n <i-form-item>\r\n <i-select ref=\"statusCodeSelect\" v-model=\"statusCode\" class=\"diy-select code-select\" @on-change=\"onStatusCodeChange\">\r\n <i-option v-for=\"item in statusCodeList\" :value=\"item.value\" :key=\"item.value\">{{ item.name }}</i-option>\r\n </i-select>\r\n </i-form-item>\r\n <i-form-item prop=\"retryCode\">\r\n <i-input\r\n style=\"min-width: 0.32rem\"\r\n v-show=\"statusCode === '2'\"\r\n class=\"diy-input\"\r\n v-model=\"model.retryCode\"\r\n placeholder=\"请输入状态码\"\r\n ></i-input>\r\n </i-form-item>\r\n </i-form-item>\r\n </i-col>\r\n </i-row>\r\n </template>\r\n\r\n <i-row class=\"retry-wrap\">\r\n <i-col span=\"11\">\r\n <i-form-item label=\"需要认证\" class=\"un-required-item copy-item\">\r\n <i-select class=\"diy-select\" style=\"margin-top: 6px\" v-model=\"model.authFlag\">\r\n <i-option v-for=\"item in authFlag\" :value=\"item.value\" :key=\"item.value\">{{ item.name }}</i-option>\r\n </i-select>\r\n </i-form-item>\r\n </i-col>\r\n <i-col span=\"11\">\r\n <i-form-item class=\"un-required-item copy-item\">\r\n <template #label>\r\n <i-poptip slot=\"label\" trigger=\"hover\" content=\"使用用户中心token访问该接口时,将校验登陆是否拥有该资源代码的权限\" word-wrap transfer>\r\n <icon style=\"cursor: help; font-size: 0.16rem\" type=\"ios-information-circle-outline\" />\r\n </i-poptip>\r\n <span>用户中心资源代码:</span>\r\n </template>\r\n <i-input\r\n class=\"diy-input\"\r\n style=\"margin-top: 6px\"\r\n v-model=\"model.resourceCode\"\r\n :disabled=\"!isResourceCodeEnabled\"\r\n placeholder=\"请输入用户中心资源代码\"\r\n ></i-input>\r\n </i-form-item>\r\n </i-col>\r\n </i-row>\r\n <template>\r\n <i-row class=\"retry-wrap\">\r\n <i-col span=\"11\">\r\n <i-form-item label=\"代理类型\">\r\n <i-input class=\"diy-input\" value=\"外部接口\" disabled></i-input>\r\n </i-form-item>\r\n </i-col>\r\n <i-col span=\"11\">\r\n <i-form-item label=\"API项目\">\r\n <i-select disabled class=\"diy-select\" v-model=\"apiModel.projectId\">\r\n <i-option v-for=\"(item,index) in projectList\" :value=\"item.id\" :key=\"item.id\">{{ item.name }}</i-option>\r\n </i-select>\r\n </i-form-item>\r\n </i-col>\r\n </i-row>\r\n <i-form-item label=\"API接口\">\r\n <u-tree-selector\r\n readonly\r\n :treeData=\"apiTree\"\r\n leaf-name=\"apis\"\r\n v-model=\"apiModel.typeId\"\r\n placeholder=\"请选择API接口\"\r\n @on-select=\"onApiTreeSelect\"\r\n ></u-tree-selector>\r\n </i-form-item>\r\n <i-form-item label=\"接口路径\">\r\n <i-input class=\"diy-input\" :readonly=\"true\" v-model=\"apiModel.path\" :rows=\"4\"></i-input>\r\n </i-form-item>\r\n </template>\r\n </i-form>\r\n </template>\r\n <i-table v-if=\"proxyName || isAdding\" class=\"diy-table\" height=\"200\" :columns=\"apiColumns\" :data=\"apiParamList\"> </i-table>\r\n <div v-if=\"!proxyName && !isAdding \" class=\"no-data\">暂无数据</div>\r\n </div>\r\n <div class=\"footer\">\r\n <i-button class=\"diy-btn-primary\" type=\"primary\" :loading=\"loading\" @click.stop=\"onSave\">保存</i-button>\r\n <i-button class=\"diy-btn-default\" @click.stop=\"onCancel\">取消</i-button>\r\n </div>\r\n</i-drawer>\r\n"
910
910
 
911
911
  /***/ }),
912
912
 
@@ -3997,529 +3997,44 @@ module.exports = function (argument) {
3997
3997
 
3998
3998
  /***/ }),
3999
3999
 
4000
- /***/ "b042":
4000
+ /***/ "b061":
4001
+ /***/ (function(module, exports) {
4002
+
4003
+ var g;
4004
+
4005
+ // This works in non-strict mode
4006
+ g = (function() {
4007
+ return this;
4008
+ })();
4009
+
4010
+ try {
4011
+ // This works if eval is allowed (see CSP)
4012
+ g = g || new Function("return this")();
4013
+ } catch (e) {
4014
+ // This works if the window reference is available
4015
+ if (typeof window === "object") g = window;
4016
+ }
4017
+
4018
+ // g can still be undefined, but nothing to do about it...
4019
+ // We return undefined, instead of nothing here, so it's
4020
+ // easier to handle this case. if(!global) { ...}
4021
+
4022
+ module.exports = g;
4023
+
4024
+
4025
+ /***/ }),
4026
+
4027
+ /***/ "b156":
4001
4028
  /***/ (function(module, exports, __webpack_require__) {
4002
4029
 
4030
+ // extracted by mini-css-extract-plugin
4003
4031
 
4004
- /*!
4005
- * vue-awesome-swiper v4.1.1
4006
- * Copyright (c) Surmon. All rights reserved.
4007
- * Released under the MIT License.
4008
- * Surmon <https://github.com/surmon-china>
4009
- */
4032
+ /***/ }),
4010
4033
 
4011
- (function(g,f){ true?f(exports,__webpack_require__("d670"),__webpack_require__("8bbf")):undefined;}(this,(function(exports, SwiperClass, Vue){'use strict';SwiperClass=SwiperClass&&Object.prototype.hasOwnProperty.call(SwiperClass,'default')?SwiperClass['default']:SwiperClass;Vue=Vue&&Object.prototype.hasOwnProperty.call(Vue,'default')?Vue['default']:Vue;/**
4012
- * @file vue-awesome-swiper
4013
- * @module constants
4014
- * @author Surmon <https://github.com/surmon-china>
4015
- */
4016
- var CoreNames;
4017
- (function (CoreNames) {
4018
- CoreNames["SwiperComponent"] = "Swiper";
4019
- CoreNames["SwiperSlideComponent"] = "SwiperSlide";
4020
- CoreNames["SwiperDirective"] = "swiper";
4021
- CoreNames["SwiperInstance"] = "$swiper";
4022
- })(CoreNames || (CoreNames = {}));
4023
- var DEFAULT_CLASSES = Object.freeze({
4024
- containerClass: 'swiper-container',
4025
- wrapperClass: 'swiper-wrapper',
4026
- slideClass: 'swiper-slide'
4027
- });
4028
- var ComponentEvents;
4029
- (function (ComponentEvents) {
4030
- ComponentEvents["Ready"] = "ready";
4031
- ComponentEvents["ClickSlide"] = "clickSlide";
4032
- })(ComponentEvents || (ComponentEvents = {}));
4033
- var ComponentPropNames;
4034
- (function (ComponentPropNames) {
4035
- ComponentPropNames["AutoUpdate"] = "autoUpdate";
4036
- ComponentPropNames["AutoDestroy"] = "autoDestroy";
4037
- ComponentPropNames["DeleteInstanceOnDestroy"] = "deleteInstanceOnDestroy";
4038
- ComponentPropNames["CleanupStylesOnDestroy"] = "cleanupStylesOnDestroy";
4039
- })(ComponentPropNames || (ComponentPropNames = {}));
4040
- // https://swiperjs.com/api/#events
4041
- var SWIPER_EVENTS = [
4042
- 'init',
4043
- 'beforeDestroy',
4044
- 'slideChange',
4045
- 'slideChangeTransitionStart',
4046
- 'slideChangeTransitionEnd',
4047
- 'slideNextTransitionStart',
4048
- 'slideNextTransitionEnd',
4049
- 'slidePrevTransitionStart',
4050
- 'slidePrevTransitionEnd',
4051
- 'transitionStart',
4052
- 'transitionEnd',
4053
- 'touchStart',
4054
- 'touchMove',
4055
- 'touchMoveOpposite',
4056
- 'sliderMove',
4057
- 'touchEnd',
4058
- 'click',
4059
- 'tap',
4060
- 'doubleTap',
4061
- 'imagesReady',
4062
- 'progress',
4063
- 'reachBeginning',
4064
- 'reachEnd',
4065
- 'fromEdge',
4066
- 'setTranslate',
4067
- 'setTransition',
4068
- 'resize',
4069
- 'observerUpdate',
4070
- 'beforeLoopFix',
4071
- 'loopFix'
4072
- ];/*! *****************************************************************************
4073
- Copyright (c) Microsoft Corporation. All rights reserved.
4074
- Licensed under the Apache License, Version 2.0 (the "License"); you may not use
4075
- this file except in compliance with the License. You may obtain a copy of the
4076
- License at http://www.apache.org/licenses/LICENSE-2.0
4077
-
4078
- THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
4079
- KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
4080
- WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
4081
- MERCHANTABLITY OR NON-INFRINGEMENT.
4082
-
4083
- See the Apache Version 2.0 License for specific language governing permissions
4084
- and limitations under the License.
4085
- ***************************************************************************** */
4086
-
4087
- function __spreadArrays() {
4088
- for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;
4089
- for (var r = Array(s), k = 0, i = 0; i < il; i++)
4090
- for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)
4091
- r[k] = a[j];
4092
- return r;
4093
- }/**
4094
- * @file vue-awesome-swiper
4095
- * @module utils
4096
- * @author Surmon <https://github.com/surmon-china>
4097
- */
4098
- var kebabcase = function (string) {
4099
- return string
4100
- .replace(/([a-z])([A-Z])/g, '$1-$2')
4101
- .replace(/\s+/g, '-')
4102
- .toLowerCase();
4103
- };/**
4104
- * @file vue-awesome-swiper
4105
- * @module event
4106
- * @author Surmon <https://github.com/surmon-china>
4107
- */
4108
- var handleClickSlideEvent = function (swiper, event, emit) {
4109
- var _a, _b, _c;
4110
- if (swiper && !(swiper.destroyed)) {
4111
- var eventPath = ((_a = event.composedPath) === null || _a === void 0 ? void 0 : _a.call(event)) || event.path;
4112
- if ((event === null || event === void 0 ? void 0 : event.target) && eventPath) {
4113
- var slides_1 = Array.from(swiper.slides);
4114
- var paths = Array.from(eventPath);
4115
- // Click slide || slide[children]
4116
- if (slides_1.includes(event.target) || paths.some(function (item) { return slides_1.includes(item); })) {
4117
- var clickedIndex = swiper.clickedIndex;
4118
- var reallyIndex = Number((_c = (_b = swiper.clickedSlide) === null || _b === void 0 ? void 0 : _b.dataset) === null || _c === void 0 ? void 0 : _c.swiperSlideIndex);
4119
- var reallyIndexValue = Number.isInteger(reallyIndex) ? reallyIndex : null;
4120
- emit(ComponentEvents.ClickSlide, clickedIndex, reallyIndexValue);
4121
- emit(kebabcase(ComponentEvents.ClickSlide), clickedIndex, reallyIndexValue);
4122
- }
4123
- }
4124
- }
4125
- };
4126
- var bindSwiperEvents = function (swiper, emit) {
4127
- SWIPER_EVENTS.forEach(function (eventName) {
4128
- swiper.on(eventName, function () {
4129
- var arguments$1 = arguments;
4130
-
4131
- var args = [];
4132
- for (var _i = 0; _i < arguments.length; _i++) {
4133
- args[_i] = arguments$1[_i];
4134
- }
4135
- emit.apply(void 0, __spreadArrays([eventName], args));
4136
- var kebabcaseName = kebabcase(eventName);
4137
- if (kebabcaseName !== eventName) {
4138
- emit.apply(void 0, __spreadArrays([kebabcaseName], args));
4139
- }
4140
- });
4141
- });
4142
- };/**
4143
- * @file vue-awesome-swiper
4144
- * @module directive
4145
- * @author Surmon <https://github.com/surmon-china>
4146
- */
4147
- var INSTANCE_NAME_KEY = 'instanceName';
4148
- function getDirective(SwiperClass, globalOptions) {
4149
- var getStandardisedOptionByAttrs = function (vnode, key) {
4150
- var _a, _b, _c, _d;
4151
- var value = (_b = (_a = vnode.data) === null || _a === void 0 ? void 0 : _a.attrs) === null || _b === void 0 ? void 0 : _b[key];
4152
- return value !== undefined
4153
- ? value
4154
- : (_d = (_c = vnode.data) === null || _c === void 0 ? void 0 : _c.attrs) === null || _d === void 0 ? void 0 : _d[kebabcase(key)];
4155
- };
4156
- // Get swiper instace name in directive
4157
- var getSwiperInstanceName = function (element, binding, vnode) {
4158
- return (binding.arg ||
4159
- getStandardisedOptionByAttrs(vnode, INSTANCE_NAME_KEY) ||
4160
- element.id ||
4161
- CoreNames.SwiperInstance);
4162
- };
4163
- var getSwiperInstance = function (element, binding, vnode) {
4164
- var instanceName = getSwiperInstanceName(element, binding, vnode);
4165
- return vnode.context[instanceName] || null;
4166
- };
4167
- var getSwipeOptions = function (binding) {
4168
- return binding.value || globalOptions;
4169
- };
4170
- var getBooleanValueByInput = function (input) {
4171
- return [true, undefined, null, ''].includes(input);
4172
- };
4173
- // Emit event in Vue directive
4174
- var getEventEmiter = function (vnode) {
4175
- var _a, _b;
4176
- var handlers = ((_a = vnode.data) === null || _a === void 0 ? void 0 : _a.on) || ((_b = vnode.componentOptions) === null || _b === void 0 ? void 0 : _b.listeners);
4177
- return function (name) {
4178
- var arguments$1 = arguments;
4179
-
4180
- var args = [];
4181
- for (var _i = 1; _i < arguments.length; _i++) {
4182
- args[_i - 1] = arguments$1[_i];
4183
- }
4184
- var _a;
4185
- var handle = (_a = handlers) === null || _a === void 0 ? void 0 : _a[name];
4186
- if (handle) {
4187
- handle.fns.apply(handle, args);
4188
- }
4189
- };
4190
- };
4191
- return {
4192
- // Init
4193
- bind: function (element, binding, vnode) {
4194
- // auto class name
4195
- if (element.className.indexOf(DEFAULT_CLASSES.containerClass) === -1) {
4196
- element.className += ((element.className ? ' ' : '') + DEFAULT_CLASSES.containerClass);
4197
- }
4198
- // bind click event
4199
- element.addEventListener('click', function (event) {
4200
- var emitEvent = getEventEmiter(vnode);
4201
- var swiper = getSwiperInstance(element, binding, vnode);
4202
- handleClickSlideEvent(swiper, event, emitEvent);
4203
- });
4204
- },
4205
- // DOM inserted
4206
- inserted: function (element, binding, vnode) {
4207
- var context = vnode.context;
4208
- var swiperOptions = getSwipeOptions(binding);
4209
- var instanceName = getSwiperInstanceName(element, binding, vnode);
4210
- var emitEvent = getEventEmiter(vnode);
4211
- var vueContext = context;
4212
- var swiper = vueContext === null || vueContext === void 0 ? void 0 : vueContext[instanceName];
4213
- // Swiper will destroy but not delete instance, when used <keep-alive>
4214
- if (!swiper || swiper.destroyed) {
4215
- swiper = new SwiperClass(element, swiperOptions);
4216
- vueContext[instanceName] = swiper;
4217
- bindSwiperEvents(swiper, emitEvent);
4218
- emitEvent(ComponentEvents.Ready, swiper);
4219
- // MARK: Reinstance when the nexttick with <keep-alive>
4220
- // Vue.nextTick(instancing) | setTimeout(instancing)
4221
- }
4222
- },
4223
- // On options changed or DOM updated
4224
- componentUpdated: function (element, binding, vnode) {
4225
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m;
4226
- var autoUpdate = getStandardisedOptionByAttrs(vnode, ComponentPropNames.AutoUpdate);
4227
- if (getBooleanValueByInput(autoUpdate)) {
4228
- var swiper = getSwiperInstance(element, binding, vnode);
4229
- if (swiper) {
4230
- var swiperOptions = getSwipeOptions(binding);
4231
- var isLoop = swiperOptions.loop;
4232
- if (isLoop) {
4233
- (_b = (_a = swiper) === null || _a === void 0 ? void 0 : _a.loopDestroy) === null || _b === void 0 ? void 0 : _b.call(_a);
4234
- }
4235
- (_c = swiper === null || swiper === void 0 ? void 0 : swiper.update) === null || _c === void 0 ? void 0 : _c.call(swiper);
4236
- (_e = (_d = swiper.navigation) === null || _d === void 0 ? void 0 : _d.update) === null || _e === void 0 ? void 0 : _e.call(_d);
4237
- (_g = (_f = swiper.pagination) === null || _f === void 0 ? void 0 : _f.render) === null || _g === void 0 ? void 0 : _g.call(_f);
4238
- (_j = (_h = swiper.pagination) === null || _h === void 0 ? void 0 : _h.update) === null || _j === void 0 ? void 0 : _j.call(_h);
4239
- if (isLoop) {
4240
- (_l = (_k = swiper) === null || _k === void 0 ? void 0 : _k.loopCreate) === null || _l === void 0 ? void 0 : _l.call(_k);
4241
- (_m = swiper === null || swiper === void 0 ? void 0 : swiper.update) === null || _m === void 0 ? void 0 : _m.call(swiper);
4242
- }
4243
- }
4244
- }
4245
- },
4246
- // Destroy this directive
4247
- unbind: function (element, binding, vnode) {
4248
- var _a;
4249
- var autoDestroy = getStandardisedOptionByAttrs(vnode, ComponentPropNames.AutoDestroy);
4250
- if (getBooleanValueByInput(autoDestroy)) {
4251
- var swiper = getSwiperInstance(element, binding, vnode);
4252
- if (swiper && swiper.initialized) {
4253
- (_a = swiper === null || swiper === void 0 ? void 0 : swiper.destroy) === null || _a === void 0 ? void 0 : _a.call(swiper, getBooleanValueByInput(getStandardisedOptionByAttrs(vnode, ComponentPropNames.DeleteInstanceOnDestroy)), getBooleanValueByInput(getStandardisedOptionByAttrs(vnode, ComponentPropNames.CleanupStylesOnDestroy)));
4254
- }
4255
- }
4256
- }
4257
- };
4258
- }/**
4259
- * @file vue-awesome-swiper
4260
- * @module SwiperComponent
4261
- * @author Surmon <https://github.com/surmon-china>
4262
- */
4263
- var SlotNames;
4264
- (function (SlotNames) {
4265
- SlotNames["ParallaxBg"] = "parallax-bg";
4266
- SlotNames["Pagination"] = "pagination";
4267
- SlotNames["Scrollbar"] = "scrollbar";
4268
- SlotNames["PrevButton"] = "button-prev";
4269
- SlotNames["NextButton"] = "button-next";
4270
- })(SlotNames || (SlotNames = {}));
4271
- function getSwiperComponent(SwiperClass) {
4272
- var _a;
4273
- return Vue.extend({
4274
- name: CoreNames.SwiperComponent,
4275
- props: (_a = {
4276
- defaultOptions: {
4277
- type: Object,
4278
- required: false,
4279
- default: function () { return ({}); }
4280
- },
4281
- // eslint-disable-next-line vue/require-default-prop
4282
- options: {
4283
- type: Object,
4284
- required: false
4285
- }
4286
- },
4287
- _a[ComponentPropNames.AutoUpdate] = {
4288
- type: Boolean,
4289
- default: true
4290
- },
4291
- // https://github.com/surmon-china/vue-awesome-swiper/pull/550/files
4292
- _a[ComponentPropNames.AutoDestroy] = {
4293
- type: Boolean,
4294
- default: true
4295
- },
4296
- // https://github.com/surmon-china/vue-awesome-swiper/pull/388
4297
- _a[ComponentPropNames.DeleteInstanceOnDestroy] = {
4298
- type: Boolean,
4299
- required: false,
4300
- default: true
4301
- },
4302
- _a[ComponentPropNames.CleanupStylesOnDestroy] = {
4303
- type: Boolean,
4304
- required: false,
4305
- default: true
4306
- },
4307
- _a),
4308
- data: function () {
4309
- var _a;
4310
- return _a = {},
4311
- _a[CoreNames.SwiperInstance] = null,
4312
- _a;
4313
- },
4314
- computed: {
4315
- swiperInstance: {
4316
- cache: false,
4317
- set: function (swiper) {
4318
- this[CoreNames.SwiperInstance] = swiper;
4319
- },
4320
- get: function () {
4321
- return this[CoreNames.SwiperInstance];
4322
- }
4323
- },
4324
- swiperOptions: function () {
4325
- return this.options || this.defaultOptions;
4326
- },
4327
- wrapperClass: function () {
4328
- return this.swiperOptions.wrapperClass || DEFAULT_CLASSES.wrapperClass;
4329
- }
4330
- },
4331
- methods: {
4332
- // Feature: click event
4333
- handleSwiperClick: function (event) {
4334
- handleClickSlideEvent(this.swiperInstance, event, this.$emit.bind(this));
4335
- },
4336
- autoReLoopSwiper: function () {
4337
- var _a, _b;
4338
- if (this.swiperInstance && this.swiperOptions.loop) {
4339
- // https://github.com/surmon-china/vue-awesome-swiper/issues/593
4340
- // https://github.com/surmon-china/vue-awesome-swiper/issues/544
4341
- // https://github.com/surmon-china/vue-awesome-swiper/pull/545/files
4342
- var swiper = this.swiperInstance;
4343
- (_a = swiper === null || swiper === void 0 ? void 0 : swiper.loopDestroy) === null || _a === void 0 ? void 0 : _a.call(swiper);
4344
- (_b = swiper === null || swiper === void 0 ? void 0 : swiper.loopCreate) === null || _b === void 0 ? void 0 : _b.call(swiper);
4345
- }
4346
- },
4347
- updateSwiper: function () {
4348
- var _a, _b, _c, _d, _e, _f, _g, _h;
4349
- if (this[ComponentPropNames.AutoUpdate] && this.swiperInstance) {
4350
- this.autoReLoopSwiper();
4351
- (_b = (_a = this.swiperInstance) === null || _a === void 0 ? void 0 : _a.update) === null || _b === void 0 ? void 0 : _b.call(_a);
4352
- (_d = (_c = this.swiperInstance.navigation) === null || _c === void 0 ? void 0 : _c.update) === null || _d === void 0 ? void 0 : _d.call(_c);
4353
- (_f = (_e = this.swiperInstance.pagination) === null || _e === void 0 ? void 0 : _e.render) === null || _f === void 0 ? void 0 : _f.call(_e);
4354
- (_h = (_g = this.swiperInstance.pagination) === null || _g === void 0 ? void 0 : _g.update) === null || _h === void 0 ? void 0 : _h.call(_g);
4355
- }
4356
- },
4357
- destroySwiper: function () {
4358
- var _a, _b;
4359
- if (this[ComponentPropNames.AutoDestroy] && this.swiperInstance) {
4360
- // https://github.com/surmon-china/vue-awesome-swiper/pull/341
4361
- // https://github.com/surmon-china/vue-awesome-swiper/issues/340
4362
- if (this.swiperInstance.initialized) {
4363
- (_b = (_a = this.swiperInstance) === null || _a === void 0 ? void 0 : _a.destroy) === null || _b === void 0 ? void 0 : _b.call(_a, this[ComponentPropNames.DeleteInstanceOnDestroy], this[ComponentPropNames.CleanupStylesOnDestroy]);
4364
- }
4365
- }
4366
- },
4367
- initSwiper: function () {
4368
- this.swiperInstance = new SwiperClass(this.$el, this.swiperOptions);
4369
- bindSwiperEvents(this.swiperInstance, this.$emit.bind(this));
4370
- this.$emit(ComponentEvents.Ready, this.swiperInstance);
4371
- }
4372
- },
4373
- mounted: function () {
4374
- if (!this.swiperInstance) {
4375
- this.initSwiper();
4376
- }
4377
- },
4378
- // Update swiper when the parent component activated with `keep-alive`.
4379
- activated: function () {
4380
- this.updateSwiper();
4381
- },
4382
- updated: function () {
4383
- this.updateSwiper();
4384
- },
4385
- beforeDestroy: function () {
4386
- // https://github.com/surmon-china/vue-awesome-swiper/commit/2924a9d4d3d1cf51c0d46076410b1f804b2b8a43#diff-7f4e0261ac562c0f354cb91a1ca8864f
4387
- this.$nextTick(this.destroySwiper);
4388
- },
4389
- render: function (createElement) {
4390
- return createElement('div', {
4391
- staticClass: DEFAULT_CLASSES.containerClass,
4392
- on: {
4393
- click: this.handleSwiperClick
4394
- }
4395
- }, [
4396
- this.$slots[SlotNames.ParallaxBg],
4397
- createElement('div', {
4398
- class: this.wrapperClass
4399
- }, this.$slots.default),
4400
- this.$slots[SlotNames.Pagination],
4401
- this.$slots[SlotNames.PrevButton],
4402
- this.$slots[SlotNames.NextButton],
4403
- this.$slots[SlotNames.Scrollbar]
4404
- ]);
4405
- }
4406
- });
4407
- }/**
4408
- * @file vue-awesome-swiper
4409
- * @module SwiperSlideComponent
4410
- * @author Surmon <https://github.com/surmon-china>
4411
- */
4412
- var SwiperSlideComponent = Vue.extend({
4413
- name: CoreNames.SwiperSlideComponent,
4414
- computed: {
4415
- slideClass: function () {
4416
- var _a, _b;
4417
- return ((_b = (_a = this.$parent) === null || _a === void 0 ? void 0 : _a.swiperOptions) === null || _b === void 0 ? void 0 : _b.slideClass) || DEFAULT_CLASSES.slideClass;
4418
- }
4419
- },
4420
- methods: {
4421
- update: function () {
4422
- var _a;
4423
- var parent = this.$parent;
4424
- // https://github.com/surmon-china/vue-awesome-swiper/issues/632
4425
- if (parent[ComponentPropNames.AutoUpdate]) {
4426
- (_a = parent === null || parent === void 0 ? void 0 : parent.swiperInstance) === null || _a === void 0 ? void 0 : _a.update();
4427
- }
4428
- }
4429
- },
4430
- mounted: function () {
4431
- this.update();
4432
- },
4433
- updated: function () {
4434
- this.update();
4435
- },
4436
- render: function (createElement) {
4437
- return createElement('div', {
4438
- class: this.slideClass
4439
- }, this.$slots.default);
4440
- }
4441
- });/**
4442
- * @file vue-awesome-swiper
4443
- * @module exporter
4444
- * @author Surmon <https://github.com/surmon-china>
4445
- */
4446
- var getInstaller = function (SwiperClass) {
4447
- var install = function (Vue, globalOptions) {
4448
- if (install.installed)
4449
- { return; }
4450
- var SwiperComponent = getSwiperComponent(SwiperClass);
4451
- if (globalOptions) {
4452
- SwiperComponent.options.props.defaultOptions.default = function () { return globalOptions; };
4453
- }
4454
- Vue.component(CoreNames.SwiperComponent, SwiperComponent);
4455
- Vue.component(CoreNames.SwiperSlideComponent, SwiperSlideComponent);
4456
- Vue.directive(CoreNames.SwiperDirective, getDirective(SwiperClass, globalOptions));
4457
- install.installed = true;
4458
- };
4459
- return install;
4460
- };
4461
- function exporter(SwiperClass) {
4462
- var _a;
4463
- return _a = {
4464
- version: '4.1.1',
4465
- install: getInstaller(SwiperClass),
4466
- directive: getDirective(SwiperClass)
4467
- },
4468
- _a[CoreNames.SwiperComponent] = getSwiperComponent(SwiperClass),
4469
- _a[CoreNames.SwiperSlideComponent] = SwiperSlideComponent,
4470
- _a;
4471
- }/**
4472
- * @file vue-awesome-swiper
4473
- * @module default-export
4474
- * @author Surmon <https://github.com/surmon-china>
4475
- */
4476
- var VueAwesomeSwiper = exporter(SwiperClass);
4477
- var version = VueAwesomeSwiper.version;
4478
- var install = VueAwesomeSwiper.install;
4479
- var directive = VueAwesomeSwiper.directive;
4480
- var Swiper = VueAwesomeSwiper.Swiper;
4481
- var SwiperSlide = VueAwesomeSwiper.SwiperSlide;exports.Swiper=Swiper;exports.SwiperSlide=SwiperSlide;exports.default=VueAwesomeSwiper;exports.directive=directive;exports.install=install;exports.version=version;Object.defineProperty(exports,'__esModule',{value:true});})));
4482
-
4483
- /***/ }),
4484
-
4485
- /***/ "b061":
4486
- /***/ (function(module, exports) {
4487
-
4488
- var g;
4489
-
4490
- // This works in non-strict mode
4491
- g = (function() {
4492
- return this;
4493
- })();
4494
-
4495
- try {
4496
- // This works if eval is allowed (see CSP)
4497
- g = g || new Function("return this")();
4498
- } catch (e) {
4499
- // This works if the window reference is available
4500
- if (typeof window === "object") g = window;
4501
- }
4502
-
4503
- // g can still be undefined, but nothing to do about it...
4504
- // We return undefined, instead of nothing here, so it's
4505
- // easier to handle this case. if(!global) { ...}
4506
-
4507
- module.exports = g;
4508
-
4509
-
4510
- /***/ }),
4511
-
4512
- /***/ "b156":
4513
- /***/ (function(module, exports, __webpack_require__) {
4514
-
4515
- // extracted by mini-css-extract-plugin
4516
-
4517
- /***/ }),
4518
-
4519
- /***/ "b61c":
4520
- /***/ (function(module, exports, __webpack_require__) {
4521
-
4522
- // extracted by mini-css-extract-plugin
4034
+ /***/ "b61c":
4035
+ /***/ (function(module, exports, __webpack_require__) {
4036
+
4037
+ // extracted by mini-css-extract-plugin
4523
4038
 
4524
4039
  /***/ }),
4525
4040
 
@@ -4687,126 +4202,7 @@ module.exports = DESCRIPTORS && fails(function () {
4687
4202
 
4688
4203
  /***/ }),
4689
4204
 
4690
- /***/ "ccf6":
4691
- /***/ (function(module, exports) {
4692
-
4693
- 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\">\r\n </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 && !isContainsPublished) ? '' : '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&&list.length\">\r\n <i-table class=\"diy-table diy-table-scorll\" :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=\"authFlag\" slot-scope=\"{row,index}\">\r\n <i-switch class=\"diy-switch\" :value=\"row.authFlag\" :true-value=\"1\" :false-value=\"0\" @on-change=\"onAuthFlagChange($event, row, index)\">\r\n <span slot=\"open\">是</span>\r\n <span slot=\"close\">否</span>\r\n </i-switch>\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=\"onDetail(row)\" title=\"查看\" class=\"iconfont icon-a-xinzengzhibiaobeifen9\"></i>\r\n <i @click=\"onCopy(row)\" title=\"复制\" class=\"iconfont icon-fuzhi1\"> </i>\r\n <template v-if=\"row.status!=='PUBLISHED'\">\r\n <i @click=\"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"
4694
-
4695
- /***/ }),
4696
-
4697
- /***/ "cd69":
4698
- /***/ (function(module, exports, __webpack_require__) {
4699
-
4700
- "use strict";
4701
-
4702
- var ceil = Math.ceil;
4703
- var floor = Math.floor;
4704
-
4705
- // `Math.trunc` method
4706
- // https://tc39.es/ecma262/#sec-math.trunc
4707
- // eslint-disable-next-line es/no-math-trunc -- safe
4708
- module.exports = Math.trunc || function trunc(x) {
4709
- var n = +x;
4710
- return (n > 0 ? floor : ceil)(n);
4711
- };
4712
-
4713
-
4714
- /***/ }),
4715
-
4716
- /***/ "ce8f":
4717
- /***/ (function(module, exports) {
4718
-
4719
- module.exports = __WEBPACK_EXTERNAL_MODULE_ce8f__;
4720
-
4721
- /***/ }),
4722
-
4723
- /***/ "ce97":
4724
- /***/ (function(module, exports, __webpack_require__) {
4725
-
4726
- "use strict";
4727
-
4728
- var classof = __webpack_require__("aaa6");
4729
-
4730
- var $String = String;
4731
-
4732
- module.exports = function (argument) {
4733
- if (classof(argument) === 'Symbol') throw new TypeError('Cannot convert a Symbol value to a string');
4734
- return $String(argument);
4735
- };
4736
-
4737
-
4738
- /***/ }),
4739
-
4740
- /***/ "cebe":
4741
- /***/ (function(module, exports) {
4742
-
4743
- module.exports = __WEBPACK_EXTERNAL_MODULE_cebe__;
4744
-
4745
- /***/ }),
4746
-
4747
- /***/ "cf8c":
4748
- /***/ (function(module, exports, __webpack_require__) {
4749
-
4750
- "use strict";
4751
-
4752
- var toIndexedObject = __webpack_require__("485f");
4753
- var toAbsoluteIndex = __webpack_require__("575c");
4754
- var lengthOfArrayLike = __webpack_require__("d631");
4755
-
4756
- // `Array.prototype.{ indexOf, includes }` methods implementation
4757
- var createMethod = function (IS_INCLUDES) {
4758
- return function ($this, el, fromIndex) {
4759
- var O = toIndexedObject($this);
4760
- var length = lengthOfArrayLike(O);
4761
- var index = toAbsoluteIndex(fromIndex, length);
4762
- var value;
4763
- // Array#includes uses SameValueZero equality algorithm
4764
- // eslint-disable-next-line no-self-compare -- NaN check
4765
- if (IS_INCLUDES && el !== el) while (length > index) {
4766
- value = O[index++];
4767
- // eslint-disable-next-line no-self-compare -- NaN check
4768
- if (value !== value) return true;
4769
- // Array#indexOf ignores holes, Array#includes - not
4770
- } else for (;length > index; index++) {
4771
- if ((IS_INCLUDES || index in O) && O[index] === el) return IS_INCLUDES || index || 0;
4772
- } return !IS_INCLUDES && -1;
4773
- };
4774
- };
4775
-
4776
- module.exports = {
4777
- // `Array.prototype.includes` method
4778
- // https://tc39.es/ecma262/#sec-array.prototype.includes
4779
- includes: createMethod(true),
4780
- // `Array.prototype.indexOf` method
4781
- // https://tc39.es/ecma262/#sec-array.prototype.indexof
4782
- indexOf: createMethod(false)
4783
- };
4784
-
4785
-
4786
- /***/ }),
4787
-
4788
- /***/ "cfb3":
4789
- /***/ (function(module, exports) {
4790
-
4791
- 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"
4792
-
4793
- /***/ }),
4794
-
4795
- /***/ "cfde":
4796
- /***/ (function(module, exports, __webpack_require__) {
4797
-
4798
- // extracted by mini-css-extract-plugin
4799
-
4800
- /***/ }),
4801
-
4802
- /***/ "d30a":
4803
- /***/ (function(module, exports) {
4804
-
4805
- 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"
4806
-
4807
- /***/ }),
4808
-
4809
- /***/ "d345":
4205
+ /***/ "cb40":
4810
4206
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
4811
4207
 
4812
4208
  "use strict";
@@ -4821,7 +4217,7 @@ __webpack_require__.d(__webpack_exports__, "ProjectDetail", function() { return
4821
4217
  __webpack_require__.d(__webpack_exports__, "ProjectList", function() { return /* reexport */ views_project_list; });
4822
4218
  __webpack_require__.d(__webpack_exports__, "injectEnableUserCenterCookie", function() { return /* reexport */ injectEnableUserCenterCookie; });
4823
4219
 
4824
- // CONCATENATED MODULE: ./node_modules/.pnpm/@vue+cli-service@4.5.19_4j72uuzxhpprprr3owyhj65lvq/node_modules/@vue/cli-service/lib/commands/build/setPublicPath.js
4220
+ // CONCATENATED MODULE: ./node_modules/.pnpm/@vue+cli-service@4.5.19_raw-loader@1.0.0_sass-load_6c5aczzntsl4dewyqjyegjkf6q/node_modules/@vue/cli-service/lib/commands/build/setPublicPath.js
4825
4221
  // This file is imported into lib/wc client bundles.
4826
4222
 
4827
4223
  if (typeof window !== 'undefined') {
@@ -10591,10 +9987,19 @@ var project_comment = __webpack_require__("65e5");
10591
9987
  var dist = __webpack_require__("7af4");
10592
9988
  var dist_default = /*#__PURE__*/__webpack_require__.n(dist);
10593
9989
 
9990
+ // EXTERNAL MODULE: ./node_modules/.pnpm/core-js@3.35.0/node_modules/core-js/modules/es.error.cause.js
9991
+ var es_error_cause = __webpack_require__("0ddb");
9992
+
10594
9993
  // CONCATENATED MODULE: ./src/views/project-detail/service.ts
10595
9994
 
10596
9995
 
10597
9996
 
9997
+
9998
+
9999
+
10000
+
10001
+
10002
+
10598
10003
  var service_ApiService = /** @class */function (_super) {
10599
10004
  __extends(ApiService, _super);
10600
10005
  function ApiService() {
@@ -10646,6 +10051,90 @@ var service_ApiService = /** @class */function (_super) {
10646
10051
  ApiService.prototype.runWithFile = function (apiId, data) {
10647
10052
  return this._post("/unity/api/run/".concat(apiId, "/exec"), data);
10648
10053
  };
10054
+ ApiService.prototype.runStream = function (apiId, apiInfo, handlers) {
10055
+ var _a, _b;
10056
+ if (handlers === void 0) {
10057
+ handlers = {};
10058
+ }
10059
+ return __awaiter(this, void 0, void 0, function () {
10060
+ var config, queryString, requestUrl, response, responseHeaders, reader, decoder, originalContent, size, _c, done, value, chunk;
10061
+ return __generator(this, function (_d) {
10062
+ switch (_d.label) {
10063
+ case 0:
10064
+ config = {
10065
+ method: "POST",
10066
+ baseURL: window.location.origin,
10067
+ url: this.url("/unity/api/run/".concat(apiId, "/web")),
10068
+ data: apiInfo,
10069
+ headers: __assign({
10070
+ "Content-Type": "application/json"
10071
+ }, getToken().headers),
10072
+ params: {}
10073
+ };
10074
+ signature.signatureConfig(config);
10075
+ queryString = new URLSearchParams(config.params).toString();
10076
+ requestUrl = queryString ? "".concat(config.url, "?").concat(queryString) : "".concat(config.url);
10077
+ return [4 /*yield*/, fetch(requestUrl, {
10078
+ method: "POST",
10079
+ headers: config.headers,
10080
+ body: JSON.stringify(apiInfo)
10081
+ })];
10082
+ case 1:
10083
+ response = _d.sent();
10084
+ responseHeaders = {};
10085
+ response.headers.forEach(function (value, key) {
10086
+ responseHeaders[key] = value;
10087
+ });
10088
+ (_a = handlers.onHeaders) === null || _a === void 0 ? void 0 : _a.call(handlers, {
10089
+ code: response.status,
10090
+ responseHeaders: responseHeaders
10091
+ });
10092
+ if (!response.ok) {
10093
+ throw new Error("\u8BF7\u6C42\u5931\u8D25(".concat(response.status, ")"));
10094
+ }
10095
+ if (!response.body) {
10096
+ return [2 /*return*/, {
10097
+ code: response.status,
10098
+ responseHeaders: responseHeaders,
10099
+ originalContent: "",
10100
+ size: 0
10101
+ }];
10102
+ }
10103
+ reader = response.body.getReader();
10104
+ decoder = new TextDecoder("utf-8");
10105
+ originalContent = "";
10106
+ size = 0;
10107
+ _d.label = 2;
10108
+ case 2:
10109
+ if (false) {}
10110
+ return [4 /*yield*/, reader.read()];
10111
+ case 3:
10112
+ _c = _d.sent(), done = _c.done, value = _c.value;
10113
+ if (done) {
10114
+ originalContent += decoder.decode();
10115
+ return [3 /*break*/, 4];
10116
+ }
10117
+ chunk = decoder.decode(value, {
10118
+ stream: true
10119
+ });
10120
+ originalContent += chunk;
10121
+ size += (value === null || value === void 0 ? void 0 : value.length) || 0;
10122
+ (_b = handlers.onChunk) === null || _b === void 0 ? void 0 : _b.call(handlers, {
10123
+ chunk: chunk,
10124
+ size: size
10125
+ });
10126
+ return [3 /*break*/, 2];
10127
+ case 4:
10128
+ return [2 /*return*/, {
10129
+ code: response.status,
10130
+ responseHeaders: responseHeaders,
10131
+ originalContent: originalContent,
10132
+ size: size
10133
+ }];
10134
+ }
10135
+ });
10136
+ });
10137
+ };
10649
10138
  ApiService.prototype.saveApiInfo = function (apiInfo) {
10650
10139
  return this._post("/unity/api/info/save/whole", apiInfo);
10651
10140
  };
@@ -11395,8 +10884,8 @@ var environment_variable_modal_EnvironmentVariableModal = /** @class */function
11395
10884
  // EXTERNAL MODULE: ./src/views/project-detail/index.scss
11396
10885
  var project_detail = __webpack_require__("fe54");
11397
10886
 
11398
- // EXTERNAL MODULE: ./node_modules/.pnpm/core-js@3.35.0/node_modules/core-js/modules/es.error.cause.js
11399
- var es_error_cause = __webpack_require__("0ddb");
10887
+ // EXTERNAL MODULE: ./node_modules/.pnpm/core-js@3.35.0/node_modules/core-js/modules/es.array.reduce.js
10888
+ var es_array_reduce = __webpack_require__("8b65");
11400
10889
 
11401
10890
  // CONCATENATED MODULE: ./src/views/project-detail/interface-settings/model.ts
11402
10891
 
@@ -11805,7 +11294,7 @@ var code_editor_CodeEditor = /** @class */function (_super) {
11805
11294
  }(flagwind_web_umd_js_["Component"]);
11806
11295
  /* harmony default export */ var components_code_editor = (code_editor_CodeEditor);
11807
11296
  // EXTERNAL MODULE: ./src/views/project-detail/response/index.scss
11808
- var response = __webpack_require__("aba0");
11297
+ var project_detail_response = __webpack_require__("aba0");
11809
11298
 
11810
11299
  // CONCATENATED MODULE: ./src/views/project-detail/response/index.ts
11811
11300
 
@@ -11826,6 +11315,11 @@ var Response = /** @class */function () {
11826
11315
  return Response;
11827
11316
  }();
11828
11317
 
11318
+ var ResponseInterfaceInfo = /** @class */function () {
11319
+ function ResponseInterfaceInfo() {}
11320
+ return ResponseInterfaceInfo;
11321
+ }();
11322
+
11829
11323
  var response_ResponsePanel = /** @class */function (_super) {
11830
11324
  __extends(ResponsePanel, _super);
11831
11325
  function ResponsePanel() {
@@ -11985,6 +11479,11 @@ var response_ResponsePanel = /** @class */function (_super) {
11985
11479
  return new Response();
11986
11480
  }
11987
11481
  })], ResponsePanel.prototype, "response", void 0);
11482
+ __decorate([Object(flagwind_web_["config"])({
11483
+ default: function () {
11484
+ return new ResponseInterfaceInfo();
11485
+ }
11486
+ })], ResponsePanel.prototype, "interfaceInfo", void 0);
11988
11487
  __decorate([Object(flagwind_web_["watch"])("response", {
11989
11488
  immediate: true,
11990
11489
  deep: false
@@ -11997,7 +11496,7 @@ var response_ResponsePanel = /** @class */function (_super) {
11997
11496
  })], ResponsePanel);
11998
11497
  return ResponsePanel;
11999
11498
  }(base_editor_setting);
12000
- /* harmony default export */ var project_detail_response = (response_ResponsePanel);
11499
+ /* harmony default export */ var views_project_detail_response = (response_ResponsePanel);
12001
11500
  // EXTERNAL MODULE: ./src/views/project-detail/after-execution-transfer/index.scss
12002
11501
  var after_execution_transfer = __webpack_require__("8a77");
12003
11502
 
@@ -13345,9 +12844,6 @@ var security_setting_v2_SecuritySettingV2 = /** @class */function (_super) {
13345
12844
  return SecuritySettingV2;
13346
12845
  }(flagwind_web_["Component"]);
13347
12846
  /* harmony default export */ var project_detail_security_setting_v2 = (security_setting_v2_SecuritySettingV2);
13348
- // EXTERNAL MODULE: ./node_modules/.pnpm/core-js@3.35.0/node_modules/core-js/modules/es.array.reduce.js
13349
- var es_array_reduce = __webpack_require__("8b65");
13350
-
13351
12847
  // EXTERNAL MODULE: ./src/views/project-detail/interface-settings/tips-table-label/index.scss
13352
12848
  var tips_table_label = __webpack_require__("0a2e");
13353
12849
 
@@ -14165,6 +13661,7 @@ var process_drawer_InterfaceModal = /** @class */function (_super) {
14165
13661
 
14166
13662
 
14167
13663
 
13664
+
14168
13665
  // import SecuritySetting from "../security-setting";
14169
13666
 
14170
13667
 
@@ -14179,6 +13676,7 @@ var interface_settings_InterfaceSettings = /** @class */function (_super) {
14179
13676
  _this.response = new Response();
14180
13677
  _this.responseCache = new Map();
14181
13678
  _this.loading = false;
13679
+ _this.runLoading = false;
14182
13680
  _this.showEnvironmentModal = false;
14183
13681
  _this.currentId = "";
14184
13682
  _this.paramList = [];
@@ -14257,14 +13755,14 @@ var interface_settings_InterfaceSettings = /** @class */function (_super) {
14257
13755
  });
14258
13756
  };
14259
13757
  InterfaceSettings.prototype.onRun = function () {
14260
- var _a, _b, _c, _d, _e, _f;
13758
+ var _a, _b, _c, _d, _e, _f, _g;
14261
13759
  return __awaiter(this, void 0, void 0, function () {
14262
- var formParams, requestHeaders, index, result, fileFormParams, _model, tmpFormData_1;
13760
+ var formParams, requestHeaders, index, result, fileFormParams, isStreamResponse, response, start_1, streamResult, error_1, _model, tmpFormData_1;
14263
13761
  var _this = this;
14264
- return __generator(this, function (_g) {
14265
- switch (_g.label) {
13762
+ return __generator(this, function (_h) {
13763
+ switch (_h.label) {
14266
13764
  case 0:
14267
- this.loading = true;
13765
+ this.runLoading = true;
14268
13766
  formParams = [];
14269
13767
  requestHeaders = [];
14270
13768
  if (((_a = this.interfaceModel.formParams) === null || _a === void 0 ? void 0 : _a.length) > 0) {
@@ -14287,7 +13785,70 @@ var interface_settings_InterfaceSettings = /** @class */function (_super) {
14287
13785
  fileFormParams = formParams.filter(function (item) {
14288
13786
  return item.valueType === "FILE";
14289
13787
  });
14290
- if (!fileFormParams.length) return [3 /*break*/, 2];
13788
+ isStreamResponse = ((_d = this.interfaceModel.info) === null || _d === void 0 ? void 0 : _d.streamResponseFlag) === 1;
13789
+ this.loading = !isStreamResponse || !!fileFormParams.length;
13790
+ _h.label = 1;
13791
+ case 1:
13792
+ _h.trys.push([1,, 11, 12]);
13793
+ if (!(isStreamResponse && !fileFormParams.length)) return [3 /*break*/, 6];
13794
+ response = new Response();
13795
+ response.streaming = true;
13796
+ response.requestHeaders = requestHeaders.reduce(function (headers, item) {
13797
+ if (item === null || item === void 0 ? void 0 : item.name) {
13798
+ headers[item.name] = item.value;
13799
+ }
13800
+ return headers;
13801
+ }, {});
13802
+ this.response = response;
13803
+ start_1 = Date.now();
13804
+ _h.label = 2;
13805
+ case 2:
13806
+ _h.trys.push([2, 4,, 5]);
13807
+ return [4 /*yield*/, this.service.runStream(this.interfaceModel.info.id, __assign(__assign({}, this.interfaceModel), {
13808
+ formParams: formParams,
13809
+ requestHeaders: requestHeaders
13810
+ }), {
13811
+ onHeaders: function (_a) {
13812
+ var code = _a.code,
13813
+ responseHeaders = _a.responseHeaders;
13814
+ _this.response = __assign(__assign({}, _this.response), {
13815
+ code: code,
13816
+ responseHeaders: responseHeaders,
13817
+ time: Date.now() - start_1
13818
+ });
13819
+ },
13820
+ onChunk: function (_a) {
13821
+ var chunk = _a.chunk,
13822
+ size = _a.size;
13823
+ _this.response = __assign(__assign({}, _this.response), {
13824
+ originalContent: (_this.response.originalContent || "") + chunk,
13825
+ size: size,
13826
+ time: Date.now() - start_1
13827
+ });
13828
+ }
13829
+ })];
13830
+ case 3:
13831
+ streamResult = _h.sent();
13832
+ this.response = __assign(__assign({}, this.response), {
13833
+ code: streamResult.code,
13834
+ responseHeaders: streamResult.responseHeaders,
13835
+ originalContent: streamResult.originalContent,
13836
+ size: streamResult.size,
13837
+ time: Date.now() - start_1
13838
+ });
13839
+ return [3 /*break*/, 5];
13840
+ case 4:
13841
+ error_1 = _h.sent();
13842
+ this.response = __assign(__assign({}, this.response), {
13843
+ code: this.response.code || 500,
13844
+ errorMessage: (error_1 === null || error_1 === void 0 ? void 0 : error_1.message) || "流式请求失败",
13845
+ time: Date.now() - start_1
13846
+ });
13847
+ return [3 /*break*/, 5];
13848
+ case 5:
13849
+ return [3 /*break*/, 10];
13850
+ case 6:
13851
+ if (!fileFormParams.length) return [3 /*break*/, 8];
14291
13852
  _model = __assign(__assign({}, this.interfaceModel), {
14292
13853
  formParams: formParams,
14293
13854
  requestHeaders: requestHeaders
@@ -14298,31 +13859,41 @@ var interface_settings_InterfaceSettings = /** @class */function (_super) {
14298
13859
  });
14299
13860
  tmpFormData_1.append("_model", JSON.stringify(_model));
14300
13861
  return [4 /*yield*/, this.service.runWithFile(this.interfaceModel.info.id, tmpFormData_1)];
14301
- case 1:
14302
- result = _g.sent();
14303
- return [3 /*break*/, 4];
14304
- case 2:
13862
+ case 7:
13863
+ result = _h.sent();
13864
+ this.response = (result === null || result === void 0 ? void 0 : result.result) || new Response();
13865
+ if (result.hasError) {
13866
+ this.response.code = 400;
13867
+ this.response.errorMessage = result.message;
13868
+ }
13869
+ return [3 /*break*/, 10];
13870
+ case 8:
14305
13871
  return [4 /*yield*/, this.service.run(this.interfaceModel.info.id, __assign(__assign({}, this.interfaceModel), {
14306
13872
  formParams: formParams,
14307
13873
  requestHeaders: requestHeaders
14308
13874
  }))];
14309
- case 3:
14310
- result = _g.sent();
14311
- _g.label = 4;
14312
- case 4:
14313
- this.loading = false;
13875
+ case 9:
13876
+ result = _h.sent();
14314
13877
  this.response = (result === null || result === void 0 ? void 0 : result.result) || new Response();
14315
13878
  if (result.hasError) {
14316
13879
  this.response.code = 400;
14317
13880
  this.response.errorMessage = result.message;
14318
13881
  }
13882
+ _h.label = 10;
13883
+ case 10:
14319
13884
  this.responseCache.set(this.interfaceModel.info.id, this.response);
14320
- if ((_d = this.response.errorLineNumbers) === null || _d === void 0 ? void 0 : _d.length) {
13885
+ if ((_e = this.response.errorLineNumbers) === null || _e === void 0 ? void 0 : _e.length) {
14321
13886
  this.errorLine = this.response.errorLineNumbers;
14322
13887
  } else {
14323
13888
  this.errorLine = null;
14324
13889
  }
14325
- this.originId = ((_f = (_e = this.interfaceModel) === null || _e === void 0 ? void 0 : _e.info) === null || _f === void 0 ? void 0 : _f.id) || "";
13890
+ this.originId = ((_g = (_f = this.interfaceModel) === null || _f === void 0 ? void 0 : _f.info) === null || _g === void 0 ? void 0 : _g.id) || "";
13891
+ return [3 /*break*/, 12];
13892
+ case 11:
13893
+ this.loading = false;
13894
+ this.runLoading = false;
13895
+ return [7 /*endfinally*/];
13896
+ case 12:
14326
13897
  return [2 /*return*/];
14327
13898
  }
14328
13899
  });
@@ -14367,6 +13938,10 @@ var interface_settings_InterfaceSettings = /** @class */function (_super) {
14367
13938
  });
14368
13939
  };
14369
13940
  InterfaceSettings.prototype.interfaceModelChange = function () {
13941
+ var _a, _b;
13942
+ if (((_b = (_a = this.interfaceModel) === null || _a === void 0 ? void 0 : _a.info) === null || _b === void 0 ? void 0 : _b.streamResponseFlag) !== 1) {
13943
+ this.interfaceModel.info.streamResponseFlag = 0;
13944
+ }
14370
13945
  this.response = this.responseCache.get(this.interfaceModel.info.id) || new Response();
14371
13946
  };
14372
13947
  InterfaceSettings.prototype.showImportModalChange = function (value) {
@@ -14610,7 +14185,7 @@ var interface_settings_InterfaceSettings = /** @class */function (_super) {
14610
14185
  InterfaceSettings = __decorate([Object(flagwind_web_["component"])({
14611
14186
  template: __webpack_require__("f40e"),
14612
14187
  components: {
14613
- response: project_detail_response,
14188
+ response: views_project_detail_response,
14614
14189
  params: project_detail_params_setting,
14615
14190
  headers: project_detail_headers_setting,
14616
14191
  // security: SecuritySetting,
@@ -15612,8 +15187,8 @@ var tree_ProjectTree = /** @class */function (_super) {
15612
15187
  return ProjectTree;
15613
15188
  }(flagwind_web_["Component"]);
15614
15189
  /* harmony default export */ var views_project_detail_tree = (tree_ProjectTree);
15615
- // EXTERNAL MODULE: ./node_modules/.pnpm/vue-awesome-swiper@4.1.1_swiper@6.8.4+vue@2.7.16/node_modules/vue-awesome-swiper/dist/vue-awesome-swiper.js
15616
- var vue_awesome_swiper = __webpack_require__("b042");
15190
+ // EXTERNAL MODULE: ./node_modules/.pnpm/vue-awesome-swiper@4.1.1_swiper@6.8.4_vue@2.7.16/node_modules/vue-awesome-swiper/dist/vue-awesome-swiper.js
15191
+ var vue_awesome_swiper = __webpack_require__("ed38");
15617
15192
 
15618
15193
  // CONCATENATED MODULE: ./src/views/project-detail/index.ts
15619
15194
 
@@ -16004,26 +15579,145 @@ var project_detail_ProjectDetail = /** @class */function (_super) {
16004
15579
 
16005
15580
  external_vue_default.a.use(external_halo_math_default.a);
16006
15581
 
16007
- // CONCATENATED MODULE: ./node_modules/.pnpm/@vue+cli-service@4.5.19_4j72uuzxhpprprr3owyhj65lvq/node_modules/@vue/cli-service/lib/commands/build/entry-lib-no-default.js
15582
+ // CONCATENATED MODULE: ./node_modules/.pnpm/@vue+cli-service@4.5.19_raw-loader@1.0.0_sass-load_6c5aczzntsl4dewyqjyegjkf6q/node_modules/@vue/cli-service/lib/commands/build/entry-lib-no-default.js
16008
15583
 
16009
15584
 
16010
15585
 
16011
15586
 
16012
15587
  /***/ }),
16013
15588
 
16014
- /***/ "d371":
15589
+ /***/ "ccf6":
15590
+ /***/ (function(module, exports) {
15591
+
15592
+ 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\">\r\n </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 && !isContainsPublished) ? '' : '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&&list.length\">\r\n <i-table class=\"diy-table diy-table-scorll\" :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=\"authFlag\" slot-scope=\"{row,index}\">\r\n <i-switch class=\"diy-switch\" :value=\"row.authFlag\" :true-value=\"1\" :false-value=\"0\" @on-change=\"onAuthFlagChange($event, row, index)\">\r\n <span slot=\"open\">是</span>\r\n <span slot=\"close\">否</span>\r\n </i-switch>\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=\"onDetail(row)\" title=\"查看\" class=\"iconfont icon-a-xinzengzhibiaobeifen9\"></i>\r\n <i @click=\"onCopy(row)\" title=\"复制\" class=\"iconfont icon-fuzhi1\"> </i>\r\n <template v-if=\"row.status!=='PUBLISHED'\">\r\n <i @click=\"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"
15593
+
15594
+ /***/ }),
15595
+
15596
+ /***/ "cd69":
16015
15597
  /***/ (function(module, exports, __webpack_require__) {
16016
15598
 
16017
15599
  "use strict";
16018
15600
 
16019
- var DESCRIPTORS = __webpack_require__("e900");
16020
- var uncurryThis = __webpack_require__("720f");
16021
- var defineBuiltInAccessor = __webpack_require__("889b");
16022
-
16023
- var URLSearchParamsPrototype = URLSearchParams.prototype;
16024
- var forEach = uncurryThis(URLSearchParamsPrototype.forEach);
15601
+ var ceil = Math.ceil;
15602
+ var floor = Math.floor;
16025
15603
 
16026
- // `URLSearchParams.prototype.size` getter
15604
+ // `Math.trunc` method
15605
+ // https://tc39.es/ecma262/#sec-math.trunc
15606
+ // eslint-disable-next-line es/no-math-trunc -- safe
15607
+ module.exports = Math.trunc || function trunc(x) {
15608
+ var n = +x;
15609
+ return (n > 0 ? floor : ceil)(n);
15610
+ };
15611
+
15612
+
15613
+ /***/ }),
15614
+
15615
+ /***/ "ce8f":
15616
+ /***/ (function(module, exports) {
15617
+
15618
+ module.exports = __WEBPACK_EXTERNAL_MODULE_ce8f__;
15619
+
15620
+ /***/ }),
15621
+
15622
+ /***/ "ce97":
15623
+ /***/ (function(module, exports, __webpack_require__) {
15624
+
15625
+ "use strict";
15626
+
15627
+ var classof = __webpack_require__("aaa6");
15628
+
15629
+ var $String = String;
15630
+
15631
+ module.exports = function (argument) {
15632
+ if (classof(argument) === 'Symbol') throw new TypeError('Cannot convert a Symbol value to a string');
15633
+ return $String(argument);
15634
+ };
15635
+
15636
+
15637
+ /***/ }),
15638
+
15639
+ /***/ "cebe":
15640
+ /***/ (function(module, exports) {
15641
+
15642
+ module.exports = __WEBPACK_EXTERNAL_MODULE_cebe__;
15643
+
15644
+ /***/ }),
15645
+
15646
+ /***/ "cf8c":
15647
+ /***/ (function(module, exports, __webpack_require__) {
15648
+
15649
+ "use strict";
15650
+
15651
+ var toIndexedObject = __webpack_require__("485f");
15652
+ var toAbsoluteIndex = __webpack_require__("575c");
15653
+ var lengthOfArrayLike = __webpack_require__("d631");
15654
+
15655
+ // `Array.prototype.{ indexOf, includes }` methods implementation
15656
+ var createMethod = function (IS_INCLUDES) {
15657
+ return function ($this, el, fromIndex) {
15658
+ var O = toIndexedObject($this);
15659
+ var length = lengthOfArrayLike(O);
15660
+ var index = toAbsoluteIndex(fromIndex, length);
15661
+ var value;
15662
+ // Array#includes uses SameValueZero equality algorithm
15663
+ // eslint-disable-next-line no-self-compare -- NaN check
15664
+ if (IS_INCLUDES && el !== el) while (length > index) {
15665
+ value = O[index++];
15666
+ // eslint-disable-next-line no-self-compare -- NaN check
15667
+ if (value !== value) return true;
15668
+ // Array#indexOf ignores holes, Array#includes - not
15669
+ } else for (;length > index; index++) {
15670
+ if ((IS_INCLUDES || index in O) && O[index] === el) return IS_INCLUDES || index || 0;
15671
+ } return !IS_INCLUDES && -1;
15672
+ };
15673
+ };
15674
+
15675
+ module.exports = {
15676
+ // `Array.prototype.includes` method
15677
+ // https://tc39.es/ecma262/#sec-array.prototype.includes
15678
+ includes: createMethod(true),
15679
+ // `Array.prototype.indexOf` method
15680
+ // https://tc39.es/ecma262/#sec-array.prototype.indexof
15681
+ indexOf: createMethod(false)
15682
+ };
15683
+
15684
+
15685
+ /***/ }),
15686
+
15687
+ /***/ "cfb3":
15688
+ /***/ (function(module, exports) {
15689
+
15690
+ 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"
15691
+
15692
+ /***/ }),
15693
+
15694
+ /***/ "cfde":
15695
+ /***/ (function(module, exports, __webpack_require__) {
15696
+
15697
+ // extracted by mini-css-extract-plugin
15698
+
15699
+ /***/ }),
15700
+
15701
+ /***/ "d30a":
15702
+ /***/ (function(module, exports) {
15703
+
15704
+ 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"
15705
+
15706
+ /***/ }),
15707
+
15708
+ /***/ "d371":
15709
+ /***/ (function(module, exports, __webpack_require__) {
15710
+
15711
+ "use strict";
15712
+
15713
+ var DESCRIPTORS = __webpack_require__("e900");
15714
+ var uncurryThis = __webpack_require__("720f");
15715
+ var defineBuiltInAccessor = __webpack_require__("889b");
15716
+
15717
+ var URLSearchParamsPrototype = URLSearchParams.prototype;
15718
+ var forEach = uncurryThis(URLSearchParamsPrototype.forEach);
15719
+
15720
+ // `URLSearchParams.prototype.size` getter
16027
15721
  // https://github.com/whatwg/url/pull/734
16028
15722
  if (DESCRIPTORS && !('size' in URLSearchParamsPrototype)) {
16029
15723
  defineBuiltInAccessor(URLSearchParamsPrototype, 'size', {
@@ -16508,12 +16202,497 @@ module.exports = NATIVE_SYMBOL
16508
16202
  && typeof Symbol.iterator == 'symbol';
16509
16203
 
16510
16204
 
16205
+ /***/ }),
16206
+
16207
+ /***/ "ed38":
16208
+ /***/ (function(module, exports, __webpack_require__) {
16209
+
16210
+
16211
+ /*!
16212
+ * vue-awesome-swiper v4.1.1
16213
+ * Copyright (c) Surmon. All rights reserved.
16214
+ * Released under the MIT License.
16215
+ * Surmon <https://github.com/surmon-china>
16216
+ */
16217
+
16218
+ (function(g,f){ true?f(exports,__webpack_require__("d670"),__webpack_require__("8bbf")):undefined;}(this,(function(exports, SwiperClass, Vue){'use strict';SwiperClass=SwiperClass&&Object.prototype.hasOwnProperty.call(SwiperClass,'default')?SwiperClass['default']:SwiperClass;Vue=Vue&&Object.prototype.hasOwnProperty.call(Vue,'default')?Vue['default']:Vue;/**
16219
+ * @file vue-awesome-swiper
16220
+ * @module constants
16221
+ * @author Surmon <https://github.com/surmon-china>
16222
+ */
16223
+ var CoreNames;
16224
+ (function (CoreNames) {
16225
+ CoreNames["SwiperComponent"] = "Swiper";
16226
+ CoreNames["SwiperSlideComponent"] = "SwiperSlide";
16227
+ CoreNames["SwiperDirective"] = "swiper";
16228
+ CoreNames["SwiperInstance"] = "$swiper";
16229
+ })(CoreNames || (CoreNames = {}));
16230
+ var DEFAULT_CLASSES = Object.freeze({
16231
+ containerClass: 'swiper-container',
16232
+ wrapperClass: 'swiper-wrapper',
16233
+ slideClass: 'swiper-slide'
16234
+ });
16235
+ var ComponentEvents;
16236
+ (function (ComponentEvents) {
16237
+ ComponentEvents["Ready"] = "ready";
16238
+ ComponentEvents["ClickSlide"] = "clickSlide";
16239
+ })(ComponentEvents || (ComponentEvents = {}));
16240
+ var ComponentPropNames;
16241
+ (function (ComponentPropNames) {
16242
+ ComponentPropNames["AutoUpdate"] = "autoUpdate";
16243
+ ComponentPropNames["AutoDestroy"] = "autoDestroy";
16244
+ ComponentPropNames["DeleteInstanceOnDestroy"] = "deleteInstanceOnDestroy";
16245
+ ComponentPropNames["CleanupStylesOnDestroy"] = "cleanupStylesOnDestroy";
16246
+ })(ComponentPropNames || (ComponentPropNames = {}));
16247
+ // https://swiperjs.com/api/#events
16248
+ var SWIPER_EVENTS = [
16249
+ 'init',
16250
+ 'beforeDestroy',
16251
+ 'slideChange',
16252
+ 'slideChangeTransitionStart',
16253
+ 'slideChangeTransitionEnd',
16254
+ 'slideNextTransitionStart',
16255
+ 'slideNextTransitionEnd',
16256
+ 'slidePrevTransitionStart',
16257
+ 'slidePrevTransitionEnd',
16258
+ 'transitionStart',
16259
+ 'transitionEnd',
16260
+ 'touchStart',
16261
+ 'touchMove',
16262
+ 'touchMoveOpposite',
16263
+ 'sliderMove',
16264
+ 'touchEnd',
16265
+ 'click',
16266
+ 'tap',
16267
+ 'doubleTap',
16268
+ 'imagesReady',
16269
+ 'progress',
16270
+ 'reachBeginning',
16271
+ 'reachEnd',
16272
+ 'fromEdge',
16273
+ 'setTranslate',
16274
+ 'setTransition',
16275
+ 'resize',
16276
+ 'observerUpdate',
16277
+ 'beforeLoopFix',
16278
+ 'loopFix'
16279
+ ];/*! *****************************************************************************
16280
+ Copyright (c) Microsoft Corporation. All rights reserved.
16281
+ Licensed under the Apache License, Version 2.0 (the "License"); you may not use
16282
+ this file except in compliance with the License. You may obtain a copy of the
16283
+ License at http://www.apache.org/licenses/LICENSE-2.0
16284
+
16285
+ THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16286
+ KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
16287
+ WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
16288
+ MERCHANTABLITY OR NON-INFRINGEMENT.
16289
+
16290
+ See the Apache Version 2.0 License for specific language governing permissions
16291
+ and limitations under the License.
16292
+ ***************************************************************************** */
16293
+
16294
+ function __spreadArrays() {
16295
+ for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;
16296
+ for (var r = Array(s), k = 0, i = 0; i < il; i++)
16297
+ for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)
16298
+ r[k] = a[j];
16299
+ return r;
16300
+ }/**
16301
+ * @file vue-awesome-swiper
16302
+ * @module utils
16303
+ * @author Surmon <https://github.com/surmon-china>
16304
+ */
16305
+ var kebabcase = function (string) {
16306
+ return string
16307
+ .replace(/([a-z])([A-Z])/g, '$1-$2')
16308
+ .replace(/\s+/g, '-')
16309
+ .toLowerCase();
16310
+ };/**
16311
+ * @file vue-awesome-swiper
16312
+ * @module event
16313
+ * @author Surmon <https://github.com/surmon-china>
16314
+ */
16315
+ var handleClickSlideEvent = function (swiper, event, emit) {
16316
+ var _a, _b, _c;
16317
+ if (swiper && !(swiper.destroyed)) {
16318
+ var eventPath = ((_a = event.composedPath) === null || _a === void 0 ? void 0 : _a.call(event)) || event.path;
16319
+ if ((event === null || event === void 0 ? void 0 : event.target) && eventPath) {
16320
+ var slides_1 = Array.from(swiper.slides);
16321
+ var paths = Array.from(eventPath);
16322
+ // Click slide || slide[children]
16323
+ if (slides_1.includes(event.target) || paths.some(function (item) { return slides_1.includes(item); })) {
16324
+ var clickedIndex = swiper.clickedIndex;
16325
+ var reallyIndex = Number((_c = (_b = swiper.clickedSlide) === null || _b === void 0 ? void 0 : _b.dataset) === null || _c === void 0 ? void 0 : _c.swiperSlideIndex);
16326
+ var reallyIndexValue = Number.isInteger(reallyIndex) ? reallyIndex : null;
16327
+ emit(ComponentEvents.ClickSlide, clickedIndex, reallyIndexValue);
16328
+ emit(kebabcase(ComponentEvents.ClickSlide), clickedIndex, reallyIndexValue);
16329
+ }
16330
+ }
16331
+ }
16332
+ };
16333
+ var bindSwiperEvents = function (swiper, emit) {
16334
+ SWIPER_EVENTS.forEach(function (eventName) {
16335
+ swiper.on(eventName, function () {
16336
+ var arguments$1 = arguments;
16337
+
16338
+ var args = [];
16339
+ for (var _i = 0; _i < arguments.length; _i++) {
16340
+ args[_i] = arguments$1[_i];
16341
+ }
16342
+ emit.apply(void 0, __spreadArrays([eventName], args));
16343
+ var kebabcaseName = kebabcase(eventName);
16344
+ if (kebabcaseName !== eventName) {
16345
+ emit.apply(void 0, __spreadArrays([kebabcaseName], args));
16346
+ }
16347
+ });
16348
+ });
16349
+ };/**
16350
+ * @file vue-awesome-swiper
16351
+ * @module directive
16352
+ * @author Surmon <https://github.com/surmon-china>
16353
+ */
16354
+ var INSTANCE_NAME_KEY = 'instanceName';
16355
+ function getDirective(SwiperClass, globalOptions) {
16356
+ var getStandardisedOptionByAttrs = function (vnode, key) {
16357
+ var _a, _b, _c, _d;
16358
+ var value = (_b = (_a = vnode.data) === null || _a === void 0 ? void 0 : _a.attrs) === null || _b === void 0 ? void 0 : _b[key];
16359
+ return value !== undefined
16360
+ ? value
16361
+ : (_d = (_c = vnode.data) === null || _c === void 0 ? void 0 : _c.attrs) === null || _d === void 0 ? void 0 : _d[kebabcase(key)];
16362
+ };
16363
+ // Get swiper instace name in directive
16364
+ var getSwiperInstanceName = function (element, binding, vnode) {
16365
+ return (binding.arg ||
16366
+ getStandardisedOptionByAttrs(vnode, INSTANCE_NAME_KEY) ||
16367
+ element.id ||
16368
+ CoreNames.SwiperInstance);
16369
+ };
16370
+ var getSwiperInstance = function (element, binding, vnode) {
16371
+ var instanceName = getSwiperInstanceName(element, binding, vnode);
16372
+ return vnode.context[instanceName] || null;
16373
+ };
16374
+ var getSwipeOptions = function (binding) {
16375
+ return binding.value || globalOptions;
16376
+ };
16377
+ var getBooleanValueByInput = function (input) {
16378
+ return [true, undefined, null, ''].includes(input);
16379
+ };
16380
+ // Emit event in Vue directive
16381
+ var getEventEmiter = function (vnode) {
16382
+ var _a, _b;
16383
+ var handlers = ((_a = vnode.data) === null || _a === void 0 ? void 0 : _a.on) || ((_b = vnode.componentOptions) === null || _b === void 0 ? void 0 : _b.listeners);
16384
+ return function (name) {
16385
+ var arguments$1 = arguments;
16386
+
16387
+ var args = [];
16388
+ for (var _i = 1; _i < arguments.length; _i++) {
16389
+ args[_i - 1] = arguments$1[_i];
16390
+ }
16391
+ var _a;
16392
+ var handle = (_a = handlers) === null || _a === void 0 ? void 0 : _a[name];
16393
+ if (handle) {
16394
+ handle.fns.apply(handle, args);
16395
+ }
16396
+ };
16397
+ };
16398
+ return {
16399
+ // Init
16400
+ bind: function (element, binding, vnode) {
16401
+ // auto class name
16402
+ if (element.className.indexOf(DEFAULT_CLASSES.containerClass) === -1) {
16403
+ element.className += ((element.className ? ' ' : '') + DEFAULT_CLASSES.containerClass);
16404
+ }
16405
+ // bind click event
16406
+ element.addEventListener('click', function (event) {
16407
+ var emitEvent = getEventEmiter(vnode);
16408
+ var swiper = getSwiperInstance(element, binding, vnode);
16409
+ handleClickSlideEvent(swiper, event, emitEvent);
16410
+ });
16411
+ },
16412
+ // DOM inserted
16413
+ inserted: function (element, binding, vnode) {
16414
+ var context = vnode.context;
16415
+ var swiperOptions = getSwipeOptions(binding);
16416
+ var instanceName = getSwiperInstanceName(element, binding, vnode);
16417
+ var emitEvent = getEventEmiter(vnode);
16418
+ var vueContext = context;
16419
+ var swiper = vueContext === null || vueContext === void 0 ? void 0 : vueContext[instanceName];
16420
+ // Swiper will destroy but not delete instance, when used <keep-alive>
16421
+ if (!swiper || swiper.destroyed) {
16422
+ swiper = new SwiperClass(element, swiperOptions);
16423
+ vueContext[instanceName] = swiper;
16424
+ bindSwiperEvents(swiper, emitEvent);
16425
+ emitEvent(ComponentEvents.Ready, swiper);
16426
+ // MARK: Reinstance when the nexttick with <keep-alive>
16427
+ // Vue.nextTick(instancing) | setTimeout(instancing)
16428
+ }
16429
+ },
16430
+ // On options changed or DOM updated
16431
+ componentUpdated: function (element, binding, vnode) {
16432
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m;
16433
+ var autoUpdate = getStandardisedOptionByAttrs(vnode, ComponentPropNames.AutoUpdate);
16434
+ if (getBooleanValueByInput(autoUpdate)) {
16435
+ var swiper = getSwiperInstance(element, binding, vnode);
16436
+ if (swiper) {
16437
+ var swiperOptions = getSwipeOptions(binding);
16438
+ var isLoop = swiperOptions.loop;
16439
+ if (isLoop) {
16440
+ (_b = (_a = swiper) === null || _a === void 0 ? void 0 : _a.loopDestroy) === null || _b === void 0 ? void 0 : _b.call(_a);
16441
+ }
16442
+ (_c = swiper === null || swiper === void 0 ? void 0 : swiper.update) === null || _c === void 0 ? void 0 : _c.call(swiper);
16443
+ (_e = (_d = swiper.navigation) === null || _d === void 0 ? void 0 : _d.update) === null || _e === void 0 ? void 0 : _e.call(_d);
16444
+ (_g = (_f = swiper.pagination) === null || _f === void 0 ? void 0 : _f.render) === null || _g === void 0 ? void 0 : _g.call(_f);
16445
+ (_j = (_h = swiper.pagination) === null || _h === void 0 ? void 0 : _h.update) === null || _j === void 0 ? void 0 : _j.call(_h);
16446
+ if (isLoop) {
16447
+ (_l = (_k = swiper) === null || _k === void 0 ? void 0 : _k.loopCreate) === null || _l === void 0 ? void 0 : _l.call(_k);
16448
+ (_m = swiper === null || swiper === void 0 ? void 0 : swiper.update) === null || _m === void 0 ? void 0 : _m.call(swiper);
16449
+ }
16450
+ }
16451
+ }
16452
+ },
16453
+ // Destroy this directive
16454
+ unbind: function (element, binding, vnode) {
16455
+ var _a;
16456
+ var autoDestroy = getStandardisedOptionByAttrs(vnode, ComponentPropNames.AutoDestroy);
16457
+ if (getBooleanValueByInput(autoDestroy)) {
16458
+ var swiper = getSwiperInstance(element, binding, vnode);
16459
+ if (swiper && swiper.initialized) {
16460
+ (_a = swiper === null || swiper === void 0 ? void 0 : swiper.destroy) === null || _a === void 0 ? void 0 : _a.call(swiper, getBooleanValueByInput(getStandardisedOptionByAttrs(vnode, ComponentPropNames.DeleteInstanceOnDestroy)), getBooleanValueByInput(getStandardisedOptionByAttrs(vnode, ComponentPropNames.CleanupStylesOnDestroy)));
16461
+ }
16462
+ }
16463
+ }
16464
+ };
16465
+ }/**
16466
+ * @file vue-awesome-swiper
16467
+ * @module SwiperComponent
16468
+ * @author Surmon <https://github.com/surmon-china>
16469
+ */
16470
+ var SlotNames;
16471
+ (function (SlotNames) {
16472
+ SlotNames["ParallaxBg"] = "parallax-bg";
16473
+ SlotNames["Pagination"] = "pagination";
16474
+ SlotNames["Scrollbar"] = "scrollbar";
16475
+ SlotNames["PrevButton"] = "button-prev";
16476
+ SlotNames["NextButton"] = "button-next";
16477
+ })(SlotNames || (SlotNames = {}));
16478
+ function getSwiperComponent(SwiperClass) {
16479
+ var _a;
16480
+ return Vue.extend({
16481
+ name: CoreNames.SwiperComponent,
16482
+ props: (_a = {
16483
+ defaultOptions: {
16484
+ type: Object,
16485
+ required: false,
16486
+ default: function () { return ({}); }
16487
+ },
16488
+ // eslint-disable-next-line vue/require-default-prop
16489
+ options: {
16490
+ type: Object,
16491
+ required: false
16492
+ }
16493
+ },
16494
+ _a[ComponentPropNames.AutoUpdate] = {
16495
+ type: Boolean,
16496
+ default: true
16497
+ },
16498
+ // https://github.com/surmon-china/vue-awesome-swiper/pull/550/files
16499
+ _a[ComponentPropNames.AutoDestroy] = {
16500
+ type: Boolean,
16501
+ default: true
16502
+ },
16503
+ // https://github.com/surmon-china/vue-awesome-swiper/pull/388
16504
+ _a[ComponentPropNames.DeleteInstanceOnDestroy] = {
16505
+ type: Boolean,
16506
+ required: false,
16507
+ default: true
16508
+ },
16509
+ _a[ComponentPropNames.CleanupStylesOnDestroy] = {
16510
+ type: Boolean,
16511
+ required: false,
16512
+ default: true
16513
+ },
16514
+ _a),
16515
+ data: function () {
16516
+ var _a;
16517
+ return _a = {},
16518
+ _a[CoreNames.SwiperInstance] = null,
16519
+ _a;
16520
+ },
16521
+ computed: {
16522
+ swiperInstance: {
16523
+ cache: false,
16524
+ set: function (swiper) {
16525
+ this[CoreNames.SwiperInstance] = swiper;
16526
+ },
16527
+ get: function () {
16528
+ return this[CoreNames.SwiperInstance];
16529
+ }
16530
+ },
16531
+ swiperOptions: function () {
16532
+ return this.options || this.defaultOptions;
16533
+ },
16534
+ wrapperClass: function () {
16535
+ return this.swiperOptions.wrapperClass || DEFAULT_CLASSES.wrapperClass;
16536
+ }
16537
+ },
16538
+ methods: {
16539
+ // Feature: click event
16540
+ handleSwiperClick: function (event) {
16541
+ handleClickSlideEvent(this.swiperInstance, event, this.$emit.bind(this));
16542
+ },
16543
+ autoReLoopSwiper: function () {
16544
+ var _a, _b;
16545
+ if (this.swiperInstance && this.swiperOptions.loop) {
16546
+ // https://github.com/surmon-china/vue-awesome-swiper/issues/593
16547
+ // https://github.com/surmon-china/vue-awesome-swiper/issues/544
16548
+ // https://github.com/surmon-china/vue-awesome-swiper/pull/545/files
16549
+ var swiper = this.swiperInstance;
16550
+ (_a = swiper === null || swiper === void 0 ? void 0 : swiper.loopDestroy) === null || _a === void 0 ? void 0 : _a.call(swiper);
16551
+ (_b = swiper === null || swiper === void 0 ? void 0 : swiper.loopCreate) === null || _b === void 0 ? void 0 : _b.call(swiper);
16552
+ }
16553
+ },
16554
+ updateSwiper: function () {
16555
+ var _a, _b, _c, _d, _e, _f, _g, _h;
16556
+ if (this[ComponentPropNames.AutoUpdate] && this.swiperInstance) {
16557
+ this.autoReLoopSwiper();
16558
+ (_b = (_a = this.swiperInstance) === null || _a === void 0 ? void 0 : _a.update) === null || _b === void 0 ? void 0 : _b.call(_a);
16559
+ (_d = (_c = this.swiperInstance.navigation) === null || _c === void 0 ? void 0 : _c.update) === null || _d === void 0 ? void 0 : _d.call(_c);
16560
+ (_f = (_e = this.swiperInstance.pagination) === null || _e === void 0 ? void 0 : _e.render) === null || _f === void 0 ? void 0 : _f.call(_e);
16561
+ (_h = (_g = this.swiperInstance.pagination) === null || _g === void 0 ? void 0 : _g.update) === null || _h === void 0 ? void 0 : _h.call(_g);
16562
+ }
16563
+ },
16564
+ destroySwiper: function () {
16565
+ var _a, _b;
16566
+ if (this[ComponentPropNames.AutoDestroy] && this.swiperInstance) {
16567
+ // https://github.com/surmon-china/vue-awesome-swiper/pull/341
16568
+ // https://github.com/surmon-china/vue-awesome-swiper/issues/340
16569
+ if (this.swiperInstance.initialized) {
16570
+ (_b = (_a = this.swiperInstance) === null || _a === void 0 ? void 0 : _a.destroy) === null || _b === void 0 ? void 0 : _b.call(_a, this[ComponentPropNames.DeleteInstanceOnDestroy], this[ComponentPropNames.CleanupStylesOnDestroy]);
16571
+ }
16572
+ }
16573
+ },
16574
+ initSwiper: function () {
16575
+ this.swiperInstance = new SwiperClass(this.$el, this.swiperOptions);
16576
+ bindSwiperEvents(this.swiperInstance, this.$emit.bind(this));
16577
+ this.$emit(ComponentEvents.Ready, this.swiperInstance);
16578
+ }
16579
+ },
16580
+ mounted: function () {
16581
+ if (!this.swiperInstance) {
16582
+ this.initSwiper();
16583
+ }
16584
+ },
16585
+ // Update swiper when the parent component activated with `keep-alive`.
16586
+ activated: function () {
16587
+ this.updateSwiper();
16588
+ },
16589
+ updated: function () {
16590
+ this.updateSwiper();
16591
+ },
16592
+ beforeDestroy: function () {
16593
+ // https://github.com/surmon-china/vue-awesome-swiper/commit/2924a9d4d3d1cf51c0d46076410b1f804b2b8a43#diff-7f4e0261ac562c0f354cb91a1ca8864f
16594
+ this.$nextTick(this.destroySwiper);
16595
+ },
16596
+ render: function (createElement) {
16597
+ return createElement('div', {
16598
+ staticClass: DEFAULT_CLASSES.containerClass,
16599
+ on: {
16600
+ click: this.handleSwiperClick
16601
+ }
16602
+ }, [
16603
+ this.$slots[SlotNames.ParallaxBg],
16604
+ createElement('div', {
16605
+ class: this.wrapperClass
16606
+ }, this.$slots.default),
16607
+ this.$slots[SlotNames.Pagination],
16608
+ this.$slots[SlotNames.PrevButton],
16609
+ this.$slots[SlotNames.NextButton],
16610
+ this.$slots[SlotNames.Scrollbar]
16611
+ ]);
16612
+ }
16613
+ });
16614
+ }/**
16615
+ * @file vue-awesome-swiper
16616
+ * @module SwiperSlideComponent
16617
+ * @author Surmon <https://github.com/surmon-china>
16618
+ */
16619
+ var SwiperSlideComponent = Vue.extend({
16620
+ name: CoreNames.SwiperSlideComponent,
16621
+ computed: {
16622
+ slideClass: function () {
16623
+ var _a, _b;
16624
+ return ((_b = (_a = this.$parent) === null || _a === void 0 ? void 0 : _a.swiperOptions) === null || _b === void 0 ? void 0 : _b.slideClass) || DEFAULT_CLASSES.slideClass;
16625
+ }
16626
+ },
16627
+ methods: {
16628
+ update: function () {
16629
+ var _a;
16630
+ var parent = this.$parent;
16631
+ // https://github.com/surmon-china/vue-awesome-swiper/issues/632
16632
+ if (parent[ComponentPropNames.AutoUpdate]) {
16633
+ (_a = parent === null || parent === void 0 ? void 0 : parent.swiperInstance) === null || _a === void 0 ? void 0 : _a.update();
16634
+ }
16635
+ }
16636
+ },
16637
+ mounted: function () {
16638
+ this.update();
16639
+ },
16640
+ updated: function () {
16641
+ this.update();
16642
+ },
16643
+ render: function (createElement) {
16644
+ return createElement('div', {
16645
+ class: this.slideClass
16646
+ }, this.$slots.default);
16647
+ }
16648
+ });/**
16649
+ * @file vue-awesome-swiper
16650
+ * @module exporter
16651
+ * @author Surmon <https://github.com/surmon-china>
16652
+ */
16653
+ var getInstaller = function (SwiperClass) {
16654
+ var install = function (Vue, globalOptions) {
16655
+ if (install.installed)
16656
+ { return; }
16657
+ var SwiperComponent = getSwiperComponent(SwiperClass);
16658
+ if (globalOptions) {
16659
+ SwiperComponent.options.props.defaultOptions.default = function () { return globalOptions; };
16660
+ }
16661
+ Vue.component(CoreNames.SwiperComponent, SwiperComponent);
16662
+ Vue.component(CoreNames.SwiperSlideComponent, SwiperSlideComponent);
16663
+ Vue.directive(CoreNames.SwiperDirective, getDirective(SwiperClass, globalOptions));
16664
+ install.installed = true;
16665
+ };
16666
+ return install;
16667
+ };
16668
+ function exporter(SwiperClass) {
16669
+ var _a;
16670
+ return _a = {
16671
+ version: '4.1.1',
16672
+ install: getInstaller(SwiperClass),
16673
+ directive: getDirective(SwiperClass)
16674
+ },
16675
+ _a[CoreNames.SwiperComponent] = getSwiperComponent(SwiperClass),
16676
+ _a[CoreNames.SwiperSlideComponent] = SwiperSlideComponent,
16677
+ _a;
16678
+ }/**
16679
+ * @file vue-awesome-swiper
16680
+ * @module default-export
16681
+ * @author Surmon <https://github.com/surmon-china>
16682
+ */
16683
+ var VueAwesomeSwiper = exporter(SwiperClass);
16684
+ var version = VueAwesomeSwiper.version;
16685
+ var install = VueAwesomeSwiper.install;
16686
+ var directive = VueAwesomeSwiper.directive;
16687
+ var Swiper = VueAwesomeSwiper.Swiper;
16688
+ var SwiperSlide = VueAwesomeSwiper.SwiperSlide;exports.Swiper=Swiper;exports.SwiperSlide=SwiperSlide;exports.default=VueAwesomeSwiper;exports.directive=directive;exports.install=install;exports.version=version;Object.defineProperty(exports,'__esModule',{value:true});})));
16689
+
16511
16690
  /***/ }),
16512
16691
 
16513
16692
  /***/ "ef27":
16514
16693
  /***/ (function(module, exports) {
16515
16694
 
16516
- module.exports = "<article class=\"project-card\" @click=\"onDetail\">\r\n <header :title=\"data.name\">{{data.name}}</header>\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"
16695
+ module.exports = "<article class=\"project-card\" @click=\"onDetail\">\r\n <header :title=\"data.name\">{{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"
16517
16696
 
16518
16697
  /***/ }),
16519
16698
 
@@ -16537,7 +16716,7 @@ module.exports = function (bitmap, value) {
16537
16716
  /***/ "f40e":
16538
16717
  /***/ (function(module, exports) {
16539
16718
 
16540
- 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-poptip class=\"url-poptip\" v-if=\"interfaceModel.info.url\" trigger=\"hover\" :content=\"interfaceModel.info.url\" transfer>\r\n <i-input class=\"diy-input url-input\" v-model=\"interfaceModel.info.url\"></i-input>\r\n </i-poptip>\r\n <i-input v-else 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 process-btn\" @click=\"onProcess\" 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 </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 :formData=\"formData\"\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 <u-process-drawer v-model=\"showDrawer\" :projectTree=\"projectTree\" :info=\"interfaceModel.info\" @on-save=\"onProcessSave\"></u-process-drawer>\r\n</article>\r\n"
16719
+ 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-poptip class=\"url-poptip\" v-if=\"interfaceModel.info.url\" trigger=\"hover\" :content=\"interfaceModel.info.url\" transfer>\r\n <i-input class=\"diy-input url-input\" v-model=\"interfaceModel.info.url\"></i-input>\r\n </i-poptip>\r\n <i-input v-else class=\"diy-input url-input\" v-model=\"interfaceModel.info.url\"></i-input>\r\n <i-button type=\"primary\" class=\"diy-btn-primary submit-btn\" :loading=\"runLoading\" @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 process-btn\" @click=\"onProcess\" 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 </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 :formData=\"formData\"\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\r\n :key=\"interfaceModel.info.id + 'response'\"\r\n :lengthwise=\"lengthwise\"\r\n :response=\"response\"\r\n :interface-info=\"interfaceModel.info\"\r\n ></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 <u-process-drawer v-model=\"showDrawer\" :projectTree=\"projectTree\" :info=\"interfaceModel.info\" @on-save=\"onProcessSave\"></u-process-drawer>\r\n</article>\r\n"
16541
16720
 
16542
16721
  /***/ }),
16543
16722