dfish-widget 1.0.54 → 1.0.55

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/lib/index.esm.js CHANGED
@@ -2,7 +2,7 @@ import lodash from 'lodash';
2
2
  import jquery from 'jquery';
3
3
  import http from 'axios';
4
4
  import Qs from 'qs';
5
- import { nextTick, h, mergeProps, toRaw, resolveComponent, openBlock, createElementBlock, createStaticVNode, createElementVNode, createBlock, withCtx, Fragment, createVNode, renderList, toDisplayString, createTextVNode, createCommentVNode, Teleport, computed, resolveDirective, withDirectives, unref, renderSlot, TransitionGroup, ref, onMounted, watch, normalizeStyle, normalizeClass, getCurrentInstance, createSlots, resolveDynamicComponent, withModifiers } from 'vue';
5
+ import { nextTick, h, mergeProps, toRaw, resolveComponent, openBlock, createElementBlock, createStaticVNode, createElementVNode, createBlock, withCtx, Fragment, createVNode, renderList, toDisplayString, createTextVNode, createCommentVNode, Teleport, computed, resolveDirective, withDirectives, unref, renderSlot, ref, onMounted, watch, normalizeClass, normalizeStyle, TransitionGroup, getCurrentInstance, createSlots, resolveDynamicComponent, withModifiers } from 'vue';
6
6
  import ResizeObserver$1 from 'resize-observer-polyfill';
7
7
 
8
8
  let u = navigator.userAgent.toLowerCase();
@@ -1812,7 +1812,7 @@ function directive(Vue) {
1812
1812
 
1813
1813
  const bindCache = {};
1814
1814
 
1815
- var script$1m = {
1815
+ var script$1n = {
1816
1816
  props: ['data', 'width', 'height', 'colspan', 'rowspan', 'ownproperty', 'orientUid'],
1817
1817
  data() {
1818
1818
  return {
@@ -2077,9 +2077,9 @@ const bindCache = {};
2077
2077
  }
2078
2078
  };
2079
2079
 
2080
- script$1m.__file = "src/widgets/WidgetAbs.vue";
2080
+ script$1n.__file = "src/widgets/WidgetAbs.vue";
2081
2081
 
2082
- var script$1l = {
2082
+ var script$1m = {
2083
2083
  props: ['src', 'children', 'parentItem'],
2084
2084
  data() {
2085
2085
  return {
@@ -2113,11 +2113,11 @@ var script$1l = {
2113
2113
  }
2114
2114
  };
2115
2115
 
2116
- script$1l.__file = "src/widgets/SrcParent.vue";
2116
+ script$1m.__file = "src/widgets/SrcParent.vue";
2117
2117
 
2118
- var script$1k = {
2118
+ var script$1l = {
2119
2119
  name: 'w-view',
2120
- mixins: [script$1l],
2120
+ mixins: [script$1m],
2121
2121
  provide() {
2122
2122
  return {
2123
2123
  provideView: this
@@ -2313,21 +2313,21 @@ var script$1k = {
2313
2313
  }
2314
2314
  };
2315
2315
 
2316
- script$1k.__file = "src/widgets/ViewAbs.vue";
2316
+ script$1l.__file = "src/widgets/ViewAbs.vue";
2317
2317
 
2318
- var script$1j = {
2318
+ var script$1k = {
2319
2319
  name: 'w-svg-loading'
2320
2320
  };
2321
2321
 
2322
- const _hoisted_1$a = {
2322
+ const _hoisted_1$b = {
2323
2323
  style: {"display":"none","width":"0","height":"0"},
2324
2324
  width: "0",
2325
2325
  height: "0",
2326
2326
  focusable: "false",
2327
2327
  "aria-hidden": "true"
2328
2328
  };
2329
- const _hoisted_2$8 = /*#__PURE__*/createStaticVNode("<symbol id=\"f-svg-loading\" viewBox=\"0 0 50 50\"><path d=\"M43.935,25.145c0-10.318-8.364-18.683-18.683-18.683c-10.318,0-18.683,8.365-18.683,18.683h4.068c0-8.071,6.543-14.615,14.615-14.615c8.072,0,14.615,6.543,14.615,14.615H43.935z\" transform=\"rotate(86.9154 25 25)\"></path></symbol><symbol id=\"f-svg-loading-1\" viewBox=\"0 0 50 50\"><circle cx=\"25\" cy=\"25\" r=\"20\"></circle></symbol><symbol id=\"f-svg-loading-2\" viewBox=\"0 0 24 30\"><rect x=\"0\" y=\"8.66115\" width=\"4\" height=\"12.6777\" opacity=\"0.2\"><animate attributeName=\"opacity\" values=\"0.2; 1; .2\" begin=\"0s\" dur=\"0.6s\" repeatCount=\"indefinite\"></animate><animate attributeName=\"height\" values=\"10; 20; 10\" begin=\"0s\" dur=\"0.6s\" repeatCount=\"indefinite\"></animate><animate attributeName=\"y\" values=\"10; 5; 10\" begin=\"0s\" dur=\"0.6s\" repeatCount=\"indefinite\"></animate></rect><rect x=\"8\" y=\"6.16115\" width=\"4\" height=\"17.6777\" opacity=\"0.2\"><animate attributeName=\"opacity\" values=\"0.2; 1; .2\" begin=\"0.15s\" dur=\"0.6s\" repeatCount=\"indefinite\"></animate><animate attributeName=\"height\" values=\"10; 20; 10\" begin=\"0.15s\" dur=\"0.6s\" repeatCount=\"indefinite\"></animate><animate attributeName=\"y\" values=\"10; 5; 10\" begin=\"0.15s\" dur=\"0.6s\" repeatCount=\"indefinite\"></animate></rect><rect x=\"16\" y=\"6.33885\" width=\"4\" height=\"17.3223\" opacity=\"0.2\"><animate attributeName=\"opacity\" values=\"0.2; 1; .2\" begin=\"0.3s\" dur=\"0.6s\" repeatCount=\"indefinite\"></animate><animate attributeName=\"height\" values=\"10; 20; 10\" begin=\"0.3s\" dur=\"0.6s\" repeatCount=\"indefinite\"></animate><animate attributeName=\"y\" values=\"10; 5; 10\" begin=\"0.3s\" dur=\"0.6s\" repeatCount=\"indefinite\"></animate></rect></symbol>", 3);
2330
- const _hoisted_5$2 = /*#__PURE__*/createElementVNode("symbol", {
2329
+ const _hoisted_2$9 = /*#__PURE__*/createStaticVNode("<symbol id=\"f-svg-loading\" viewBox=\"0 0 50 50\"><path d=\"M43.935,25.145c0-10.318-8.364-18.683-18.683-18.683c-10.318,0-18.683,8.365-18.683,18.683h4.068c0-8.071,6.543-14.615,14.615-14.615c8.072,0,14.615,6.543,14.615,14.615H43.935z\" transform=\"rotate(86.9154 25 25)\"></path></symbol><symbol id=\"f-svg-loading-1\" viewBox=\"0 0 50 50\"><circle cx=\"25\" cy=\"25\" r=\"20\"></circle></symbol><symbol id=\"f-svg-loading-2\" viewBox=\"0 0 24 30\"><rect x=\"0\" y=\"8.66115\" width=\"4\" height=\"12.6777\" opacity=\"0.2\"><animate attributeName=\"opacity\" values=\"0.2; 1; .2\" begin=\"0s\" dur=\"0.6s\" repeatCount=\"indefinite\"></animate><animate attributeName=\"height\" values=\"10; 20; 10\" begin=\"0s\" dur=\"0.6s\" repeatCount=\"indefinite\"></animate><animate attributeName=\"y\" values=\"10; 5; 10\" begin=\"0s\" dur=\"0.6s\" repeatCount=\"indefinite\"></animate></rect><rect x=\"8\" y=\"6.16115\" width=\"4\" height=\"17.6777\" opacity=\"0.2\"><animate attributeName=\"opacity\" values=\"0.2; 1; .2\" begin=\"0.15s\" dur=\"0.6s\" repeatCount=\"indefinite\"></animate><animate attributeName=\"height\" values=\"10; 20; 10\" begin=\"0.15s\" dur=\"0.6s\" repeatCount=\"indefinite\"></animate><animate attributeName=\"y\" values=\"10; 5; 10\" begin=\"0.15s\" dur=\"0.6s\" repeatCount=\"indefinite\"></animate></rect><rect x=\"16\" y=\"6.33885\" width=\"4\" height=\"17.3223\" opacity=\"0.2\"><animate attributeName=\"opacity\" values=\"0.2; 1; .2\" begin=\"0.3s\" dur=\"0.6s\" repeatCount=\"indefinite\"></animate><animate attributeName=\"height\" values=\"10; 20; 10\" begin=\"0.3s\" dur=\"0.6s\" repeatCount=\"indefinite\"></animate><animate attributeName=\"y\" values=\"10; 5; 10\" begin=\"0.3s\" dur=\"0.6s\" repeatCount=\"indefinite\"></animate></rect></symbol>", 3);
2330
+ const _hoisted_5$3 = /*#__PURE__*/createElementVNode("symbol", {
2331
2331
  id: "f-svg-loading-3",
2332
2332
  viewBox: "0 0 1024 1024"
2333
2333
  }, [
@@ -2336,19 +2336,19 @@ const _hoisted_5$2 = /*#__PURE__*/createElementVNode("symbol", {
2336
2336
  "p-id": "4486"
2337
2337
  })
2338
2338
  ], -1 /* HOISTED */);
2339
- const _hoisted_6$2 = [
2340
- _hoisted_2$8,
2341
- _hoisted_5$2
2339
+ const _hoisted_6$3 = [
2340
+ _hoisted_2$9,
2341
+ _hoisted_5$3
2342
2342
  ];
2343
2343
 
2344
2344
  function render$8(_ctx, _cache, $props, $setup, $data, $options) {
2345
- return (openBlock(), createElementBlock("svg", _hoisted_1$a, _hoisted_6$2))
2345
+ return (openBlock(), createElementBlock("svg", _hoisted_1$b, _hoisted_6$3))
2346
2346
  }
2347
2347
 
2348
- script$1j.render = render$8;
2349
- script$1j.__file = "src/assets/SVGIcon.vue";
2348
+ script$1k.render = render$8;
2349
+ script$1k.__file = "src/assets/SVGIcon.vue";
2350
2350
 
2351
- var script$1i = {
2351
+ var script$1j = {
2352
2352
  props: ['data'],
2353
2353
  data() {
2354
2354
  return {
@@ -2389,10 +2389,10 @@ var script$1i = {
2389
2389
  }
2390
2390
  };
2391
2391
 
2392
- const _hoisted_1$9 = { class: "f-height f-rel f-oh" };
2393
- const _hoisted_2$7 = ["src"];
2394
- const _hoisted_3$5 = { class: "_rotate" };
2395
- const _hoisted_4$3 = /*#__PURE__*/createElementVNode("span", { class: "_s" }, "|", -1 /* HOISTED */);
2392
+ const _hoisted_1$a = { class: "f-height f-rel f-oh" };
2393
+ const _hoisted_2$8 = ["src"];
2394
+ const _hoisted_3$6 = { class: "_rotate" };
2395
+ const _hoisted_4$4 = /*#__PURE__*/createElementVNode("span", { class: "_s" }, "|", -1 /* HOISTED */);
2396
2396
 
2397
2397
  function render$7(_ctx, _cache, $props, $setup, $data, $options) {
2398
2398
  const _component_w_swiper_item = resolveComponent("w-swiper-item");
@@ -2423,11 +2423,11 @@ function render$7(_ctx, _cache, $props, $setup, $data, $options) {
2423
2423
  (openBlock(true), createElementBlock(Fragment, null, renderList($props.data.imgs, (item, index) => {
2424
2424
  return (openBlock(), createBlock(_component_w_swiper_item, { key: index }, {
2425
2425
  default: withCtx(() => [
2426
- createElementVNode("div", _hoisted_1$9, [
2426
+ createElementVNode("div", _hoisted_1$a, [
2427
2427
  createElementVNode("img", {
2428
2428
  class: "_img",
2429
2429
  src: item
2430
- }, null, 8 /* PROPS */, _hoisted_2$7)
2430
+ }, null, 8 /* PROPS */, _hoisted_2$8)
2431
2431
  ])
2432
2432
  ]),
2433
2433
  _: 2 /* DYNAMIC */
@@ -2436,12 +2436,12 @@ function render$7(_ctx, _cache, $props, $setup, $data, $options) {
2436
2436
  ]),
2437
2437
  _: 1 /* STABLE */
2438
2438
  }, 8 /* PROPS */, ["current", "arrow", "indicator-dots"]),
2439
- createElementVNode("div", _hoisted_3$5, [
2439
+ createElementVNode("div", _hoisted_3$6, [
2440
2440
  createElementVNode("a", {
2441
2441
  class: "_l",
2442
2442
  onClick: _cache[0] || (_cache[0] = $event => ($options.rot(-1)))
2443
2443
  }, toDisplayString($options.loc.rotate_left), 1 /* TEXT */),
2444
- _hoisted_4$3,
2444
+ _hoisted_4$4,
2445
2445
  createElementVNode("a", {
2446
2446
  class: "_r",
2447
2447
  onClick: _cache[1] || (_cache[1] = $event => ($options.rot(1)))
@@ -2462,10 +2462,10 @@ function render$7(_ctx, _cache, $props, $setup, $data, $options) {
2462
2462
  }))
2463
2463
  }
2464
2464
 
2465
- script$1i.render = render$7;
2466
- script$1i.__file = "src/template/TemplatePreviewMedia.vue";
2465
+ script$1j.render = render$7;
2466
+ script$1j.__file = "src/template/TemplatePreviewMedia.vue";
2467
2467
 
2468
- var script$1h = {
2468
+ var script$1i = {
2469
2469
  props: ['data'],
2470
2470
  data() {
2471
2471
  let f = this.data.format || 'yyyy-MM-dd';
@@ -2966,12 +2966,12 @@ function render$6(_ctx, _cache, $props, $setup, $data, $options) {
2966
2966
  }))
2967
2967
  }
2968
2968
 
2969
- script$1h.render = render$6;
2970
- script$1h.__file = "src/template/TemplateDateSheet.vue";
2969
+ script$1i.render = render$6;
2970
+ script$1i.__file = "src/template/TemplateDateSheet.vue";
2971
2971
 
2972
- var script$1g = {
2972
+ var script$1h = {
2973
2973
  name: 'w-docview',
2974
- mixins: [script$1m, script$1k],
2974
+ mixins: [script$1n, script$1l],
2975
2975
  provide() {
2976
2976
  return {
2977
2977
  providePubParent: null,
@@ -2993,15 +2993,15 @@ var script$1g = {
2993
2993
  return null
2994
2994
  },
2995
2995
  previewVideo(src) {
2996
- this.pop(script$1i, {data: {type: 'video', src}});
2996
+ this.pop(script$1j, {data: {type: 'video', src}});
2997
2997
  },
2998
2998
  previewImage(imgs, options) {
2999
- this.pop(script$1i, {data: {type: 'image', imgs, options}});
2999
+ this.pop(script$1j, {data: {type: 'image', imgs, options}});
3000
3000
  },
3001
3001
  //dateOptions: {value, format, minValue, maxValue, success}
3002
3002
  dateSheet(dateOptions, dialogOptions) {
3003
- this.pop(script$1h, {
3004
- template: script$1h,
3003
+ this.pop(script$1i, {
3004
+ template: script$1i,
3005
3005
  width: '100%',
3006
3006
  height: '55%',
3007
3007
  position: 'b',
@@ -3017,20 +3017,20 @@ var script$1g = {
3017
3017
  return [
3018
3018
  this.$slots.default && this.$slots.default(),
3019
3019
  this.html_pops(),
3020
- h(script$1j),
3020
+ h(script$1k),
3021
3021
  ]
3022
3022
  }
3023
3023
  }
3024
3024
  };
3025
3025
 
3026
- script$1g.__file = "src/widgets/DocView.vue";
3026
+ script$1h.__file = "src/widgets/DocView.vue";
3027
3027
 
3028
- var script$1f = {
3029
- mixins: [script$1m],
3028
+ var script$1g = {
3029
+ mixins: [script$1n],
3030
3030
  inject: ['provideView']
3031
3031
  };
3032
3032
 
3033
- script$1f.__file = "src/widgets/WidgetBase.vue";
3033
+ script$1g.__file = "src/widgets/WidgetBase.vue";
3034
3034
 
3035
3035
  const onScroll = function(e) {
3036
3036
  if (this.wScrollPercentX) {
@@ -3071,8 +3071,8 @@ const onScroll = function(e) {
3071
3071
  }, dnEv);
3072
3072
  };
3073
3073
 
3074
- var script$1e = {
3075
- mixins: [script$1f],
3074
+ var script$1f = {
3075
+ mixins: [script$1g],
3076
3076
  props: ['scrollX', 'scrollY', 'scrollView', 'scrollFlex'],
3077
3077
  data() {
3078
3078
  return {
@@ -3358,9 +3358,9 @@ const onScroll = function(e) {
3358
3358
  }
3359
3359
  };
3360
3360
 
3361
- script$1e.__file = "src/widgets/Scroll.vue";
3361
+ script$1f.__file = "src/widgets/Scroll.vue";
3362
3362
 
3363
- var script$1d = {
3363
+ var script$1e = {
3364
3364
  props: ['align', 'valign', 'gap'],
3365
3365
  computed: {
3366
3366
  dir() {
@@ -3375,11 +3375,11 @@ var script$1d = {
3375
3375
  }
3376
3376
  };
3377
3377
 
3378
- script$1d.__file = "src/widgets/AlignParent.vue";
3378
+ script$1e.__file = "src/widgets/AlignParent.vue";
3379
3379
 
3380
- var script$1c = {
3380
+ var script$1d = {
3381
3381
  name: 'w-horizontal',
3382
- mixins: [script$1e, script$1d],
3382
+ mixins: [script$1f, script$1e],
3383
3383
  props: ['br', 'reverse'],
3384
3384
  provide() {
3385
3385
  return {
@@ -3431,11 +3431,11 @@ var script$1c = {
3431
3431
  }
3432
3432
  };
3433
3433
 
3434
- script$1c.__file = "src/widgets/Horizontal.vue";
3434
+ script$1d.__file = "src/widgets/Horizontal.vue";
3435
3435
 
3436
- var script$1b = {
3436
+ var script$1c = {
3437
3437
  name: 'w-vertical',
3438
- mixins: [script$1c],
3438
+ mixins: [script$1d],
3439
3439
  computed: {
3440
3440
  dir() {
3441
3441
  return 'v'
@@ -3443,11 +3443,11 @@ var script$1b = {
3443
3443
  }
3444
3444
  };
3445
3445
 
3446
- script$1b.__file = "src/widgets/Vertical.vue";
3446
+ script$1c.__file = "src/widgets/Vertical.vue";
3447
3447
 
3448
- var script$1a = {
3448
+ var script$1b = {
3449
3449
  name: 'w-view',
3450
- mixins: [script$1b, script$1k],
3450
+ mixins: [script$1c, script$1l],
3451
3451
  inject: ['provideView'],
3452
3452
  methods: {
3453
3453
  html_slots() {
@@ -3464,7 +3464,7 @@ var script$1a = {
3464
3464
  }
3465
3465
  };
3466
3466
 
3467
- script$1a.__file = "src/widgets/View.vue";
3467
+ script$1b.__file = "src/widgets/View.vue";
3468
3468
 
3469
3469
  const O = {},
3470
3470
  T = true,
@@ -3481,9 +3481,9 @@ const O = {},
3481
3481
  return typeof a === 'string' && a.split(',').map(v => positionHooks[v] || v).join()
3482
3482
  };
3483
3483
 
3484
- var script$19 = {
3484
+ var script$1a = {
3485
3485
  name: 'w-dialog',
3486
- mixins: [script$1a],
3486
+ mixins: [script$1b],
3487
3487
  props: ['title', 'autoHide', 'context', 'prong', 'independent', 'timeout',
3488
3488
  'cover', 'position', 'snap', 'indent', 'offsetRange', 'local', 'fullScreen', 'hoverShowDrop', 'visible',
3489
3489
  ...boundary
@@ -3858,12 +3858,12 @@ const O = {},
3858
3858
  }
3859
3859
  };
3860
3860
 
3861
- script$19.__file = "src/widgets/Dialog.vue";
3861
+ script$1a.__file = "src/widgets/Dialog.vue";
3862
3862
 
3863
- const _hoisted_1$8 = /*#__PURE__*/createElementVNode("i", { class: "w-alert-close-icon f-i f-i-close" }, null, -1 /* HOISTED */);
3863
+ const _hoisted_1$9 = /*#__PURE__*/createElementVNode("i", { class: "w-alert-close-icon f-i f-i-close" }, null, -1 /* HOISTED */);
3864
3864
 
3865
3865
 
3866
- var script$18 = {
3866
+ var script$19 = {
3867
3867
  __name: 'TemplateAlert',
3868
3868
  props: ['text', 'escape', 'title', 'icon', 'showButton'],
3869
3869
  emits: ['save', 'close'],
@@ -3931,7 +3931,7 @@ return (_ctx, _cache) => {
3931
3931
  onClick: close
3932
3932
  }, {
3933
3933
  default: withCtx(() => [
3934
- _hoisted_1$8
3934
+ _hoisted_1$9
3935
3935
  ]),
3936
3936
  _: 1 /* STABLE */
3937
3937
  })
@@ -3996,11 +3996,11 @@ return (_ctx, _cache) => {
3996
3996
 
3997
3997
  };
3998
3998
 
3999
- script$18.__file = "src/template/TemplateAlert.vue";
3999
+ script$19.__file = "src/template/TemplateAlert.vue";
4000
4000
 
4001
- var script$17 = {
4001
+ var script$18 = {
4002
4002
  name: 'w-alert',
4003
- mixins: [script$19],
4003
+ mixins: [script$1a],
4004
4004
  props: ['text', 'title', 'escape', 'yes', 'no', 'showButton'],
4005
4005
  methods: {
4006
4006
  x_default() {
@@ -4018,7 +4018,7 @@ var script$17 = {
4018
4018
  },
4019
4019
  html_slots_default() {
4020
4020
  return h(
4021
- script$18,
4021
+ script$19,
4022
4022
  {
4023
4023
  text: this.x.text,
4024
4024
  title: this.x.title,
@@ -4034,12 +4034,12 @@ var script$17 = {
4034
4034
  }
4035
4035
  };
4036
4036
 
4037
- script$17.__file = "src/widgets/Alert.vue";
4037
+ script$18.__file = "src/widgets/Alert.vue";
4038
4038
 
4039
- const _hoisted_1$7 = /*#__PURE__*/createElementVNode("i", { class: "w-alert-close-icon f-i f-i-close" }, null, -1 /* HOISTED */);
4039
+ const _hoisted_1$8 = /*#__PURE__*/createElementVNode("i", { class: "w-alert-close-icon f-i f-i-close" }, null, -1 /* HOISTED */);
4040
4040
 
4041
4041
 
4042
- var script$16 = {
4042
+ var script$17 = {
4043
4043
  __name: 'TemplateConfirm',
4044
4044
  props: ['text', 'escape', 'title', 'icon', 'showButton'],
4045
4045
  emits: ['save', 'close'],
@@ -4107,7 +4107,7 @@ return (_ctx, _cache) => {
4107
4107
  onClick: close
4108
4108
  }, {
4109
4109
  default: withCtx(() => [
4110
- _hoisted_1$7
4110
+ _hoisted_1$8
4111
4111
  ]),
4112
4112
  _: 1 /* STABLE */
4113
4113
  })
@@ -4179,11 +4179,11 @@ return (_ctx, _cache) => {
4179
4179
 
4180
4180
  };
4181
4181
 
4182
- script$16.__file = "src/template/TemplateConfirm.vue";
4182
+ script$17.__file = "src/template/TemplateConfirm.vue";
4183
4183
 
4184
- var script$15 = {
4184
+ var script$16 = {
4185
4185
  name: 'w-confirm',
4186
- mixins: [script$19],
4186
+ mixins: [script$1a],
4187
4187
  props: ['text', 'title', 'escape', 'yes', 'no', 'showButton'],
4188
4188
  methods: {
4189
4189
  x_default() {
@@ -4202,7 +4202,7 @@ var script$15 = {
4202
4202
  },
4203
4203
  html_slots_default() {
4204
4204
  return h(
4205
- script$16,
4205
+ script$17,
4206
4206
  {
4207
4207
  text: this.x.text,
4208
4208
  title: this.x.title,
@@ -4218,17 +4218,17 @@ var script$15 = {
4218
4218
  }
4219
4219
  };
4220
4220
 
4221
- script$15.__file = "src/widgets/Confirm.vue";
4221
+ script$16.__file = "src/widgets/Confirm.vue";
4222
4222
 
4223
- const _hoisted_1$6 = { class: "w-tip-body" };
4224
- const _hoisted_2$6 = {
4223
+ const _hoisted_1$7 = { class: "w-tip-body" };
4224
+ const _hoisted_2$7 = {
4225
4225
  key: 0,
4226
4226
  class: "w-tip-text"
4227
4227
  };
4228
- const _hoisted_3$4 = ["innerHTML"];
4228
+ const _hoisted_3$5 = ["innerHTML"];
4229
4229
 
4230
4230
 
4231
- var script$14 = {
4231
+ var script$15 = {
4232
4232
  __name: 'TemplateTip',
4233
4233
  props: ['text', 'escape'],
4234
4234
  setup(__props) {
@@ -4236,15 +4236,15 @@ var script$14 = {
4236
4236
 
4237
4237
 
4238
4238
  return (_ctx, _cache) => {
4239
- return (openBlock(), createElementBlock("div", _hoisted_1$6, [
4239
+ return (openBlock(), createElementBlock("div", _hoisted_1$7, [
4240
4240
  renderSlot(_ctx.$slots, "text", {}, () => [
4241
4241
  (__props.escape)
4242
- ? (openBlock(), createElementBlock("div", _hoisted_2$6, toDisplayString(__props.text), 1 /* TEXT */))
4242
+ ? (openBlock(), createElementBlock("div", _hoisted_2$7, toDisplayString(__props.text), 1 /* TEXT */))
4243
4243
  : (openBlock(), createElementBlock("div", {
4244
4244
  key: 1,
4245
4245
  class: "w-tip-text",
4246
4246
  innerHTML: __props.text
4247
- }, null, 8 /* PROPS */, _hoisted_3$4))
4247
+ }, null, 8 /* PROPS */, _hoisted_3$5))
4248
4248
  ])
4249
4249
  ]))
4250
4250
  }
@@ -4252,16 +4252,16 @@ return (_ctx, _cache) => {
4252
4252
 
4253
4253
  };
4254
4254
 
4255
- script$14.__file = "src/template/TemplateTip.vue";
4255
+ script$15.__file = "src/template/TemplateTip.vue";
4256
4256
 
4257
4257
  let inst$1 = null;
4258
4258
  let tipCache = {
4259
4259
  time: new Date().getTime()
4260
4260
  };
4261
4261
 
4262
- var script$13 = {
4262
+ var script$14 = {
4263
4263
  name: 'w-tip',
4264
- mixins: [script$19],
4264
+ mixins: [script$1a],
4265
4265
  props: ['face', 'text', 'escape'],
4266
4266
  methods: {
4267
4267
  x_default() {
@@ -4273,7 +4273,7 @@ let inst$1 = null;
4273
4273
  }
4274
4274
  },
4275
4275
  html_slots_default() {
4276
- return h(script$14, {text: this.x.text, escape: this.x.escape}, this.$slots)
4276
+ return h(script$15, {text: this.x.text, escape: this.x.escape}, this.$slots)
4277
4277
  }
4278
4278
  },
4279
4279
  computed: {
@@ -4298,12 +4298,12 @@ let inst$1 = null;
4298
4298
  }
4299
4299
  };
4300
4300
 
4301
- script$13.__file = "src/widgets/Tip.vue";
4301
+ script$14.__file = "src/widgets/Tip.vue";
4302
4302
 
4303
- var script$12 = {
4303
+ var script$13 = {
4304
4304
  name: 'w-img',
4305
4305
  pubParentName: 'w-album',
4306
- mixins: [script$1f],
4306
+ mixins: [script$1g],
4307
4307
  inject: ['providePubParent'],
4308
4308
  props: ['src', 'text', 'square', 'imgWidth', 'imgHeight', 'dataUrl', 'vertical', 'disabled'],
4309
4309
  data() {
@@ -4349,7 +4349,7 @@ var script$12 = {
4349
4349
  class: 'w-img-cover f-abs-full'
4350
4350
  }, this.$slots.cover())
4351
4351
  ]),
4352
- cont && h(script$1b, {
4352
+ cont && h(script$1c, {
4353
4353
  class: 'w-img-description'
4354
4354
  }, cont)
4355
4355
  ]
@@ -4383,11 +4383,11 @@ var script$12 = {
4383
4383
  }
4384
4384
  };
4385
4385
 
4386
- script$12.__file = "src/widgets/Img.vue";
4386
+ script$13.__file = "src/widgets/Img.vue";
4387
4387
 
4388
- var script$11 = {
4388
+ var script$12 = {
4389
4389
  pubParentName: 'w-buttonbar',
4390
- mixins: [script$1f],
4390
+ mixins: [script$1g],
4391
4391
  props: ['text', 'icon', 'focusIcon', 'face', 'target', 'closable', 'loading', 'disabled', 'vertical', 'hoverShowDrop', 'dropProps', 'dropIcon', 'showDropIcon'],
4392
4392
  inject: ['providePubParent', 'provideMenu_w'],
4393
4393
  emits: ['click:close', 'dropClose'],
@@ -4476,7 +4476,7 @@ var script$11 = {
4476
4476
  if (this.x.loading) {
4477
4477
  r.push(h('div', {
4478
4478
  class: 'w-button-loading f-abs-full f-flex-center'
4479
- }, h(script$12, {
4479
+ }, h(script$13, {
4480
4480
  src: '#f-svg-loading'
4481
4481
  })));
4482
4482
  }
@@ -4491,7 +4491,7 @@ var script$11 = {
4491
4491
  }, h('span', {class: 'w-button-text-line f-line-1', title}, t)));
4492
4492
  }
4493
4493
  if (this.isMore && this.x.showDropIcon) {
4494
- r.push(h(script$12, {
4494
+ r.push(h(script$13, {
4495
4495
  class: 'w-button-more f-flex-center f-height',
4496
4496
  src: this.x.dropIcon || '.f-i .f-i-caret-down'
4497
4497
  }));
@@ -4509,7 +4509,7 @@ var script$11 = {
4509
4509
  class: 'w-button-main f-oh f-height',
4510
4510
  ...(this.isCombo && !this.isDisabled && this.mouses),
4511
4511
  }, r),
4512
- this.isCombo && h(script$12, {
4512
+ this.isCombo && h(script$13, {
4513
4513
  class: 'w-button-drop f-flex-center f-height',
4514
4514
  src: this.x.dropIcon || '.f-i .f-i-caret-down',
4515
4515
  ...(!this.isDisabled && this.mouses),
@@ -4560,11 +4560,11 @@ var script$11 = {
4560
4560
  }
4561
4561
  };
4562
4562
 
4563
- script$11.__file = "src/widgets/ButtonAbs.vue";
4563
+ script$12.__file = "src/widgets/ButtonAbs.vue";
4564
4564
 
4565
- var script$10 = {
4565
+ var script$11 = {
4566
4566
  name: 'w-menubutton',
4567
- mixins: [script$11],
4567
+ mixins: [script$12],
4568
4568
  methods: {
4569
4569
  ajax(...args) {
4570
4570
  return this.parentMenu.rootCommander.ajax(...args)
@@ -4627,7 +4627,7 @@ var script$10 = {
4627
4627
  onclick: this.clickClose
4628
4628
  })));
4629
4629
  }
4630
- r.push(h(script$12, {
4630
+ r.push(h(script$13, {
4631
4631
  class: 'w-menubutton-drop f-flex-center f-height',
4632
4632
  src: this.isMore ? (this.x.dropIcon || '.f-i .f-i-caret-right') : ''
4633
4633
  }));
@@ -4678,11 +4678,11 @@ var script$10 = {
4678
4678
  },
4679
4679
  };
4680
4680
 
4681
- script$10.__file = "src/widgets/MenuButton.vue";
4681
+ script$11.__file = "src/widgets/MenuButton.vue";
4682
4682
 
4683
- var script$$ = {
4683
+ var script$10 = {
4684
4684
  name: 'w-button',
4685
- mixins: [script$11],
4685
+ mixins: [script$12],
4686
4686
  props: ['autoMenuButton'],
4687
4687
  methods: {
4688
4688
  x_default() {
@@ -4694,14 +4694,14 @@ var script$$ = {
4694
4694
  },
4695
4695
  render() {
4696
4696
  if (this.provideMenu_w && this.x.autoMenuButton) {
4697
- return h(script$10, this.$props, this.$slots)
4697
+ return h(script$11, this.$props, this.$slots)
4698
4698
  } else {
4699
4699
  return this.html()
4700
4700
  }
4701
4701
  }
4702
4702
  };
4703
4703
 
4704
- script$$.__file = "src/widgets/Button.vue";
4704
+ script$10.__file = "src/widgets/Button.vue";
4705
4705
 
4706
4706
  let inst = null;
4707
4707
 
@@ -4716,9 +4716,9 @@ let inst = null;
4716
4716
  return inst && (ctx.hasBubble(inst.context) || inst.hasBubble(ctx))
4717
4717
  }
4718
4718
 
4719
- var script$_ = {
4719
+ var script$$ = {
4720
4720
  name: 'w-menu',
4721
- mixins: [script$19],
4721
+ mixins: [script$1a],
4722
4722
  provide() {
4723
4723
  return {
4724
4724
  provideMenu_w: this
@@ -4787,7 +4787,7 @@ let inst = null;
4787
4787
  }, h('i', {
4788
4788
  class: 'f-i f-i-caret-up'
4789
4789
  })),
4790
- h(script$1b, {
4790
+ h(script$1c, {
4791
4791
  class: 'w-menu-bbr',
4792
4792
  height: '*',
4793
4793
  ref: 'bbr',
@@ -4842,11 +4842,11 @@ let inst = null;
4842
4842
  }
4843
4843
  };
4844
4844
 
4845
- script$_.__file = "src/widgets/Menu.vue";
4845
+ script$$.__file = "src/widgets/Menu.vue";
4846
4846
 
4847
- var script$Z = {
4847
+ var script$_ = {
4848
4848
  name: 'w-loading',
4849
- mixins: [script$19],
4849
+ mixins: [script$1a],
4850
4850
  props: ['text', 'icon'],
4851
4851
  methods: {
4852
4852
  x_default() {
@@ -4855,7 +4855,7 @@ var script$Z = {
4855
4855
  }
4856
4856
  },
4857
4857
  html_slots() {
4858
- return h(script$12, {
4858
+ return h(script$13, {
4859
4859
  src: this.x.icon !== undefined ? this.x.icon : '#f-svg-loading',
4860
4860
  text: this.x.text !== undefined ? this.x.text : $$1.loc.loading
4861
4861
  })
@@ -4868,11 +4868,11 @@ var script$Z = {
4868
4868
  }
4869
4869
  };
4870
4870
 
4871
- script$Z.__file = "src/widgets/Loading.vue";
4871
+ script$_.__file = "src/widgets/Loading.vue";
4872
4872
 
4873
- var script$Y = {
4873
+ var script$Z = {
4874
4874
  name: 'w-table',
4875
- mixins: [script$1f],
4875
+ mixins: [script$1g],
4876
4876
  props: ['face', 'scroll-x', 'scroll-y'],
4877
4877
  provide() {
4878
4878
  return {
@@ -4949,22 +4949,22 @@ var script$Y = {
4949
4949
  }
4950
4950
  };
4951
4951
 
4952
- script$Y.__file = "src/widgets/Table.vue";
4952
+ script$Z.__file = "src/widgets/Table.vue";
4953
4953
 
4954
- var script$X = {
4954
+ var script$Y = {
4955
4955
  name: 'w-columns'
4956
4956
  };
4957
4957
 
4958
- script$X.__file = "src/widgets/TableColumns.vue";
4958
+ script$Y.__file = "src/widgets/TableColumns.vue";
4959
4959
 
4960
- var script$W = {
4960
+ var script$X = {
4961
4961
  name: 'w-column',
4962
4962
  props: ['width', 'minWidth'],
4963
4963
  };
4964
4964
 
4965
- script$W.__file = "src/widgets/TableColumn.vue";
4965
+ script$X.__file = "src/widgets/TableColumn.vue";
4966
4966
 
4967
- var script$V = {
4967
+ var script$W = {
4968
4968
  props: ['pub', 'current'],
4969
4969
  provide() {
4970
4970
  return {
@@ -4995,21 +4995,21 @@ var script$V = {
4995
4995
  }
4996
4996
  };
4997
4997
 
4998
- script$V.__file = "src/widgets/PubParent.vue";
4998
+ script$W.__file = "src/widgets/PubParent.vue";
4999
4999
 
5000
5000
  function render$5(_ctx, _cache) {
5001
5001
  return renderSlot(_ctx.$slots, "default")
5002
5002
  }
5003
5003
 
5004
- const script$U = {};
5004
+ const script$V = {};
5005
5005
 
5006
5006
 
5007
- script$U.render = render$5;
5008
- script$U.__file = "src/widgets/SlotDefault.vue";
5007
+ script$V.render = render$5;
5008
+ script$V.__file = "src/widgets/SlotDefault.vue";
5009
5009
 
5010
- var script$T = {
5010
+ var script$U = {
5011
5011
  name: 'w-thead',
5012
- mixins: [script$1f, script$V],
5012
+ mixins: [script$1g, script$W],
5013
5013
  props: ['br', 'sort'],
5014
5014
  inject: ['_provideTable'],
5015
5015
  provide() {
@@ -5046,7 +5046,7 @@ var script$T = {
5046
5046
  return t
5047
5047
  });
5048
5048
  if (key) {
5049
- return h(script$U, {key}, {default: () => row})
5049
+ return h(script$V, {key}, {default: () => row})
5050
5050
  } else {
5051
5051
  return row
5052
5052
  }
@@ -5102,11 +5102,11 @@ var script$T = {
5102
5102
  }
5103
5103
  };
5104
5104
 
5105
- script$T.__file = "src/widgets/TableTHead.vue";
5105
+ script$U.__file = "src/widgets/TableTHead.vue";
5106
5106
 
5107
- var script$S = {
5107
+ var script$T = {
5108
5108
  name: 'w-tbody',
5109
- mixins: [script$T, script$1e],
5109
+ mixins: [script$U, script$1f],
5110
5110
  inject: ['_provideTable'],
5111
5111
  props: ['children'],
5112
5112
  provide() {
@@ -5174,12 +5174,12 @@ var script$S = {
5174
5174
  }
5175
5175
  };
5176
5176
 
5177
- script$S.__file = "src/widgets/TableTBody.vue";
5177
+ script$T.__file = "src/widgets/TableTBody.vue";
5178
5178
 
5179
- var script$R = {
5179
+ var script$S = {
5180
5180
  name: 'w-tr',
5181
5181
  pubParentName: 'w-tbody,w-thead',
5182
- mixins: [script$1f, script$1l],
5182
+ mixins: [script$1g, script$1m],
5183
5183
  props: ['rowIndex', 'expanded', 'children'],
5184
5184
  inject: ['_provideTable', 'providePubParent', 'provideInBody', '_provideTBody', 'provideLevel', 'provideParentTR'],
5185
5185
  provide() {
@@ -5263,7 +5263,7 @@ var script$R = {
5263
5263
  }
5264
5264
  }
5265
5265
  if (key) {
5266
- return h(script$U, {key}, {default: () => row})
5266
+ return h(script$V, {key}, {default: () => row})
5267
5267
  } else {
5268
5268
  return row
5269
5269
  }
@@ -5307,9 +5307,9 @@ var script$R = {
5307
5307
 
5308
5308
  };
5309
5309
 
5310
- script$R.__file = "src/widgets/TableTR.vue";
5310
+ script$S.__file = "src/widgets/TableTR.vue";
5311
5311
 
5312
- var script$Q = {
5312
+ var script$R = {
5313
5313
  name: 'w-td',
5314
5314
  props: ['colspan', 'rowspan', 'align', 'valign', 'data'],
5315
5315
  inject: ['_provideTable', 'provideInBody'],
@@ -5346,11 +5346,11 @@ var script$Q = {
5346
5346
  }
5347
5347
  };
5348
5348
 
5349
- script$Q.__file = "src/widgets/TableTD.vue";
5349
+ script$R.__file = "src/widgets/TableTD.vue";
5350
5350
 
5351
- var script$P = {
5351
+ var script$Q = {
5352
5352
  name: 'w-th',
5353
- mixins: [script$Q, script$1f],
5353
+ mixins: [script$R, script$1g],
5354
5354
  props: ['sortable', 'sortOrders', 'sortOrderDefault'],
5355
5355
  inject: ['_provideThead'],
5356
5356
  emits: ['click:sort'],
@@ -5385,7 +5385,7 @@ var script$P = {
5385
5385
  this.$emit('click:sort', e, o);
5386
5386
  },
5387
5387
  html_slots() {
5388
- return h(script$1c, {class: 'w-th-wrap', valign: 'middle', align: this.align || this.col.align}, {default: () => [
5388
+ return h(script$1d, {class: 'w-th-wrap', valign: 'middle', align: this.align || this.col.align}, {default: () => [
5389
5389
  h('div', {class: 'w-th-title'}, this.$slots),
5390
5390
  this.x.sortable ? h('div', {class: 'w-th-sort f-flex-column f-flex-center f-oh'}, [
5391
5391
  h('i', {class: 'f-i f-i-caret-up f-oh w-th-sort-up', onClick: e => this.clickSort(e, 'asc')}),
@@ -5410,11 +5410,426 @@ var script$P = {
5410
5410
  }
5411
5411
  };
5412
5412
 
5413
- script$P.__file = "src/widgets/TableTH.vue";
5413
+ script$Q.__file = "src/widgets/TableTH.vue";
5414
+
5415
+ var script$P = {
5416
+ mixins: [script$1c],
5417
+ emits: ['scroll'],
5418
+ methods: {
5419
+ onScroll(e) {
5420
+ this.$emit('scroll', e);
5421
+ },
5422
+ }
5423
+ };
5424
+
5425
+ script$P.__file = "src/widgets/TreeV2Wrap.vue";
5426
+
5427
+ const _hoisted_1$6 = { class: "'w-table-v2-th-text f-line-1" };
5428
+ const _hoisted_2$6 = { class: "w-tree-loading w-table-v2-loading" };
5429
+ const _hoisted_3$4 = ["onClick"];
5430
+ const _hoisted_4$3 = ["onClick"];
5431
+ const _hoisted_5$2 = ["title"];
5432
+ const _hoisted_6$2 = { class: "'w-table-v2-td-text f-line-1" };
5433
+
5434
+
5435
+ const __default__$1 = {
5436
+ name: 'w-table-v2'
5437
+ };
5438
+
5439
+ var script$O = /*#__PURE__*/Object.assign(__default__$1, {
5440
+ props: {
5441
+ alias: {
5442
+ type: Object,
5443
+ default() {
5444
+ return {}
5445
+ }
5446
+ },
5447
+ children: {
5448
+ type: Array,
5449
+ default() {
5450
+ return []
5451
+ }
5452
+ },
5453
+ current: {
5454
+ type: [String, Number]
5455
+ },
5456
+ itemHeight: {
5457
+ type: [String, Number],
5458
+ default: 43
5459
+ },
5460
+ src: {
5461
+ type: Function
5462
+ },
5463
+ columns: {
5464
+ type: Array,
5465
+ default() {
5466
+ return []
5467
+ }
5468
+ },
5469
+ loading: {
5470
+ type: Boolean
5471
+ }
5472
+ },
5473
+ emits: ['click:item'],
5474
+ setup(__props, { expose, emit: emits }) {
5414
5475
 
5415
- var script$O = {
5476
+ const props = __props;
5477
+
5478
+
5479
+
5480
+
5481
+
5482
+ let {alias, itemHeight, current} = props;
5483
+
5484
+ const propValue = alias.value || 'id';
5485
+ alias.text || 'text';
5486
+ const propChildren = alias.children || 'children';
5487
+
5488
+ const leafSymbol = Symbol('leaf');
5489
+ const showCount = ref(0);
5490
+ const scrollTop = ref(0);
5491
+ const flatList = ref([]);
5492
+ const root = ref();
5493
+ const wrap = ref();
5494
+ const flow = ref();
5495
+ const xLoading = ref(false);
5496
+ const loading = computed(() => props.loading || xLoading.value);
5497
+
5498
+ const wrapStyle = computed(() => {
5499
+ return {
5500
+ height: `${flatList.value.length * itemHeight}px`
5501
+ }
5502
+ });
5503
+
5504
+ const tdStyle = (col, index) => {
5505
+ const s = {};
5506
+ if (!col.width || col.width == '*') {
5507
+ s.flex = 1;
5508
+ } else {
5509
+ s.width = $$1.unitSize(col.width);
5510
+ }
5511
+ if (col.minWidth) s.minWidth = $$1.unitSize(col.minWidth);
5512
+ return s
5513
+ };
5514
+
5515
+ const itemStyle = (item) => {
5516
+ return {
5517
+ top: `${item[leafSymbol].showIndex * itemHeight}px`,
5518
+ paddingLeft: `${item[leafSymbol].level * 16}px`
5519
+ }
5520
+ };
5521
+
5522
+ const itemIcon = (item) => {
5523
+ return isFolder(item) ? (item.expanded ? item.expandedIcon : item.collapsedIcon) : item.icon
5524
+ };
5525
+
5526
+ const isItemLoading = (item) => {
5527
+ return item[leafSymbol].loading
5528
+ };
5529
+
5530
+ const isFolder = (item) => {
5531
+ return (item[propChildren] && item[propChildren].length) || (item[leafSymbol].src && !item[leafSymbol].loaded)
5532
+ };
5533
+
5534
+ const isCurrent = (item) => {
5535
+ return props.current === item[propValue]
5536
+ };
5537
+
5538
+ const clickItem = (e, item) => {
5539
+ emits('click:item', e, item);
5540
+ };
5541
+
5542
+ const clickToggle = (e, item) => {
5543
+ e.stopPropagation();
5544
+ toggle(item);
5545
+ };
5546
+
5547
+ const toggle = async (item, expanded) => {
5548
+ if (typeof item === 'string') {
5549
+ item = find(item);
5550
+ }
5551
+ if (!item) return
5552
+ const leaf = item[leafSymbol];
5553
+ if (leaf.loading) return
5554
+ item.expanded = expanded != null ? expanded : !item.expanded;
5555
+ if (item.expanded) {
5556
+ if (item[propChildren]) {
5557
+ const i = flatList.value.indexOf(item);
5558
+ const cs = toFlat(item[propChildren], item);
5559
+ const prev = flatList.value.slice(0, i + 1);
5560
+ const next = flatList.value.slice(i + 1);
5561
+ flatList.value = prev.concat(cs, next);
5562
+ } else if (leaf.src && !leaf.loaded) {
5563
+ leaf.loading = true;
5564
+ await leaf.src().catch(() => {});
5565
+ leaf.loading = false;
5566
+ leaf.loaded = true;
5567
+ toggle(item, item.expanded);
5568
+ }
5569
+ } else {
5570
+ const i = flatList.value.indexOf(item);
5571
+ const count = desCount(item[propChildren]);
5572
+ const prev = flatList.value.slice(0, i + 1);
5573
+ const next = flatList.value.slice(i + 1 + count);
5574
+ flatList.value = prev.concat(next);
5575
+ }
5576
+ };
5577
+
5578
+ const onScroll = (e) => {
5579
+ if (scrollTop.value !== e.target.scrollTop)
5580
+ scrollTop.value = e.target.scrollTop;
5581
+ };
5582
+
5583
+ // 树形数据扁平化
5584
+ const toFlat = (children, parent) => {
5585
+ let r = [];
5586
+ if (children) {
5587
+ children.forEach(item => {
5588
+ r.push(item);
5589
+ const leaf = item[leafSymbol];
5590
+ if (!leaf) {
5591
+ item[leafSymbol] = {level: parent ? parent[leafSymbol].level + 1 : 0, parent, src: props.src && props.src(item)};
5592
+ }
5593
+ if (item[propChildren] && item[propChildren].length) {
5594
+ if (item.expanded) {
5595
+ r = r.concat(toFlat(item[propChildren], item));
5596
+ } else if (!leaf) { // 没有leaf的话也要做初始化
5597
+ toFlat(item[propChildren], item);
5598
+ }
5599
+ } else if (item.expanded && item[leafSymbol].src) {
5600
+ nextTick(() => toggle(item, true));
5601
+ }
5602
+ });
5603
+ }
5604
+ return r
5605
+ };
5606
+
5607
+ const desCount = (children) => {
5608
+ let count = 0;
5609
+ for (let item of children) {
5610
+ count ++;
5611
+ if (item[propChildren] && item.expanded) {
5612
+ count += desCount(item[propChildren]);
5613
+ }
5614
+ }
5615
+ return count
5616
+ };
5617
+
5618
+ const find = (id, children) => {
5619
+ if (!children) children = props.children;
5620
+ for (let item of children) {
5621
+ if (item[propValue] === id) return item
5622
+ if (item[propChildren] && item[propChildren].length) {
5623
+ const r = find(id, item[propChildren]);
5624
+ if (r) return r
5625
+ }
5626
+ }
5627
+ };
5628
+
5629
+ // 展开到指定ID的数据
5630
+ const expandTo = (id) => {
5631
+ const item = find(id);
5632
+ if (item) {
5633
+ let p = item;
5634
+ let a = p;
5635
+ while (p = p[leafSymbol].parent) {
5636
+ if (!p.expanded) {
5637
+ p.expanded = true;
5638
+ a = p;
5639
+ }
5640
+ }
5641
+ a && a != item && toggle(a, true);
5642
+ }
5643
+ return item
5644
+ };
5645
+
5646
+ const merge = (newList, oldList) => {
5647
+ if (!Array.isArray(newList)) return
5648
+ const item = newList.find(n => n[propChildren] && n[propChildren].length);
5649
+ if (item) {
5650
+ if (!oldList) oldList = props.children;
5651
+ const old = oldList.find(n => n[propValue] == item[propValue]);
5652
+ if (old) {
5653
+ if (old[propChildren] && old[propChildren].length) {
5654
+ merge(item[propChildren], old[propChildren]);
5655
+ } else {
5656
+ old[propChildren] = item[propChildren];
5657
+ toFlat(old[propChildren], old);
5658
+ }
5659
+ }
5660
+ }
5661
+ };
5662
+
5663
+ // 界面可见的数据
5664
+ const showList = computed(() => {
5665
+ const topCount = Math.floor(scrollTop.value / itemHeight);
5666
+ const r = flatList.value.slice(topCount, topCount + showCount.value).map((item, index) => {
5667
+ item[leafSymbol].showIndex = index + topCount;
5668
+ return item
5669
+ });
5670
+ return r
5671
+ });
5672
+
5673
+ const initShowCount = () => {
5674
+ flow.value = wrap.value.$refs.wScrollOverflow.getBoundingClientRect();
5675
+ showCount.value = Math.ceil(flow.value.height / itemHeight) + 1;
5676
+ };
5677
+
5678
+ const watchCurrent = async (val) => {
5679
+ await nextTick();
5680
+ current = val;
5681
+ if (!showList.value.find(n => n[propValue] === val)) {
5682
+ const item = expandTo(val);
5683
+ const i = flatList.value.indexOf(item);
5684
+ if (i > -1) {
5685
+ await nextTick();
5686
+ wrap.value.scrollToY(((i + 1) * itemHeight) - (flow.value.height / 2));
5687
+ }
5688
+ }
5689
+ };
5690
+
5691
+ onMounted(async () => {
5692
+ watch(() => wrap.value.wScrollSizeY, (ssy) => {
5693
+ initShowCount();
5694
+ }, {immediate: true});
5695
+ watch(() => props.children, async (children) => {
5696
+ flatList.value = toFlat(children);
5697
+ if (current && current == props.current) { // 此判断避免重复聚焦
5698
+ watchCurrent(props.current);
5699
+ }
5700
+ }, {immediate: true});
5701
+ watch(() => props.current, watchCurrent);
5702
+ const src = props.src && props.src();
5703
+ if (src) {
5704
+ xLoading.value = true;
5705
+ await src();
5706
+ xLoading.value = false;
5707
+ }
5708
+ });
5709
+
5710
+ expose({toggle, expandTo, find, merge});
5711
+
5712
+
5713
+ return (_ctx, _cache) => {
5714
+ const _component_w_horizontal = resolveComponent("w-horizontal");
5715
+ const _component_w_img = resolveComponent("w-img");
5716
+ const _component_w_vertical = resolveComponent("w-vertical");
5717
+
5718
+ return (openBlock(), createBlock(_component_w_vertical, {
5719
+ ref_key: "root",
5720
+ ref: root,
5721
+ class: "w-table-v2"
5722
+ }, {
5723
+ default: withCtx(() => [
5724
+ createVNode(_component_w_horizontal, { class: "w-table-v2-thead" }, {
5725
+ default: withCtx(() => [
5726
+ (openBlock(true), createElementBlock(Fragment, null, renderList(__props.columns, (col, index) => {
5727
+ return (openBlock(), createElementBlock("div", {
5728
+ class: normalizeClass(['w-table-v2-th', {[`z-align-${col.align}`]: col.align}]),
5729
+ style: normalizeStyle(tdStyle(col)),
5730
+ key: index
5731
+ }, [
5732
+ createElementVNode("div", _hoisted_1$6, toDisplayString(col.text), 1 /* TEXT */)
5733
+ ], 6 /* CLASS, STYLE */))
5734
+ }), 128 /* KEYED_FRAGMENT */))
5735
+ ]),
5736
+ _: 1 /* STABLE */
5737
+ }),
5738
+ createVNode(script$P, {
5739
+ ref_key: "wrap",
5740
+ ref: wrap,
5741
+ height: "*",
5742
+ class: "w-table-v2-tbody",
5743
+ "scroll-y": true,
5744
+ onScroll: onScroll
5745
+ }, {
5746
+ default: withCtx(() => [
5747
+ (unref(loading))
5748
+ ? renderSlot(_ctx.$slots, "loading", { key: 0 }, () => [
5749
+ createElementVNode("div", _hoisted_2$6, [
5750
+ createVNode(_component_w_img, {
5751
+ src: "#f-svg-loading-1",
5752
+ width: "28",
5753
+ height: "28"
5754
+ })
5755
+ ])
5756
+ ])
5757
+ : (openBlock(), createElementBlock("div", {
5758
+ key: 1,
5759
+ class: "w-table-v2-wrap",
5760
+ style: normalizeStyle(unref(wrapStyle))
5761
+ }, [
5762
+ (openBlock(true), createElementBlock(Fragment, null, renderList(unref(showList), (item, index) => {
5763
+ return (openBlock(), createElementBlock("div", {
5764
+ key: index,
5765
+ class: normalizeClass(['w-table-v2-tr', {'z-on': isCurrent(item)}]),
5766
+ style: normalizeStyle(itemStyle(item)),
5767
+ onClick: $event => (clickItem($event, item))
5768
+ }, [
5769
+ (openBlock(true), createElementBlock(Fragment, null, renderList(__props.columns, (col, j) => {
5770
+ return (openBlock(), createElementBlock("div", {
5771
+ key: j,
5772
+ class: normalizeClass(['w-table-v2-td', {[`z-align-${col.align}`]: col.align}]),
5773
+ style: normalizeStyle(tdStyle(col))
5774
+ }, [
5775
+ (col.type=='leaf')
5776
+ ? (openBlock(), createElementBlock("div", {
5777
+ key: 0,
5778
+ class: normalizeClass(['w-leaf w-leaf-v2', {'z-folder': isFolder(item)}])
5779
+ }, [
5780
+ (isItemLoading(item))
5781
+ ? (openBlock(), createBlock(_component_w_img, {
5782
+ key: 0,
5783
+ src: "#f-svg-loading",
5784
+ class: "w-leaf-loading"
5785
+ }))
5786
+ : (openBlock(), createElementBlock("div", {
5787
+ key: 1,
5788
+ class: normalizeClass(['w-leaf-toggle f-i', item.expanded ? 'f-i-caret-down' : 'f-i-caret-right']),
5789
+ onClick: $event => (clickToggle($event, item))
5790
+ }, null, 10 /* CLASS, PROPS */, _hoisted_4$3)),
5791
+ (itemIcon(item))
5792
+ ? (openBlock(), createBlock(_component_w_img, {
5793
+ key: 2,
5794
+ src: itemIcon(item),
5795
+ class: "w-leaf-icon"
5796
+ }, null, 8 /* PROPS */, ["src"]))
5797
+ : createCommentVNode("v-if", true),
5798
+ createElementVNode("div", {
5799
+ class: "w-leaf-text f-line-1",
5800
+ title: item[col.field]
5801
+ }, toDisplayString(item[col.field]), 9 /* TEXT, PROPS */, _hoisted_5$2)
5802
+ ], 2 /* CLASS */))
5803
+ : renderSlot(_ctx.$slots, col.field, {
5804
+ key: 1,
5805
+ item: item,
5806
+ rowIndex: index,
5807
+ column: col,
5808
+ colIndex: j
5809
+ }, () => [
5810
+ createElementVNode("div", _hoisted_6$2, toDisplayString(item[col.field]), 1 /* TEXT */)
5811
+ ])
5812
+ ], 6 /* CLASS, STYLE */))
5813
+ }), 128 /* KEYED_FRAGMENT */))
5814
+ ], 14 /* CLASS, STYLE, PROPS */, _hoisted_3$4))
5815
+ }), 128 /* KEYED_FRAGMENT */))
5816
+ ], 4 /* STYLE */))
5817
+ ]),
5818
+ _: 3 /* FORWARDED */
5819
+ }, 512 /* NEED_PATCH */)
5820
+ ]),
5821
+ _: 3 /* FORWARDED */
5822
+ }, 512 /* NEED_PATCH */))
5823
+ }
5824
+ }
5825
+
5826
+ });
5827
+
5828
+ script$O.__file = "src/widgets/TableV2.vue";
5829
+
5830
+ var script$N = {
5416
5831
  name: 'w-grid',
5417
- mixins: [script$1e],
5832
+ mixins: [script$1f],
5418
5833
  props: ['columns', 'rows', 'gap', 'defaultColspan', 'face', 'labelWidth'],
5419
5834
  methods: {
5420
5835
  x_default() {
@@ -5456,13 +5871,13 @@ var script$O = {
5456
5871
  }
5457
5872
  };
5458
5873
 
5459
- script$O.__file = "src/widgets/Grid.vue";
5874
+ script$N.__file = "src/widgets/Grid.vue";
5460
5875
 
5461
- var script$N = {
5876
+ var script$M = {
5462
5877
  name: 'w-swiper-item',
5463
5878
  pubParentName: 'w-swiper',
5464
5879
  inject: ['providePubParent'],
5465
- mixins: [script$1f],
5880
+ mixins: [script$1g],
5466
5881
  props: ['lazy'],
5467
5882
  data() {
5468
5883
  return {
@@ -5495,11 +5910,11 @@ var script$N = {
5495
5910
  }
5496
5911
  };
5497
5912
 
5498
- script$N.__file = "src/widgets/SwiperItem.vue";
5913
+ script$M.__file = "src/widgets/SwiperItem.vue";
5499
5914
 
5500
- var script$M = {
5915
+ var script$L = {
5501
5916
  name: 'w-swiper',
5502
- mixins: [script$1f, script$V],
5917
+ mixins: [script$1g, script$W],
5503
5918
  props: ['arrow', 'indicatorDots', 'duration'],
5504
5919
  data() {
5505
5920
  return {
@@ -5584,11 +5999,11 @@ var script$M = {
5584
5999
  }
5585
6000
  };
5586
6001
 
5587
- script$M.__file = "src/widgets/Swiper.vue";
6002
+ script$L.__file = "src/widgets/Swiper.vue";
5588
6003
 
5589
- var script$L = {
6004
+ var script$K = {
5590
6005
  name: 'w-buttonbar',
5591
- mixins: [script$1c, script$V],
6006
+ mixins: [script$1d, script$W],
5592
6007
  props: ['vertical'],
5593
6008
  emits: ['click:item'],
5594
6009
  methods: {
@@ -5620,11 +6035,11 @@ var script$L = {
5620
6035
  }
5621
6036
  };
5622
6037
 
5623
- script$L.__file = "src/widgets/ButtonBar.vue";
6038
+ script$K.__file = "src/widgets/ButtonBar.vue";
5624
6039
 
5625
- var script$K = {
6040
+ var script$J = {
5626
6041
  name: 'w-tabbar',
5627
- mixins: [script$L],
6042
+ mixins: [script$K],
5628
6043
  props: ['vertical', 'arrow', 'quickCloseButton', 'flexSize', 'buttons'],
5629
6044
  emits: ['click:item', 'click:quickCloseButton'],
5630
6045
  data() {
@@ -5701,7 +6116,7 @@ var script$K = {
5701
6116
  },
5702
6117
  html_slots() {
5703
6118
  let group = h(TransitionGroup, {name: 'w-tabbar', onBeforeEnter: this.onBeforeEnter, onAfterEnter: this.onAfterEnter, onBeforeLeave: this.onBeforeLeave, onAfterLeave: this.onAfterLeave}, {default: () => this.buttons});
5704
- let gut = [h(this.x.vertical ? script$1b : script$1c, {ref: 'gut', class: 'w-tabbar-gut', gap: this.x.gap, align: this.x.align, valign: this.x.valign}, {default: () => group})];
6119
+ let gut = [h(this.x.vertical ? script$1c : script$1d, {ref: 'gut', class: 'w-tabbar-gut', gap: this.x.gap, align: this.x.align, valign: this.x.valign}, {default: () => group})];
5705
6120
  if (this.x.arrow) {
5706
6121
  gut.unshift(h('div', {class: 'w-tabbar-arrow-start', onClick: () => this.clickArrow(-1)}, h('i', {class: 'f-i f-i-caret-left'})));
5707
6122
  gut.push(h('div', {class: 'w-tabbar-arrow-end', onClick: () => this.clickArrow(1)}, h('i', {class: 'f-i f-i-caret-right'})));
@@ -5709,7 +6124,7 @@ var script$K = {
5709
6124
  if (this.x.quickCloseButton) {
5710
6125
  let closeAllDisabled = !this.buttons.find(c => c.props.closable);
5711
6126
  if (this.buttons.length) {
5712
- gut.push(h(script$$, {
6127
+ gut.push(h(script$10, {
5713
6128
  ref: 'quickCloseButton',
5714
6129
  data: {isQuickCloseButton: true},
5715
6130
  showDropIcon: false,
@@ -5718,7 +6133,7 @@ var script$K = {
5718
6133
  onDropClose: this.onMouseleave
5719
6134
  }, {
5720
6135
  default: () => [
5721
- h(script$$, {text: '关闭全部标签', onClick: this.closeAll, disabled: closeAllDisabled})
6136
+ h(script$10, {text: '关闭全部标签', onClick: this.closeAll, disabled: closeAllDisabled})
5722
6137
  ]
5723
6138
  }));
5724
6139
  }
@@ -5820,12 +6235,12 @@ var script$K = {
5820
6235
  }
5821
6236
  };
5822
6237
 
5823
- script$K.__file = "src/widgets/TabBar.vue";
6238
+ script$J.__file = "src/widgets/TabBar.vue";
5824
6239
 
5825
- var script$J = {
6240
+ var script$I = {
5826
6241
  name: 'w-tabbutton',
5827
6242
  pubParentName: 'w-tabbar',
5828
- mixins: [script$$],
6243
+ mixins: [script$10],
5829
6244
  methods: {
5830
6245
  vis() {
5831
6246
  let add = [20, 20];
@@ -5845,11 +6260,11 @@ var script$J = {
5845
6260
  }
5846
6261
  };
5847
6262
 
5848
- script$J.__file = "src/widgets/TabButton.vue";
6263
+ script$I.__file = "src/widgets/TabButton.vue";
5849
6264
 
5850
- var script$I = {
6265
+ var script$H = {
5851
6266
  name: 'w-tabs',
5852
- mixins: [script$1f],
6267
+ mixins: [script$1g],
5853
6268
  props: ['current', 'position', 'gap', 'face', 'quickCloseButton', 'flexSize'],
5854
6269
  emits: ['click:quickCloseButton'],
5855
6270
  methods: {
@@ -5877,11 +6292,11 @@ var script$I = {
5877
6292
  if (!v.props || v.props.key == null) {
5878
6293
  $$1.lodash.set(v, 'props.key', i);
5879
6294
  }
5880
- buttons.push(h(script$J, v.props));
5881
- pages.push(h(script$N, {lazy: v.props.lazy == null ? true : v.props.lazy, key: v.props.key}, v.children));
6295
+ buttons.push(h(script$I, v.props));
6296
+ pages.push(h(script$M, {lazy: v.props.lazy == null ? true : v.props.lazy, key: v.props.key}, v.children));
5882
6297
  });
5883
6298
  return [
5884
- h(script$K, {
6299
+ h(script$J, {
5885
6300
  ref: 'tabBar',
5886
6301
  class: 'w-tabs-buttonbar',
5887
6302
  current: this.x.current,
@@ -5894,7 +6309,7 @@ var script$I = {
5894
6309
  'onClick:quickCloseButton': this.clickQuickCloseButton,
5895
6310
  buttons,
5896
6311
  }),
5897
- h(script$M, {class: 'w-tabs-swiper f-flex-1 f-oh', current: this.x.current}, {default: () => pages}),
6312
+ h(script$L, {class: 'w-tabs-swiper f-flex-1 f-oh', current: this.x.current}, {default: () => pages}),
5898
6313
  ]
5899
6314
  }
5900
6315
  },
@@ -5906,17 +6321,17 @@ var script$I = {
5906
6321
  }
5907
6322
  };
5908
6323
 
5909
- script$I.__file = "src/widgets/Tabs.vue";
6324
+ script$H.__file = "src/widgets/Tabs.vue";
5910
6325
 
5911
- var script$H = {
6326
+ var script$G = {
5912
6327
  name: 'w-tab',
5913
6328
  };
5914
6329
 
5915
- script$H.__file = "src/widgets/Tab.vue";
6330
+ script$G.__file = "src/widgets/Tab.vue";
5916
6331
 
5917
- var script$G = {
6332
+ var script$F = {
5918
6333
  name: 'w-album',
5919
- mixins: [script$1c, script$V],
6334
+ mixins: [script$1d, script$W],
5920
6335
  methods: {
5921
6336
  x_default() {
5922
6337
  return {
@@ -5933,11 +6348,11 @@ var script$G = {
5933
6348
  }
5934
6349
  };
5935
6350
 
5936
- script$G.__file = "src/widgets/Album.vue";
6351
+ script$F.__file = "src/widgets/Album.vue";
5937
6352
 
5938
- var script$F = {
6353
+ var script$E = {
5939
6354
  name: 'w-html',
5940
- mixins: [script$1f, script$1d],
6355
+ mixins: [script$1g, script$1e],
5941
6356
  props: ['line'],
5942
6357
  computed: {
5943
6358
  html_props() {
@@ -5956,11 +6371,11 @@ var script$F = {
5956
6371
  }
5957
6372
  };
5958
6373
 
5959
- script$F.__file = "src/widgets/Html.vue";
6374
+ script$E.__file = "src/widgets/Html.vue";
5960
6375
 
5961
- var script$E = {
6376
+ var script$D = {
5962
6377
  name: 'w-tree',
5963
- mixins: [script$1e, script$V, script$1l],
6378
+ mixins: [script$1f, script$W, script$1m],
5964
6379
  emits: ['click:item'],
5965
6380
  provide() {
5966
6381
  return {
@@ -5992,7 +6407,7 @@ var script$E = {
5992
6407
  const sl = this.slot('loading');
5993
6408
  r = sl && sl.length ? sl : h('div', {
5994
6409
  class: 'w-tree-loading'
5995
- }, h(script$12, {src: '#f-svg-loading-1', width: 30, height: 30}));
6410
+ }, h(script$13, {src: '#f-svg-loading-1', width: 28, height: 28}));
5996
6411
  } else {
5997
6412
  let chd = this.x.children;
5998
6413
  if (this.$slots.default) {
@@ -6006,7 +6421,7 @@ var script$E = {
6006
6421
  }
6007
6422
  }
6008
6423
  if (key) {
6009
- return h(script$U, {key}, {default: () => leaf})
6424
+ return h(script$V, {key}, {default: () => leaf})
6010
6425
  } else {
6011
6426
  return leaf
6012
6427
  }
@@ -6034,21 +6449,9 @@ var script$E = {
6034
6449
  }
6035
6450
  };
6036
6451
 
6037
- script$E.__file = "src/widgets/Tree.vue";
6452
+ script$D.__file = "src/widgets/Tree.vue";
6038
6453
 
6039
- var script$D = {
6040
- mixins: [script$1b],
6041
- emits: ['scroll'],
6042
- methods: {
6043
- onScroll(e) {
6044
- this.$emit('scroll', e);
6045
- },
6046
- }
6047
- };
6048
-
6049
- script$D.__file = "src/widgets/TreeV2Wrap.vue";
6050
-
6051
- const _hoisted_1$5 = { class: "w-tree-loading" };
6454
+ const _hoisted_1$5 = { class: "w-tree-loading w-tree-v2-loading" };
6052
6455
  const _hoisted_2$5 = ["onClick"];
6053
6456
  const _hoisted_3$3 = ["onClick"];
6054
6457
  const _hoisted_4$2 = ["title"];
@@ -6082,6 +6485,9 @@ var script$C = /*#__PURE__*/Object.assign(__default__, {
6082
6485
  src: {
6083
6486
  type: Function
6084
6487
  },
6488
+ loading: {
6489
+ type: Boolean
6490
+ }
6085
6491
  },
6086
6492
  emits: ['click:item'],
6087
6493
  setup(__props, { expose, emit: emits }) {
@@ -6104,7 +6510,8 @@ const props = __props;
6104
6510
  const flatList = ref([]);
6105
6511
  const root = ref();
6106
6512
  const flow = ref();
6107
- const loading = ref(false);
6513
+ const xLoading = ref(false);
6514
+ const loading = computed(() => props.loading || xLoading.value);
6108
6515
 
6109
6516
  const wrapStyle = computed(() => {
6110
6517
  return {
@@ -6238,7 +6645,7 @@ const props = __props;
6238
6645
  a = p;
6239
6646
  }
6240
6647
  }
6241
- a && toggle(a, true);
6648
+ a && a != item && toggle(a, true);
6242
6649
  }
6243
6650
  return item
6244
6651
  };
@@ -6272,7 +6679,7 @@ const props = __props;
6272
6679
 
6273
6680
  const initShowCount = () => {
6274
6681
  flow.value = root.value.$refs.wScrollOverflow.getBoundingClientRect();
6275
- showCount.value = Math.ceil(flow.value.height / itemHeight);
6682
+ showCount.value = Math.ceil(flow.value.height / itemHeight) + 1;
6276
6683
  };
6277
6684
 
6278
6685
  const watchCurrent = async (val) => {
@@ -6313,7 +6720,7 @@ const props = __props;
6313
6720
  return (_ctx, _cache) => {
6314
6721
  const _component_w_img = resolveComponent("w-img");
6315
6722
 
6316
- return (openBlock(), createBlock(script$D, {
6723
+ return (openBlock(), createBlock(script$P, {
6317
6724
  ref_key: "root",
6318
6725
  ref: root,
6319
6726
  class: "w-tree w-tree-v2",
@@ -6321,13 +6728,13 @@ return (_ctx, _cache) => {
6321
6728
  onScroll: onScroll
6322
6729
  }, {
6323
6730
  default: withCtx(() => [
6324
- (loading.value)
6731
+ (unref(loading))
6325
6732
  ? renderSlot(_ctx.$slots, "loading", { key: 0 }, () => [
6326
6733
  createElementVNode("div", _hoisted_1$5, [
6327
6734
  createVNode(_component_w_img, {
6328
6735
  src: "#f-svg-loading-1",
6329
- width: "30",
6330
- height: "30"
6736
+ width: "28",
6737
+ height: "28"
6331
6738
  })
6332
6739
  ])
6333
6740
  ])
@@ -6364,7 +6771,14 @@ return (_ctx, _cache) => {
6364
6771
  createElementVNode("div", {
6365
6772
  class: "w-leaf-text f-line-1",
6366
6773
  title: item[unref(propText)]
6367
- }, toDisplayString(item[unref(propText)]), 9 /* TEXT, PROPS */, _hoisted_4$2)
6774
+ }, [
6775
+ renderSlot(_ctx.$slots, "text", {
6776
+ item: item,
6777
+ index: index
6778
+ }, () => [
6779
+ createTextVNode(toDisplayString(item[unref(propText)]), 1 /* TEXT */)
6780
+ ])
6781
+ ], 8 /* PROPS */, _hoisted_4$2)
6368
6782
  ], 14 /* CLASS, STYLE, PROPS */, _hoisted_2$5))
6369
6783
  }), 128 /* KEYED_FRAGMENT */))
6370
6784
  ], 4 /* STYLE */))
@@ -6380,7 +6794,7 @@ script$C.__file = "src/widgets/TreeV2.vue";
6380
6794
 
6381
6795
  var script$B = {
6382
6796
  name: 'w-label',
6383
- mixins: [script$1f, script$1d],
6797
+ mixins: [script$1g, script$1e],
6384
6798
  props: ['text', 'suffix', 'vertical'],
6385
6799
  methods: {
6386
6800
  html_slots() {
@@ -6405,7 +6819,7 @@ var script$B = {
6405
6819
  script$B.__file = "src/widgets/Label.vue";
6406
6820
 
6407
6821
  var script$A = {
6408
- mixins: [script$1f, script$1d],
6822
+ mixins: [script$1g, script$1e],
6409
6823
  props: ['name', 'value', 'modelValue', 'placeholder', 'label', 'readonly', 'readonlyValidate', 'disabled', 'required',
6410
6824
  'validateDefault', 'validateHandler', 'inputWidth', 'inputHeight' ],
6411
6825
  emits: ['update:modelValue', 'change', 'blur', 'focus'],
@@ -6678,8 +7092,11 @@ var script$A = {
6678
7092
  this.slot('append'),
6679
7093
  ]
6680
7094
  },
7095
+ html_slot_down() {
7096
+ return this.slot('down')
7097
+ },
6681
7098
  html_main() {
6682
- return h('div', {class: 'w-formbase-main'}, [this.html_form(), this.slot('down')])
7099
+ return h('div', {class: 'w-formbase-main'}, [this.html_form(), this.html_slot_down()])
6683
7100
  },
6684
7101
  html_form() {
6685
7102
  let fh = this.x.inputHeight && $$1.unitSize(this.x.inputHeight);
@@ -7002,7 +7419,7 @@ var script$z = {
7002
7419
  }, this.html_input())
7003
7420
  },
7004
7421
  html_target() {
7005
- return this.$slots.default ? h(script$1c, {
7422
+ return this.$slots.default ? h(script$1d, {
7006
7423
  class: this.$options.name + '-target',
7007
7424
  ref: 'target'
7008
7425
  }, this.$slots) : []
@@ -7178,7 +7595,7 @@ script$y.__file = "src/widgets/TripleBox.vue";
7178
7595
  var script$x = {
7179
7596
  name: 'w-leaf',
7180
7597
  pubParentName: 'w-tree',
7181
- mixins: [script$1f, script$1l],
7598
+ mixins: [script$1g, script$1m],
7182
7599
  props: ['text', 'expanded', 'expandedIcon', 'collapsedIcon', 'icon', 'boxSync', 'src', 'disabled'],
7183
7600
  inject: ['providePubParent', 'provideLevel', 'provideParentLeaf', 'provideParentTR'],
7184
7601
  provide() {
@@ -7278,7 +7695,7 @@ var script$x = {
7278
7695
  let ico = this.isFolder() ? (exp ? this.x.expandedIcon : this.x.collapsedIcon) : this.x.icon;
7279
7696
  return h('div', mergeProps(this.html_attrs, this.html_props, this.$attrs), [
7280
7697
  this.loading ?
7281
- h(script$12, {
7698
+ h(script$13, {
7282
7699
  src: '#f-svg-loading',
7283
7700
  class: 'w-leaf-loading'
7284
7701
  }) :
@@ -7290,7 +7707,7 @@ var script$x = {
7290
7707
  }
7291
7708
  }),
7292
7709
  this.$slots.box && this.$slots.box(),
7293
- ico && h(script$12, {
7710
+ ico && h(script$13, {
7294
7711
  src: ico,
7295
7712
  class: 'w-leaf-icon'
7296
7713
  }),
@@ -7314,7 +7731,7 @@ var script$x = {
7314
7731
  }
7315
7732
  }
7316
7733
  if (key) {
7317
- return h(script$U, {key}, {default: () => leaf})
7734
+ return h(script$V, {key}, {default: () => leaf})
7318
7735
  } else {
7319
7736
  return leaf
7320
7737
  }
@@ -7383,7 +7800,7 @@ script$x.__file = "src/widgets/Leaf.vue";
7383
7800
 
7384
7801
  var script$w = {
7385
7802
  name: 'w-pagebar',
7386
- mixins: [script$L],
7803
+ mixins: [script$K],
7387
7804
  emits: ['click:item'],
7388
7805
  props: ['limit', 'size', 'offset', 'buttonCount', 'noFirstLast', 'face', 'jump'],
7389
7806
  data() {
@@ -7435,13 +7852,13 @@ var script$w = {
7435
7852
  this.html_face_normal()
7436
7853
  },
7437
7854
  html_buttons() {
7438
- return [h(script$$, {
7855
+ return [h(script$10, {
7439
7856
  class: 'w-pagebar-button w-pagebar-prev',
7440
7857
  icon: '.f-i .f-i-angle-left',
7441
7858
  disabled: this.currentPage == 1,
7442
7859
  title: $$1.loc.page_text.prev,
7443
7860
  onclick: e => this.clickItem(e, this.currentPage - 1)
7444
- }), h(script$$, {
7861
+ }), h(script$10, {
7445
7862
  class: 'w-pagebar-button w-pagebar-next',
7446
7863
  icon: '.f-i .f-i-angle-right',
7447
7864
  disabled: this.currentPage == this.sumPage,
@@ -7452,7 +7869,7 @@ var script$w = {
7452
7869
  html_drop() {
7453
7870
  let s = [];
7454
7871
  if (this.x.buttonCount) {
7455
- s.push(h(script$$, {
7872
+ s.push(h(script$10, {
7456
7873
  class: 'w-pagebar-button w-pagebar-button-count w-pagebar-prev',
7457
7874
  ref: 'drop',
7458
7875
  text: this.currentPage + '/' + this.sumPage,
@@ -7461,8 +7878,8 @@ var script$w = {
7461
7878
  }
7462
7879
  if (this.showDrop) {
7463
7880
  let b = [];
7464
- for (let i = 1, sp = this.sumPage; i <= sp; i ++) b.push(h(script$$, {text: i, onClick: e => this.clickItem(e, i)}));
7465
- s.push(h(script$_, {snap: () => this.$refs.drop, position: 'v', indent: 1, onClose: () => this.showDrop = false}, {default: () => b}));
7881
+ for (let i = 1, sp = this.sumPage; i <= sp; i ++) b.push(h(script$10, {text: i, onClick: e => this.clickItem(e, i)}));
7882
+ s.push(h(script$$, {snap: () => this.$refs.drop, position: 'v', indent: 1, onClose: () => this.showDrop = false}, {default: () => b}));
7466
7883
  }
7467
7884
  return s
7468
7885
  },
@@ -7564,7 +7981,7 @@ script$w.__file = "src/widgets/PageBar.vue";
7564
7981
 
7565
7982
  var script$v = {
7566
7983
  name: 'w-split',
7567
- mixins: [script$1f],
7984
+ mixins: [script$1g],
7568
7985
  props: ['collapsedIcon', 'expandedIcon', 'movable', 'range', 'toNext', 'expanded'],
7569
7986
  inject: ['provideLayout'],
7570
7987
  created() {
@@ -7665,7 +8082,7 @@ script$v.__file = "src/widgets/Split.vue";
7665
8082
 
7666
8083
  var script$u = {
7667
8084
  name: 'w-toggle',
7668
- mixins: [script$1f, script$1d],
8085
+ mixins: [script$1g, script$1e],
7669
8086
  props: ['collapsedIcon', 'expandedIcon', 'expanded', 'align', 'valign'],
7670
8087
  methods: {
7671
8088
  x_default() {
@@ -7682,7 +8099,7 @@ var script$u = {
7682
8099
  html_slots() {
7683
8100
  let exp = this.x.expanded;
7684
8101
  let ico = exp ? this.x.expandedIcon : this.x.collapsedIcon;
7685
- return [ico && h(script$12, {
8102
+ return [ico && h(script$13, {
7686
8103
  src: ico,
7687
8104
  class: 'w-toggle-icon',
7688
8105
  }), h('div', {class: 'w-toggle-main'}, this.$slots.default())]
@@ -7713,7 +8130,7 @@ script$u.__file = "src/widgets/Toggle.vue";
7713
8130
 
7714
8131
  var script$t = {
7715
8132
  name: 'w-video',
7716
- mixins: [script$1f],
8133
+ mixins: [script$1g],
7717
8134
  props: ['src', 'poster'],
7718
8135
  data() {
7719
8136
  return {
@@ -7765,7 +8182,7 @@ script$t.__file = "src/widgets/Video.vue";
7765
8182
 
7766
8183
  var script$s = {
7767
8184
  name: 'w-progress',
7768
- mixins: [script$1f],
8185
+ mixins: [script$1g],
7769
8186
  props: ['percent', 'range', 'text'],
7770
8187
  methods: {
7771
8188
  html_slots() {
@@ -7810,7 +8227,7 @@ script$s.__file = "src/widgets/Progress.vue";
7810
8227
 
7811
8228
  var script$r = {
7812
8229
  name: 'w-calendar',
7813
- mixins: [script$1f],
8230
+ mixins: [script$1g],
7814
8231
  emits: ['click:item', 'change'],
7815
8232
  props: ['value', 'minValue', 'maxValue', 'current', 'pad', 'face', 'format', 'success', 'cg', 'start',
7816
8233
  'enableHour', 'enableMinute', 'enableSecond', 'defaultHour', 'defaultMinute', 'defaultSecond'
@@ -8556,7 +8973,7 @@ script$r.__file = "src/widgets/Calendar.vue";
8556
8973
 
8557
8974
  var script$q = {
8558
8975
  name: 'w-timeline',
8559
- mixins: [script$1e, script$V],
8976
+ mixins: [script$1f, script$W],
8560
8977
  props: ['face', 'vertical'],
8561
8978
  methods: {
8562
8979
  indent() {
@@ -8689,7 +9106,7 @@ script$q.__file = "src/widgets/Timeline.vue";
8689
9106
  var script$p = {
8690
9107
  name: 'w-timeline-item',
8691
9108
  pubParentName: 'w-timeline',
8692
- mixins: [script$1f],
9109
+ mixins: [script$1g],
8693
9110
  inject: ['providePubParent'],
8694
9111
  props: ['position', 'index'],
8695
9112
  methods: {
@@ -8726,7 +9143,7 @@ script$p.__file = "src/widgets/TimelineItem.vue";
8726
9143
 
8727
9144
  var script$o = {
8728
9145
  name: 'w-slidepicker',
8729
- mixins: [script$1f],
9146
+ mixins: [script$1g],
8730
9147
  provide() {
8731
9148
  return {
8732
9149
  provideOptionParent: this,
@@ -8981,7 +9398,7 @@ script$n.__file = "src/widgets/Hidden.vue";
8981
9398
  var script$m = {
8982
9399
  name: 'w-text',
8983
9400
  mixins: [script$A],
8984
- props: ['minLength', 'maxLength', 'pattern', 'clearable'],
9401
+ props: ['minLength', 'maxLength', 'pattern', 'clearable', 'showCount'],
8985
9402
  data() {
8986
9403
  return {
8987
9404
  hasBorder: true
@@ -9017,6 +9434,11 @@ var script$m = {
9017
9434
  }
9018
9435
  }
9019
9436
  },
9437
+ input_prop() {
9438
+ if (this.x.maxLength) {
9439
+ return {maxlength: this.x.maxLength}
9440
+ }
9441
+ },
9020
9442
  html_class() {
9021
9443
  return {
9022
9444
  'z-val': this.hasVal,
@@ -9035,6 +9457,23 @@ var script$l = {
9035
9457
  input_tag() {
9036
9458
  return 'textarea'
9037
9459
  }
9460
+ },
9461
+ methods: {
9462
+ html_slot_down() {
9463
+ const down = this.slot('down');
9464
+ if (this.x.showCount || (down && down.length)) {
9465
+ let counter = '';
9466
+ if (this.x.showCount && this.x.maxLength) {
9467
+ let v = this.x.modelValue || '';
9468
+ counter = `${v.length} / ${this.x.maxLength}`;
9469
+ }
9470
+ return h('div', {class: 'w-textarea-down'}, [
9471
+ h('div', {class: 'w-textarea-down-left'}, down),
9472
+ h('div', {class: 'w-textarea-down-right'}, counter)
9473
+ ])
9474
+ }
9475
+ return down
9476
+ },
9038
9477
  }
9039
9478
  };
9040
9479
 
@@ -9892,7 +10331,7 @@ const suffixHooks = {
9892
10331
  onclick: e => this.remove(item)
9893
10332
  })];
9894
10333
  if (value && this.$slots.menu) {
9895
- button.push(h(script$_, null, {
10334
+ button.push(h(script$$, null, {
9896
10335
  target: () => h('div', {
9897
10336
  class: 'w-fileupload-value-menu f-i f-i-ellipsis',
9898
10337
  title: $$1.loc.more,
@@ -9944,14 +10383,14 @@ const suffixHooks = {
9944
10383
  },
9945
10384
  html_input_button() {
9946
10385
  return h('div', {}, [
9947
- h(script$L, {
10386
+ h(script$K, {
9948
10387
  ref: 'uploadbbr',
9949
10388
  class: 'w-fileupload-bbr',
9950
10389
  gap: 10,
9951
10390
  }, {
9952
10391
  default: () => [
9953
10392
  this.$slots.button ? this.$slots.button(this) :
9954
- h(script$$, {
10393
+ h(script$10, {
9955
10394
  text: '选择文件',
9956
10395
  icon: '.f-i .f-i-upload',
9957
10396
  class: 'w-fileupload-button',
@@ -10240,12 +10679,12 @@ var script$e = {
10240
10679
  },
10241
10680
  html_input_button() {
10242
10681
  return h('div', {}, [
10243
- h(script$L, {
10682
+ h(script$K, {
10244
10683
  ref: 'uploadbbr',
10245
10684
  class: 'w-fileupload-bbr'
10246
10685
  }, {
10247
10686
  default: () => [
10248
- this.$slots.button ? this.$slots.button(this) : h(script$$, {
10687
+ this.$slots.button ? this.$slots.button(this) : h(script$10, {
10249
10688
  ref: 'uploadbutton',
10250
10689
  title: $$1.loc.form.choose_image,
10251
10690
  icon: '.f-i .f-i-plus',
@@ -10306,7 +10745,7 @@ script$d.__file = "src/widgets/ImageUpload.vue";
10306
10745
 
10307
10746
  var script$c = {
10308
10747
  name: 'w-option',
10309
- mixins: [script$1f],
10748
+ mixins: [script$1g],
10310
10749
  props: ['value', 'text', 'disabled'],
10311
10750
  inject: ['provideOptionParent'],
10312
10751
  methods: {
@@ -10716,7 +11155,7 @@ var script$a = {
10716
11155
  onClose: this.onclose
10717
11156
  };
10718
11157
  if (this.x.dropProps) dropProps = mergeProps(dropProps, this.x.dropProps);
10719
- r.push(h(script$19, dropProps, {
11158
+ r.push(h(script$1a, dropProps, {
10720
11159
  default: () => h(script$r, {
10721
11160
  height: '*',
10722
11161
  pad: true,
@@ -10876,7 +11315,7 @@ var script$9 = {
10876
11315
  onClose: () => this.showDrop = false
10877
11316
  };
10878
11317
  if (this.x.dropProps) dropProps = mergeProps(dropProps, this.x.dropProps);
10879
- r.push(h(script$19, dropProps, {default: () => h(script$1b, {height: '*', scrollY: true, scrollView: '.z-on'}, this.$slots)}));
11318
+ r.push(h(script$1a, dropProps, {default: () => h(script$1c, {height: '*', scrollY: true, scrollView: '.z-on'}, this.$slots)}));
10880
11319
  }
10881
11320
  return r
10882
11321
  },
@@ -11283,7 +11722,7 @@ var script$5 = {
11283
11722
  onClose: () => this.showSuggest = false
11284
11723
  };
11285
11724
  if (this.x.dropProps) dropProps = mergeProps(dropProps, this.x.dropProps);
11286
- r.push(h(script$19, dropProps, {default: () => h(script$1b, {height: '*', scrollY: true}, this.$slots)}));
11725
+ r.push(h(script$1a, dropProps, {default: () => h(script$1c, {height: '*', scrollY: true}, this.$slots)}));
11287
11726
  }
11288
11727
  return [
11289
11728
  this.html_input_hidden(),
@@ -11741,7 +12180,7 @@ var script$4 = {
11741
12180
  onClose: () => this.showSuggest = false
11742
12181
  };
11743
12182
  if (this.x.dropProps) dropProps = mergeProps(dropProps, this.x.dropProps);
11744
- r.push(h(script$19, dropProps, {default: () => h(script$1b, {height: '*', scrollY: true}, this.$slots)}));
12183
+ r.push(h(script$1a, dropProps, {default: () => h(script$1c, {height: '*', scrollY: true}, this.$slots)}));
11745
12184
  }
11746
12185
  return [
11747
12186
  this.html_input_hidden(),
@@ -12164,7 +12603,7 @@ var script = {
12164
12603
  this.x.modelValue = this.x.cancelable && this.x.modelValue == i ? '' : i;
12165
12604
  },
12166
12605
  html_star(i) {
12167
- return h(script$12, {
12606
+ return h(script$13, {
12168
12607
  class: ['w-rate-star-icon', {'z-hv': this.hoverWrap && i <= this.hoverIndex, 'z-on': !this.hoverWrap && i <= this.x.modelValue}],
12169
12608
  src: '.f-i .f-i-star-full',
12170
12609
  onMouseenter: e => this.hoverItem(e, i),
@@ -12208,9 +12647,9 @@ var script = {
12208
12647
  script.__file = "src/widgets/Rate.vue";
12209
12648
 
12210
12649
  const components = [
12211
- script$1g, script$1a, script$19, script$17, script$15, script$13, script$_, script$Z,
12212
- script$O, script$1b, script$1c, script$Y, script$X, script$W, script$S, script$T, script$R, script$Q, script$P, script$M, script$N, script$I, script$H,
12213
- script$G, script$12, script$L, script$$, script$10, script$F, script$E, script$x, script$C, script$w, script$v, script$u, script$t, script$s, script$r, script$q, script$p, script$o,
12650
+ script$1h, script$1b, script$1a, script$18, script$16, script$14, script$$, script$_,
12651
+ script$N, script$1c, script$1d, script$Z, script$Y, script$X, script$T, script$U, script$S, script$R, script$Q, script$O, script$L, script$M, script$H, script$G,
12652
+ script$F, script$13, script$K, script$10, script$11, script$E, script$D, script$x, script$C, script$w, script$v, script$u, script$t, script$s, script$r, script$q, script$p, script$o,
12214
12653
  script$B, script$n, script$m, script$l, script$k, script$z, script$j, script$i, script$y, script$h, script$g, script$e, script$d, script$c,
12215
12654
  script$b, script$a, script$9, script$8, script$7, script$6, script$5, script$4, script$2, script$1, script
12216
12655
  ];