@tuoyuan/module-page-select 1.1.2 → 1.1.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.
@@ -1,7 +1,7 @@
1
1
  /******/ (function() { // webpackBootstrap
2
2
  /******/ var __webpack_modules__ = ({
3
3
 
4
- /***/ 6447:
4
+ /***/ 7903:
5
5
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
6
6
 
7
7
  "use strict";
@@ -15,7 +15,7 @@ __webpack_require__.r(__webpack_exports__);
15
15
 
16
16
  var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));
17
17
  // Module
18
- ___CSS_LOADER_EXPORT___.push([module.id, ".module-page-select[data-v-3fb01432]{width:100%}.selection-preview[data-v-3fb01432]{margin-top:8px;padding:8px 12px;background:#f0f9ff;border:1px solid #91d5ff;border-radius:4px;font-size:13px}.preview-label[data-v-3fb01432]{color:#666;font-size:12px;margin-bottom:4px}.preview-value[data-v-3fb01432]{color:#1890ff;font-weight:500}.config-form[data-v-3fb01432]{margin-top:16px}.array-editor[data-v-3fb01432]{display:flex;flex-direction:column;gap:8px}.array-item[data-v-3fb01432]{display:flex;align-items:center;gap:8px;padding:8px;background:#f5f5f5;border-radius:4px}.array-item-fields[data-v-3fb01432]{display:flex;flex:1;gap:8px}", ""]);
18
+ ___CSS_LOADER_EXPORT___.push([module.id, ".module-page-select[data-v-70a1b8ff]{width:100%}.selection-preview[data-v-70a1b8ff]{margin-top:8px;padding:8px 12px;background:#f0f9ff;border:1px solid #91d5ff;border-radius:4px;font-size:13px}.preview-label[data-v-70a1b8ff]{color:#666;font-size:12px;margin-bottom:4px}.preview-value[data-v-70a1b8ff]{color:#1890ff;font-weight:500}.config-form[data-v-70a1b8ff]{margin-top:16px}.array-editor[data-v-70a1b8ff]{display:flex;flex-direction:column;gap:8px}.array-item[data-v-70a1b8ff]{display:flex;align-items:center;gap:8px;padding:8px;background:#f5f5f5;border-radius:4px}.array-item-fields[data-v-70a1b8ff]{display:flex;flex:1;gap:8px}", ""]);
19
19
  // Exports
20
20
  /* harmony default export */ __webpack_exports__["default"] = (___CSS_LOADER_EXPORT___);
21
21
 
@@ -148,19 +148,19 @@ exports.A = (sfc, props) => {
148
148
 
149
149
  /***/ }),
150
150
 
151
- /***/ 1890:
151
+ /***/ 5082:
152
152
  /***/ (function(module, __unused_webpack_exports, __webpack_require__) {
153
153
 
154
154
  // style-loader: Adds some css to the DOM by adding a <style> tag
155
155
 
156
156
  // load the styles
157
- var content = __webpack_require__(6447);
157
+ var content = __webpack_require__(7903);
158
158
  if(content.__esModule) content = content.default;
159
159
  if(typeof content === 'string') content = [[module.id, content, '']];
160
160
  if(content.locals) module.exports = content.locals;
161
161
  // add the styles to the DOM
162
162
  var add = (__webpack_require__(8459)/* ["default"] */ .A)
163
- var update = add("2523c5f8", content, true, {"sourceMap":false,"shadowMode":false});
163
+ var update = add("07857748", content, true, {"sourceMap":false,"shadowMode":false});
164
164
 
165
165
  /***/ }),
166
166
 
@@ -452,6 +452,35 @@ module.exports = function (argument) {
452
452
  };
453
453
 
454
454
 
455
+ /***/ }),
456
+
457
+ /***/ 6469:
458
+ /***/ (function(module, __unused_webpack_exports, __webpack_require__) {
459
+
460
+ "use strict";
461
+
462
+ var wellKnownSymbol = __webpack_require__(8227);
463
+ var create = __webpack_require__(2360);
464
+ var defineProperty = (__webpack_require__(4913).f);
465
+
466
+ var UNSCOPABLES = wellKnownSymbol('unscopables');
467
+ var ArrayPrototype = Array.prototype;
468
+
469
+ // Array.prototype[@@unscopables]
470
+ // https://tc39.es/ecma262/#sec-array.prototype-@@unscopables
471
+ if (ArrayPrototype[UNSCOPABLES] === undefined) {
472
+ defineProperty(ArrayPrototype, UNSCOPABLES, {
473
+ configurable: true,
474
+ value: create(null)
475
+ });
476
+ }
477
+
478
+ // add a key to Array.prototype[@@unscopables]
479
+ module.exports = function (key) {
480
+ ArrayPrototype[UNSCOPABLES][key] = true;
481
+ };
482
+
483
+
455
484
  /***/ }),
456
485
 
457
486
  /***/ 679:
@@ -2984,6 +3013,42 @@ module.exports = function (name) {
2984
3013
  };
2985
3014
 
2986
3015
 
3016
+ /***/ }),
3017
+
3018
+ /***/ 4423:
3019
+ /***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) {
3020
+
3021
+ "use strict";
3022
+
3023
+ var $ = __webpack_require__(6518);
3024
+ var $includes = (__webpack_require__(9617).includes);
3025
+ var fails = __webpack_require__(9039);
3026
+ var addToUnscopables = __webpack_require__(6469);
3027
+
3028
+ // FF99+ bug
3029
+ var BROKEN_ON_SPARSE = fails(function () {
3030
+ // eslint-disable-next-line es/no-array-prototype-includes -- detection
3031
+ return !Array(1).includes();
3032
+ });
3033
+
3034
+ // Safari 26.4- bug
3035
+ var BROKEN_ON_SPARSE_WITH_FROM_INDEX = fails(function () {
3036
+ // eslint-disable-next-line no-sparse-arrays, es/no-array-prototype-includes -- detection
3037
+ return [, 1].includes(undefined, 1);
3038
+ });
3039
+
3040
+ // `Array.prototype.includes` method
3041
+ // https://tc39.es/ecma262/#sec-array.prototype.includes
3042
+ $({ target: 'Array', proto: true, forced: BROKEN_ON_SPARSE || BROKEN_ON_SPARSE_WITH_FROM_INDEX }, {
3043
+ includes: function includes(el /* , fromIndex = 0 */) {
3044
+ return $includes(this, el, arguments.length > 1 ? arguments[1] : undefined);
3045
+ }
3046
+ });
3047
+
3048
+ // https://tc39.es/ecma262/#sec-array.prototype-@@unscopables
3049
+ addToUnscopables('includes');
3050
+
3051
+
2987
3052
  /***/ }),
2988
3053
 
2989
3054
  /***/ 4114:
@@ -3279,6 +3344,277 @@ $({ target: 'Iterator', proto: true, real: true, forced: someWithoutClosingOnEar
3279
3344
  });
3280
3345
 
3281
3346
 
3347
+ /***/ }),
3348
+
3349
+ /***/ 9112:
3350
+ /***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) {
3351
+
3352
+ "use strict";
3353
+
3354
+ var $ = __webpack_require__(6518);
3355
+ var DESCRIPTORS = __webpack_require__(3724);
3356
+ var globalThis = __webpack_require__(4576);
3357
+ var getBuiltIn = __webpack_require__(7751);
3358
+ var uncurryThis = __webpack_require__(9504);
3359
+ var call = __webpack_require__(9565);
3360
+ var isCallable = __webpack_require__(4901);
3361
+ var isObject = __webpack_require__(34);
3362
+ var isArray = __webpack_require__(4376);
3363
+ var hasOwn = __webpack_require__(9297);
3364
+ var toString = __webpack_require__(655);
3365
+ var lengthOfArrayLike = __webpack_require__(6198);
3366
+ var createProperty = __webpack_require__(4659);
3367
+ var fails = __webpack_require__(9039);
3368
+ var parseJSONString = __webpack_require__(8235);
3369
+ var NATIVE_SYMBOL = __webpack_require__(4495);
3370
+
3371
+ var JSON = globalThis.JSON;
3372
+ var Number = globalThis.Number;
3373
+ var SyntaxError = globalThis.SyntaxError;
3374
+ var nativeParse = JSON && JSON.parse;
3375
+ var enumerableOwnProperties = getBuiltIn('Object', 'keys');
3376
+ // eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe
3377
+ var getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;
3378
+ var at = uncurryThis(''.charAt);
3379
+ var slice = uncurryThis(''.slice);
3380
+ var exec = uncurryThis(/./.exec);
3381
+ var push = uncurryThis([].push);
3382
+
3383
+ var IS_DIGIT = /^\d$/;
3384
+ var IS_NON_ZERO_DIGIT = /^[1-9]$/;
3385
+ var IS_NUMBER_START = /^[\d-]$/;
3386
+ var IS_WHITESPACE = /^[\t\n\r ]$/;
3387
+
3388
+ var PRIMITIVE = 0;
3389
+ var OBJECT = 1;
3390
+
3391
+ var $parse = function (source, reviver) {
3392
+ source = toString(source);
3393
+ var context = new Context(source, 0, '');
3394
+ var root = context.parse();
3395
+ var value = root.value;
3396
+ var endIndex = context.skip(IS_WHITESPACE, root.end);
3397
+ if (endIndex < source.length) {
3398
+ throw new SyntaxError('Unexpected extra character: "' + at(source, endIndex) + '" after the parsed data at: ' + endIndex);
3399
+ }
3400
+ return isCallable(reviver) ? internalize({ '': value }, '', reviver, root) : value;
3401
+ };
3402
+
3403
+ var internalize = function (holder, name, reviver, node) {
3404
+ var val = holder[name];
3405
+ var unmodified = node && val === node.value;
3406
+ var context = unmodified && typeof node.source == 'string' ? { source: node.source } : {};
3407
+ var elementRecordsLen, keys, len, i, P;
3408
+ if (isObject(val)) {
3409
+ var nodeIsArray = isArray(val);
3410
+ var nodes = unmodified ? node.nodes : nodeIsArray ? [] : {};
3411
+ if (nodeIsArray) {
3412
+ elementRecordsLen = nodes.length;
3413
+ len = lengthOfArrayLike(val);
3414
+ for (i = 0; i < len; i++) {
3415
+ internalizeProperty(val, i, internalize(val, '' + i, reviver, i < elementRecordsLen ? nodes[i] : undefined));
3416
+ }
3417
+ } else {
3418
+ keys = enumerableOwnProperties(val);
3419
+ len = lengthOfArrayLike(keys);
3420
+ for (i = 0; i < len; i++) {
3421
+ P = keys[i];
3422
+ internalizeProperty(val, P, internalize(val, P, reviver, hasOwn(nodes, P) ? nodes[P] : undefined));
3423
+ }
3424
+ }
3425
+ }
3426
+ return call(reviver, holder, name, val, context);
3427
+ };
3428
+
3429
+ var internalizeProperty = function (object, key, value) {
3430
+ if (DESCRIPTORS) {
3431
+ var descriptor = getOwnPropertyDescriptor(object, key);
3432
+ if (descriptor && !descriptor.configurable) return;
3433
+ }
3434
+ if (value === undefined) delete object[key];
3435
+ else createProperty(object, key, value);
3436
+ };
3437
+
3438
+ var Node = function (value, end, source, nodes) {
3439
+ this.value = value;
3440
+ this.end = end;
3441
+ this.source = source;
3442
+ this.nodes = nodes;
3443
+ };
3444
+
3445
+ var Context = function (source, index) {
3446
+ this.source = source;
3447
+ this.index = index;
3448
+ };
3449
+
3450
+ // https://www.json.org/json-en.html
3451
+ Context.prototype = {
3452
+ fork: function (nextIndex) {
3453
+ return new Context(this.source, nextIndex);
3454
+ },
3455
+ parse: function () {
3456
+ var source = this.source;
3457
+ var i = this.skip(IS_WHITESPACE, this.index);
3458
+ var fork = this.fork(i);
3459
+ var chr = at(source, i);
3460
+ if (exec(IS_NUMBER_START, chr)) return fork.number();
3461
+ switch (chr) {
3462
+ case '{':
3463
+ return fork.object();
3464
+ case '[':
3465
+ return fork.array();
3466
+ case '"':
3467
+ return fork.string();
3468
+ case 't':
3469
+ return fork.keyword(true);
3470
+ case 'f':
3471
+ return fork.keyword(false);
3472
+ case 'n':
3473
+ return fork.keyword(null);
3474
+ } throw new SyntaxError('Unexpected character: "' + chr + '" at: ' + i);
3475
+ },
3476
+ node: function (type, value, start, end, nodes) {
3477
+ return new Node(value, end, type ? null : slice(this.source, start, end), nodes);
3478
+ },
3479
+ object: function () {
3480
+ var source = this.source;
3481
+ var i = this.index + 1;
3482
+ var expectKeypair = false;
3483
+ var object = {};
3484
+ var nodes = {};
3485
+ var closed = false;
3486
+ while (i < source.length) {
3487
+ i = this.until(['"', '}'], i);
3488
+ if (at(source, i) === '}' && !expectKeypair) {
3489
+ i++;
3490
+ closed = true;
3491
+ break;
3492
+ }
3493
+ // Parsing the key
3494
+ var result = this.fork(i).string();
3495
+ var key = result.value;
3496
+ i = result.end;
3497
+ i = this.until([':'], i) + 1;
3498
+ // Parsing value
3499
+ i = this.skip(IS_WHITESPACE, i);
3500
+ result = this.fork(i).parse();
3501
+ createProperty(nodes, key, result);
3502
+ createProperty(object, key, result.value);
3503
+ i = this.until([',', '}'], result.end);
3504
+ var chr = at(source, i);
3505
+ if (chr === ',') {
3506
+ expectKeypair = true;
3507
+ i++;
3508
+ } else if (chr === '}') {
3509
+ i++;
3510
+ closed = true;
3511
+ break;
3512
+ }
3513
+ }
3514
+ if (!closed) throw new SyntaxError('Unterminated object at: ' + i);
3515
+ return this.node(OBJECT, object, this.index, i, nodes);
3516
+ },
3517
+ array: function () {
3518
+ var source = this.source;
3519
+ var i = this.index + 1;
3520
+ var expectElement = false;
3521
+ var array = [];
3522
+ var nodes = [];
3523
+ var closed = false;
3524
+ while (i < source.length) {
3525
+ i = this.skip(IS_WHITESPACE, i);
3526
+ if (at(source, i) === ']' && !expectElement) {
3527
+ i++;
3528
+ closed = true;
3529
+ break;
3530
+ }
3531
+ var result = this.fork(i).parse();
3532
+ push(nodes, result);
3533
+ push(array, result.value);
3534
+ i = this.until([',', ']'], result.end);
3535
+ if (at(source, i) === ',') {
3536
+ expectElement = true;
3537
+ i++;
3538
+ } else if (at(source, i) === ']') {
3539
+ i++;
3540
+ closed = true;
3541
+ break;
3542
+ }
3543
+ }
3544
+ if (!closed) throw new SyntaxError('Unterminated array at: ' + i);
3545
+ return this.node(OBJECT, array, this.index, i, nodes);
3546
+ },
3547
+ string: function () {
3548
+ var index = this.index;
3549
+ var parsed = parseJSONString(this.source, this.index + 1);
3550
+ return this.node(PRIMITIVE, parsed.value, index, parsed.end);
3551
+ },
3552
+ number: function () {
3553
+ var source = this.source;
3554
+ var startIndex = this.index;
3555
+ var i = startIndex;
3556
+ if (at(source, i) === '-') i++;
3557
+ if (at(source, i) === '0') i++;
3558
+ else if (exec(IS_NON_ZERO_DIGIT, at(source, i))) i = this.skip(IS_DIGIT, i + 1);
3559
+ else throw new SyntaxError('Failed to parse number at: ' + i);
3560
+ if (at(source, i) === '.') {
3561
+ var fractionStartIndex = i + 1;
3562
+ i = this.skip(IS_DIGIT, fractionStartIndex);
3563
+ if (fractionStartIndex === i) throw new SyntaxError("Failed to parse number's fraction at: " + i);
3564
+ }
3565
+ if (at(source, i) === 'e' || at(source, i) === 'E') {
3566
+ i++;
3567
+ if (at(source, i) === '+' || at(source, i) === '-') i++;
3568
+ var exponentStartIndex = i;
3569
+ i = this.skip(IS_DIGIT, i);
3570
+ if (exponentStartIndex === i) throw new SyntaxError("Failed to parse number's exponent value at: " + i);
3571
+ }
3572
+ return this.node(PRIMITIVE, Number(slice(source, startIndex, i)), startIndex, i);
3573
+ },
3574
+ keyword: function (value) {
3575
+ var keyword = '' + value;
3576
+ var index = this.index;
3577
+ var endIndex = index + keyword.length;
3578
+ if (slice(this.source, index, endIndex) !== keyword) throw new SyntaxError('Failed to parse value at: ' + index);
3579
+ return this.node(PRIMITIVE, value, index, endIndex);
3580
+ },
3581
+ skip: function (regex, i) {
3582
+ var source = this.source;
3583
+ for (; i < source.length; i++) if (!exec(regex, at(source, i))) break;
3584
+ return i;
3585
+ },
3586
+ until: function (array, i) {
3587
+ i = this.skip(IS_WHITESPACE, i);
3588
+ var chr = at(this.source, i);
3589
+ for (var j = 0; j < array.length; j++) if (array[j] === chr) return i;
3590
+ throw new SyntaxError('Unexpected character: "' + chr + '" at: ' + i);
3591
+ }
3592
+ };
3593
+
3594
+ var NO_SOURCE_SUPPORT = fails(function () {
3595
+ var unsafeInt = '9007199254740993';
3596
+ var source;
3597
+ nativeParse(unsafeInt, function (key, value, context) {
3598
+ source = context.source;
3599
+ });
3600
+ return source !== unsafeInt;
3601
+ });
3602
+
3603
+ var PROPER_BASE_PARSE = NATIVE_SYMBOL && !fails(function () {
3604
+ // Safari 9 bug
3605
+ return 1 / nativeParse('-0 \t') !== -Infinity;
3606
+ });
3607
+
3608
+ // `JSON.parse` method
3609
+ // https://tc39.es/ecma262/#sec-json.parse
3610
+ // https://github.com/tc39/proposal-json-parse-with-source
3611
+ $({ target: 'JSON', stat: true, forced: NO_SOURCE_SUPPORT }, {
3612
+ parse: function parse(text, reviver) {
3613
+ return PROPER_BASE_PARSE && !isCallable(reviver) ? nativeParse(text) : $parse(text, reviver);
3614
+ }
3615
+ });
3616
+
3617
+
3282
3618
  /***/ }),
3283
3619
 
3284
3620
  /***/ 3110:
@@ -3541,7 +3877,7 @@ if (typeof window !== 'undefined') {
3541
3877
 
3542
3878
  ;// external {"commonjs":"vue","commonjs2":"vue","root":"Vue"}
3543
3879
  var external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject = require("vue");
3544
- ;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/components/ModulePageSelect.vue?vue&type=template&id=3fb01432&scoped=true
3880
+ ;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[3]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/components/ModulePageSelect.vue?vue&type=template&id=70a1b8ff&scoped=true
3545
3881
 
3546
3882
  const _hoisted_1 = {
3547
3883
  class: "module-page-select"
@@ -3560,6 +3896,14 @@ const _hoisted_4 = {
3560
3896
  const _hoisted_5 = {
3561
3897
  class: "array-item-fields"
3562
3898
  };
3899
+ const _hoisted_6 = {
3900
+ key: 2,
3901
+ style: {
3902
+ "display": "flex",
3903
+ "gap": "8px",
3904
+ "margin-top": "16px"
3905
+ }
3906
+ };
3563
3907
  function render(_ctx, _cache, $props, $setup, $data, $options) {
3564
3908
  const _component_a_option = (0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.resolveComponent)("a-option");
3565
3909
  const _component_a_select = (0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.resolveComponent)("a-select");
@@ -3571,7 +3915,7 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
3571
3915
  const _component_a_button = (0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.resolveComponent)("a-button");
3572
3916
  const _component_a_form = (0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.resolveComponent)("a-form");
3573
3917
  return (0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.openBlock)(), (0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.createElementBlock)("div", _hoisted_1, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.createVNode)(_component_a_form, {
3574
- layout: "vertical",
3918
+ layout: $props.layout,
3575
3919
  size: "small"
3576
3920
  }, {
3577
3921
  default: (0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.withCtx)(() => [(0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.createVNode)(_component_a_form_item, {
@@ -3714,25 +4058,35 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
3714
4058
  }, 8, ["onClick"])])) : (0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.createCommentVNode)("", true)]),
3715
4059
  _: 2
3716
4060
  }, 1032, ["label", "field"]);
3717
- }), 128))], 64)) : (0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.createCommentVNode)("", true), $data.showConfirmButton ? ((0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.openBlock)(), (0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.createBlock)(_component_a_button, {
3718
- key: 2,
4061
+ }), 128))], 64)) : (0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.createCommentVNode)("", true), $props.confirmButton && $data.internalShowConfirmButton ? ((0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.openBlock)(), (0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.createElementBlock)("div", _hoisted_6, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.createVNode)(_component_a_button, {
3719
4062
  type: "primary",
3720
- long: "",
4063
+ style: {
4064
+ "flex": "1"
4065
+ },
3721
4066
  size: "small",
3722
4067
  onClick: $options.handleConfirm,
3723
- disabled: !$data.selectedModuleId || !$data.selectedPageId,
3724
- style: {
3725
- "margin-top": "16px"
3726
- }
4068
+ disabled: !$data.selectedModuleId || !$data.selectedPageId
3727
4069
  }, {
3728
4070
  default: (0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.withCtx)(() => [...(_cache[6] || (_cache[6] = [(0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.createTextVNode)(" 确认选择 ", -1)]))]),
3729
4071
  _: 1
3730
- }, 8, ["onClick", "disabled"])) : (0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.createCommentVNode)("", true)]),
4072
+ }, 8, ["onClick", "disabled"]), $props.showCancelButton ? ((0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.openBlock)(), (0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.createBlock)(_component_a_button, {
4073
+ key: 0,
4074
+ style: {
4075
+ "flex": "1"
4076
+ },
4077
+ size: "small",
4078
+ onClick: $options.handleCancel
4079
+ }, {
4080
+ default: (0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.withCtx)(() => [...(_cache[7] || (_cache[7] = [(0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.createTextVNode)(" 取消 ", -1)]))]),
4081
+ _: 1
4082
+ }, 8, ["onClick"])) : (0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.createCommentVNode)("", true)])) : (0,external_commonjs_vue_commonjs2_vue_root_Vue_namespaceObject.createCommentVNode)("", true)]),
3731
4083
  _: 1
3732
- })]);
4084
+ }, 8, ["layout"])]);
3733
4085
  }
3734
- ;// ./src/components/ModulePageSelect.vue?vue&type=template&id=3fb01432&scoped=true
4086
+ ;// ./src/components/ModulePageSelect.vue?vue&type=template&id=70a1b8ff&scoped=true
3735
4087
 
4088
+ // EXTERNAL MODULE: ./node_modules/core-js/modules/es.array.includes.js
4089
+ var es_array_includes = __webpack_require__(4423);
3736
4090
  // EXTERNAL MODULE: ./node_modules/core-js/modules/es.array.push.js
3737
4091
  var es_array_push = __webpack_require__(4114);
3738
4092
  // EXTERNAL MODULE: ./node_modules/core-js/modules/es.iterator.constructor.js
@@ -3745,6 +4099,8 @@ var es_iterator_for_each = __webpack_require__(7588);
3745
4099
  var es_iterator_map = __webpack_require__(1701);
3746
4100
  // EXTERNAL MODULE: ./node_modules/core-js/modules/es.iterator.some.js
3747
4101
  var es_iterator_some = __webpack_require__(3579);
4102
+ // EXTERNAL MODULE: ./node_modules/core-js/modules/es.json.parse.js
4103
+ var es_json_parse = __webpack_require__(9112);
3748
4104
  // EXTERNAL MODULE: ./node_modules/core-js/modules/es.json.stringify.js
3749
4105
  var es_json_stringify = __webpack_require__(3110);
3750
4106
  ;// external {"commonjs":"@tuoyuan/gateway-request-lib","commonjs2":"@tuoyuan/gateway-request-lib","root":"GatewayRequestLib"}
@@ -3758,6 +4114,8 @@ var gateway_request_lib_root_GatewayRequestLib_namespaceObject = require("@tuoyu
3758
4114
 
3759
4115
 
3760
4116
 
4117
+
4118
+
3761
4119
  /* harmony default export */ var ModulePageSelectvue_type_script_lang_js = ({
3762
4120
  name: 'ModulePageSelect',
3763
4121
  props: {
@@ -3780,9 +4138,25 @@ var gateway_request_lib_root_GatewayRequestLib_namespaceObject = require("@tuoyu
3780
4138
  autoEcho: {
3781
4139
  type: Boolean,
3782
4140
  default: true
4141
+ },
4142
+ // 是否显示取消按钮
4143
+ showCancelButton: {
4144
+ type: Boolean,
4145
+ default: false
4146
+ },
4147
+ // 表单布局:'horizontal' 横向 | 'vertical' 纵向 | 'inline' 行内
4148
+ layout: {
4149
+ type: String,
4150
+ default: 'vertical',
4151
+ validator: value => ['horizontal', 'vertical', 'inline'].includes(value)
4152
+ },
4153
+ // 是否显示确认按钮(外部控制)
4154
+ confirmButton: {
4155
+ type: Boolean,
4156
+ default: true
3783
4157
  }
3784
4158
  },
3785
- emits: ['update:modelValue', 'change', 'error'],
4159
+ emits: ['update:modelValue', 'change', 'error', 'cancel'],
3786
4160
  data() {
3787
4161
  return {
3788
4162
  modules: [],
@@ -3791,6 +4165,7 @@ var gateway_request_lib_root_GatewayRequestLib_namespaceObject = require("@tuoyu
3791
4165
  selectedPageId: '',
3792
4166
  selectedModuleName: '',
3793
4167
  selectedPageName: '',
4168
+ selectedOrientation: 'portrait',
3794
4169
  currentPage: null,
3795
4170
  configFields: {},
3796
4171
  formData: {},
@@ -3798,8 +4173,8 @@ var gateway_request_lib_root_GatewayRequestLib_namespaceObject = require("@tuoyu
3798
4173
  // 缓存
3799
4174
  moduleCache: null,
3800
4175
  pageCache: {},
3801
- // 控制确认按钮显示
3802
- showConfirmButton: true,
4176
+ // 控制确认按钮显示(内部状态)
4177
+ internalShowConfirmButton: true,
3803
4178
  // 记录上次确认的状态
3804
4179
  lastConfirmedState: null,
3805
4180
  // 加载状态
@@ -3890,7 +4265,7 @@ var gateway_request_lib_root_GatewayRequestLib_namespaceObject = require("@tuoyu
3890
4265
  };
3891
4266
  }
3892
4267
  // 已是保存过的值,未改动前不需要再次确认
3893
- this.showConfirmButton = false;
4268
+ this.internalShowConfirmButton = false;
3894
4269
  this.lastConfirmedState = JSON.stringify({
3895
4270
  moduleId: source.moduleId,
3896
4271
  pageId: source.pageId,
@@ -4005,7 +4380,7 @@ var gateway_request_lib_root_GatewayRequestLib_namespaceObject = require("@tuoyu
4005
4380
  this.formData = {};
4006
4381
 
4007
4382
  // 选择改变,显示确认按钮
4008
- this.showConfirmButton = true;
4383
+ this.internalShowConfirmButton = true;
4009
4384
  this.echoPageName = '';
4010
4385
  if (this.selectedModuleId) {
4011
4386
  // 更新模块名称
@@ -4015,6 +4390,11 @@ var gateway_request_lib_root_GatewayRequestLib_namespaceObject = require("@tuoyu
4015
4390
  this.selectedModuleName = '';
4016
4391
  this.echoModuleName = '';
4017
4392
  }
4393
+
4394
+ // 如果确认按钮被外部配置为隐藏,直接触发 change 事件
4395
+ if (!this.confirmButton && this.selectedModuleId) {
4396
+ this.emitChange();
4397
+ }
4018
4398
  },
4019
4399
  // 加载页面列表;echoPageId 有值时同步回显该页面的名称与配置
4020
4400
  async loadPages(moduleId, echoPageId = '') {
@@ -4087,7 +4467,7 @@ var gateway_request_lib_root_GatewayRequestLib_namespaceObject = require("@tuoyu
4087
4467
  // 页面切换
4088
4468
  handlePageChange() {
4089
4469
  // 选择改变,显示确认按钮
4090
- this.showConfirmButton = true;
4470
+ this.internalShowConfirmButton = true;
4091
4471
  if (this.selectedPageId) {
4092
4472
  const page = this.pages.find(p => this.normalizeId(p.id) === this.normalizeId(this.selectedPageId));
4093
4473
  if (page) {
@@ -4103,6 +4483,11 @@ var gateway_request_lib_root_GatewayRequestLib_namespaceObject = require("@tuoyu
4103
4483
  this.showConfigForm = false;
4104
4484
  this.formData = {};
4105
4485
  }
4486
+
4487
+ // 如果确认按钮被外部配置为隐藏,且页面已选择,直接触发 change 事件
4488
+ if (!this.confirmButton && this.selectedModuleId && this.selectedPageId) {
4489
+ this.emitChange();
4490
+ }
4106
4491
  },
4107
4492
  // 加载页面配置表单
4108
4493
  loadPageConfig(page) {
@@ -4272,8 +4657,8 @@ var gateway_request_lib_root_GatewayRequestLib_namespaceObject = require("@tuoyu
4272
4657
  });
4273
4658
  this.formData = data;
4274
4659
  },
4275
- // 确认选择
4276
- handleConfirm() {
4660
+ // 触发 change 事件(提取公共逻辑)
4661
+ emitChange() {
4277
4662
  if (!this.selectedModuleId || !this.selectedPageId) {
4278
4663
  return;
4279
4664
  }
@@ -4304,17 +4689,47 @@ var gateway_request_lib_root_GatewayRequestLib_namespaceObject = require("@tuoyu
4304
4689
  this.appliedEchoKey = JSON.stringify([this.normalizeId(module.id), this.normalizeId(page.id)]);
4305
4690
 
4306
4691
  // 隐藏确认按钮
4307
- this.showConfirmButton = false;
4692
+ this.internalShowConfirmButton = false;
4308
4693
  this.$emit('update:modelValue', result);
4309
4694
  this.$emit('change', result);
4695
+ },
4696
+ // 确认选择
4697
+ handleConfirm() {
4698
+ this.emitChange();
4699
+ },
4700
+ // 取消选择
4701
+ handleCancel() {
4702
+ if (!this.showCancelButton) return;
4703
+
4704
+ // 重置表单到上次确认的状态
4705
+ if (this.lastConfirmedState) {
4706
+ const lastState = JSON.parse(this.lastConfirmedState);
4707
+ this.selectedModuleId = lastState.moduleId;
4708
+ this.selectedPageId = lastState.pageId;
4709
+ if (lastState.config) {
4710
+ this.formData = this.deepClone(lastState.config);
4711
+ }
4712
+ } else {
4713
+ // 如果没有确认过,完全清空
4714
+ this.selectedModuleId = '';
4715
+ this.selectedPageId = '';
4716
+ this.selectedModuleName = '';
4717
+ this.selectedPageName = '';
4718
+ this.formData = {};
4719
+ this.showConfigForm = false;
4720
+ }
4721
+
4722
+ // 隐藏取消按钮和确认按钮
4723
+ this.internalShowConfirmButton = false;
4724
+ this.$emit('cancel');
4310
4725
  }
4311
4726
  }
4312
4727
  });
4313
4728
  ;// ./src/components/ModulePageSelect.vue?vue&type=script&lang=js
4314
4729
 
4315
- // EXTERNAL MODULE: ./node_modules/vue-style-loader/index.js??clonedRuleSet-12.use[0]!./node_modules/css-loader/dist/cjs.js??clonedRuleSet-12.use[1]!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-12.use[2]!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-12.use[3]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/components/ModulePageSelect.vue?vue&type=style&index=0&id=3fb01432&scoped=true&lang=css
4316
- var ModulePageSelectvue_type_style_index_0_id_3fb01432_scoped_true_lang_css = __webpack_require__(1890);
4317
- ;// ./src/components/ModulePageSelect.vue?vue&type=style&index=0&id=3fb01432&scoped=true&lang=css
4730
+ // EXTERNAL MODULE: ./node_modules/vue-style-loader/index.js??clonedRuleSet-12.use[0]!./node_modules/css-loader/dist/cjs.js??clonedRuleSet-12.use[1]!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-12.use[2]!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-12.use[3]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/components/ModulePageSelect.vue?vue&type=style&index=0&id=70a1b8ff&scoped=true&lang=css
4731
+ var ModulePageSelectvue_type_style_index_0_id_70a1b8ff_scoped_true_lang_css = __webpack_require__(5082);
4732
+ ;// ./src/components/ModulePageSelect.vue?vue&type=style&index=0&id=70a1b8ff&scoped=true&lang=css
4318
4733
 
4319
4734
  // EXTERNAL MODULE: ./node_modules/vue-loader/dist/exportHelper.js
4320
4735
  var exportHelper = __webpack_require__(1241);
@@ -4326,7 +4741,7 @@ var exportHelper = __webpack_require__(1241);
4326
4741
  ;
4327
4742
 
4328
4743
 
4329
- const __exports__ = /*#__PURE__*/(0,exportHelper/* default */.A)(ModulePageSelectvue_type_script_lang_js, [['render',render],['__scopeId',"data-v-3fb01432"]])
4744
+ const __exports__ = /*#__PURE__*/(0,exportHelper/* default */.A)(ModulePageSelectvue_type_script_lang_js, [['render',render],['__scopeId',"data-v-70a1b8ff"]])
4330
4745
 
4331
4746
  /* harmony default export */ var ModulePageSelect = (__exports__);
4332
4747
  ;// ./src/index.js