dfish-widget 1.0.54 → 1.0.56

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,432 @@ 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
+ }
5519
+ };
5520
+
5521
+ const leafStyle = (item) => {
5522
+ return {
5523
+ paddingLeft: `${item[leafSymbol].level * 16}px`
5524
+ }
5525
+ };
5526
+
5527
+ const itemIcon = (item) => {
5528
+ return isFolder(item) ? (item.expanded ? item.expandedIcon : item.collapsedIcon) : item.icon
5529
+ };
5530
+
5531
+ const isItemLoading = (item) => {
5532
+ return item[leafSymbol].loading
5533
+ };
5534
+
5535
+ const isFolder = (item) => {
5536
+ return (item[propChildren] && item[propChildren].length) || (item[leafSymbol].src && !item[leafSymbol].loaded)
5537
+ };
5538
+
5539
+ const isCurrent = (item) => {
5540
+ return props.current === item[propValue]
5541
+ };
5542
+
5543
+ const clickItem = (e, item) => {
5544
+ emits('click:item', e, item);
5545
+ };
5546
+
5547
+ const clickToggle = (e, item) => {
5548
+ e.stopPropagation();
5549
+ toggle(item);
5550
+ };
5551
+
5552
+ const toggle = async (item, expanded) => {
5553
+ if (typeof item === 'string') {
5554
+ item = find(item);
5555
+ }
5556
+ if (!item) return
5557
+ const leaf = item[leafSymbol];
5558
+ if (leaf.loading) return
5559
+ item.expanded = expanded != null ? expanded : !item.expanded;
5560
+ if (item.expanded) {
5561
+ if (item[propChildren]) {
5562
+ const i = flatList.value.indexOf(item);
5563
+ const cs = toFlat(item[propChildren], item);
5564
+ const prev = flatList.value.slice(0, i + 1);
5565
+ const next = flatList.value.slice(i + 1);
5566
+ flatList.value = prev.concat(cs, next);
5567
+ } else if (leaf.src && !leaf.loaded) {
5568
+ leaf.loading = true;
5569
+ await leaf.src().catch(() => {});
5570
+ leaf.loading = false;
5571
+ leaf.loaded = true;
5572
+ toggle(item, item.expanded);
5573
+ }
5574
+ } else {
5575
+ const i = flatList.value.indexOf(item);
5576
+ const count = desCount(item[propChildren]);
5577
+ const prev = flatList.value.slice(0, i + 1);
5578
+ const next = flatList.value.slice(i + 1 + count);
5579
+ flatList.value = prev.concat(next);
5580
+ }
5581
+ };
5582
+
5583
+ const onScroll = (e) => {
5584
+ if (scrollTop.value !== e.target.scrollTop)
5585
+ scrollTop.value = e.target.scrollTop;
5586
+ };
5587
+
5588
+ // 树形数据扁平化
5589
+ const toFlat = (children, parent) => {
5590
+ let r = [];
5591
+ if (children) {
5592
+ children.forEach(item => {
5593
+ r.push(item);
5594
+ const leaf = item[leafSymbol];
5595
+ if (!leaf) {
5596
+ item[leafSymbol] = {level: parent ? parent[leafSymbol].level + 1 : 0, parent, src: props.src && props.src(item)};
5597
+ }
5598
+ if (item[propChildren] && item[propChildren].length) {
5599
+ if (item.expanded) {
5600
+ r = r.concat(toFlat(item[propChildren], item));
5601
+ } else if (!leaf) { // 没有leaf的话也要做初始化
5602
+ toFlat(item[propChildren], item);
5603
+ }
5604
+ } else if (item.expanded && item[leafSymbol].src) {
5605
+ nextTick(() => toggle(item, true));
5606
+ }
5607
+ });
5608
+ }
5609
+ return r
5610
+ };
5611
+
5612
+ const desCount = (children) => {
5613
+ let count = 0;
5614
+ for (let item of children) {
5615
+ count ++;
5616
+ if (item[propChildren] && item.expanded) {
5617
+ count += desCount(item[propChildren]);
5618
+ }
5619
+ }
5620
+ return count
5621
+ };
5622
+
5623
+ const find = (id, children) => {
5624
+ if (!children) children = props.children;
5625
+ for (let item of children) {
5626
+ if (item[propValue] === id) return item
5627
+ if (item[propChildren] && item[propChildren].length) {
5628
+ const r = find(id, item[propChildren]);
5629
+ if (r) return r
5630
+ }
5631
+ }
5632
+ };
5633
+
5634
+ // 展开到指定ID的数据
5635
+ const expandTo = (id) => {
5636
+ const item = find(id);
5637
+ if (item) {
5638
+ let p = item;
5639
+ let a = p;
5640
+ while (p = p[leafSymbol].parent) {
5641
+ if (!p.expanded) {
5642
+ p.expanded = true;
5643
+ a = p;
5644
+ }
5645
+ }
5646
+ a && a != item && toggle(a, true);
5647
+ }
5648
+ return item
5649
+ };
5650
+
5651
+ const merge = (newList, oldList) => {
5652
+ if (!Array.isArray(newList)) return
5653
+ const item = newList.find(n => n[propChildren] && n[propChildren].length);
5654
+ if (item) {
5655
+ if (!oldList) oldList = props.children;
5656
+ const old = oldList.find(n => n[propValue] == item[propValue]);
5657
+ if (old) {
5658
+ if (old[propChildren] && old[propChildren].length) {
5659
+ merge(item[propChildren], old[propChildren]);
5660
+ } else {
5661
+ old[propChildren] = item[propChildren];
5662
+ toFlat(old[propChildren], old);
5663
+ }
5664
+ }
5665
+ }
5666
+ };
5667
+
5668
+ // 界面可见的数据
5669
+ const showList = computed(() => {
5670
+ const topCount = Math.floor(scrollTop.value / itemHeight);
5671
+ const r = flatList.value.slice(topCount, topCount + showCount.value).map((item, index) => {
5672
+ item[leafSymbol].showIndex = index + topCount;
5673
+ return item
5674
+ });
5675
+ return r
5676
+ });
5677
+
5678
+ const initShowCount = () => {
5679
+ flow.value = wrap.value.$refs.wScrollOverflow.getBoundingClientRect();
5680
+ showCount.value = Math.ceil(flow.value.height / itemHeight) + 1;
5681
+ };
5682
+
5683
+ const watchCurrent = async (val) => {
5684
+ await nextTick();
5685
+ current = val;
5686
+ if (!showList.value.find(n => n[propValue] === val)) {
5687
+ const item = expandTo(val);
5688
+ const i = flatList.value.indexOf(item);
5689
+ if (i > -1) {
5690
+ await nextTick();
5691
+ wrap.value.scrollToY(((i + 1) * itemHeight) - (flow.value.height / 2));
5692
+ }
5693
+ }
5694
+ };
5695
+
5696
+ onMounted(async () => {
5697
+ watch(() => wrap.value.wScrollSizeY, (ssy) => {
5698
+ initShowCount();
5699
+ }, {immediate: true});
5700
+ watch(() => props.children, async (children) => {
5701
+ flatList.value = toFlat(children);
5702
+ if (current && current == props.current) { // 此判断避免重复聚焦
5703
+ watchCurrent(props.current);
5704
+ }
5705
+ }, {immediate: true});
5706
+ watch(() => props.current, watchCurrent);
5707
+ const src = props.src && props.src();
5708
+ if (src) {
5709
+ xLoading.value = true;
5710
+ await src();
5711
+ xLoading.value = false;
5712
+ }
5713
+ });
5714
+
5715
+ expose({toggle, expandTo, find, merge});
5716
+
5717
+
5718
+ return (_ctx, _cache) => {
5719
+ const _component_w_horizontal = resolveComponent("w-horizontal");
5720
+ const _component_w_img = resolveComponent("w-img");
5721
+ const _component_w_vertical = resolveComponent("w-vertical");
5722
+
5723
+ return (openBlock(), createBlock(_component_w_vertical, {
5724
+ ref_key: "root",
5725
+ ref: root,
5726
+ class: "w-table-v2"
5727
+ }, {
5728
+ default: withCtx(() => [
5729
+ createVNode(_component_w_horizontal, { class: "w-table-v2-thead" }, {
5730
+ default: withCtx(() => [
5731
+ (openBlock(true), createElementBlock(Fragment, null, renderList(__props.columns, (col, index) => {
5732
+ return (openBlock(), createElementBlock("div", {
5733
+ class: normalizeClass(['w-table-v2-th', {[`z-align-${col.align}`]: col.align}]),
5734
+ style: normalizeStyle(tdStyle(col)),
5735
+ key: index
5736
+ }, [
5737
+ createElementVNode("div", _hoisted_1$6, toDisplayString(col.text), 1 /* TEXT */)
5738
+ ], 6 /* CLASS, STYLE */))
5739
+ }), 128 /* KEYED_FRAGMENT */))
5740
+ ]),
5741
+ _: 1 /* STABLE */
5742
+ }),
5743
+ createVNode(script$P, {
5744
+ ref_key: "wrap",
5745
+ ref: wrap,
5746
+ height: "*",
5747
+ class: "w-table-v2-tbody",
5748
+ "scroll-y": true,
5749
+ onScroll: onScroll
5750
+ }, {
5751
+ default: withCtx(() => [
5752
+ (unref(loading))
5753
+ ? renderSlot(_ctx.$slots, "loading", { key: 0 }, () => [
5754
+ createElementVNode("div", _hoisted_2$6, [
5755
+ createVNode(_component_w_img, {
5756
+ src: "#f-svg-loading-1",
5757
+ width: "28",
5758
+ height: "28"
5759
+ })
5760
+ ])
5761
+ ])
5762
+ : (openBlock(), createElementBlock("div", {
5763
+ key: 1,
5764
+ class: "w-table-v2-wrap",
5765
+ style: normalizeStyle(unref(wrapStyle))
5766
+ }, [
5767
+ (openBlock(true), createElementBlock(Fragment, null, renderList(unref(showList), (item, index) => {
5768
+ return (openBlock(), createElementBlock("div", {
5769
+ key: index,
5770
+ class: normalizeClass(['w-table-v2-tr', {'z-on': isCurrent(item)}]),
5771
+ style: normalizeStyle(itemStyle(item)),
5772
+ onClick: $event => (clickItem($event, item))
5773
+ }, [
5774
+ (openBlock(true), createElementBlock(Fragment, null, renderList(__props.columns, (col, j) => {
5775
+ return (openBlock(), createElementBlock("div", {
5776
+ key: j,
5777
+ class: normalizeClass(['w-table-v2-td', {[`z-align-${col.align}`]: col.align}]),
5778
+ style: normalizeStyle(tdStyle(col))
5779
+ }, [
5780
+ (col.type=='leaf')
5781
+ ? (openBlock(), createElementBlock("div", {
5782
+ key: 0,
5783
+ class: normalizeClass(['w-leaf w-leaf-v2', {'z-folder': isFolder(item)}]),
5784
+ style: normalizeStyle(leafStyle(item))
5785
+ }, [
5786
+ (isItemLoading(item))
5787
+ ? (openBlock(), createBlock(_component_w_img, {
5788
+ key: 0,
5789
+ src: "#f-svg-loading",
5790
+ class: "w-leaf-loading"
5791
+ }))
5792
+ : (openBlock(), createElementBlock("div", {
5793
+ key: 1,
5794
+ class: normalizeClass(['w-leaf-toggle f-i', item.expanded ? 'f-i-caret-down' : 'f-i-caret-right']),
5795
+ onClick: $event => (clickToggle($event, item))
5796
+ }, null, 10 /* CLASS, PROPS */, _hoisted_4$3)),
5797
+ (itemIcon(item))
5798
+ ? (openBlock(), createBlock(_component_w_img, {
5799
+ key: 2,
5800
+ src: itemIcon(item),
5801
+ class: "w-leaf-icon"
5802
+ }, null, 8 /* PROPS */, ["src"]))
5803
+ : createCommentVNode("v-if", true),
5804
+ createElementVNode("div", {
5805
+ class: "w-leaf-text f-line-1",
5806
+ title: item[col.field]
5807
+ }, toDisplayString(item[col.field]), 9 /* TEXT, PROPS */, _hoisted_5$2)
5808
+ ], 6 /* CLASS, STYLE */))
5809
+ : renderSlot(_ctx.$slots, col.field, {
5810
+ key: 1,
5811
+ item: item,
5812
+ rowIndex: index,
5813
+ column: col,
5814
+ colIndex: j
5815
+ }, () => [
5816
+ createElementVNode("div", _hoisted_6$2, toDisplayString(item[col.field]), 1 /* TEXT */)
5817
+ ])
5818
+ ], 6 /* CLASS, STYLE */))
5819
+ }), 128 /* KEYED_FRAGMENT */))
5820
+ ], 14 /* CLASS, STYLE, PROPS */, _hoisted_3$4))
5821
+ }), 128 /* KEYED_FRAGMENT */))
5822
+ ], 4 /* STYLE */))
5823
+ ]),
5824
+ _: 3 /* FORWARDED */
5825
+ }, 512 /* NEED_PATCH */)
5826
+ ]),
5827
+ _: 3 /* FORWARDED */
5828
+ }, 512 /* NEED_PATCH */))
5829
+ }
5830
+ }
5831
+
5832
+ });
5833
+
5834
+ script$O.__file = "src/widgets/TableV2.vue";
5835
+
5836
+ var script$N = {
5416
5837
  name: 'w-grid',
5417
- mixins: [script$1e],
5838
+ mixins: [script$1f],
5418
5839
  props: ['columns', 'rows', 'gap', 'defaultColspan', 'face', 'labelWidth'],
5419
5840
  methods: {
5420
5841
  x_default() {
@@ -5456,13 +5877,13 @@ var script$O = {
5456
5877
  }
5457
5878
  };
5458
5879
 
5459
- script$O.__file = "src/widgets/Grid.vue";
5880
+ script$N.__file = "src/widgets/Grid.vue";
5460
5881
 
5461
- var script$N = {
5882
+ var script$M = {
5462
5883
  name: 'w-swiper-item',
5463
5884
  pubParentName: 'w-swiper',
5464
5885
  inject: ['providePubParent'],
5465
- mixins: [script$1f],
5886
+ mixins: [script$1g],
5466
5887
  props: ['lazy'],
5467
5888
  data() {
5468
5889
  return {
@@ -5495,11 +5916,11 @@ var script$N = {
5495
5916
  }
5496
5917
  };
5497
5918
 
5498
- script$N.__file = "src/widgets/SwiperItem.vue";
5919
+ script$M.__file = "src/widgets/SwiperItem.vue";
5499
5920
 
5500
- var script$M = {
5921
+ var script$L = {
5501
5922
  name: 'w-swiper',
5502
- mixins: [script$1f, script$V],
5923
+ mixins: [script$1g, script$W],
5503
5924
  props: ['arrow', 'indicatorDots', 'duration'],
5504
5925
  data() {
5505
5926
  return {
@@ -5584,11 +6005,11 @@ var script$M = {
5584
6005
  }
5585
6006
  };
5586
6007
 
5587
- script$M.__file = "src/widgets/Swiper.vue";
6008
+ script$L.__file = "src/widgets/Swiper.vue";
5588
6009
 
5589
- var script$L = {
6010
+ var script$K = {
5590
6011
  name: 'w-buttonbar',
5591
- mixins: [script$1c, script$V],
6012
+ mixins: [script$1d, script$W],
5592
6013
  props: ['vertical'],
5593
6014
  emits: ['click:item'],
5594
6015
  methods: {
@@ -5620,11 +6041,11 @@ var script$L = {
5620
6041
  }
5621
6042
  };
5622
6043
 
5623
- script$L.__file = "src/widgets/ButtonBar.vue";
6044
+ script$K.__file = "src/widgets/ButtonBar.vue";
5624
6045
 
5625
- var script$K = {
6046
+ var script$J = {
5626
6047
  name: 'w-tabbar',
5627
- mixins: [script$L],
6048
+ mixins: [script$K],
5628
6049
  props: ['vertical', 'arrow', 'quickCloseButton', 'flexSize', 'buttons'],
5629
6050
  emits: ['click:item', 'click:quickCloseButton'],
5630
6051
  data() {
@@ -5701,7 +6122,7 @@ var script$K = {
5701
6122
  },
5702
6123
  html_slots() {
5703
6124
  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})];
6125
+ 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
6126
  if (this.x.arrow) {
5706
6127
  gut.unshift(h('div', {class: 'w-tabbar-arrow-start', onClick: () => this.clickArrow(-1)}, h('i', {class: 'f-i f-i-caret-left'})));
5707
6128
  gut.push(h('div', {class: 'w-tabbar-arrow-end', onClick: () => this.clickArrow(1)}, h('i', {class: 'f-i f-i-caret-right'})));
@@ -5709,7 +6130,7 @@ var script$K = {
5709
6130
  if (this.x.quickCloseButton) {
5710
6131
  let closeAllDisabled = !this.buttons.find(c => c.props.closable);
5711
6132
  if (this.buttons.length) {
5712
- gut.push(h(script$$, {
6133
+ gut.push(h(script$10, {
5713
6134
  ref: 'quickCloseButton',
5714
6135
  data: {isQuickCloseButton: true},
5715
6136
  showDropIcon: false,
@@ -5718,7 +6139,7 @@ var script$K = {
5718
6139
  onDropClose: this.onMouseleave
5719
6140
  }, {
5720
6141
  default: () => [
5721
- h(script$$, {text: '关闭全部标签', onClick: this.closeAll, disabled: closeAllDisabled})
6142
+ h(script$10, {text: '关闭全部标签', onClick: this.closeAll, disabled: closeAllDisabled})
5722
6143
  ]
5723
6144
  }));
5724
6145
  }
@@ -5820,12 +6241,12 @@ var script$K = {
5820
6241
  }
5821
6242
  };
5822
6243
 
5823
- script$K.__file = "src/widgets/TabBar.vue";
6244
+ script$J.__file = "src/widgets/TabBar.vue";
5824
6245
 
5825
- var script$J = {
6246
+ var script$I = {
5826
6247
  name: 'w-tabbutton',
5827
6248
  pubParentName: 'w-tabbar',
5828
- mixins: [script$$],
6249
+ mixins: [script$10],
5829
6250
  methods: {
5830
6251
  vis() {
5831
6252
  let add = [20, 20];
@@ -5845,11 +6266,11 @@ var script$J = {
5845
6266
  }
5846
6267
  };
5847
6268
 
5848
- script$J.__file = "src/widgets/TabButton.vue";
6269
+ script$I.__file = "src/widgets/TabButton.vue";
5849
6270
 
5850
- var script$I = {
6271
+ var script$H = {
5851
6272
  name: 'w-tabs',
5852
- mixins: [script$1f],
6273
+ mixins: [script$1g],
5853
6274
  props: ['current', 'position', 'gap', 'face', 'quickCloseButton', 'flexSize'],
5854
6275
  emits: ['click:quickCloseButton'],
5855
6276
  methods: {
@@ -5877,11 +6298,11 @@ var script$I = {
5877
6298
  if (!v.props || v.props.key == null) {
5878
6299
  $$1.lodash.set(v, 'props.key', i);
5879
6300
  }
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));
6301
+ buttons.push(h(script$I, v.props));
6302
+ pages.push(h(script$M, {lazy: v.props.lazy == null ? true : v.props.lazy, key: v.props.key}, v.children));
5882
6303
  });
5883
6304
  return [
5884
- h(script$K, {
6305
+ h(script$J, {
5885
6306
  ref: 'tabBar',
5886
6307
  class: 'w-tabs-buttonbar',
5887
6308
  current: this.x.current,
@@ -5894,7 +6315,7 @@ var script$I = {
5894
6315
  'onClick:quickCloseButton': this.clickQuickCloseButton,
5895
6316
  buttons,
5896
6317
  }),
5897
- h(script$M, {class: 'w-tabs-swiper f-flex-1 f-oh', current: this.x.current}, {default: () => pages}),
6318
+ h(script$L, {class: 'w-tabs-swiper f-flex-1 f-oh', current: this.x.current}, {default: () => pages}),
5898
6319
  ]
5899
6320
  }
5900
6321
  },
@@ -5906,17 +6327,17 @@ var script$I = {
5906
6327
  }
5907
6328
  };
5908
6329
 
5909
- script$I.__file = "src/widgets/Tabs.vue";
6330
+ script$H.__file = "src/widgets/Tabs.vue";
5910
6331
 
5911
- var script$H = {
6332
+ var script$G = {
5912
6333
  name: 'w-tab',
5913
6334
  };
5914
6335
 
5915
- script$H.__file = "src/widgets/Tab.vue";
6336
+ script$G.__file = "src/widgets/Tab.vue";
5916
6337
 
5917
- var script$G = {
6338
+ var script$F = {
5918
6339
  name: 'w-album',
5919
- mixins: [script$1c, script$V],
6340
+ mixins: [script$1d, script$W],
5920
6341
  methods: {
5921
6342
  x_default() {
5922
6343
  return {
@@ -5933,11 +6354,11 @@ var script$G = {
5933
6354
  }
5934
6355
  };
5935
6356
 
5936
- script$G.__file = "src/widgets/Album.vue";
6357
+ script$F.__file = "src/widgets/Album.vue";
5937
6358
 
5938
- var script$F = {
6359
+ var script$E = {
5939
6360
  name: 'w-html',
5940
- mixins: [script$1f, script$1d],
6361
+ mixins: [script$1g, script$1e],
5941
6362
  props: ['line'],
5942
6363
  computed: {
5943
6364
  html_props() {
@@ -5956,11 +6377,11 @@ var script$F = {
5956
6377
  }
5957
6378
  };
5958
6379
 
5959
- script$F.__file = "src/widgets/Html.vue";
6380
+ script$E.__file = "src/widgets/Html.vue";
5960
6381
 
5961
- var script$E = {
6382
+ var script$D = {
5962
6383
  name: 'w-tree',
5963
- mixins: [script$1e, script$V, script$1l],
6384
+ mixins: [script$1f, script$W, script$1m],
5964
6385
  emits: ['click:item'],
5965
6386
  provide() {
5966
6387
  return {
@@ -5992,7 +6413,7 @@ var script$E = {
5992
6413
  const sl = this.slot('loading');
5993
6414
  r = sl && sl.length ? sl : h('div', {
5994
6415
  class: 'w-tree-loading'
5995
- }, h(script$12, {src: '#f-svg-loading-1', width: 30, height: 30}));
6416
+ }, h(script$13, {src: '#f-svg-loading-1', width: 28, height: 28}));
5996
6417
  } else {
5997
6418
  let chd = this.x.children;
5998
6419
  if (this.$slots.default) {
@@ -6006,7 +6427,7 @@ var script$E = {
6006
6427
  }
6007
6428
  }
6008
6429
  if (key) {
6009
- return h(script$U, {key}, {default: () => leaf})
6430
+ return h(script$V, {key}, {default: () => leaf})
6010
6431
  } else {
6011
6432
  return leaf
6012
6433
  }
@@ -6034,21 +6455,9 @@ var script$E = {
6034
6455
  }
6035
6456
  };
6036
6457
 
6037
- script$E.__file = "src/widgets/Tree.vue";
6038
-
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";
6458
+ script$D.__file = "src/widgets/Tree.vue";
6050
6459
 
6051
- const _hoisted_1$5 = { class: "w-tree-loading" };
6460
+ const _hoisted_1$5 = { class: "w-tree-loading w-tree-v2-loading" };
6052
6461
  const _hoisted_2$5 = ["onClick"];
6053
6462
  const _hoisted_3$3 = ["onClick"];
6054
6463
  const _hoisted_4$2 = ["title"];
@@ -6082,6 +6491,9 @@ var script$C = /*#__PURE__*/Object.assign(__default__, {
6082
6491
  src: {
6083
6492
  type: Function
6084
6493
  },
6494
+ loading: {
6495
+ type: Boolean
6496
+ }
6085
6497
  },
6086
6498
  emits: ['click:item'],
6087
6499
  setup(__props, { expose, emit: emits }) {
@@ -6104,7 +6516,8 @@ const props = __props;
6104
6516
  const flatList = ref([]);
6105
6517
  const root = ref();
6106
6518
  const flow = ref();
6107
- const loading = ref(false);
6519
+ const xLoading = ref(false);
6520
+ const loading = computed(() => props.loading || xLoading.value);
6108
6521
 
6109
6522
  const wrapStyle = computed(() => {
6110
6523
  return {
@@ -6238,7 +6651,7 @@ const props = __props;
6238
6651
  a = p;
6239
6652
  }
6240
6653
  }
6241
- a && toggle(a, true);
6654
+ a && a != item && toggle(a, true);
6242
6655
  }
6243
6656
  return item
6244
6657
  };
@@ -6272,7 +6685,7 @@ const props = __props;
6272
6685
 
6273
6686
  const initShowCount = () => {
6274
6687
  flow.value = root.value.$refs.wScrollOverflow.getBoundingClientRect();
6275
- showCount.value = Math.ceil(flow.value.height / itemHeight);
6688
+ showCount.value = Math.ceil(flow.value.height / itemHeight) + 1;
6276
6689
  };
6277
6690
 
6278
6691
  const watchCurrent = async (val) => {
@@ -6313,7 +6726,7 @@ const props = __props;
6313
6726
  return (_ctx, _cache) => {
6314
6727
  const _component_w_img = resolveComponent("w-img");
6315
6728
 
6316
- return (openBlock(), createBlock(script$D, {
6729
+ return (openBlock(), createBlock(script$P, {
6317
6730
  ref_key: "root",
6318
6731
  ref: root,
6319
6732
  class: "w-tree w-tree-v2",
@@ -6321,13 +6734,13 @@ return (_ctx, _cache) => {
6321
6734
  onScroll: onScroll
6322
6735
  }, {
6323
6736
  default: withCtx(() => [
6324
- (loading.value)
6737
+ (unref(loading))
6325
6738
  ? renderSlot(_ctx.$slots, "loading", { key: 0 }, () => [
6326
6739
  createElementVNode("div", _hoisted_1$5, [
6327
6740
  createVNode(_component_w_img, {
6328
6741
  src: "#f-svg-loading-1",
6329
- width: "30",
6330
- height: "30"
6742
+ width: "28",
6743
+ height: "28"
6331
6744
  })
6332
6745
  ])
6333
6746
  ])
@@ -6364,7 +6777,14 @@ return (_ctx, _cache) => {
6364
6777
  createElementVNode("div", {
6365
6778
  class: "w-leaf-text f-line-1",
6366
6779
  title: item[unref(propText)]
6367
- }, toDisplayString(item[unref(propText)]), 9 /* TEXT, PROPS */, _hoisted_4$2)
6780
+ }, [
6781
+ renderSlot(_ctx.$slots, "text", {
6782
+ item: item,
6783
+ index: index
6784
+ }, () => [
6785
+ createTextVNode(toDisplayString(item[unref(propText)]), 1 /* TEXT */)
6786
+ ])
6787
+ ], 8 /* PROPS */, _hoisted_4$2)
6368
6788
  ], 14 /* CLASS, STYLE, PROPS */, _hoisted_2$5))
6369
6789
  }), 128 /* KEYED_FRAGMENT */))
6370
6790
  ], 4 /* STYLE */))
@@ -6380,7 +6800,7 @@ script$C.__file = "src/widgets/TreeV2.vue";
6380
6800
 
6381
6801
  var script$B = {
6382
6802
  name: 'w-label',
6383
- mixins: [script$1f, script$1d],
6803
+ mixins: [script$1g, script$1e],
6384
6804
  props: ['text', 'suffix', 'vertical'],
6385
6805
  methods: {
6386
6806
  html_slots() {
@@ -6405,7 +6825,7 @@ var script$B = {
6405
6825
  script$B.__file = "src/widgets/Label.vue";
6406
6826
 
6407
6827
  var script$A = {
6408
- mixins: [script$1f, script$1d],
6828
+ mixins: [script$1g, script$1e],
6409
6829
  props: ['name', 'value', 'modelValue', 'placeholder', 'label', 'readonly', 'readonlyValidate', 'disabled', 'required',
6410
6830
  'validateDefault', 'validateHandler', 'inputWidth', 'inputHeight' ],
6411
6831
  emits: ['update:modelValue', 'change', 'blur', 'focus'],
@@ -6678,8 +7098,11 @@ var script$A = {
6678
7098
  this.slot('append'),
6679
7099
  ]
6680
7100
  },
7101
+ html_slot_down() {
7102
+ return this.slot('down')
7103
+ },
6681
7104
  html_main() {
6682
- return h('div', {class: 'w-formbase-main'}, [this.html_form(), this.slot('down')])
7105
+ return h('div', {class: 'w-formbase-main'}, [this.html_form(), this.html_slot_down()])
6683
7106
  },
6684
7107
  html_form() {
6685
7108
  let fh = this.x.inputHeight && $$1.unitSize(this.x.inputHeight);
@@ -7002,7 +7425,7 @@ var script$z = {
7002
7425
  }, this.html_input())
7003
7426
  },
7004
7427
  html_target() {
7005
- return this.$slots.default ? h(script$1c, {
7428
+ return this.$slots.default ? h(script$1d, {
7006
7429
  class: this.$options.name + '-target',
7007
7430
  ref: 'target'
7008
7431
  }, this.$slots) : []
@@ -7178,7 +7601,7 @@ script$y.__file = "src/widgets/TripleBox.vue";
7178
7601
  var script$x = {
7179
7602
  name: 'w-leaf',
7180
7603
  pubParentName: 'w-tree',
7181
- mixins: [script$1f, script$1l],
7604
+ mixins: [script$1g, script$1m],
7182
7605
  props: ['text', 'expanded', 'expandedIcon', 'collapsedIcon', 'icon', 'boxSync', 'src', 'disabled'],
7183
7606
  inject: ['providePubParent', 'provideLevel', 'provideParentLeaf', 'provideParentTR'],
7184
7607
  provide() {
@@ -7278,7 +7701,7 @@ var script$x = {
7278
7701
  let ico = this.isFolder() ? (exp ? this.x.expandedIcon : this.x.collapsedIcon) : this.x.icon;
7279
7702
  return h('div', mergeProps(this.html_attrs, this.html_props, this.$attrs), [
7280
7703
  this.loading ?
7281
- h(script$12, {
7704
+ h(script$13, {
7282
7705
  src: '#f-svg-loading',
7283
7706
  class: 'w-leaf-loading'
7284
7707
  }) :
@@ -7290,7 +7713,7 @@ var script$x = {
7290
7713
  }
7291
7714
  }),
7292
7715
  this.$slots.box && this.$slots.box(),
7293
- ico && h(script$12, {
7716
+ ico && h(script$13, {
7294
7717
  src: ico,
7295
7718
  class: 'w-leaf-icon'
7296
7719
  }),
@@ -7314,7 +7737,7 @@ var script$x = {
7314
7737
  }
7315
7738
  }
7316
7739
  if (key) {
7317
- return h(script$U, {key}, {default: () => leaf})
7740
+ return h(script$V, {key}, {default: () => leaf})
7318
7741
  } else {
7319
7742
  return leaf
7320
7743
  }
@@ -7383,7 +7806,7 @@ script$x.__file = "src/widgets/Leaf.vue";
7383
7806
 
7384
7807
  var script$w = {
7385
7808
  name: 'w-pagebar',
7386
- mixins: [script$L],
7809
+ mixins: [script$K],
7387
7810
  emits: ['click:item'],
7388
7811
  props: ['limit', 'size', 'offset', 'buttonCount', 'noFirstLast', 'face', 'jump'],
7389
7812
  data() {
@@ -7435,13 +7858,13 @@ var script$w = {
7435
7858
  this.html_face_normal()
7436
7859
  },
7437
7860
  html_buttons() {
7438
- return [h(script$$, {
7861
+ return [h(script$10, {
7439
7862
  class: 'w-pagebar-button w-pagebar-prev',
7440
7863
  icon: '.f-i .f-i-angle-left',
7441
7864
  disabled: this.currentPage == 1,
7442
7865
  title: $$1.loc.page_text.prev,
7443
7866
  onclick: e => this.clickItem(e, this.currentPage - 1)
7444
- }), h(script$$, {
7867
+ }), h(script$10, {
7445
7868
  class: 'w-pagebar-button w-pagebar-next',
7446
7869
  icon: '.f-i .f-i-angle-right',
7447
7870
  disabled: this.currentPage == this.sumPage,
@@ -7452,7 +7875,7 @@ var script$w = {
7452
7875
  html_drop() {
7453
7876
  let s = [];
7454
7877
  if (this.x.buttonCount) {
7455
- s.push(h(script$$, {
7878
+ s.push(h(script$10, {
7456
7879
  class: 'w-pagebar-button w-pagebar-button-count w-pagebar-prev',
7457
7880
  ref: 'drop',
7458
7881
  text: this.currentPage + '/' + this.sumPage,
@@ -7461,8 +7884,8 @@ var script$w = {
7461
7884
  }
7462
7885
  if (this.showDrop) {
7463
7886
  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}));
7887
+ for (let i = 1, sp = this.sumPage; i <= sp; i ++) b.push(h(script$10, {text: i, onClick: e => this.clickItem(e, i)}));
7888
+ s.push(h(script$$, {snap: () => this.$refs.drop, position: 'v', indent: 1, onClose: () => this.showDrop = false}, {default: () => b}));
7466
7889
  }
7467
7890
  return s
7468
7891
  },
@@ -7564,7 +7987,7 @@ script$w.__file = "src/widgets/PageBar.vue";
7564
7987
 
7565
7988
  var script$v = {
7566
7989
  name: 'w-split',
7567
- mixins: [script$1f],
7990
+ mixins: [script$1g],
7568
7991
  props: ['collapsedIcon', 'expandedIcon', 'movable', 'range', 'toNext', 'expanded'],
7569
7992
  inject: ['provideLayout'],
7570
7993
  created() {
@@ -7665,7 +8088,7 @@ script$v.__file = "src/widgets/Split.vue";
7665
8088
 
7666
8089
  var script$u = {
7667
8090
  name: 'w-toggle',
7668
- mixins: [script$1f, script$1d],
8091
+ mixins: [script$1g, script$1e],
7669
8092
  props: ['collapsedIcon', 'expandedIcon', 'expanded', 'align', 'valign'],
7670
8093
  methods: {
7671
8094
  x_default() {
@@ -7682,7 +8105,7 @@ var script$u = {
7682
8105
  html_slots() {
7683
8106
  let exp = this.x.expanded;
7684
8107
  let ico = exp ? this.x.expandedIcon : this.x.collapsedIcon;
7685
- return [ico && h(script$12, {
8108
+ return [ico && h(script$13, {
7686
8109
  src: ico,
7687
8110
  class: 'w-toggle-icon',
7688
8111
  }), h('div', {class: 'w-toggle-main'}, this.$slots.default())]
@@ -7713,7 +8136,7 @@ script$u.__file = "src/widgets/Toggle.vue";
7713
8136
 
7714
8137
  var script$t = {
7715
8138
  name: 'w-video',
7716
- mixins: [script$1f],
8139
+ mixins: [script$1g],
7717
8140
  props: ['src', 'poster'],
7718
8141
  data() {
7719
8142
  return {
@@ -7765,7 +8188,7 @@ script$t.__file = "src/widgets/Video.vue";
7765
8188
 
7766
8189
  var script$s = {
7767
8190
  name: 'w-progress',
7768
- mixins: [script$1f],
8191
+ mixins: [script$1g],
7769
8192
  props: ['percent', 'range', 'text'],
7770
8193
  methods: {
7771
8194
  html_slots() {
@@ -7810,7 +8233,7 @@ script$s.__file = "src/widgets/Progress.vue";
7810
8233
 
7811
8234
  var script$r = {
7812
8235
  name: 'w-calendar',
7813
- mixins: [script$1f],
8236
+ mixins: [script$1g],
7814
8237
  emits: ['click:item', 'change'],
7815
8238
  props: ['value', 'minValue', 'maxValue', 'current', 'pad', 'face', 'format', 'success', 'cg', 'start',
7816
8239
  'enableHour', 'enableMinute', 'enableSecond', 'defaultHour', 'defaultMinute', 'defaultSecond'
@@ -8556,7 +8979,7 @@ script$r.__file = "src/widgets/Calendar.vue";
8556
8979
 
8557
8980
  var script$q = {
8558
8981
  name: 'w-timeline',
8559
- mixins: [script$1e, script$V],
8982
+ mixins: [script$1f, script$W],
8560
8983
  props: ['face', 'vertical'],
8561
8984
  methods: {
8562
8985
  indent() {
@@ -8689,7 +9112,7 @@ script$q.__file = "src/widgets/Timeline.vue";
8689
9112
  var script$p = {
8690
9113
  name: 'w-timeline-item',
8691
9114
  pubParentName: 'w-timeline',
8692
- mixins: [script$1f],
9115
+ mixins: [script$1g],
8693
9116
  inject: ['providePubParent'],
8694
9117
  props: ['position', 'index'],
8695
9118
  methods: {
@@ -8726,7 +9149,7 @@ script$p.__file = "src/widgets/TimelineItem.vue";
8726
9149
 
8727
9150
  var script$o = {
8728
9151
  name: 'w-slidepicker',
8729
- mixins: [script$1f],
9152
+ mixins: [script$1g],
8730
9153
  provide() {
8731
9154
  return {
8732
9155
  provideOptionParent: this,
@@ -8981,7 +9404,7 @@ script$n.__file = "src/widgets/Hidden.vue";
8981
9404
  var script$m = {
8982
9405
  name: 'w-text',
8983
9406
  mixins: [script$A],
8984
- props: ['minLength', 'maxLength', 'pattern', 'clearable'],
9407
+ props: ['minLength', 'maxLength', 'pattern', 'clearable', 'showCount'],
8985
9408
  data() {
8986
9409
  return {
8987
9410
  hasBorder: true
@@ -9017,6 +9440,11 @@ var script$m = {
9017
9440
  }
9018
9441
  }
9019
9442
  },
9443
+ input_prop() {
9444
+ if (this.x.maxLength) {
9445
+ return {maxlength: this.x.maxLength}
9446
+ }
9447
+ },
9020
9448
  html_class() {
9021
9449
  return {
9022
9450
  'z-val': this.hasVal,
@@ -9035,6 +9463,23 @@ var script$l = {
9035
9463
  input_tag() {
9036
9464
  return 'textarea'
9037
9465
  }
9466
+ },
9467
+ methods: {
9468
+ html_slot_down() {
9469
+ const down = this.slot('down');
9470
+ if (this.x.showCount || (down && down.length)) {
9471
+ let counter = '';
9472
+ if (this.x.showCount && this.x.maxLength) {
9473
+ let v = this.x.modelValue || '';
9474
+ counter = `${v.length} / ${this.x.maxLength}`;
9475
+ }
9476
+ return h('div', {class: 'w-textarea-down'}, [
9477
+ h('div', {class: 'w-textarea-down-left'}, down),
9478
+ h('div', {class: 'w-textarea-down-right'}, counter)
9479
+ ])
9480
+ }
9481
+ return down
9482
+ },
9038
9483
  }
9039
9484
  };
9040
9485
 
@@ -9892,7 +10337,7 @@ const suffixHooks = {
9892
10337
  onclick: e => this.remove(item)
9893
10338
  })];
9894
10339
  if (value && this.$slots.menu) {
9895
- button.push(h(script$_, null, {
10340
+ button.push(h(script$$, null, {
9896
10341
  target: () => h('div', {
9897
10342
  class: 'w-fileupload-value-menu f-i f-i-ellipsis',
9898
10343
  title: $$1.loc.more,
@@ -9944,14 +10389,14 @@ const suffixHooks = {
9944
10389
  },
9945
10390
  html_input_button() {
9946
10391
  return h('div', {}, [
9947
- h(script$L, {
10392
+ h(script$K, {
9948
10393
  ref: 'uploadbbr',
9949
10394
  class: 'w-fileupload-bbr',
9950
10395
  gap: 10,
9951
10396
  }, {
9952
10397
  default: () => [
9953
10398
  this.$slots.button ? this.$slots.button(this) :
9954
- h(script$$, {
10399
+ h(script$10, {
9955
10400
  text: '选择文件',
9956
10401
  icon: '.f-i .f-i-upload',
9957
10402
  class: 'w-fileupload-button',
@@ -10240,12 +10685,12 @@ var script$e = {
10240
10685
  },
10241
10686
  html_input_button() {
10242
10687
  return h('div', {}, [
10243
- h(script$L, {
10688
+ h(script$K, {
10244
10689
  ref: 'uploadbbr',
10245
10690
  class: 'w-fileupload-bbr'
10246
10691
  }, {
10247
10692
  default: () => [
10248
- this.$slots.button ? this.$slots.button(this) : h(script$$, {
10693
+ this.$slots.button ? this.$slots.button(this) : h(script$10, {
10249
10694
  ref: 'uploadbutton',
10250
10695
  title: $$1.loc.form.choose_image,
10251
10696
  icon: '.f-i .f-i-plus',
@@ -10306,7 +10751,7 @@ script$d.__file = "src/widgets/ImageUpload.vue";
10306
10751
 
10307
10752
  var script$c = {
10308
10753
  name: 'w-option',
10309
- mixins: [script$1f],
10754
+ mixins: [script$1g],
10310
10755
  props: ['value', 'text', 'disabled'],
10311
10756
  inject: ['provideOptionParent'],
10312
10757
  methods: {
@@ -10716,7 +11161,7 @@ var script$a = {
10716
11161
  onClose: this.onclose
10717
11162
  };
10718
11163
  if (this.x.dropProps) dropProps = mergeProps(dropProps, this.x.dropProps);
10719
- r.push(h(script$19, dropProps, {
11164
+ r.push(h(script$1a, dropProps, {
10720
11165
  default: () => h(script$r, {
10721
11166
  height: '*',
10722
11167
  pad: true,
@@ -10876,7 +11321,7 @@ var script$9 = {
10876
11321
  onClose: () => this.showDrop = false
10877
11322
  };
10878
11323
  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)}));
11324
+ r.push(h(script$1a, dropProps, {default: () => h(script$1c, {height: '*', scrollY: true, scrollView: '.z-on'}, this.$slots)}));
10880
11325
  }
10881
11326
  return r
10882
11327
  },
@@ -11283,7 +11728,7 @@ var script$5 = {
11283
11728
  onClose: () => this.showSuggest = false
11284
11729
  };
11285
11730
  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)}));
11731
+ r.push(h(script$1a, dropProps, {default: () => h(script$1c, {height: '*', scrollY: true}, this.$slots)}));
11287
11732
  }
11288
11733
  return [
11289
11734
  this.html_input_hidden(),
@@ -11741,7 +12186,7 @@ var script$4 = {
11741
12186
  onClose: () => this.showSuggest = false
11742
12187
  };
11743
12188
  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)}));
12189
+ r.push(h(script$1a, dropProps, {default: () => h(script$1c, {height: '*', scrollY: true}, this.$slots)}));
11745
12190
  }
11746
12191
  return [
11747
12192
  this.html_input_hidden(),
@@ -12164,7 +12609,7 @@ var script = {
12164
12609
  this.x.modelValue = this.x.cancelable && this.x.modelValue == i ? '' : i;
12165
12610
  },
12166
12611
  html_star(i) {
12167
- return h(script$12, {
12612
+ return h(script$13, {
12168
12613
  class: ['w-rate-star-icon', {'z-hv': this.hoverWrap && i <= this.hoverIndex, 'z-on': !this.hoverWrap && i <= this.x.modelValue}],
12169
12614
  src: '.f-i .f-i-star-full',
12170
12615
  onMouseenter: e => this.hoverItem(e, i),
@@ -12208,9 +12653,9 @@ var script = {
12208
12653
  script.__file = "src/widgets/Rate.vue";
12209
12654
 
12210
12655
  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,
12656
+ script$1h, script$1b, script$1a, script$18, script$16, script$14, script$$, script$_,
12657
+ 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,
12658
+ 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
12659
  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
12660
  script$b, script$a, script$9, script$8, script$7, script$6, script$5, script$4, script$2, script$1, script
12216
12661
  ];