snail.vue 2.0.22 → 2.0.24

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.
@@ -143,7 +143,7 @@
143
143
  const _hoisted_1$m = ["title", "onClick"];
144
144
  const _hoisted_2$e = ["type", "checked"];
145
145
  const _hoisted_3$9 = ["textContent"];
146
- const _hoisted_4$7 = ["textContent"];
146
+ const _hoisted_4$6 = ["textContent"];
147
147
  var _sfc_main$D = vue.defineComponent({
148
148
  ...{
149
149
  name: "Choose",
@@ -236,7 +236,7 @@
236
236
  key: 3,
237
237
  class: "item-des",
238
238
  textContent: vue.toDisplayString(node.item.description)
239
- }, null, 8, _hoisted_4$7)) : vue.createCommentVNode("", true)], 14, _hoisted_1$m);
239
+ }, null, 8, _hoisted_4$6)) : vue.createCommentVNode("", true)], 14, _hoisted_1$m);
240
240
  }), 128))], 2);
241
241
  };
242
242
  }
@@ -352,8 +352,8 @@
352
352
  const _hoisted_3$8 = {
353
353
  class: "input-body"
354
354
  };
355
- const _hoisted_4$6 = ["type", "value", "readonly", "placeholder", "title"];
356
- const _hoisted_5$4 = ["title"];
355
+ const _hoisted_4$5 = ["type", "value", "readonly", "placeholder", "title"];
356
+ const _hoisted_5$3 = ["title"];
357
357
  var _sfc_main$A = vue.defineComponent({
358
358
  ...{
359
359
  name: "Input",
@@ -415,7 +415,7 @@
415
415
  title: inputModel.value,
416
416
  onChange: onValueChange,
417
417
  onClick: _cache[0] || (_cache[0] = $event => emits("click"))
418
- }, null, 40, _hoisted_4$6), !!validateRef.value ? (vue.openBlock(), vue.createElementBlock("span", {
418
+ }, null, 40, _hoisted_4$5), !!validateRef.value ? (vue.openBlock(), vue.createElementBlock("span", {
419
419
  key: 0,
420
420
  class: "validate",
421
421
  title: validateRef.value
@@ -424,7 +424,7 @@
424
424
  button: "",
425
425
  size: 16,
426
426
  color: "red"
427
- })], 8, _hoisted_5$4)) : vue.createCommentVNode("", true)])], 2);
427
+ })], 8, _hoisted_5$3)) : vue.createCommentVNode("", true)])], 2);
428
428
  };
429
429
  }
430
430
  });
@@ -635,11 +635,11 @@
635
635
  };
636
636
  const _hoisted_2$c = ["textContent"];
637
637
  const _hoisted_3$7 = ["inputmode", "placeholder", "title"];
638
- const _hoisted_4$5 = {
638
+ const _hoisted_4$4 = {
639
639
  key: 1,
640
640
  class: "number-suffix"
641
641
  };
642
- const _hoisted_5$3 = ["textContent"];
642
+ const _hoisted_5$2 = ["textContent"];
643
643
  const _hoisted_6$2 = ["title", "textContent"];
644
644
  const _hoisted_7$1 = ["title", "textContent"];
645
645
  var _sfc_main$z = vue.defineComponent({
@@ -838,10 +838,10 @@
838
838
  button: "",
839
839
  size: 20,
840
840
  rotate: 90
841
- })])], 64)) : vue.createCommentVNode("", true)], 2), vue.unref(hasSuffix) ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_4$5, [vue.createElementVNode("span", {
841
+ })])], 64)) : vue.createCommentVNode("", true)], 2), vue.unref(hasSuffix) ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_4$4, [vue.createElementVNode("span", {
842
842
  class: "ellipsis",
843
843
  textContent: vue.toDisplayString(vue.unref(suffix))
844
- }, null, 8, _hoisted_5$3)])) : vue.createCommentVNode("", true), vue.unref(upper) ? (vue.openBlock(), vue.createElementBlock("div", {
844
+ }, null, 8, _hoisted_5$2)])) : vue.createCommentVNode("", true), vue.unref(upper) ? (vue.openBlock(), vue.createElementBlock("div", {
845
845
  key: 2,
846
846
  class: "number-util ellipsis",
847
847
  title: upperTextRef.value,
@@ -1408,7 +1408,153 @@
1408
1408
  }
1409
1409
  });
1410
1410
 
1411
+ function monitScroll(manager, root, options, emiter, classStyleRef) {
1412
+ const scope = snail_core.useScope();
1413
+ let preStatus = void 0;
1414
+ const observer = snail_view.useObserver();
1415
+ const timer = snail_core.useTimer();
1416
+ const reactive = useReactive();
1417
+ function buildClassStyle() {
1418
+ const array = (classStyleRef.value ? [...classStyleRef.value] : []).filter(item => item == "x-bar" || item == "y-bar");
1419
+ array.push(...manager.buildClassStyle(options));
1420
+ classStyleRef.value = array;
1421
+ }
1422
+ function refreshScrollInfo() {
1423
+ const status = Object.freeze(manager.getStatus(root));
1424
+ const events = Object.create(null);
1425
+ if (preStatus != void 0) {
1426
+ preStatus.xbar != status.xbar && (events.xbar = [status.xbar]);
1427
+ preStatus.ybar != status.ybar && (events.ybar = [status.ybar]);
1428
+ if (preStatus.xbar == true && status.xbar == true) {
1429
+ status.left && preStatus.left !== status.left && (events.left = []);
1430
+ status.right && preStatus.right !== status.right && (events.right = []);
1431
+ }
1432
+ if (preStatus.ybar == true && status.ybar == true) {
1433
+ status.top && preStatus.top !== status.top && (events.top = []);
1434
+ status.bottom && preStatus.bottom !== status.bottom && (events.bottom = []);
1435
+ }
1436
+ }
1437
+ preStatus = status;
1438
+ events.xbar && emiter("xbar", ...events.xbar);
1439
+ events.left && emiter("left");
1440
+ events.right && emiter("right");
1441
+ events.ybar && emiter("ybar", ...events.ybar);
1442
+ events.top && emiter("top");
1443
+ events.bottom && emiter("bottom");
1444
+ {
1445
+ const array = (classStyleRef.value ? [...classStyleRef.value] : []).filter(item => item != "x-bar" && item != "y-bar");
1446
+ status.xbar && array.push("x-bar");
1447
+ status.ybar && array.push("y-bar");
1448
+ classStyleRef.value = array;
1449
+ }
1450
+ }
1451
+ buildClassStyle();
1452
+ refreshScrollInfo();
1453
+ reactive.watcher(() => options.scroll, buildClassStyle);
1454
+ reactive.watcher(() => options.barSize, buildClassStyle);
1455
+ observer.onSize(root, refreshScrollInfo);
1456
+ observer.onEvent(root, "scroll", refreshScrollInfo);
1457
+ timer.onInterval(() => {
1458
+ const isChange = preStatus.scrollWidth != root.scrollWidth || preStatus.scrollHeight != root.scrollHeight;
1459
+ isChange && refreshScrollInfo();
1460
+ }, 100);
1461
+ scope.onDestroy(() => {
1462
+ observer.destroyed || observer.destroy();
1463
+ timer.destroyed || timer.destroy();
1464
+ reactive.destroyed || reactive.destroy();
1465
+ });
1466
+ return scope;
1467
+ }
1468
+
1411
1469
  var _sfc_main$t = vue.defineComponent({
1470
+ ...{
1471
+ name: "Scroll",
1472
+ inheritAttrs: false
1473
+ },
1474
+ __name: "scroll",
1475
+ props: {
1476
+ scroll: {},
1477
+ barSize: {}
1478
+ },
1479
+ emits: ["xbar", "left", "right", "ybar", "top", "bottom"],
1480
+ setup(__props, _ref) {
1481
+ let {
1482
+ expose: __expose,
1483
+ emit: __emit
1484
+ } = _ref;
1485
+ const props = __props;
1486
+ const emits = __emit;
1487
+ const rootDom = vue.useTemplateRef("scroll-root");
1488
+ const manager = snail_view.useScroll();
1489
+ const classStyleRef = vue.shallowRef();
1490
+ __expose({
1491
+ getStatus() {
1492
+ return manager.getStatus(rootDom.value);
1493
+ },
1494
+ scroll(left, top) {
1495
+ left == void 0 || (rootDom.value.scrollLeft += left);
1496
+ top == void 0 || (rootDom.value.scrollTop += top);
1497
+ },
1498
+ scrollTo(left, top) {
1499
+ left == void 0 || (rootDom.value.scrollLeft = left);
1500
+ top == void 0 || (rootDom.value.scrollTop = top);
1501
+ }
1502
+ });
1503
+ vue.onMounted(() => monitScroll(manager, rootDom.value, props, emits, classStyleRef));
1504
+ return (_ctx, _cache) => {
1505
+ return vue.openBlock(), vue.createElementBlock("div", vue.mergeProps(_ctx.$attrs, {
1506
+ class: ["snail-scroll", classStyleRef.value],
1507
+ ref: "scroll-root"
1508
+ }), [vue.renderSlot(_ctx.$slots, "default")], 16);
1509
+ };
1510
+ }
1511
+ });
1512
+
1513
+ var _sfc_main$s = vue.defineComponent({
1514
+ __name: "wrapper",
1515
+ props: {
1516
+ inPopup: {
1517
+ type: Boolean
1518
+ },
1519
+ header: {},
1520
+ content: {},
1521
+ footer: {}
1522
+ },
1523
+ emits: ["cancel", "confirm"],
1524
+ setup(__props, _ref) {
1525
+ let {
1526
+ emit: __emit
1527
+ } = _ref;
1528
+ const emits = __emit;
1529
+ return (_ctx, _cache) => {
1530
+ return vue.openBlock(), vue.createElementBlock("div", {
1531
+ class: vue.normalizeClass(["snail-wrapper", __props.inPopup ? "in-popup" : "in-normal"])
1532
+ }, [__props.header && __props.header.disabled != true ? (vue.openBlock(), vue.createBlock(_sfc_main$B, vue.mergeProps({
1533
+ key: 0
1534
+ }, __props.header || {
1535
+ useTo: "dialog",
1536
+ title: "对话框"
1537
+ }, {
1538
+ "use-to": (__props.header ? __props.header.useTo : void 0) || (__props.inPopup ? "dialog" : "page"),
1539
+ onClose: _cache[0] || (_cache[0] = $event => emits("cancel"))
1540
+ }), null, 16, ["use-to"])) : vue.createCommentVNode("", true), vue.createVNode(_sfc_main$t, vue.mergeProps({
1541
+ class: "wrapper-body"
1542
+ }, __props.content || {
1543
+ scroll: "none"
1544
+ }), {
1545
+ default: vue.withCtx(() => [vue.renderSlot(_ctx.$slots, "default")]),
1546
+ _: 3
1547
+ }, 16), __props.footer && __props.footer.disabled != true ? (vue.openBlock(), vue.createBlock(_sfc_main$C, vue.mergeProps({
1548
+ key: 1
1549
+ }, __props.footer || {}, {
1550
+ onCancel: _cache[1] || (_cache[1] = $event => emits("cancel")),
1551
+ onConfirm: _cache[2] || (_cache[2] = $event => emits("confirm"))
1552
+ }), null, 16)) : vue.createCommentVNode("", true)], 2);
1553
+ };
1554
+ }
1555
+ });
1556
+
1557
+ var _sfc_main$r = vue.defineComponent({
1412
1558
  ...{
1413
1559
  name: "DialogContainer",
1414
1560
  inheritAttrs: true
@@ -1439,6 +1585,23 @@
1439
1585
  closePopup,
1440
1586
  onBeforeClose
1441
1587
  });
1588
+ let fn_onBuildData = void 0;
1589
+ const registerBuildDataFunc = fn => {
1590
+ snail_core.mustFunction(fn, "fn");
1591
+ fn_onBuildData = fn;
1592
+ };
1593
+ async function onWrapperConfirm() {
1594
+ if (fn_onBuildData != void 0) {
1595
+ const rt = (await snail_core.wait(fn_onBuildData())) || {
1596
+ success: true,
1597
+ data: void 0
1598
+ };
1599
+ console.log("onBuildData result:", rt);
1600
+ rt.success !== false && closePopup(rt.data);
1601
+ } else {
1602
+ closePopup();
1603
+ }
1604
+ }
1442
1605
  vue.onMounted(() => {
1443
1606
  onEvent(window, "keyup", event => {
1444
1607
  event.key === "Escape" && __props.popupStatus.value == "active" && __props.options.closeOnEscape && closePopup();
@@ -1450,10 +1613,11 @@
1450
1613
  style: vue.normalizeStyle({
1451
1614
  "z-index": __props.zIndex
1452
1615
  }),
1453
- onClick: _cache[1] || (_cache[1] = vue.withModifiers($event => {
1616
+ onClick: _cache[3] || (_cache[3] = vue.withModifiers($event => {
1454
1617
  __props.options.closeOnMask && vue.unref(closePopup)();
1455
1618
  }, ["self"]))
1456
- }, [vue.createVNode(_sfc_main$u, vue.mergeProps({
1619
+ }, [__props.options.wrapper == void 0 ? (vue.openBlock(), vue.createBlock(_sfc_main$u, vue.mergeProps({
1620
+ key: 0,
1457
1621
  class: "dialog-body",
1458
1622
  name: __props.options.name,
1459
1623
  component: __props.options.component,
@@ -1463,12 +1627,32 @@
1463
1627
  "popup-status": __props.popupStatus.value,
1464
1628
  modelValue: vue.unref(model),
1465
1629
  "onUpdate:modelValue": _cache[0] || (_cache[0] = $event => vue.isRef(model) ? model.value = $event : null)
1466
- }), null, 16, ["name", "component", "url", "props", "popup-status", "modelValue"])], 6);
1630
+ }), null, 16, ["name", "component", "url", "props", "popup-status", "modelValue"])) : (vue.openBlock(), vue.createBlock(_sfc_main$s, vue.mergeProps({
1631
+ key: 1,
1632
+ class: "dialog-body",
1633
+ "in-popup": true
1634
+ }, __props.options.wrapper, {
1635
+ onCancel: _cache[2] || (_cache[2] = $event => vue.unref(closePopup)()),
1636
+ onConfirm: onWrapperConfirm
1637
+ }), {
1638
+ default: vue.withCtx(() => [vue.createVNode(_sfc_main$u, vue.mergeProps({
1639
+ name: __props.options.name,
1640
+ component: __props.options.component,
1641
+ url: __props.options.url,
1642
+ props: vue.unref(props)
1643
+ }, vue.unref(dialogExtend), {
1644
+ "popup-status": __props.popupStatus.value,
1645
+ modelValue: vue.unref(model),
1646
+ "onUpdate:modelValue": _cache[1] || (_cache[1] = $event => vue.isRef(model) ? model.value = $event : null),
1647
+ "on-build-data": registerBuildDataFunc
1648
+ }), null, 16, ["name", "component", "url", "props", "popup-status", "modelValue"])]),
1649
+ _: 1
1650
+ }, 16))], 6);
1467
1651
  };
1468
1652
  }
1469
1653
  });
1470
1654
 
1471
- var _sfc_main$s = vue.defineComponent({
1655
+ var _sfc_main$q = vue.defineComponent({
1472
1656
  ...{
1473
1657
  name: "FollowContainer",
1474
1658
  inheritAttrs: true
@@ -1606,7 +1790,7 @@
1606
1790
  }
1607
1791
  });
1608
1792
 
1609
- var _sfc_main$r = vue.defineComponent({
1793
+ var _sfc_main$p = vue.defineComponent({
1610
1794
  ...{
1611
1795
  name: "PopupContainer",
1612
1796
  inheritAttrs: true
@@ -1649,7 +1833,7 @@
1649
1833
  class: "icon"
1650
1834
  };
1651
1835
  const _hoisted_2$a = ["innerHTML"];
1652
- var _sfc_main$q = vue.defineComponent({
1836
+ var _sfc_main$o = vue.defineComponent({
1653
1837
  ...{
1654
1838
  name: "ToastContainer",
1655
1839
  inheritAttrs: true
@@ -1711,7 +1895,7 @@
1711
1895
 
1712
1896
  function usePopup() {
1713
1897
  function popup(options) {
1714
- const scope = checkOptions(options, checkPopup) || popupInCustomContainer(_sfc_main$r, options);
1898
+ const scope = checkOptions(options, checkPopup) || popupInCustomContainer(_sfc_main$p, options);
1715
1899
  return addScope2Scopes(scope);
1716
1900
  }
1717
1901
  function dialog(options) {
@@ -1732,7 +1916,7 @@
1732
1916
  const rt = await hook.runHookAsync("onBeforeClose", {
1733
1917
  mode: "one",
1734
1918
  order: "desc"
1735
- });
1919
+ }, data);
1736
1920
  isClosing = false;
1737
1921
  if (rt.success != true) {
1738
1922
  console.warn("run onBeforeClose failed", rt.reason, rt.ex);
@@ -1744,7 +1928,7 @@
1744
1928
  },
1745
1929
  onBeforeClose: fn => hook.register("onBeforeClose", fn)
1746
1930
  });
1747
- const descriptor = openPopup(_sfc_main$t, options, extOptions);
1931
+ const descriptor = openPopup(_sfc_main$r, options, extOptions);
1748
1932
  scope = snail_core.useAsyncScope(deferred.promise);
1749
1933
  monitorDialog(descriptor, scope, deferred);
1750
1934
  }
@@ -1762,7 +1946,7 @@
1762
1946
  inPopup: "follow",
1763
1947
  target
1764
1948
  };
1765
- scope = checkOptions(options, checkFollow) || popupInCustomContainer(_sfc_main$s, options, extOptions);
1949
+ scope = checkOptions(options, checkFollow) || popupInCustomContainer(_sfc_main$q, options, extOptions);
1766
1950
  }
1767
1951
  return addScope2Scopes(scope);
1768
1952
  }
@@ -1779,7 +1963,7 @@
1779
1963
  });
1780
1964
  }
1781
1965
  function toast(type, message, options) {
1782
- return popupInCustomContainer(_sfc_main$q, {
1966
+ return popupInCustomContainer(_sfc_main$o, {
1783
1967
  url: "#ToastContainer",
1784
1968
  props: {
1785
1969
  ...(options || Object.create(null)),
@@ -1812,7 +1996,7 @@
1812
1996
  },
1813
1997
  ...extOptions
1814
1998
  });
1815
- const descriptor = openPopup(container || _sfc_main$r, options, extOptions);
1999
+ const descriptor = openPopup(container || _sfc_main$p, options, extOptions);
1816
2000
  const scope = snail_core.useAsyncScope(deferred.promise);
1817
2001
  scope.onDestroy(() => destroyPopup(descriptor, deferred));
1818
2002
  return scope;
@@ -1952,7 +2136,7 @@
1952
2136
  };
1953
2137
  const _hoisted_2$9 = ["src"];
1954
2138
  const _hoisted_3$6 = ["textContent"];
1955
- var _sfc_main$p = vue.defineComponent({
2139
+ var _sfc_main$n = vue.defineComponent({
1956
2140
  ...{
1957
2141
  name: "Empty",
1958
2142
  inheritAttrs: true
@@ -1981,7 +2165,7 @@
1981
2165
  key: 1,
1982
2166
  class: "select-status"
1983
2167
  };
1984
- var _sfc_main$o = vue.defineComponent({
2168
+ var _sfc_main$m = vue.defineComponent({
1985
2169
  ...{
1986
2170
  name: "SelectNode",
1987
2171
  inheritAttrs: true
@@ -2051,7 +2235,7 @@
2051
2235
  }
2052
2236
  });
2053
2237
 
2054
- var _sfc_main$n = vue.defineComponent({
2238
+ var _sfc_main$l = vue.defineComponent({
2055
2239
  ...{
2056
2240
  name: "Select2Popup",
2057
2241
  inheritAttrs: true
@@ -2229,7 +2413,7 @@
2229
2413
  onSearch,
2230
2414
  key: "select-search"
2231
2415
  }), null, 16)) : vue.createCommentVNode("", true), (vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(itemsRef.value, item => {
2232
- return vue.openBlock(), vue.createBlock(_sfc_main$o, {
2416
+ return vue.openBlock(), vue.createBlock(_sfc_main$m, {
2233
2417
  key: vue.unref(context).getKey(item),
2234
2418
  multiple: __props.multiple,
2235
2419
  item,
@@ -2238,7 +2422,7 @@
2238
2422
  onEnter: onEnterSelectNode,
2239
2423
  onClick: onClickSelectNode
2240
2424
  }, null, 8, ["multiple", "item", "context"]);
2241
- }), 128)), itemsRef.value.length == 0 ? (vue.openBlock(), vue.createBlock(_sfc_main$p, {
2425
+ }), 128)), itemsRef.value.length == 0 ? (vue.openBlock(), vue.createBlock(_sfc_main$n, {
2242
2426
  key: 1,
2243
2427
  message: "无结果"
2244
2428
  })) : vue.createCommentVNode("", true), showClearButtonRef.value ? (vue.openBlock(), vue.createElementBlock("div", {
@@ -2256,14 +2440,14 @@
2256
2440
  };
2257
2441
  const _hoisted_2$7 = ["title", "textContent"];
2258
2442
  const _hoisted_3$4 = ["textContent"];
2259
- const _hoisted_4$4 = {
2443
+ const _hoisted_4$3 = {
2260
2444
  key: 1,
2261
2445
  class: "placeholder"
2262
2446
  };
2263
2447
  onAppCreated((app, type) => {
2264
- type == "popup" && app.component("SelectPopup", _sfc_main$n);
2448
+ type == "popup" && app.component("SelectPopup", _sfc_main$l);
2265
2449
  });
2266
- var _sfc_main$m = vue.defineComponent({
2450
+ var _sfc_main$k = vue.defineComponent({
2267
2451
  ...{
2268
2452
  name: "Select",
2269
2453
  inheritAttrs: true
@@ -2409,12 +2593,12 @@
2409
2593
  button: "",
2410
2594
  size: 24,
2411
2595
  rotate: 90
2412
- })) : vue.createCommentVNode("", true)], 64)) : (vue.openBlock(), vue.createElementBlock("div", _hoisted_4$4, "暂无可选项"))], 2);
2596
+ })) : vue.createCommentVNode("", true)], 64)) : (vue.openBlock(), vue.createElementBlock("div", _hoisted_4$3, "暂无可选项"))], 2);
2413
2597
  };
2414
2598
  }
2415
2599
  });
2416
2600
 
2417
- var _sfc_main$l = vue.defineComponent({
2601
+ var _sfc_main$j = vue.defineComponent({
2418
2602
  ...{
2419
2603
  name: "Switch",
2420
2604
  inheritAttrs: true
@@ -2464,7 +2648,7 @@
2464
2648
  });
2465
2649
 
2466
2650
  const _hoisted_1$c = ["readonly", "placeholder", "rows"];
2467
- var _sfc_main$k = vue.defineComponent({
2651
+ var _sfc_main$i = vue.defineComponent({
2468
2652
  ...{
2469
2653
  name: "Textarea",
2470
2654
  inheritAttrs: true
@@ -2531,7 +2715,7 @@
2531
2715
 
2532
2716
  const _hoisted_1$b = ["onClick"];
2533
2717
  const _hoisted_2$6 = ["textContent"];
2534
- var _sfc_main$j = vue.defineComponent({
2718
+ var _sfc_main$h = vue.defineComponent({
2535
2719
  __name: "action-items",
2536
2720
  props: {
2537
2721
  mode: {},
@@ -2591,9 +2775,12 @@
2591
2775
  const _hoisted_2$5 = {
2592
2776
  class: "action-slot flex-cross-center"
2593
2777
  };
2594
- var _sfc_main$i = vue.defineComponent({
2778
+ var _sfc_main$g = vue.defineComponent({
2595
2779
  __name: "action",
2596
2780
  props: {
2781
+ disabled: {
2782
+ type: Boolean
2783
+ },
2597
2784
  trigger: {},
2598
2785
  actions: {}
2599
2786
  },
@@ -2618,21 +2805,23 @@
2618
2805
  popupScope.destroy();
2619
2806
  return;
2620
2807
  }
2621
- popupScope = follow(rootDom.value, {
2622
- component: _sfc_main$j,
2623
- closeOnEscape: true,
2624
- closeOnMask: true,
2625
- closeOnResize: true,
2626
- closeOnTarget: true,
2627
- followX: longPress ? ["center", "start", "end"] : ["after", "end", "start", "end", "center"],
2628
- followY: longPress ? ["center", "after", "before"] : ["after", "before", "center", "end", "after"],
2629
- props: {
2630
- mode: "vertical",
2631
- actions: props.actions
2632
- }
2633
- });
2634
- const code = await popupScope;
2635
- snail_core.isStringNotEmpty(code) && emits("trigger", code);
2808
+ if (props.disabled != true) {
2809
+ popupScope = follow(rootDom.value, {
2810
+ component: _sfc_main$h,
2811
+ closeOnEscape: true,
2812
+ closeOnMask: true,
2813
+ closeOnResize: true,
2814
+ closeOnTarget: true,
2815
+ followX: longPress ? ["center", "start", "end"] : ["after", "end", "start", "end", "center"],
2816
+ followY: longPress ? ["center", "after", "before"] : ["after", "before", "center", "end", "after"],
2817
+ props: {
2818
+ mode: "vertical",
2819
+ actions: props.actions
2820
+ }
2821
+ });
2822
+ const code = await popupScope;
2823
+ snail_core.isStringNotEmpty(code) && emits("trigger", code);
2824
+ }
2636
2825
  }
2637
2826
  function onMouseDown() {
2638
2827
  if (props.trigger == "long-press" && pressStartDate == void 0) {
@@ -2666,7 +2855,7 @@
2666
2855
  }
2667
2856
  });
2668
2857
  return (_ctx, _cache) => {
2669
- return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$a, [vue.createElementVNode("div", _hoisted_2$5, [vue.renderSlot(_ctx.$slots, "default")]), __props.trigger == "hover" ? (vue.openBlock(), vue.createBlock(_sfc_main$E, {
2858
+ return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$a, [vue.createElementVNode("div", _hoisted_2$5, [vue.renderSlot(_ctx.$slots, "default")]), __props.trigger == "hover" && __props.disabled != true ? (vue.openBlock(), vue.createBlock(_sfc_main$E, {
2670
2859
  key: 0,
2671
2860
  class: "hover-tips",
2672
2861
  button: "",
@@ -2683,65 +2872,7 @@
2683
2872
  }
2684
2873
  });
2685
2874
 
2686
- function monitScroll(manager, root, options, emiter, classStyleRef) {
2687
- const scope = snail_core.useScope();
2688
- let preStatus = void 0;
2689
- const observer = snail_view.useObserver();
2690
- const timer = snail_core.useTimer();
2691
- const reactive = useReactive();
2692
- function buildClassStyle() {
2693
- const array = (classStyleRef.value ? [...classStyleRef.value] : []).filter(item => item == "x-bar" || item == "y-bar");
2694
- array.push(...manager.buildClassStyle(options));
2695
- classStyleRef.value = array;
2696
- }
2697
- function refreshScrollInfo() {
2698
- const status = Object.freeze(manager.getStatus(root));
2699
- const events = Object.create(null);
2700
- if (preStatus != void 0) {
2701
- preStatus.xbar != status.xbar && (events.xbar = [status.xbar]);
2702
- preStatus.ybar != status.ybar && (events.ybar = [status.ybar]);
2703
- if (preStatus.xbar == true && status.xbar == true) {
2704
- status.left && preStatus.left !== status.left && (events.left = []);
2705
- status.right && preStatus.right !== status.right && (events.right = []);
2706
- }
2707
- if (preStatus.ybar == true && status.ybar == true) {
2708
- status.top && preStatus.top !== status.top && (events.top = []);
2709
- status.bottom && preStatus.bottom !== status.bottom && (events.bottom = []);
2710
- }
2711
- }
2712
- preStatus = status;
2713
- events.xbar && emiter("xbar", ...events.xbar);
2714
- events.left && emiter("left");
2715
- events.right && emiter("right");
2716
- events.ybar && emiter("ybar", ...events.ybar);
2717
- events.top && emiter("top");
2718
- events.bottom && emiter("bottom");
2719
- {
2720
- const array = (classStyleRef.value ? [...classStyleRef.value] : []).filter(item => item != "x-bar" && item != "y-bar");
2721
- status.xbar && array.push("x-bar");
2722
- status.ybar && array.push("y-bar");
2723
- classStyleRef.value = array;
2724
- }
2725
- }
2726
- buildClassStyle();
2727
- refreshScrollInfo();
2728
- reactive.watcher(() => options.scroll, buildClassStyle);
2729
- reactive.watcher(() => options.barSize, buildClassStyle);
2730
- observer.onSize(root, refreshScrollInfo);
2731
- observer.onEvent(root, "scroll", refreshScrollInfo);
2732
- timer.onInterval(() => {
2733
- const isChange = preStatus.scrollWidth != root.scrollWidth || preStatus.scrollHeight != root.scrollHeight;
2734
- isChange && refreshScrollInfo();
2735
- }, 100);
2736
- scope.onDestroy(() => {
2737
- observer.destroyed || observer.destroy();
2738
- timer.destroyed || timer.destroy();
2739
- reactive.destroyed || reactive.destroy();
2740
- });
2741
- return scope;
2742
- }
2743
-
2744
- var _sfc_main$h = vue.defineComponent({
2875
+ var _sfc_main$f = vue.defineComponent({
2745
2876
  ...{
2746
2877
  name: "Elastic",
2747
2878
  inheritAttrs: false
@@ -2947,7 +3078,7 @@
2947
3078
  }
2948
3079
  });
2949
3080
 
2950
- var _sfc_main$g = vue.defineComponent({
3081
+ var _sfc_main$e = vue.defineComponent({
2951
3082
  ...{
2952
3083
  name: "Flex",
2953
3084
  inheritAttrs: false
@@ -3042,20 +3173,13 @@
3042
3173
  }
3043
3174
  });
3044
3175
 
3045
- const _hoisted_1$9 = {
3046
- class: "fold-header"
3047
- };
3176
+ const _hoisted_1$9 = ["textContent"];
3048
3177
  const _hoisted_2$4 = ["textContent"];
3049
- const _hoisted_3$3 = ["textContent"];
3050
- const _hoisted_4$3 = {
3178
+ const _hoisted_3$3 = {
3051
3179
  key: 1,
3052
3180
  class: "status"
3053
3181
  };
3054
- const _hoisted_5$2 = {
3055
- class: "fold-body",
3056
- ref: "foldBody"
3057
- };
3058
- var _sfc_main$f = vue.defineComponent({
3182
+ var _sfc_main$d = vue.defineComponent({
3059
3183
  ...{
3060
3184
  name: "Fold",
3061
3185
  inheritAttrs: true
@@ -3066,7 +3190,9 @@
3066
3190
  type: Boolean
3067
3191
  },
3068
3192
  title: {},
3069
- subtitle: {}
3193
+ subtitle: {},
3194
+ header: {},
3195
+ body: {}
3070
3196
  }, {
3071
3197
  "status": {
3072
3198
  default: "expand"
@@ -3086,27 +3212,37 @@
3086
3212
  watcher
3087
3213
  } = useReactive();
3088
3214
  const statusModel = vue.useModel(__props, "status");
3089
- watcher(statusModel, updateFoldStyle);
3215
+ const foldHeaderDom = vue.useTemplateRef("foldHeader");
3090
3216
  const foldBodyDom = vue.useTemplateRef("foldBody");
3091
- function updateFoldStyle() {
3217
+ const slotHandle = {
3218
+ getStatus: () => statusModel.value,
3219
+ setStatus: value => statusModel.value = value,
3220
+ toggle: () => (onStatusClick(), statusModel.value)
3221
+ };
3222
+ function updateFoldStyle(disableAnimation) {
3092
3223
  const isExpand = statusModel.value == "expand";
3093
3224
  if (foldBodyDom.value) {
3094
- const minHeight = 32;
3225
+ const minHeight = foldHeaderDom.value.getBoundingClientRect().height;
3095
3226
  const maxHeight = minHeight + foldBodyDom.value.getBoundingClientRect().height;
3096
- transition(foldBodyDom.value.parentElement, {
3097
- from: {
3098
- transition: "height 0.2s ease",
3099
- overflow: "hidden",
3100
- height: `${isExpand ? minHeight : maxHeight}px`
3101
- },
3102
- to: {
3103
- height: `${isExpand ? maxHeight : minHeight}px`
3104
- },
3105
- end: {
3106
- overflow: isExpand ? "" : "hidden",
3107
- height: isExpand ? "" : `${minHeight}px`
3108
- }
3109
- });
3227
+ const endStyle = {
3228
+ overflow: isExpand ? "" : "hidden",
3229
+ height: isExpand ? "" : `${minHeight}px`
3230
+ };
3231
+ if (disableAnimation === true) {
3232
+ Object.assign(foldBodyDom.value.parentElement.style, endStyle);
3233
+ } else {
3234
+ transition(foldBodyDom.value.parentElement, {
3235
+ from: {
3236
+ transition: "height 0.2s ease",
3237
+ overflow: "hidden",
3238
+ height: `${isExpand ? minHeight : maxHeight}px`
3239
+ },
3240
+ to: {
3241
+ height: `${isExpand ? maxHeight : minHeight}px`
3242
+ },
3243
+ end: endStyle
3244
+ });
3245
+ }
3110
3246
  }
3111
3247
  }
3112
3248
  function onStatusClick() {
@@ -3122,73 +3258,38 @@
3122
3258
  }
3123
3259
  vue.nextTick(() => emits("change", statusModel.value));
3124
3260
  }
3261
+ vue.onMounted(() => {
3262
+ statusModel.value != "expand" && updateFoldStyle(true);
3263
+ watcher(statusModel, () => updateFoldStyle(false));
3264
+ });
3125
3265
  return (_ctx, _cache) => {
3126
3266
  return vue.openBlock(), vue.createElementBlock("div", {
3127
3267
  class: vue.normalizeClass(["snail-fold", statusModel.value])
3128
- }, [vue.createElementVNode("div", _hoisted_1$9, [vue.renderSlot(_ctx.$slots, "header", {}, () => [vue.createElementVNode("div", {
3268
+ }, [vue.createElementVNode("div", {
3269
+ class: vue.normalizeClass(["fold-header", __props.header ? __props.header.class : []]),
3270
+ ref: "foldHeader"
3271
+ }, [vue.renderSlot(_ctx.$slots, "header", vue.normalizeProps(vue.guardReactiveProps(slotHandle)), () => [vue.createElementVNode("div", {
3129
3272
  class: "title ellipsis",
3130
3273
  textContent: vue.toDisplayString(__props.title)
3131
- }, null, 8, _hoisted_2$4), !!__props.subtitle ? (vue.openBlock(), vue.createElementBlock("div", {
3274
+ }, null, 8, _hoisted_1$9), !!__props.subtitle ? (vue.openBlock(), vue.createElementBlock("div", {
3132
3275
  key: 0,
3133
3276
  class: "subtitle ellipsis",
3134
3277
  textContent: vue.toDisplayString(__props.subtitle)
3135
- }, null, 8, _hoisted_3$3)) : vue.createCommentVNode("", true), __props.disabled != true ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_4$3, [vue.createVNode(_sfc_main$E, {
3136
- custom: false,
3278
+ }, null, 8, _hoisted_2$4)) : vue.createCommentVNode("", true), __props.disabled != true ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_3$3, [vue.createVNode(_sfc_main$E, {
3137
3279
  type: "arrow",
3138
3280
  button: "",
3139
3281
  title: statusModel.value == "expand" ? "收起" : "展开",
3140
3282
  rotate: statusModel.value == "expand" ? -90 : 90,
3141
3283
  onClick: onStatusClick
3142
- }, null, 8, ["title", "rotate"])])) : vue.createCommentVNode("", true)])]), vue.createElementVNode("div", _hoisted_5$2, [vue.renderSlot(_ctx.$slots, "default")], 512)], 2);
3284
+ }, null, 8, ["title", "rotate"])])) : vue.createCommentVNode("", true)])], 2), vue.createElementVNode("div", {
3285
+ class: vue.normalizeClass(["fold-body", __props.body ? __props.body.class : []]),
3286
+ ref: "foldBody"
3287
+ }, [vue.renderSlot(_ctx.$slots, "default", vue.normalizeProps(vue.guardReactiveProps(slotHandle)))], 2)], 2);
3143
3288
  };
3144
3289
  }
3145
3290
  });
3146
3291
 
3147
- var _sfc_main$e = vue.defineComponent({
3148
- ...{
3149
- name: "Scroll",
3150
- inheritAttrs: false
3151
- },
3152
- __name: "scroll",
3153
- props: {
3154
- scroll: {},
3155
- barSize: {}
3156
- },
3157
- emits: ["xbar", "left", "right", "ybar", "top", "bottom"],
3158
- setup(__props, _ref) {
3159
- let {
3160
- expose: __expose,
3161
- emit: __emit
3162
- } = _ref;
3163
- const props = __props;
3164
- const emits = __emit;
3165
- const rootDom = vue.useTemplateRef("scroll-root");
3166
- const manager = snail_view.useScroll();
3167
- const classStyleRef = vue.shallowRef();
3168
- __expose({
3169
- getStatus() {
3170
- return manager.getStatus(rootDom.value);
3171
- },
3172
- scroll(left, top) {
3173
- left == void 0 || (rootDom.value.scrollLeft += left);
3174
- top == void 0 || (rootDom.value.scrollTop += top);
3175
- },
3176
- scrollTo(left, top) {
3177
- left == void 0 || (rootDom.value.scrollLeft = left);
3178
- top == void 0 || (rootDom.value.scrollTop = top);
3179
- }
3180
- });
3181
- vue.onMounted(() => monitScroll(manager, rootDom.value, props, emits, classStyleRef));
3182
- return (_ctx, _cache) => {
3183
- return vue.openBlock(), vue.createElementBlock("div", vue.mergeProps(_ctx.$attrs, {
3184
- class: ["snail-scroll", classStyleRef.value],
3185
- ref: "scroll-root"
3186
- }), [vue.renderSlot(_ctx.$slots, "default")], 16);
3187
- };
3188
- }
3189
- });
3190
-
3191
- var _sfc_main$d = vue.defineComponent({
3292
+ var _sfc_main$c = vue.defineComponent({
3192
3293
  __name: "layout",
3193
3294
  props: {
3194
3295
  mode: {},
@@ -3204,34 +3305,45 @@
3204
3305
  const map = Object.create(null);
3205
3306
  map.main = {
3206
3307
  scrollable: props.main && props.main.scroll != void 0,
3207
- class: props.main && snail_core.isStringNotEmpty(props.main.class) ? `main-area ${props.main.class}` : "main-area",
3308
+ class: buildAreaClass("main-area", props.main),
3208
3309
  style: void 0
3209
3310
  };
3210
3311
  if (props.mode == "vertical") {
3211
3312
  map.top = {
3212
3313
  scrollable: props.top && props.top.scroll != void 0,
3213
- class: props.top && snail_core.isStringNotEmpty(props.top.class) ? `top-area ${props.top.class}` : "top-area",
3314
+ class: buildAreaClass("top-area", props.top),
3214
3315
  style: buildHeightStyle(props.top)
3215
3316
  };
3216
3317
  map.bottom = {
3217
3318
  scrollable: props.bottom && props.bottom.scroll != void 0,
3218
- class: props.bottom && snail_core.isStringNotEmpty(props.bottom.class) ? `bottom-area ${props.bottom.class}` : "bottom-area",
3319
+ class: buildAreaClass("bottom-area", props.bottom),
3219
3320
  style: buildHeightStyle(props.bottom)
3220
3321
  };
3221
3322
  } else {
3222
3323
  map.left = {
3223
3324
  scrollable: props.left && props.left.scroll != void 0,
3224
- class: props.left && snail_core.isStringNotEmpty(props.left.class) ? `left-area ${props.left.class}` : "left-area",
3325
+ class: buildAreaClass("left-area", props.left),
3225
3326
  style: buildWidthStyle(props.left)
3226
3327
  };
3227
3328
  map.right = {
3228
3329
  scrollable: props.right && props.right.scroll != void 0,
3229
- class: props.right && snail_core.isStringNotEmpty(props.right.class) ? `right-area ${props.right.class}` : "right-area",
3330
+ class: buildAreaClass("right-area", props.right),
3230
3331
  style: buildWidthStyle(props.right)
3231
3332
  };
3232
3333
  }
3233
3334
  return map;
3234
3335
  });
3336
+ function buildAreaClass(fixedClass, cssClass) {
3337
+ const classArray = [fixedClass];
3338
+ if (cssClass != void 0) {
3339
+ if (snail_core.isArray(cssClass.class) == true) {
3340
+ classArray.push(...cssClass.class);
3341
+ } else if (snail_core.isStringNotEmpty(cssClass.class) == true) {
3342
+ classArray.push(cssClass.class);
3343
+ }
3344
+ }
3345
+ return classArray;
3346
+ }
3235
3347
  function buildWidthStyle(style) {
3236
3348
  return style ? snail_view.css.buildStyle({
3237
3349
  minWidth: style.minWidth,
@@ -3254,7 +3366,7 @@
3254
3366
  key: item
3255
3367
  }, [areaMap.value[item] && _ctx.$slots[item] ? (vue.openBlock(), vue.createElementBlock(vue.Fragment, {
3256
3368
  key: 0
3257
- }, [areaMap.value[item].scrollable ? (vue.openBlock(), vue.createBlock(_sfc_main$e, vue.mergeProps({
3369
+ }, [areaMap.value[item].scrollable ? (vue.openBlock(), vue.createBlock(_sfc_main$t, vue.mergeProps({
3258
3370
  key: 0,
3259
3371
  class: areaMap.value[item].class,
3260
3372
  style: areaMap.value[item].style
@@ -3273,7 +3385,7 @@
3273
3385
  }
3274
3386
  });
3275
3387
 
3276
- var _sfc_main$c = vue.defineComponent({
3388
+ var _sfc_main$b = vue.defineComponent({
3277
3389
  ...{
3278
3390
  name: "Sort",
3279
3391
  inheritAttrs: true
@@ -3377,7 +3489,7 @@
3377
3489
  const _hoisted_1$8 = {
3378
3490
  class: "table-body"
3379
3491
  };
3380
- var _sfc_main$b = vue.defineComponent({
3492
+ var _sfc_main$a = vue.defineComponent({
3381
3493
  ...{
3382
3494
  name: "Table",
3383
3495
  inheritAttrs: true
@@ -3397,7 +3509,7 @@
3397
3509
  const hStyleRef = vue.computed(() => snail_view.css.buildStyle(props.headerStyle));
3398
3510
  const fStyleRef = vue.computed(() => snail_view.css.buildStyle(props.footerStyle));
3399
3511
  return (_ctx, _cache) => {
3400
- return vue.openBlock(), vue.createBlock(_sfc_main$e, {
3512
+ return vue.openBlock(), vue.createBlock(_sfc_main$t, {
3401
3513
  class: vue.normalizeClass(["snail-table", {
3402
3514
  "start-border": __props.border == true
3403
3515
  }]),
@@ -3417,7 +3529,7 @@
3417
3529
  }
3418
3530
  });
3419
3531
 
3420
- var _sfc_main$a = vue.defineComponent({
3532
+ var _sfc_main$9 = vue.defineComponent({
3421
3533
  ...{
3422
3534
  name: "TableRow",
3423
3535
  inheritAttrs: true
@@ -3440,7 +3552,7 @@
3440
3552
  }
3441
3553
  });
3442
3554
 
3443
- var _sfc_main$9 = vue.defineComponent({
3555
+ var _sfc_main$8 = vue.defineComponent({
3444
3556
  ...{
3445
3557
  name: "TableCol",
3446
3558
  inheritAttrs: true
@@ -3498,7 +3610,7 @@
3498
3610
  class: "snail-tree-children",
3499
3611
  ref: "children"
3500
3612
  };
3501
- var _sfc_main$8 = vue.defineComponent({
3613
+ var _sfc_main$7 = vue.defineComponent({
3502
3614
  ...{
3503
3615
  name: "TreeNode",
3504
3616
  inheritAttrs: true
@@ -3644,7 +3756,7 @@
3644
3756
  const _hoisted_1$6 = {
3645
3757
  class: "snail-tree"
3646
3758
  };
3647
- var _sfc_main$7 = vue.defineComponent({
3759
+ var _sfc_main$6 = vue.defineComponent({
3648
3760
  ...{
3649
3761
  name: "Tree",
3650
3762
  inheritAttrs: true
@@ -3682,11 +3794,11 @@
3682
3794
  key: 0
3683
3795
  }, __props.search, {
3684
3796
  onSearch
3685
- }), null, 16)) : vue.createCommentVNode("", true), vue.createVNode(_sfc_main$e, {
3797
+ }), null, 16)) : vue.createCommentVNode("", true), vue.createVNode(_sfc_main$t, {
3686
3798
  scroll: "y"
3687
3799
  }, {
3688
3800
  default: vue.withCtx(() => [(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(__props.nodes || [], node => {
3689
- return vue.openBlock(), vue.createBlock(_sfc_main$8, {
3801
+ return vue.openBlock(), vue.createBlock(_sfc_main$7, {
3690
3802
  key: vue.unref(context).getKey(node),
3691
3803
  node,
3692
3804
  parent: void 0,
@@ -3707,52 +3819,6 @@
3707
3819
  }
3708
3820
  });
3709
3821
 
3710
- var _sfc_main$6 = vue.defineComponent({
3711
- __name: "wrapper",
3712
- props: {
3713
- readonly: {
3714
- type: Boolean
3715
- },
3716
- inPopup: {
3717
- type: Boolean
3718
- },
3719
- header: {},
3720
- content: {},
3721
- footer: {}
3722
- },
3723
- emits: ["cancel", "confirm"],
3724
- setup(__props, _ref) {
3725
- let {
3726
- emit: __emit
3727
- } = _ref;
3728
- const emits = __emit;
3729
- return (_ctx, _cache) => {
3730
- return vue.openBlock(), vue.createElementBlock("div", {
3731
- class: vue.normalizeClass(["snail-wrapper", __props.inPopup ? "in-popup" : "in-normal"])
3732
- }, [__props.header && __props.header.disabled != true ? (vue.openBlock(), vue.createBlock(_sfc_main$B, vue.mergeProps({
3733
- key: 0
3734
- }, __props.header || {
3735
- useTo: "dialog",
3736
- title: "对话框"
3737
- }, {
3738
- onClose: _cache[0] || (_cache[0] = $event => emits("cancel"))
3739
- }), null, 16)) : vue.createCommentVNode("", true), vue.createVNode(_sfc_main$e, vue.mergeProps({
3740
- class: "wrapper-body"
3741
- }, __props.content || {
3742
- scroll: "none"
3743
- }), {
3744
- default: vue.withCtx(() => [vue.renderSlot(_ctx.$slots, "default")]),
3745
- _: 3
3746
- }, 16), __props.footer && __props.readonly != true && __props.footer.disabled != true ? (vue.openBlock(), vue.createBlock(_sfc_main$C, vue.mergeProps({
3747
- key: 1
3748
- }, __props.footer || {}, {
3749
- onCancel: _cache[1] || (_cache[1] = $event => emits("cancel")),
3750
- onConfirm: _cache[2] || (_cache[2] = $event => emits("confirm"))
3751
- }), null, 16)) : vue.createCommentVNode("", true)], 2);
3752
- };
3753
- }
3754
- });
3755
-
3756
3822
  function mount(target, options, onDestroyed) {
3757
3823
  snail_core.mustObject(options, "options");
3758
3824
  target instanceof HTMLElement || snail_core.throwError("target must be a HTMLElement");
@@ -4047,7 +4113,7 @@
4047
4113
  }
4048
4114
  vue.onMounted(rebuildItems);
4049
4115
  return (_ctx, _cache) => {
4050
- return vue.openBlock(), vue.createBlock(_sfc_main$d, {
4116
+ return vue.openBlock(), vue.createBlock(_sfc_main$c, {
4051
4117
  class: vue.normalizeClass(["time-picker pc", {
4052
4118
  "second-disabled": vue.unref(format) != "HH:mm:ss"
4053
4119
  }]),
@@ -4347,7 +4413,7 @@
4347
4413
  dateRef.value == void 0 && (dateRef.value = electDateValue());
4348
4414
  buildPickerItems(stepRef.value, 0);
4349
4415
  return (_ctx, _cache) => {
4350
- return vue.openBlock(), vue.createBlock(_sfc_main$d, {
4416
+ return vue.openBlock(), vue.createBlock(_sfc_main$c, {
4351
4417
  class: vue.normalizeClass(["date-picker pc", {
4352
4418
  "time-now": __props.pinned && __props.pinned.value == true
4353
4419
  }]),
@@ -4797,7 +4863,7 @@
4797
4863
  });
4798
4864
 
4799
4865
  const components = {
4800
- Action: _sfc_main$i,
4866
+ Action: _sfc_main$g,
4801
4867
  Button: _sfc_main$F,
4802
4868
  Choose: _sfc_main$D,
4803
4869
  Footer: _sfc_main$C,
@@ -4806,27 +4872,27 @@
4806
4872
  Input: _sfc_main$A,
4807
4873
  Number: _sfc_main$z,
4808
4874
  Search: _sfc_main$y,
4809
- Select: _sfc_main$m,
4810
- Switch: _sfc_main$l,
4811
- Textarea: _sfc_main$k,
4875
+ Select: _sfc_main$k,
4876
+ Switch: _sfc_main$j,
4877
+ Textarea: _sfc_main$i,
4812
4878
  Dynamic: _sfc_main$u,
4813
- Elastic: _sfc_main$h,
4814
- Flex: _sfc_main$g,
4815
- Fold: _sfc_main$f,
4879
+ Elastic: _sfc_main$f,
4880
+ Flex: _sfc_main$e,
4881
+ Fold: _sfc_main$d,
4816
4882
  Motion: _sfc_main$w,
4817
- Layout: _sfc_main$d,
4818
- Scroll: _sfc_main$e,
4819
- Sort: _sfc_main$c,
4820
- Table: _sfc_main$b,
4821
- TableRow: _sfc_main$a,
4822
- TableCol: _sfc_main$9,
4823
- Tree: _sfc_main$7,
4824
- Wrapper: _sfc_main$6,
4883
+ Layout: _sfc_main$c,
4884
+ Scroll: _sfc_main$t,
4885
+ Sort: _sfc_main$b,
4886
+ Table: _sfc_main$a,
4887
+ TableRow: _sfc_main$9,
4888
+ TableCol: _sfc_main$8,
4889
+ Tree: _sfc_main$6,
4890
+ Wrapper: _sfc_main$s,
4825
4891
  FlashNumber: _sfc_main$5,
4826
4892
  DatePicker: _sfc_main$2,
4827
4893
  TimePicker: _sfc_main$1,
4828
4894
  DragVerify: _sfc_main,
4829
- Empty: _sfc_main$p,
4895
+ Empty: _sfc_main$n,
4830
4896
  Loading: _sfc_main$v
4831
4897
  };
4832
4898