@egova/egova-api 1.3.33 → 1.3.35

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.umd.js CHANGED
@@ -91,7 +91,7 @@ return /******/ (function(modules) { // webpackBootstrap
91
91
  /******/
92
92
  /******/
93
93
  /******/ // Load entry module and return exports
94
- /******/ return __webpack_require__(__webpack_require__.s = "d345");
94
+ /******/ return __webpack_require__(__webpack_require__.s = "cb40");
95
95
  /******/ })
96
96
  /************************************************************************/
97
97
  /******/ ({
@@ -906,7 +906,7 @@ module.exports = __WEBPACK_EXTERNAL_MODULE__3fb3__;
906
906
  /***/ "40aa":
907
907
  /***/ (function(module, exports) {
908
908
 
909
- module.exports = "<!DOCTYPE html>\n<i-drawer\n width=\"700\"\n draggable\n sticky\n reset-drag-position\n v-model=\"show\"\n class=\"interface-modal diy-modal\"\n transfer\n title=\"已关联流程配置\"\n :mask-closable=\"false\"\n @on-cancel=\"onCancel\"\n>\n <div class=\"drawer-content\">\n <div class=\"header\">\n <i-select v-model=\"proxyName\" :placeholder=\"proxyList?.length ? `已有${proxyList?.length}个代理服务`:'暂无数据'\" @on-select=\"selectProxyName\">\n <i-option v-for=\"item in proxyList\" :value=\"item.id\" :key=\"item.id\"> {{item.name}} </i-option>\n </i-select>\n <i-button class=\"diy-btn-primary\" type=\"primary\" @click=\"onAdd\">新增配置</i-button>\n </div>\n\n <template>\n <i-form v-show=\"proxyName || isAdding \" ref=\"configform\" label-position=\"left\" :label-width=\"125\" label-colon :rules=\"rulesValidate\" :model=\"model\">\n <div class=\"form-title\">{{formTitle}}</div>\n <i-form-item v-show=\"isAdding\" label=\"所属分类\" prop=\"categoryId\" class=\"proxy-category-validate\" required>\n <u-tree-selector\n :treeData=\"categoryList\"\n :canChooseFolder=\"true\"\n v-model=\"model.categoryId\"\n @on-select=\"selectCategory\"\n placeholder=\"请选择所属分类\"\n ></u-tree-selector>\n </i-form-item>\n <i-form-item label=\"代理名称\" prop=\"name\" class=\"proxy-name-validate\" required>\n <i-input class=\"diy-input\" v-model=\"model.name\" placeholder=\"请输入代理名称\"></i-input>\n </i-form-item>\n <i-form-item class=\"proxy-name-validate\" prop=\"code\" label=\"接口编码\" required>\n <i-input class=\"diy-input\" v-model=\"model.code\" placeholder=\"请输入接口编码\"></i-input>\n </i-form-item>\n <i-form-item class=\"un-required-item copy-item\" label=\"接口地址\">\n <i-input class=\"diy-input\" disabled :value=\"url\"></i-input>\n <div class=\"set-btn\" @click=\"onCopy(url)\">复制</div>\n </i-form-item>\n <i-form-item label=\"描述\" prop=\"description\" class=\"proxy-description-validate un-required-item\">\n <i-input type=\"textarea\" v-model=\"model.description\" placeholder=\"请输入描述\" :rows=\"2\"></i-input>\n </i-form-item>\n <i-row class=\"retry-wrap\" style=\"padding-top: 8px\">\n <i-col span=\"24\">\n <i-form-item class=\"un-required-item copy-item\">\n <template #label>\n <i-poptip slot=\"label\" trigger=\"hover\" word-wrap transfer>\n <icon style=\"cursor: help; font-size: 0.16rem\" type=\"ios-information-circle-outline\" />\n <div slot=\"content\" style=\"width: 3rem\">\n <span style=\"font-size: 0.14rem\"\n >在右侧勾选日志记录的请求类型。需记录慢接口时,可以设置最小耗时阈值(大于该值将记录日志),不勾选时则不记录。日志表会记录请求头、请求参数和响应体,如果内容较多时建议关闭,请求次数频繁比较占数据库资源。选项【失败】仅记录调用失败的日志</span\n >\n </div>\n </i-poptip>\n <span>记录日志:</span>\n </template>\n <i-checkboxGroup class=\"diy-checkbox\" v-model=\"logSavingEnabledList\">\n <i-checkbox v-for=\"item in loginLevelFlag\" :disabled=\"readonly\" :label=\"item.value\">{{ item.name }}</i-checkbox>\n </i-checkboxGroup>\n <i-form-item class=\"slow-log-threshold\" prop=\"slowLogThreshold\">\n >\n <i-input class=\"diy-input\" type=\"number\" :disabled=\"slowLogThreshold\" v-model=\"model.slowLogThreshold\"> </i-input>\n 毫秒\n </i-form-item>\n </i-form-item>\n </i-col>\n </i-row>\n <template v-if=\"model.logSavingEnabled\">\n <i-row class=\"retry-wrap\">\n <i-col span=\"11\">\n <i-form-item label=\"开启重推\" required>\n <i-select class=\"diy-select\" v-model=\"model.enableRetry\">\n <i-option v-for=\"(item,index) in isRetryList\" :value=\"item.value\" :key=\"index\">{{ item.name }}</i-option>\n </i-select>\n </i-form-item>\n </i-col>\n <i-col span=\"11\">\n <i-form-item class=\"un-required-item\" label=\"重推次数\" prop=\"retryTimes\">\n <tips-table-label class=\"data-type-tips\" slot=\"label\" label-colon labelTitle=\"重推次数\"></tips-table-label>\n <i-input class=\"diy-input\" type=\"number\" :disabled=\"isRetryTimesReadonly\" v-model=\"model.retryTimes\" placeholder=\"请输入重推次数\"></i-input>\n </i-form-item>\n </i-col>\n </i-row>\n <i-row v-show=\"model.enableRetry === 'true' \">\n <i-col span=\"11\">\n <i-form-item class=\"un-required-item status-code\">\n <template #label>\n <i-poptip slot=\"label\" trigger=\"hover\" content=\"当接口状态码和配置项相同时,才触发重推;多个自定义状态码以英文逗号分隔\" word-wrap transfer>\n <icon style=\"cursor: help; font-size: 0.16rem\" type=\"ios-information-circle-outline\" />\n </i-poptip>\n <span>重推接口状态码:</span>\n </template>\n <i-form-item>\n <i-select ref=\"statusCodeSelect\" v-model=\"statusCode\" class=\"diy-select code-select\" @on-change=\"onStatusCodeChange\">\n <i-option v-for=\"item in statusCodeList\" :value=\"item.value\" :key=\"item.value\">{{ item.name }}</i-option>\n </i-select>\n </i-form-item>\n <i-form-item prop=\"retryCode\">\n <i-input\n style=\"min-width: 0.32rem\"\n v-show=\"statusCode === '2'\"\n class=\"diy-input\"\n v-model=\"model.retryCode\"\n placeholder=\"请输入状态码\"\n ></i-input>\n </i-form-item>\n </i-form-item>\n </i-col>\n </i-row>\n </template>\n\n <i-row class=\"retry-wrap\">\n <i-col span=\"11\">\n <i-form-item label=\"需要认证\" class=\"un-required-item copy-item\">\n <i-select class=\"diy-select\" style=\"margin-top: 6px\" v-model=\"model.authFlag\">\n <i-option v-for=\"item in authFlag\" :value=\"item.value\" :key=\"item.value\">{{ item.name }}</i-option>\n </i-select>\n </i-form-item>\n </i-col>\n <i-col span=\"11\">\n <i-form-item class=\"un-required-item copy-item\">\n <template #label>\n <i-poptip slot=\"label\" trigger=\"hover\" content=\"使用用户中心token访问该接口时,将校验登陆是否拥有该资源代码的权限\" word-wrap transfer>\n <icon style=\"cursor: help; font-size: 0.16rem\" type=\"ios-information-circle-outline\" />\n </i-poptip>\n <span>用户中心资源代码:</span>\n </template>\n <i-input\n class=\"diy-input\"\n style=\"margin-top: 6px\"\n v-model=\"model.resourceCode\"\n :disabled=\"!isResourceCodeEnabled\"\n placeholder=\"请输入用户中心资源代码\"\n ></i-input>\n </i-form-item>\n </i-col>\n </i-row>\n <template>\n <i-row class=\"retry-wrap\">\n <i-col span=\"11\">\n <i-form-item label=\"代理类型\">\n <i-input class=\"diy-input\" value=\"外部接口\" disabled></i-input>\n </i-form-item>\n </i-col>\n <i-col span=\"11\">\n <i-form-item label=\"API项目\">\n <i-select disabled class=\"diy-select\" v-model=\"apiModel.projectId\">\n <i-option v-for=\"(item,index) in projectList\" :value=\"item.id\" :key=\"item.id\">{{ item.name }}</i-option>\n </i-select>\n </i-form-item>\n </i-col>\n </i-row>\n <i-form-item label=\"API接口\">\n <u-tree-selector\n readonly\n :treeData=\"apiTree\"\n leaf-name=\"apis\"\n v-model=\"apiModel.typeId\"\n placeholder=\"请选择API接口\"\n @on-select=\"onApiTreeSelect\"\n ></u-tree-selector>\n </i-form-item>\n <i-form-item label=\"接口路径\">\n <i-input class=\"diy-input\" :readonly=\"true\" v-model=\"apiModel.path\" :rows=\"4\"></i-input>\n </i-form-item>\n </template>\n </i-form>\n </template>\n <i-table v-if=\"proxyName || isAdding\" class=\"diy-table\" height=\"200\" :columns=\"apiColumns\" :data=\"apiParamList\"> </i-table>\n <div v-if=\"!proxyName && !isAdding \" class=\"no-data\">暂无数据</div>\n </div>\n <div class=\"footer\">\n <i-button class=\"diy-btn-primary\" type=\"primary\" :loading=\"loading\" @click.stop=\"onSave\">保存</i-button>\n <i-button class=\"diy-btn-default\" @click.stop=\"onCancel\">取消</i-button>\n </div>\n</i-drawer>\n"
909
+ module.exports = "<!DOCTYPE html>\r\n<i-drawer\r\n width=\"700\"\r\n draggable\r\n sticky\r\n reset-drag-position\r\n v-model=\"show\"\r\n class=\"interface-modal diy-modal\"\r\n transfer\r\n title=\"已关联流程配置\"\r\n :mask-closable=\"false\"\r\n @on-cancel=\"onCancel\"\r\n>\r\n <div class=\"drawer-content\">\r\n <div class=\"header\">\r\n <i-select v-model=\"proxyName\" :placeholder=\"proxyList?.length ? `已有${proxyList?.length}个代理服务`:'暂无数据'\" @on-select=\"selectProxyName\">\r\n <i-option v-for=\"item in proxyList\" :value=\"item.id\" :key=\"item.id\"> {{item.name}} </i-option>\r\n </i-select>\r\n <i-button class=\"diy-btn-primary\" type=\"primary\" @click=\"onAdd\">新增配置</i-button>\r\n </div>\r\n\r\n <template>\r\n <i-form v-show=\"proxyName || isAdding \" ref=\"configform\" label-position=\"left\" :label-width=\"125\" label-colon :rules=\"rulesValidate\" :model=\"model\">\r\n <div class=\"form-title\">{{formTitle}}</div>\r\n <i-form-item v-show=\"isAdding\" label=\"所属分类\" prop=\"categoryId\" class=\"proxy-category-validate\" required>\r\n <u-tree-selector\r\n :treeData=\"categoryList\"\r\n :canChooseFolder=\"true\"\r\n v-model=\"model.categoryId\"\r\n @on-select=\"selectCategory\"\r\n placeholder=\"请选择所属分类\"\r\n ></u-tree-selector>\r\n </i-form-item>\r\n <i-form-item label=\"代理名称\" prop=\"name\" class=\"proxy-name-validate\" required>\r\n <i-input class=\"diy-input\" v-model=\"model.name\" placeholder=\"请输入代理名称\"></i-input>\r\n </i-form-item>\r\n <i-form-item class=\"proxy-name-validate\" prop=\"code\" label=\"接口编码\" required>\r\n <i-input class=\"diy-input\" v-model=\"model.code\" placeholder=\"请输入接口编码\"></i-input>\r\n </i-form-item>\r\n <i-form-item class=\"un-required-item copy-item\" label=\"接口地址\">\r\n <i-input class=\"diy-input\" disabled :value=\"url\"></i-input>\r\n <div class=\"set-btn\" @click=\"onCopy(url)\">复制</div>\r\n </i-form-item>\r\n <i-form-item label=\"描述\" prop=\"description\" class=\"proxy-description-validate un-required-item\">\r\n <i-input type=\"textarea\" v-model=\"model.description\" placeholder=\"请输入描述\" :rows=\"2\"></i-input>\r\n </i-form-item>\r\n <i-row class=\"retry-wrap\" style=\"padding-top: 8px\">\r\n <i-col span=\"24\">\r\n <i-form-item class=\"un-required-item copy-item\">\r\n <template #label>\r\n <i-poptip slot=\"label\" trigger=\"hover\" word-wrap transfer>\r\n <icon style=\"cursor: help; font-size: 0.16rem\" type=\"ios-information-circle-outline\" />\r\n <div slot=\"content\" style=\"width: 3rem\">\r\n <span style=\"font-size: 0.14rem\"\r\n >在右侧勾选日志记录的请求类型。需记录慢接口时,可以设置最小耗时阈值(大于该值将记录日志),不勾选时则不记录。日志表会记录请求头、请求参数和响应体,如果内容较多时建议关闭,请求次数频繁比较占数据库资源。选项【失败】仅记录调用失败的日志</span\r\n >\r\n </div>\r\n </i-poptip>\r\n <span>记录日志:</span>\r\n </template>\r\n <i-checkboxGroup class=\"diy-checkbox\" v-model=\"logSavingEnabledList\">\r\n <i-checkbox v-for=\"item in loginLevelFlag\" :disabled=\"readonly\" :label=\"item.value\">{{ item.name }}</i-checkbox>\r\n </i-checkboxGroup>\r\n <i-form-item class=\"slow-log-threshold\" prop=\"slowLogThreshold\">\r\n >\r\n <i-input class=\"diy-input\" type=\"number\" :disabled=\"slowLogThreshold\" v-model=\"model.slowLogThreshold\"> </i-input>\r\n 毫秒\r\n </i-form-item>\r\n </i-form-item>\r\n </i-col>\r\n </i-row>\r\n <template v-if=\"model.logSavingEnabled\">\r\n <i-row class=\"retry-wrap\">\r\n <i-col span=\"11\">\r\n <i-form-item label=\"开启重推\" required>\r\n <i-select class=\"diy-select\" v-model=\"model.enableRetry\">\r\n <i-option v-for=\"(item,index) in isRetryList\" :value=\"item.value\" :key=\"index\">{{ item.name }}</i-option>\r\n </i-select>\r\n </i-form-item>\r\n </i-col>\r\n <i-col span=\"11\">\r\n <i-form-item class=\"un-required-item\" label=\"重推次数\" prop=\"retryTimes\">\r\n <tips-table-label class=\"data-type-tips\" slot=\"label\" label-colon labelTitle=\"重推次数\"></tips-table-label>\r\n <i-input class=\"diy-input\" type=\"number\" :disabled=\"isRetryTimesReadonly\" v-model=\"model.retryTimes\" placeholder=\"请输入重推次数\"></i-input>\r\n </i-form-item>\r\n </i-col>\r\n </i-row>\r\n <i-row v-show=\"model.enableRetry === 'true' \">\r\n <i-col span=\"11\">\r\n <i-form-item class=\"un-required-item status-code\">\r\n <template #label>\r\n <i-poptip slot=\"label\" trigger=\"hover\" content=\"当接口状态码和配置项相同时,才触发重推;多个自定义状态码以英文逗号分隔\" word-wrap transfer>\r\n <icon style=\"cursor: help; font-size: 0.16rem\" type=\"ios-information-circle-outline\" />\r\n </i-poptip>\r\n <span>重推接口状态码:</span>\r\n </template>\r\n <i-form-item>\r\n <i-select ref=\"statusCodeSelect\" v-model=\"statusCode\" class=\"diy-select code-select\" @on-change=\"onStatusCodeChange\">\r\n <i-option v-for=\"item in statusCodeList\" :value=\"item.value\" :key=\"item.value\">{{ item.name }}</i-option>\r\n </i-select>\r\n </i-form-item>\r\n <i-form-item prop=\"retryCode\">\r\n <i-input\r\n style=\"min-width: 0.32rem\"\r\n v-show=\"statusCode === '2'\"\r\n class=\"diy-input\"\r\n v-model=\"model.retryCode\"\r\n placeholder=\"请输入状态码\"\r\n ></i-input>\r\n </i-form-item>\r\n </i-form-item>\r\n </i-col>\r\n </i-row>\r\n </template>\r\n\r\n <i-row class=\"retry-wrap\">\r\n <i-col span=\"11\">\r\n <i-form-item label=\"需要认证\" class=\"un-required-item copy-item\">\r\n <i-select class=\"diy-select\" style=\"margin-top: 6px\" v-model=\"model.authFlag\">\r\n <i-option v-for=\"item in authFlag\" :value=\"item.value\" :key=\"item.value\">{{ item.name }}</i-option>\r\n </i-select>\r\n </i-form-item>\r\n </i-col>\r\n <i-col span=\"11\">\r\n <i-form-item class=\"un-required-item copy-item\">\r\n <template #label>\r\n <i-poptip slot=\"label\" trigger=\"hover\" content=\"使用用户中心token访问该接口时,将校验登陆是否拥有该资源代码的权限\" word-wrap transfer>\r\n <icon style=\"cursor: help; font-size: 0.16rem\" type=\"ios-information-circle-outline\" />\r\n </i-poptip>\r\n <span>用户中心资源代码:</span>\r\n </template>\r\n <i-input\r\n class=\"diy-input\"\r\n style=\"margin-top: 6px\"\r\n v-model=\"model.resourceCode\"\r\n :disabled=\"!isResourceCodeEnabled\"\r\n placeholder=\"请输入用户中心资源代码\"\r\n ></i-input>\r\n </i-form-item>\r\n </i-col>\r\n </i-row>\r\n <template>\r\n <i-row class=\"retry-wrap\">\r\n <i-col span=\"11\">\r\n <i-form-item label=\"代理类型\">\r\n <i-input class=\"diy-input\" value=\"外部接口\" disabled></i-input>\r\n </i-form-item>\r\n </i-col>\r\n <i-col span=\"11\">\r\n <i-form-item label=\"API项目\">\r\n <i-select disabled class=\"diy-select\" v-model=\"apiModel.projectId\">\r\n <i-option v-for=\"(item,index) in projectList\" :value=\"item.id\" :key=\"item.id\">{{ item.name }}</i-option>\r\n </i-select>\r\n </i-form-item>\r\n </i-col>\r\n </i-row>\r\n <i-form-item label=\"API接口\">\r\n <u-tree-selector\r\n readonly\r\n :treeData=\"apiTree\"\r\n leaf-name=\"apis\"\r\n v-model=\"apiModel.typeId\"\r\n placeholder=\"请选择API接口\"\r\n @on-select=\"onApiTreeSelect\"\r\n ></u-tree-selector>\r\n </i-form-item>\r\n <i-form-item label=\"接口路径\">\r\n <i-input class=\"diy-input\" :readonly=\"true\" v-model=\"apiModel.path\" :rows=\"4\"></i-input>\r\n </i-form-item>\r\n </template>\r\n </i-form>\r\n </template>\r\n <i-table v-if=\"proxyName || isAdding\" class=\"diy-table\" height=\"200\" :columns=\"apiColumns\" :data=\"apiParamList\"> </i-table>\r\n <div v-if=\"!proxyName && !isAdding \" class=\"no-data\">暂无数据</div>\r\n </div>\r\n <div class=\"footer\">\r\n <i-button class=\"diy-btn-primary\" type=\"primary\" :loading=\"loading\" @click.stop=\"onSave\">保存</i-button>\r\n <i-button class=\"diy-btn-default\" @click.stop=\"onCancel\">取消</i-button>\r\n </div>\r\n</i-drawer>\r\n"
910
910
 
911
911
  /***/ }),
912
912
 
@@ -3997,529 +3997,44 @@ module.exports = function (argument) {
3997
3997
 
3998
3998
  /***/ }),
3999
3999
 
4000
- /***/ "b042":
4000
+ /***/ "b061":
4001
+ /***/ (function(module, exports) {
4002
+
4003
+ var g;
4004
+
4005
+ // This works in non-strict mode
4006
+ g = (function() {
4007
+ return this;
4008
+ })();
4009
+
4010
+ try {
4011
+ // This works if eval is allowed (see CSP)
4012
+ g = g || new Function("return this")();
4013
+ } catch (e) {
4014
+ // This works if the window reference is available
4015
+ if (typeof window === "object") g = window;
4016
+ }
4017
+
4018
+ // g can still be undefined, but nothing to do about it...
4019
+ // We return undefined, instead of nothing here, so it's
4020
+ // easier to handle this case. if(!global) { ...}
4021
+
4022
+ module.exports = g;
4023
+
4024
+
4025
+ /***/ }),
4026
+
4027
+ /***/ "b156":
4001
4028
  /***/ (function(module, exports, __webpack_require__) {
4002
4029
 
4030
+ // extracted by mini-css-extract-plugin
4003
4031
 
4004
- /*!
4005
- * vue-awesome-swiper v4.1.1
4006
- * Copyright (c) Surmon. All rights reserved.
4007
- * Released under the MIT License.
4008
- * Surmon <https://github.com/surmon-china>
4009
- */
4032
+ /***/ }),
4010
4033
 
4011
- (function(g,f){ true?f(exports,__webpack_require__("d670"),__webpack_require__("8bbf")):undefined;}(this,(function(exports, SwiperClass, Vue){'use strict';SwiperClass=SwiperClass&&Object.prototype.hasOwnProperty.call(SwiperClass,'default')?SwiperClass['default']:SwiperClass;Vue=Vue&&Object.prototype.hasOwnProperty.call(Vue,'default')?Vue['default']:Vue;/**
4012
- * @file vue-awesome-swiper
4013
- * @module constants
4014
- * @author Surmon <https://github.com/surmon-china>
4015
- */
4016
- var CoreNames;
4017
- (function (CoreNames) {
4018
- CoreNames["SwiperComponent"] = "Swiper";
4019
- CoreNames["SwiperSlideComponent"] = "SwiperSlide";
4020
- CoreNames["SwiperDirective"] = "swiper";
4021
- CoreNames["SwiperInstance"] = "$swiper";
4022
- })(CoreNames || (CoreNames = {}));
4023
- var DEFAULT_CLASSES = Object.freeze({
4024
- containerClass: 'swiper-container',
4025
- wrapperClass: 'swiper-wrapper',
4026
- slideClass: 'swiper-slide'
4027
- });
4028
- var ComponentEvents;
4029
- (function (ComponentEvents) {
4030
- ComponentEvents["Ready"] = "ready";
4031
- ComponentEvents["ClickSlide"] = "clickSlide";
4032
- })(ComponentEvents || (ComponentEvents = {}));
4033
- var ComponentPropNames;
4034
- (function (ComponentPropNames) {
4035
- ComponentPropNames["AutoUpdate"] = "autoUpdate";
4036
- ComponentPropNames["AutoDestroy"] = "autoDestroy";
4037
- ComponentPropNames["DeleteInstanceOnDestroy"] = "deleteInstanceOnDestroy";
4038
- ComponentPropNames["CleanupStylesOnDestroy"] = "cleanupStylesOnDestroy";
4039
- })(ComponentPropNames || (ComponentPropNames = {}));
4040
- // https://swiperjs.com/api/#events
4041
- var SWIPER_EVENTS = [
4042
- 'init',
4043
- 'beforeDestroy',
4044
- 'slideChange',
4045
- 'slideChangeTransitionStart',
4046
- 'slideChangeTransitionEnd',
4047
- 'slideNextTransitionStart',
4048
- 'slideNextTransitionEnd',
4049
- 'slidePrevTransitionStart',
4050
- 'slidePrevTransitionEnd',
4051
- 'transitionStart',
4052
- 'transitionEnd',
4053
- 'touchStart',
4054
- 'touchMove',
4055
- 'touchMoveOpposite',
4056
- 'sliderMove',
4057
- 'touchEnd',
4058
- 'click',
4059
- 'tap',
4060
- 'doubleTap',
4061
- 'imagesReady',
4062
- 'progress',
4063
- 'reachBeginning',
4064
- 'reachEnd',
4065
- 'fromEdge',
4066
- 'setTranslate',
4067
- 'setTransition',
4068
- 'resize',
4069
- 'observerUpdate',
4070
- 'beforeLoopFix',
4071
- 'loopFix'
4072
- ];/*! *****************************************************************************
4073
- Copyright (c) Microsoft Corporation. All rights reserved.
4074
- Licensed under the Apache License, Version 2.0 (the "License"); you may not use
4075
- this file except in compliance with the License. You may obtain a copy of the
4076
- License at http://www.apache.org/licenses/LICENSE-2.0
4077
-
4078
- THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
4079
- KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
4080
- WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
4081
- MERCHANTABLITY OR NON-INFRINGEMENT.
4082
-
4083
- See the Apache Version 2.0 License for specific language governing permissions
4084
- and limitations under the License.
4085
- ***************************************************************************** */
4086
-
4087
- function __spreadArrays() {
4088
- for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;
4089
- for (var r = Array(s), k = 0, i = 0; i < il; i++)
4090
- for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)
4091
- r[k] = a[j];
4092
- return r;
4093
- }/**
4094
- * @file vue-awesome-swiper
4095
- * @module utils
4096
- * @author Surmon <https://github.com/surmon-china>
4097
- */
4098
- var kebabcase = function (string) {
4099
- return string
4100
- .replace(/([a-z])([A-Z])/g, '$1-$2')
4101
- .replace(/\s+/g, '-')
4102
- .toLowerCase();
4103
- };/**
4104
- * @file vue-awesome-swiper
4105
- * @module event
4106
- * @author Surmon <https://github.com/surmon-china>
4107
- */
4108
- var handleClickSlideEvent = function (swiper, event, emit) {
4109
- var _a, _b, _c;
4110
- if (swiper && !(swiper.destroyed)) {
4111
- var eventPath = ((_a = event.composedPath) === null || _a === void 0 ? void 0 : _a.call(event)) || event.path;
4112
- if ((event === null || event === void 0 ? void 0 : event.target) && eventPath) {
4113
- var slides_1 = Array.from(swiper.slides);
4114
- var paths = Array.from(eventPath);
4115
- // Click slide || slide[children]
4116
- if (slides_1.includes(event.target) || paths.some(function (item) { return slides_1.includes(item); })) {
4117
- var clickedIndex = swiper.clickedIndex;
4118
- var reallyIndex = Number((_c = (_b = swiper.clickedSlide) === null || _b === void 0 ? void 0 : _b.dataset) === null || _c === void 0 ? void 0 : _c.swiperSlideIndex);
4119
- var reallyIndexValue = Number.isInteger(reallyIndex) ? reallyIndex : null;
4120
- emit(ComponentEvents.ClickSlide, clickedIndex, reallyIndexValue);
4121
- emit(kebabcase(ComponentEvents.ClickSlide), clickedIndex, reallyIndexValue);
4122
- }
4123
- }
4124
- }
4125
- };
4126
- var bindSwiperEvents = function (swiper, emit) {
4127
- SWIPER_EVENTS.forEach(function (eventName) {
4128
- swiper.on(eventName, function () {
4129
- var arguments$1 = arguments;
4130
-
4131
- var args = [];
4132
- for (var _i = 0; _i < arguments.length; _i++) {
4133
- args[_i] = arguments$1[_i];
4134
- }
4135
- emit.apply(void 0, __spreadArrays([eventName], args));
4136
- var kebabcaseName = kebabcase(eventName);
4137
- if (kebabcaseName !== eventName) {
4138
- emit.apply(void 0, __spreadArrays([kebabcaseName], args));
4139
- }
4140
- });
4141
- });
4142
- };/**
4143
- * @file vue-awesome-swiper
4144
- * @module directive
4145
- * @author Surmon <https://github.com/surmon-china>
4146
- */
4147
- var INSTANCE_NAME_KEY = 'instanceName';
4148
- function getDirective(SwiperClass, globalOptions) {
4149
- var getStandardisedOptionByAttrs = function (vnode, key) {
4150
- var _a, _b, _c, _d;
4151
- var value = (_b = (_a = vnode.data) === null || _a === void 0 ? void 0 : _a.attrs) === null || _b === void 0 ? void 0 : _b[key];
4152
- return value !== undefined
4153
- ? value
4154
- : (_d = (_c = vnode.data) === null || _c === void 0 ? void 0 : _c.attrs) === null || _d === void 0 ? void 0 : _d[kebabcase(key)];
4155
- };
4156
- // Get swiper instace name in directive
4157
- var getSwiperInstanceName = function (element, binding, vnode) {
4158
- return (binding.arg ||
4159
- getStandardisedOptionByAttrs(vnode, INSTANCE_NAME_KEY) ||
4160
- element.id ||
4161
- CoreNames.SwiperInstance);
4162
- };
4163
- var getSwiperInstance = function (element, binding, vnode) {
4164
- var instanceName = getSwiperInstanceName(element, binding, vnode);
4165
- return vnode.context[instanceName] || null;
4166
- };
4167
- var getSwipeOptions = function (binding) {
4168
- return binding.value || globalOptions;
4169
- };
4170
- var getBooleanValueByInput = function (input) {
4171
- return [true, undefined, null, ''].includes(input);
4172
- };
4173
- // Emit event in Vue directive
4174
- var getEventEmiter = function (vnode) {
4175
- var _a, _b;
4176
- var handlers = ((_a = vnode.data) === null || _a === void 0 ? void 0 : _a.on) || ((_b = vnode.componentOptions) === null || _b === void 0 ? void 0 : _b.listeners);
4177
- return function (name) {
4178
- var arguments$1 = arguments;
4179
-
4180
- var args = [];
4181
- for (var _i = 1; _i < arguments.length; _i++) {
4182
- args[_i - 1] = arguments$1[_i];
4183
- }
4184
- var _a;
4185
- var handle = (_a = handlers) === null || _a === void 0 ? void 0 : _a[name];
4186
- if (handle) {
4187
- handle.fns.apply(handle, args);
4188
- }
4189
- };
4190
- };
4191
- return {
4192
- // Init
4193
- bind: function (element, binding, vnode) {
4194
- // auto class name
4195
- if (element.className.indexOf(DEFAULT_CLASSES.containerClass) === -1) {
4196
- element.className += ((element.className ? ' ' : '') + DEFAULT_CLASSES.containerClass);
4197
- }
4198
- // bind click event
4199
- element.addEventListener('click', function (event) {
4200
- var emitEvent = getEventEmiter(vnode);
4201
- var swiper = getSwiperInstance(element, binding, vnode);
4202
- handleClickSlideEvent(swiper, event, emitEvent);
4203
- });
4204
- },
4205
- // DOM inserted
4206
- inserted: function (element, binding, vnode) {
4207
- var context = vnode.context;
4208
- var swiperOptions = getSwipeOptions(binding);
4209
- var instanceName = getSwiperInstanceName(element, binding, vnode);
4210
- var emitEvent = getEventEmiter(vnode);
4211
- var vueContext = context;
4212
- var swiper = vueContext === null || vueContext === void 0 ? void 0 : vueContext[instanceName];
4213
- // Swiper will destroy but not delete instance, when used <keep-alive>
4214
- if (!swiper || swiper.destroyed) {
4215
- swiper = new SwiperClass(element, swiperOptions);
4216
- vueContext[instanceName] = swiper;
4217
- bindSwiperEvents(swiper, emitEvent);
4218
- emitEvent(ComponentEvents.Ready, swiper);
4219
- // MARK: Reinstance when the nexttick with <keep-alive>
4220
- // Vue.nextTick(instancing) | setTimeout(instancing)
4221
- }
4222
- },
4223
- // On options changed or DOM updated
4224
- componentUpdated: function (element, binding, vnode) {
4225
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m;
4226
- var autoUpdate = getStandardisedOptionByAttrs(vnode, ComponentPropNames.AutoUpdate);
4227
- if (getBooleanValueByInput(autoUpdate)) {
4228
- var swiper = getSwiperInstance(element, binding, vnode);
4229
- if (swiper) {
4230
- var swiperOptions = getSwipeOptions(binding);
4231
- var isLoop = swiperOptions.loop;
4232
- if (isLoop) {
4233
- (_b = (_a = swiper) === null || _a === void 0 ? void 0 : _a.loopDestroy) === null || _b === void 0 ? void 0 : _b.call(_a);
4234
- }
4235
- (_c = swiper === null || swiper === void 0 ? void 0 : swiper.update) === null || _c === void 0 ? void 0 : _c.call(swiper);
4236
- (_e = (_d = swiper.navigation) === null || _d === void 0 ? void 0 : _d.update) === null || _e === void 0 ? void 0 : _e.call(_d);
4237
- (_g = (_f = swiper.pagination) === null || _f === void 0 ? void 0 : _f.render) === null || _g === void 0 ? void 0 : _g.call(_f);
4238
- (_j = (_h = swiper.pagination) === null || _h === void 0 ? void 0 : _h.update) === null || _j === void 0 ? void 0 : _j.call(_h);
4239
- if (isLoop) {
4240
- (_l = (_k = swiper) === null || _k === void 0 ? void 0 : _k.loopCreate) === null || _l === void 0 ? void 0 : _l.call(_k);
4241
- (_m = swiper === null || swiper === void 0 ? void 0 : swiper.update) === null || _m === void 0 ? void 0 : _m.call(swiper);
4242
- }
4243
- }
4244
- }
4245
- },
4246
- // Destroy this directive
4247
- unbind: function (element, binding, vnode) {
4248
- var _a;
4249
- var autoDestroy = getStandardisedOptionByAttrs(vnode, ComponentPropNames.AutoDestroy);
4250
- if (getBooleanValueByInput(autoDestroy)) {
4251
- var swiper = getSwiperInstance(element, binding, vnode);
4252
- if (swiper && swiper.initialized) {
4253
- (_a = swiper === null || swiper === void 0 ? void 0 : swiper.destroy) === null || _a === void 0 ? void 0 : _a.call(swiper, getBooleanValueByInput(getStandardisedOptionByAttrs(vnode, ComponentPropNames.DeleteInstanceOnDestroy)), getBooleanValueByInput(getStandardisedOptionByAttrs(vnode, ComponentPropNames.CleanupStylesOnDestroy)));
4254
- }
4255
- }
4256
- }
4257
- };
4258
- }/**
4259
- * @file vue-awesome-swiper
4260
- * @module SwiperComponent
4261
- * @author Surmon <https://github.com/surmon-china>
4262
- */
4263
- var SlotNames;
4264
- (function (SlotNames) {
4265
- SlotNames["ParallaxBg"] = "parallax-bg";
4266
- SlotNames["Pagination"] = "pagination";
4267
- SlotNames["Scrollbar"] = "scrollbar";
4268
- SlotNames["PrevButton"] = "button-prev";
4269
- SlotNames["NextButton"] = "button-next";
4270
- })(SlotNames || (SlotNames = {}));
4271
- function getSwiperComponent(SwiperClass) {
4272
- var _a;
4273
- return Vue.extend({
4274
- name: CoreNames.SwiperComponent,
4275
- props: (_a = {
4276
- defaultOptions: {
4277
- type: Object,
4278
- required: false,
4279
- default: function () { return ({}); }
4280
- },
4281
- // eslint-disable-next-line vue/require-default-prop
4282
- options: {
4283
- type: Object,
4284
- required: false
4285
- }
4286
- },
4287
- _a[ComponentPropNames.AutoUpdate] = {
4288
- type: Boolean,
4289
- default: true
4290
- },
4291
- // https://github.com/surmon-china/vue-awesome-swiper/pull/550/files
4292
- _a[ComponentPropNames.AutoDestroy] = {
4293
- type: Boolean,
4294
- default: true
4295
- },
4296
- // https://github.com/surmon-china/vue-awesome-swiper/pull/388
4297
- _a[ComponentPropNames.DeleteInstanceOnDestroy] = {
4298
- type: Boolean,
4299
- required: false,
4300
- default: true
4301
- },
4302
- _a[ComponentPropNames.CleanupStylesOnDestroy] = {
4303
- type: Boolean,
4304
- required: false,
4305
- default: true
4306
- },
4307
- _a),
4308
- data: function () {
4309
- var _a;
4310
- return _a = {},
4311
- _a[CoreNames.SwiperInstance] = null,
4312
- _a;
4313
- },
4314
- computed: {
4315
- swiperInstance: {
4316
- cache: false,
4317
- set: function (swiper) {
4318
- this[CoreNames.SwiperInstance] = swiper;
4319
- },
4320
- get: function () {
4321
- return this[CoreNames.SwiperInstance];
4322
- }
4323
- },
4324
- swiperOptions: function () {
4325
- return this.options || this.defaultOptions;
4326
- },
4327
- wrapperClass: function () {
4328
- return this.swiperOptions.wrapperClass || DEFAULT_CLASSES.wrapperClass;
4329
- }
4330
- },
4331
- methods: {
4332
- // Feature: click event
4333
- handleSwiperClick: function (event) {
4334
- handleClickSlideEvent(this.swiperInstance, event, this.$emit.bind(this));
4335
- },
4336
- autoReLoopSwiper: function () {
4337
- var _a, _b;
4338
- if (this.swiperInstance && this.swiperOptions.loop) {
4339
- // https://github.com/surmon-china/vue-awesome-swiper/issues/593
4340
- // https://github.com/surmon-china/vue-awesome-swiper/issues/544
4341
- // https://github.com/surmon-china/vue-awesome-swiper/pull/545/files
4342
- var swiper = this.swiperInstance;
4343
- (_a = swiper === null || swiper === void 0 ? void 0 : swiper.loopDestroy) === null || _a === void 0 ? void 0 : _a.call(swiper);
4344
- (_b = swiper === null || swiper === void 0 ? void 0 : swiper.loopCreate) === null || _b === void 0 ? void 0 : _b.call(swiper);
4345
- }
4346
- },
4347
- updateSwiper: function () {
4348
- var _a, _b, _c, _d, _e, _f, _g, _h;
4349
- if (this[ComponentPropNames.AutoUpdate] && this.swiperInstance) {
4350
- this.autoReLoopSwiper();
4351
- (_b = (_a = this.swiperInstance) === null || _a === void 0 ? void 0 : _a.update) === null || _b === void 0 ? void 0 : _b.call(_a);
4352
- (_d = (_c = this.swiperInstance.navigation) === null || _c === void 0 ? void 0 : _c.update) === null || _d === void 0 ? void 0 : _d.call(_c);
4353
- (_f = (_e = this.swiperInstance.pagination) === null || _e === void 0 ? void 0 : _e.render) === null || _f === void 0 ? void 0 : _f.call(_e);
4354
- (_h = (_g = this.swiperInstance.pagination) === null || _g === void 0 ? void 0 : _g.update) === null || _h === void 0 ? void 0 : _h.call(_g);
4355
- }
4356
- },
4357
- destroySwiper: function () {
4358
- var _a, _b;
4359
- if (this[ComponentPropNames.AutoDestroy] && this.swiperInstance) {
4360
- // https://github.com/surmon-china/vue-awesome-swiper/pull/341
4361
- // https://github.com/surmon-china/vue-awesome-swiper/issues/340
4362
- if (this.swiperInstance.initialized) {
4363
- (_b = (_a = this.swiperInstance) === null || _a === void 0 ? void 0 : _a.destroy) === null || _b === void 0 ? void 0 : _b.call(_a, this[ComponentPropNames.DeleteInstanceOnDestroy], this[ComponentPropNames.CleanupStylesOnDestroy]);
4364
- }
4365
- }
4366
- },
4367
- initSwiper: function () {
4368
- this.swiperInstance = new SwiperClass(this.$el, this.swiperOptions);
4369
- bindSwiperEvents(this.swiperInstance, this.$emit.bind(this));
4370
- this.$emit(ComponentEvents.Ready, this.swiperInstance);
4371
- }
4372
- },
4373
- mounted: function () {
4374
- if (!this.swiperInstance) {
4375
- this.initSwiper();
4376
- }
4377
- },
4378
- // Update swiper when the parent component activated with `keep-alive`.
4379
- activated: function () {
4380
- this.updateSwiper();
4381
- },
4382
- updated: function () {
4383
- this.updateSwiper();
4384
- },
4385
- beforeDestroy: function () {
4386
- // https://github.com/surmon-china/vue-awesome-swiper/commit/2924a9d4d3d1cf51c0d46076410b1f804b2b8a43#diff-7f4e0261ac562c0f354cb91a1ca8864f
4387
- this.$nextTick(this.destroySwiper);
4388
- },
4389
- render: function (createElement) {
4390
- return createElement('div', {
4391
- staticClass: DEFAULT_CLASSES.containerClass,
4392
- on: {
4393
- click: this.handleSwiperClick
4394
- }
4395
- }, [
4396
- this.$slots[SlotNames.ParallaxBg],
4397
- createElement('div', {
4398
- class: this.wrapperClass
4399
- }, this.$slots.default),
4400
- this.$slots[SlotNames.Pagination],
4401
- this.$slots[SlotNames.PrevButton],
4402
- this.$slots[SlotNames.NextButton],
4403
- this.$slots[SlotNames.Scrollbar]
4404
- ]);
4405
- }
4406
- });
4407
- }/**
4408
- * @file vue-awesome-swiper
4409
- * @module SwiperSlideComponent
4410
- * @author Surmon <https://github.com/surmon-china>
4411
- */
4412
- var SwiperSlideComponent = Vue.extend({
4413
- name: CoreNames.SwiperSlideComponent,
4414
- computed: {
4415
- slideClass: function () {
4416
- var _a, _b;
4417
- return ((_b = (_a = this.$parent) === null || _a === void 0 ? void 0 : _a.swiperOptions) === null || _b === void 0 ? void 0 : _b.slideClass) || DEFAULT_CLASSES.slideClass;
4418
- }
4419
- },
4420
- methods: {
4421
- update: function () {
4422
- var _a;
4423
- var parent = this.$parent;
4424
- // https://github.com/surmon-china/vue-awesome-swiper/issues/632
4425
- if (parent[ComponentPropNames.AutoUpdate]) {
4426
- (_a = parent === null || parent === void 0 ? void 0 : parent.swiperInstance) === null || _a === void 0 ? void 0 : _a.update();
4427
- }
4428
- }
4429
- },
4430
- mounted: function () {
4431
- this.update();
4432
- },
4433
- updated: function () {
4434
- this.update();
4435
- },
4436
- render: function (createElement) {
4437
- return createElement('div', {
4438
- class: this.slideClass
4439
- }, this.$slots.default);
4440
- }
4441
- });/**
4442
- * @file vue-awesome-swiper
4443
- * @module exporter
4444
- * @author Surmon <https://github.com/surmon-china>
4445
- */
4446
- var getInstaller = function (SwiperClass) {
4447
- var install = function (Vue, globalOptions) {
4448
- if (install.installed)
4449
- { return; }
4450
- var SwiperComponent = getSwiperComponent(SwiperClass);
4451
- if (globalOptions) {
4452
- SwiperComponent.options.props.defaultOptions.default = function () { return globalOptions; };
4453
- }
4454
- Vue.component(CoreNames.SwiperComponent, SwiperComponent);
4455
- Vue.component(CoreNames.SwiperSlideComponent, SwiperSlideComponent);
4456
- Vue.directive(CoreNames.SwiperDirective, getDirective(SwiperClass, globalOptions));
4457
- install.installed = true;
4458
- };
4459
- return install;
4460
- };
4461
- function exporter(SwiperClass) {
4462
- var _a;
4463
- return _a = {
4464
- version: '4.1.1',
4465
- install: getInstaller(SwiperClass),
4466
- directive: getDirective(SwiperClass)
4467
- },
4468
- _a[CoreNames.SwiperComponent] = getSwiperComponent(SwiperClass),
4469
- _a[CoreNames.SwiperSlideComponent] = SwiperSlideComponent,
4470
- _a;
4471
- }/**
4472
- * @file vue-awesome-swiper
4473
- * @module default-export
4474
- * @author Surmon <https://github.com/surmon-china>
4475
- */
4476
- var VueAwesomeSwiper = exporter(SwiperClass);
4477
- var version = VueAwesomeSwiper.version;
4478
- var install = VueAwesomeSwiper.install;
4479
- var directive = VueAwesomeSwiper.directive;
4480
- var Swiper = VueAwesomeSwiper.Swiper;
4481
- var SwiperSlide = VueAwesomeSwiper.SwiperSlide;exports.Swiper=Swiper;exports.SwiperSlide=SwiperSlide;exports.default=VueAwesomeSwiper;exports.directive=directive;exports.install=install;exports.version=version;Object.defineProperty(exports,'__esModule',{value:true});})));
4482
-
4483
- /***/ }),
4484
-
4485
- /***/ "b061":
4486
- /***/ (function(module, exports) {
4487
-
4488
- var g;
4489
-
4490
- // This works in non-strict mode
4491
- g = (function() {
4492
- return this;
4493
- })();
4494
-
4495
- try {
4496
- // This works if eval is allowed (see CSP)
4497
- g = g || new Function("return this")();
4498
- } catch (e) {
4499
- // This works if the window reference is available
4500
- if (typeof window === "object") g = window;
4501
- }
4502
-
4503
- // g can still be undefined, but nothing to do about it...
4504
- // We return undefined, instead of nothing here, so it's
4505
- // easier to handle this case. if(!global) { ...}
4506
-
4507
- module.exports = g;
4508
-
4509
-
4510
- /***/ }),
4511
-
4512
- /***/ "b156":
4513
- /***/ (function(module, exports, __webpack_require__) {
4514
-
4515
- // extracted by mini-css-extract-plugin
4516
-
4517
- /***/ }),
4518
-
4519
- /***/ "b61c":
4520
- /***/ (function(module, exports, __webpack_require__) {
4521
-
4522
- // extracted by mini-css-extract-plugin
4034
+ /***/ "b61c":
4035
+ /***/ (function(module, exports, __webpack_require__) {
4036
+
4037
+ // extracted by mini-css-extract-plugin
4523
4038
 
4524
4039
  /***/ }),
4525
4040
 
@@ -4687,126 +4202,7 @@ module.exports = DESCRIPTORS && fails(function () {
4687
4202
 
4688
4203
  /***/ }),
4689
4204
 
4690
- /***/ "ccf6":
4691
- /***/ (function(module, exports) {
4692
-
4693
- module.exports = "<!DOCTYPE html>\r\n<article class=\"v-api-combine-wrapper\">\r\n <i-split v-model=\"split\" min=\"200px\" max=\"1100px\">\r\n <!-- 左侧内容 -->\r\n <section slot=\"left\" class=\"left-split-pane\">\r\n <u-type-tree :taskCategoryID=\"taskCategoryID\" :initSelectItem=\"initNode\" @on-import-success=\"onQuery\" @on-select=\"onNodeSelect\" @on-tree-data=\"onTreeData\">\r\n </u-type-tree>\r\n </section>\r\n <!-- 分割线 -->\r\n <section class=\"trigger\" slot=\"trigger\"></section>\r\n <!-- 右侧内容 -->\r\n <section slot=\"right\" class=\"right-split-pane\">\r\n <section class=\"search-wrapper\">\r\n <i-form class=\"diy-search-form\" ref=\"searchForm\" :model=\"formData\" label-position=\"left\" label-colon>\r\n <i-form-item label=\"名称\" prop=\"name\">\r\n <i-input class=\"diy-input\" v-model=\"formData.name\"></i-input>\r\n </i-form-item>\r\n <i-form-item label=\"编码\" prop=\"code\">\r\n <i-input class=\"diy-input\" v-model=\"formData.code\"></i-input>\r\n </i-form-item>\r\n </i-form>\r\n <div class=\"btns\">\r\n <i-button class=\"diy-btn-primary\" type=\"primary\" @click=\"onQuery\">查询</i-button>\r\n <i-button class=\"diy-btn-default\" @click=\"onReset\">重置</i-button>\r\n </div>\r\n </section>\r\n <section class=\"actions-wrapper\">\r\n <div class=\"action-item action-text\" @click=\"onAdd()\" :class=\"currentNode.id === 'virtual_root_directory' ? 'icon-button-disabled' : ''\">\r\n <i class=\"iconfont icon-add\"></i>\r\n <div>新增</div>\r\n </div>\r\n <div class=\"action-item action-text\" :class=\"(selection.length && !isContainsPublished) ? '' : 'icon-button-disabled'\" @click=\"onBatchDelete\">\r\n <i class=\"iconfont icon-delete\"></i>\r\n <span>批量删除</span>\r\n </div>\r\n </section>\r\n <section class=\"main-wrapper\">\r\n <template v-if=\"list&&list.length\">\r\n <i-table class=\"diy-table diy-table-scorll\" :columns=\"columns\" :data=\"list\" @on-selection-change=\"onSelectChange\" @on-row-click=\"onRowClick\">\r\n <template slot=\"status\" slot-scope=\"{row,index}\">\r\n <i-switch class=\"diy-switch\" :value=\"row.status==='PUBLISHED'\" @on-change=\"onStatusChange($event, row, index)\"></i-switch>\r\n <span>{{row.status===\"PUBLISHED\" ? \"已发布\" : \"未发布\"}}</span>\r\n </template>\r\n <template slot=\"authFlag\" slot-scope=\"{row,index}\">\r\n <i-switch class=\"diy-switch\" :value=\"row.authFlag\" :true-value=\"1\" :false-value=\"0\" @on-change=\"onAuthFlagChange($event, row, index)\">\r\n <span slot=\"open\">是</span>\r\n <span slot=\"close\">否</span>\r\n </i-switch>\r\n </template>\r\n <template slot=\"doc\" slot-scope=\"{row}\">\r\n <a @click=\"onOpenDoc(row)\">查看</a>\r\n </template>\r\n <template #operates=\"{row,index}\">\r\n <div class=\"row-actions\">\r\n <i @click=\"onDetail(row)\" title=\"查看\" class=\"iconfont icon-a-xinzengzhibiaobeifen9\"></i>\r\n <i @click=\"onCopy(row)\" title=\"复制\" class=\"iconfont icon-fuzhi1\"> </i>\r\n <template v-if=\"row.status!=='PUBLISHED'\">\r\n <i @click=\"onEdit(row)\" title=\"编辑\" class=\"iconfont icon-Edit\"></i>\r\n <i-poptip confirm transfer title=\"确认要删除这条数据吗?\" @on-ok=\"onDelete(row)\">\r\n <i title=\"删除\" class=\"iconfont icon-delete\"></i>\r\n </i-poptip>\r\n </template>\r\n </div>\r\n </template>\r\n </i-table>\r\n <i-page\r\n class=\"diy-page\"\r\n show-total\r\n show-sizer\r\n show-elevator\r\n :total=\"paging.totalCount\"\r\n :current=\"paging.pageIndex\"\r\n :page-size=\"paging.pageSize\"\r\n @on-change=\"onPageIndexChange\"\r\n @on-page-size-change=\"onPageSizeChange\"\r\n ></i-page>\r\n </template>\r\n <template v-else>\r\n <div class=\"table-no-data\">\r\n <div class=\"table-no-data-bg\"></div>\r\n <div class=\"table-no-data-text\">暂无数据</div>\r\n </div>\r\n </template>\r\n </section>\r\n </section>\r\n </i-split>\r\n <i-spin fix v-show=\"loading\">\r\n <i class=\"spin-icon-load ivu-icon\"></i>\r\n </i-spin>\r\n <u-data-model-doc v-model=\"docShow\" :doc=\"doc\"></u-data-model-doc>\r\n <i-modal draggable sticky reset-drag-position v-model=\"showCopyModal\" class=\"diy-modal combine-copy-modal\" :mask-closable=\"false\" title=\"复制接口\">\r\n <i-form :label-width=\"100\" class=\"diy-form\" v-model=\"copyData\" label-colon>\r\n <i-form-item label=\"接口名称\" required>\r\n <i-input class=\"diy-input\" v-model=\"copyData.name\"></i-input>\r\n </i-form-item>\r\n <i-form-item label=\"接口编码\" required>\r\n <i-input class=\"diy-input\" v-model=\"copyData.code\"></i-input>\r\n </i-form-item>\r\n <i-form-item label=\"选择分组\" required>\r\n <u-tree-selector :treeData=\"treeData\" leaf-name=\"copy\" :canChooseFolder=\"true\" v-model=\"categoryData.id\" @on-select=\"selectCategory\"> </u-tree-selector>\r\n </i-form-item>\r\n </i-form>\r\n <footer slot=\"footer\">\r\n <i-button class=\"diy-btn-primary\" type=\"primary\" @click=\"onCopyConfirm\">确定</i-button>\r\n <i-button class=\"diy-btn-default\" @click=\"onCopyCancel\">取消</i-button>\r\n </footer>\r\n </i-modal>\r\n</article>\r\n"
4694
-
4695
- /***/ }),
4696
-
4697
- /***/ "cd69":
4698
- /***/ (function(module, exports, __webpack_require__) {
4699
-
4700
- "use strict";
4701
-
4702
- var ceil = Math.ceil;
4703
- var floor = Math.floor;
4704
-
4705
- // `Math.trunc` method
4706
- // https://tc39.es/ecma262/#sec-math.trunc
4707
- // eslint-disable-next-line es/no-math-trunc -- safe
4708
- module.exports = Math.trunc || function trunc(x) {
4709
- var n = +x;
4710
- return (n > 0 ? floor : ceil)(n);
4711
- };
4712
-
4713
-
4714
- /***/ }),
4715
-
4716
- /***/ "ce8f":
4717
- /***/ (function(module, exports) {
4718
-
4719
- module.exports = __WEBPACK_EXTERNAL_MODULE_ce8f__;
4720
-
4721
- /***/ }),
4722
-
4723
- /***/ "ce97":
4724
- /***/ (function(module, exports, __webpack_require__) {
4725
-
4726
- "use strict";
4727
-
4728
- var classof = __webpack_require__("aaa6");
4729
-
4730
- var $String = String;
4731
-
4732
- module.exports = function (argument) {
4733
- if (classof(argument) === 'Symbol') throw new TypeError('Cannot convert a Symbol value to a string');
4734
- return $String(argument);
4735
- };
4736
-
4737
-
4738
- /***/ }),
4739
-
4740
- /***/ "cebe":
4741
- /***/ (function(module, exports) {
4742
-
4743
- module.exports = __WEBPACK_EXTERNAL_MODULE_cebe__;
4744
-
4745
- /***/ }),
4746
-
4747
- /***/ "cf8c":
4748
- /***/ (function(module, exports, __webpack_require__) {
4749
-
4750
- "use strict";
4751
-
4752
- var toIndexedObject = __webpack_require__("485f");
4753
- var toAbsoluteIndex = __webpack_require__("575c");
4754
- var lengthOfArrayLike = __webpack_require__("d631");
4755
-
4756
- // `Array.prototype.{ indexOf, includes }` methods implementation
4757
- var createMethod = function (IS_INCLUDES) {
4758
- return function ($this, el, fromIndex) {
4759
- var O = toIndexedObject($this);
4760
- var length = lengthOfArrayLike(O);
4761
- var index = toAbsoluteIndex(fromIndex, length);
4762
- var value;
4763
- // Array#includes uses SameValueZero equality algorithm
4764
- // eslint-disable-next-line no-self-compare -- NaN check
4765
- if (IS_INCLUDES && el !== el) while (length > index) {
4766
- value = O[index++];
4767
- // eslint-disable-next-line no-self-compare -- NaN check
4768
- if (value !== value) return true;
4769
- // Array#indexOf ignores holes, Array#includes - not
4770
- } else for (;length > index; index++) {
4771
- if ((IS_INCLUDES || index in O) && O[index] === el) return IS_INCLUDES || index || 0;
4772
- } return !IS_INCLUDES && -1;
4773
- };
4774
- };
4775
-
4776
- module.exports = {
4777
- // `Array.prototype.includes` method
4778
- // https://tc39.es/ecma262/#sec-array.prototype.includes
4779
- includes: createMethod(true),
4780
- // `Array.prototype.indexOf` method
4781
- // https://tc39.es/ecma262/#sec-array.prototype.indexof
4782
- indexOf: createMethod(false)
4783
- };
4784
-
4785
-
4786
- /***/ }),
4787
-
4788
- /***/ "cfb3":
4789
- /***/ (function(module, exports) {
4790
-
4791
- module.exports = "<article class=\"project-list\">\r\n <header>\r\n <i-input\r\n class=\"diy-input\"\r\n v-model=\"condition.name\"\r\n search\r\n @on-search=\"onQuery\"\r\n placeholder=\"输入关键字检索\"\r\n ></i-input>\r\n </header>\r\n <main>\r\n <header class=\"tool-bar\">\r\n <span>项目列表</span>\r\n <div class=\"right-tool\">\r\n <div class=\"action-btn\">\r\n <i-upload\r\n class=\"action-item\"\r\n :action=\"uploadAction\"\r\n accept=\".json\"\r\n :headers=\"headers\"\r\n :show-upload-list=\"false\"\r\n :format=\"['json']\"\r\n :on-success=\"onSuccess\"\r\n :before-upload=\"onBeforeUpload\"\r\n :on-format-error=\"onFormatError\"\r\n >\r\n <i class=\"api-icon icon-import\"></i>\r\n <div>导入项目</div>\r\n </i-upload>\r\n </div>\r\n <div class=\"action-btn\" @click=\"onComment\">\r\n <i\r\n class=\"api-icon icon-star\"\r\n @click=\"onCheckType('list')\"\r\n ></i>\r\n <div>查看项目动态</div>\r\n </div>\r\n <i\r\n class=\"api-icon icon-list\"\r\n :class=\"{'active': type === 'list'}\"\r\n title=\"列表展示\"\r\n @click=\"onCheckType('list')\"\r\n ></i>\r\n <i\r\n class=\"api-icon icon-card\"\r\n :class=\"{'active': type === 'card'}\"\r\n title=\"卡片展示\"\r\n @click=\"onCheckType('card')\"\r\n ></i>\r\n </div>\r\n </header>\r\n <main>\r\n <section class=\"projects\" v-if=\"type==='card'\">\r\n <div class=\"project-card\" @click=\"onAdd\">\r\n <div class=\"add-card\">\r\n <i-icon type=\"md-add\" />\r\n <p>新建项目</p>\r\n </div>\r\n </div>\r\n <u-card\r\n v-for=\"item in dataList\"\r\n :data=\"item\"\r\n :key=\"item.id\"\r\n @on-delete=\"onDelete\"\r\n @on-detail=\"onDetail\"\r\n @on-edit=\"onEdit\"\r\n @on-export=\"onExport\"\r\n ></u-card>\r\n </section>\r\n <section class=\"projects\" v-else>\r\n <i-table class=\"diy-table\" :columns=\"columns\" :data=\"dataList\">\r\n <template slot-scope=\"{ row,index }\" slot=\"action\">\r\n <span @click=\"onExport(row)\" class=\"action-btn export\"\r\n ><i class=\"api-icon icon-export projects-icon-export\" title=\"导出此项目\"></i\r\n ></span>\r\n <span @click=\"onDetail(row)\" class=\"action-btn detail\"\r\n ><i class=\"api-icon icon-detail\" title=\"详情\"></i\r\n ></span>\r\n <span @click=\"onEdit(row)\" class=\"action-btn detail\"\r\n ><i class=\"api-icon icon-edit\" title=\"修改\"></i\r\n ></span>\r\n <u-confirm\r\n title=\"删除项目\"\r\n @on-ok=\"onDelete(row)\"\r\n message=\"项目内所有接口将被一并删除, 是否确认执行?\"\r\n >\r\n <span class=\"action-btn delete\"\r\n ><i\r\n class=\"api-icon icon-delete\"\r\n title=\"删除\"\r\n ></i\r\n ></span>\r\n </u-confirm>\r\n </template>\r\n </i-table>\r\n </section>\r\n </main>\r\n </main>\r\n <u-add-modal :visiable.sync=\"showAddModal\" :data=\"current\">\r\n <footer slot=\"footer\">\r\n <i-button @click=\"showAddModal = false\">取消</i-button>\r\n <i-button type=\"primary\" class=\"diy-btn-primary \" @click=\"onSave\"\r\n >确定</i-button\r\n >\r\n </footer>\r\n </u-add-modal>\r\n <i-spin fix v-show=\"loading\">\r\n <i class=\"spin-icon-load ivu-icon\"></i>\r\n </i-spin>\r\n</article>\r\n"
4792
-
4793
- /***/ }),
4794
-
4795
- /***/ "cfde":
4796
- /***/ (function(module, exports, __webpack_require__) {
4797
-
4798
- // extracted by mini-css-extract-plugin
4799
-
4800
- /***/ }),
4801
-
4802
- /***/ "d30a":
4803
- /***/ (function(module, exports) {
4804
-
4805
- module.exports = "<div class=\"u-selector-tree-node\" @click=\"onClickNode\">\r\n <i-icon v-if=\"!data.children\" type=\"ios-bookmark-outline\" />\r\n <template v-else>\r\n<!-- <i-->\r\n<!-- class=\"iconfont\"-->\r\n<!-- :class=\"data.expand? 'icon-expand': 'icon-unexpand'\"-->\r\n<!-- ></i>-->\r\n <i class=\"iconfont icon-bumenkaohe\"></i>\r\n </template>\r\n <span>{{data.title}}</span>\r\n</div>\r\n"
4806
-
4807
- /***/ }),
4808
-
4809
- /***/ "d345":
4205
+ /***/ "cb40":
4810
4206
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
4811
4207
 
4812
4208
  "use strict";
@@ -4821,7 +4217,7 @@ __webpack_require__.d(__webpack_exports__, "ProjectDetail", function() { return
4821
4217
  __webpack_require__.d(__webpack_exports__, "ProjectList", function() { return /* reexport */ views_project_list; });
4822
4218
  __webpack_require__.d(__webpack_exports__, "injectEnableUserCenterCookie", function() { return /* reexport */ injectEnableUserCenterCookie; });
4823
4219
 
4824
- // CONCATENATED MODULE: ./node_modules/.pnpm/@vue+cli-service@4.5.19_4j72uuzxhpprprr3owyhj65lvq/node_modules/@vue/cli-service/lib/commands/build/setPublicPath.js
4220
+ // CONCATENATED MODULE: ./node_modules/.pnpm/@vue+cli-service@4.5.19_raw-loader@1.0.0_sass-load_6c5aczzntsl4dewyqjyegjkf6q/node_modules/@vue/cli-service/lib/commands/build/setPublicPath.js
4825
4221
  // This file is imported into lib/wc client bundles.
4826
4222
 
4827
4223
  if (typeof window !== 'undefined') {
@@ -9318,14 +8714,7 @@ var combine_model_ProjectCombineModel = /** @class */function (_super) {
9318
8714
  __extends(ProjectCombineModel, _super);
9319
8715
  function ProjectCombineModel() {
9320
8716
  var _this = _super !== null && _super.apply(this, arguments) || this;
9321
- _this.model = {
9322
- authFlag: 1,
9323
- type: "SCRIPT",
9324
- status: "NOT_PUBLISHED",
9325
- relations: [],
9326
- reqParams: [],
9327
- respParams: []
9328
- };
8717
+ _this.model = _this.createDefaultModel();
9329
8718
  _this.title = "合并模型";
9330
8719
  _this.id = "";
9331
8720
  _this.categoryId = "";
@@ -9384,6 +8773,16 @@ var combine_model_ProjectCombineModel = /** @class */function (_super) {
9384
8773
  _this.docShow = false;
9385
8774
  return _this;
9386
8775
  }
8776
+ ProjectCombineModel.prototype.createDefaultModel = function () {
8777
+ return {
8778
+ authFlag: 1,
8779
+ type: "SCRIPT",
8780
+ status: "NOT_PUBLISHED",
8781
+ relations: [],
8782
+ reqParams: [],
8783
+ respParams: []
8784
+ };
8785
+ };
9387
8786
  Object.defineProperty(ProjectCombineModel.prototype, "dataModelRelations", {
9388
8787
  get: function () {
9389
8788
  var _a, _b;
@@ -9427,6 +8826,11 @@ var combine_model_ProjectCombineModel = /** @class */function (_super) {
9427
8826
  this.isAdd = this.isEdit && !id;
9428
8827
  this.categoryId = categoryId;
9429
8828
  this.title = !this.isEdit ? "合并模型详情" : this.isAdd ? "新增合并模型" : "编辑合并模型";
8829
+ if (!id) {
8830
+ this.id = "";
8831
+ this.model = this.createDefaultModel();
8832
+ return;
8833
+ }
9430
8834
  if (id !== this.id) {
9431
8835
  this.id = id;
9432
8836
  this.getById();
@@ -15054,9 +14458,16 @@ var tree_ProjectTree = /** @class */function (_super) {
15054
14458
  var _this = this;
15055
14459
  this.loadProjectList();
15056
14460
  this.$subscribe("api://project-detail-save", function () {
14461
+ if (!_this.isCurrentProjectRoute()) {
14462
+ return;
14463
+ }
15057
14464
  _this.init();
15058
14465
  });
15059
14466
  };
14467
+ ProjectTree.prototype.isCurrentProjectRoute = function () {
14468
+ var _a;
14469
+ return ((_a = this.$route.params) === null || _a === void 0 ? void 0 : _a.id) === this.projectId;
14470
+ };
15060
14471
  ProjectTree.prototype.renderContent = function (h, _a) {
15061
14472
  var root = _a.root,
15062
14473
  node = _a.node,
@@ -15597,8 +15008,8 @@ var tree_ProjectTree = /** @class */function (_super) {
15597
15008
  return ProjectTree;
15598
15009
  }(flagwind_web_["Component"]);
15599
15010
  /* harmony default export */ var views_project_detail_tree = (tree_ProjectTree);
15600
- // 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
15601
- var vue_awesome_swiper = __webpack_require__("b042");
15011
+ // 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
15012
+ var vue_awesome_swiper = __webpack_require__("ed38");
15602
15013
 
15603
15014
  // CONCATENATED MODULE: ./src/views/project-detail/index.ts
15604
15015
 
@@ -15644,26 +15055,54 @@ var project_detail_ProjectDetail = /** @class */function (_super) {
15644
15055
  ProjectDetail.prototype.onSwiperReadied = function (swiper) {
15645
15056
  this.swiper = swiper;
15646
15057
  };
15647
- ProjectDetail.prototype.getProjectInfo = function () {
15058
+ ProjectDetail.prototype.getProjectInfo = function (projectId) {
15648
15059
  var _a, _b;
15060
+ if (projectId === void 0) {
15061
+ projectId = ((_a = this.$route.params) === null || _a === void 0 ? void 0 : _a.id) || "";
15062
+ }
15649
15063
  return __awaiter(this, void 0, void 0, function () {
15650
15064
  var res;
15651
15065
  return __generator(this, function (_c) {
15652
15066
  switch (_c.label) {
15653
15067
  case 0:
15654
- this.projectId = (_a = this.$route.params) === null || _a === void 0 ? void 0 : _a.id;
15655
- if (!this.projectId) return [3 /*break*/, 2];
15656
- return [4 /*yield*/, this.service.projectInfo(this.projectId)];
15068
+ this.projectId = projectId;
15069
+ if (!projectId) {
15070
+ this.projectName = "";
15071
+ return [2 /*return*/];
15072
+ }
15073
+ return [4 /*yield*/, this.service.projectInfo(projectId)];
15657
15074
  case 1:
15658
15075
  res = _c.sent();
15076
+ if (this.projectId !== projectId) {
15077
+ return [2 /*return*/];
15078
+ }
15659
15079
  this.projectName = ((_b = res === null || res === void 0 ? void 0 : res.result) === null || _b === void 0 ? void 0 : _b.name) || "";
15660
- _c.label = 2;
15661
- case 2:
15662
15080
  return [2 /*return*/];
15663
15081
  }
15664
15082
  });
15665
15083
  });
15666
15084
  };
15085
+ ProjectDetail.prototype.resetProjectState = function () {
15086
+ this.openInterfaceList.splice(0);
15087
+ this.active = {};
15088
+ this.current = {};
15089
+ this.projectTree = [];
15090
+ this.loading = false;
15091
+ };
15092
+ ProjectDetail.prototype.syncProjectFromRoute = function (route) {
15093
+ var _a;
15094
+ if (route === void 0) {
15095
+ route = this.$route;
15096
+ }
15097
+ var projectId = ((_a = route.params) === null || _a === void 0 ? void 0 : _a.id) || "";
15098
+ var prevProjectId = this.projectId;
15099
+ this.projectId = projectId;
15100
+ if (prevProjectId !== projectId) {
15101
+ this.projectName = "";
15102
+ this.resetProjectState();
15103
+ }
15104
+ this.getProjectInfo(projectId);
15105
+ };
15667
15106
  ProjectDetail.prototype.onCheckInterface = function (data, isResume) {
15668
15107
  return __awaiter(this, void 0, void 0, function () {
15669
15108
  var resumeData, text, set, result, res, index;
@@ -15784,11 +15223,9 @@ var project_detail_ProjectDetail = /** @class */function (_super) {
15784
15223
  ProjectDetail.prototype.onOpenEnvModal = function () {
15785
15224
  this.showEnvironmentModal = true;
15786
15225
  };
15787
- // @watch("$route", { deep: true, immediate: true })
15788
- ProjectDetail.prototype.mounted = function () {
15789
- var _this = this;
15790
- this.getProjectInfo();
15791
- var _a = this.$route.query,
15226
+ ProjectDetail.prototype.onRouteChange = function (route) {
15227
+ this.syncProjectFromRoute(route);
15228
+ var _a = route.query,
15792
15229
  apiId = _a.apiId,
15793
15230
  apiName = _a.apiName,
15794
15231
  resume = _a.resume;
@@ -15798,6 +15235,12 @@ var project_detail_ProjectDetail = /** @class */function (_super) {
15798
15235
  name: apiName
15799
15236
  }, resume === "true");
15800
15237
  }
15238
+ };
15239
+ ProjectDetail.prototype.mounted = function () {
15240
+ var _this = this;
15241
+ if (!this.projectId) {
15242
+ this.syncProjectFromRoute();
15243
+ }
15801
15244
  this.$subscribe("api://project-detail-save-import", function () {
15802
15245
  return __awaiter(_this, void 0, void 0, function () {
15803
15246
  var res, result;
@@ -15909,7 +15352,7 @@ var project_detail_ProjectDetail = /** @class */function (_super) {
15909
15352
  };
15910
15353
  ProjectDetail.prototype.onBatchSuccess = function (data) {
15911
15354
  if (data) {
15912
- this.getProjectInfo();
15355
+ this.getProjectInfo(this.projectId);
15913
15356
  }
15914
15357
  };
15915
15358
  ProjectDetail.prototype.onEnvironmentRefresh = function () {
@@ -15919,6 +15362,9 @@ var project_detail_ProjectDetail = /** @class */function (_super) {
15919
15362
  this.projectTree = data;
15920
15363
  };
15921
15364
  __decorate([autowired(project_detail_service)], ProjectDetail.prototype, "service", void 0);
15365
+ __decorate([Object(flagwind_web_["watch"])("$route", {
15366
+ immediate: true
15367
+ })], ProjectDetail.prototype, "onRouteChange", null);
15922
15368
  ProjectDetail = __decorate([Object(flagwind_web_["component"])({
15923
15369
  name: "ApiProjectDetail",
15924
15370
  template: __webpack_require__("d63e"),
@@ -15951,52 +15397,171 @@ var project_detail_ProjectDetail = /** @class */function (_super) {
15951
15397
 
15952
15398
  external_vue_default.a.use(external_halo_math_default.a);
15953
15399
 
15954
- // 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
15400
+ // 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
15955
15401
 
15956
15402
 
15957
15403
 
15958
15404
 
15959
15405
  /***/ }),
15960
15406
 
15961
- /***/ "d371":
15407
+ /***/ "ccf6":
15408
+ /***/ (function(module, exports) {
15409
+
15410
+ 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"
15411
+
15412
+ /***/ }),
15413
+
15414
+ /***/ "cd69":
15962
15415
  /***/ (function(module, exports, __webpack_require__) {
15963
15416
 
15964
15417
  "use strict";
15965
15418
 
15966
- var DESCRIPTORS = __webpack_require__("e900");
15967
- var uncurryThis = __webpack_require__("720f");
15968
- var defineBuiltInAccessor = __webpack_require__("889b");
15419
+ var ceil = Math.ceil;
15420
+ var floor = Math.floor;
15969
15421
 
15970
- var URLSearchParamsPrototype = URLSearchParams.prototype;
15971
- var forEach = uncurryThis(URLSearchParamsPrototype.forEach);
15422
+ // `Math.trunc` method
15423
+ // https://tc39.es/ecma262/#sec-math.trunc
15424
+ // eslint-disable-next-line es/no-math-trunc -- safe
15425
+ module.exports = Math.trunc || function trunc(x) {
15426
+ var n = +x;
15427
+ return (n > 0 ? floor : ceil)(n);
15428
+ };
15972
15429
 
15973
- // `URLSearchParams.prototype.size` getter
15974
- // https://github.com/whatwg/url/pull/734
15975
- if (DESCRIPTORS && !('size' in URLSearchParamsPrototype)) {
15976
- defineBuiltInAccessor(URLSearchParamsPrototype, 'size', {
15977
- get: function size() {
15978
- var count = 0;
15979
- forEach(this, function () { count++; });
15980
- return count;
15981
- },
15982
- configurable: true,
15983
- enumerable: true
15984
- });
15985
- }
15986
15430
 
15431
+ /***/ }),
15432
+
15433
+ /***/ "ce8f":
15434
+ /***/ (function(module, exports) {
15435
+
15436
+ module.exports = __WEBPACK_EXTERNAL_MODULE_ce8f__;
15987
15437
 
15988
15438
  /***/ }),
15989
15439
 
15990
- /***/ "d5e3":
15440
+ /***/ "ce97":
15991
15441
  /***/ (function(module, exports, __webpack_require__) {
15992
15442
 
15993
15443
  "use strict";
15994
15444
 
15995
- var fails = __webpack_require__("10a7");
15996
- var createPropertyDescriptor = __webpack_require__("f2e2");
15445
+ var classof = __webpack_require__("aaa6");
15997
15446
 
15998
- module.exports = !fails(function () {
15999
- var error = new Error('a');
15447
+ var $String = String;
15448
+
15449
+ module.exports = function (argument) {
15450
+ if (classof(argument) === 'Symbol') throw new TypeError('Cannot convert a Symbol value to a string');
15451
+ return $String(argument);
15452
+ };
15453
+
15454
+
15455
+ /***/ }),
15456
+
15457
+ /***/ "cebe":
15458
+ /***/ (function(module, exports) {
15459
+
15460
+ module.exports = __WEBPACK_EXTERNAL_MODULE_cebe__;
15461
+
15462
+ /***/ }),
15463
+
15464
+ /***/ "cf8c":
15465
+ /***/ (function(module, exports, __webpack_require__) {
15466
+
15467
+ "use strict";
15468
+
15469
+ var toIndexedObject = __webpack_require__("485f");
15470
+ var toAbsoluteIndex = __webpack_require__("575c");
15471
+ var lengthOfArrayLike = __webpack_require__("d631");
15472
+
15473
+ // `Array.prototype.{ indexOf, includes }` methods implementation
15474
+ var createMethod = function (IS_INCLUDES) {
15475
+ return function ($this, el, fromIndex) {
15476
+ var O = toIndexedObject($this);
15477
+ var length = lengthOfArrayLike(O);
15478
+ var index = toAbsoluteIndex(fromIndex, length);
15479
+ var value;
15480
+ // Array#includes uses SameValueZero equality algorithm
15481
+ // eslint-disable-next-line no-self-compare -- NaN check
15482
+ if (IS_INCLUDES && el !== el) while (length > index) {
15483
+ value = O[index++];
15484
+ // eslint-disable-next-line no-self-compare -- NaN check
15485
+ if (value !== value) return true;
15486
+ // Array#indexOf ignores holes, Array#includes - not
15487
+ } else for (;length > index; index++) {
15488
+ if ((IS_INCLUDES || index in O) && O[index] === el) return IS_INCLUDES || index || 0;
15489
+ } return !IS_INCLUDES && -1;
15490
+ };
15491
+ };
15492
+
15493
+ module.exports = {
15494
+ // `Array.prototype.includes` method
15495
+ // https://tc39.es/ecma262/#sec-array.prototype.includes
15496
+ includes: createMethod(true),
15497
+ // `Array.prototype.indexOf` method
15498
+ // https://tc39.es/ecma262/#sec-array.prototype.indexof
15499
+ indexOf: createMethod(false)
15500
+ };
15501
+
15502
+
15503
+ /***/ }),
15504
+
15505
+ /***/ "cfb3":
15506
+ /***/ (function(module, exports) {
15507
+
15508
+ 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"
15509
+
15510
+ /***/ }),
15511
+
15512
+ /***/ "cfde":
15513
+ /***/ (function(module, exports, __webpack_require__) {
15514
+
15515
+ // extracted by mini-css-extract-plugin
15516
+
15517
+ /***/ }),
15518
+
15519
+ /***/ "d30a":
15520
+ /***/ (function(module, exports) {
15521
+
15522
+ 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"
15523
+
15524
+ /***/ }),
15525
+
15526
+ /***/ "d371":
15527
+ /***/ (function(module, exports, __webpack_require__) {
15528
+
15529
+ "use strict";
15530
+
15531
+ var DESCRIPTORS = __webpack_require__("e900");
15532
+ var uncurryThis = __webpack_require__("720f");
15533
+ var defineBuiltInAccessor = __webpack_require__("889b");
15534
+
15535
+ var URLSearchParamsPrototype = URLSearchParams.prototype;
15536
+ var forEach = uncurryThis(URLSearchParamsPrototype.forEach);
15537
+
15538
+ // `URLSearchParams.prototype.size` getter
15539
+ // https://github.com/whatwg/url/pull/734
15540
+ if (DESCRIPTORS && !('size' in URLSearchParamsPrototype)) {
15541
+ defineBuiltInAccessor(URLSearchParamsPrototype, 'size', {
15542
+ get: function size() {
15543
+ var count = 0;
15544
+ forEach(this, function () { count++; });
15545
+ return count;
15546
+ },
15547
+ configurable: true,
15548
+ enumerable: true
15549
+ });
15550
+ }
15551
+
15552
+
15553
+ /***/ }),
15554
+
15555
+ /***/ "d5e3":
15556
+ /***/ (function(module, exports, __webpack_require__) {
15557
+
15558
+ "use strict";
15559
+
15560
+ var fails = __webpack_require__("10a7");
15561
+ var createPropertyDescriptor = __webpack_require__("f2e2");
15562
+
15563
+ module.exports = !fails(function () {
15564
+ var error = new Error('a');
16000
15565
  if (!('stack' in error)) return true;
16001
15566
  // eslint-disable-next-line es/no-object-defineproperty -- safe
16002
15567
  Object.defineProperty(error, 'stack', createPropertyDescriptor(1, 7));
@@ -16043,7 +15608,7 @@ module.exports = function (METHOD_NAME, argument) {
16043
15608
  /***/ "d63e":
16044
15609
  /***/ (function(module, exports) {
16045
15610
 
16046
- module.exports = "<article class=\"project-detail\">\r\n <header>\r\n <div class=\"environment\">\r\n <i class=\"iconfont icon-zhankai\" @click=\"onBack\"></i>\r\n <p>{{projectName}}</p>\r\n <!-- <span>环境变量:</span> -->\r\n <!-- <i-select class=\"diy-select\"></i-select> -->\r\n </div>\r\n <div class=\"btns\">\r\n <!-- <i-button type=\"primary\" ghost class=\"diy-btn-primary\" @click=\"onOpenGlobalModal\"> <i class=\"api-icon icon-setting\"></i>全局参数设置</i-button> -->\r\n <!-- <i-button type=\"success\" ghost class=\"diy-btn-success\" @click=\"onOpenCurrentModal\"><i class=\"api-icon icon-view\"></i>查看当前变量</i-button> -->\r\n <i-button v-if=\"projectId && projectName\" type=\"primary\" class=\"diy-btn-primary security-btn\" ghost @click=\"onSecurity\"><i class=\"iconfont icon-xinzengzhibiao\"></i>授权认证</i-button>\r\n <i-button v-if=\"projectId && projectName\" type=\"primary\" class=\"diy-btn-primary\" ghost @click=\"onOpenEnvModal\"><i class=\"iconfont icon-bianliang\"></i>环境变量</i-button>\r\n <i-button v-show=\"active.id\" type=\"primary\" class=\"diy-btn-primary\" ghost @click=\"onToggleLayout\"><i class=\"api-icon icon-switch\"></i>切换布局</i-button>\r\n </div>\r\n </header>\r\n <!-- <main> -->\r\n <i-split v-model=\"split\" min=\"200px\" max=\"900px\">\r\n <u-tree slot=\"left\" @on-check-interface=\"onCheckInterface\" @on-edit-interface-success=\"onEditInterfaceSuccess\" :project-id=\"projectId\" @on-success=\"onBatchSuccess\" @on-delete-interface=\"onDeleteInterface\" @on-reset=\"onReset\" @tree-data=\"getTreeData\"></u-tree>\r\n <section slot=\"right\" class=\"interface-box\">\r\n <header class=\"interface-bar\">\r\n <swiper class=\"swiper\" :options=\"swiperOption\" @click-slide=\"onClickSlide\" @ready=\"onSwiperReadied\">\r\n <swiper-slide class=\"tag\" @click=\"onClickTag(item)\" :class=\"{'active': item.id === active.id}\" v-for=\"(item,index) in openInterfaceList\" :key=\"item.id\"\r\n ><span>{{item.name}}</span> <i-icon type=\"md-close\" @click.stop=\"onClose(index)\"></i-icon\r\n ></swiper-slide>\r\n </swiper>\r\n <!-- <div class=\"tag\" @click=\"onClickTag(item)\" :class=\"{'active': item.id === active.id}\" v-for=\"(item,index) in openInterfaceList\" :key=\"item.id\">\r\n <span>{{item.name}}</span>\r\n <i-icon type=\"md-close\" @click.stop=\"onClose(index)\"></i-icon>\r\n </div> -->\r\n </header>\r\n <u-settings ref=\"interface-settings\" :interface-model.sync=\"active\" :project-id=\"projectId\" v-if=\"active.id\" :lengthwise=\"lengthwise\" :projectTree=\"projectTree\"></u-settings>\r\n </section>\r\n </i-split>\r\n <i-spin fix v-show=\"loading\">\r\n <i class=\"spin-icon-load ivu-icon\"></i>\r\n </i-spin>\r\n <!-- </main> -->\r\n <u-global-modal :visiable.sync=\"showGlobalModal\">\r\n <footer slot=\"footer\">\r\n <i-button @click=\"showGlobalModal = false\">取消</i-button>\r\n <i-button type=\"primary\" class=\"diy-btn-primary\">确定</i-button>\r\n </footer>\r\n </u-global-modal>\r\n <u-current-modal :visiable.sync=\"showCurrentModal\"> </u-current-modal>\r\n <u-security-modal v-model=\"showSecurity\" :projectID=\"projectId\"></u-security-modal>\r\n <u-environment-modal :visiable.sync=\"showEnvironmentModal\" :projectId=\"projectId\" @on-refresh=\"onEnvironmentRefresh\"></u-environment-modal>\r\n</article>\r\n"
15611
+ module.exports = "<article class=\"project-detail\">\n <header>\n <div class=\"environment\">\n <i class=\"iconfont icon-zhankai\" @click=\"onBack\"></i>\n <p>{{projectName}}</p>\n <!-- <span>环境变量:</span> -->\n <!-- <i-select class=\"diy-select\"></i-select> -->\n </div>\n <div class=\"btns\">\n <!-- <i-button type=\"primary\" ghost class=\"diy-btn-primary\" @click=\"onOpenGlobalModal\"> <i class=\"api-icon icon-setting\"></i>全局参数设置</i-button> -->\n <!-- <i-button type=\"success\" ghost class=\"diy-btn-success\" @click=\"onOpenCurrentModal\"><i class=\"api-icon icon-view\"></i>查看当前变量</i-button> -->\n <i-button v-if=\"projectId && projectName\" type=\"primary\" class=\"diy-btn-primary security-btn\" ghost @click=\"onSecurity\"><i class=\"iconfont icon-xinzengzhibiao\"></i>授权认证</i-button>\n <i-button v-if=\"projectId && projectName\" type=\"primary\" class=\"diy-btn-primary\" ghost @click=\"onOpenEnvModal\"><i class=\"iconfont icon-bianliang\"></i>环境变量</i-button>\n <i-button v-show=\"active.id\" type=\"primary\" class=\"diy-btn-primary\" ghost @click=\"onToggleLayout\"><i class=\"api-icon icon-switch\"></i>切换布局</i-button>\n </div>\n </header>\n <!-- <main> -->\n <i-split v-model=\"split\" min=\"200px\" max=\"900px\">\n <u-tree slot=\"left\" @on-check-interface=\"onCheckInterface\" @on-edit-interface-success=\"onEditInterfaceSuccess\" :project-id=\"projectId\" @on-success=\"onBatchSuccess\" @on-delete-interface=\"onDeleteInterface\" @on-reset=\"onReset\" @tree-data=\"getTreeData\"></u-tree>\n <section slot=\"right\" class=\"interface-box\">\n <header class=\"interface-bar\">\n <swiper class=\"swiper\" :options=\"swiperOption\" @click-slide=\"onClickSlide\" @ready=\"onSwiperReadied\">\n <swiper-slide class=\"tag\" @click=\"onClickTag(item)\" :class=\"{'active': item.id === active.id}\" v-for=\"(item,index) in openInterfaceList\" :key=\"item.id\"\n ><span>{{item.name}}</span> <i-icon type=\"md-close\" @click.stop=\"onClose(index)\"></i-icon\n ></swiper-slide>\n </swiper>\n <!-- <div class=\"tag\" @click=\"onClickTag(item)\" :class=\"{'active': item.id === active.id}\" v-for=\"(item,index) in openInterfaceList\" :key=\"item.id\">\n <span>{{item.name}}</span>\n <i-icon type=\"md-close\" @click.stop=\"onClose(index)\"></i-icon>\n </div> -->\n </header>\n <u-settings ref=\"interface-settings\" :interface-model.sync=\"active\" :project-id=\"projectId\" v-if=\"active.id\" :lengthwise=\"lengthwise\" :projectTree=\"projectTree\"></u-settings>\n </section>\n </i-split>\n <i-spin fix v-show=\"loading\">\n <i class=\"spin-icon-load ivu-icon\"></i>\n </i-spin>\n <!-- </main> -->\n <u-global-modal :visiable.sync=\"showGlobalModal\">\n <footer slot=\"footer\">\n <i-button @click=\"showGlobalModal = false\">取消</i-button>\n <i-button type=\"primary\" class=\"diy-btn-primary\">确定</i-button>\n </footer>\n </u-global-modal>\n <u-current-modal :visiable.sync=\"showCurrentModal\"> </u-current-modal>\n <u-security-modal v-model=\"showSecurity\" :projectID=\"projectId\"></u-security-modal>\n <u-environment-modal :visiable.sync=\"showEnvironmentModal\" :projectId=\"projectId\" @on-refresh=\"onEnvironmentRefresh\"></u-environment-modal>\n</article>\n"
16047
15612
 
16048
15613
  /***/ }),
16049
15614
 
@@ -16455,12 +16020,497 @@ module.exports = NATIVE_SYMBOL
16455
16020
  && typeof Symbol.iterator == 'symbol';
16456
16021
 
16457
16022
 
16023
+ /***/ }),
16024
+
16025
+ /***/ "ed38":
16026
+ /***/ (function(module, exports, __webpack_require__) {
16027
+
16028
+
16029
+ /*!
16030
+ * vue-awesome-swiper v4.1.1
16031
+ * Copyright (c) Surmon. All rights reserved.
16032
+ * Released under the MIT License.
16033
+ * Surmon <https://github.com/surmon-china>
16034
+ */
16035
+
16036
+ (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;/**
16037
+ * @file vue-awesome-swiper
16038
+ * @module constants
16039
+ * @author Surmon <https://github.com/surmon-china>
16040
+ */
16041
+ var CoreNames;
16042
+ (function (CoreNames) {
16043
+ CoreNames["SwiperComponent"] = "Swiper";
16044
+ CoreNames["SwiperSlideComponent"] = "SwiperSlide";
16045
+ CoreNames["SwiperDirective"] = "swiper";
16046
+ CoreNames["SwiperInstance"] = "$swiper";
16047
+ })(CoreNames || (CoreNames = {}));
16048
+ var DEFAULT_CLASSES = Object.freeze({
16049
+ containerClass: 'swiper-container',
16050
+ wrapperClass: 'swiper-wrapper',
16051
+ slideClass: 'swiper-slide'
16052
+ });
16053
+ var ComponentEvents;
16054
+ (function (ComponentEvents) {
16055
+ ComponentEvents["Ready"] = "ready";
16056
+ ComponentEvents["ClickSlide"] = "clickSlide";
16057
+ })(ComponentEvents || (ComponentEvents = {}));
16058
+ var ComponentPropNames;
16059
+ (function (ComponentPropNames) {
16060
+ ComponentPropNames["AutoUpdate"] = "autoUpdate";
16061
+ ComponentPropNames["AutoDestroy"] = "autoDestroy";
16062
+ ComponentPropNames["DeleteInstanceOnDestroy"] = "deleteInstanceOnDestroy";
16063
+ ComponentPropNames["CleanupStylesOnDestroy"] = "cleanupStylesOnDestroy";
16064
+ })(ComponentPropNames || (ComponentPropNames = {}));
16065
+ // https://swiperjs.com/api/#events
16066
+ var SWIPER_EVENTS = [
16067
+ 'init',
16068
+ 'beforeDestroy',
16069
+ 'slideChange',
16070
+ 'slideChangeTransitionStart',
16071
+ 'slideChangeTransitionEnd',
16072
+ 'slideNextTransitionStart',
16073
+ 'slideNextTransitionEnd',
16074
+ 'slidePrevTransitionStart',
16075
+ 'slidePrevTransitionEnd',
16076
+ 'transitionStart',
16077
+ 'transitionEnd',
16078
+ 'touchStart',
16079
+ 'touchMove',
16080
+ 'touchMoveOpposite',
16081
+ 'sliderMove',
16082
+ 'touchEnd',
16083
+ 'click',
16084
+ 'tap',
16085
+ 'doubleTap',
16086
+ 'imagesReady',
16087
+ 'progress',
16088
+ 'reachBeginning',
16089
+ 'reachEnd',
16090
+ 'fromEdge',
16091
+ 'setTranslate',
16092
+ 'setTransition',
16093
+ 'resize',
16094
+ 'observerUpdate',
16095
+ 'beforeLoopFix',
16096
+ 'loopFix'
16097
+ ];/*! *****************************************************************************
16098
+ Copyright (c) Microsoft Corporation. All rights reserved.
16099
+ Licensed under the Apache License, Version 2.0 (the "License"); you may not use
16100
+ this file except in compliance with the License. You may obtain a copy of the
16101
+ License at http://www.apache.org/licenses/LICENSE-2.0
16102
+
16103
+ THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16104
+ KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
16105
+ WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
16106
+ MERCHANTABLITY OR NON-INFRINGEMENT.
16107
+
16108
+ See the Apache Version 2.0 License for specific language governing permissions
16109
+ and limitations under the License.
16110
+ ***************************************************************************** */
16111
+
16112
+ function __spreadArrays() {
16113
+ for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;
16114
+ for (var r = Array(s), k = 0, i = 0; i < il; i++)
16115
+ for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)
16116
+ r[k] = a[j];
16117
+ return r;
16118
+ }/**
16119
+ * @file vue-awesome-swiper
16120
+ * @module utils
16121
+ * @author Surmon <https://github.com/surmon-china>
16122
+ */
16123
+ var kebabcase = function (string) {
16124
+ return string
16125
+ .replace(/([a-z])([A-Z])/g, '$1-$2')
16126
+ .replace(/\s+/g, '-')
16127
+ .toLowerCase();
16128
+ };/**
16129
+ * @file vue-awesome-swiper
16130
+ * @module event
16131
+ * @author Surmon <https://github.com/surmon-china>
16132
+ */
16133
+ var handleClickSlideEvent = function (swiper, event, emit) {
16134
+ var _a, _b, _c;
16135
+ if (swiper && !(swiper.destroyed)) {
16136
+ var eventPath = ((_a = event.composedPath) === null || _a === void 0 ? void 0 : _a.call(event)) || event.path;
16137
+ if ((event === null || event === void 0 ? void 0 : event.target) && eventPath) {
16138
+ var slides_1 = Array.from(swiper.slides);
16139
+ var paths = Array.from(eventPath);
16140
+ // Click slide || slide[children]
16141
+ if (slides_1.includes(event.target) || paths.some(function (item) { return slides_1.includes(item); })) {
16142
+ var clickedIndex = swiper.clickedIndex;
16143
+ var reallyIndex = Number((_c = (_b = swiper.clickedSlide) === null || _b === void 0 ? void 0 : _b.dataset) === null || _c === void 0 ? void 0 : _c.swiperSlideIndex);
16144
+ var reallyIndexValue = Number.isInteger(reallyIndex) ? reallyIndex : null;
16145
+ emit(ComponentEvents.ClickSlide, clickedIndex, reallyIndexValue);
16146
+ emit(kebabcase(ComponentEvents.ClickSlide), clickedIndex, reallyIndexValue);
16147
+ }
16148
+ }
16149
+ }
16150
+ };
16151
+ var bindSwiperEvents = function (swiper, emit) {
16152
+ SWIPER_EVENTS.forEach(function (eventName) {
16153
+ swiper.on(eventName, function () {
16154
+ var arguments$1 = arguments;
16155
+
16156
+ var args = [];
16157
+ for (var _i = 0; _i < arguments.length; _i++) {
16158
+ args[_i] = arguments$1[_i];
16159
+ }
16160
+ emit.apply(void 0, __spreadArrays([eventName], args));
16161
+ var kebabcaseName = kebabcase(eventName);
16162
+ if (kebabcaseName !== eventName) {
16163
+ emit.apply(void 0, __spreadArrays([kebabcaseName], args));
16164
+ }
16165
+ });
16166
+ });
16167
+ };/**
16168
+ * @file vue-awesome-swiper
16169
+ * @module directive
16170
+ * @author Surmon <https://github.com/surmon-china>
16171
+ */
16172
+ var INSTANCE_NAME_KEY = 'instanceName';
16173
+ function getDirective(SwiperClass, globalOptions) {
16174
+ var getStandardisedOptionByAttrs = function (vnode, key) {
16175
+ var _a, _b, _c, _d;
16176
+ var value = (_b = (_a = vnode.data) === null || _a === void 0 ? void 0 : _a.attrs) === null || _b === void 0 ? void 0 : _b[key];
16177
+ return value !== undefined
16178
+ ? value
16179
+ : (_d = (_c = vnode.data) === null || _c === void 0 ? void 0 : _c.attrs) === null || _d === void 0 ? void 0 : _d[kebabcase(key)];
16180
+ };
16181
+ // Get swiper instace name in directive
16182
+ var getSwiperInstanceName = function (element, binding, vnode) {
16183
+ return (binding.arg ||
16184
+ getStandardisedOptionByAttrs(vnode, INSTANCE_NAME_KEY) ||
16185
+ element.id ||
16186
+ CoreNames.SwiperInstance);
16187
+ };
16188
+ var getSwiperInstance = function (element, binding, vnode) {
16189
+ var instanceName = getSwiperInstanceName(element, binding, vnode);
16190
+ return vnode.context[instanceName] || null;
16191
+ };
16192
+ var getSwipeOptions = function (binding) {
16193
+ return binding.value || globalOptions;
16194
+ };
16195
+ var getBooleanValueByInput = function (input) {
16196
+ return [true, undefined, null, ''].includes(input);
16197
+ };
16198
+ // Emit event in Vue directive
16199
+ var getEventEmiter = function (vnode) {
16200
+ var _a, _b;
16201
+ var handlers = ((_a = vnode.data) === null || _a === void 0 ? void 0 : _a.on) || ((_b = vnode.componentOptions) === null || _b === void 0 ? void 0 : _b.listeners);
16202
+ return function (name) {
16203
+ var arguments$1 = arguments;
16204
+
16205
+ var args = [];
16206
+ for (var _i = 1; _i < arguments.length; _i++) {
16207
+ args[_i - 1] = arguments$1[_i];
16208
+ }
16209
+ var _a;
16210
+ var handle = (_a = handlers) === null || _a === void 0 ? void 0 : _a[name];
16211
+ if (handle) {
16212
+ handle.fns.apply(handle, args);
16213
+ }
16214
+ };
16215
+ };
16216
+ return {
16217
+ // Init
16218
+ bind: function (element, binding, vnode) {
16219
+ // auto class name
16220
+ if (element.className.indexOf(DEFAULT_CLASSES.containerClass) === -1) {
16221
+ element.className += ((element.className ? ' ' : '') + DEFAULT_CLASSES.containerClass);
16222
+ }
16223
+ // bind click event
16224
+ element.addEventListener('click', function (event) {
16225
+ var emitEvent = getEventEmiter(vnode);
16226
+ var swiper = getSwiperInstance(element, binding, vnode);
16227
+ handleClickSlideEvent(swiper, event, emitEvent);
16228
+ });
16229
+ },
16230
+ // DOM inserted
16231
+ inserted: function (element, binding, vnode) {
16232
+ var context = vnode.context;
16233
+ var swiperOptions = getSwipeOptions(binding);
16234
+ var instanceName = getSwiperInstanceName(element, binding, vnode);
16235
+ var emitEvent = getEventEmiter(vnode);
16236
+ var vueContext = context;
16237
+ var swiper = vueContext === null || vueContext === void 0 ? void 0 : vueContext[instanceName];
16238
+ // Swiper will destroy but not delete instance, when used <keep-alive>
16239
+ if (!swiper || swiper.destroyed) {
16240
+ swiper = new SwiperClass(element, swiperOptions);
16241
+ vueContext[instanceName] = swiper;
16242
+ bindSwiperEvents(swiper, emitEvent);
16243
+ emitEvent(ComponentEvents.Ready, swiper);
16244
+ // MARK: Reinstance when the nexttick with <keep-alive>
16245
+ // Vue.nextTick(instancing) | setTimeout(instancing)
16246
+ }
16247
+ },
16248
+ // On options changed or DOM updated
16249
+ componentUpdated: function (element, binding, vnode) {
16250
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m;
16251
+ var autoUpdate = getStandardisedOptionByAttrs(vnode, ComponentPropNames.AutoUpdate);
16252
+ if (getBooleanValueByInput(autoUpdate)) {
16253
+ var swiper = getSwiperInstance(element, binding, vnode);
16254
+ if (swiper) {
16255
+ var swiperOptions = getSwipeOptions(binding);
16256
+ var isLoop = swiperOptions.loop;
16257
+ if (isLoop) {
16258
+ (_b = (_a = swiper) === null || _a === void 0 ? void 0 : _a.loopDestroy) === null || _b === void 0 ? void 0 : _b.call(_a);
16259
+ }
16260
+ (_c = swiper === null || swiper === void 0 ? void 0 : swiper.update) === null || _c === void 0 ? void 0 : _c.call(swiper);
16261
+ (_e = (_d = swiper.navigation) === null || _d === void 0 ? void 0 : _d.update) === null || _e === void 0 ? void 0 : _e.call(_d);
16262
+ (_g = (_f = swiper.pagination) === null || _f === void 0 ? void 0 : _f.render) === null || _g === void 0 ? void 0 : _g.call(_f);
16263
+ (_j = (_h = swiper.pagination) === null || _h === void 0 ? void 0 : _h.update) === null || _j === void 0 ? void 0 : _j.call(_h);
16264
+ if (isLoop) {
16265
+ (_l = (_k = swiper) === null || _k === void 0 ? void 0 : _k.loopCreate) === null || _l === void 0 ? void 0 : _l.call(_k);
16266
+ (_m = swiper === null || swiper === void 0 ? void 0 : swiper.update) === null || _m === void 0 ? void 0 : _m.call(swiper);
16267
+ }
16268
+ }
16269
+ }
16270
+ },
16271
+ // Destroy this directive
16272
+ unbind: function (element, binding, vnode) {
16273
+ var _a;
16274
+ var autoDestroy = getStandardisedOptionByAttrs(vnode, ComponentPropNames.AutoDestroy);
16275
+ if (getBooleanValueByInput(autoDestroy)) {
16276
+ var swiper = getSwiperInstance(element, binding, vnode);
16277
+ if (swiper && swiper.initialized) {
16278
+ (_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)));
16279
+ }
16280
+ }
16281
+ }
16282
+ };
16283
+ }/**
16284
+ * @file vue-awesome-swiper
16285
+ * @module SwiperComponent
16286
+ * @author Surmon <https://github.com/surmon-china>
16287
+ */
16288
+ var SlotNames;
16289
+ (function (SlotNames) {
16290
+ SlotNames["ParallaxBg"] = "parallax-bg";
16291
+ SlotNames["Pagination"] = "pagination";
16292
+ SlotNames["Scrollbar"] = "scrollbar";
16293
+ SlotNames["PrevButton"] = "button-prev";
16294
+ SlotNames["NextButton"] = "button-next";
16295
+ })(SlotNames || (SlotNames = {}));
16296
+ function getSwiperComponent(SwiperClass) {
16297
+ var _a;
16298
+ return Vue.extend({
16299
+ name: CoreNames.SwiperComponent,
16300
+ props: (_a = {
16301
+ defaultOptions: {
16302
+ type: Object,
16303
+ required: false,
16304
+ default: function () { return ({}); }
16305
+ },
16306
+ // eslint-disable-next-line vue/require-default-prop
16307
+ options: {
16308
+ type: Object,
16309
+ required: false
16310
+ }
16311
+ },
16312
+ _a[ComponentPropNames.AutoUpdate] = {
16313
+ type: Boolean,
16314
+ default: true
16315
+ },
16316
+ // https://github.com/surmon-china/vue-awesome-swiper/pull/550/files
16317
+ _a[ComponentPropNames.AutoDestroy] = {
16318
+ type: Boolean,
16319
+ default: true
16320
+ },
16321
+ // https://github.com/surmon-china/vue-awesome-swiper/pull/388
16322
+ _a[ComponentPropNames.DeleteInstanceOnDestroy] = {
16323
+ type: Boolean,
16324
+ required: false,
16325
+ default: true
16326
+ },
16327
+ _a[ComponentPropNames.CleanupStylesOnDestroy] = {
16328
+ type: Boolean,
16329
+ required: false,
16330
+ default: true
16331
+ },
16332
+ _a),
16333
+ data: function () {
16334
+ var _a;
16335
+ return _a = {},
16336
+ _a[CoreNames.SwiperInstance] = null,
16337
+ _a;
16338
+ },
16339
+ computed: {
16340
+ swiperInstance: {
16341
+ cache: false,
16342
+ set: function (swiper) {
16343
+ this[CoreNames.SwiperInstance] = swiper;
16344
+ },
16345
+ get: function () {
16346
+ return this[CoreNames.SwiperInstance];
16347
+ }
16348
+ },
16349
+ swiperOptions: function () {
16350
+ return this.options || this.defaultOptions;
16351
+ },
16352
+ wrapperClass: function () {
16353
+ return this.swiperOptions.wrapperClass || DEFAULT_CLASSES.wrapperClass;
16354
+ }
16355
+ },
16356
+ methods: {
16357
+ // Feature: click event
16358
+ handleSwiperClick: function (event) {
16359
+ handleClickSlideEvent(this.swiperInstance, event, this.$emit.bind(this));
16360
+ },
16361
+ autoReLoopSwiper: function () {
16362
+ var _a, _b;
16363
+ if (this.swiperInstance && this.swiperOptions.loop) {
16364
+ // https://github.com/surmon-china/vue-awesome-swiper/issues/593
16365
+ // https://github.com/surmon-china/vue-awesome-swiper/issues/544
16366
+ // https://github.com/surmon-china/vue-awesome-swiper/pull/545/files
16367
+ var swiper = this.swiperInstance;
16368
+ (_a = swiper === null || swiper === void 0 ? void 0 : swiper.loopDestroy) === null || _a === void 0 ? void 0 : _a.call(swiper);
16369
+ (_b = swiper === null || swiper === void 0 ? void 0 : swiper.loopCreate) === null || _b === void 0 ? void 0 : _b.call(swiper);
16370
+ }
16371
+ },
16372
+ updateSwiper: function () {
16373
+ var _a, _b, _c, _d, _e, _f, _g, _h;
16374
+ if (this[ComponentPropNames.AutoUpdate] && this.swiperInstance) {
16375
+ this.autoReLoopSwiper();
16376
+ (_b = (_a = this.swiperInstance) === null || _a === void 0 ? void 0 : _a.update) === null || _b === void 0 ? void 0 : _b.call(_a);
16377
+ (_d = (_c = this.swiperInstance.navigation) === null || _c === void 0 ? void 0 : _c.update) === null || _d === void 0 ? void 0 : _d.call(_c);
16378
+ (_f = (_e = this.swiperInstance.pagination) === null || _e === void 0 ? void 0 : _e.render) === null || _f === void 0 ? void 0 : _f.call(_e);
16379
+ (_h = (_g = this.swiperInstance.pagination) === null || _g === void 0 ? void 0 : _g.update) === null || _h === void 0 ? void 0 : _h.call(_g);
16380
+ }
16381
+ },
16382
+ destroySwiper: function () {
16383
+ var _a, _b;
16384
+ if (this[ComponentPropNames.AutoDestroy] && this.swiperInstance) {
16385
+ // https://github.com/surmon-china/vue-awesome-swiper/pull/341
16386
+ // https://github.com/surmon-china/vue-awesome-swiper/issues/340
16387
+ if (this.swiperInstance.initialized) {
16388
+ (_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]);
16389
+ }
16390
+ }
16391
+ },
16392
+ initSwiper: function () {
16393
+ this.swiperInstance = new SwiperClass(this.$el, this.swiperOptions);
16394
+ bindSwiperEvents(this.swiperInstance, this.$emit.bind(this));
16395
+ this.$emit(ComponentEvents.Ready, this.swiperInstance);
16396
+ }
16397
+ },
16398
+ mounted: function () {
16399
+ if (!this.swiperInstance) {
16400
+ this.initSwiper();
16401
+ }
16402
+ },
16403
+ // Update swiper when the parent component activated with `keep-alive`.
16404
+ activated: function () {
16405
+ this.updateSwiper();
16406
+ },
16407
+ updated: function () {
16408
+ this.updateSwiper();
16409
+ },
16410
+ beforeDestroy: function () {
16411
+ // https://github.com/surmon-china/vue-awesome-swiper/commit/2924a9d4d3d1cf51c0d46076410b1f804b2b8a43#diff-7f4e0261ac562c0f354cb91a1ca8864f
16412
+ this.$nextTick(this.destroySwiper);
16413
+ },
16414
+ render: function (createElement) {
16415
+ return createElement('div', {
16416
+ staticClass: DEFAULT_CLASSES.containerClass,
16417
+ on: {
16418
+ click: this.handleSwiperClick
16419
+ }
16420
+ }, [
16421
+ this.$slots[SlotNames.ParallaxBg],
16422
+ createElement('div', {
16423
+ class: this.wrapperClass
16424
+ }, this.$slots.default),
16425
+ this.$slots[SlotNames.Pagination],
16426
+ this.$slots[SlotNames.PrevButton],
16427
+ this.$slots[SlotNames.NextButton],
16428
+ this.$slots[SlotNames.Scrollbar]
16429
+ ]);
16430
+ }
16431
+ });
16432
+ }/**
16433
+ * @file vue-awesome-swiper
16434
+ * @module SwiperSlideComponent
16435
+ * @author Surmon <https://github.com/surmon-china>
16436
+ */
16437
+ var SwiperSlideComponent = Vue.extend({
16438
+ name: CoreNames.SwiperSlideComponent,
16439
+ computed: {
16440
+ slideClass: function () {
16441
+ var _a, _b;
16442
+ return ((_b = (_a = this.$parent) === null || _a === void 0 ? void 0 : _a.swiperOptions) === null || _b === void 0 ? void 0 : _b.slideClass) || DEFAULT_CLASSES.slideClass;
16443
+ }
16444
+ },
16445
+ methods: {
16446
+ update: function () {
16447
+ var _a;
16448
+ var parent = this.$parent;
16449
+ // https://github.com/surmon-china/vue-awesome-swiper/issues/632
16450
+ if (parent[ComponentPropNames.AutoUpdate]) {
16451
+ (_a = parent === null || parent === void 0 ? void 0 : parent.swiperInstance) === null || _a === void 0 ? void 0 : _a.update();
16452
+ }
16453
+ }
16454
+ },
16455
+ mounted: function () {
16456
+ this.update();
16457
+ },
16458
+ updated: function () {
16459
+ this.update();
16460
+ },
16461
+ render: function (createElement) {
16462
+ return createElement('div', {
16463
+ class: this.slideClass
16464
+ }, this.$slots.default);
16465
+ }
16466
+ });/**
16467
+ * @file vue-awesome-swiper
16468
+ * @module exporter
16469
+ * @author Surmon <https://github.com/surmon-china>
16470
+ */
16471
+ var getInstaller = function (SwiperClass) {
16472
+ var install = function (Vue, globalOptions) {
16473
+ if (install.installed)
16474
+ { return; }
16475
+ var SwiperComponent = getSwiperComponent(SwiperClass);
16476
+ if (globalOptions) {
16477
+ SwiperComponent.options.props.defaultOptions.default = function () { return globalOptions; };
16478
+ }
16479
+ Vue.component(CoreNames.SwiperComponent, SwiperComponent);
16480
+ Vue.component(CoreNames.SwiperSlideComponent, SwiperSlideComponent);
16481
+ Vue.directive(CoreNames.SwiperDirective, getDirective(SwiperClass, globalOptions));
16482
+ install.installed = true;
16483
+ };
16484
+ return install;
16485
+ };
16486
+ function exporter(SwiperClass) {
16487
+ var _a;
16488
+ return _a = {
16489
+ version: '4.1.1',
16490
+ install: getInstaller(SwiperClass),
16491
+ directive: getDirective(SwiperClass)
16492
+ },
16493
+ _a[CoreNames.SwiperComponent] = getSwiperComponent(SwiperClass),
16494
+ _a[CoreNames.SwiperSlideComponent] = SwiperSlideComponent,
16495
+ _a;
16496
+ }/**
16497
+ * @file vue-awesome-swiper
16498
+ * @module default-export
16499
+ * @author Surmon <https://github.com/surmon-china>
16500
+ */
16501
+ var VueAwesomeSwiper = exporter(SwiperClass);
16502
+ var version = VueAwesomeSwiper.version;
16503
+ var install = VueAwesomeSwiper.install;
16504
+ var directive = VueAwesomeSwiper.directive;
16505
+ var Swiper = VueAwesomeSwiper.Swiper;
16506
+ 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});})));
16507
+
16458
16508
  /***/ }),
16459
16509
 
16460
16510
  /***/ "ef27":
16461
16511
  /***/ (function(module, exports) {
16462
16512
 
16463
- 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"
16513
+ 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"
16464
16514
 
16465
16515
  /***/ }),
16466
16516