@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.
@@ -82,7 +82,7 @@ module.exports =
82
82
  /******/
83
83
  /******/
84
84
  /******/ // Load entry module and return exports
85
- /******/ return __webpack_require__(__webpack_require__.s = "d345");
85
+ /******/ return __webpack_require__(__webpack_require__.s = "cb40");
86
86
  /******/ })
87
87
  /************************************************************************/
88
88
  /******/ ({
@@ -625,7 +625,7 @@ module.exports = function (fn) {
625
625
  /***/ "2c48":
626
626
  /***/ (function(module, exports) {
627
627
 
628
- 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"
628
+ 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"
629
629
 
630
630
  /***/ }),
631
631
 
@@ -897,7 +897,7 @@ module.exports = require("brace/snippets/json");
897
897
  /***/ "40aa":
898
898
  /***/ (function(module, exports) {
899
899
 
900
- 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"
900
+ 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"
901
901
 
902
902
  /***/ }),
903
903
 
@@ -3988,529 +3988,44 @@ module.exports = function (argument) {
3988
3988
 
3989
3989
  /***/ }),
3990
3990
 
3991
- /***/ "b042":
3991
+ /***/ "b061":
3992
+ /***/ (function(module, exports) {
3993
+
3994
+ var g;
3995
+
3996
+ // This works in non-strict mode
3997
+ g = (function() {
3998
+ return this;
3999
+ })();
4000
+
4001
+ try {
4002
+ // This works if eval is allowed (see CSP)
4003
+ g = g || new Function("return this")();
4004
+ } catch (e) {
4005
+ // This works if the window reference is available
4006
+ if (typeof window === "object") g = window;
4007
+ }
4008
+
4009
+ // g can still be undefined, but nothing to do about it...
4010
+ // We return undefined, instead of nothing here, so it's
4011
+ // easier to handle this case. if(!global) { ...}
4012
+
4013
+ module.exports = g;
4014
+
4015
+
4016
+ /***/ }),
4017
+
4018
+ /***/ "b156":
3992
4019
  /***/ (function(module, exports, __webpack_require__) {
3993
4020
 
4021
+ // extracted by mini-css-extract-plugin
3994
4022
 
3995
- /*!
3996
- * vue-awesome-swiper v4.1.1
3997
- * Copyright (c) Surmon. All rights reserved.
3998
- * Released under the MIT License.
3999
- * Surmon <https://github.com/surmon-china>
4000
- */
4023
+ /***/ }),
4001
4024
 
4002
- (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;/**
4003
- * @file vue-awesome-swiper
4004
- * @module constants
4005
- * @author Surmon <https://github.com/surmon-china>
4006
- */
4007
- var CoreNames;
4008
- (function (CoreNames) {
4009
- CoreNames["SwiperComponent"] = "Swiper";
4010
- CoreNames["SwiperSlideComponent"] = "SwiperSlide";
4011
- CoreNames["SwiperDirective"] = "swiper";
4012
- CoreNames["SwiperInstance"] = "$swiper";
4013
- })(CoreNames || (CoreNames = {}));
4014
- var DEFAULT_CLASSES = Object.freeze({
4015
- containerClass: 'swiper-container',
4016
- wrapperClass: 'swiper-wrapper',
4017
- slideClass: 'swiper-slide'
4018
- });
4019
- var ComponentEvents;
4020
- (function (ComponentEvents) {
4021
- ComponentEvents["Ready"] = "ready";
4022
- ComponentEvents["ClickSlide"] = "clickSlide";
4023
- })(ComponentEvents || (ComponentEvents = {}));
4024
- var ComponentPropNames;
4025
- (function (ComponentPropNames) {
4026
- ComponentPropNames["AutoUpdate"] = "autoUpdate";
4027
- ComponentPropNames["AutoDestroy"] = "autoDestroy";
4028
- ComponentPropNames["DeleteInstanceOnDestroy"] = "deleteInstanceOnDestroy";
4029
- ComponentPropNames["CleanupStylesOnDestroy"] = "cleanupStylesOnDestroy";
4030
- })(ComponentPropNames || (ComponentPropNames = {}));
4031
- // https://swiperjs.com/api/#events
4032
- var SWIPER_EVENTS = [
4033
- 'init',
4034
- 'beforeDestroy',
4035
- 'slideChange',
4036
- 'slideChangeTransitionStart',
4037
- 'slideChangeTransitionEnd',
4038
- 'slideNextTransitionStart',
4039
- 'slideNextTransitionEnd',
4040
- 'slidePrevTransitionStart',
4041
- 'slidePrevTransitionEnd',
4042
- 'transitionStart',
4043
- 'transitionEnd',
4044
- 'touchStart',
4045
- 'touchMove',
4046
- 'touchMoveOpposite',
4047
- 'sliderMove',
4048
- 'touchEnd',
4049
- 'click',
4050
- 'tap',
4051
- 'doubleTap',
4052
- 'imagesReady',
4053
- 'progress',
4054
- 'reachBeginning',
4055
- 'reachEnd',
4056
- 'fromEdge',
4057
- 'setTranslate',
4058
- 'setTransition',
4059
- 'resize',
4060
- 'observerUpdate',
4061
- 'beforeLoopFix',
4062
- 'loopFix'
4063
- ];/*! *****************************************************************************
4064
- Copyright (c) Microsoft Corporation. All rights reserved.
4065
- Licensed under the Apache License, Version 2.0 (the "License"); you may not use
4066
- this file except in compliance with the License. You may obtain a copy of the
4067
- License at http://www.apache.org/licenses/LICENSE-2.0
4068
-
4069
- THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
4070
- KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
4071
- WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
4072
- MERCHANTABLITY OR NON-INFRINGEMENT.
4073
-
4074
- See the Apache Version 2.0 License for specific language governing permissions
4075
- and limitations under the License.
4076
- ***************************************************************************** */
4077
-
4078
- function __spreadArrays() {
4079
- for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;
4080
- for (var r = Array(s), k = 0, i = 0; i < il; i++)
4081
- for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)
4082
- r[k] = a[j];
4083
- return r;
4084
- }/**
4085
- * @file vue-awesome-swiper
4086
- * @module utils
4087
- * @author Surmon <https://github.com/surmon-china>
4088
- */
4089
- var kebabcase = function (string) {
4090
- return string
4091
- .replace(/([a-z])([A-Z])/g, '$1-$2')
4092
- .replace(/\s+/g, '-')
4093
- .toLowerCase();
4094
- };/**
4095
- * @file vue-awesome-swiper
4096
- * @module event
4097
- * @author Surmon <https://github.com/surmon-china>
4098
- */
4099
- var handleClickSlideEvent = function (swiper, event, emit) {
4100
- var _a, _b, _c;
4101
- if (swiper && !(swiper.destroyed)) {
4102
- var eventPath = ((_a = event.composedPath) === null || _a === void 0 ? void 0 : _a.call(event)) || event.path;
4103
- if ((event === null || event === void 0 ? void 0 : event.target) && eventPath) {
4104
- var slides_1 = Array.from(swiper.slides);
4105
- var paths = Array.from(eventPath);
4106
- // Click slide || slide[children]
4107
- if (slides_1.includes(event.target) || paths.some(function (item) { return slides_1.includes(item); })) {
4108
- var clickedIndex = swiper.clickedIndex;
4109
- var reallyIndex = Number((_c = (_b = swiper.clickedSlide) === null || _b === void 0 ? void 0 : _b.dataset) === null || _c === void 0 ? void 0 : _c.swiperSlideIndex);
4110
- var reallyIndexValue = Number.isInteger(reallyIndex) ? reallyIndex : null;
4111
- emit(ComponentEvents.ClickSlide, clickedIndex, reallyIndexValue);
4112
- emit(kebabcase(ComponentEvents.ClickSlide), clickedIndex, reallyIndexValue);
4113
- }
4114
- }
4115
- }
4116
- };
4117
- var bindSwiperEvents = function (swiper, emit) {
4118
- SWIPER_EVENTS.forEach(function (eventName) {
4119
- swiper.on(eventName, function () {
4120
- var arguments$1 = arguments;
4121
-
4122
- var args = [];
4123
- for (var _i = 0; _i < arguments.length; _i++) {
4124
- args[_i] = arguments$1[_i];
4125
- }
4126
- emit.apply(void 0, __spreadArrays([eventName], args));
4127
- var kebabcaseName = kebabcase(eventName);
4128
- if (kebabcaseName !== eventName) {
4129
- emit.apply(void 0, __spreadArrays([kebabcaseName], args));
4130
- }
4131
- });
4132
- });
4133
- };/**
4134
- * @file vue-awesome-swiper
4135
- * @module directive
4136
- * @author Surmon <https://github.com/surmon-china>
4137
- */
4138
- var INSTANCE_NAME_KEY = 'instanceName';
4139
- function getDirective(SwiperClass, globalOptions) {
4140
- var getStandardisedOptionByAttrs = function (vnode, key) {
4141
- var _a, _b, _c, _d;
4142
- var value = (_b = (_a = vnode.data) === null || _a === void 0 ? void 0 : _a.attrs) === null || _b === void 0 ? void 0 : _b[key];
4143
- return value !== undefined
4144
- ? value
4145
- : (_d = (_c = vnode.data) === null || _c === void 0 ? void 0 : _c.attrs) === null || _d === void 0 ? void 0 : _d[kebabcase(key)];
4146
- };
4147
- // Get swiper instace name in directive
4148
- var getSwiperInstanceName = function (element, binding, vnode) {
4149
- return (binding.arg ||
4150
- getStandardisedOptionByAttrs(vnode, INSTANCE_NAME_KEY) ||
4151
- element.id ||
4152
- CoreNames.SwiperInstance);
4153
- };
4154
- var getSwiperInstance = function (element, binding, vnode) {
4155
- var instanceName = getSwiperInstanceName(element, binding, vnode);
4156
- return vnode.context[instanceName] || null;
4157
- };
4158
- var getSwipeOptions = function (binding) {
4159
- return binding.value || globalOptions;
4160
- };
4161
- var getBooleanValueByInput = function (input) {
4162
- return [true, undefined, null, ''].includes(input);
4163
- };
4164
- // Emit event in Vue directive
4165
- var getEventEmiter = function (vnode) {
4166
- var _a, _b;
4167
- var handlers = ((_a = vnode.data) === null || _a === void 0 ? void 0 : _a.on) || ((_b = vnode.componentOptions) === null || _b === void 0 ? void 0 : _b.listeners);
4168
- return function (name) {
4169
- var arguments$1 = arguments;
4170
-
4171
- var args = [];
4172
- for (var _i = 1; _i < arguments.length; _i++) {
4173
- args[_i - 1] = arguments$1[_i];
4174
- }
4175
- var _a;
4176
- var handle = (_a = handlers) === null || _a === void 0 ? void 0 : _a[name];
4177
- if (handle) {
4178
- handle.fns.apply(handle, args);
4179
- }
4180
- };
4181
- };
4182
- return {
4183
- // Init
4184
- bind: function (element, binding, vnode) {
4185
- // auto class name
4186
- if (element.className.indexOf(DEFAULT_CLASSES.containerClass) === -1) {
4187
- element.className += ((element.className ? ' ' : '') + DEFAULT_CLASSES.containerClass);
4188
- }
4189
- // bind click event
4190
- element.addEventListener('click', function (event) {
4191
- var emitEvent = getEventEmiter(vnode);
4192
- var swiper = getSwiperInstance(element, binding, vnode);
4193
- handleClickSlideEvent(swiper, event, emitEvent);
4194
- });
4195
- },
4196
- // DOM inserted
4197
- inserted: function (element, binding, vnode) {
4198
- var context = vnode.context;
4199
- var swiperOptions = getSwipeOptions(binding);
4200
- var instanceName = getSwiperInstanceName(element, binding, vnode);
4201
- var emitEvent = getEventEmiter(vnode);
4202
- var vueContext = context;
4203
- var swiper = vueContext === null || vueContext === void 0 ? void 0 : vueContext[instanceName];
4204
- // Swiper will destroy but not delete instance, when used <keep-alive>
4205
- if (!swiper || swiper.destroyed) {
4206
- swiper = new SwiperClass(element, swiperOptions);
4207
- vueContext[instanceName] = swiper;
4208
- bindSwiperEvents(swiper, emitEvent);
4209
- emitEvent(ComponentEvents.Ready, swiper);
4210
- // MARK: Reinstance when the nexttick with <keep-alive>
4211
- // Vue.nextTick(instancing) | setTimeout(instancing)
4212
- }
4213
- },
4214
- // On options changed or DOM updated
4215
- componentUpdated: function (element, binding, vnode) {
4216
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m;
4217
- var autoUpdate = getStandardisedOptionByAttrs(vnode, ComponentPropNames.AutoUpdate);
4218
- if (getBooleanValueByInput(autoUpdate)) {
4219
- var swiper = getSwiperInstance(element, binding, vnode);
4220
- if (swiper) {
4221
- var swiperOptions = getSwipeOptions(binding);
4222
- var isLoop = swiperOptions.loop;
4223
- if (isLoop) {
4224
- (_b = (_a = swiper) === null || _a === void 0 ? void 0 : _a.loopDestroy) === null || _b === void 0 ? void 0 : _b.call(_a);
4225
- }
4226
- (_c = swiper === null || swiper === void 0 ? void 0 : swiper.update) === null || _c === void 0 ? void 0 : _c.call(swiper);
4227
- (_e = (_d = swiper.navigation) === null || _d === void 0 ? void 0 : _d.update) === null || _e === void 0 ? void 0 : _e.call(_d);
4228
- (_g = (_f = swiper.pagination) === null || _f === void 0 ? void 0 : _f.render) === null || _g === void 0 ? void 0 : _g.call(_f);
4229
- (_j = (_h = swiper.pagination) === null || _h === void 0 ? void 0 : _h.update) === null || _j === void 0 ? void 0 : _j.call(_h);
4230
- if (isLoop) {
4231
- (_l = (_k = swiper) === null || _k === void 0 ? void 0 : _k.loopCreate) === null || _l === void 0 ? void 0 : _l.call(_k);
4232
- (_m = swiper === null || swiper === void 0 ? void 0 : swiper.update) === null || _m === void 0 ? void 0 : _m.call(swiper);
4233
- }
4234
- }
4235
- }
4236
- },
4237
- // Destroy this directive
4238
- unbind: function (element, binding, vnode) {
4239
- var _a;
4240
- var autoDestroy = getStandardisedOptionByAttrs(vnode, ComponentPropNames.AutoDestroy);
4241
- if (getBooleanValueByInput(autoDestroy)) {
4242
- var swiper = getSwiperInstance(element, binding, vnode);
4243
- if (swiper && swiper.initialized) {
4244
- (_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)));
4245
- }
4246
- }
4247
- }
4248
- };
4249
- }/**
4250
- * @file vue-awesome-swiper
4251
- * @module SwiperComponent
4252
- * @author Surmon <https://github.com/surmon-china>
4253
- */
4254
- var SlotNames;
4255
- (function (SlotNames) {
4256
- SlotNames["ParallaxBg"] = "parallax-bg";
4257
- SlotNames["Pagination"] = "pagination";
4258
- SlotNames["Scrollbar"] = "scrollbar";
4259
- SlotNames["PrevButton"] = "button-prev";
4260
- SlotNames["NextButton"] = "button-next";
4261
- })(SlotNames || (SlotNames = {}));
4262
- function getSwiperComponent(SwiperClass) {
4263
- var _a;
4264
- return Vue.extend({
4265
- name: CoreNames.SwiperComponent,
4266
- props: (_a = {
4267
- defaultOptions: {
4268
- type: Object,
4269
- required: false,
4270
- default: function () { return ({}); }
4271
- },
4272
- // eslint-disable-next-line vue/require-default-prop
4273
- options: {
4274
- type: Object,
4275
- required: false
4276
- }
4277
- },
4278
- _a[ComponentPropNames.AutoUpdate] = {
4279
- type: Boolean,
4280
- default: true
4281
- },
4282
- // https://github.com/surmon-china/vue-awesome-swiper/pull/550/files
4283
- _a[ComponentPropNames.AutoDestroy] = {
4284
- type: Boolean,
4285
- default: true
4286
- },
4287
- // https://github.com/surmon-china/vue-awesome-swiper/pull/388
4288
- _a[ComponentPropNames.DeleteInstanceOnDestroy] = {
4289
- type: Boolean,
4290
- required: false,
4291
- default: true
4292
- },
4293
- _a[ComponentPropNames.CleanupStylesOnDestroy] = {
4294
- type: Boolean,
4295
- required: false,
4296
- default: true
4297
- },
4298
- _a),
4299
- data: function () {
4300
- var _a;
4301
- return _a = {},
4302
- _a[CoreNames.SwiperInstance] = null,
4303
- _a;
4304
- },
4305
- computed: {
4306
- swiperInstance: {
4307
- cache: false,
4308
- set: function (swiper) {
4309
- this[CoreNames.SwiperInstance] = swiper;
4310
- },
4311
- get: function () {
4312
- return this[CoreNames.SwiperInstance];
4313
- }
4314
- },
4315
- swiperOptions: function () {
4316
- return this.options || this.defaultOptions;
4317
- },
4318
- wrapperClass: function () {
4319
- return this.swiperOptions.wrapperClass || DEFAULT_CLASSES.wrapperClass;
4320
- }
4321
- },
4322
- methods: {
4323
- // Feature: click event
4324
- handleSwiperClick: function (event) {
4325
- handleClickSlideEvent(this.swiperInstance, event, this.$emit.bind(this));
4326
- },
4327
- autoReLoopSwiper: function () {
4328
- var _a, _b;
4329
- if (this.swiperInstance && this.swiperOptions.loop) {
4330
- // https://github.com/surmon-china/vue-awesome-swiper/issues/593
4331
- // https://github.com/surmon-china/vue-awesome-swiper/issues/544
4332
- // https://github.com/surmon-china/vue-awesome-swiper/pull/545/files
4333
- var swiper = this.swiperInstance;
4334
- (_a = swiper === null || swiper === void 0 ? void 0 : swiper.loopDestroy) === null || _a === void 0 ? void 0 : _a.call(swiper);
4335
- (_b = swiper === null || swiper === void 0 ? void 0 : swiper.loopCreate) === null || _b === void 0 ? void 0 : _b.call(swiper);
4336
- }
4337
- },
4338
- updateSwiper: function () {
4339
- var _a, _b, _c, _d, _e, _f, _g, _h;
4340
- if (this[ComponentPropNames.AutoUpdate] && this.swiperInstance) {
4341
- this.autoReLoopSwiper();
4342
- (_b = (_a = this.swiperInstance) === null || _a === void 0 ? void 0 : _a.update) === null || _b === void 0 ? void 0 : _b.call(_a);
4343
- (_d = (_c = this.swiperInstance.navigation) === null || _c === void 0 ? void 0 : _c.update) === null || _d === void 0 ? void 0 : _d.call(_c);
4344
- (_f = (_e = this.swiperInstance.pagination) === null || _e === void 0 ? void 0 : _e.render) === null || _f === void 0 ? void 0 : _f.call(_e);
4345
- (_h = (_g = this.swiperInstance.pagination) === null || _g === void 0 ? void 0 : _g.update) === null || _h === void 0 ? void 0 : _h.call(_g);
4346
- }
4347
- },
4348
- destroySwiper: function () {
4349
- var _a, _b;
4350
- if (this[ComponentPropNames.AutoDestroy] && this.swiperInstance) {
4351
- // https://github.com/surmon-china/vue-awesome-swiper/pull/341
4352
- // https://github.com/surmon-china/vue-awesome-swiper/issues/340
4353
- if (this.swiperInstance.initialized) {
4354
- (_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]);
4355
- }
4356
- }
4357
- },
4358
- initSwiper: function () {
4359
- this.swiperInstance = new SwiperClass(this.$el, this.swiperOptions);
4360
- bindSwiperEvents(this.swiperInstance, this.$emit.bind(this));
4361
- this.$emit(ComponentEvents.Ready, this.swiperInstance);
4362
- }
4363
- },
4364
- mounted: function () {
4365
- if (!this.swiperInstance) {
4366
- this.initSwiper();
4367
- }
4368
- },
4369
- // Update swiper when the parent component activated with `keep-alive`.
4370
- activated: function () {
4371
- this.updateSwiper();
4372
- },
4373
- updated: function () {
4374
- this.updateSwiper();
4375
- },
4376
- beforeDestroy: function () {
4377
- // https://github.com/surmon-china/vue-awesome-swiper/commit/2924a9d4d3d1cf51c0d46076410b1f804b2b8a43#diff-7f4e0261ac562c0f354cb91a1ca8864f
4378
- this.$nextTick(this.destroySwiper);
4379
- },
4380
- render: function (createElement) {
4381
- return createElement('div', {
4382
- staticClass: DEFAULT_CLASSES.containerClass,
4383
- on: {
4384
- click: this.handleSwiperClick
4385
- }
4386
- }, [
4387
- this.$slots[SlotNames.ParallaxBg],
4388
- createElement('div', {
4389
- class: this.wrapperClass
4390
- }, this.$slots.default),
4391
- this.$slots[SlotNames.Pagination],
4392
- this.$slots[SlotNames.PrevButton],
4393
- this.$slots[SlotNames.NextButton],
4394
- this.$slots[SlotNames.Scrollbar]
4395
- ]);
4396
- }
4397
- });
4398
- }/**
4399
- * @file vue-awesome-swiper
4400
- * @module SwiperSlideComponent
4401
- * @author Surmon <https://github.com/surmon-china>
4402
- */
4403
- var SwiperSlideComponent = Vue.extend({
4404
- name: CoreNames.SwiperSlideComponent,
4405
- computed: {
4406
- slideClass: function () {
4407
- var _a, _b;
4408
- return ((_b = (_a = this.$parent) === null || _a === void 0 ? void 0 : _a.swiperOptions) === null || _b === void 0 ? void 0 : _b.slideClass) || DEFAULT_CLASSES.slideClass;
4409
- }
4410
- },
4411
- methods: {
4412
- update: function () {
4413
- var _a;
4414
- var parent = this.$parent;
4415
- // https://github.com/surmon-china/vue-awesome-swiper/issues/632
4416
- if (parent[ComponentPropNames.AutoUpdate]) {
4417
- (_a = parent === null || parent === void 0 ? void 0 : parent.swiperInstance) === null || _a === void 0 ? void 0 : _a.update();
4418
- }
4419
- }
4420
- },
4421
- mounted: function () {
4422
- this.update();
4423
- },
4424
- updated: function () {
4425
- this.update();
4426
- },
4427
- render: function (createElement) {
4428
- return createElement('div', {
4429
- class: this.slideClass
4430
- }, this.$slots.default);
4431
- }
4432
- });/**
4433
- * @file vue-awesome-swiper
4434
- * @module exporter
4435
- * @author Surmon <https://github.com/surmon-china>
4436
- */
4437
- var getInstaller = function (SwiperClass) {
4438
- var install = function (Vue, globalOptions) {
4439
- if (install.installed)
4440
- { return; }
4441
- var SwiperComponent = getSwiperComponent(SwiperClass);
4442
- if (globalOptions) {
4443
- SwiperComponent.options.props.defaultOptions.default = function () { return globalOptions; };
4444
- }
4445
- Vue.component(CoreNames.SwiperComponent, SwiperComponent);
4446
- Vue.component(CoreNames.SwiperSlideComponent, SwiperSlideComponent);
4447
- Vue.directive(CoreNames.SwiperDirective, getDirective(SwiperClass, globalOptions));
4448
- install.installed = true;
4449
- };
4450
- return install;
4451
- };
4452
- function exporter(SwiperClass) {
4453
- var _a;
4454
- return _a = {
4455
- version: '4.1.1',
4456
- install: getInstaller(SwiperClass),
4457
- directive: getDirective(SwiperClass)
4458
- },
4459
- _a[CoreNames.SwiperComponent] = getSwiperComponent(SwiperClass),
4460
- _a[CoreNames.SwiperSlideComponent] = SwiperSlideComponent,
4461
- _a;
4462
- }/**
4463
- * @file vue-awesome-swiper
4464
- * @module default-export
4465
- * @author Surmon <https://github.com/surmon-china>
4466
- */
4467
- var VueAwesomeSwiper = exporter(SwiperClass);
4468
- var version = VueAwesomeSwiper.version;
4469
- var install = VueAwesomeSwiper.install;
4470
- var directive = VueAwesomeSwiper.directive;
4471
- var Swiper = VueAwesomeSwiper.Swiper;
4472
- 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});})));
4473
-
4474
- /***/ }),
4475
-
4476
- /***/ "b061":
4477
- /***/ (function(module, exports) {
4478
-
4479
- var g;
4480
-
4481
- // This works in non-strict mode
4482
- g = (function() {
4483
- return this;
4484
- })();
4485
-
4486
- try {
4487
- // This works if eval is allowed (see CSP)
4488
- g = g || new Function("return this")();
4489
- } catch (e) {
4490
- // This works if the window reference is available
4491
- if (typeof window === "object") g = window;
4492
- }
4493
-
4494
- // g can still be undefined, but nothing to do about it...
4495
- // We return undefined, instead of nothing here, so it's
4496
- // easier to handle this case. if(!global) { ...}
4497
-
4498
- module.exports = g;
4499
-
4500
-
4501
- /***/ }),
4502
-
4503
- /***/ "b156":
4504
- /***/ (function(module, exports, __webpack_require__) {
4505
-
4506
- // extracted by mini-css-extract-plugin
4507
-
4508
- /***/ }),
4509
-
4510
- /***/ "b61c":
4511
- /***/ (function(module, exports, __webpack_require__) {
4512
-
4513
- // extracted by mini-css-extract-plugin
4025
+ /***/ "b61c":
4026
+ /***/ (function(module, exports, __webpack_require__) {
4027
+
4028
+ // extracted by mini-css-extract-plugin
4514
4029
 
4515
4030
  /***/ }),
4516
4031
 
@@ -4678,126 +4193,7 @@ module.exports = DESCRIPTORS && fails(function () {
4678
4193
 
4679
4194
  /***/ }),
4680
4195
 
4681
- /***/ "ccf6":
4682
- /***/ (function(module, exports) {
4683
-
4684
- 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"
4685
-
4686
- /***/ }),
4687
-
4688
- /***/ "cd69":
4689
- /***/ (function(module, exports, __webpack_require__) {
4690
-
4691
- "use strict";
4692
-
4693
- var ceil = Math.ceil;
4694
- var floor = Math.floor;
4695
-
4696
- // `Math.trunc` method
4697
- // https://tc39.es/ecma262/#sec-math.trunc
4698
- // eslint-disable-next-line es/no-math-trunc -- safe
4699
- module.exports = Math.trunc || function trunc(x) {
4700
- var n = +x;
4701
- return (n > 0 ? floor : ceil)(n);
4702
- };
4703
-
4704
-
4705
- /***/ }),
4706
-
4707
- /***/ "ce8f":
4708
- /***/ (function(module, exports) {
4709
-
4710
- module.exports = require("@egova/flagwind-web/dist/flagwind-web.umd.js");
4711
-
4712
- /***/ }),
4713
-
4714
- /***/ "ce97":
4715
- /***/ (function(module, exports, __webpack_require__) {
4716
-
4717
- "use strict";
4718
-
4719
- var classof = __webpack_require__("aaa6");
4720
-
4721
- var $String = String;
4722
-
4723
- module.exports = function (argument) {
4724
- if (classof(argument) === 'Symbol') throw new TypeError('Cannot convert a Symbol value to a string');
4725
- return $String(argument);
4726
- };
4727
-
4728
-
4729
- /***/ }),
4730
-
4731
- /***/ "cebe":
4732
- /***/ (function(module, exports) {
4733
-
4734
- module.exports = require("axios");
4735
-
4736
- /***/ }),
4737
-
4738
- /***/ "cf8c":
4739
- /***/ (function(module, exports, __webpack_require__) {
4740
-
4741
- "use strict";
4742
-
4743
- var toIndexedObject = __webpack_require__("485f");
4744
- var toAbsoluteIndex = __webpack_require__("575c");
4745
- var lengthOfArrayLike = __webpack_require__("d631");
4746
-
4747
- // `Array.prototype.{ indexOf, includes }` methods implementation
4748
- var createMethod = function (IS_INCLUDES) {
4749
- return function ($this, el, fromIndex) {
4750
- var O = toIndexedObject($this);
4751
- var length = lengthOfArrayLike(O);
4752
- var index = toAbsoluteIndex(fromIndex, length);
4753
- var value;
4754
- // Array#includes uses SameValueZero equality algorithm
4755
- // eslint-disable-next-line no-self-compare -- NaN check
4756
- if (IS_INCLUDES && el !== el) while (length > index) {
4757
- value = O[index++];
4758
- // eslint-disable-next-line no-self-compare -- NaN check
4759
- if (value !== value) return true;
4760
- // Array#indexOf ignores holes, Array#includes - not
4761
- } else for (;length > index; index++) {
4762
- if ((IS_INCLUDES || index in O) && O[index] === el) return IS_INCLUDES || index || 0;
4763
- } return !IS_INCLUDES && -1;
4764
- };
4765
- };
4766
-
4767
- module.exports = {
4768
- // `Array.prototype.includes` method
4769
- // https://tc39.es/ecma262/#sec-array.prototype.includes
4770
- includes: createMethod(true),
4771
- // `Array.prototype.indexOf` method
4772
- // https://tc39.es/ecma262/#sec-array.prototype.indexof
4773
- indexOf: createMethod(false)
4774
- };
4775
-
4776
-
4777
- /***/ }),
4778
-
4779
- /***/ "cfb3":
4780
- /***/ (function(module, exports) {
4781
-
4782
- 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"
4783
-
4784
- /***/ }),
4785
-
4786
- /***/ "cfde":
4787
- /***/ (function(module, exports, __webpack_require__) {
4788
-
4789
- // extracted by mini-css-extract-plugin
4790
-
4791
- /***/ }),
4792
-
4793
- /***/ "d30a":
4794
- /***/ (function(module, exports) {
4795
-
4796
- 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"
4797
-
4798
- /***/ }),
4799
-
4800
- /***/ "d345":
4196
+ /***/ "cb40":
4801
4197
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
4802
4198
 
4803
4199
  "use strict";
@@ -4812,7 +4208,7 @@ __webpack_require__.d(__webpack_exports__, "ProjectDetail", function() { return
4812
4208
  __webpack_require__.d(__webpack_exports__, "ProjectList", function() { return /* reexport */ views_project_list; });
4813
4209
  __webpack_require__.d(__webpack_exports__, "injectEnableUserCenterCookie", function() { return /* reexport */ injectEnableUserCenterCookie; });
4814
4210
 
4815
- // CONCATENATED MODULE: ./node_modules/.pnpm/@vue+cli-service@4.5.19_4j72uuzxhpprprr3owyhj65lvq/node_modules/@vue/cli-service/lib/commands/build/setPublicPath.js
4211
+ // 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
4816
4212
  // This file is imported into lib/wc client bundles.
4817
4213
 
4818
4214
  if (typeof window !== 'undefined') {
@@ -10582,10 +9978,19 @@ var project_comment = __webpack_require__("65e5");
10582
9978
  var dist = __webpack_require__("7af4");
10583
9979
  var dist_default = /*#__PURE__*/__webpack_require__.n(dist);
10584
9980
 
9981
+ // EXTERNAL MODULE: ./node_modules/.pnpm/core-js@3.35.0/node_modules/core-js/modules/es.error.cause.js
9982
+ var es_error_cause = __webpack_require__("0ddb");
9983
+
10585
9984
  // CONCATENATED MODULE: ./src/views/project-detail/service.ts
10586
9985
 
10587
9986
 
10588
9987
 
9988
+
9989
+
9990
+
9991
+
9992
+
9993
+
10589
9994
  var service_ApiService = /** @class */function (_super) {
10590
9995
  __extends(ApiService, _super);
10591
9996
  function ApiService() {
@@ -10637,6 +10042,90 @@ var service_ApiService = /** @class */function (_super) {
10637
10042
  ApiService.prototype.runWithFile = function (apiId, data) {
10638
10043
  return this._post("/unity/api/run/".concat(apiId, "/exec"), data);
10639
10044
  };
10045
+ ApiService.prototype.runStream = function (apiId, apiInfo, handlers) {
10046
+ var _a, _b;
10047
+ if (handlers === void 0) {
10048
+ handlers = {};
10049
+ }
10050
+ return __awaiter(this, void 0, void 0, function () {
10051
+ var config, queryString, requestUrl, response, responseHeaders, reader, decoder, originalContent, size, _c, done, value, chunk;
10052
+ return __generator(this, function (_d) {
10053
+ switch (_d.label) {
10054
+ case 0:
10055
+ config = {
10056
+ method: "POST",
10057
+ baseURL: window.location.origin,
10058
+ url: this.url("/unity/api/run/".concat(apiId, "/web")),
10059
+ data: apiInfo,
10060
+ headers: __assign({
10061
+ "Content-Type": "application/json"
10062
+ }, getToken().headers),
10063
+ params: {}
10064
+ };
10065
+ signature.signatureConfig(config);
10066
+ queryString = new URLSearchParams(config.params).toString();
10067
+ requestUrl = queryString ? "".concat(config.url, "?").concat(queryString) : "".concat(config.url);
10068
+ return [4 /*yield*/, fetch(requestUrl, {
10069
+ method: "POST",
10070
+ headers: config.headers,
10071
+ body: JSON.stringify(apiInfo)
10072
+ })];
10073
+ case 1:
10074
+ response = _d.sent();
10075
+ responseHeaders = {};
10076
+ response.headers.forEach(function (value, key) {
10077
+ responseHeaders[key] = value;
10078
+ });
10079
+ (_a = handlers.onHeaders) === null || _a === void 0 ? void 0 : _a.call(handlers, {
10080
+ code: response.status,
10081
+ responseHeaders: responseHeaders
10082
+ });
10083
+ if (!response.ok) {
10084
+ throw new Error("\u8BF7\u6C42\u5931\u8D25(".concat(response.status, ")"));
10085
+ }
10086
+ if (!response.body) {
10087
+ return [2 /*return*/, {
10088
+ code: response.status,
10089
+ responseHeaders: responseHeaders,
10090
+ originalContent: "",
10091
+ size: 0
10092
+ }];
10093
+ }
10094
+ reader = response.body.getReader();
10095
+ decoder = new TextDecoder("utf-8");
10096
+ originalContent = "";
10097
+ size = 0;
10098
+ _d.label = 2;
10099
+ case 2:
10100
+ if (false) {}
10101
+ return [4 /*yield*/, reader.read()];
10102
+ case 3:
10103
+ _c = _d.sent(), done = _c.done, value = _c.value;
10104
+ if (done) {
10105
+ originalContent += decoder.decode();
10106
+ return [3 /*break*/, 4];
10107
+ }
10108
+ chunk = decoder.decode(value, {
10109
+ stream: true
10110
+ });
10111
+ originalContent += chunk;
10112
+ size += (value === null || value === void 0 ? void 0 : value.length) || 0;
10113
+ (_b = handlers.onChunk) === null || _b === void 0 ? void 0 : _b.call(handlers, {
10114
+ chunk: chunk,
10115
+ size: size
10116
+ });
10117
+ return [3 /*break*/, 2];
10118
+ case 4:
10119
+ return [2 /*return*/, {
10120
+ code: response.status,
10121
+ responseHeaders: responseHeaders,
10122
+ originalContent: originalContent,
10123
+ size: size
10124
+ }];
10125
+ }
10126
+ });
10127
+ });
10128
+ };
10640
10129
  ApiService.prototype.saveApiInfo = function (apiInfo) {
10641
10130
  return this._post("/unity/api/info/save/whole", apiInfo);
10642
10131
  };
@@ -11386,8 +10875,8 @@ var environment_variable_modal_EnvironmentVariableModal = /** @class */function
11386
10875
  // EXTERNAL MODULE: ./src/views/project-detail/index.scss
11387
10876
  var project_detail = __webpack_require__("fe54");
11388
10877
 
11389
- // EXTERNAL MODULE: ./node_modules/.pnpm/core-js@3.35.0/node_modules/core-js/modules/es.error.cause.js
11390
- var es_error_cause = __webpack_require__("0ddb");
10878
+ // EXTERNAL MODULE: ./node_modules/.pnpm/core-js@3.35.0/node_modules/core-js/modules/es.array.reduce.js
10879
+ var es_array_reduce = __webpack_require__("8b65");
11391
10880
 
11392
10881
  // CONCATENATED MODULE: ./src/views/project-detail/interface-settings/model.ts
11393
10882
 
@@ -11796,7 +11285,7 @@ var code_editor_CodeEditor = /** @class */function (_super) {
11796
11285
  }(flagwind_web_umd_js_["Component"]);
11797
11286
  /* harmony default export */ var components_code_editor = (code_editor_CodeEditor);
11798
11287
  // EXTERNAL MODULE: ./src/views/project-detail/response/index.scss
11799
- var response = __webpack_require__("aba0");
11288
+ var project_detail_response = __webpack_require__("aba0");
11800
11289
 
11801
11290
  // CONCATENATED MODULE: ./src/views/project-detail/response/index.ts
11802
11291
 
@@ -11817,6 +11306,11 @@ var Response = /** @class */function () {
11817
11306
  return Response;
11818
11307
  }();
11819
11308
 
11309
+ var ResponseInterfaceInfo = /** @class */function () {
11310
+ function ResponseInterfaceInfo() {}
11311
+ return ResponseInterfaceInfo;
11312
+ }();
11313
+
11820
11314
  var response_ResponsePanel = /** @class */function (_super) {
11821
11315
  __extends(ResponsePanel, _super);
11822
11316
  function ResponsePanel() {
@@ -11976,6 +11470,11 @@ var response_ResponsePanel = /** @class */function (_super) {
11976
11470
  return new Response();
11977
11471
  }
11978
11472
  })], ResponsePanel.prototype, "response", void 0);
11473
+ __decorate([Object(flagwind_web_["config"])({
11474
+ default: function () {
11475
+ return new ResponseInterfaceInfo();
11476
+ }
11477
+ })], ResponsePanel.prototype, "interfaceInfo", void 0);
11979
11478
  __decorate([Object(flagwind_web_["watch"])("response", {
11980
11479
  immediate: true,
11981
11480
  deep: false
@@ -11988,7 +11487,7 @@ var response_ResponsePanel = /** @class */function (_super) {
11988
11487
  })], ResponsePanel);
11989
11488
  return ResponsePanel;
11990
11489
  }(base_editor_setting);
11991
- /* harmony default export */ var project_detail_response = (response_ResponsePanel);
11490
+ /* harmony default export */ var views_project_detail_response = (response_ResponsePanel);
11992
11491
  // EXTERNAL MODULE: ./src/views/project-detail/after-execution-transfer/index.scss
11993
11492
  var after_execution_transfer = __webpack_require__("8a77");
11994
11493
 
@@ -13336,9 +12835,6 @@ var security_setting_v2_SecuritySettingV2 = /** @class */function (_super) {
13336
12835
  return SecuritySettingV2;
13337
12836
  }(flagwind_web_["Component"]);
13338
12837
  /* harmony default export */ var project_detail_security_setting_v2 = (security_setting_v2_SecuritySettingV2);
13339
- // EXTERNAL MODULE: ./node_modules/.pnpm/core-js@3.35.0/node_modules/core-js/modules/es.array.reduce.js
13340
- var es_array_reduce = __webpack_require__("8b65");
13341
-
13342
12838
  // EXTERNAL MODULE: ./src/views/project-detail/interface-settings/tips-table-label/index.scss
13343
12839
  var tips_table_label = __webpack_require__("0a2e");
13344
12840
 
@@ -14156,6 +13652,7 @@ var process_drawer_InterfaceModal = /** @class */function (_super) {
14156
13652
 
14157
13653
 
14158
13654
 
13655
+
14159
13656
  // import SecuritySetting from "../security-setting";
14160
13657
 
14161
13658
 
@@ -14170,6 +13667,7 @@ var interface_settings_InterfaceSettings = /** @class */function (_super) {
14170
13667
  _this.response = new Response();
14171
13668
  _this.responseCache = new Map();
14172
13669
  _this.loading = false;
13670
+ _this.runLoading = false;
14173
13671
  _this.showEnvironmentModal = false;
14174
13672
  _this.currentId = "";
14175
13673
  _this.paramList = [];
@@ -14248,14 +13746,14 @@ var interface_settings_InterfaceSettings = /** @class */function (_super) {
14248
13746
  });
14249
13747
  };
14250
13748
  InterfaceSettings.prototype.onRun = function () {
14251
- var _a, _b, _c, _d, _e, _f;
13749
+ var _a, _b, _c, _d, _e, _f, _g;
14252
13750
  return __awaiter(this, void 0, void 0, function () {
14253
- var formParams, requestHeaders, index, result, fileFormParams, _model, tmpFormData_1;
13751
+ var formParams, requestHeaders, index, result, fileFormParams, isStreamResponse, response, start_1, streamResult, error_1, _model, tmpFormData_1;
14254
13752
  var _this = this;
14255
- return __generator(this, function (_g) {
14256
- switch (_g.label) {
13753
+ return __generator(this, function (_h) {
13754
+ switch (_h.label) {
14257
13755
  case 0:
14258
- this.loading = true;
13756
+ this.runLoading = true;
14259
13757
  formParams = [];
14260
13758
  requestHeaders = [];
14261
13759
  if (((_a = this.interfaceModel.formParams) === null || _a === void 0 ? void 0 : _a.length) > 0) {
@@ -14278,7 +13776,70 @@ var interface_settings_InterfaceSettings = /** @class */function (_super) {
14278
13776
  fileFormParams = formParams.filter(function (item) {
14279
13777
  return item.valueType === "FILE";
14280
13778
  });
14281
- if (!fileFormParams.length) return [3 /*break*/, 2];
13779
+ isStreamResponse = ((_d = this.interfaceModel.info) === null || _d === void 0 ? void 0 : _d.streamResponseFlag) === 1;
13780
+ this.loading = !isStreamResponse || !!fileFormParams.length;
13781
+ _h.label = 1;
13782
+ case 1:
13783
+ _h.trys.push([1,, 11, 12]);
13784
+ if (!(isStreamResponse && !fileFormParams.length)) return [3 /*break*/, 6];
13785
+ response = new Response();
13786
+ response.streaming = true;
13787
+ response.requestHeaders = requestHeaders.reduce(function (headers, item) {
13788
+ if (item === null || item === void 0 ? void 0 : item.name) {
13789
+ headers[item.name] = item.value;
13790
+ }
13791
+ return headers;
13792
+ }, {});
13793
+ this.response = response;
13794
+ start_1 = Date.now();
13795
+ _h.label = 2;
13796
+ case 2:
13797
+ _h.trys.push([2, 4,, 5]);
13798
+ return [4 /*yield*/, this.service.runStream(this.interfaceModel.info.id, __assign(__assign({}, this.interfaceModel), {
13799
+ formParams: formParams,
13800
+ requestHeaders: requestHeaders
13801
+ }), {
13802
+ onHeaders: function (_a) {
13803
+ var code = _a.code,
13804
+ responseHeaders = _a.responseHeaders;
13805
+ _this.response = __assign(__assign({}, _this.response), {
13806
+ code: code,
13807
+ responseHeaders: responseHeaders,
13808
+ time: Date.now() - start_1
13809
+ });
13810
+ },
13811
+ onChunk: function (_a) {
13812
+ var chunk = _a.chunk,
13813
+ size = _a.size;
13814
+ _this.response = __assign(__assign({}, _this.response), {
13815
+ originalContent: (_this.response.originalContent || "") + chunk,
13816
+ size: size,
13817
+ time: Date.now() - start_1
13818
+ });
13819
+ }
13820
+ })];
13821
+ case 3:
13822
+ streamResult = _h.sent();
13823
+ this.response = __assign(__assign({}, this.response), {
13824
+ code: streamResult.code,
13825
+ responseHeaders: streamResult.responseHeaders,
13826
+ originalContent: streamResult.originalContent,
13827
+ size: streamResult.size,
13828
+ time: Date.now() - start_1
13829
+ });
13830
+ return [3 /*break*/, 5];
13831
+ case 4:
13832
+ error_1 = _h.sent();
13833
+ this.response = __assign(__assign({}, this.response), {
13834
+ code: this.response.code || 500,
13835
+ errorMessage: (error_1 === null || error_1 === void 0 ? void 0 : error_1.message) || "流式请求失败",
13836
+ time: Date.now() - start_1
13837
+ });
13838
+ return [3 /*break*/, 5];
13839
+ case 5:
13840
+ return [3 /*break*/, 10];
13841
+ case 6:
13842
+ if (!fileFormParams.length) return [3 /*break*/, 8];
14282
13843
  _model = __assign(__assign({}, this.interfaceModel), {
14283
13844
  formParams: formParams,
14284
13845
  requestHeaders: requestHeaders
@@ -14289,31 +13850,41 @@ var interface_settings_InterfaceSettings = /** @class */function (_super) {
14289
13850
  });
14290
13851
  tmpFormData_1.append("_model", JSON.stringify(_model));
14291
13852
  return [4 /*yield*/, this.service.runWithFile(this.interfaceModel.info.id, tmpFormData_1)];
14292
- case 1:
14293
- result = _g.sent();
14294
- return [3 /*break*/, 4];
14295
- case 2:
13853
+ case 7:
13854
+ result = _h.sent();
13855
+ this.response = (result === null || result === void 0 ? void 0 : result.result) || new Response();
13856
+ if (result.hasError) {
13857
+ this.response.code = 400;
13858
+ this.response.errorMessage = result.message;
13859
+ }
13860
+ return [3 /*break*/, 10];
13861
+ case 8:
14296
13862
  return [4 /*yield*/, this.service.run(this.interfaceModel.info.id, __assign(__assign({}, this.interfaceModel), {
14297
13863
  formParams: formParams,
14298
13864
  requestHeaders: requestHeaders
14299
13865
  }))];
14300
- case 3:
14301
- result = _g.sent();
14302
- _g.label = 4;
14303
- case 4:
14304
- this.loading = false;
13866
+ case 9:
13867
+ result = _h.sent();
14305
13868
  this.response = (result === null || result === void 0 ? void 0 : result.result) || new Response();
14306
13869
  if (result.hasError) {
14307
13870
  this.response.code = 400;
14308
13871
  this.response.errorMessage = result.message;
14309
13872
  }
13873
+ _h.label = 10;
13874
+ case 10:
14310
13875
  this.responseCache.set(this.interfaceModel.info.id, this.response);
14311
- if ((_d = this.response.errorLineNumbers) === null || _d === void 0 ? void 0 : _d.length) {
13876
+ if ((_e = this.response.errorLineNumbers) === null || _e === void 0 ? void 0 : _e.length) {
14312
13877
  this.errorLine = this.response.errorLineNumbers;
14313
13878
  } else {
14314
13879
  this.errorLine = null;
14315
13880
  }
14316
- this.originId = ((_f = (_e = this.interfaceModel) === null || _e === void 0 ? void 0 : _e.info) === null || _f === void 0 ? void 0 : _f.id) || "";
13881
+ this.originId = ((_g = (_f = this.interfaceModel) === null || _f === void 0 ? void 0 : _f.info) === null || _g === void 0 ? void 0 : _g.id) || "";
13882
+ return [3 /*break*/, 12];
13883
+ case 11:
13884
+ this.loading = false;
13885
+ this.runLoading = false;
13886
+ return [7 /*endfinally*/];
13887
+ case 12:
14317
13888
  return [2 /*return*/];
14318
13889
  }
14319
13890
  });
@@ -14358,6 +13929,10 @@ var interface_settings_InterfaceSettings = /** @class */function (_super) {
14358
13929
  });
14359
13930
  };
14360
13931
  InterfaceSettings.prototype.interfaceModelChange = function () {
13932
+ var _a, _b;
13933
+ if (((_b = (_a = this.interfaceModel) === null || _a === void 0 ? void 0 : _a.info) === null || _b === void 0 ? void 0 : _b.streamResponseFlag) !== 1) {
13934
+ this.interfaceModel.info.streamResponseFlag = 0;
13935
+ }
14361
13936
  this.response = this.responseCache.get(this.interfaceModel.info.id) || new Response();
14362
13937
  };
14363
13938
  InterfaceSettings.prototype.showImportModalChange = function (value) {
@@ -14601,7 +14176,7 @@ var interface_settings_InterfaceSettings = /** @class */function (_super) {
14601
14176
  InterfaceSettings = __decorate([Object(flagwind_web_["component"])({
14602
14177
  template: __webpack_require__("f40e"),
14603
14178
  components: {
14604
- response: project_detail_response,
14179
+ response: views_project_detail_response,
14605
14180
  params: project_detail_params_setting,
14606
14181
  headers: project_detail_headers_setting,
14607
14182
  // security: SecuritySetting,
@@ -15603,8 +15178,8 @@ var tree_ProjectTree = /** @class */function (_super) {
15603
15178
  return ProjectTree;
15604
15179
  }(flagwind_web_["Component"]);
15605
15180
  /* harmony default export */ var views_project_detail_tree = (tree_ProjectTree);
15606
- // 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
15607
- var vue_awesome_swiper = __webpack_require__("b042");
15181
+ // 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
15182
+ var vue_awesome_swiper = __webpack_require__("ed38");
15608
15183
 
15609
15184
  // CONCATENATED MODULE: ./src/views/project-detail/index.ts
15610
15185
 
@@ -15995,26 +15570,145 @@ var project_detail_ProjectDetail = /** @class */function (_super) {
15995
15570
 
15996
15571
  external_vue_default.a.use(external_halo_math_default.a);
15997
15572
 
15998
- // 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
15573
+ // 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
15999
15574
 
16000
15575
 
16001
15576
 
16002
15577
 
16003
15578
  /***/ }),
16004
15579
 
16005
- /***/ "d371":
15580
+ /***/ "ccf6":
15581
+ /***/ (function(module, exports) {
15582
+
15583
+ 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"
15584
+
15585
+ /***/ }),
15586
+
15587
+ /***/ "cd69":
16006
15588
  /***/ (function(module, exports, __webpack_require__) {
16007
15589
 
16008
15590
  "use strict";
16009
15591
 
16010
- var DESCRIPTORS = __webpack_require__("e900");
16011
- var uncurryThis = __webpack_require__("720f");
16012
- var defineBuiltInAccessor = __webpack_require__("889b");
16013
-
16014
- var URLSearchParamsPrototype = URLSearchParams.prototype;
16015
- var forEach = uncurryThis(URLSearchParamsPrototype.forEach);
15592
+ var ceil = Math.ceil;
15593
+ var floor = Math.floor;
16016
15594
 
16017
- // `URLSearchParams.prototype.size` getter
15595
+ // `Math.trunc` method
15596
+ // https://tc39.es/ecma262/#sec-math.trunc
15597
+ // eslint-disable-next-line es/no-math-trunc -- safe
15598
+ module.exports = Math.trunc || function trunc(x) {
15599
+ var n = +x;
15600
+ return (n > 0 ? floor : ceil)(n);
15601
+ };
15602
+
15603
+
15604
+ /***/ }),
15605
+
15606
+ /***/ "ce8f":
15607
+ /***/ (function(module, exports) {
15608
+
15609
+ module.exports = require("@egova/flagwind-web/dist/flagwind-web.umd.js");
15610
+
15611
+ /***/ }),
15612
+
15613
+ /***/ "ce97":
15614
+ /***/ (function(module, exports, __webpack_require__) {
15615
+
15616
+ "use strict";
15617
+
15618
+ var classof = __webpack_require__("aaa6");
15619
+
15620
+ var $String = String;
15621
+
15622
+ module.exports = function (argument) {
15623
+ if (classof(argument) === 'Symbol') throw new TypeError('Cannot convert a Symbol value to a string');
15624
+ return $String(argument);
15625
+ };
15626
+
15627
+
15628
+ /***/ }),
15629
+
15630
+ /***/ "cebe":
15631
+ /***/ (function(module, exports) {
15632
+
15633
+ module.exports = require("axios");
15634
+
15635
+ /***/ }),
15636
+
15637
+ /***/ "cf8c":
15638
+ /***/ (function(module, exports, __webpack_require__) {
15639
+
15640
+ "use strict";
15641
+
15642
+ var toIndexedObject = __webpack_require__("485f");
15643
+ var toAbsoluteIndex = __webpack_require__("575c");
15644
+ var lengthOfArrayLike = __webpack_require__("d631");
15645
+
15646
+ // `Array.prototype.{ indexOf, includes }` methods implementation
15647
+ var createMethod = function (IS_INCLUDES) {
15648
+ return function ($this, el, fromIndex) {
15649
+ var O = toIndexedObject($this);
15650
+ var length = lengthOfArrayLike(O);
15651
+ var index = toAbsoluteIndex(fromIndex, length);
15652
+ var value;
15653
+ // Array#includes uses SameValueZero equality algorithm
15654
+ // eslint-disable-next-line no-self-compare -- NaN check
15655
+ if (IS_INCLUDES && el !== el) while (length > index) {
15656
+ value = O[index++];
15657
+ // eslint-disable-next-line no-self-compare -- NaN check
15658
+ if (value !== value) return true;
15659
+ // Array#indexOf ignores holes, Array#includes - not
15660
+ } else for (;length > index; index++) {
15661
+ if ((IS_INCLUDES || index in O) && O[index] === el) return IS_INCLUDES || index || 0;
15662
+ } return !IS_INCLUDES && -1;
15663
+ };
15664
+ };
15665
+
15666
+ module.exports = {
15667
+ // `Array.prototype.includes` method
15668
+ // https://tc39.es/ecma262/#sec-array.prototype.includes
15669
+ includes: createMethod(true),
15670
+ // `Array.prototype.indexOf` method
15671
+ // https://tc39.es/ecma262/#sec-array.prototype.indexof
15672
+ indexOf: createMethod(false)
15673
+ };
15674
+
15675
+
15676
+ /***/ }),
15677
+
15678
+ /***/ "cfb3":
15679
+ /***/ (function(module, exports) {
15680
+
15681
+ 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"
15682
+
15683
+ /***/ }),
15684
+
15685
+ /***/ "cfde":
15686
+ /***/ (function(module, exports, __webpack_require__) {
15687
+
15688
+ // extracted by mini-css-extract-plugin
15689
+
15690
+ /***/ }),
15691
+
15692
+ /***/ "d30a":
15693
+ /***/ (function(module, exports) {
15694
+
15695
+ 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"
15696
+
15697
+ /***/ }),
15698
+
15699
+ /***/ "d371":
15700
+ /***/ (function(module, exports, __webpack_require__) {
15701
+
15702
+ "use strict";
15703
+
15704
+ var DESCRIPTORS = __webpack_require__("e900");
15705
+ var uncurryThis = __webpack_require__("720f");
15706
+ var defineBuiltInAccessor = __webpack_require__("889b");
15707
+
15708
+ var URLSearchParamsPrototype = URLSearchParams.prototype;
15709
+ var forEach = uncurryThis(URLSearchParamsPrototype.forEach);
15710
+
15711
+ // `URLSearchParams.prototype.size` getter
16018
15712
  // https://github.com/whatwg/url/pull/734
16019
15713
  if (DESCRIPTORS && !('size' in URLSearchParamsPrototype)) {
16020
15714
  defineBuiltInAccessor(URLSearchParamsPrototype, 'size', {
@@ -16499,12 +16193,497 @@ module.exports = NATIVE_SYMBOL
16499
16193
  && typeof Symbol.iterator == 'symbol';
16500
16194
 
16501
16195
 
16196
+ /***/ }),
16197
+
16198
+ /***/ "ed38":
16199
+ /***/ (function(module, exports, __webpack_require__) {
16200
+
16201
+
16202
+ /*!
16203
+ * vue-awesome-swiper v4.1.1
16204
+ * Copyright (c) Surmon. All rights reserved.
16205
+ * Released under the MIT License.
16206
+ * Surmon <https://github.com/surmon-china>
16207
+ */
16208
+
16209
+ (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;/**
16210
+ * @file vue-awesome-swiper
16211
+ * @module constants
16212
+ * @author Surmon <https://github.com/surmon-china>
16213
+ */
16214
+ var CoreNames;
16215
+ (function (CoreNames) {
16216
+ CoreNames["SwiperComponent"] = "Swiper";
16217
+ CoreNames["SwiperSlideComponent"] = "SwiperSlide";
16218
+ CoreNames["SwiperDirective"] = "swiper";
16219
+ CoreNames["SwiperInstance"] = "$swiper";
16220
+ })(CoreNames || (CoreNames = {}));
16221
+ var DEFAULT_CLASSES = Object.freeze({
16222
+ containerClass: 'swiper-container',
16223
+ wrapperClass: 'swiper-wrapper',
16224
+ slideClass: 'swiper-slide'
16225
+ });
16226
+ var ComponentEvents;
16227
+ (function (ComponentEvents) {
16228
+ ComponentEvents["Ready"] = "ready";
16229
+ ComponentEvents["ClickSlide"] = "clickSlide";
16230
+ })(ComponentEvents || (ComponentEvents = {}));
16231
+ var ComponentPropNames;
16232
+ (function (ComponentPropNames) {
16233
+ ComponentPropNames["AutoUpdate"] = "autoUpdate";
16234
+ ComponentPropNames["AutoDestroy"] = "autoDestroy";
16235
+ ComponentPropNames["DeleteInstanceOnDestroy"] = "deleteInstanceOnDestroy";
16236
+ ComponentPropNames["CleanupStylesOnDestroy"] = "cleanupStylesOnDestroy";
16237
+ })(ComponentPropNames || (ComponentPropNames = {}));
16238
+ // https://swiperjs.com/api/#events
16239
+ var SWIPER_EVENTS = [
16240
+ 'init',
16241
+ 'beforeDestroy',
16242
+ 'slideChange',
16243
+ 'slideChangeTransitionStart',
16244
+ 'slideChangeTransitionEnd',
16245
+ 'slideNextTransitionStart',
16246
+ 'slideNextTransitionEnd',
16247
+ 'slidePrevTransitionStart',
16248
+ 'slidePrevTransitionEnd',
16249
+ 'transitionStart',
16250
+ 'transitionEnd',
16251
+ 'touchStart',
16252
+ 'touchMove',
16253
+ 'touchMoveOpposite',
16254
+ 'sliderMove',
16255
+ 'touchEnd',
16256
+ 'click',
16257
+ 'tap',
16258
+ 'doubleTap',
16259
+ 'imagesReady',
16260
+ 'progress',
16261
+ 'reachBeginning',
16262
+ 'reachEnd',
16263
+ 'fromEdge',
16264
+ 'setTranslate',
16265
+ 'setTransition',
16266
+ 'resize',
16267
+ 'observerUpdate',
16268
+ 'beforeLoopFix',
16269
+ 'loopFix'
16270
+ ];/*! *****************************************************************************
16271
+ Copyright (c) Microsoft Corporation. All rights reserved.
16272
+ Licensed under the Apache License, Version 2.0 (the "License"); you may not use
16273
+ this file except in compliance with the License. You may obtain a copy of the
16274
+ License at http://www.apache.org/licenses/LICENSE-2.0
16275
+
16276
+ THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16277
+ KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
16278
+ WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
16279
+ MERCHANTABLITY OR NON-INFRINGEMENT.
16280
+
16281
+ See the Apache Version 2.0 License for specific language governing permissions
16282
+ and limitations under the License.
16283
+ ***************************************************************************** */
16284
+
16285
+ function __spreadArrays() {
16286
+ for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;
16287
+ for (var r = Array(s), k = 0, i = 0; i < il; i++)
16288
+ for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)
16289
+ r[k] = a[j];
16290
+ return r;
16291
+ }/**
16292
+ * @file vue-awesome-swiper
16293
+ * @module utils
16294
+ * @author Surmon <https://github.com/surmon-china>
16295
+ */
16296
+ var kebabcase = function (string) {
16297
+ return string
16298
+ .replace(/([a-z])([A-Z])/g, '$1-$2')
16299
+ .replace(/\s+/g, '-')
16300
+ .toLowerCase();
16301
+ };/**
16302
+ * @file vue-awesome-swiper
16303
+ * @module event
16304
+ * @author Surmon <https://github.com/surmon-china>
16305
+ */
16306
+ var handleClickSlideEvent = function (swiper, event, emit) {
16307
+ var _a, _b, _c;
16308
+ if (swiper && !(swiper.destroyed)) {
16309
+ var eventPath = ((_a = event.composedPath) === null || _a === void 0 ? void 0 : _a.call(event)) || event.path;
16310
+ if ((event === null || event === void 0 ? void 0 : event.target) && eventPath) {
16311
+ var slides_1 = Array.from(swiper.slides);
16312
+ var paths = Array.from(eventPath);
16313
+ // Click slide || slide[children]
16314
+ if (slides_1.includes(event.target) || paths.some(function (item) { return slides_1.includes(item); })) {
16315
+ var clickedIndex = swiper.clickedIndex;
16316
+ var reallyIndex = Number((_c = (_b = swiper.clickedSlide) === null || _b === void 0 ? void 0 : _b.dataset) === null || _c === void 0 ? void 0 : _c.swiperSlideIndex);
16317
+ var reallyIndexValue = Number.isInteger(reallyIndex) ? reallyIndex : null;
16318
+ emit(ComponentEvents.ClickSlide, clickedIndex, reallyIndexValue);
16319
+ emit(kebabcase(ComponentEvents.ClickSlide), clickedIndex, reallyIndexValue);
16320
+ }
16321
+ }
16322
+ }
16323
+ };
16324
+ var bindSwiperEvents = function (swiper, emit) {
16325
+ SWIPER_EVENTS.forEach(function (eventName) {
16326
+ swiper.on(eventName, function () {
16327
+ var arguments$1 = arguments;
16328
+
16329
+ var args = [];
16330
+ for (var _i = 0; _i < arguments.length; _i++) {
16331
+ args[_i] = arguments$1[_i];
16332
+ }
16333
+ emit.apply(void 0, __spreadArrays([eventName], args));
16334
+ var kebabcaseName = kebabcase(eventName);
16335
+ if (kebabcaseName !== eventName) {
16336
+ emit.apply(void 0, __spreadArrays([kebabcaseName], args));
16337
+ }
16338
+ });
16339
+ });
16340
+ };/**
16341
+ * @file vue-awesome-swiper
16342
+ * @module directive
16343
+ * @author Surmon <https://github.com/surmon-china>
16344
+ */
16345
+ var INSTANCE_NAME_KEY = 'instanceName';
16346
+ function getDirective(SwiperClass, globalOptions) {
16347
+ var getStandardisedOptionByAttrs = function (vnode, key) {
16348
+ var _a, _b, _c, _d;
16349
+ var value = (_b = (_a = vnode.data) === null || _a === void 0 ? void 0 : _a.attrs) === null || _b === void 0 ? void 0 : _b[key];
16350
+ return value !== undefined
16351
+ ? value
16352
+ : (_d = (_c = vnode.data) === null || _c === void 0 ? void 0 : _c.attrs) === null || _d === void 0 ? void 0 : _d[kebabcase(key)];
16353
+ };
16354
+ // Get swiper instace name in directive
16355
+ var getSwiperInstanceName = function (element, binding, vnode) {
16356
+ return (binding.arg ||
16357
+ getStandardisedOptionByAttrs(vnode, INSTANCE_NAME_KEY) ||
16358
+ element.id ||
16359
+ CoreNames.SwiperInstance);
16360
+ };
16361
+ var getSwiperInstance = function (element, binding, vnode) {
16362
+ var instanceName = getSwiperInstanceName(element, binding, vnode);
16363
+ return vnode.context[instanceName] || null;
16364
+ };
16365
+ var getSwipeOptions = function (binding) {
16366
+ return binding.value || globalOptions;
16367
+ };
16368
+ var getBooleanValueByInput = function (input) {
16369
+ return [true, undefined, null, ''].includes(input);
16370
+ };
16371
+ // Emit event in Vue directive
16372
+ var getEventEmiter = function (vnode) {
16373
+ var _a, _b;
16374
+ var handlers = ((_a = vnode.data) === null || _a === void 0 ? void 0 : _a.on) || ((_b = vnode.componentOptions) === null || _b === void 0 ? void 0 : _b.listeners);
16375
+ return function (name) {
16376
+ var arguments$1 = arguments;
16377
+
16378
+ var args = [];
16379
+ for (var _i = 1; _i < arguments.length; _i++) {
16380
+ args[_i - 1] = arguments$1[_i];
16381
+ }
16382
+ var _a;
16383
+ var handle = (_a = handlers) === null || _a === void 0 ? void 0 : _a[name];
16384
+ if (handle) {
16385
+ handle.fns.apply(handle, args);
16386
+ }
16387
+ };
16388
+ };
16389
+ return {
16390
+ // Init
16391
+ bind: function (element, binding, vnode) {
16392
+ // auto class name
16393
+ if (element.className.indexOf(DEFAULT_CLASSES.containerClass) === -1) {
16394
+ element.className += ((element.className ? ' ' : '') + DEFAULT_CLASSES.containerClass);
16395
+ }
16396
+ // bind click event
16397
+ element.addEventListener('click', function (event) {
16398
+ var emitEvent = getEventEmiter(vnode);
16399
+ var swiper = getSwiperInstance(element, binding, vnode);
16400
+ handleClickSlideEvent(swiper, event, emitEvent);
16401
+ });
16402
+ },
16403
+ // DOM inserted
16404
+ inserted: function (element, binding, vnode) {
16405
+ var context = vnode.context;
16406
+ var swiperOptions = getSwipeOptions(binding);
16407
+ var instanceName = getSwiperInstanceName(element, binding, vnode);
16408
+ var emitEvent = getEventEmiter(vnode);
16409
+ var vueContext = context;
16410
+ var swiper = vueContext === null || vueContext === void 0 ? void 0 : vueContext[instanceName];
16411
+ // Swiper will destroy but not delete instance, when used <keep-alive>
16412
+ if (!swiper || swiper.destroyed) {
16413
+ swiper = new SwiperClass(element, swiperOptions);
16414
+ vueContext[instanceName] = swiper;
16415
+ bindSwiperEvents(swiper, emitEvent);
16416
+ emitEvent(ComponentEvents.Ready, swiper);
16417
+ // MARK: Reinstance when the nexttick with <keep-alive>
16418
+ // Vue.nextTick(instancing) | setTimeout(instancing)
16419
+ }
16420
+ },
16421
+ // On options changed or DOM updated
16422
+ componentUpdated: function (element, binding, vnode) {
16423
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m;
16424
+ var autoUpdate = getStandardisedOptionByAttrs(vnode, ComponentPropNames.AutoUpdate);
16425
+ if (getBooleanValueByInput(autoUpdate)) {
16426
+ var swiper = getSwiperInstance(element, binding, vnode);
16427
+ if (swiper) {
16428
+ var swiperOptions = getSwipeOptions(binding);
16429
+ var isLoop = swiperOptions.loop;
16430
+ if (isLoop) {
16431
+ (_b = (_a = swiper) === null || _a === void 0 ? void 0 : _a.loopDestroy) === null || _b === void 0 ? void 0 : _b.call(_a);
16432
+ }
16433
+ (_c = swiper === null || swiper === void 0 ? void 0 : swiper.update) === null || _c === void 0 ? void 0 : _c.call(swiper);
16434
+ (_e = (_d = swiper.navigation) === null || _d === void 0 ? void 0 : _d.update) === null || _e === void 0 ? void 0 : _e.call(_d);
16435
+ (_g = (_f = swiper.pagination) === null || _f === void 0 ? void 0 : _f.render) === null || _g === void 0 ? void 0 : _g.call(_f);
16436
+ (_j = (_h = swiper.pagination) === null || _h === void 0 ? void 0 : _h.update) === null || _j === void 0 ? void 0 : _j.call(_h);
16437
+ if (isLoop) {
16438
+ (_l = (_k = swiper) === null || _k === void 0 ? void 0 : _k.loopCreate) === null || _l === void 0 ? void 0 : _l.call(_k);
16439
+ (_m = swiper === null || swiper === void 0 ? void 0 : swiper.update) === null || _m === void 0 ? void 0 : _m.call(swiper);
16440
+ }
16441
+ }
16442
+ }
16443
+ },
16444
+ // Destroy this directive
16445
+ unbind: function (element, binding, vnode) {
16446
+ var _a;
16447
+ var autoDestroy = getStandardisedOptionByAttrs(vnode, ComponentPropNames.AutoDestroy);
16448
+ if (getBooleanValueByInput(autoDestroy)) {
16449
+ var swiper = getSwiperInstance(element, binding, vnode);
16450
+ if (swiper && swiper.initialized) {
16451
+ (_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)));
16452
+ }
16453
+ }
16454
+ }
16455
+ };
16456
+ }/**
16457
+ * @file vue-awesome-swiper
16458
+ * @module SwiperComponent
16459
+ * @author Surmon <https://github.com/surmon-china>
16460
+ */
16461
+ var SlotNames;
16462
+ (function (SlotNames) {
16463
+ SlotNames["ParallaxBg"] = "parallax-bg";
16464
+ SlotNames["Pagination"] = "pagination";
16465
+ SlotNames["Scrollbar"] = "scrollbar";
16466
+ SlotNames["PrevButton"] = "button-prev";
16467
+ SlotNames["NextButton"] = "button-next";
16468
+ })(SlotNames || (SlotNames = {}));
16469
+ function getSwiperComponent(SwiperClass) {
16470
+ var _a;
16471
+ return Vue.extend({
16472
+ name: CoreNames.SwiperComponent,
16473
+ props: (_a = {
16474
+ defaultOptions: {
16475
+ type: Object,
16476
+ required: false,
16477
+ default: function () { return ({}); }
16478
+ },
16479
+ // eslint-disable-next-line vue/require-default-prop
16480
+ options: {
16481
+ type: Object,
16482
+ required: false
16483
+ }
16484
+ },
16485
+ _a[ComponentPropNames.AutoUpdate] = {
16486
+ type: Boolean,
16487
+ default: true
16488
+ },
16489
+ // https://github.com/surmon-china/vue-awesome-swiper/pull/550/files
16490
+ _a[ComponentPropNames.AutoDestroy] = {
16491
+ type: Boolean,
16492
+ default: true
16493
+ },
16494
+ // https://github.com/surmon-china/vue-awesome-swiper/pull/388
16495
+ _a[ComponentPropNames.DeleteInstanceOnDestroy] = {
16496
+ type: Boolean,
16497
+ required: false,
16498
+ default: true
16499
+ },
16500
+ _a[ComponentPropNames.CleanupStylesOnDestroy] = {
16501
+ type: Boolean,
16502
+ required: false,
16503
+ default: true
16504
+ },
16505
+ _a),
16506
+ data: function () {
16507
+ var _a;
16508
+ return _a = {},
16509
+ _a[CoreNames.SwiperInstance] = null,
16510
+ _a;
16511
+ },
16512
+ computed: {
16513
+ swiperInstance: {
16514
+ cache: false,
16515
+ set: function (swiper) {
16516
+ this[CoreNames.SwiperInstance] = swiper;
16517
+ },
16518
+ get: function () {
16519
+ return this[CoreNames.SwiperInstance];
16520
+ }
16521
+ },
16522
+ swiperOptions: function () {
16523
+ return this.options || this.defaultOptions;
16524
+ },
16525
+ wrapperClass: function () {
16526
+ return this.swiperOptions.wrapperClass || DEFAULT_CLASSES.wrapperClass;
16527
+ }
16528
+ },
16529
+ methods: {
16530
+ // Feature: click event
16531
+ handleSwiperClick: function (event) {
16532
+ handleClickSlideEvent(this.swiperInstance, event, this.$emit.bind(this));
16533
+ },
16534
+ autoReLoopSwiper: function () {
16535
+ var _a, _b;
16536
+ if (this.swiperInstance && this.swiperOptions.loop) {
16537
+ // https://github.com/surmon-china/vue-awesome-swiper/issues/593
16538
+ // https://github.com/surmon-china/vue-awesome-swiper/issues/544
16539
+ // https://github.com/surmon-china/vue-awesome-swiper/pull/545/files
16540
+ var swiper = this.swiperInstance;
16541
+ (_a = swiper === null || swiper === void 0 ? void 0 : swiper.loopDestroy) === null || _a === void 0 ? void 0 : _a.call(swiper);
16542
+ (_b = swiper === null || swiper === void 0 ? void 0 : swiper.loopCreate) === null || _b === void 0 ? void 0 : _b.call(swiper);
16543
+ }
16544
+ },
16545
+ updateSwiper: function () {
16546
+ var _a, _b, _c, _d, _e, _f, _g, _h;
16547
+ if (this[ComponentPropNames.AutoUpdate] && this.swiperInstance) {
16548
+ this.autoReLoopSwiper();
16549
+ (_b = (_a = this.swiperInstance) === null || _a === void 0 ? void 0 : _a.update) === null || _b === void 0 ? void 0 : _b.call(_a);
16550
+ (_d = (_c = this.swiperInstance.navigation) === null || _c === void 0 ? void 0 : _c.update) === null || _d === void 0 ? void 0 : _d.call(_c);
16551
+ (_f = (_e = this.swiperInstance.pagination) === null || _e === void 0 ? void 0 : _e.render) === null || _f === void 0 ? void 0 : _f.call(_e);
16552
+ (_h = (_g = this.swiperInstance.pagination) === null || _g === void 0 ? void 0 : _g.update) === null || _h === void 0 ? void 0 : _h.call(_g);
16553
+ }
16554
+ },
16555
+ destroySwiper: function () {
16556
+ var _a, _b;
16557
+ if (this[ComponentPropNames.AutoDestroy] && this.swiperInstance) {
16558
+ // https://github.com/surmon-china/vue-awesome-swiper/pull/341
16559
+ // https://github.com/surmon-china/vue-awesome-swiper/issues/340
16560
+ if (this.swiperInstance.initialized) {
16561
+ (_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]);
16562
+ }
16563
+ }
16564
+ },
16565
+ initSwiper: function () {
16566
+ this.swiperInstance = new SwiperClass(this.$el, this.swiperOptions);
16567
+ bindSwiperEvents(this.swiperInstance, this.$emit.bind(this));
16568
+ this.$emit(ComponentEvents.Ready, this.swiperInstance);
16569
+ }
16570
+ },
16571
+ mounted: function () {
16572
+ if (!this.swiperInstance) {
16573
+ this.initSwiper();
16574
+ }
16575
+ },
16576
+ // Update swiper when the parent component activated with `keep-alive`.
16577
+ activated: function () {
16578
+ this.updateSwiper();
16579
+ },
16580
+ updated: function () {
16581
+ this.updateSwiper();
16582
+ },
16583
+ beforeDestroy: function () {
16584
+ // https://github.com/surmon-china/vue-awesome-swiper/commit/2924a9d4d3d1cf51c0d46076410b1f804b2b8a43#diff-7f4e0261ac562c0f354cb91a1ca8864f
16585
+ this.$nextTick(this.destroySwiper);
16586
+ },
16587
+ render: function (createElement) {
16588
+ return createElement('div', {
16589
+ staticClass: DEFAULT_CLASSES.containerClass,
16590
+ on: {
16591
+ click: this.handleSwiperClick
16592
+ }
16593
+ }, [
16594
+ this.$slots[SlotNames.ParallaxBg],
16595
+ createElement('div', {
16596
+ class: this.wrapperClass
16597
+ }, this.$slots.default),
16598
+ this.$slots[SlotNames.Pagination],
16599
+ this.$slots[SlotNames.PrevButton],
16600
+ this.$slots[SlotNames.NextButton],
16601
+ this.$slots[SlotNames.Scrollbar]
16602
+ ]);
16603
+ }
16604
+ });
16605
+ }/**
16606
+ * @file vue-awesome-swiper
16607
+ * @module SwiperSlideComponent
16608
+ * @author Surmon <https://github.com/surmon-china>
16609
+ */
16610
+ var SwiperSlideComponent = Vue.extend({
16611
+ name: CoreNames.SwiperSlideComponent,
16612
+ computed: {
16613
+ slideClass: function () {
16614
+ var _a, _b;
16615
+ return ((_b = (_a = this.$parent) === null || _a === void 0 ? void 0 : _a.swiperOptions) === null || _b === void 0 ? void 0 : _b.slideClass) || DEFAULT_CLASSES.slideClass;
16616
+ }
16617
+ },
16618
+ methods: {
16619
+ update: function () {
16620
+ var _a;
16621
+ var parent = this.$parent;
16622
+ // https://github.com/surmon-china/vue-awesome-swiper/issues/632
16623
+ if (parent[ComponentPropNames.AutoUpdate]) {
16624
+ (_a = parent === null || parent === void 0 ? void 0 : parent.swiperInstance) === null || _a === void 0 ? void 0 : _a.update();
16625
+ }
16626
+ }
16627
+ },
16628
+ mounted: function () {
16629
+ this.update();
16630
+ },
16631
+ updated: function () {
16632
+ this.update();
16633
+ },
16634
+ render: function (createElement) {
16635
+ return createElement('div', {
16636
+ class: this.slideClass
16637
+ }, this.$slots.default);
16638
+ }
16639
+ });/**
16640
+ * @file vue-awesome-swiper
16641
+ * @module exporter
16642
+ * @author Surmon <https://github.com/surmon-china>
16643
+ */
16644
+ var getInstaller = function (SwiperClass) {
16645
+ var install = function (Vue, globalOptions) {
16646
+ if (install.installed)
16647
+ { return; }
16648
+ var SwiperComponent = getSwiperComponent(SwiperClass);
16649
+ if (globalOptions) {
16650
+ SwiperComponent.options.props.defaultOptions.default = function () { return globalOptions; };
16651
+ }
16652
+ Vue.component(CoreNames.SwiperComponent, SwiperComponent);
16653
+ Vue.component(CoreNames.SwiperSlideComponent, SwiperSlideComponent);
16654
+ Vue.directive(CoreNames.SwiperDirective, getDirective(SwiperClass, globalOptions));
16655
+ install.installed = true;
16656
+ };
16657
+ return install;
16658
+ };
16659
+ function exporter(SwiperClass) {
16660
+ var _a;
16661
+ return _a = {
16662
+ version: '4.1.1',
16663
+ install: getInstaller(SwiperClass),
16664
+ directive: getDirective(SwiperClass)
16665
+ },
16666
+ _a[CoreNames.SwiperComponent] = getSwiperComponent(SwiperClass),
16667
+ _a[CoreNames.SwiperSlideComponent] = SwiperSlideComponent,
16668
+ _a;
16669
+ }/**
16670
+ * @file vue-awesome-swiper
16671
+ * @module default-export
16672
+ * @author Surmon <https://github.com/surmon-china>
16673
+ */
16674
+ var VueAwesomeSwiper = exporter(SwiperClass);
16675
+ var version = VueAwesomeSwiper.version;
16676
+ var install = VueAwesomeSwiper.install;
16677
+ var directive = VueAwesomeSwiper.directive;
16678
+ var Swiper = VueAwesomeSwiper.Swiper;
16679
+ 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});})));
16680
+
16502
16681
  /***/ }),
16503
16682
 
16504
16683
  /***/ "ef27":
16505
16684
  /***/ (function(module, exports) {
16506
16685
 
16507
- 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"
16686
+ 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"
16508
16687
 
16509
16688
  /***/ }),
16510
16689
 
@@ -16528,7 +16707,7 @@ module.exports = function (bitmap, value) {
16528
16707
  /***/ "f40e":
16529
16708
  /***/ (function(module, exports) {
16530
16709
 
16531
- 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"
16710
+ 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"
16532
16711
 
16533
16712
  /***/ }),
16534
16713