@egova/egova-api 1.3.3 → 1.3.4
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/README.md +15 -15
- package/dist/index.common.js +1179 -44
- package/dist/index.css +1 -1
- package/dist/index.umd.js +1184 -49
- package/dist/index.umd.min.js +4 -4
- package/dist/static/img/{authentication.e6fbf188.svg → authentication.da2b6203.svg} +159 -159
- package/dist/static/img/{empty_result.98fe48d0.svg → empty_result.58c09489.svg} +232 -232
- package/dist/static/img/{iconfont.26f82952.svg → iconfont.559d2630.svg} +83 -83
- package/dist/static/img/{iconfont.6fbfccbd.svg → iconfont.671d9701.svg} +285 -285
- package/dist/static/img/{table_nodata.c92bc11a.svg → table_nodata.a7f91345.svg} +200 -200
- package/package.json +10 -8
package/dist/index.common.js
CHANGED
|
@@ -87,6 +87,24 @@ module.exports =
|
|
|
87
87
|
/************************************************************************/
|
|
88
88
|
/******/ ({
|
|
89
89
|
|
|
90
|
+
/***/ "00fe":
|
|
91
|
+
/***/ (function(module, exports, __webpack_require__) {
|
|
92
|
+
|
|
93
|
+
"use strict";
|
|
94
|
+
|
|
95
|
+
var lengthOfArrayLike = __webpack_require__("d631");
|
|
96
|
+
|
|
97
|
+
module.exports = function (Constructor, list, $length) {
|
|
98
|
+
var index = 0;
|
|
99
|
+
var length = arguments.length > 2 ? $length : lengthOfArrayLike(list);
|
|
100
|
+
var result = new Constructor(length);
|
|
101
|
+
while (length > index) result[index] = list[index++];
|
|
102
|
+
return result;
|
|
103
|
+
};
|
|
104
|
+
|
|
105
|
+
|
|
106
|
+
/***/ }),
|
|
107
|
+
|
|
90
108
|
/***/ "01a6":
|
|
91
109
|
/***/ (function(module, exports) {
|
|
92
110
|
|
|
@@ -128,14 +146,14 @@ module.exports = isForced;
|
|
|
128
146
|
/***/ "07ab":
|
|
129
147
|
/***/ (function(module, exports) {
|
|
130
148
|
|
|
131
|
-
module.exports = "<div class=\"u-tree-node\">\
|
|
149
|
+
module.exports = "<div class=\"u-tree-node\">\n<!-- <i class=\"iconfont\" :class=\"data.expand? 'icon-expand': 'icon-unexpand'\"></i>-->\n <i class=\"iconfont icon-mulushu\" @click=\"onClickNode\"></i>\n <div class=\"name\" @click=\"onClickNode\">{{data.name}}</div>\n <i-dropdown @on-click=\"onClick\" transfer transfer-class-name=\"node-oprate\" v-if=\"data.id !== 'virtual_root_directory'\">\n <i-icon type=\"ios-more\" />\n <i-dropdown-menu slot=\"list\">\n <i-dropdown-item v-for=\"item in actions\" :key=\"item.name\" :name=\"item.name\">\n <template v-if=\"item.name === 'import'\">\n <i-upload\n class=\"action-item\"\n :action=\"uploadAction\"\n :data=\"uploadParams\"\n accept=\".json\"\n :headers=\"headers\"\n :show-upload-list=\"false\"\n :format=\"['json']\"\n :on-success=\"onSuccess\"\n :before-upload=\"onBeforeUpload\"\n :on-format-error=\"onFormatError\"\n >\n <i title=\"导入\" class=\"iconfont icon-import\"></i>{{item.text}}\n </i-upload>\n </template>\n <template v-else> <i class=\"iconfont\" :class=\"'icon-' + (item.icon || item.name)\"></i>{{item.text}} </template>\n </i-dropdown-item>\n </i-dropdown-menu>\n </i-dropdown>\n</div>\n"
|
|
132
150
|
|
|
133
151
|
/***/ }),
|
|
134
152
|
|
|
135
153
|
/***/ "086a":
|
|
136
154
|
/***/ (function(module, exports) {
|
|
137
155
|
|
|
138
|
-
module.exports = "<i-modal draggable sticky transfer reset-drag-position :mask-closable=\"false\" v-model=\"show\" width=\"1000\" class=\"u-test-run-modal diy-modal\">\
|
|
156
|
+
module.exports = "<i-modal draggable sticky transfer reset-drag-position :mask-closable=\"false\" v-model=\"show\" width=\"1000\" class=\"u-test-run-modal diy-modal\">\n <header slot=\"header\">运行结果</header>\n <main>\n <section class=\"u-test-run-content\">\n <section class=\"title-g\">参数</section>\n <section class=\"card-panel context-editor\">\n <u-base-editor :data.sync=\"context\"></u-base-editor>\n </section>\n <i-row justify=\"end\">\n <i-button class=\"diy-btn-default\" @click=\"onReset\">重置</i-button>\n <i-button class=\"diy-btn-primary\" type=\"primary\" @click=\"onProcess\">执行</i-button>\n </i-row>\n <section class=\"title-g\">结果</section>\n <section class=\"card-panel\">\n <i-tabs>\n <i-tab-pane label=\"响应\" name=\"response\">\n <u-base-editor :class=\"['editor', error ? 'editor-error' : '']\" :data.sync=\"result\" :readOnly=\"true\"></u-base-editor>\n </i-tab-pane>\n <i-tab-pane label=\"输出\" name=\"output\">\n <u-base-editor :data.sync=\"output\" :readOnly=\"true\"></u-base-editor>\n </i-tab-pane>\n </i-tabs>\n </section>\n </section>\n </main>\n <footer slot=\"footer\">\n <i-button type=\"primary\" class=\"diy-btn-primary\" @click=\"onOk\">关闭</i-button>\n </footer>\n</i-modal>\n"
|
|
139
157
|
|
|
140
158
|
/***/ }),
|
|
141
159
|
|
|
@@ -158,7 +176,7 @@ module.exports = store;
|
|
|
158
176
|
/***/ "0941":
|
|
159
177
|
/***/ (function(module, exports) {
|
|
160
178
|
|
|
161
|
-
module.exports = "<i-modal draggable sticky transfer reset-drag-position :mask-closable=\"false\" v-model=\"show\" width=\"1280\" class=\"u-api-project-modal diy-modal\">\
|
|
179
|
+
module.exports = "<i-modal draggable sticky transfer reset-drag-position :mask-closable=\"false\" v-model=\"show\" width=\"1280\" class=\"u-api-project-modal diy-modal\">\n <header slot=\"header\">添加API</header>\n <main>\n <i-split v-model=\"splitHorizontal\">\n <section slot=\"left\" class=\"card-panel card-panel-no-right-border\">\n <div class=\"card-panel-header\">\n <span>选择列表</span>\n </div>\n <div class=\"card-panel-main\">\n <u-tree :commonTaskCategoryID=\"taskCategoryID\" :initSelectItem=\"initNode\" :prop-data=\"treeData\" :isTreeList=\"true\" @on-select=\"onSelect\" />\n </div>\n </section>\n <section slot=\"right\" class=\"right-content\">\n <i-split v-model=\"splitVertical\" mode=\"vertical\" max=\"600\">\n <section slot=\"top\" class=\"card-panel card-panel-no-bottom-border\">\n <div class=\"card-panel-header\">\n <span>选择模型</span>\n </div>\n <div class=\"card-panel-main\">\n <u-api-project-list\n :data=\"tableData\"\n :paging.sync=\"paging\"\n @on-search=\"onSearch\"\n @on-page-index-change=\"onPageIndexChange\"\n @on-page-size-change=\"onPageSizeChange\"\n @on-selection-change=\"onSelectionChange\"\n @on-delete-refresh=\"getTableData\"\n @on-row-click=\"onRowClick\"\n >\n </u-api-project-list>\n </div>\n </section>\n <section slot=\"bottom\" :class=\"['card-panel', collapse ? 'card-panel-no-bottom-border' : '']\">\n <div class=\"card-panel-header\">\n <span>已选({{checkedLength}})</span>\n <span>\n <i-poptip confirm title=\"您确定要清空已选中的数据吗?\" transfer placement=\"top-end\" @on-ok=\"onBatchDelete\">\n <span class=\"action-text\">\n <i class=\"iconfont icon-delete\"></i>\n <span>清空</span>\n </span>\n </i-poptip>\n <span class=\"action-text collapse-text\" @click=\"onClickCollapse\">\n <span>{{collapse ? \"展开\" : \"收起\"}}</span>\n <i class=\"ivu-icon ivu-icon-ios-arrow-forward\" :class=\"{'icon-arrow-collapse':collapse}\"></i>\n </span>\n </span>\n </div>\n <div class=\"card-panel-main\">\n <template v-if=\"checkedData&&checkedData.length\">\n <i-table class=\"diy-table\" :columns=\"columns\" :data=\"checkedData\">\n <template #operates=\"{row,index}\">\n <div class=\"row-actions\">\n <i-poptip confirm transfer title=\"确认要删除这条数据吗?\" @on-ok=\"onDelete(row)\">\n <i title=\"删除\" class=\"iconfont icon-delete\"></i>\n </i-poptip>\n </div>\n </template>\n </i-table>\n </template>\n <template v-else>\n <div class=\"table-no-data\">\n <div class=\"table-no-data-bg\"></div>\n <div class=\"table-no-data-text\">暂无数据</div>\n </div>\n </template>\n </div>\n </section>\n </i-split>\n </section>\n </i-split>\n <i-spin fix v-if=\"isLoading\">\n <i class=\"spin-icon-load ivu-icon\"></i>\n </i-spin>\n </main>\n <footer slot=\"footer\">\n <i-button type=\"primary\" class=\"diy-btn-primary\" @click=\"onSave\">确定</i-button>\n <i-button class=\"diy-btn-default\" @click=\"onCancel\">取消</i-button>\n </footer>\n</i-modal>\n"
|
|
162
180
|
|
|
163
181
|
/***/ }),
|
|
164
182
|
|
|
@@ -271,7 +289,7 @@ module.exports = function (exec) {
|
|
|
271
289
|
/***/ "10cf":
|
|
272
290
|
/***/ (function(module, exports) {
|
|
273
291
|
|
|
274
|
-
module.exports = "<i-modal\
|
|
292
|
+
module.exports = "<i-modal\n draggable\n sticky\n reset-drag-position\n v-model=\"value\"\n class=\"diy-modal current-variable-modal\"\n :mask-closable=\"false\"\n footer-hide\n title=\"查看当前变量\"\n>\n <i-form\n :label-width=\"95\"\n class=\"diy-form\"\n label-colon\n label-position=\"left\"\n >\n <i-form-item label=\"环境名称\">\n <i-input class=\"diy-input\" placeholder=\"请输入环境名称\"></i-input>\n </i-form-item>\n <i-form-item label=\"环境域名\" class=\"realm-name\">\n <i-input class=\"diy-input\" placeholder=\"请输入环境域名\">\n <i-select slot=\"prepend\" class=\"diy-select\"> </i-select>\n </i-input>\n </i-form-item>\n <i-form-item label=\"Header\" class=\"name-value-item\">\n <i-input class=\"diy-input\"></i-input>\n <i-input class=\"diy-input\"></i-input>\n </i-form-item>\n <i-form-item label=\"Cookie\" class=\"name-value-item\">\n <i-input class=\"diy-input\"></i-input>\n <i-input class=\"diy-input\"></i-input>\n </i-form-item>\n <i-form-item label=\"Global\" class=\"name-value-item\">\n <i-input class=\"diy-input\"></i-input>\n <i-input class=\"diy-input\"></i-input>\n </i-form-item>\n </i-form>\n</i-modal>\n"
|
|
275
293
|
|
|
276
294
|
/***/ }),
|
|
277
295
|
|
|
@@ -301,6 +319,24 @@ module.exports = !fails(function () {
|
|
|
301
319
|
});
|
|
302
320
|
|
|
303
321
|
|
|
322
|
+
/***/ }),
|
|
323
|
+
|
|
324
|
+
/***/ "16bf":
|
|
325
|
+
/***/ (function(module, exports, __webpack_require__) {
|
|
326
|
+
|
|
327
|
+
"use strict";
|
|
328
|
+
|
|
329
|
+
var toPositiveInteger = __webpack_require__("ead7");
|
|
330
|
+
|
|
331
|
+
var $RangeError = RangeError;
|
|
332
|
+
|
|
333
|
+
module.exports = function (it, BYTES) {
|
|
334
|
+
var offset = toPositiveInteger(it);
|
|
335
|
+
if (offset % BYTES) throw new $RangeError('Wrong offset');
|
|
336
|
+
return offset;
|
|
337
|
+
};
|
|
338
|
+
|
|
339
|
+
|
|
304
340
|
/***/ }),
|
|
305
341
|
|
|
306
342
|
/***/ "17f8":
|
|
@@ -404,7 +440,7 @@ module.exports = require("brace/mode/xml");
|
|
|
404
440
|
/***/ "22e8":
|
|
405
441
|
/***/ (function(module, exports) {
|
|
406
442
|
|
|
407
|
-
module.exports = "<article class=\"headers-setting\">\
|
|
443
|
+
module.exports = "<article class=\"headers-setting\">\n <header>\n <i-button type=\"primary\" ghost class=\"diy-btn-primary\" @click=\"onAdd\">\n <i class=\"api-icon icon-add\"></i>新增\n </i-button>\n <!-- <i-button type=\"primary\" ghost class=\"diy-btn-primary\">\n <i class=\"api-icon icon-import\"></i>导入参数\n </i-button>\n <i-button type=\"primary\" ghost class=\"diy-btn-primary\">\n <i class=\"api-icon icon-export\"></i>导出参数\n </i-button> -->\n </header>\n <i-table\n class=\"diy-table\"\n :columns=\"columns\"\n :data=\"interfaceModel.requestHeaders\"\n >\n <template slot-scope=\"{ row,index }\" slot=\"selection\">\n <i-checkbox\n :value=\"!interfaceModel.requestHeaders[index].disabled\"\n @on-change=\"onChangeDisabled($event,interfaceModel.requestHeaders[index])\"\n >\n </i-checkbox>\n </template>\n <template slot-scope=\"{ row,index }\" slot=\"name\">\n <i-input\n class=\"diy-input\"\n placeholder=\"输入参数名称\"\n v-model=\"interfaceModel.requestHeaders[index].name\"\n >\n </i-input>\n </template>\n <template slot-scope=\"{ row,index }\" slot=\"value\">\n <i-input\n class=\"diy-input\"\n placeholder=\"输入参数值\"\n v-model=\"interfaceModel.requestHeaders[index].value\"\n >\n </i-input>\n </template>\n <template slot-scope=\"{ row,index }\" slot=\"text\">\n <i-input\n class=\"diy-input\"\n placeholder=\"备注\"\n v-model=\"interfaceModel.requestHeaders[index].text\"\n >\n </i-input>\n </template>\n <template slot-scope=\"{ row,index }\" slot=\"action\">\n <i-poptip title=\"确认删除这条数据吗?\" confirm @on-ok=\"onDelete(index)\" transfer>\n <i class=\"iconfont icon-delete\" title=\"删除\"></i>\n </i-poptip>\n </template>\n </i-table>\n</article>\n"
|
|
408
444
|
|
|
409
445
|
/***/ }),
|
|
410
446
|
|
|
@@ -435,7 +471,7 @@ module.exports = require("vue-json-viewer");
|
|
|
435
471
|
/***/ "236b":
|
|
436
472
|
/***/ (function(module, exports) {
|
|
437
473
|
|
|
438
|
-
module.exports = "<article class=\"after-execution-transfer\">\
|
|
474
|
+
module.exports = "<article class=\"after-execution-transfer\">\n <i-form :label-width=\"112\" class=\"diy-form\" label-colon v-if=\"interfaceModel.convertConfig\">\n <i-form-item label=\"状态字段位置\">\n <i-input class=\"diy-input\" v-model=\"interfaceModel.convertConfig.successCodePath\"></i-input>\n </i-form-item>\n <i-form-item label=\"成功标识\">\n <i-input class=\"diy-input\" v-model=\"interfaceModel.convertConfig.successCode\"></i-input>\n </i-form-item>\n <i-form-item label=\"数据字段位置\">\n <i-input class=\"diy-input\" v-model=\"interfaceModel.convertConfig.convertRoot\"></i-input>\n </i-form-item>\n </i-form>\n <i-row class=\"transfer-actions\" justify=\"space-between\">\n <div class=\"transfer-actions-title\">\n <span>配置输出字段</span>\n <i-poptip class=\"action\" trigger=\"hover\" content=\"当前页面的勾选框仅对批量删除有效,实际输出字段为下方列表内的所有内容。\" width=\"300\" word-wrap transfer>\n <i class=\"iconfont icon-xinxi\"> </i>\n </i-poptip>\n </div>\n <div class=\"actions-wrapper\">\n <i-poptip class=\"action\" confirm title=\"将自动解析转换前结果json至配置输出字段,是否继续?\" width=\"300\" @on-ok=\"onParse\" transfer>\n <div class=\"action-item action-text\">\n <i class=\"iconfont icon-jiexi-copy\"></i>\n 解析\n </div>\n </i-poptip>\n <i-poptip class=\"action\" confirm title=\"将重置当前所有输出字段为上次保存内容,是否确认一键重置?\" width=\"300\" @on-ok=\"onReset\" transfer>\n <div class=\"action-item action-text\">\n <i class=\"iconfont icon-refresh\"></i>\n 重置\n </div>\n </i-poptip>\n <div class=\"action-item action-text action\" @click=\"onAdd\">\n <i class=\"iconfont icon-add\"></i>\n 新增\n </div>\n <i-poptip class=\"action\" confirm title=\"将批量删除勾选字段,是否确认?\" @on-ok=\"batchDelete\" transfer>\n <div class=\"action-item action-text action-text-delete\" :class=\"selections.length > 0 ? '' : 'icon-button-disabled'\">\n <i class=\"iconfont icon-delete\"></i>\n 批量删除\n </div>\n </i-poptip>\n </div>\n </i-row>\n <i-table :columns=\"columns\" :data=\"dataList\" class=\"diy-table\" @on-selection-change=\"onChangeChecked\">\n <template slot-scope=\"{ row,index }\" slot=\"path\">\n <i-input class=\"diy-input\" v-model=\"dataList[index].paramPath\" @on-change=\"debounceUpdateFieldMappings\"> </i-input>\n </template>\n <template slot-scope=\"{ row,index }\" slot=\"name\">\n <i-input class=\"diy-input half\" placeholder=\"输入字段命名\" v-model=\"dataList[index].name\" @on-change=\"debounceUpdateFieldMappings\"> </i-input>\n <i-select transfer class=\"half diy-select\" v-model=\"dataList[index].valueType\" placeholder=\"选择字段类型\" @on-change=\"debounceUpdateFieldMappings\">\n <i-option v-for=\"item in valueTypeList\" :key=\"item.name\" :value=\"item.name\">{{item.text}} </i-option>\n </i-select>\n </template>\n <template slot-scope=\"{ row,index }\" slot=\"action\">\n <span @click=\"onDelete(index)\">\n <i title=\"删除\" class=\"iconfont icon-delete\"></i>\n </span>\n </template>\n </i-table>\n <i-spin fix v-show=\"loading\">\n <i class=\"spin-icon-load ivu-icon\"></i>\n </i-spin>\n</article>\n"
|
|
439
475
|
|
|
440
476
|
/***/ }),
|
|
441
477
|
|
|
@@ -487,6 +523,31 @@ exports.f = NASHORN_BUG ? function propertyIsEnumerable(V) {
|
|
|
487
523
|
} : $propertyIsEnumerable;
|
|
488
524
|
|
|
489
525
|
|
|
526
|
+
/***/ }),
|
|
527
|
+
|
|
528
|
+
/***/ "2597":
|
|
529
|
+
/***/ (function(module, exports, __webpack_require__) {
|
|
530
|
+
|
|
531
|
+
"use strict";
|
|
532
|
+
|
|
533
|
+
var ArrayBufferViewCore = __webpack_require__("6a10");
|
|
534
|
+
var lengthOfArrayLike = __webpack_require__("d631");
|
|
535
|
+
var toIntegerOrInfinity = __webpack_require__("9b7f");
|
|
536
|
+
|
|
537
|
+
var aTypedArray = ArrayBufferViewCore.aTypedArray;
|
|
538
|
+
var exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;
|
|
539
|
+
|
|
540
|
+
// `%TypedArray%.prototype.at` method
|
|
541
|
+
// https://tc39.es/ecma262/#sec-%typedarray%.prototype.at
|
|
542
|
+
exportTypedArrayMethod('at', function at(index) {
|
|
543
|
+
var O = aTypedArray(this);
|
|
544
|
+
var len = lengthOfArrayLike(O);
|
|
545
|
+
var relativeIndex = toIntegerOrInfinity(index);
|
|
546
|
+
var k = relativeIndex >= 0 ? relativeIndex : len + relativeIndex;
|
|
547
|
+
return (k < 0 || k >= len) ? undefined : O[k];
|
|
548
|
+
});
|
|
549
|
+
|
|
550
|
+
|
|
490
551
|
/***/ }),
|
|
491
552
|
|
|
492
553
|
/***/ "2606":
|
|
@@ -520,6 +581,24 @@ module.exports = {
|
|
|
520
581
|
|
|
521
582
|
// extracted by mini-css-extract-plugin
|
|
522
583
|
|
|
584
|
+
/***/ }),
|
|
585
|
+
|
|
586
|
+
/***/ "2720":
|
|
587
|
+
/***/ (function(module, exports, __webpack_require__) {
|
|
588
|
+
|
|
589
|
+
"use strict";
|
|
590
|
+
|
|
591
|
+
var classofRaw = __webpack_require__("0d9b");
|
|
592
|
+
var uncurryThis = __webpack_require__("720f");
|
|
593
|
+
|
|
594
|
+
module.exports = function (fn) {
|
|
595
|
+
// Nashorn bug:
|
|
596
|
+
// https://github.com/zloirock/core-js/issues/1128
|
|
597
|
+
// https://github.com/zloirock/core-js/issues/1130
|
|
598
|
+
if (classofRaw(fn) === 'Function') return uncurryThis(fn);
|
|
599
|
+
};
|
|
600
|
+
|
|
601
|
+
|
|
523
602
|
/***/ }),
|
|
524
603
|
|
|
525
604
|
/***/ "2a79":
|
|
@@ -532,7 +611,7 @@ module.exports = {
|
|
|
532
611
|
/***/ "2c48":
|
|
533
612
|
/***/ (function(module, exports) {
|
|
534
613
|
|
|
535
|
-
module.exports = "<article class=\"response\" :class=\"{'response-expand':expand}\">\
|
|
614
|
+
module.exports = "<article class=\"response\" :class=\"{'response-expand':expand}\">\n <header :class=\"{'status-success': response.code === 200, 'status-fail': response.code && response.code!==200}\">\n <span class=\"title\">响应</span>\n <span class=\"collapse-text\" @click=\"onClickCollapse\">\n <i class=\"ivu-icon ivu-icon-ios-arrow-forward\" :class=\"{'icon-arrow-collapse':expand}\"></i>\n <span>{{expand ? \"收起\" : \"展开\"}}</span>\n </span>\n <div class=\"items-div\">\n <span class=\"item-name\">响应码:</span>\n <span class=\"item-value\">{{response.code}}</span>\n <span class=\"item-name\">时间:</span>\n <span class=\"item-value\">{{response.time}}ms</span>\n <span class=\"item-name\">大小:</span>\n <span class=\"item-value\">{{response.size}}B</span>\n </div>\n </header>\n <main v-show=\"expand\">\n <div class=\"response-bar\">\n <div\n class=\"tag\"\n @click=\"onClickResponseSettingTpye(item)\"\n :class=\"{'active': item.name === active.name}\"\n v-for=\"(item,index) in responseSettingTypeList\"\n :key=\"item.name\"\n >\n <span>{{item.title + (item.num > 0 ? '(' + item.num + ')': \"\")}}</span>\n </div>\n </div>\n <div class=\"response-content\">\n <template v-if=\"active.name === 'content'\">\n <header>\n <i-radio-group type=\"button\" class=\"diy-radio-group-button response-content-radio-group\" v-model=\"contentType\">\n <i-radio label=\"originalContent\">转换前</i-radio>\n <i-radio label=\"content\">转换后</i-radio>\n </i-radio-group>\n <i-dropdown class=\"diy-dropdown response-content-dropdown\" @on-click=\"onChangeLang\">\n <i-button ghost type=\"primary\" class=\"diy-btn-primary\">\n <span class=\"lang\">{{lang.toUpperCase()}}</span>\n <i class=\"api-icon icon-select\"></i>\n </i-button>\n <i-dropdown-menu slot=\"list\">\n <i-dropdown-item name=\"json\">JSON</i-dropdown-item>\n <i-dropdown-item name=\"xml\">XML</i-dropdown-item>\n </i-dropdown-menu>\n </i-dropdown>\n </header>\n <u-editor :value=\"content\" :lang=\"lang\" @inited=\"onEditorInited\"></u-editor>\n </template>\n <div v-if=\"active.name === 'responseHeaders'\">\n <i-table :columns=\"headerColumns\" :data=\"responseHeaders\" class=\"diy-table\"> </i-table>\n </div>\n <template v-if=\"active.name === 'requestHeaders'\">\n <i-table :columns=\"headerColumns\" :data=\"requestHeaders\" class=\"diy-table\"> </i-table>\n </template>\n <template v-if=\"active.name === 'cookies'\">\n <i-table :columns=\"headerColumns\" :data=\"cookies\" class=\"diy-table\"> </i-table>\n </template>\n <template v-if=\"active.name==='output'\">\n <span class=\"output\">{{output}}</span>\n </template>\n </div>\n </main>\n</article>\n"
|
|
536
615
|
|
|
537
616
|
/***/ }),
|
|
538
617
|
|
|
@@ -541,12 +620,34 @@ module.exports = "<article class=\"response\" :class=\"{'response-expand':expand
|
|
|
541
620
|
|
|
542
621
|
// extracted by mini-css-extract-plugin
|
|
543
622
|
|
|
623
|
+
/***/ }),
|
|
624
|
+
|
|
625
|
+
/***/ "2ece":
|
|
626
|
+
/***/ (function(module, exports, __webpack_require__) {
|
|
627
|
+
|
|
628
|
+
"use strict";
|
|
629
|
+
|
|
630
|
+
var uncurryThis = __webpack_require__("2720");
|
|
631
|
+
var aCallable = __webpack_require__("7801");
|
|
632
|
+
var NATIVE_BIND = __webpack_require__("12f2");
|
|
633
|
+
|
|
634
|
+
var bind = uncurryThis(uncurryThis.bind);
|
|
635
|
+
|
|
636
|
+
// optional / simple context binding
|
|
637
|
+
module.exports = function (fn, that) {
|
|
638
|
+
aCallable(fn);
|
|
639
|
+
return that === undefined ? fn : NATIVE_BIND ? bind(fn, that) : function (/* ...args */) {
|
|
640
|
+
return fn.apply(that, arguments);
|
|
641
|
+
};
|
|
642
|
+
};
|
|
643
|
+
|
|
644
|
+
|
|
544
645
|
/***/ }),
|
|
545
646
|
|
|
546
647
|
/***/ "2f53":
|
|
547
648
|
/***/ (function(module, exports) {
|
|
548
649
|
|
|
549
|
-
module.exports = "<span class=\"wrap\">\
|
|
650
|
+
module.exports = "<span class=\"wrap\">\n <i-poptip trigger=\"hover\" :content=\"tips\">\n<!-- <div class=\"diy-info-icon\">i</div>-->\n <i-icon type=\"ios-information-circle-outline\"></i-icon>\n </i-poptip>\n <span class=\"title\">{{labelTitle}}</span>\n <span v-if=\"labelColon\">:</span>\n</span>\n"
|
|
550
651
|
|
|
551
652
|
/***/ }),
|
|
552
653
|
|
|
@@ -603,14 +704,14 @@ module.exports = function (argument, $default) {
|
|
|
603
704
|
/***/ "35e3":
|
|
604
705
|
/***/ (function(module, exports) {
|
|
605
706
|
|
|
606
|
-
module.exports = "<editor class=\"code-edit\" v-model=\"code\" :options=\"option\" @init=\"editorInit\" :lang=\"lang\" width=\"100%\" height=\"100%\"></editor>\
|
|
707
|
+
module.exports = "<editor class=\"code-edit\" v-model=\"code\" :options=\"option\" @init=\"editorInit\" :lang=\"lang\" width=\"100%\" height=\"100%\"></editor>\n"
|
|
607
708
|
|
|
608
709
|
/***/ }),
|
|
609
710
|
|
|
610
711
|
/***/ "37f5":
|
|
611
712
|
/***/ (function(module, exports) {
|
|
612
713
|
|
|
613
|
-
module.exports = "<article class=\"catalog-params\">\
|
|
714
|
+
module.exports = "<article class=\"catalog-params\">\n <header>\n 请求体为 JSON 数组,每一个 JSON 对象应符合如下的格式:\n </header>\n <i-table height=\"200\" class=\"diy-table\" :columns=\"columns\" :data=\"dataList\">\n <template slot-scope=\"{ row,index }\" slot=\"type\">\n {{(row.typeDict || {}).text}}\n </template>\n <template slot-scope=\"{ row,index }\" slot=\"required\">\n {{row.required ? \"是\": \"否\"}}\n </template>\n </i-table>\n</article>\n"
|
|
614
715
|
|
|
615
716
|
/***/ }),
|
|
616
717
|
|
|
@@ -637,12 +738,50 @@ module.exports = function (target, source, exceptions) {
|
|
|
637
738
|
};
|
|
638
739
|
|
|
639
740
|
|
|
741
|
+
/***/ }),
|
|
742
|
+
|
|
743
|
+
/***/ "39d5":
|
|
744
|
+
/***/ (function(module, exports, __webpack_require__) {
|
|
745
|
+
|
|
746
|
+
"use strict";
|
|
747
|
+
|
|
748
|
+
var arrayWith = __webpack_require__("b699");
|
|
749
|
+
var ArrayBufferViewCore = __webpack_require__("6a10");
|
|
750
|
+
var isBigIntArray = __webpack_require__("9195");
|
|
751
|
+
var toIntegerOrInfinity = __webpack_require__("9b7f");
|
|
752
|
+
var toBigInt = __webpack_require__("a68e");
|
|
753
|
+
|
|
754
|
+
var aTypedArray = ArrayBufferViewCore.aTypedArray;
|
|
755
|
+
var getTypedArrayConstructor = ArrayBufferViewCore.getTypedArrayConstructor;
|
|
756
|
+
var exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;
|
|
757
|
+
|
|
758
|
+
var PROPER_ORDER = !!function () {
|
|
759
|
+
try {
|
|
760
|
+
// eslint-disable-next-line no-throw-literal, es/no-typed-arrays, es/no-array-prototype-with -- required for testing
|
|
761
|
+
new Int8Array(1)['with'](2, { valueOf: function () { throw 8; } });
|
|
762
|
+
} catch (error) {
|
|
763
|
+
// some early implementations, like WebKit, does not follow the final semantic
|
|
764
|
+
// https://github.com/tc39/proposal-change-array-by-copy/pull/86
|
|
765
|
+
return error === 8;
|
|
766
|
+
}
|
|
767
|
+
}();
|
|
768
|
+
|
|
769
|
+
// `%TypedArray%.prototype.with` method
|
|
770
|
+
// https://tc39.es/ecma262/#sec-%typedarray%.prototype.with
|
|
771
|
+
exportTypedArrayMethod('with', { 'with': function (index, value) {
|
|
772
|
+
var O = aTypedArray(this);
|
|
773
|
+
var relativeIndex = toIntegerOrInfinity(index);
|
|
774
|
+
var actualValue = isBigIntArray(O) ? toBigInt(value) : +value;
|
|
775
|
+
return arrayWith(O, getTypedArrayConstructor(O), relativeIndex, actualValue);
|
|
776
|
+
} }['with'], !PROPER_ORDER);
|
|
777
|
+
|
|
778
|
+
|
|
640
779
|
/***/ }),
|
|
641
780
|
|
|
642
781
|
/***/ "3a71":
|
|
643
782
|
/***/ (function(module, exports) {
|
|
644
783
|
|
|
645
|
-
module.exports = "<i-collapse v-model=\"value\" simple class=\"api-params\">\
|
|
784
|
+
module.exports = "<i-collapse v-model=\"value\" simple class=\"api-params\">\n <i-panel name=\"1\">\n <span>Query参数</span>\n <span class=\"status\">{{getExpand('1') ? \"收起\" : \"展开\"}}</span>\n <div slot=\"content\" class=\"setting-content\">\n <main>\n <i-table\n height=\"200\"\n class=\"diy-table\"\n :columns=\"paramColumns\"\n :data=\"queryDataList\"\n >\n <template slot-scope=\"{ row,index }\" slot=\"selection\">\n <i-checkbox\n disabled\n :value=\"!queryDataList[index].disabled\"\n >\n </i-checkbox>\n </template>\n </i-table>\n </main>\n </div>\n </i-panel>\n <i-panel name=\"2\">\n <span>Body参数</span>\n <span class=\"status\">{{getExpand('2') ? \"收起\" : \"展开\"}}</span>\n <div slot=\"content\" class=\"setting-content\">\n <main>\n <i-table\n height=\"200\"\n class=\"diy-table\"\n :columns=\"paramColumns\"\n :data=\"bodyDataList\"\n v-if=\"isFormData\"\n >\n <template slot-scope=\"{ row,index }\" slot=\"selection\">\n <i-checkbox\n disabled\n :value=\"!bodyDataList[index].disabled\"\n >\n </i-checkbox>\n </template>\n </i-table>\n <json-viewer\n v-else\n :value=\"model.json\"\n boxed\n :copyable=\"{copyText: '复制', copiedText: '已复制'}\"\n :expanded=\"true\"\n :expand-depth=\"5\"\n >\n </json-viewer>\n </main>\n </div>\n </i-panel>\n</i-collapse>\n"
|
|
646
785
|
|
|
647
786
|
/***/ }),
|
|
648
787
|
|
|
@@ -656,14 +795,57 @@ module.exports = "<i-collapse v-model=\"value\" simple class=\"api-params\">\r\n
|
|
|
656
795
|
/***/ "3b85":
|
|
657
796
|
/***/ (function(module, exports) {
|
|
658
797
|
|
|
659
|
-
module.exports = "<i-modal :mask-closable=\"false\" draggable sticky reset-drag-position v-model=\"show\" class=\"diy-modal\">\
|
|
798
|
+
module.exports = "<i-modal :mask-closable=\"false\" draggable sticky reset-drag-position v-model=\"show\" class=\"diy-modal\">\n <header slot=\"header\">\n {{isEdit ? \"编辑分组\" : \"新增分组\"}}\n </header>\n <main>\n <i-form ref=\"addForm\" :model=\"data\" :rules=\"rules\">\n <i-form-item prop=\"name\" label=\"分组名称\">\n <i-input class=\"diy-input\" v-model=\"data.name\"></i-input>\n </i-form-item>\n <i-form-item v-if=\"isEdit\" label=\"所属分组\" class=\"update-category\">\n <u-tree-selector :treeData=\"categories\" leaf-name=\"task\" :canChooseFolder=\"true\" v-model=\"categoryData.id\" @on-select=\"selectCategory\">\n </u-tree-selector>\n </i-form-item>\n </i-form>\n </main>\n <footer slot=\"footer\">\n <i-button class=\"diy-btn-primary\" type=\"primary\" @click.stop=\"onSave\">确定</i-button>\n <i-button class=\"diy-btn-default\" @click.stop=\"onCancel\">取消</i-button>\n </footer>\n</i-modal>\n"
|
|
799
|
+
|
|
800
|
+
/***/ }),
|
|
801
|
+
|
|
802
|
+
/***/ "3bdc":
|
|
803
|
+
/***/ (function(module, exports, __webpack_require__) {
|
|
804
|
+
|
|
805
|
+
"use strict";
|
|
806
|
+
|
|
807
|
+
var bind = __webpack_require__("2ece");
|
|
808
|
+
var IndexedObject = __webpack_require__("5ee5");
|
|
809
|
+
var toObject = __webpack_require__("e614");
|
|
810
|
+
var lengthOfArrayLike = __webpack_require__("d631");
|
|
811
|
+
|
|
812
|
+
// `Array.prototype.{ findLast, findLastIndex }` methods implementation
|
|
813
|
+
var createMethod = function (TYPE) {
|
|
814
|
+
var IS_FIND_LAST_INDEX = TYPE === 1;
|
|
815
|
+
return function ($this, callbackfn, that) {
|
|
816
|
+
var O = toObject($this);
|
|
817
|
+
var self = IndexedObject(O);
|
|
818
|
+
var index = lengthOfArrayLike(self);
|
|
819
|
+
var boundFunction = bind(callbackfn, that);
|
|
820
|
+
var value, result;
|
|
821
|
+
while (index-- > 0) {
|
|
822
|
+
value = self[index];
|
|
823
|
+
result = boundFunction(value, index, O);
|
|
824
|
+
if (result) switch (TYPE) {
|
|
825
|
+
case 0: return value; // findLast
|
|
826
|
+
case 1: return index; // findLastIndex
|
|
827
|
+
}
|
|
828
|
+
}
|
|
829
|
+
return IS_FIND_LAST_INDEX ? -1 : undefined;
|
|
830
|
+
};
|
|
831
|
+
};
|
|
832
|
+
|
|
833
|
+
module.exports = {
|
|
834
|
+
// `Array.prototype.findLast` method
|
|
835
|
+
// https://github.com/tc39/proposal-array-find-from-last
|
|
836
|
+
findLast: createMethod(0),
|
|
837
|
+
// `Array.prototype.findLastIndex` method
|
|
838
|
+
// https://github.com/tc39/proposal-array-find-from-last
|
|
839
|
+
findLastIndex: createMethod(1)
|
|
840
|
+
};
|
|
841
|
+
|
|
660
842
|
|
|
661
843
|
/***/ }),
|
|
662
844
|
|
|
663
845
|
/***/ "3bf8":
|
|
664
846
|
/***/ (function(module, exports) {
|
|
665
847
|
|
|
666
|
-
module.exports = "<i-modal draggable sticky reset-drag-position :mask-closable=\"false\" v-model=\"show\" width=\"1000\" class=\"u-security-modal diy-modal\" transfer>\r\n <header slot=\"header\">授权认证</header>\r\n <main class=\"security-content\">\r\n <div class=\"left\">\r\n <div class=\"left-title\">\r\n <div class=\"left-title-text\">授权列表</div>\r\n <i class=\"api-icon icon-add\" @click=\"onAddItem\"></i>\r\n </div>\r\n <div class=\"left-content\">\r\n <i-input class=\"diy-input search-input\" v-model=\"keyword\" placeholder=\"输入关键字查询\" @on-change=\"onFilter\">\r\n <template #prefix>\r\n <i-icon type=\"ios-search\"/>\r\n </template>\r\n </i-input>\r\n <div class=\"security-list\">\r\n <div class=\"security-list-item\"\r\n :class=\"currentSecurityItem.id === item.id ? 'security-list-item-active' : ''\"\r\n v-for=\"(item,index) in securityList\"\r\n :key=\"item.id || index\"\r\n @click=\"onSelectSecurityItem(item)\"\r\n >\r\n <div class=\"security-list-item-name\">\r\n <i class=\"iconfont icon-shouquan1\"></i>\r\n <div class=\"security-list-item-text\" :class=\"currentSecurityItem.id === item.id ? 'security-list-item-text-active' : ''\">{{ item.name || \"新授权\" }}</div>\r\n </div>\r\n <i-poptip confirm title=\"确认删除这条数据吗?\" transfer placement=\"top-end\" @on-ok=\"onDelete(item)\">\r\n <i class=\"iconfont icon-delete\"></i>\r\n </i-poptip>\r\n<!-- <i class=\"iconfont icon-delete\" @click.stop=\"onDelete(item)\"></i>-->\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"right\">\r\n <div class=\"right-title\">授权内容</div>\r\n <div class=\"right-content\">\r\n <i-form class=\"security-content-form\" label-colon v-if=\"isEmpty\" :model=\"currentSecurityItem\">\r\n <template v-if=\"currentSecurityItem.type\">\r\n <i-form-item class=\"security-content-form-item\" :class=\"currentSecurityItem.type === 'OAuth2' ? 'oauth2-form-item' : ''\" label=\"授权名称\" required>\r\n <i-input class=\"diy-input\" placeholder=\"请输入\" v-model=\"currentSecurityItem.name\"></i-input>\r\n </i-form-item>\r\n <i-form-item class=\"security-content-form-item\" :class=\"currentSecurityItem.type === 'OAuth2' ? 'oauth2-form-item' : ''\" label=\"授权类型\" required>\r\n <i-select class=\"diy-select\" v-model=\"currentSecurityItem.type\">\r\n <i-option v-for=\"(item,index) in securityTypeList\" :value=\"item.name\" :key=\"index\">{{ item.text }}</i-option>\r\n </i-select>\r\n </i-form-item>\r\n </template>\r\n <template v-if=\"currentSecurityItem.type && currentSecurityItem.type !== 'GROOVY_SCRIPT'\">\r\n <i-form-item class=\"security-content-form-item\" :class=\"currentSecurityItem.type === 'OAuth2' ? 'oauth2-form-item' : ''\" label=\"存储位置\">\r\n <i-select class=\"diy-select\" v-model=\"currentSecurityItem.location\">\r\n <i-option v-for=\"(item,index) in tokenLocationTypeList\" :value=\"item.name\" :key=\"item.name\">{{ item.text }}</i-option>\r\n </i-select>\r\n </i-form-item>\r\n <i-form-item class=\"security-content-form-item\" :class=\"currentSecurityItem.type === 'OAuth2' ? 'oauth2-form-item' : ''\" label=\"存储键值\">\r\n <i-input class=\"diy-input\" placeholder=\"请输入\" v-model=\"currentSecurityItem.locationKey\"></i-input>\r\n </i-form-item>\r\n </template>\r\n <template v-if=\"currentSecurityItem.type === 'Api_Key'\">\r\n <i-form-item class=\"security-content-form-item\" label=\"key\">\r\n <i-input class=\"diy-input\" placeholder=\"请输入\" v-model=\"currentSecurityItem.content.key\"></i-input>\r\n </i-form-item>\r\n </template>\r\n <template v-if=\"currentSecurityItem.type === 'Base_Auth'\">\r\n <i-form-item class=\"security-content-form-item\" label=\"username\">\r\n <i-input class=\"diy-input\" placeholder=\"请输入\" v-model=\"currentSecurityItem.content.username\"></i-input>\r\n </i-form-item>\r\n <i-form-item class=\"security-content-form-item\" label=\"password\">\r\n <i-input class=\"diy-password-input diy-input\" placeholder=\"请输入\" v-model=\"currentSecurityItem.content.password\" type=\"password\" password></i-input>\r\n </i-form-item>\r\n </template>\r\n <template v-if=\"currentSecurityItem.type === 'OAuth2'\">\r\n <i-form-item class=\"security-content-form-item oauth2-form-item\">\r\n <u-tips-form-label slot=\"label\" :labelTitle=\"'Header Prefix'\" tips=\"token前缀 例如 Bearer\" label-colon></u-tips-form-label>\r\n <i-input class=\"diy-input\" placeholder=\"请输入\" v-model=\"currentSecurityItem.content.headerPrefix\"></i-input>\r\n </i-form-item>\r\n <i-form-item class=\"security-content-form-item oauth2-form-item grant-type-item\">\r\n <u-tips-form-label slot=\"label\" :labelTitle=\"'Grant Type'\" tips=\"认证类型\" label-colon></u-tips-form-label>\r\n <i-select v-model=\"currentSecurityItem.content.grantType\" class=\"diy-select\">\r\n <i-option v-for=\"item in grantTypeList\" :key=\"item.name\" :value=\"item.name\"> {{item.text}} </i-option>\r\n </i-select>\r\n </i-form-item>\r\n <i-form-item class=\"security-content-form-item oauth2-form-item\">\r\n <u-tips-form-label slot=\"label\" :labelTitle=\"'Access Token Url'\" tips=\"获取token的httpurl\" label-colon></u-tips-form-label>\r\n <i-input class=\"diy-input\" placeholder=\"请输入\" v-model=\"currentSecurityItem.content.tokenUrl\"></i-input>\r\n </i-form-item>\r\n <i-form-item class=\"security-content-form-item oauth2-form-item\">\r\n <u-tips-form-label slot=\"label\" :labelTitle=\"'TokenPath'\" tips=\"获取响应结果的token路径\" label-colon></u-tips-form-label>\r\n <i-input class=\"diy-input\" placeholder=\"请输入\" v-model=\"currentSecurityItem.content.tokenPath\"></i-input>\r\n </i-form-item>\r\n <i-form-item class=\"security-content-form-item oauth2-form-item\" label=\"Client ID\">\r\n <i-input class=\"diy-input\" placeholder=\"请输入\" v-model=\"currentSecurityItem.content.clientId\"></i-input>\r\n </i-form-item>\r\n <i-form-item class=\"security-content-form-item oauth2-form-item\" label=\"Client Secret\">\r\n <i-input class=\"diy-input\" placeholder=\"请输入\" v-model=\"currentSecurityItem.content.clientSecret\"></i-input>\r\n </i-form-item>\r\n <template v-if=\"currentSecurityItem.content.grantType === 'password'\">\r\n <i-form-item class=\"security-content-form-item oauth2-form-item\" label=\"username\">\r\n <i-input class=\"diy-input\" placeholder=\"请输入\" v-model=\"currentSecurityItem.content.username\"></i-input>\r\n </i-form-item>\r\n <i-form-item class=\"security-content-form-item oauth2-form-item\" label=\"password\">\r\n <i-input class=\"diy-input\" placeholder=\"请输入\" v-model=\"currentSecurityItem.content.password\" type=\"password\" password></i-input>\r\n </i-form-item>\r\n </template>\r\n <i-form-item class=\"security-content-form-item oauth2-form-item\">\r\n <u-tips-form-label slot=\"label\" :labelTitle=\"'Scope'\" tips=\"访问请求的范围,它可能有多个空格分隔的值\" label-colon></u-tips-form-label>\r\n <i-input class=\"diy-input\" placeholder=\"请输入\" v-model=\"currentSecurityItem.content.scope\"></i-input>\r\n </i-form-item>\r\n </template>\r\n <template v-if=\"currentSecurityItem.type === 'GROOVY_SCRIPT'\">\r\n <i-form-item class=\"security-content-form-item script-area-item\" label=\"授权脚本\">\r\n <div class=\"script-label\" slot=\"label\">\r\n <i-icon class=\"help-icon\" type=\"md-alert\" @click=\"showScriptDoc\" title=\"帮助文档\"> </i-icon>\r\n <span>授权脚本:</span>\r\n </div>\r\n <u-editor\r\n class=\"editor\"\r\n :model.sync=\"currentSecurityItem.scriptContent\"\r\n :diyKeywordList=\"diyKeywordList\"\r\n lang=\"groovy\"\r\n >\r\n </u-editor>\r\n </i-form-item>\r\n </template>\r\n </i-form>\r\n </div>\r\n </div>\r\n </main>\r\n\r\n <footer slot=\"footer\">\r\n <template>\r\n <i-button class=\"diy-btn-default\" @click=\"onCancel\">取消</i-button>\r\n <i-button type=\"primary\" class=\"diy-btn-primary\" @click=\"onSave\">保存</i-button>\r\n </template>\r\n </footer>\r\n <u-doc-modal class=\"script-doc-modal\" v-model=\"scriptDocShow\" :doc=\"scriptDoc\"></u-doc-modal>\r\n</i-modal>\r\n"
|
|
848
|
+
module.exports = "<i-modal draggable sticky reset-drag-position :mask-closable=\"false\" v-model=\"show\" width=\"1000\" class=\"u-security-modal diy-modal\" transfer>\n <header slot=\"header\">授权认证</header>\n <main class=\"security-content\">\n <div class=\"left\">\n <div class=\"left-title\">\n <div class=\"left-title-text\">授权列表</div>\n <i class=\"api-icon icon-add\" @click=\"onAddItem\"></i>\n </div>\n <div class=\"left-content\">\n <i-input class=\"diy-input search-input\" v-model=\"keyword\" placeholder=\"输入关键字查询\" @on-change=\"onFilter\">\n <template #prefix>\n <i-icon type=\"ios-search\"/>\n </template>\n </i-input>\n <div class=\"security-list\">\n <div class=\"security-list-item\"\n :class=\"currentSecurityItem.id === item.id ? 'security-list-item-active' : ''\"\n v-for=\"(item,index) in securityList\"\n :key=\"item.id || index\"\n @click=\"onSelectSecurityItem(item)\"\n >\n <div class=\"security-list-item-name\">\n <i class=\"iconfont icon-shouquan1\"></i>\n <div class=\"security-list-item-text\" :class=\"currentSecurityItem.id === item.id ? 'security-list-item-text-active' : ''\">{{ item.name || \"新授权\" }}</div>\n </div>\n <i-poptip confirm title=\"确认删除这条数据吗?\" transfer placement=\"top-end\" @on-ok=\"onDelete(item)\">\n <i class=\"iconfont icon-delete\"></i>\n </i-poptip>\n<!-- <i class=\"iconfont icon-delete\" @click.stop=\"onDelete(item)\"></i>-->\n </div>\n </div>\n </div>\n </div>\n <div class=\"right\">\n <div class=\"right-title\">授权内容</div>\n <div class=\"right-content\">\n <i-form class=\"security-content-form\" label-colon v-if=\"isEmpty\" :model=\"currentSecurityItem\">\n <template v-if=\"currentSecurityItem.type\">\n <i-form-item class=\"security-content-form-item\" :class=\"currentSecurityItem.type === 'OAuth2' ? 'oauth2-form-item' : ''\" label=\"授权名称\" required>\n <i-input class=\"diy-input\" placeholder=\"请输入\" v-model=\"currentSecurityItem.name\"></i-input>\n </i-form-item>\n <i-form-item class=\"security-content-form-item\" :class=\"currentSecurityItem.type === 'OAuth2' ? 'oauth2-form-item' : ''\" label=\"授权类型\" required>\n <i-select class=\"diy-select\" v-model=\"currentSecurityItem.type\">\n <i-option v-for=\"(item,index) in securityTypeList\" :value=\"item.name\" :key=\"index\">{{ item.text }}</i-option>\n </i-select>\n </i-form-item>\n </template>\n <template v-if=\"currentSecurityItem.type && currentSecurityItem.type !== 'GROOVY_SCRIPT'\">\n <i-form-item class=\"security-content-form-item\" :class=\"currentSecurityItem.type === 'OAuth2' ? 'oauth2-form-item' : ''\" label=\"存储位置\">\n <i-select class=\"diy-select\" v-model=\"currentSecurityItem.location\">\n <i-option v-for=\"(item,index) in tokenLocationTypeList\" :value=\"item.name\" :key=\"item.name\">{{ item.text }}</i-option>\n </i-select>\n </i-form-item>\n <i-form-item class=\"security-content-form-item\" :class=\"currentSecurityItem.type === 'OAuth2' ? 'oauth2-form-item' : ''\" label=\"存储键值\">\n <i-input class=\"diy-input\" placeholder=\"请输入\" v-model=\"currentSecurityItem.locationKey\"></i-input>\n </i-form-item>\n </template>\n <template v-if=\"currentSecurityItem.type === 'Api_Key'\">\n <i-form-item class=\"security-content-form-item\" label=\"key\">\n <i-input class=\"diy-input\" placeholder=\"请输入\" v-model=\"currentSecurityItem.content.key\"></i-input>\n </i-form-item>\n </template>\n <template v-if=\"currentSecurityItem.type === 'Base_Auth'\">\n <i-form-item class=\"security-content-form-item\" label=\"username\">\n <i-input class=\"diy-input\" placeholder=\"请输入\" v-model=\"currentSecurityItem.content.username\"></i-input>\n </i-form-item>\n <i-form-item class=\"security-content-form-item\" label=\"password\">\n <i-input class=\"diy-password-input diy-input\" placeholder=\"请输入\" v-model=\"currentSecurityItem.content.password\" type=\"password\" password></i-input>\n </i-form-item>\n </template>\n <template v-if=\"currentSecurityItem.type === 'OAuth2'\">\n <i-form-item class=\"security-content-form-item oauth2-form-item\">\n <u-tips-form-label slot=\"label\" :labelTitle=\"'Header Prefix'\" tips=\"token前缀 例如 Bearer\" label-colon></u-tips-form-label>\n <i-input class=\"diy-input\" placeholder=\"请输入\" v-model=\"currentSecurityItem.content.headerPrefix\"></i-input>\n </i-form-item>\n <i-form-item class=\"security-content-form-item oauth2-form-item grant-type-item\">\n <u-tips-form-label slot=\"label\" :labelTitle=\"'Grant Type'\" tips=\"认证类型\" label-colon></u-tips-form-label>\n <i-select v-model=\"currentSecurityItem.content.grantType\" class=\"diy-select\">\n <i-option v-for=\"item in grantTypeList\" :key=\"item.name\" :value=\"item.name\"> {{item.text}} </i-option>\n </i-select>\n </i-form-item>\n <i-form-item class=\"security-content-form-item oauth2-form-item\">\n <u-tips-form-label slot=\"label\" :labelTitle=\"'Access Token Url'\" tips=\"获取token的httpurl\" label-colon></u-tips-form-label>\n <i-input class=\"diy-input\" placeholder=\"请输入\" v-model=\"currentSecurityItem.content.tokenUrl\"></i-input>\n </i-form-item>\n <i-form-item class=\"security-content-form-item oauth2-form-item\">\n <u-tips-form-label slot=\"label\" :labelTitle=\"'TokenPath'\" tips=\"获取响应结果的token路径\" label-colon></u-tips-form-label>\n <i-input class=\"diy-input\" placeholder=\"请输入\" v-model=\"currentSecurityItem.content.tokenPath\"></i-input>\n </i-form-item>\n <i-form-item class=\"security-content-form-item oauth2-form-item\" label=\"Client ID\">\n <i-input class=\"diy-input\" placeholder=\"请输入\" v-model=\"currentSecurityItem.content.clientId\"></i-input>\n </i-form-item>\n <i-form-item class=\"security-content-form-item oauth2-form-item\" label=\"Client Secret\">\n <i-input class=\"diy-input\" placeholder=\"请输入\" v-model=\"currentSecurityItem.content.clientSecret\"></i-input>\n </i-form-item>\n <template v-if=\"currentSecurityItem.content.grantType === 'password'\">\n <i-form-item class=\"security-content-form-item oauth2-form-item\" label=\"username\">\n <i-input class=\"diy-input\" placeholder=\"请输入\" v-model=\"currentSecurityItem.content.username\"></i-input>\n </i-form-item>\n <i-form-item class=\"security-content-form-item oauth2-form-item\" label=\"password\">\n <i-input class=\"diy-input\" placeholder=\"请输入\" v-model=\"currentSecurityItem.content.password\" type=\"password\" password></i-input>\n </i-form-item>\n </template>\n <i-form-item class=\"security-content-form-item oauth2-form-item\">\n <u-tips-form-label slot=\"label\" :labelTitle=\"'Scope'\" tips=\"访问请求的范围,它可能有多个空格分隔的值\" label-colon></u-tips-form-label>\n <i-input class=\"diy-input\" placeholder=\"请输入\" v-model=\"currentSecurityItem.content.scope\"></i-input>\n </i-form-item>\n </template>\n <template v-if=\"currentSecurityItem.type === 'GROOVY_SCRIPT'\">\n <i-form-item class=\"security-content-form-item script-area-item\" label=\"授权脚本\">\n <div class=\"script-label\" slot=\"label\">\n <i-icon class=\"help-icon\" type=\"md-alert\" @click=\"showScriptDoc\" title=\"帮助文档\"> </i-icon>\n <span>授权脚本:</span>\n </div>\n <u-editor\n class=\"editor\"\n :model.sync=\"currentSecurityItem.scriptContent\"\n :diyKeywordList=\"diyKeywordList\"\n lang=\"groovy\"\n >\n </u-editor>\n </i-form-item>\n </template>\n </i-form>\n </div>\n </div>\n </main>\n\n <footer slot=\"footer\">\n <template>\n <i-button class=\"diy-btn-default\" @click=\"onCancel\">取消</i-button>\n <i-button type=\"primary\" class=\"diy-btn-primary\" @click=\"onSave\">保存</i-button>\n </template>\n </footer>\n <u-doc-modal class=\"script-doc-modal\" v-model=\"scriptDocShow\" :doc=\"scriptDoc\"></u-doc-modal>\n</i-modal>\n"
|
|
667
849
|
|
|
668
850
|
/***/ }),
|
|
669
851
|
|
|
@@ -687,7 +869,7 @@ module.exports = function (key) {
|
|
|
687
869
|
/***/ "3de4":
|
|
688
870
|
/***/ (function(module, exports) {
|
|
689
871
|
|
|
690
|
-
module.exports = "<article class=\"security-setting-v2\">\
|
|
872
|
+
module.exports = "<article class=\"security-setting-v2\">\n <div class=\"left\">\n <i-form class=\"type-form diy-form\" label-colon>\n <i-form-item label=\"选择授权\">\n <i-select ref=\"addSecuritySelect\" class=\"diy-select add-security-select\" v-model=\"currentSecurityItemId\" @on-change=\"onChangeSecurityItem($event)\" @on-clear=\"onClear\" clearable>\n <i-option v-for=\"item in securityList\" :key=\"item.id\" :value=\"item.id\">{{ item.name }}</i-option>\n <i-option class=\"add-security-item\" value=\"''\">\n <div class=\"add-security-item-content\" @click.stop=\"onAddSecurityItem\">\n <i class=\"api-icon icon-add\"></i>\n <span>新建授权</span>\n </div>\n </i-option>\n </i-select>\n </i-form-item>\n <i-form-item label=\"授权类型\">\n <span class=\"security-type\">{{ currentSecurityItem._type? currentSecurityItem._type.text : \"暂无\" }}</span>\n </i-form-item>\n </i-form>\n </div>\n <div class=\"right\">\n <div class=\"right-title\">授权详情</div>\n <div class=\"right-content\">\n <div class=\"no-data\" v-if=\"!currentSecurityItem.type\">\n <div class=\"no-data-bg\"></div>\n <div class=\"no-data-text\">请在左侧下拉框中选择已建立授权</div>\n </div>\n <div class=\"script\" v-if=\"currentSecurityItem.type === 'GROOVY_SCRIPT'\">\n <i-input class=\"diy-input script-area\" type=\"textarea\" v-model=\"currentSecurityItem.scriptContent\" :readonly=\"true\"></i-input>\n </div>\n <div class=\"api-key\" v-if=\"currentSecurityItem.type === 'Api_Key'\">\n <i-form class=\"oauth-2-form diy-form\" label-colon>\n <i-form-item label=\"存储位置\">\n <span class=\"form-item-text\">{{ currentSecurityItem._location ? currentSecurityItem._location.text : \"\"}}</span>\n </i-form-item>\n <i-form-item label=\"存储键值\">\n <span class=\"form-item-text\">{{ currentSecurityItem.locationKey }}</span>\n </i-form-item>\n <i-form-item label=\"key\">\n <span class=\"form-item-text\">{{ currentSecurityItem.content.key }}</span>\n </i-form-item>\n </i-form>\n </div>\n <div class=\"base-auth\" v-if=\"currentSecurityItem.type === 'Base_Auth'\">\n <i-form class=\"oauth-2-form diy-form\" label-colon>\n <i-form-item label=\"存储位置\">\n <span class=\"form-item-text\">{{ currentSecurityItem._location ? currentSecurityItem._location.text : \"\" }}</span>\n </i-form-item>\n <i-form-item label=\"存储键值\">\n <span class=\"form-item-text\">{{ currentSecurityItem.locationKey }}</span>\n </i-form-item>\n <i-form-item label=\"username\">\n <span class=\"form-item-text\">{{ currentSecurityItem.content.username }}</span>\n </i-form-item>\n <i-form-item label=\"password\">\n <!-- <span class=\"form-item-text\">{{ \"·\" }}</span>-->\n <!-- <i-input class=\"diy-input\" v-model=\"model.password\" type=\"password\" password placeholder=\"请输入\"> </i-input>-->\n <i-input class=\"diy-password-input diy-input\" :value=\"currentSecurityItem.content.password\" type=\"password\"></i-input>\n </i-form-item>\n </i-form>\n </div>\n <div class=\"oauth-2\" v-if=\"currentSecurityItem.type === 'OAuth2'\">\n <i-form class=\"oauth-2-form diy-form\" label-colon>\n <i-form-item label=\"存储位置\">\n <span class=\"form-item-text\">{{ currentSecurityItem._location ? currentSecurityItem._location.text : \"\" }}</span>\n </i-form-item>\n <i-form-item label=\"存储键值\">\n <span class=\"form-item-text\">{{ currentSecurityItem.locationKey }}</span>\n </i-form-item>\n <i-form-item>\n <u-tips-form-label slot=\"label\" :labelTitle=\"'Header Prefix'\" tips=\"token前缀 例如 Bearer\" label-colon></u-tips-form-label>\n <span class=\"form-item-text\">{{ currentSecurityItem.content.headerPrefix }}</span>\n </i-form-item>\n <i-form-item class=\"grant-type-item\">\n <u-tips-form-label slot=\"label\" :labelTitle=\"'Grant Type'\" tips=\"认证类型\" label-colon></u-tips-form-label>\n <span class=\"form-item-text\">{{ findGrantTypeText(currentSecurityItem.content.grantType) }}</span>\n </i-form-item>\n <i-form-item>\n <u-tips-form-label slot=\"label\" :labelTitle=\"'Access Token Url'\" tips=\"获取token的httpUrl\" label-colon></u-tips-form-label>\n <span class=\"form-item-text\">{{ currentSecurityItem.content.tokenUrl }}</span>\n </i-form-item>\n <i-form-item>\n <u-tips-form-label slot=\"label\" :labelTitle=\"'TokenPath'\" tips=\"获取响应结果的token路径\" label-colon></u-tips-form-label>\n <span class=\"form-item-text\">{{ currentSecurityItem.content.tokenPath }}</span>\n </i-form-item>\n <i-form-item label=\"Client ID\">\n <span class=\"form-item-text\">{{ currentSecurityItem.content.clientId }}</span>\n </i-form-item>\n <i-form-item label=\"Client Secret\">\n <span class=\"form-item-text\">{{ currentSecurityItem.content.clientSecret }}</span>\n </i-form-item>\n <template v-if=\"currentSecurityItem.content.grantType === 'password'\">\n <i-form-item class=\"security-content-form-item\" label=\"username\">\n <span class=\"form-item-text\">{{ currentSecurityItem.content.username }}</span>\n </i-form-item>\n <i-form-item class=\"security-content-form-item\" label=\"password\">\n <i-input class=\"diy-password-input diy-input\" :value=\"currentSecurityItem.content.password\" type=\"password\"></i-input>\n </i-form-item>\n </template>\n <i-form-item label=\"Scope\">\n <u-tips-form-label slot=\"label\" :labelTitle=\"'Scope'\" tips=\"访问请求的范围,它可能有多个空格分隔的值\" label-colon></u-tips-form-label>\n <span class=\"form-item-text\">{{ currentSecurityItem.content.scope }}</span>\n </i-form-item>\n </i-form>\n </div>\n </div>\n </div>\n <u-security-modal v-model=\"showSecurity\" :projectID=\"projectID\" :isAdd=\"isAdd\"></u-security-modal>\n</article>\n"
|
|
691
873
|
|
|
692
874
|
/***/ }),
|
|
693
875
|
|
|
@@ -734,7 +916,7 @@ module.exports = require("lodash.debounce");
|
|
|
734
916
|
/***/ "45bb":
|
|
735
917
|
/***/ (function(module, exports) {
|
|
736
918
|
|
|
737
|
-
module.exports = "<i-modal draggable sticky reset-drag-position :mask-closable=\"false\" v-model=\"show\" width=\"880\" class=\"u-data-model-doc-modal diy-modal\" transfer>\
|
|
919
|
+
module.exports = "<i-modal draggable sticky reset-drag-position :mask-closable=\"false\" v-model=\"show\" width=\"880\" class=\"u-data-model-doc-modal diy-modal\" transfer>\n <header slot=\"header\">查看接口文档</header>\n <main>\n <div class=\"v-mavon-container\">\n <!-- startprint -->\n <mavon-editor :subfield=\"false\" :toolbars=\"toolbars\" :value=\"doc\" defaultOpen=\"preview\" @change=\"onChange\">\n <template slot=\"left-toolbar-before\">\n <i-dropdown placement=\"right-start\" @on-click=\"onMenuClick\">\n <span class=\"op-icon fa fa-mavon-floppy-o\"></span>\n <i-dropdown-menu slot=\"list\">\n <i-dropdown-item name=\"pdf\">保存为pdf</i-dropdown-item>\n <i-dropdown-item name=\"html\">保存为html</i-dropdown-item>\n </i-dropdown-menu>\n </i-dropdown>\n </template>\n </mavon-editor>\n <!-- endprint -->\n <iframe id=\"printf\" src=\"\" width=\"0\" height=\"0\" frameborder=\"0\"></iframe>\n </div>\n </main>\n <footer slot=\"footer\">\n <i-button type=\"primary\" class=\"diy-btn-primary\" @click=\"onOk\">关闭</i-button>\n </footer>\n</i-modal>\n"
|
|
738
920
|
|
|
739
921
|
/***/ }),
|
|
740
922
|
|
|
@@ -748,14 +930,35 @@ module.exports = "<i-modal draggable sticky reset-drag-position :mask-closable=\
|
|
|
748
930
|
/***/ "46d3":
|
|
749
931
|
/***/ (function(module, exports) {
|
|
750
932
|
|
|
751
|
-
module.exports = "<article class=\"u-common-tree u-type-tree\">\
|
|
933
|
+
module.exports = "<article class=\"u-common-tree u-type-tree\">\n <slot name=\"header\">\n <header slot=\"header\" class=\"tree-header\">\n <span>合并模型列表</span>\n <i-upload\n class=\"action-item\"\n :action=\"uploadAction\"\n accept=\".json\"\n :headers=\"headers\"\n :show-upload-list=\"false\"\n :format=\"['json']\"\n :on-success=\"onSuccess\"\n :before-upload=\"onBeforeUpload\"\n :on-format-error=\"onFormatError\"\n >\n <i title=\"导入\" class=\"iconfont icon-import\"></i>\n </i-upload>\n <i\n @click=\"onModelExport(null)\"\n :class=\"{'disabled': !data.length}\"\n class=\"iconfont icon-export\"\n title=\"导出\"\n ></i>\n <i @click.stop=\"onAddTreeNode\" title=\"新增分组\" class=\"iconfont icon-add-folder\"></i>\n </header>\n </slot>\n <section class=\"content\">\n <i-input class=\"search-input diy-input\" :placeholder=\"placeholder\" @on-change=\"onFilter\" v-model=\"keyword\" >\n <i class=\"iconfont icon-chaxun\" slot=\"prefix\"></i>\n </i-input>\n <i-tree :data=\"renderData\" :render=\"renderContent\" @on-toggle-expand=\"onToggleExpand\"></i-tree>\n </section>\n <u-add-node :data=\"tempNode\" :categories=\"data\" v-model=\"showAddTreeNodeModal\" @on-refresh=\"queryTreeData\"></u-add-node>\n <i-modal draggable sticky reset-drag-position v-model=\"showImportModal\" class=\"diy-modal duplicate-import-modal\" width=\"800\" :mask-closable=\"false\" title=\"导入已合并接口\">\n <div class=\"import-title\">上传成功</div>\n <div class=\"import-label\">{{ `上传共${importResult.total}条合并接口数据,其中${importResult.total - importResult.duplicateNum}条可成功导入。` }}</div>\n <div class=\"import-label\">{{ `发现以下${importResult.duplicateNum}条接口数据存在编码重复(编码已存在),将不会被导入。` }}</div>\n <i-table class=\"diy-table import-modal-table\" :columns=\"columns\" :data=\"importResult.items\">\n </i-table>\n <footer slot=\"footer\">\n <i-button class=\"diy-btn-primary\" type=\"primary\" @click=\"onImportConfirm\">确定</i-button>\n <i-button class=\"diy-btn-default\" @click=\"onImportCancel\">取消</i-button>\n </footer>\n </i-modal>\n</article>\n"
|
|
934
|
+
|
|
935
|
+
/***/ }),
|
|
936
|
+
|
|
937
|
+
/***/ "46df":
|
|
938
|
+
/***/ (function(module, exports, __webpack_require__) {
|
|
939
|
+
|
|
940
|
+
"use strict";
|
|
941
|
+
|
|
942
|
+
var arrayToReversed = __webpack_require__("9417");
|
|
943
|
+
var ArrayBufferViewCore = __webpack_require__("6a10");
|
|
944
|
+
|
|
945
|
+
var aTypedArray = ArrayBufferViewCore.aTypedArray;
|
|
946
|
+
var exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;
|
|
947
|
+
var getTypedArrayConstructor = ArrayBufferViewCore.getTypedArrayConstructor;
|
|
948
|
+
|
|
949
|
+
// `%TypedArray%.prototype.toReversed` method
|
|
950
|
+
// https://tc39.es/ecma262/#sec-%typedarray%.prototype.toreversed
|
|
951
|
+
exportTypedArrayMethod('toReversed', function toReversed() {
|
|
952
|
+
return arrayToReversed(aTypedArray(this), getTypedArrayConstructor(this));
|
|
953
|
+
});
|
|
954
|
+
|
|
752
955
|
|
|
753
956
|
/***/ }),
|
|
754
957
|
|
|
755
958
|
/***/ "470f":
|
|
756
959
|
/***/ (function(module, exports) {
|
|
757
960
|
|
|
758
|
-
module.exports = "<i-modal draggable sticky reset-drag-position v-model=\"value\" class=\"diy-modal global-variable-modal\" :mask-closable=\"false\" title=\"全局参数设置\">\
|
|
961
|
+
module.exports = "<i-modal draggable sticky reset-drag-position v-model=\"value\" class=\"diy-modal global-variable-modal\" :mask-closable=\"false\" title=\"全局参数设置\">\n <header class=\"types\">\n <div class=\"tag\" @click=\"onCheckTpye(item)\" :class=\"{'active': item.name === active.name}\" v-for=\"(item,index) in typeList\" :key=\"item.name\">\n <span>{{item.title }}</span>\n </div>\n </header>\n <main class=\"content\">\n <i-button type=\"primary\" ghost class=\"diy-btn-primary\"> <i class=\"api-icon icon-add\"></i>新增参数</i-button>\n <i-table :columns=\"columns\" :data=\"dataList\" class=\"diy-table\" height=\"400\">\n <template slot-scope=\"{ row,index }\" slot=\"name\">\n <i-input class=\"diy-input\" placeholder=\"输入参数名称\" v-model=\"dataList[index].name\"></i-input>\n </template>\n <template slot-scope=\"{ row,index }\" slot=\"value\">\n <i-input class=\"diy-input\" placeholder=\"输入参数值\" v-model=\"dataList[index].value\"></i-input>\n </template>\n <template slot-scope=\"{ row,index }\" slot=\"required\">\n <i-switch v-model=\"dataList[index].required\">\n <span slot=\"open\">是</span>\n <span slot=\"close\">否</span>\n </i-switch>\n </template>\n <template slot-scope=\"{ row,index }\" slot=\"remark\">\n <i-input class=\"diy-input\" placeholder=\"输入备注\" v-model=\"dataList[index].remark\"></i-input>\n </template>\n <template slot-scope=\"{ row,index }\" slot=\"action\">\n <span class=\"action-btn delete\" @click=\"onDelete(dataList,index)\">删除</span>\n <span class=\"action-btn\" @click=\"onUp(dataList,index)\">上移</span>\n <span class=\"action-btn\" @click=\"onDown(dataList,index)\">下移</span>\n <span v-if=\"index !== 0\" class=\"action-btn\" @click=\"onTop(dataList,index)\">置顶</span>\n <span v-if=\"index < dataList.length - 1\" class=\"action-btn\" @click=\"onBottom(dataList,index)\">置底</span>\n </template>\n </i-table>\n </main>\n <slot slot=\"footer\" name=\"footer\"> </slot>\n</i-modal>\n"
|
|
759
962
|
|
|
760
963
|
/***/ }),
|
|
761
964
|
|
|
@@ -798,7 +1001,7 @@ module.exports = !DESCRIPTORS && !fails(function () {
|
|
|
798
1001
|
/***/ "4935":
|
|
799
1002
|
/***/ (function(module, exports) {
|
|
800
1003
|
|
|
801
|
-
module.exports = "<i-modal draggable sticky reset-drag-position :mask-closable=\"false\" v-model=\"show\" width=\"1280\" class=\"u-data-model-modal diy-modal\" transfer>\
|
|
1004
|
+
module.exports = "<i-modal draggable sticky reset-drag-position :mask-closable=\"false\" v-model=\"show\" width=\"1280\" class=\"u-data-model-modal diy-modal\" transfer>\n <header slot=\"header\">添加数据模型</header>\n <main>\n <i-split v-model=\"splitHorizontal\">\n <section slot=\"left\" class=\"card-panel card-panel-no-right-border\">\n <div class=\"card-panel-header\">\n <span>选择列表</span>\n </div>\n <div class=\"card-panel-main\">\n <u-tree :commonTaskCategoryID=\"taskCategoryID\" :initSelectItem=\"initNode\" :prop-data=\"treeData\" :isTreeList=\"true\" @on-select=\"onSelect\" />\n </div>\n </section>\n <section slot=\"right\" class=\"right-content\">\n <i-split v-model=\"splitVertical\" mode=\"vertical\" max=\"600\">\n <section slot=\"top\" class=\"card-panel card-panel-no-bottom-border\">\n <div class=\"card-panel-header\">\n <span>选择模型</span>\n </div>\n <div class=\"card-panel-main\">\n <u-data-model-list\n :data=\"tableData\"\n :paging.sync=\"paging\"\n @on-search=\"onSearch\"\n @on-page-index-change=\"onPageIndexChange\"\n @on-page-size-change=\"onPageSizeChange\"\n @on-selection-change=\"onSelectionChange\"\n @on-delete-refresh=\"getTableData\"\n @on-row-click=\"onRowClick\"\n >\n </u-data-model-list>\n </div>\n </section>\n <section slot=\"bottom\" :class=\"['card-panel', collapse ? 'card-panel-no-bottom-border' : '']\">\n <div class=\"card-panel-header\">\n <span>已选({{checkedLength}})</span>\n <span>\n <i-poptip confirm title=\"确定要清空已选中的数据吗?\" transfer placement=\"top-end\" @on-ok=\"onBatchDelete\">\n <span class=\"action-text\">\n <i class=\"iconfont icon-delete\"></i>\n <span>清空</span>\n </span>\n </i-poptip>\n <span class=\"action-text collapse-text\" @click=\"onClickCollapse\">\n <span>{{collapse ? \"展开\" : \"收起\"}}</span>\n <i class=\"ivu-icon ivu-icon-ios-arrow-forward\" :class=\"{'icon-arrow-collapse':collapse}\"></i>\n </span>\n </span>\n </div>\n <div class=\"card-panel-main\">\n <template v-if=\"checkedData&&checkedData.length\">\n <i-table class=\"diy-table\" :columns=\"columns\" :data=\"checkedData\">\n <template #operates=\"{row,index}\">\n <div class=\"row-actions\">\n <i-poptip confirm transfer title=\"确认要删除这条数据吗?\" @on-ok=\"onDelete(row)\">\n <i title=\"删除\" class=\"iconfont icon-delete\"></i>\n </i-poptip>\n </div>\n </template>\n </i-table>\n </template>\n <template v-else>\n <div class=\"table-no-data\">\n <div class=\"table-no-data-bg\"></div>\n <div class=\"table-no-data-text\">暂无数据</div>\n </div>\n </template>\n </div>\n </section>\n </i-split>\n </section>\n </i-split>\n <i-spin fix v-if=\"isLoading\">\n <i class=\"spin-icon-load ivu-icon\"></i>\n </i-spin>\n </main>\n <footer slot=\"footer\">\n <i-button type=\"primary\" class=\"diy-btn-primary\" @click=\"onSave\">确定</i-button>\n <i-button class=\"diy-btn-default\" @click=\"onCancel\">取消</i-button>\n </footer>\n</i-modal>\n"
|
|
802
1005
|
|
|
803
1006
|
/***/ }),
|
|
804
1007
|
|
|
@@ -962,7 +1165,7 @@ module.exports = fails(function () {
|
|
|
962
1165
|
/***/ "6255":
|
|
963
1166
|
/***/ (function(module, exports) {
|
|
964
1167
|
|
|
965
|
-
module.exports = "<i-modal\
|
|
1168
|
+
module.exports = "<i-modal\n draggable\n sticky\n reset-drag-position\n v-model=\"value\"\n class=\"diy-modal\"\n :mask-closable=\"false\"\n :title=\"data.id ? '编辑项目': '新建项目'\"\n>\n <i-form :label-width=\"95\" class=\"diy-form\" label-colon>\n <i-form-item label=\"项目名称\" required>\n <i-input\n v-model.trim=\"data.name\"\n class=\"diy-input\"\n placeholder=\"请输入项目名称\"\n ></i-input>\n </i-form-item>\n <i-form-item label=\"项目描述\">\n <i-input\n class=\"diy-input\"\n type=\"textarea\"\n :rows=\"4\"\n v-model=\"data.description\"\n placeholder=\"请输入项目描述\"\n ></i-input>\n </i-form-item>\n </i-form>\n <slot slot=\"footer\" name=\"footer\"> </slot>\n</i-modal>\n"
|
|
966
1169
|
|
|
967
1170
|
/***/ }),
|
|
968
1171
|
|
|
@@ -1063,6 +1266,207 @@ if (params + '' !== 'a=2') {
|
|
|
1063
1266
|
}
|
|
1064
1267
|
|
|
1065
1268
|
|
|
1269
|
+
/***/ }),
|
|
1270
|
+
|
|
1271
|
+
/***/ "6a10":
|
|
1272
|
+
/***/ (function(module, exports, __webpack_require__) {
|
|
1273
|
+
|
|
1274
|
+
"use strict";
|
|
1275
|
+
|
|
1276
|
+
var NATIVE_ARRAY_BUFFER = __webpack_require__("f764");
|
|
1277
|
+
var DESCRIPTORS = __webpack_require__("e900");
|
|
1278
|
+
var global = __webpack_require__("bc85");
|
|
1279
|
+
var isCallable = __webpack_require__("ec2f");
|
|
1280
|
+
var isObject = __webpack_require__("8785");
|
|
1281
|
+
var hasOwn = __webpack_require__("d803");
|
|
1282
|
+
var classof = __webpack_require__("aaa6");
|
|
1283
|
+
var tryToString = __webpack_require__("1d6e");
|
|
1284
|
+
var createNonEnumerableProperty = __webpack_require__("9822");
|
|
1285
|
+
var defineBuiltIn = __webpack_require__("92d6");
|
|
1286
|
+
var defineBuiltInAccessor = __webpack_require__("889b");
|
|
1287
|
+
var isPrototypeOf = __webpack_require__("4cad");
|
|
1288
|
+
var getPrototypeOf = __webpack_require__("a54a");
|
|
1289
|
+
var setPrototypeOf = __webpack_require__("a2df");
|
|
1290
|
+
var wellKnownSymbol = __webpack_require__("fff8");
|
|
1291
|
+
var uid = __webpack_require__("a047");
|
|
1292
|
+
var InternalStateModule = __webpack_require__("fcc0");
|
|
1293
|
+
|
|
1294
|
+
var enforceInternalState = InternalStateModule.enforce;
|
|
1295
|
+
var getInternalState = InternalStateModule.get;
|
|
1296
|
+
var Int8Array = global.Int8Array;
|
|
1297
|
+
var Int8ArrayPrototype = Int8Array && Int8Array.prototype;
|
|
1298
|
+
var Uint8ClampedArray = global.Uint8ClampedArray;
|
|
1299
|
+
var Uint8ClampedArrayPrototype = Uint8ClampedArray && Uint8ClampedArray.prototype;
|
|
1300
|
+
var TypedArray = Int8Array && getPrototypeOf(Int8Array);
|
|
1301
|
+
var TypedArrayPrototype = Int8ArrayPrototype && getPrototypeOf(Int8ArrayPrototype);
|
|
1302
|
+
var ObjectPrototype = Object.prototype;
|
|
1303
|
+
var TypeError = global.TypeError;
|
|
1304
|
+
|
|
1305
|
+
var TO_STRING_TAG = wellKnownSymbol('toStringTag');
|
|
1306
|
+
var TYPED_ARRAY_TAG = uid('TYPED_ARRAY_TAG');
|
|
1307
|
+
var TYPED_ARRAY_CONSTRUCTOR = 'TypedArrayConstructor';
|
|
1308
|
+
// Fixing native typed arrays in Opera Presto crashes the browser, see #595
|
|
1309
|
+
var NATIVE_ARRAY_BUFFER_VIEWS = NATIVE_ARRAY_BUFFER && !!setPrototypeOf && classof(global.opera) !== 'Opera';
|
|
1310
|
+
var TYPED_ARRAY_TAG_REQUIRED = false;
|
|
1311
|
+
var NAME, Constructor, Prototype;
|
|
1312
|
+
|
|
1313
|
+
var TypedArrayConstructorsList = {
|
|
1314
|
+
Int8Array: 1,
|
|
1315
|
+
Uint8Array: 1,
|
|
1316
|
+
Uint8ClampedArray: 1,
|
|
1317
|
+
Int16Array: 2,
|
|
1318
|
+
Uint16Array: 2,
|
|
1319
|
+
Int32Array: 4,
|
|
1320
|
+
Uint32Array: 4,
|
|
1321
|
+
Float32Array: 4,
|
|
1322
|
+
Float64Array: 8
|
|
1323
|
+
};
|
|
1324
|
+
|
|
1325
|
+
var BigIntArrayConstructorsList = {
|
|
1326
|
+
BigInt64Array: 8,
|
|
1327
|
+
BigUint64Array: 8
|
|
1328
|
+
};
|
|
1329
|
+
|
|
1330
|
+
var isView = function isView(it) {
|
|
1331
|
+
if (!isObject(it)) return false;
|
|
1332
|
+
var klass = classof(it);
|
|
1333
|
+
return klass === 'DataView'
|
|
1334
|
+
|| hasOwn(TypedArrayConstructorsList, klass)
|
|
1335
|
+
|| hasOwn(BigIntArrayConstructorsList, klass);
|
|
1336
|
+
};
|
|
1337
|
+
|
|
1338
|
+
var getTypedArrayConstructor = function (it) {
|
|
1339
|
+
var proto = getPrototypeOf(it);
|
|
1340
|
+
if (!isObject(proto)) return;
|
|
1341
|
+
var state = getInternalState(proto);
|
|
1342
|
+
return (state && hasOwn(state, TYPED_ARRAY_CONSTRUCTOR)) ? state[TYPED_ARRAY_CONSTRUCTOR] : getTypedArrayConstructor(proto);
|
|
1343
|
+
};
|
|
1344
|
+
|
|
1345
|
+
var isTypedArray = function (it) {
|
|
1346
|
+
if (!isObject(it)) return false;
|
|
1347
|
+
var klass = classof(it);
|
|
1348
|
+
return hasOwn(TypedArrayConstructorsList, klass)
|
|
1349
|
+
|| hasOwn(BigIntArrayConstructorsList, klass);
|
|
1350
|
+
};
|
|
1351
|
+
|
|
1352
|
+
var aTypedArray = function (it) {
|
|
1353
|
+
if (isTypedArray(it)) return it;
|
|
1354
|
+
throw new TypeError('Target is not a typed array');
|
|
1355
|
+
};
|
|
1356
|
+
|
|
1357
|
+
var aTypedArrayConstructor = function (C) {
|
|
1358
|
+
if (isCallable(C) && (!setPrototypeOf || isPrototypeOf(TypedArray, C))) return C;
|
|
1359
|
+
throw new TypeError(tryToString(C) + ' is not a typed array constructor');
|
|
1360
|
+
};
|
|
1361
|
+
|
|
1362
|
+
var exportTypedArrayMethod = function (KEY, property, forced, options) {
|
|
1363
|
+
if (!DESCRIPTORS) return;
|
|
1364
|
+
if (forced) for (var ARRAY in TypedArrayConstructorsList) {
|
|
1365
|
+
var TypedArrayConstructor = global[ARRAY];
|
|
1366
|
+
if (TypedArrayConstructor && hasOwn(TypedArrayConstructor.prototype, KEY)) try {
|
|
1367
|
+
delete TypedArrayConstructor.prototype[KEY];
|
|
1368
|
+
} catch (error) {
|
|
1369
|
+
// old WebKit bug - some methods are non-configurable
|
|
1370
|
+
try {
|
|
1371
|
+
TypedArrayConstructor.prototype[KEY] = property;
|
|
1372
|
+
} catch (error2) { /* empty */ }
|
|
1373
|
+
}
|
|
1374
|
+
}
|
|
1375
|
+
if (!TypedArrayPrototype[KEY] || forced) {
|
|
1376
|
+
defineBuiltIn(TypedArrayPrototype, KEY, forced ? property
|
|
1377
|
+
: NATIVE_ARRAY_BUFFER_VIEWS && Int8ArrayPrototype[KEY] || property, options);
|
|
1378
|
+
}
|
|
1379
|
+
};
|
|
1380
|
+
|
|
1381
|
+
var exportTypedArrayStaticMethod = function (KEY, property, forced) {
|
|
1382
|
+
var ARRAY, TypedArrayConstructor;
|
|
1383
|
+
if (!DESCRIPTORS) return;
|
|
1384
|
+
if (setPrototypeOf) {
|
|
1385
|
+
if (forced) for (ARRAY in TypedArrayConstructorsList) {
|
|
1386
|
+
TypedArrayConstructor = global[ARRAY];
|
|
1387
|
+
if (TypedArrayConstructor && hasOwn(TypedArrayConstructor, KEY)) try {
|
|
1388
|
+
delete TypedArrayConstructor[KEY];
|
|
1389
|
+
} catch (error) { /* empty */ }
|
|
1390
|
+
}
|
|
1391
|
+
if (!TypedArray[KEY] || forced) {
|
|
1392
|
+
// V8 ~ Chrome 49-50 `%TypedArray%` methods are non-writable non-configurable
|
|
1393
|
+
try {
|
|
1394
|
+
return defineBuiltIn(TypedArray, KEY, forced ? property : NATIVE_ARRAY_BUFFER_VIEWS && TypedArray[KEY] || property);
|
|
1395
|
+
} catch (error) { /* empty */ }
|
|
1396
|
+
} else return;
|
|
1397
|
+
}
|
|
1398
|
+
for (ARRAY in TypedArrayConstructorsList) {
|
|
1399
|
+
TypedArrayConstructor = global[ARRAY];
|
|
1400
|
+
if (TypedArrayConstructor && (!TypedArrayConstructor[KEY] || forced)) {
|
|
1401
|
+
defineBuiltIn(TypedArrayConstructor, KEY, property);
|
|
1402
|
+
}
|
|
1403
|
+
}
|
|
1404
|
+
};
|
|
1405
|
+
|
|
1406
|
+
for (NAME in TypedArrayConstructorsList) {
|
|
1407
|
+
Constructor = global[NAME];
|
|
1408
|
+
Prototype = Constructor && Constructor.prototype;
|
|
1409
|
+
if (Prototype) enforceInternalState(Prototype)[TYPED_ARRAY_CONSTRUCTOR] = Constructor;
|
|
1410
|
+
else NATIVE_ARRAY_BUFFER_VIEWS = false;
|
|
1411
|
+
}
|
|
1412
|
+
|
|
1413
|
+
for (NAME in BigIntArrayConstructorsList) {
|
|
1414
|
+
Constructor = global[NAME];
|
|
1415
|
+
Prototype = Constructor && Constructor.prototype;
|
|
1416
|
+
if (Prototype) enforceInternalState(Prototype)[TYPED_ARRAY_CONSTRUCTOR] = Constructor;
|
|
1417
|
+
}
|
|
1418
|
+
|
|
1419
|
+
// WebKit bug - typed arrays constructors prototype is Object.prototype
|
|
1420
|
+
if (!NATIVE_ARRAY_BUFFER_VIEWS || !isCallable(TypedArray) || TypedArray === Function.prototype) {
|
|
1421
|
+
// eslint-disable-next-line no-shadow -- safe
|
|
1422
|
+
TypedArray = function TypedArray() {
|
|
1423
|
+
throw new TypeError('Incorrect invocation');
|
|
1424
|
+
};
|
|
1425
|
+
if (NATIVE_ARRAY_BUFFER_VIEWS) for (NAME in TypedArrayConstructorsList) {
|
|
1426
|
+
if (global[NAME]) setPrototypeOf(global[NAME], TypedArray);
|
|
1427
|
+
}
|
|
1428
|
+
}
|
|
1429
|
+
|
|
1430
|
+
if (!NATIVE_ARRAY_BUFFER_VIEWS || !TypedArrayPrototype || TypedArrayPrototype === ObjectPrototype) {
|
|
1431
|
+
TypedArrayPrototype = TypedArray.prototype;
|
|
1432
|
+
if (NATIVE_ARRAY_BUFFER_VIEWS) for (NAME in TypedArrayConstructorsList) {
|
|
1433
|
+
if (global[NAME]) setPrototypeOf(global[NAME].prototype, TypedArrayPrototype);
|
|
1434
|
+
}
|
|
1435
|
+
}
|
|
1436
|
+
|
|
1437
|
+
// WebKit bug - one more object in Uint8ClampedArray prototype chain
|
|
1438
|
+
if (NATIVE_ARRAY_BUFFER_VIEWS && getPrototypeOf(Uint8ClampedArrayPrototype) !== TypedArrayPrototype) {
|
|
1439
|
+
setPrototypeOf(Uint8ClampedArrayPrototype, TypedArrayPrototype);
|
|
1440
|
+
}
|
|
1441
|
+
|
|
1442
|
+
if (DESCRIPTORS && !hasOwn(TypedArrayPrototype, TO_STRING_TAG)) {
|
|
1443
|
+
TYPED_ARRAY_TAG_REQUIRED = true;
|
|
1444
|
+
defineBuiltInAccessor(TypedArrayPrototype, TO_STRING_TAG, {
|
|
1445
|
+
configurable: true,
|
|
1446
|
+
get: function () {
|
|
1447
|
+
return isObject(this) ? this[TYPED_ARRAY_TAG] : undefined;
|
|
1448
|
+
}
|
|
1449
|
+
});
|
|
1450
|
+
for (NAME in TypedArrayConstructorsList) if (global[NAME]) {
|
|
1451
|
+
createNonEnumerableProperty(global[NAME], TYPED_ARRAY_TAG, NAME);
|
|
1452
|
+
}
|
|
1453
|
+
}
|
|
1454
|
+
|
|
1455
|
+
module.exports = {
|
|
1456
|
+
NATIVE_ARRAY_BUFFER_VIEWS: NATIVE_ARRAY_BUFFER_VIEWS,
|
|
1457
|
+
TYPED_ARRAY_TAG: TYPED_ARRAY_TAG_REQUIRED && TYPED_ARRAY_TAG,
|
|
1458
|
+
aTypedArray: aTypedArray,
|
|
1459
|
+
aTypedArrayConstructor: aTypedArrayConstructor,
|
|
1460
|
+
exportTypedArrayMethod: exportTypedArrayMethod,
|
|
1461
|
+
exportTypedArrayStaticMethod: exportTypedArrayStaticMethod,
|
|
1462
|
+
getTypedArrayConstructor: getTypedArrayConstructor,
|
|
1463
|
+
isView: isView,
|
|
1464
|
+
isTypedArray: isTypedArray,
|
|
1465
|
+
TypedArray: TypedArray,
|
|
1466
|
+
TypedArrayPrototype: TypedArrayPrototype
|
|
1467
|
+
};
|
|
1468
|
+
|
|
1469
|
+
|
|
1066
1470
|
/***/ }),
|
|
1067
1471
|
|
|
1068
1472
|
/***/ "6a6c":
|
|
@@ -1080,12 +1484,64 @@ test[TO_STRING_TAG] = 'z';
|
|
|
1080
1484
|
module.exports = String(test) === '[object z]';
|
|
1081
1485
|
|
|
1082
1486
|
|
|
1487
|
+
/***/ }),
|
|
1488
|
+
|
|
1489
|
+
/***/ "6bf0":
|
|
1490
|
+
/***/ (function(module, exports, __webpack_require__) {
|
|
1491
|
+
|
|
1492
|
+
"use strict";
|
|
1493
|
+
|
|
1494
|
+
var global = __webpack_require__("bc85");
|
|
1495
|
+
var call = __webpack_require__("a95a");
|
|
1496
|
+
var ArrayBufferViewCore = __webpack_require__("6a10");
|
|
1497
|
+
var lengthOfArrayLike = __webpack_require__("d631");
|
|
1498
|
+
var toOffset = __webpack_require__("16bf");
|
|
1499
|
+
var toIndexedObject = __webpack_require__("e614");
|
|
1500
|
+
var fails = __webpack_require__("10a7");
|
|
1501
|
+
|
|
1502
|
+
var RangeError = global.RangeError;
|
|
1503
|
+
var Int8Array = global.Int8Array;
|
|
1504
|
+
var Int8ArrayPrototype = Int8Array && Int8Array.prototype;
|
|
1505
|
+
var $set = Int8ArrayPrototype && Int8ArrayPrototype.set;
|
|
1506
|
+
var aTypedArray = ArrayBufferViewCore.aTypedArray;
|
|
1507
|
+
var exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;
|
|
1508
|
+
|
|
1509
|
+
var WORKS_WITH_OBJECTS_AND_GENERIC_ON_TYPED_ARRAYS = !fails(function () {
|
|
1510
|
+
// eslint-disable-next-line es/no-typed-arrays -- required for testing
|
|
1511
|
+
var array = new Uint8ClampedArray(2);
|
|
1512
|
+
call($set, array, { length: 1, 0: 3 }, 1);
|
|
1513
|
+
return array[1] !== 3;
|
|
1514
|
+
});
|
|
1515
|
+
|
|
1516
|
+
// https://bugs.chromium.org/p/v8/issues/detail?id=11294 and other
|
|
1517
|
+
var TO_OBJECT_BUG = WORKS_WITH_OBJECTS_AND_GENERIC_ON_TYPED_ARRAYS && ArrayBufferViewCore.NATIVE_ARRAY_BUFFER_VIEWS && fails(function () {
|
|
1518
|
+
var array = new Int8Array(2);
|
|
1519
|
+
array.set(1);
|
|
1520
|
+
array.set('2', 1);
|
|
1521
|
+
return array[0] !== 0 || array[1] !== 2;
|
|
1522
|
+
});
|
|
1523
|
+
|
|
1524
|
+
// `%TypedArray%.prototype.set` method
|
|
1525
|
+
// https://tc39.es/ecma262/#sec-%typedarray%.prototype.set
|
|
1526
|
+
exportTypedArrayMethod('set', function set(arrayLike /* , offset */) {
|
|
1527
|
+
aTypedArray(this);
|
|
1528
|
+
var offset = toOffset(arguments.length > 1 ? arguments[1] : undefined, 1);
|
|
1529
|
+
var src = toIndexedObject(arrayLike);
|
|
1530
|
+
if (WORKS_WITH_OBJECTS_AND_GENERIC_ON_TYPED_ARRAYS) return call($set, this, src, offset);
|
|
1531
|
+
var length = this.length;
|
|
1532
|
+
var len = lengthOfArrayLike(src);
|
|
1533
|
+
var index = 0;
|
|
1534
|
+
if (len + offset > length) throw new RangeError('Wrong length');
|
|
1535
|
+
while (index < len) this[offset + index] = src[index++];
|
|
1536
|
+
}, !WORKS_WITH_OBJECTS_AND_GENERIC_ON_TYPED_ARRAYS || TO_OBJECT_BUG);
|
|
1537
|
+
|
|
1538
|
+
|
|
1083
1539
|
/***/ }),
|
|
1084
1540
|
|
|
1085
1541
|
/***/ "6d46":
|
|
1086
1542
|
/***/ (function(module, exports) {
|
|
1087
1543
|
|
|
1088
|
-
module.exports = "<article class=\"u-common-tree\" :class=\"className.join(' ')\">\
|
|
1544
|
+
module.exports = "<article class=\"u-common-tree\" :class=\"className.join(' ')\">\n <slot name=\"header\"></slot>\n <section class=\"content\">\n <i-input\n class=\"search-input\"\n suffix=\"ios-search\"\n :placeholder=\"placeholder\"\n @on-change=\"onFilter\"\n v-model=\"keyword\"\n >\n <i class=\"iconfont icon-chaxun\" slot=\"prefix\"></i>\n </i-input>\n <i-tree\n :data=\"renderData\"\n :render=\"renderContent\"\n @on-toggle-expand=\"onToggleExpand\"\n ></i-tree>\n </section>\n</article>\n"
|
|
1089
1545
|
|
|
1090
1546
|
/***/ }),
|
|
1091
1547
|
|
|
@@ -1199,7 +1655,7 @@ module.exports = NATIVE_BIND ? uncurryThisWithBind : function (fn) {
|
|
|
1199
1655
|
/***/ "7640":
|
|
1200
1656
|
/***/ (function(module, exports) {
|
|
1201
1657
|
|
|
1202
|
-
module.exports = "<article class=\"params-setting\">\
|
|
1658
|
+
module.exports = "<article class=\"params-setting\">\n <i-collapse v-model=\"value\" simple>\n <i-panel name=\"1\">\n <span>Query参数</span>\n <span class=\"status\">{{getExpand('1') ? \"收起\" : \"展开\"}}</span>\n <div slot=\"content\" class=\"setting-content\">\n <header>\n <i-button type=\"primary\" ghost class=\"diy-btn-primary\" @click=\"onAddRequestParam\"> <i class=\"api-icon icon-add\"></i>新增参数 </i-button>\n </header>\n <main>\n <i-table height=\"200\" width=\"1280\" class=\"diy-table\" @on-selection-change=\"onQuerySelectionChange\" :columns=\"paramColumns\" :data=\"queryDataList\">\n <template slot-scope=\"{ row,index }\" slot=\"selection\">\n <i-switch size=\"large\" :value=\"!queryDataList[index].disabled\" @on-change=\"onChangeDisabled($event,queryDataList[index],'query')\">\n <span slot=\"open\">开启</span>\n <span slot=\"close\">禁用</span>\n </i-switch>\n </template>\n <template slot-scope=\"{ row,index }\" slot=\"name\">\n <i-input class=\"diy-input\" placeholder=\"输入参数名称\" v-model=\"queryDataList[index].name\"></i-input>\n </template>\n <template slot-scope=\"{ row,index }\" slot=\"valueContent\">\n <i-input class=\"diy-input\" placeholder=\"输入参数值\" v-model=\"queryDataList[index].valueContent\"></i-input>\n </template>\n <template slot-scope=\"{ row,index }\" slot=\"required\">\n <i-switch v-model=\"queryDataList[index].requireFlag\" :disabled=\"queryDataList[index].disabled\" :true-value=\"1\" :false-value=\"0\">\n <span slot=\"open\">是</span>\n <span slot=\"close\">否</span>\n </i-switch>\n </template>\n <template slot-scope=\"{ row,index }\" slot=\"text\">\n <i-input class=\"diy-input\" placeholder=\"输入备注\" v-model=\"queryDataList[index].text\"></i-input>\n </template>\n <template slot-scope=\"{ row,index }\" slot=\"action\">\n <i-poptip class=\"action-btn delete\" title=\"确认删除这条数据吗?\" confirm @on-ok=\"onDelete(queryDataList,row.indexFlag,'query')\" transfer>\n <i class=\"iconfont icon-delete\" title=\"删除\"></i>\n </i-poptip>\n <span>\n <i v-if=\"index>0\" class=\"iconfont icon-up\" @click=\"onUp(queryDataList,index)\" title=\"上移\"></i>\n <i v-if=\"index>0\" class=\"iconfont icon-top\" title=\"置顶\" @click=\"onTop(queryDataList,index)\"></i>\n <i v-if=\"index < queryDataList.length - 1\" @click=\"onDown(queryDataList,index)\" class=\"iconfont icon-down\" title=\"下移\"></i>\n <i v-if=\"index < queryDataList.length - 1\" @click=\"onBottom(queryDataList,index)\" class=\"iconfont icon-bottom\" title=\"置底\"></i>\n </span>\n </template>\n </i-table>\n </main>\n </div>\n </i-panel>\n <i-panel name=\"2\">\n <span>Body参数</span>\n <span class=\"status\">{{getExpand('2') ? \"收起\" : \"展开\"}}</span>\n <div slot=\"content\" class=\"setting-content\">\n <header>\n <i-button v-if=\"isFormData\" type=\"primary\" ghost class=\"diy-btn-primary\" @click=\"onAddBodyParam\"> <i class=\"api-icon icon-add\"></i>新增参数 </i-button>\n <i-button v-else type=\"primary\" ghost class=\"diy-btn-primary\" @click=\"onBeautify\"> <i class=\"api-icon icon-view\"></i>格式化 </i-button>\n <i-select transfer v-model=\"interfaceModel.info.requestBodyType\" class=\"diy-select\">\n <i-option v-for=\"item in requestBodyTypeList\" :value=\"item.name\" :key=\"item.name\">{{item.text}}</i-option>\n </i-select>\n </header>\n <main>\n <i-table\n height=\"200\"\n width=\"1280\"\n class=\"diy-table\"\n @on-selection-change=\"onBodySelectionChange\"\n :columns=\"bodyColumns\"\n :data=\"bodyDataList\"\n v-if=\"isFormData\"\n >\n <template slot-scope=\"{ row,index }\" slot=\"selection\">\n <i-switch size=\"large\" :value=\"!bodyDataList[index].disabled\" @on-change=\"onChangeDisabled($event,bodyDataList[index],'body')\">\n <span slot=\"open\">开启</span>\n <span slot=\"close\">禁用</span>\n </i-switch>\n </template>\n <template slot-scope=\"{ row,index }\" slot=\"name\">\n <div class=\"body-name-row\">\n <i-input class=\"diy-input\" placeholder=\"输入参数名称\" v-model=\"bodyDataList[index].name\"></i-input>\n <i-select class=\"diy-select\" v-if=\"bodyType === 'Form'\" v-model=\"row.valueType\" @on-change=\"onChangeFormParamType(index, row)\" transfer>\n <i-option v-for=\"item in formParamTypeList\" :value=\"item.name\" :key=\"item.name\">{{item.text}}</i-option>\n </i-select>\n </div>\n </template>\n <template slot-scope=\"{ row,index }\" slot=\"valueContent\">\n <i-input v-if=\"row.valueType !== 'FILE'\" class=\"diy-input\" placeholder=\"输入参数值\" v-model=\"bodyDataList[index].valueContent\"></i-input>\n <i-upload v-if=\"row.valueType === 'FILE' && !row.fileName\" action=\"\" :before-upload=\"onImport\" :show-upload-list=\"false\">\n <i-button class=\"file-btn\" icon=\"ios-cloud-upload-outline\" @click=\"onClickRow(row)\">选择文件</i-button>\n </i-upload>\n <div class=\"file-wrap\" v-if=\"row.valueType === 'FILE' && row.fileName\">\n <div class=\"file-name\" :title=\"row.fileName\">{{ row.fileName }}</div>\n <i-icon type=\"ios-close\" @click=\"onClearFile(row)\" />\n </div>\n </template>\n <template slot-scope=\"{ row,index }\" slot=\"required\">\n <i-switch v-model=\"bodyDataList[index].requireFlag\" :disabled=\"bodyDataList[index].disabled\" :true-value=\"1\" :false-value=\"0\">\n <span slot=\"open\">是</span>\n <span slot=\"close\">否</span>\n </i-switch>\n </template>\n <template slot-scope=\"{ row,index }\" slot=\"text\">\n <i-input class=\"diy-input\" placeholder=\"输入备注\" v-model=\"bodyDataList[index].remark\"></i-input>\n </template>\n <template slot-scope=\"{ row,index }\" slot=\"action\">\n <i-poptip class=\"action-btn delete\" title=\"确认删除这条数据吗?\" confirm @on-ok=\"onDeleteBodyParam(interfaceModel.formParams,row.indexFlag,'body')\" transfer>\n <i class=\"iconfont icon-delete\" title=\"删除\"></i>\n </i-poptip>\n <span>\n <i v-if=\"index > 0\" class=\"iconfont icon-up\" @click=\"onUpBodyParam(interfaceModel.formParams,row.id)\" title=\"上移\"></i>\n <i v-if=\"index > 0\" class=\"iconfont icon-top\" @click=\"onTopBodyParam(interfaceModel.formParams,row.id)\" title=\"置顶\"></i>\n <i v-if=\"index < bodyDataList.length - 1\" @click=\"onDownBodyParam(interfaceModel.formParams,row.id)\" class=\"iconfont icon-down\" title=\"下移\"></i>\n <i\n v-if=\"index < bodyDataList.length - 1\"\n @click=\"onBottomBodyParam(interfaceModel.formParams,row.id)\"\n class=\"iconfont icon-bottom\"\n title=\"置底\"\n ></i>\n </span>\n </template>\n </i-table>\n <u-editor v-else :value.sync=\"interfaceModel.json\" lang=\"json\" @inited=\"onEditorInited\"></u-editor>\n </main>\n </div>\n </i-panel>\n </i-collapse>\n</article>\n"
|
|
1203
1659
|
|
|
1204
1660
|
/***/ }),
|
|
1205
1661
|
|
|
@@ -2391,7 +2847,7 @@ module.exports = require("brace/ext/language_tools");
|
|
|
2391
2847
|
/***/ "82af":
|
|
2392
2848
|
/***/ (function(module, exports) {
|
|
2393
2849
|
|
|
2394
|
-
module.exports = "<div class=\"v-data-modal-list-container\">\
|
|
2850
|
+
module.exports = "<div class=\"v-data-modal-list-container\">\n <header>\n <div class=\"condition\">\n <div class=\"input-item\">\n <span>名称:</span>\n <i-input class=\"diy-input\" placeholder=\"请输入名称\" v-model=\"condition.name\" @on-enter=\"onSearch\"></i-input>\n </div>\n <div class=\"input-item\">\n <span>编码:</span>\n <i-input class=\"diy-input\" placeholder=\"请输入编码\" v-model=\"condition.code\" @on-enter=\"onSearch\"></i-input>\n </div>\n <div class=\"search-btn\">\n <i-button class=\"diy-btn-primary\" type=\"primary\" @click=\"onSearch\">查询</i-button>\n <i-button class=\"diy-btn-default\" @click=\"onEmpty\">重置</i-button>\n </div>\n </div>\n </header>\n <main>\n <template v-if=\"data&&data.length\">\n <i-table class=\"diy-table\" :columns=\"columns\" :data=\"data\" @on-selection-change=\"onSelected\" @on-row-click=\"onRowClick\">\n <template slot=\"enableCache\" slot-scope=\"{row}\">\n <span>{{row.enableCache === true ? \"是\" : \"否\"}}</span>\n </template>\n <template slot=\"doc\" slot-scope=\"{row}\">\n <a @click=\"onOpenDoc(row)\">查看</a>\n </template>\n </i-table>\n </template>\n <template v-else>\n <div class=\"table-no-data\">\n <div class=\"table-no-data-bg\"></div>\n <div class=\"table-no-data-text\">暂无数据</div>\n </div>\n </template>\n </main>\n <div class=\"pagination\" v-if=\"data&&data.length\">\n <i-page class=\"diy-page\" :total=\"page.totalCount\" @on-change=\"onPageIndexChange\" @on-page-size-change=\"onPageSizeChange\" placement=\"top\" show-elevator show-total show-sizer> </i-page>\n </div>\n <u-data-model-doc v-model=\"docShow\" :doc=\"doc\"></u-data-model-doc>\n</div>\n"
|
|
2395
2851
|
|
|
2396
2852
|
/***/ }),
|
|
2397
2853
|
|
|
@@ -2540,7 +2996,7 @@ module.exports = function (target, name, descriptor) {
|
|
|
2540
2996
|
/***/ "88af":
|
|
2541
2997
|
/***/ (function(module, exports) {
|
|
2542
2998
|
|
|
2543
|
-
module.exports = "<i-modal draggable sticky reset-drag-position :mask-closable=\"false\" v-model=\"value\" width=\"800\" class=\"u-variable-modal diy-modal\" transfer>\
|
|
2999
|
+
module.exports = "<i-modal draggable sticky reset-drag-position :mask-closable=\"false\" v-model=\"value\" width=\"800\" class=\"u-variable-modal diy-modal\" transfer>\n <header slot=\"header\">批量修改环境变量与授权</header>\n <main class=\"variable-content\">\n <div class=\"left\">\n <div class=\"left-title\">\n <div class=\"left-title-text\">选择API</div>\n </div>\n <div class=\"left-content\">\n <i-input class=\"diy-input search-input\" v-model=\"keyword\" placeholder=\"输入关键字查询\" @on-change=\"onFilter\">\n <template #prefix>\n <i-icon type=\"ios-search\"/>\n </template>\n </i-input>\n <div class=\"security-list\">\n <i-checkbox class=\"security-list-item-checkbox\" v-model=\"allSelect\" @on-change=\"onAllSelect\">全选</i-checkbox>\n <div class=\"security-list-item\"\n v-for=\"(item,index) in apiList\"\n :key=\"item.id || index\"\n >\n <div class=\"security-list-item-name\">\n <i-checkbox v-model=\"item.selected\" @on-change=\"onSelect($event,item)\"></i-checkbox>\n <i class=\"iconfont icon-API\"></i>\n <div class=\"security-list-item-text\" :title=\"item.name\">{{ item.name }}</div>\n </div>\n </div>\n </div>\n </div>\n </div>\n <div class=\"right\">\n <div class=\"right-title\">环境与授权</div>\n <div class=\"right-content\">\n <i-form ref=\"batch-api-form\" class=\"variable-content-form\" label-colon label-position=\"left\" v-if=\"isEmpty\" :rules=\"rules\" :label-width=\"100\" :model=\"formData\">\n <i-form-item class=\"content-form-item un-required-item\" label=\"选择属性\">\n <i-select class=\"diy-select\" placeholder=\"请输入\" clearable v-model=\"type\">\n <i-option value=\"env\">环境变量</i-option>\n <i-option value=\"auth\">授权设置</i-option>\n <i-option value=\"both\">环境变量和授权设置</i-option>\n </i-select>\n </i-form-item>\n <i-form-item class=\"content-form-item\" v-if=\"type !== 'auth'\" label=\"环境变量\" prop=\"envId\">\n <i-select class=\"diy-select diy-batch-select diy-batch-variable-select\" placeholder=\"请选择\" clearable v-model=\"formData.envId\">\n <i-option value=\"empty\">清空所有已设置环境变量</i-option>\n <i-option v-for=\"item in variableList\" :key=\"item.name\" :value=\"item.id\" :title=\"item.name + ':' + item.value\">{{item.name + \":\" + item.value}}</i-option>\n </i-select>\n </i-form-item>\n <i-form-item class=\"content-form-item\" label=\"授权设置\" v-if=\"type !== 'env'\" prop=\"authId\">\n <i-select class=\"diy-select diy-batch-select\" placeholder=\"请选择\" clearable v-model=\"formData.authId\">\n <i-option value=\"empty\">清空所有已设置授权</i-option>\n <i-option v-for=\"item in securityList\" :key=\"item.name\" :value=\"item.id\">{{item.name}} </i-option>\n </i-select>\n </i-form-item>\n </i-form>\n </div>\n </div>\n </main>\n\n <footer slot=\"footer\">\n <template>\n <i-button class=\"diy-btn-default\" @click=\"onCancel\">取消</i-button>\n <i-button type=\"primary\" class=\"diy-btn-primary\" @click=\"onSave\">保存</i-button>\n </template>\n </footer>\n</i-modal>\n"
|
|
2544
3000
|
|
|
2545
3001
|
/***/ }),
|
|
2546
3002
|
|
|
@@ -2582,7 +3038,7 @@ module.exports = SILENT_ON_NON_WRITABLE_LENGTH_SET ? function (O, length) {
|
|
|
2582
3038
|
/***/ "8962":
|
|
2583
3039
|
/***/ (function(module, exports) {
|
|
2584
3040
|
|
|
2585
|
-
module.exports = "<i-modal draggable sticky reset-drag-position :mask-closable=\"false\" v-model=\"value\" width=\"800\" class=\"u-variable-modal diy-modal\" transfer>\
|
|
3041
|
+
module.exports = "<i-modal draggable sticky reset-drag-position :mask-closable=\"false\" v-model=\"value\" width=\"800\" class=\"u-variable-modal diy-modal\" transfer>\n <header slot=\"header\">环境变量</header>\n <main class=\"variable-content\">\n <div class=\"left\">\n <div class=\"left-title\">\n <div class=\"left-title-text\">环境列表</div>\n <i class=\"api-icon icon-add\" @click=\"onAddItem\"></i>\n </div>\n <div class=\"left-content\">\n <i-input class=\"diy-input search-input\" v-model=\"keyword\" placeholder=\"输入关键字查询\" @on-change=\"onFilter\">\n <template #prefix>\n <i-icon type=\"ios-search\"/>\n </template>\n </i-input>\n <div class=\"security-list\">\n <div class=\"security-list-item\"\n :class=\"currentItem.id === item.id ? 'security-list-item-active' : ''\"\n v-for=\"(item,index) in varList\"\n :key=\"item.id || index\"\n @click=\"onSelectItem(item)\"\n >\n <div class=\"security-list-item-name\">\n <i class=\"iconfont icon-huanjing\"></i>\n <div class=\"security-list-item-text\" :class=\"currentItem.id === item.id ? 'security-list-item-text-active' : ''\">{{ item.name || \"新环境\" }}</div>\n </div>\n <i-poptip confirm title=\"确认删除这条数据吗?\" transfer placement=\"top-end\" @on-ok=\"onDelete(item)\">\n <i class=\"iconfont icon-delete\"></i>\n </i-poptip>\n </div>\n </div>\n </div>\n </div>\n <div class=\"right\">\n <div class=\"right-title\">环境内容</div>\n <div class=\"right-content\">\n <i-form class=\"variable-content-form\" ref=\"variable-content-form\" label-colon label-position=\"left\" v-if=\"isEmpty\" :rules=\"rules\" :label-width=\"100\" :model=\"formData\">\n <i-form-item class=\"content-form-item\" label=\"环境名称\" prop=\"name\">\n <i-input class=\"diy-input\" placeholder=\"请输入\" v-model=\"formData.name\"></i-input>\n </i-form-item>\n <i-form-item class=\"content-form-item\" label=\"域名\" prop=\"address\">\n <i-input class=\"diy-input\" placeholder=\"请输入\" v-model=\"formData.address\">\n <i-select class=\"diy-select\" v-model=\"formData.type\" slot=\"prepend\" style=\"width: 100px\">\n <i-option value=\"http\">http://</i-option>\n <i-option value=\"https\">https://</i-option>\n </i-select>\n </i-input>\n </i-form-item>\n <i-form-item label=\"描述\" class=\"content-form-item item-remark\" prop=\"remark\">\n <i-input class=\"diy-input remark-textarea\" placeholder=\"请输入\" type=\"textarea\" v-model=\"formData.remark\"></i-input>\n </i-form-item>\n </i-form>\n </div>\n </div>\n </main>\n\n <footer slot=\"footer\">\n <template>\n <i-button class=\"diy-btn-default\" @click=\"onCancel\">取消</i-button>\n <i-button type=\"primary\" class=\"diy-btn-primary\" @click=\"onSave\">保存</i-button>\n </template>\n </footer>\n</i-modal>\n"
|
|
2586
3042
|
|
|
2587
3043
|
/***/ }),
|
|
2588
3044
|
|
|
@@ -2636,7 +3092,7 @@ module.exports = function (argument) {
|
|
|
2636
3092
|
/***/ "8ab8":
|
|
2637
3093
|
/***/ (function(module, exports) {
|
|
2638
3094
|
|
|
2639
|
-
module.exports = "<article class=\"pre-execution-setting\">\
|
|
3095
|
+
module.exports = "<article class=\"pre-execution-setting\">\n <section class=\"script\">\n <div class=\"script-title\">\n <div class=\"empty\"></div>\n <div class=\"script-btns\">\n <span @click=\"onViewMax\"><i class=\"iconfont icon-zuidahua1\"></i>{{viewMax ? \"还原显示\" : \"最大化\"}}</span>\n <span @click=\"onSave\"><i class=\"iconfont icon-baocun1\"></i>保存</span>\n <span @click=\"onRun\"><i class=\"iconfont icon-run1\"></i>RUN</span>\n <span @click=\"onSearch\"><i class=\"iconfont icon-search\"></i>搜索</span>\n </div>\n </div>\n <u-editor\n v-if=\"refreshEditor\"\n class=\"editor\"\n :model.sync=\"script\"\n :diyKeywordList=\"diyKeywordList\"\n lang=\"groovy\"\n @inited=\"onEditorInited\"\n >\n </u-editor>\n </section>\n <section class=\"quick-input\">\n <div class=\"info\">\n <p>{{scriptData.description}}</p>\n <!-- <ul>\n <li>request: 请求</li>\n </ul> -->\n </div>\n <i-input class=\"diy-input\" v-model=\"keyword\" @on-change=\"onFilter\" placeholder=\"输入关键字查询\">\n <i class=\"iconfont icon-chaxun\" slot=\"prefix\"></i>\n </i-input>\n <div class=\"quick-list\">\n <div v-for=\"type in tempScriptData.group\" class=\"quick-type\">\n <div class=\"quick-type-name\" @click=\"onQuickGroupClick(type)\">\n <i-icon type=\"md-arrow-dropright\" :class=\"type.expand ? 'expand' : ''\"/>\n <p>{{type.name}}</p>\n </div>\n <div\n v-show=\"type.expand\"\n v-for=\"item in type.list\"\n :key=\"item.name\"\n class=\"quick-item\"\n @click=\"onClickItem(item)\"\n >\n <i class=\"api-icon icon-item\"></i> {{item.name}}\n </div>\n </div>\n </div>\n </section>\n</article>\n"
|
|
2640
3096
|
|
|
2641
3097
|
/***/ }),
|
|
2642
3098
|
|
|
@@ -2678,6 +3134,38 @@ module.exports = function (O, options) {
|
|
|
2678
3134
|
|
|
2679
3135
|
// extracted by mini-css-extract-plugin
|
|
2680
3136
|
|
|
3137
|
+
/***/ }),
|
|
3138
|
+
|
|
3139
|
+
/***/ "8f6e":
|
|
3140
|
+
/***/ (function(module, exports, __webpack_require__) {
|
|
3141
|
+
|
|
3142
|
+
"use strict";
|
|
3143
|
+
|
|
3144
|
+
var fails = __webpack_require__("10a7");
|
|
3145
|
+
|
|
3146
|
+
module.exports = !fails(function () {
|
|
3147
|
+
function F() { /* empty */ }
|
|
3148
|
+
F.prototype.constructor = null;
|
|
3149
|
+
// eslint-disable-next-line es/no-object-getprototypeof -- required for testing
|
|
3150
|
+
return Object.getPrototypeOf(new F()) !== F.prototype;
|
|
3151
|
+
});
|
|
3152
|
+
|
|
3153
|
+
|
|
3154
|
+
/***/ }),
|
|
3155
|
+
|
|
3156
|
+
/***/ "9195":
|
|
3157
|
+
/***/ (function(module, exports, __webpack_require__) {
|
|
3158
|
+
|
|
3159
|
+
"use strict";
|
|
3160
|
+
|
|
3161
|
+
var classof = __webpack_require__("aaa6");
|
|
3162
|
+
|
|
3163
|
+
module.exports = function (it) {
|
|
3164
|
+
var klass = classof(it);
|
|
3165
|
+
return klass === 'BigInt64Array' || klass === 'BigUint64Array';
|
|
3166
|
+
};
|
|
3167
|
+
|
|
3168
|
+
|
|
2681
3169
|
/***/ }),
|
|
2682
3170
|
|
|
2683
3171
|
/***/ "91e1":
|
|
@@ -2752,6 +3240,26 @@ module.exports = function (O, key, value, options) {
|
|
|
2752
3240
|
|
|
2753
3241
|
// extracted by mini-css-extract-plugin
|
|
2754
3242
|
|
|
3243
|
+
/***/ }),
|
|
3244
|
+
|
|
3245
|
+
/***/ "9417":
|
|
3246
|
+
/***/ (function(module, exports, __webpack_require__) {
|
|
3247
|
+
|
|
3248
|
+
"use strict";
|
|
3249
|
+
|
|
3250
|
+
var lengthOfArrayLike = __webpack_require__("d631");
|
|
3251
|
+
|
|
3252
|
+
// https://tc39.es/proposal-change-array-by-copy/#sec-array.prototype.toReversed
|
|
3253
|
+
// https://tc39.es/proposal-change-array-by-copy/#sec-%typedarray%.prototype.toReversed
|
|
3254
|
+
module.exports = function (O, C) {
|
|
3255
|
+
var len = lengthOfArrayLike(O);
|
|
3256
|
+
var A = new C(len);
|
|
3257
|
+
var k = 0;
|
|
3258
|
+
for (; k < len; k++) A[k] = O[len - k - 1];
|
|
3259
|
+
return A;
|
|
3260
|
+
};
|
|
3261
|
+
|
|
3262
|
+
|
|
2755
3263
|
/***/ }),
|
|
2756
3264
|
|
|
2757
3265
|
/***/ "948e":
|
|
@@ -2842,7 +3350,7 @@ module.exports = function (passed, required) {
|
|
|
2842
3350
|
/***/ "981a":
|
|
2843
3351
|
/***/ (function(module, exports) {
|
|
2844
3352
|
|
|
2845
|
-
module.exports = "<div class=\"v-api-project-list-container\">\
|
|
3353
|
+
module.exports = "<div class=\"v-api-project-list-container\">\n <header>\n <div class=\"condition\">\n <div class=\"input-item\">\n <span>名称:</span>\n <i-input class=\"diy-input\" placeholder=\"请输入名称\" v-model=\"condition.name\" @on-enter=\"onSearch\"></i-input>\n </div>\n <div class=\"input-item\">\n <span>地址:</span>\n <i-input class=\"diy-input\" placeholder=\"请输入地址\" v-model=\"condition.url\" @on-enter=\"onSearch\"></i-input>\n </div>\n <div class=\"search-btn\">\n <i-button class=\"diy-btn-primary\" type=\"primary\" @click=\"onSearch\">查询</i-button>\n <i-button class=\"diy-btn-default\" @click=\"onEmpty\">重置</i-button>\n </div>\n </div>\n </header>\n <main>\n <template v-if=\"data&&data.length\">\n <i-table class=\"diy-table\" :columns=\"columns\" :data=\"data\" @on-selection-change=\"onSelected\" @on-row-click=\"onRowClick\">\n <template slot=\"detail\" slot-scope=\"{row}\">\n <a @click=\"onDetail(row)\">查看</a>\n </template>\n </i-table>\n </template>\n <template v-else>\n <div class=\"table-no-data\">\n <div class=\"table-no-data-bg\"></div>\n <div class=\"table-no-data-text\">暂无数据</div>\n </div>\n </template>\n </main>\n <div class=\"pagination\" v-if=\"data&&data.length\">\n <i-page class=\"diy-page\" :total=\"page.totalCount\" @on-change=\"onPageIndexChange\" @on-page-size-change=\"onPageSizeChange\" placement=\"top\" show-elevator show-total show-sizer> </i-page>\n </div>\n <u-api-project-detail :visiable.sync=\"detailShow\" :model=\"detail\"></u-api-project-detail>\n</div>\n"
|
|
2846
3354
|
|
|
2847
3355
|
/***/ }),
|
|
2848
3356
|
|
|
@@ -2896,7 +3404,7 @@ module.exports = require("jsencrypt");
|
|
|
2896
3404
|
/***/ "9915":
|
|
2897
3405
|
/***/ (function(module, exports) {
|
|
2898
3406
|
|
|
2899
|
-
module.exports = "<editor\
|
|
3407
|
+
module.exports = "<editor\n id=\"editor\"\n class=\"code-edit\"\n v-model=\"code\"\n theme=\"chrome\"\n :options=\"option\"\n @init=\"editorInit\"\n :lang=\"lang\"\n width=\"100%\"\n height=\"100%\"\n></editor>"
|
|
2900
3408
|
|
|
2901
3409
|
/***/ }),
|
|
2902
3410
|
|
|
@@ -2951,7 +3459,7 @@ module.exports = function (key, value) {
|
|
|
2951
3459
|
/***/ "9b44":
|
|
2952
3460
|
/***/ (function(module, exports) {
|
|
2953
3461
|
|
|
2954
|
-
module.exports = "<i-timeline-item v-if=\"source.type==='more'\" class=\"trends-item\">\
|
|
3462
|
+
module.exports = "<i-timeline-item v-if=\"source.type==='more'\" class=\"trends-item\">\n <i slot=\"dot\"></i>\n <div class=\"item-more\" @click=\"onMore\">查看更多</div>\n</i-timeline-item>\n<i-timeline-item v-else class=\"trends-item\">\n <i-avatar size=\"large\" :class=\"source.operateType\" slot=\"dot\"></i-avatar>\n <div class=\"item-body\">\n <i-time class=\"time\" :time=\"source.createTime\" />\n <div class=\"title\">\n <span>{{source.projectName}}</span>\n <span class=\"create-time\">{{source.createTime}}</span>\n </div>\n <div class=\"content\">\n <span class=\"name\">{{source.creatorName || source.creator}}</span>\n <span>{{source._operateType && source._operateType.text}}</span>\n <span class=\"name\">{{source.categoryName}}</span>\n <span v-if=\"source.categoryName\">分组下的</span>\n <span class=\"name api-name\" @click=\"onToApi\">{{source.apiName}}</span>\n <span>接口</span>\n </div>\n </div>\n</i-timeline-item>\n"
|
|
2955
3463
|
|
|
2956
3464
|
/***/ }),
|
|
2957
3465
|
|
|
@@ -3066,7 +3574,7 @@ module.exports = function (argument) {
|
|
|
3066
3574
|
/***/ "a0f2":
|
|
3067
3575
|
/***/ (function(module, exports) {
|
|
3068
3576
|
|
|
3069
|
-
module.exports = "<article class=\"catalog-params\">\
|
|
3577
|
+
module.exports = "<article class=\"catalog-params\">\n <i-table height=\"200\" class=\"diy-table\" :columns=\"columns\" :data=\"dataList\">\n <template slot-scope=\"{ row,index }\" slot=\"type\">\n {{(row._type || {}).text}}\n </template>\n <template slot-scope=\"{ row,index }\" slot=\"required\">\n {{row.required ? \"是\": \"否\"}}\n </template>\n </i-table>\n</article>\n"
|
|
3070
3578
|
|
|
3071
3579
|
/***/ }),
|
|
3072
3580
|
|
|
@@ -3080,7 +3588,14 @@ module.exports = "<article class=\"catalog-params\">\r\n <i-table height=\"20
|
|
|
3080
3588
|
/***/ "a1f0":
|
|
3081
3589
|
/***/ (function(module, exports) {
|
|
3082
3590
|
|
|
3083
|
-
module.exports = "<i-poptip\
|
|
3591
|
+
module.exports = "<i-poptip\n transfer\n class=\"u-tree-selector\"\n transfer-class-name=\"u-tree-selector\"\n trigger=\"click\"\n content=\"content\"\n placement=\"bottom\"\n :disabled=\"readonly\"\n v-model=\"visible\"\n>\n <i-input\n class=\"diy-input\"\n :value=\"inputValue\"\n @on-change=\"onInputChange\"\n readonly\n />\n <i-icon\n v-if=\"inputValue && !readonly\"\n class=\"icon-clear-value\"\n type=\"ios-close-circle\"\n @click.stop=\"onClear\"\n />\n <i-tree\n slot=\"content\"\n :data=\"tree\"\n :render=\"renderContent\"\n @on-select-change=\"onSelectChange\"\n ></i-tree>\n</i-poptip>\n"
|
|
3592
|
+
|
|
3593
|
+
/***/ }),
|
|
3594
|
+
|
|
3595
|
+
/***/ "a2c5":
|
|
3596
|
+
/***/ (function(module, exports) {
|
|
3597
|
+
|
|
3598
|
+
module.exports = require("crypto-js");
|
|
3084
3599
|
|
|
3085
3600
|
/***/ }),
|
|
3086
3601
|
|
|
@@ -3153,6 +3668,36 @@ if (params.has('a', 2) || !params.has('a', undefined)) {
|
|
|
3153
3668
|
}
|
|
3154
3669
|
|
|
3155
3670
|
|
|
3671
|
+
/***/ }),
|
|
3672
|
+
|
|
3673
|
+
/***/ "a54a":
|
|
3674
|
+
/***/ (function(module, exports, __webpack_require__) {
|
|
3675
|
+
|
|
3676
|
+
"use strict";
|
|
3677
|
+
|
|
3678
|
+
var hasOwn = __webpack_require__("d803");
|
|
3679
|
+
var isCallable = __webpack_require__("ec2f");
|
|
3680
|
+
var toObject = __webpack_require__("e614");
|
|
3681
|
+
var sharedKey = __webpack_require__("3d77");
|
|
3682
|
+
var CORRECT_PROTOTYPE_GETTER = __webpack_require__("8f6e");
|
|
3683
|
+
|
|
3684
|
+
var IE_PROTO = sharedKey('IE_PROTO');
|
|
3685
|
+
var $Object = Object;
|
|
3686
|
+
var ObjectPrototype = $Object.prototype;
|
|
3687
|
+
|
|
3688
|
+
// `Object.getPrototypeOf` method
|
|
3689
|
+
// https://tc39.es/ecma262/#sec-object.getprototypeof
|
|
3690
|
+
// eslint-disable-next-line es/no-object-getprototypeof -- safe
|
|
3691
|
+
module.exports = CORRECT_PROTOTYPE_GETTER ? $Object.getPrototypeOf : function (O) {
|
|
3692
|
+
var object = toObject(O);
|
|
3693
|
+
if (hasOwn(object, IE_PROTO)) return object[IE_PROTO];
|
|
3694
|
+
var constructor = object.constructor;
|
|
3695
|
+
if (isCallable(constructor) && object instanceof constructor) {
|
|
3696
|
+
return constructor.prototype;
|
|
3697
|
+
} return object instanceof $Object ? ObjectPrototype : null;
|
|
3698
|
+
};
|
|
3699
|
+
|
|
3700
|
+
|
|
3156
3701
|
/***/ }),
|
|
3157
3702
|
|
|
3158
3703
|
/***/ "a564":
|
|
@@ -3184,6 +3729,27 @@ exports.f = DESCRIPTORS ? $getOwnPropertyDescriptor : function getOwnPropertyDes
|
|
|
3184
3729
|
};
|
|
3185
3730
|
|
|
3186
3731
|
|
|
3732
|
+
/***/ }),
|
|
3733
|
+
|
|
3734
|
+
/***/ "a68e":
|
|
3735
|
+
/***/ (function(module, exports, __webpack_require__) {
|
|
3736
|
+
|
|
3737
|
+
"use strict";
|
|
3738
|
+
|
|
3739
|
+
var toPrimitive = __webpack_require__("e086");
|
|
3740
|
+
|
|
3741
|
+
var $TypeError = TypeError;
|
|
3742
|
+
|
|
3743
|
+
// `ToBigInt` abstract operation
|
|
3744
|
+
// https://tc39.es/ecma262/#sec-tobigint
|
|
3745
|
+
module.exports = function (argument) {
|
|
3746
|
+
var prim = toPrimitive(argument, 'number');
|
|
3747
|
+
if (typeof prim == 'number') throw new $TypeError("Can't convert number to bigint");
|
|
3748
|
+
// eslint-disable-next-line es/no-bigint -- safe
|
|
3749
|
+
return BigInt(prim);
|
|
3750
|
+
};
|
|
3751
|
+
|
|
3752
|
+
|
|
3187
3753
|
/***/ }),
|
|
3188
3754
|
|
|
3189
3755
|
/***/ "a6c3":
|
|
@@ -3257,7 +3823,7 @@ module.exports = TO_STRING_TAG_SUPPORT ? classofRaw : function (it) {
|
|
|
3257
3823
|
/***/ "ab68":
|
|
3258
3824
|
/***/ (function(module, exports) {
|
|
3259
3825
|
|
|
3260
|
-
module.exports = "<i-modal draggable sticky reset-drag-position class=\"api-detail-modal diy-modal\" v-model=\"show\" width=\"1000\" :mask-closable=\"false\" title=\"API详情\">\
|
|
3826
|
+
module.exports = "<i-modal draggable sticky reset-drag-position class=\"api-detail-modal diy-modal\" v-model=\"show\" width=\"1000\" :mask-closable=\"false\" title=\"API详情\">\n <i-form label-colon :label-width=\"120\">\n <i-form-item label=\"接口名称\">\n <span>{{action.name}}</span>\n </i-form-item>\n <i-form-item label=\"所属类型\">\n <span>{{model.type}}</span>\n </i-form-item>\n <i-form-item label=\"接口url\">\n <span>{{detail.info?detail.info.url:\"\"}}</span>\n </i-form-item>\n <i-form-item label=\"创建时间\">\n <span>{{action.timestamp}}</span>\n </i-form-item>\n <p class=\"item-title\">接口参数</p>\n <component v-if=\"params\" :is=\"params\" :model=\"detail\"></component>\n </i-form>\n <footer slot=\"footer\">\n <i-button class=\"diy-btn-primary\" type=\"primary\" @click=\"onClose\">关闭</i-button>\n </footer>\n</i-modal>\n"
|
|
3261
3827
|
|
|
3262
3828
|
/***/ }),
|
|
3263
3829
|
|
|
@@ -3846,19 +4412,45 @@ module.exports = g;
|
|
|
3846
4412
|
|
|
3847
4413
|
// extracted by mini-css-extract-plugin
|
|
3848
4414
|
|
|
4415
|
+
/***/ }),
|
|
4416
|
+
|
|
4417
|
+
/***/ "b699":
|
|
4418
|
+
/***/ (function(module, exports, __webpack_require__) {
|
|
4419
|
+
|
|
4420
|
+
"use strict";
|
|
4421
|
+
|
|
4422
|
+
var lengthOfArrayLike = __webpack_require__("d631");
|
|
4423
|
+
var toIntegerOrInfinity = __webpack_require__("9b7f");
|
|
4424
|
+
|
|
4425
|
+
var $RangeError = RangeError;
|
|
4426
|
+
|
|
4427
|
+
// https://tc39.es/proposal-change-array-by-copy/#sec-array.prototype.with
|
|
4428
|
+
// https://tc39.es/proposal-change-array-by-copy/#sec-%typedarray%.prototype.with
|
|
4429
|
+
module.exports = function (O, C, index, value) {
|
|
4430
|
+
var len = lengthOfArrayLike(O);
|
|
4431
|
+
var relativeIndex = toIntegerOrInfinity(index);
|
|
4432
|
+
var actualIndex = relativeIndex < 0 ? len + relativeIndex : relativeIndex;
|
|
4433
|
+
if (actualIndex >= len || actualIndex < 0) throw new $RangeError('Incorrect index');
|
|
4434
|
+
var A = new C(len);
|
|
4435
|
+
var k = 0;
|
|
4436
|
+
for (; k < len; k++) A[k] = k === actualIndex ? value : O[k];
|
|
4437
|
+
return A;
|
|
4438
|
+
};
|
|
4439
|
+
|
|
4440
|
+
|
|
3849
4441
|
/***/ }),
|
|
3850
4442
|
|
|
3851
4443
|
/***/ "b769":
|
|
3852
4444
|
/***/ (function(module, exports) {
|
|
3853
4445
|
|
|
3854
|
-
module.exports = "<article class=\"project-comment\">\
|
|
4446
|
+
module.exports = "<article class=\"project-comment\">\n <header>\n <i-input\n class=\"diy-input\"\n prefix=\"ios-search\"\n search\n @on-search=\"onQuery\"\n placeholder=\"输入关键字检索\"\n v-model=\"condition.apiName\"\n ></i-input>\n </header>\n\n <main>\n <header class=\"tool-bar\">\n <span>项目动态</span>\n </header>\n <main>\n <i-timeline :pending=\"false\">\n <virtual-list\n class=\"scroll-list\"\n data-key=\"id\"\n :data-sources=\"list\"\n :data-component=\"itemComponent\"\n >\n </virtual-list>\n </i-timeline>\n </main>\n </main>\n</article>\n"
|
|
3855
4447
|
|
|
3856
4448
|
/***/ }),
|
|
3857
4449
|
|
|
3858
4450
|
/***/ "bc13":
|
|
3859
4451
|
/***/ (function(module, exports) {
|
|
3860
4452
|
|
|
3861
|
-
module.exports = "<div class=\"confirm\">\
|
|
4453
|
+
module.exports = "<div class=\"confirm\">\n <div @click.stop=\"onOpenConfirm\">\n <slot></slot>\n </div>\n <i-modal\n width=400\n draggable\n sticky\n reset-drag-position\n v-model=\"value\"\n class=\"diy-modal confirm-modal\"\n :mask-closable=\"false\"\n :title=\"title\"\n >\n <div>\n <i class=\"api-icon icon-warning\"></i>\n </div>\n <p>\n {{message}}\n </p>\n <footer slot=\"footer\">\n <i-button type=\"primary\" class=\"diy-btn-primary \" @click=\"onOk\"\n >确定</i-button\n >\n <i-button @click=\"onCancel\">取消</i-button>\n </footer>\n </i-modal>\n</div>\n"
|
|
3862
4454
|
|
|
3863
4455
|
/***/ }),
|
|
3864
4456
|
|
|
@@ -3930,7 +4522,7 @@ module.exports = require("js-cookie");
|
|
|
3930
4522
|
/***/ "c01f":
|
|
3931
4523
|
/***/ (function(module, exports) {
|
|
3932
4524
|
|
|
3933
|
-
module.exports = "<article class=\"group-select\">\
|
|
4525
|
+
module.exports = "<article class=\"group-select\">\n <i-poptip\n trigger=\"click\"\n transfer\n :transfer-class-name=\"isSelector? 'group-select-transfer group-select-poptip':'group-select-transfer'\"\n placement=\"bottom-start\"\n v-model=\"visible\"\n >\n <i-input\n readonly\n class=\"diy-input\"\n :value=\"current.name\"\n clearable\n @on-clear=\"onClear\"\n ></i-input>\n <template slot=\"content\">\n <i-tree\n :data=\"data\"\n @on-select-change=\"onSelect\"\n :render=\"renderContent\"\n ></i-tree>\n </template>\n </i-poptip>\n</article>\n"
|
|
3934
4526
|
|
|
3935
4527
|
/***/ }),
|
|
3936
4528
|
|
|
@@ -4087,7 +4679,7 @@ module.exports = {
|
|
|
4087
4679
|
/***/ "cfb3":
|
|
4088
4680
|
/***/ (function(module, exports) {
|
|
4089
4681
|
|
|
4090
|
-
module.exports = "<article class=\"project-list\">\
|
|
4682
|
+
module.exports = "<article class=\"project-list\">\n <header>\n <i-input\n class=\"diy-input\"\n v-model=\"condition.name\"\n search\n @on-search=\"onQuery\"\n placeholder=\"输入关键字检索\"\n ></i-input>\n </header>\n <main>\n <header class=\"tool-bar\">\n <span>项目列表</span>\n <div class=\"right-tool\">\n <div class=\"action-btn\">\n <i-upload\n class=\"action-item\"\n :action=\"uploadAction\"\n accept=\".json\"\n :headers=\"headers\"\n :show-upload-list=\"false\"\n :format=\"['json']\"\n :on-success=\"onSuccess\"\n :before-upload=\"onBeforeUpload\"\n :on-format-error=\"onFormatError\"\n >\n <i class=\"api-icon icon-import\"></i>\n <div>导入项目</div>\n </i-upload>\n </div>\n <div class=\"action-btn\" @click=\"onComment\">\n <i\n class=\"api-icon icon-star\"\n @click=\"onCheckType('list')\"\n ></i>\n <div>查看项目动态</div>\n </div>\n <i\n class=\"api-icon icon-list\"\n :class=\"{'active': type === 'list'}\"\n title=\"列表展示\"\n @click=\"onCheckType('list')\"\n ></i>\n <i\n class=\"api-icon icon-card\"\n :class=\"{'active': type === 'card'}\"\n title=\"卡片展示\"\n @click=\"onCheckType('card')\"\n ></i>\n </div>\n </header>\n <main>\n <section class=\"projects\" v-if=\"type==='card'\">\n <div class=\"project-card\" @click=\"onAdd\">\n <div class=\"add-card\">\n <i-icon type=\"md-add\" />\n <p>新建项目</p>\n </div>\n </div>\n <u-card\n v-for=\"item in dataList\"\n :data=\"item\"\n :key=\"item.id\"\n @on-delete=\"onDelete\"\n @on-detail=\"onDetail\"\n @on-edit=\"onEdit\"\n @on-export=\"onExport\"\n ></u-card>\n </section>\n <section class=\"projects\" v-else>\n <i-table class=\"diy-table\" :columns=\"columns\" :data=\"dataList\">\n <template slot-scope=\"{ row,index }\" slot=\"action\">\n <span @click=\"onExport(row)\" class=\"action-btn export\"\n ><i class=\"api-icon icon-export projects-icon-export\" title=\"导出此项目\"></i\n ></span>\n <span @click=\"onDetail(row)\" class=\"action-btn detail\"\n ><i class=\"api-icon icon-detail\" title=\"详情\"></i\n ></span>\n <span @click=\"onEdit(row)\" class=\"action-btn detail\"\n ><i class=\"api-icon icon-edit\" title=\"修改\"></i\n ></span>\n <u-confirm\n title=\"删除项目\"\n @on-ok=\"onDelete(row)\"\n message=\"项目内所有接口将被一并删除, 是否确认执行?\"\n >\n <span class=\"action-btn delete\"\n ><i\n class=\"api-icon icon-delete\"\n title=\"删除\"\n ></i\n ></span>\n </u-confirm>\n </template>\n </i-table>\n </section>\n </main>\n </main>\n <u-add-modal :visiable.sync=\"showAddModal\" :data=\"current\">\n <footer slot=\"footer\">\n <i-button @click=\"showAddModal = false\">取消</i-button>\n <i-button type=\"primary\" class=\"diy-btn-primary \" @click=\"onSave\"\n >确定</i-button\n >\n </footer>\n </u-add-modal>\n <i-spin fix v-show=\"loading\">\n <i class=\"spin-icon-load ivu-icon\"></i>\n </i-spin>\n</article>\n"
|
|
4091
4683
|
|
|
4092
4684
|
/***/ }),
|
|
4093
4685
|
|
|
@@ -4101,7 +4693,7 @@ module.exports = "<article class=\"project-list\">\r\n <header>\r\n <i
|
|
|
4101
4693
|
/***/ "d30a":
|
|
4102
4694
|
/***/ (function(module, exports) {
|
|
4103
4695
|
|
|
4104
|
-
module.exports = "<div class=\"u-selector-tree-node\" @click=\"onClickNode\">\
|
|
4696
|
+
module.exports = "<div class=\"u-selector-tree-node\" @click=\"onClickNode\">\n <i-icon v-if=\"!data.children\" type=\"ios-bookmark-outline\" />\n <template v-else>\n<!-- <i-->\n<!-- class=\"iconfont\"-->\n<!-- :class=\"data.expand? 'icon-expand': 'icon-unexpand'\"-->\n<!-- ></i>-->\n <i class=\"iconfont icon-bumenkaohe\"></i>\n </template>\n <span>{{data.title}}</span>\n</div>\n"
|
|
4105
4697
|
|
|
4106
4698
|
/***/ }),
|
|
4107
4699
|
|
|
@@ -9170,6 +9762,451 @@ var service_ProjectService = /** @class */function (_super) {
|
|
|
9170
9762
|
return ProjectService;
|
|
9171
9763
|
}(common_service);
|
|
9172
9764
|
/* harmony default export */ var project_list_service = (service_ProjectService);
|
|
9765
|
+
// EXTERNAL MODULE: external "crypto-js"
|
|
9766
|
+
var external_crypto_js_ = __webpack_require__("a2c5");
|
|
9767
|
+
var external_crypto_js_default = /*#__PURE__*/__webpack_require__.n(external_crypto_js_);
|
|
9768
|
+
|
|
9769
|
+
// CONCATENATED MODULE: ./src/application/data-type-of.ts
|
|
9770
|
+
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
9771
|
+
/**
|
|
9772
|
+
* 判断数据类型
|
|
9773
|
+
* @param data - 数据
|
|
9774
|
+
* @returns 数据类型
|
|
9775
|
+
* @public
|
|
9776
|
+
*/
|
|
9777
|
+
function dataTypeOf(data) {
|
|
9778
|
+
if (data instanceof Element) {
|
|
9779
|
+
return 'element';
|
|
9780
|
+
}
|
|
9781
|
+
return Object.prototype.toString.call(data).slice(8, -1).toLowerCase();
|
|
9782
|
+
}
|
|
9783
|
+
// CONCATENATED MODULE: ./src/application/url.ts
|
|
9784
|
+
/**
|
|
9785
|
+
* 清除 url 中重复的斜杠
|
|
9786
|
+
* @param url - 链接地址
|
|
9787
|
+
* @returns 链接地址
|
|
9788
|
+
* @public
|
|
9789
|
+
*/
|
|
9790
|
+
function cleanUrl(url) {
|
|
9791
|
+
return url.replace(/([^:]|^)\/{2,}/g, '$1/');
|
|
9792
|
+
}
|
|
9793
|
+
// EXTERNAL MODULE: ./node_modules/.pnpm/core-js@3.35.0/node_modules/core-js/modules/es.typed-array.at.js
|
|
9794
|
+
var es_typed_array_at = __webpack_require__("2597");
|
|
9795
|
+
|
|
9796
|
+
// EXTERNAL MODULE: ./node_modules/.pnpm/core-js@3.35.0/node_modules/core-js/modules/es.typed-array.find-last.js
|
|
9797
|
+
var es_typed_array_find_last = __webpack_require__("e459");
|
|
9798
|
+
|
|
9799
|
+
// EXTERNAL MODULE: ./node_modules/.pnpm/core-js@3.35.0/node_modules/core-js/modules/es.typed-array.find-last-index.js
|
|
9800
|
+
var es_typed_array_find_last_index = __webpack_require__("eab2");
|
|
9801
|
+
|
|
9802
|
+
// EXTERNAL MODULE: ./node_modules/.pnpm/core-js@3.35.0/node_modules/core-js/modules/es.typed-array.set.js
|
|
9803
|
+
var es_typed_array_set = __webpack_require__("6bf0");
|
|
9804
|
+
|
|
9805
|
+
// EXTERNAL MODULE: ./node_modules/.pnpm/core-js@3.35.0/node_modules/core-js/modules/es.typed-array.to-reversed.js
|
|
9806
|
+
var es_typed_array_to_reversed = __webpack_require__("46df");
|
|
9807
|
+
|
|
9808
|
+
// EXTERNAL MODULE: ./node_modules/.pnpm/core-js@3.35.0/node_modules/core-js/modules/es.typed-array.to-sorted.js
|
|
9809
|
+
var es_typed_array_to_sorted = __webpack_require__("e40c");
|
|
9810
|
+
|
|
9811
|
+
// EXTERNAL MODULE: ./node_modules/.pnpm/core-js@3.35.0/node_modules/core-js/modules/es.typed-array.with.js
|
|
9812
|
+
var es_typed_array_with = __webpack_require__("39d5");
|
|
9813
|
+
|
|
9814
|
+
// CONCATENATED MODULE: ./src/common/utils/random.ts
|
|
9815
|
+
|
|
9816
|
+
|
|
9817
|
+
|
|
9818
|
+
|
|
9819
|
+
|
|
9820
|
+
|
|
9821
|
+
|
|
9822
|
+
var RandomUtil = /** @class */function () {
|
|
9823
|
+
function RandomUtil() {}
|
|
9824
|
+
/**
|
|
9825
|
+
* 等价于Math.random()
|
|
9826
|
+
* @returns
|
|
9827
|
+
*/
|
|
9828
|
+
RandomUtil.prototype.random = function () {
|
|
9829
|
+
return window.crypto.getRandomValues(new Uint8Array(1))[0] * 0.001;
|
|
9830
|
+
};
|
|
9831
|
+
/**
|
|
9832
|
+
* 随机生成len长度的字符串,比如生成16位随机字符串:randomStr(16) 得到"bb2a6d2fe39bb7ee"
|
|
9833
|
+
* @param len
|
|
9834
|
+
*/
|
|
9835
|
+
RandomUtil.prototype.randomStr = function (len) {
|
|
9836
|
+
var byteLength = Math.ceil(len / 2); // 因为一个字节可以表示两个十六进制字符
|
|
9837
|
+
var randomBytes = new Uint8Array(byteLength);
|
|
9838
|
+
window.crypto.getRandomValues(randomBytes);
|
|
9839
|
+
var hexArray = Array.from(randomBytes).map(function (b) {
|
|
9840
|
+
return b.toString(16).padStart(2, "0");
|
|
9841
|
+
});
|
|
9842
|
+
var hexString = hexArray.join("").substr(0, len);
|
|
9843
|
+
return hexString;
|
|
9844
|
+
};
|
|
9845
|
+
/**
|
|
9846
|
+
* 随机生成len长度的纯数字字符串,比如randomNumberStr(16)得到 "1842442170233672"
|
|
9847
|
+
* @param len
|
|
9848
|
+
*/
|
|
9849
|
+
RandomUtil.prototype.randomNumberStr = function (len) {
|
|
9850
|
+
// 计算需要生成的字节数
|
|
9851
|
+
var byteLength = Math.ceil(len / 2);
|
|
9852
|
+
// 创建一个 Uint8Array 用于存储随机字节
|
|
9853
|
+
var randomBytes = new Uint8Array(byteLength);
|
|
9854
|
+
// 使用 window.crypto.getRandomValues 填充数组
|
|
9855
|
+
window.crypto.getRandomValues(randomBytes);
|
|
9856
|
+
// 将 Uint8Array 转换为一个数字字符串
|
|
9857
|
+
var randomNumber = "";
|
|
9858
|
+
for (var i = 0; i < byteLength; i++) {
|
|
9859
|
+
randomNumber += randomBytes[i].toString().padStart(2, "0");
|
|
9860
|
+
}
|
|
9861
|
+
// 截取指定长度的字符串
|
|
9862
|
+
return randomNumber.slice(0, len);
|
|
9863
|
+
};
|
|
9864
|
+
return RandomUtil;
|
|
9865
|
+
}();
|
|
9866
|
+
var randomUtil = new RandomUtil();
|
|
9867
|
+
/* harmony default export */ var random = (randomUtil);
|
|
9868
|
+
// CONCATENATED MODULE: ./src/application/signature.ts
|
|
9869
|
+
|
|
9870
|
+
|
|
9871
|
+
|
|
9872
|
+
|
|
9873
|
+
|
|
9874
|
+
|
|
9875
|
+
|
|
9876
|
+
|
|
9877
|
+
|
|
9878
|
+
|
|
9879
|
+
function isNil(value) {
|
|
9880
|
+
return value === null || value === undefined;
|
|
9881
|
+
}
|
|
9882
|
+
/**
|
|
9883
|
+
* 递归合并对象
|
|
9884
|
+
* @param target - 目标对象
|
|
9885
|
+
* @param sources - 源对象
|
|
9886
|
+
* @returns 合并后的对象
|
|
9887
|
+
*/
|
|
9888
|
+
function merge(target) {
|
|
9889
|
+
var _a, _b;
|
|
9890
|
+
var sources = [];
|
|
9891
|
+
for (var _i = 1; _i < arguments.length; _i++) {
|
|
9892
|
+
sources[_i - 1] = arguments[_i];
|
|
9893
|
+
}
|
|
9894
|
+
if (!sources.length) return target;
|
|
9895
|
+
var source = sources.shift();
|
|
9896
|
+
if (isObject(target) && isObject(source)) {
|
|
9897
|
+
for (var key in source) {
|
|
9898
|
+
if (isObject(source[key])) {
|
|
9899
|
+
if (!target[key]) Object.assign(target, (_a = {}, _a[key] = {}, _a));
|
|
9900
|
+
merge(target[key], source[key]);
|
|
9901
|
+
} else {
|
|
9902
|
+
Object.assign(target, (_b = {}, _b[key] = source[key], _b));
|
|
9903
|
+
}
|
|
9904
|
+
}
|
|
9905
|
+
}
|
|
9906
|
+
return merge.apply(void 0, __spreadArray([target], sources, false));
|
|
9907
|
+
}
|
|
9908
|
+
function isObject(item) {
|
|
9909
|
+
return item && typeof item === "object" && !Array.isArray(item);
|
|
9910
|
+
}
|
|
9911
|
+
/**
|
|
9912
|
+
* 将对象转换为查询字符串
|
|
9913
|
+
* @param obj - 要转换的对象
|
|
9914
|
+
* @returns 查询字符串
|
|
9915
|
+
*/
|
|
9916
|
+
function qsStringify(obj) {
|
|
9917
|
+
var params = new URLSearchParams();
|
|
9918
|
+
for (var key in obj) {
|
|
9919
|
+
if (obj.hasOwnProperty(key)) {
|
|
9920
|
+
params.append(key, obj[key]);
|
|
9921
|
+
}
|
|
9922
|
+
}
|
|
9923
|
+
return params.toString();
|
|
9924
|
+
}
|
|
9925
|
+
/**
|
|
9926
|
+
* 将查询字符串解析为对象
|
|
9927
|
+
* @param queryString - 要解析的查询字符串
|
|
9928
|
+
* @returns 解析后的对象
|
|
9929
|
+
*/
|
|
9930
|
+
function qsParse(queryString) {
|
|
9931
|
+
var params = new URLSearchParams(queryString);
|
|
9932
|
+
var parsedParams = {};
|
|
9933
|
+
params.forEach(function (value, key) {
|
|
9934
|
+
parsedParams[key] = value;
|
|
9935
|
+
});
|
|
9936
|
+
return parsedParams;
|
|
9937
|
+
}
|
|
9938
|
+
/**
|
|
9939
|
+
* Signature 请求签名
|
|
9940
|
+
* @public
|
|
9941
|
+
*/
|
|
9942
|
+
var signature_Signature = /** @class */function () {
|
|
9943
|
+
function Signature(appIdCode) {
|
|
9944
|
+
this._appIdCode = appIdCode;
|
|
9945
|
+
this.noncePrefix = this.generateRandomString();
|
|
9946
|
+
}
|
|
9947
|
+
Object.defineProperty(Signature.prototype, "appIdCode", {
|
|
9948
|
+
get: function () {
|
|
9949
|
+
return this._appIdCode;
|
|
9950
|
+
},
|
|
9951
|
+
enumerable: false,
|
|
9952
|
+
configurable: true
|
|
9953
|
+
});
|
|
9954
|
+
/**
|
|
9955
|
+
* 生成随机数
|
|
9956
|
+
* @returns
|
|
9957
|
+
*/
|
|
9958
|
+
Signature.prototype.generateRandomString = function () {
|
|
9959
|
+
return random.randomStr(8);
|
|
9960
|
+
};
|
|
9961
|
+
/**
|
|
9962
|
+
* 生成签名参数
|
|
9963
|
+
* @returns
|
|
9964
|
+
*/
|
|
9965
|
+
Signature.prototype.generateSignatureOption = function () {
|
|
9966
|
+
return {
|
|
9967
|
+
nonce: "".concat(this.noncePrefix, "_").concat(this.generateRandomString()),
|
|
9968
|
+
timestamp: Date.now().toString().substring(0, 10)
|
|
9969
|
+
};
|
|
9970
|
+
};
|
|
9971
|
+
Signature.prototype.stringToUTF8ByteSize = function (str) {
|
|
9972
|
+
var utf8Bytes = new TextEncoder().encode(str);
|
|
9973
|
+
return utf8Bytes.length;
|
|
9974
|
+
};
|
|
9975
|
+
Signature.prototype.isStringOverKB = function (str, size) {
|
|
9976
|
+
var byteSize = this.stringToUTF8ByteSize(str);
|
|
9977
|
+
return byteSize > size * 1024;
|
|
9978
|
+
};
|
|
9979
|
+
/**
|
|
9980
|
+
* 去除空参数
|
|
9981
|
+
* @param param - 参数
|
|
9982
|
+
* @returns
|
|
9983
|
+
*/
|
|
9984
|
+
Signature.prototype.removeNilValue = function (param) {
|
|
9985
|
+
if (dataTypeOf(param) === "object") {
|
|
9986
|
+
for (var key in param) {
|
|
9987
|
+
if (Object.prototype.hasOwnProperty.call(param, key)) {
|
|
9988
|
+
var value = param[key];
|
|
9989
|
+
var type = dataTypeOf(value);
|
|
9990
|
+
if (type === "object") {
|
|
9991
|
+
this.removeNilValue(value);
|
|
9992
|
+
} else {
|
|
9993
|
+
if (type === "null" || type === "undefined" || type === "function") {
|
|
9994
|
+
delete param[key];
|
|
9995
|
+
}
|
|
9996
|
+
}
|
|
9997
|
+
}
|
|
9998
|
+
}
|
|
9999
|
+
}
|
|
10000
|
+
};
|
|
10001
|
+
/**
|
|
10002
|
+
* 格式化 url value
|
|
10003
|
+
* @param value - 值
|
|
10004
|
+
* @returns
|
|
10005
|
+
*/
|
|
10006
|
+
Signature.prototype.formatEncodeValue = function (value) {
|
|
10007
|
+
var type = dataTypeOf(value);
|
|
10008
|
+
var isNilOrFunction = type === "null" || type === "undefined" || type === "function";
|
|
10009
|
+
var val = isNilOrFunction ? "" : value;
|
|
10010
|
+
return encodeURIComponent(val).replace(/%2B/g, "+").replace(/%20/g, "+").replace(/\(/g, "%28").replace(/\)/g, "%29").replace(/'/g, "%27").replace(/!/g, "%21").replace(/~/g, "%7E");
|
|
10011
|
+
};
|
|
10012
|
+
/**
|
|
10013
|
+
* 格式化 url params
|
|
10014
|
+
* @param params - 参数列表
|
|
10015
|
+
* @param key - 参数键
|
|
10016
|
+
* @param param - 参数
|
|
10017
|
+
* @returns
|
|
10018
|
+
*/
|
|
10019
|
+
Signature.prototype.formatEncodeParam = function (params, key, param) {
|
|
10020
|
+
var _this = this;
|
|
10021
|
+
var type = dataTypeOf(param);
|
|
10022
|
+
if (type === "object") {
|
|
10023
|
+
var keys = Object.keys(param).sort();
|
|
10024
|
+
if (keys.length === 0) {
|
|
10025
|
+
params.push("".concat(key, "={}"));
|
|
10026
|
+
} else {
|
|
10027
|
+
keys.forEach(function (k) {
|
|
10028
|
+
_this.formatEncodeParam(params, key === "" ? "".concat(k) : "".concat(key, "[").concat(k, "]"), param[k]);
|
|
10029
|
+
});
|
|
10030
|
+
}
|
|
10031
|
+
} else if (type === "array") {
|
|
10032
|
+
if (param.length === 0) {
|
|
10033
|
+
params.push("".concat(key, "=[]"));
|
|
10034
|
+
} else {
|
|
10035
|
+
param.forEach(function (e) {
|
|
10036
|
+
_this.formatEncodeParam(params, "".concat(key, "[]"), e);
|
|
10037
|
+
});
|
|
10038
|
+
}
|
|
10039
|
+
} else {
|
|
10040
|
+
params.push("".concat(key, "=").concat(this.formatEncodeValue(param)));
|
|
10041
|
+
}
|
|
10042
|
+
};
|
|
10043
|
+
/**
|
|
10044
|
+
* 参数排序
|
|
10045
|
+
* @param param - 参数
|
|
10046
|
+
* @returns
|
|
10047
|
+
*/
|
|
10048
|
+
Signature.prototype.sortParamByKey = function (param) {
|
|
10049
|
+
if (param === void 0) {
|
|
10050
|
+
param = {};
|
|
10051
|
+
}
|
|
10052
|
+
var params = [];
|
|
10053
|
+
this.formatEncodeParam(params, "", param);
|
|
10054
|
+
return params.join("&");
|
|
10055
|
+
};
|
|
10056
|
+
/**
|
|
10057
|
+
* 签名加密
|
|
10058
|
+
* @param url - 请求地址
|
|
10059
|
+
* @returns
|
|
10060
|
+
*/
|
|
10061
|
+
Signature.prototype.cryptoHash = function (url) {
|
|
10062
|
+
if (window.commonSetting.signatureEncodeType === "Base64") {
|
|
10063
|
+
return external_crypto_js_default.a.HmacSHA1(url, this._appIdCode.code).toString(external_crypto_js_default.a.enc.Base64);
|
|
10064
|
+
} else {
|
|
10065
|
+
return external_crypto_js_default.a.HmacSHA1(url, this._appIdCode.code).toString(external_crypto_js_default.a.enc.Hex).toUpperCase();
|
|
10066
|
+
}
|
|
10067
|
+
};
|
|
10068
|
+
/**
|
|
10069
|
+
* 获取 url 参数
|
|
10070
|
+
* @param url - 请求地址
|
|
10071
|
+
* @returns
|
|
10072
|
+
*/
|
|
10073
|
+
Signature.prototype.urlSearchParams = function (url) {
|
|
10074
|
+
var _a;
|
|
10075
|
+
if (url && url.indexOf("?") > -1) {
|
|
10076
|
+
return qsParse((_a = url.split("?").pop()) !== null && _a !== void 0 ? _a : "");
|
|
10077
|
+
}
|
|
10078
|
+
return {};
|
|
10079
|
+
};
|
|
10080
|
+
/**
|
|
10081
|
+
* 获取签名 url
|
|
10082
|
+
* @param href - 请求地址
|
|
10083
|
+
* @returns 签名 url
|
|
10084
|
+
* @public
|
|
10085
|
+
*/
|
|
10086
|
+
Signature.prototype.signatureHref = function (href) {
|
|
10087
|
+
try {
|
|
10088
|
+
// 0. 构造 url
|
|
10089
|
+
var pathname = new URL(href, window.location.origin).pathname;
|
|
10090
|
+
// 1. 获取参数
|
|
10091
|
+
var params = this.urlSearchParams(href);
|
|
10092
|
+
// 2. 生成加密参数
|
|
10093
|
+
var signatureOption = this.generateSignatureOption();
|
|
10094
|
+
// 3. 参数排序
|
|
10095
|
+
merge(params, signatureOption);
|
|
10096
|
+
var paramStr = this.sortParamByKey(params);
|
|
10097
|
+
// 4. 获取 uri
|
|
10098
|
+
var uri = cleanUrl("/".concat(pathname));
|
|
10099
|
+
// 5. 拼接
|
|
10100
|
+
var full = "".concat(uri, "?").concat(paramStr);
|
|
10101
|
+
// 6. 加密
|
|
10102
|
+
var signature_1 = this.cryptoHash(full);
|
|
10103
|
+
// 7. 拼接加密参数
|
|
10104
|
+
href = "".concat(full, "&signature=").concat(signature_1);
|
|
10105
|
+
} catch (_a) {
|
|
10106
|
+
console.error("签名失败,请使用有效的链接", href);
|
|
10107
|
+
}
|
|
10108
|
+
return href;
|
|
10109
|
+
};
|
|
10110
|
+
/**
|
|
10111
|
+
* 获取签名参数
|
|
10112
|
+
* @param config - Axios 请求配置
|
|
10113
|
+
* @returns 签名参数
|
|
10114
|
+
* @public
|
|
10115
|
+
*/
|
|
10116
|
+
Signature.prototype.signatureConfig = function (config) {
|
|
10117
|
+
var _a, _b, _c, _d, _e;
|
|
10118
|
+
try {
|
|
10119
|
+
// 获取 method
|
|
10120
|
+
var method = (_a = config.method) === null || _a === void 0 ? void 0 : _a.toUpperCase();
|
|
10121
|
+
var isGet = method === "GET";
|
|
10122
|
+
// 获取 data
|
|
10123
|
+
var rawData = Object(external_vue_["toRaw"])(config.data);
|
|
10124
|
+
var isObjectPayload = rawData !== null && typeof rawData === "object"; // 参考 axios 源码
|
|
10125
|
+
// 获取 contentType
|
|
10126
|
+
var contentType = ((_c = (_b = config.headers) === null || _b === void 0 ? void 0 : _b["Content-Type"]) === null || _c === void 0 ? void 0 : _c.toString()) || "";
|
|
10127
|
+
// 数据类型是否为 formData
|
|
10128
|
+
var isMultipartFormData = contentType.includes("multipart/form-data");
|
|
10129
|
+
// 数据类型是否为 json
|
|
10130
|
+
var isApplicationJson = contentType.includes("application/json");
|
|
10131
|
+
if (!isGet && !contentType && isObjectPayload) {
|
|
10132
|
+
// 若 contentType 为空,且 config.data 为对象,则 axios 会默认添加 application/json header
|
|
10133
|
+
isApplicationJson = true;
|
|
10134
|
+
}
|
|
10135
|
+
// 0. 传入 App-Id,用与服务器识别应用
|
|
10136
|
+
merge(config, {
|
|
10137
|
+
headers: {
|
|
10138
|
+
"App-Id": this._appIdCode.id
|
|
10139
|
+
}
|
|
10140
|
+
});
|
|
10141
|
+
// 1. 获取参数
|
|
10142
|
+
var params = {};
|
|
10143
|
+
// 1.1 取 url 参数
|
|
10144
|
+
var urlParams = this.urlSearchParams(config.url);
|
|
10145
|
+
merge(params, urlParams);
|
|
10146
|
+
// 1.2 取 config.params 参数
|
|
10147
|
+
if (!isNil(config.params)) {
|
|
10148
|
+
var raw = Object(external_vue_["toRaw"])(config.params);
|
|
10149
|
+
// params 内的参数需要去除 null|undefined|function
|
|
10150
|
+
this.removeNilValue(raw);
|
|
10151
|
+
config.params = raw;
|
|
10152
|
+
merge(params, qsParse(qsStringify(raw)));
|
|
10153
|
+
}
|
|
10154
|
+
// 1.3 取 config.data 参数
|
|
10155
|
+
if (!isNil(rawData) && isObjectPayload) {
|
|
10156
|
+
// 非 json 和 formData 需合并参数
|
|
10157
|
+
if (!isMultipartFormData && !isApplicationJson) {
|
|
10158
|
+
merge(params, rawData);
|
|
10159
|
+
}
|
|
10160
|
+
}
|
|
10161
|
+
// 2. 生成加密参数
|
|
10162
|
+
var signatureOption = this.generateSignatureOption();
|
|
10163
|
+
// 3. 参数排序
|
|
10164
|
+
merge(params, signatureOption);
|
|
10165
|
+
var paramStr = this.sortParamByKey(params);
|
|
10166
|
+
// 3.1 数据类型是否为 json 时,将其 stringify 拼接到最后
|
|
10167
|
+
if (isApplicationJson) {
|
|
10168
|
+
var rawDataStr = JSON.stringify(rawData);
|
|
10169
|
+
var isOver128KB = this.isStringOverKB(rawDataStr, 128);
|
|
10170
|
+
if (!isOver128KB) {
|
|
10171
|
+
if (isObjectPayload) {
|
|
10172
|
+
paramStr += this.formatEncodeValue(rawDataStr);
|
|
10173
|
+
} else {
|
|
10174
|
+
paramStr += this.formatEncodeValue(rawData);
|
|
10175
|
+
}
|
|
10176
|
+
}
|
|
10177
|
+
}
|
|
10178
|
+
// 4. 获取 uri
|
|
10179
|
+
var path = "";
|
|
10180
|
+
if ((_d = config.url) === null || _d === void 0 ? void 0 : _d.startsWith("http")) {
|
|
10181
|
+
path = config.url;
|
|
10182
|
+
} else if ((_e = config.url) === null || _e === void 0 ? void 0 : _e.startsWith("/")) {
|
|
10183
|
+
path = "".concat(config.baseURL || "").concat(config.url || "");
|
|
10184
|
+
} else {
|
|
10185
|
+
path = "".concat(config.baseURL || "", "/").concat(config.url || "");
|
|
10186
|
+
}
|
|
10187
|
+
var pathname = new URL(path, window.location.origin).pathname;
|
|
10188
|
+
var uri = cleanUrl("/".concat(pathname));
|
|
10189
|
+
// 5. 拼接
|
|
10190
|
+
var full = "".concat(uri, "?").concat(paramStr);
|
|
10191
|
+
// 6. 加密
|
|
10192
|
+
signatureOption.signature = this.cryptoHash(full);
|
|
10193
|
+
// 7. 拼接加密参数
|
|
10194
|
+
config.params = merge({}, config.params, signatureOption);
|
|
10195
|
+
} catch (error) {
|
|
10196
|
+
console.error("签名失败", error);
|
|
10197
|
+
}
|
|
10198
|
+
};
|
|
10199
|
+
return Signature;
|
|
10200
|
+
}();
|
|
10201
|
+
|
|
10202
|
+
/**
|
|
10203
|
+
* 签名密钥
|
|
10204
|
+
*/
|
|
10205
|
+
var appIdCode = {
|
|
10206
|
+
id: "dex",
|
|
10207
|
+
code: "bb0a92a340ae4f5d936a9e6b010cb127"
|
|
10208
|
+
};
|
|
10209
|
+
var signature = new signature_Signature(appIdCode);
|
|
9173
10210
|
// CONCATENATED MODULE: ./src/views/project-list/index.ts
|
|
9174
10211
|
|
|
9175
10212
|
|
|
@@ -9182,6 +10219,7 @@ var service_ProjectService = /** @class */function (_super) {
|
|
|
9182
10219
|
|
|
9183
10220
|
|
|
9184
10221
|
|
|
10222
|
+
|
|
9185
10223
|
var project_list_ProjectList = /** @class */function (_super) {
|
|
9186
10224
|
__extends(ProjectList, _super);
|
|
9187
10225
|
function ProjectList() {
|
|
@@ -9216,7 +10254,7 @@ var project_list_ProjectList = /** @class */function (_super) {
|
|
|
9216
10254
|
}
|
|
9217
10255
|
Object.defineProperty(ProjectList.prototype, "uploadAction", {
|
|
9218
10256
|
get: function () {
|
|
9219
|
-
return commonSetting.baseUrl + "/unity/api/info/import";
|
|
10257
|
+
return signature.signatureHref(commonSetting.baseUrl + "/unity/api/info/import");
|
|
9220
10258
|
},
|
|
9221
10259
|
enumerable: false,
|
|
9222
10260
|
configurable: true
|
|
@@ -9327,7 +10365,8 @@ var project_list_ProjectList = /** @class */function (_super) {
|
|
|
9327
10365
|
get: function () {
|
|
9328
10366
|
var token = getToken();
|
|
9329
10367
|
return {
|
|
9330
|
-
Authorization: "Bearer " + token
|
|
10368
|
+
Authorization: "Bearer " + token,
|
|
10369
|
+
"App-Id": signature.appIdCode.id
|
|
9331
10370
|
};
|
|
9332
10371
|
},
|
|
9333
10372
|
enumerable: false,
|
|
@@ -13916,7 +14955,7 @@ module.exports = Object.hasOwn || function hasOwn(it, key) {
|
|
|
13916
14955
|
/***/ "d8b4":
|
|
13917
14956
|
/***/ (function(module, exports) {
|
|
13918
14957
|
|
|
13919
|
-
module.exports = "<div class=\"v-parameter-list-container\">\
|
|
14958
|
+
module.exports = "<div class=\"v-parameter-list-container\">\n <main>\n <div class=\"parameter-table-btns\" v-if=\"isEdit\">\n <span class=\"table-btns table-btns-add\" @click=\"onAdd\">\n <i class=\"iconfont icon-add\"></i>\n <span class=\"table-btns-text\">新增</span>\n </span>\n <span class=\"table-btns table-btns-delete\" :class=\"selections.length ? '' : 'icon-button-disabled'\" @click=\"onBatchDelete\">\n <i class=\"iconfont icon-delete\"></i>\n <span class=\"table-btns-text\">批量删除</span>\n </span>\n </div>\n <template v-if=\"data&&data.length\">\n <i-table class=\"diy-table\" :columns=\"columns\" :data=\"data\" @on-selection-change=\"onSelectionChange\">\n <div slot=\"name\" slot-scope=\"{row}\">\n <i-input class=\"diy-input\" v-if=\"row.isEdit\" v-model=\"row.name\">{{row.name}}</i-input>\n <span v-else>{{row.name}}</span>\n </div>\n <div slot=\"type\" slot-scope=\"{row}\">\n <i-select class=\"diy-select\" v-if=\"row.isEdit\" v-model=\"row.type\" transfer>\n <i-option v-for=\"item in typeList\" :value=\"item.name\" :key=\"item.name\">{{item.text}}</i-option>\n </i-select>\n <span v-else>{{getTypeText(row.type)}}</span>\n </div>\n <div slot=\"required\" slot-scope=\"{row}\">\n <i-select class=\"diy-select\" v-if=\"row.isEdit\" :value=\"booleanObj[row.required]\" @on-change=\"onChangeRequired($event, row)\" transfer>\n <i-option :value=\"0\" key=\"0\">否</i-option>\n <i-option :value=\"1\" key=\"1\">是</i-option>\n </i-select>\n <span v-else>{{row.required ? \"是\" : \"否\"}}</span>\n </div>\n <div slot=\"defaultValue\" slot-scope=\"{row}\">\n <i-input class=\"diy-input\" v-if=\"row.isEdit\" v-model=\"row.defaultValue\"></i-input>\n <span v-else>{{row.defaultValue}}</span>\n </div>\n <div slot=\"description\" slot-scope=\"{row}\">\n <i-input class=\"diy-input\" v-if=\"row.isEdit\" v-model=\"row.description\"></i-input>\n <span v-else>{{row.description}}</span>\n </div>\n <div v-if=\"isEdit\" class=\"row-actions\" slot=\"actions\" slot-scope=\"{row,index}\">\n <div v-if=\"row.isEdit\" class=\"edit-status\">\n <i class=\"iconfont icon-ok\" title=\"确认\" @click=\"onConfirm(row, index)\"></i>\n <i class=\"iconfont icon-cancel\" title=\"取消\" @click=\"onCancel(index)\"></i>\n </div>\n <div v-else class=\"read-status\">\n <i class=\"iconfont icon-edit\" title=\"编辑\" @click=\"onEdit(row)\"></i>\n <i-poptip confirm transfer title=\"确认删除这条数据吗?\" @on-ok=\"onDelete(row, index)\">\n <i class=\"iconfont icon-delete\" title=\"删除\"> </i>\n </i-poptip>\n </div>\n </div>\n </i-table>\n </template>\n <template v-else>\n <div class=\"table-no-data-wrap\">\n <div class=\"table-no-data\">\n <div class=\"table-no-data-bg\"></div>\n <div class=\"table-no-data-text\">暂无数据</div>\n </div>\n </div>\n </template>\n </main>\n</div>\n"
|
|
13920
14959
|
|
|
13921
14960
|
/***/ }),
|
|
13922
14961
|
|
|
@@ -13937,7 +14976,7 @@ module.exports = "<!DOCTYPE html>\n<article class=\"v-api-combine-info-wrapper\"
|
|
|
13937
14976
|
/***/ "d953":
|
|
13938
14977
|
/***/ (function(module, exports) {
|
|
13939
14978
|
|
|
13940
|
-
module.exports = "<div class=\"interface-tree-node\">\
|
|
14979
|
+
module.exports = "<div class=\"interface-tree-node\">\n <span v-if=\"isLeaf && data.method\" class=\"method\" :class=\"data.method.toLowerCase() \" @click=\"onClick\"\n >{{data.method}}</span\n >\n <i :class=\"isLeaf ? 'iconfont icon-API' : 'iconfont icon-APIfenzu2'\" @click=\"onClick\"></i>\n <span class=\"interface-tree-node-name\" :title=\"data.title\" @click=\"onClick\">{{data.title}}</span>\n <i-dropdown\n transfer\n stop-propagation\n class=\"diy-dropdown\"\n transfer-class-name=\"diy-transfer-dropdown\"\n @on-click=\"onClickAction\"\n >\n <i class=\"api-icon icon-more\"></i>\n <i-dropdown-menu slot=\"list\">\n <template v-if=\"isLeaf\">\n <i-dropdown-item name=\"edit-interface\">修改</i-dropdown-item>\n <i-dropdown-item name=\"delete-interface\">删除</i-dropdown-item>\n <i-dropdown-item name=\"copy-interface\">复制</i-dropdown-item>\n </template>\n <template v-else>\n <i-dropdown-item name=\"edit-group\">修改分组</i-dropdown-item>\n <i-dropdown-item name=\"add-interface\">新增接口</i-dropdown-item>\n <i-dropdown-item name=\"edit-attribute\">批量修改属性</i-dropdown-item>\n <u-confirm\n title=\"删除分组\"\n @on-ok=\"onDelete('delete-group')\"\n message=\"分组内的接口一并删除, 是否确认执行?\"\n >\n <i-dropdown-item>删除</i-dropdown-item>\n </u-confirm>\n </template>\n </i-dropdown-menu>\n </i-dropdown>\n</div>\n"
|
|
13941
14980
|
|
|
13942
14981
|
/***/ }),
|
|
13943
14982
|
|
|
@@ -14080,6 +15119,53 @@ module.exports = [
|
|
|
14080
15119
|
];
|
|
14081
15120
|
|
|
14082
15121
|
|
|
15122
|
+
/***/ }),
|
|
15123
|
+
|
|
15124
|
+
/***/ "e40c":
|
|
15125
|
+
/***/ (function(module, exports, __webpack_require__) {
|
|
15126
|
+
|
|
15127
|
+
"use strict";
|
|
15128
|
+
|
|
15129
|
+
var ArrayBufferViewCore = __webpack_require__("6a10");
|
|
15130
|
+
var uncurryThis = __webpack_require__("720f");
|
|
15131
|
+
var aCallable = __webpack_require__("7801");
|
|
15132
|
+
var arrayFromConstructorAndList = __webpack_require__("00fe");
|
|
15133
|
+
|
|
15134
|
+
var aTypedArray = ArrayBufferViewCore.aTypedArray;
|
|
15135
|
+
var getTypedArrayConstructor = ArrayBufferViewCore.getTypedArrayConstructor;
|
|
15136
|
+
var exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;
|
|
15137
|
+
var sort = uncurryThis(ArrayBufferViewCore.TypedArrayPrototype.sort);
|
|
15138
|
+
|
|
15139
|
+
// `%TypedArray%.prototype.toSorted` method
|
|
15140
|
+
// https://tc39.es/ecma262/#sec-%typedarray%.prototype.tosorted
|
|
15141
|
+
exportTypedArrayMethod('toSorted', function toSorted(compareFn) {
|
|
15142
|
+
if (compareFn !== undefined) aCallable(compareFn);
|
|
15143
|
+
var O = aTypedArray(this);
|
|
15144
|
+
var A = arrayFromConstructorAndList(getTypedArrayConstructor(O), O);
|
|
15145
|
+
return sort(A, compareFn);
|
|
15146
|
+
});
|
|
15147
|
+
|
|
15148
|
+
|
|
15149
|
+
/***/ }),
|
|
15150
|
+
|
|
15151
|
+
/***/ "e459":
|
|
15152
|
+
/***/ (function(module, exports, __webpack_require__) {
|
|
15153
|
+
|
|
15154
|
+
"use strict";
|
|
15155
|
+
|
|
15156
|
+
var ArrayBufferViewCore = __webpack_require__("6a10");
|
|
15157
|
+
var $findLast = __webpack_require__("3bdc").findLast;
|
|
15158
|
+
|
|
15159
|
+
var aTypedArray = ArrayBufferViewCore.aTypedArray;
|
|
15160
|
+
var exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;
|
|
15161
|
+
|
|
15162
|
+
// `%TypedArray%.prototype.findLast` method
|
|
15163
|
+
// https://tc39.es/ecma262/#sec-%typedarray%.prototype.findlast
|
|
15164
|
+
exportTypedArrayMethod('findLast', function findLast(predicate /* , thisArg */) {
|
|
15165
|
+
return $findLast(aTypedArray(this), predicate, arguments.length > 1 ? arguments[1] : undefined);
|
|
15166
|
+
});
|
|
15167
|
+
|
|
15168
|
+
|
|
14083
15169
|
/***/ }),
|
|
14084
15170
|
|
|
14085
15171
|
/***/ "e614":
|
|
@@ -14110,7 +15196,7 @@ module.exports = function (argument) {
|
|
|
14110
15196
|
/***/ "e718":
|
|
14111
15197
|
/***/ (function(module, exports) {
|
|
14112
15198
|
|
|
14113
|
-
module.exports = "<section class=\"v-base-editor-container\">\
|
|
15199
|
+
module.exports = "<section class=\"v-base-editor-container\">\n <u-editor @inited=\"onEditorInited\" :model.sync=\"script\" lang=\"groovy\"></u-editor>\n</section>\n"
|
|
14114
15200
|
|
|
14115
15201
|
/***/ }),
|
|
14116
15202
|
|
|
@@ -14135,6 +15221,44 @@ module.exports = !fails(function () {
|
|
|
14135
15221
|
|
|
14136
15222
|
// extracted by mini-css-extract-plugin
|
|
14137
15223
|
|
|
15224
|
+
/***/ }),
|
|
15225
|
+
|
|
15226
|
+
/***/ "eab2":
|
|
15227
|
+
/***/ (function(module, exports, __webpack_require__) {
|
|
15228
|
+
|
|
15229
|
+
"use strict";
|
|
15230
|
+
|
|
15231
|
+
var ArrayBufferViewCore = __webpack_require__("6a10");
|
|
15232
|
+
var $findLastIndex = __webpack_require__("3bdc").findLastIndex;
|
|
15233
|
+
|
|
15234
|
+
var aTypedArray = ArrayBufferViewCore.aTypedArray;
|
|
15235
|
+
var exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;
|
|
15236
|
+
|
|
15237
|
+
// `%TypedArray%.prototype.findLastIndex` method
|
|
15238
|
+
// https://tc39.es/ecma262/#sec-%typedarray%.prototype.findlastindex
|
|
15239
|
+
exportTypedArrayMethod('findLastIndex', function findLastIndex(predicate /* , thisArg */) {
|
|
15240
|
+
return $findLastIndex(aTypedArray(this), predicate, arguments.length > 1 ? arguments[1] : undefined);
|
|
15241
|
+
});
|
|
15242
|
+
|
|
15243
|
+
|
|
15244
|
+
/***/ }),
|
|
15245
|
+
|
|
15246
|
+
/***/ "ead7":
|
|
15247
|
+
/***/ (function(module, exports, __webpack_require__) {
|
|
15248
|
+
|
|
15249
|
+
"use strict";
|
|
15250
|
+
|
|
15251
|
+
var toIntegerOrInfinity = __webpack_require__("9b7f");
|
|
15252
|
+
|
|
15253
|
+
var $RangeError = RangeError;
|
|
15254
|
+
|
|
15255
|
+
module.exports = function (it) {
|
|
15256
|
+
var result = toIntegerOrInfinity(it);
|
|
15257
|
+
if (result < 0) throw new $RangeError("The argument can't be less than 0");
|
|
15258
|
+
return result;
|
|
15259
|
+
};
|
|
15260
|
+
|
|
15261
|
+
|
|
14138
15262
|
/***/ }),
|
|
14139
15263
|
|
|
14140
15264
|
/***/ "eaed":
|
|
@@ -14207,7 +15331,7 @@ module.exports = NATIVE_SYMBOL
|
|
|
14207
15331
|
/***/ "ef27":
|
|
14208
15332
|
/***/ (function(module, exports) {
|
|
14209
15333
|
|
|
14210
|
-
module.exports = "<article class=\"project-card\" @click=\"onDetail\">\
|
|
15334
|
+
module.exports = "<article class=\"project-card\" @click=\"onDetail\">\n <header>{{data.name}}</header>\n <i-dropdown transfer transfer-class-name=\"api-project-oprate\" class=\"project-card-i-dropdown\" @on-click=\"onClick\">\n <i-icon type=\"ios-more\" />\n <i-dropdown-menu slot=\"list\">\n <i-dropdown-item :name=\"'export'\">\n <i\n class=\"api-icon icon-export project-card-i-dropdown-item-icon\"\n title=\"导出此项目\"\n @click.stop=\"onExport\"\n ></i>\n 导出此项目\n </i-dropdown-item>\n </i-dropdown-menu>\n </i-dropdown>\n <main></main>\n <footer>\n <div @click.stop=\"onEdit\">修改</div>\n <u-confirm\n class=\"delete\"\n title=\"删除项目\"\n message=\"项目内所有接口将被一并删除, 是否确认执行?\"\n @on-ok=\"onDelete\"\n >\n <span>删除</span>\n </u-confirm>\n </footer>\n</article>\n"
|
|
14211
15335
|
|
|
14212
15336
|
/***/ }),
|
|
14213
15337
|
|
|
@@ -14231,14 +15355,25 @@ module.exports = function (bitmap, value) {
|
|
|
14231
15355
|
/***/ "f40e":
|
|
14232
15356
|
/***/ (function(module, exports) {
|
|
14233
15357
|
|
|
14234
|
-
module.exports = "<article class=\"interface-settings\" :class=\"{'script-max': scriptView}\">\
|
|
15358
|
+
module.exports = "<article class=\"interface-settings\" :class=\"{'script-max': scriptView}\">\n <header v-show=\"!scriptView\">\n<!-- <i-input class=\"diy-input\" v-model=\"interfaceModel.info.url\">-->\n<!-- <i-select transfer slot=\"prepend\" class=\"diy-select\" v-model=\"interfaceModel.info.method\">-->\n<!-- <i-option v-for=\"item in typeList\" :key=\"item.value\" :value=\"item.value\">{{item.text}}</i-option>-->\n<!-- </i-select>-->\n<!-- </i-input>-->\n <i-select class=\"diy-select method-select\" v-model=\"interfaceModel.info.method\">\n <i-option v-for=\"item in typeList\" :key=\"item.value\" :value=\"item.value\">{{item.text}}</i-option>\n </i-select>\n <i-select ref=\"addEnvParamSelect\" class=\"diy-select env-select\" v-model=\"interfaceModel.info.envId\" placeholder=\"请选择环境变量\" clearable>\n <i-option v-for=\"item in paramList\" :key=\"item.id\" :value=\"item.id\">{{item.name + \":\" + item.value}}</i-option>\n <i-option class=\"add-security-item\" value=\"''\">\n <div class=\"add-security-item-content\" @click.stop=\"onAddEnvParam\">\n <i class=\"api-icon icon-add\"></i>\n <span>新增环境变量</span>\n </div>\n </i-option>\n </i-select>\n <i-input class=\"diy-input url-input\" v-model=\"interfaceModel.info.url\"></i-input>\n\n <i-button type=\"primary\" class=\"diy-btn-primary submit-btn\" @click=\"onRun\">发送</i-button>\n <i-button type=\"primary\" class=\"diy-btn-primary\" @click=\"onSave\" ghost>保存</i-button>\n <i-button type=\"primary\" class=\"diy-btn-primary his-btn\" @click=\"onVersion\" ghost>查看历史版本</i-button>\n <i class=\"export iconfont icon-xiazai\" title=\"导出\" type=\"md-download\" @click=\"onExport\"></i>\n <i-upload action=\"\" :before-upload=\"onImport\" :show-upload-list=\"false\">\n <i class=\"import iconfont icon-shangchuan\" title=\"导入\" type=\"md-cloud-upload\"></i>\n </i-upload>\n </header>\n <main :class=\"{'transverse': !lengthwise}\">\n <section class=\"request\">\n <div v-show=\"!scriptView\" class=\"request-bar\">\n <div\n class=\"tag\"\n :class=\"{'active': currentRequestSettingType.name.indexOf(item.name) === 0}\"\n v-for=\"(item,index) in requertSettingTypeList\"\n :key=\"item.name\"\n @click=\"onClickRequertSettingTpye(item)\"\n >\n <span>{{item.title}}</span>\n </div>\n </div>\n <div class=\"request-content\">\n <component\n :is=\"currentRequestSettingType.name\"\n :lengthwise=\"lengthwise\"\n :interface-model=\"interfaceModel\"\n :response=\"response\"\n :key=\"interfaceModel.info.id + currentRequestSettingType.name\"\n :projectID=\"projectId\"\n :currentSecurityID=\"currentId\"\n :errorLine=\"!originId || originId === interfaceModel.info.id ? errorLine : []\"\n :formData=\"formData\"\n @on-current-id=\"onCurrentId\"\n @on-script-run=\"onScriptRun\"\n @on-script-save=\"onSave\"\n @on-script-max=\"onScriptMax\"\n ></component>\n </div>\n </section>\n <response :key=\"interfaceModel.info.id + 'response'\" :lengthwise=\"lengthwise\" :response=\"response\"></response>\n </main>\n <i-spin fix v-show=\"loading\">\n <i class=\"spin-icon-load ivu-icon\"></i>\n </i-spin>\n <u-environment-modal :visiable.sync=\"showEnvironmentModal\" :projectId=\"projectId\" @on-refresh=\"getEnvironmentParamList\" :isAdd=\"true\"></u-environment-modal>\n <i-modal class=\"diy-modal edit-import-name\" v-model=\"showImportModal\" :mask-closable=\"false\">\n <p slot=\"header\">编辑名称</p>\n <i-form ref=\"import\" :model=\"apiForm\" :rules=\"rules\">\n <i-form-item label=\"环境变量:\" prop=\"envName\">\n <i-input v-model=\"apiForm.envName\"></i-input>\n </i-form-item>\n\n <i-form-item label=\"授权:\" prop=\"authName\">\n <i-input v-model=\"apiForm.authName\"></i-input>\n </i-form-item>\n </i-form>\n <div class=\"handle-btn\" slot=\"footer\">\n <i-button class=\"diy-btn-primary\" type=\"primary\" @click.stop=\"saveImportData(importObj)\">确定</i-button>\n <i-button class=\"diy-btn-text\" @click.stop=\"cancleModify\">取消</i-button>\n </div>\n </i-modal>\n</article>\n"
|
|
15359
|
+
|
|
15360
|
+
/***/ }),
|
|
15361
|
+
|
|
15362
|
+
/***/ "f764":
|
|
15363
|
+
/***/ (function(module, exports, __webpack_require__) {
|
|
15364
|
+
|
|
15365
|
+
"use strict";
|
|
15366
|
+
|
|
15367
|
+
// eslint-disable-next-line es/no-typed-arrays -- safe
|
|
15368
|
+
module.exports = typeof ArrayBuffer != 'undefined' && typeof DataView != 'undefined';
|
|
15369
|
+
|
|
14235
15370
|
|
|
14236
15371
|
/***/ }),
|
|
14237
15372
|
|
|
14238
15373
|
/***/ "f9a4":
|
|
14239
15374
|
/***/ (function(module, exports) {
|
|
14240
15375
|
|
|
14241
|
-
module.exports = "<i-switch :class=\"{ 'mid-style': midState }\" :value=\"showValue\" size=\"large\" :true-value=\"1\" :false-value=\"0\" @on-change=\"onChange\" >\
|
|
15376
|
+
module.exports = "<i-switch :class=\"{ 'mid-style': midState }\" :value=\"showValue\" size=\"large\" :true-value=\"1\" :false-value=\"0\" @on-change=\"onChange\" >\n <span slot=\"open\">启用</span>\n <span slot=\"close\">禁用</span>\n</i-switch>"
|
|
14242
15377
|
|
|
14243
15378
|
/***/ }),
|
|
14244
15379
|
|