bkui-vue 0.0.2-beta.95 → 0.0.2-beta.96
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/dist/index.cjs.js +45 -45
- package/dist/index.esm.js +7655 -7697
- package/dist/index.umd.js +31 -31
- package/lib/plugin-popover/index.js +93 -277
- package/lib/popover/index.js +93 -277
- package/lib/shared/index.js +91 -275
- package/lib/table/index.js +99 -280
- package/lib/table/table.d.ts +1 -3
- package/lib/table/use-render.d.ts +1 -1
- package/lib/tree/index.js +97 -277
- package/lib/virtual-render/index.js +43 -48
- package/lib/virtual-render/v-virtual-render.d.ts +1 -1
- package/package.json +1 -1
package/lib/tree/index.js
CHANGED
@@ -6,274 +6,8 @@ import * as __WEBPACK_EXTERNAL_MODULE_vue_types_22de060a__ from "vue-types";
|
|
6
6
|
import * as __WEBPACK_EXTERNAL_MODULE__exception_12c197e0__ from "../exception";
|
7
7
|
import * as __WEBPACK_EXTERNAL_MODULE__checkbox_a57bcb84__ from "../checkbox";
|
8
8
|
import * as __WEBPACK_EXTERNAL_MODULE__icon_85385c3e__ from "../icon";
|
9
|
-
/******/
|
10
|
-
|
11
|
-
/***/ 8022:
|
12
|
-
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
|
13
|
-
|
14
|
-
var v1 = __webpack_require__(4481);
|
15
|
-
var v4 = __webpack_require__(6426);
|
16
|
-
|
17
|
-
var uuid = v4;
|
18
|
-
uuid.v1 = v1;
|
19
|
-
uuid.v4 = v4;
|
20
|
-
|
21
|
-
module.exports = uuid;
|
22
|
-
|
23
|
-
|
24
|
-
/***/ }),
|
25
|
-
|
26
|
-
/***/ 8725:
|
27
|
-
/***/ ((module) => {
|
28
|
-
|
29
|
-
/**
|
30
|
-
* Convert array of 16 byte values to UUID string format of the form:
|
31
|
-
* XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX
|
32
|
-
*/
|
33
|
-
var byteToHex = [];
|
34
|
-
for (var i = 0; i < 256; ++i) {
|
35
|
-
byteToHex[i] = (i + 0x100).toString(16).substr(1);
|
36
|
-
}
|
37
|
-
|
38
|
-
function bytesToUuid(buf, offset) {
|
39
|
-
var i = offset || 0;
|
40
|
-
var bth = byteToHex;
|
41
|
-
// join used to fix memory issue caused by concatenation: https://bugs.chromium.org/p/v8/issues/detail?id=3175#c4
|
42
|
-
return ([
|
43
|
-
bth[buf[i++]], bth[buf[i++]],
|
44
|
-
bth[buf[i++]], bth[buf[i++]], '-',
|
45
|
-
bth[buf[i++]], bth[buf[i++]], '-',
|
46
|
-
bth[buf[i++]], bth[buf[i++]], '-',
|
47
|
-
bth[buf[i++]], bth[buf[i++]], '-',
|
48
|
-
bth[buf[i++]], bth[buf[i++]],
|
49
|
-
bth[buf[i++]], bth[buf[i++]],
|
50
|
-
bth[buf[i++]], bth[buf[i++]]
|
51
|
-
]).join('');
|
52
|
-
}
|
53
|
-
|
54
|
-
module.exports = bytesToUuid;
|
55
|
-
|
56
|
-
|
57
|
-
/***/ }),
|
58
|
-
|
59
|
-
/***/ 9157:
|
60
|
-
/***/ ((module) => {
|
61
|
-
|
62
|
-
// Unique ID creation requires a high quality random # generator. In the
|
63
|
-
// browser this is a little complicated due to unknown quality of Math.random()
|
64
|
-
// and inconsistent support for the `crypto` API. We do the best we can via
|
65
|
-
// feature-detection
|
66
|
-
|
67
|
-
// getRandomValues needs to be invoked in a context where "this" is a Crypto
|
68
|
-
// implementation. Also, find the complete implementation of crypto on IE11.
|
69
|
-
var getRandomValues = (typeof(crypto) != 'undefined' && crypto.getRandomValues && crypto.getRandomValues.bind(crypto)) ||
|
70
|
-
(typeof(msCrypto) != 'undefined' && typeof window.msCrypto.getRandomValues == 'function' && msCrypto.getRandomValues.bind(msCrypto));
|
71
|
-
|
72
|
-
if (getRandomValues) {
|
73
|
-
// WHATWG crypto RNG - http://wiki.whatwg.org/wiki/Crypto
|
74
|
-
var rnds8 = new Uint8Array(16); // eslint-disable-line no-undef
|
75
|
-
|
76
|
-
module.exports = function whatwgRNG() {
|
77
|
-
getRandomValues(rnds8);
|
78
|
-
return rnds8;
|
79
|
-
};
|
80
|
-
} else {
|
81
|
-
// Math.random()-based (RNG)
|
82
|
-
//
|
83
|
-
// If all else fails, use Math.random(). It's fast, but is of unspecified
|
84
|
-
// quality.
|
85
|
-
var rnds = new Array(16);
|
86
|
-
|
87
|
-
module.exports = function mathRNG() {
|
88
|
-
for (var i = 0, r; i < 16; i++) {
|
89
|
-
if ((i & 0x03) === 0) r = Math.random() * 0x100000000;
|
90
|
-
rnds[i] = r >>> ((i & 0x03) << 3) & 0xff;
|
91
|
-
}
|
92
|
-
|
93
|
-
return rnds;
|
94
|
-
};
|
95
|
-
}
|
96
|
-
|
97
|
-
|
98
|
-
/***/ }),
|
99
|
-
|
100
|
-
/***/ 4481:
|
101
|
-
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
|
102
|
-
|
103
|
-
var rng = __webpack_require__(9157);
|
104
|
-
var bytesToUuid = __webpack_require__(8725);
|
105
|
-
|
106
|
-
// **`v1()` - Generate time-based UUID**
|
107
|
-
//
|
108
|
-
// Inspired by https://github.com/LiosK/UUID.js
|
109
|
-
// and http://docs.python.org/library/uuid.html
|
110
|
-
|
111
|
-
var _nodeId;
|
112
|
-
var _clockseq;
|
113
|
-
|
114
|
-
// Previous uuid creation time
|
115
|
-
var _lastMSecs = 0;
|
116
|
-
var _lastNSecs = 0;
|
117
|
-
|
118
|
-
// See https://github.com/uuidjs/uuid for API details
|
119
|
-
function v1(options, buf, offset) {
|
120
|
-
var i = buf && offset || 0;
|
121
|
-
var b = buf || [];
|
122
|
-
|
123
|
-
options = options || {};
|
124
|
-
var node = options.node || _nodeId;
|
125
|
-
var clockseq = options.clockseq !== undefined ? options.clockseq : _clockseq;
|
126
|
-
|
127
|
-
// node and clockseq need to be initialized to random values if they're not
|
128
|
-
// specified. We do this lazily to minimize issues related to insufficient
|
129
|
-
// system entropy. See #189
|
130
|
-
if (node == null || clockseq == null) {
|
131
|
-
var seedBytes = rng();
|
132
|
-
if (node == null) {
|
133
|
-
// Per 4.5, create and 48-bit node id, (47 random bits + multicast bit = 1)
|
134
|
-
node = _nodeId = [
|
135
|
-
seedBytes[0] | 0x01,
|
136
|
-
seedBytes[1], seedBytes[2], seedBytes[3], seedBytes[4], seedBytes[5]
|
137
|
-
];
|
138
|
-
}
|
139
|
-
if (clockseq == null) {
|
140
|
-
// Per 4.2.2, randomize (14 bit) clockseq
|
141
|
-
clockseq = _clockseq = (seedBytes[6] << 8 | seedBytes[7]) & 0x3fff;
|
142
|
-
}
|
143
|
-
}
|
144
|
-
|
145
|
-
// UUID timestamps are 100 nano-second units since the Gregorian epoch,
|
146
|
-
// (1582-10-15 00:00). JSNumbers aren't precise enough for this, so
|
147
|
-
// time is handled internally as 'msecs' (integer milliseconds) and 'nsecs'
|
148
|
-
// (100-nanoseconds offset from msecs) since unix epoch, 1970-01-01 00:00.
|
149
|
-
var msecs = options.msecs !== undefined ? options.msecs : new Date().getTime();
|
150
|
-
|
151
|
-
// Per 4.2.1.2, use count of uuid's generated during the current clock
|
152
|
-
// cycle to simulate higher resolution clock
|
153
|
-
var nsecs = options.nsecs !== undefined ? options.nsecs : _lastNSecs + 1;
|
154
|
-
|
155
|
-
// Time since last uuid creation (in msecs)
|
156
|
-
var dt = (msecs - _lastMSecs) + (nsecs - _lastNSecs)/10000;
|
157
|
-
|
158
|
-
// Per 4.2.1.2, Bump clockseq on clock regression
|
159
|
-
if (dt < 0 && options.clockseq === undefined) {
|
160
|
-
clockseq = clockseq + 1 & 0x3fff;
|
161
|
-
}
|
162
|
-
|
163
|
-
// Reset nsecs if clock regresses (new clockseq) or we've moved onto a new
|
164
|
-
// time interval
|
165
|
-
if ((dt < 0 || msecs > _lastMSecs) && options.nsecs === undefined) {
|
166
|
-
nsecs = 0;
|
167
|
-
}
|
168
|
-
|
169
|
-
// Per 4.2.1.2 Throw error if too many uuids are requested
|
170
|
-
if (nsecs >= 10000) {
|
171
|
-
throw new Error('uuid.v1(): Can\'t create more than 10M uuids/sec');
|
172
|
-
}
|
173
|
-
|
174
|
-
_lastMSecs = msecs;
|
175
|
-
_lastNSecs = nsecs;
|
176
|
-
_clockseq = clockseq;
|
177
|
-
|
178
|
-
// Per 4.1.4 - Convert from unix epoch to Gregorian epoch
|
179
|
-
msecs += 12219292800000;
|
180
|
-
|
181
|
-
// `time_low`
|
182
|
-
var tl = ((msecs & 0xfffffff) * 10000 + nsecs) % 0x100000000;
|
183
|
-
b[i++] = tl >>> 24 & 0xff;
|
184
|
-
b[i++] = tl >>> 16 & 0xff;
|
185
|
-
b[i++] = tl >>> 8 & 0xff;
|
186
|
-
b[i++] = tl & 0xff;
|
187
|
-
|
188
|
-
// `time_mid`
|
189
|
-
var tmh = (msecs / 0x100000000 * 10000) & 0xfffffff;
|
190
|
-
b[i++] = tmh >>> 8 & 0xff;
|
191
|
-
b[i++] = tmh & 0xff;
|
192
|
-
|
193
|
-
// `time_high_and_version`
|
194
|
-
b[i++] = tmh >>> 24 & 0xf | 0x10; // include version
|
195
|
-
b[i++] = tmh >>> 16 & 0xff;
|
196
|
-
|
197
|
-
// `clock_seq_hi_and_reserved` (Per 4.2.2 - include variant)
|
198
|
-
b[i++] = clockseq >>> 8 | 0x80;
|
199
|
-
|
200
|
-
// `clock_seq_low`
|
201
|
-
b[i++] = clockseq & 0xff;
|
202
|
-
|
203
|
-
// `node`
|
204
|
-
for (var n = 0; n < 6; ++n) {
|
205
|
-
b[i + n] = node[n];
|
206
|
-
}
|
207
|
-
|
208
|
-
return buf ? buf : bytesToUuid(b);
|
209
|
-
}
|
210
|
-
|
211
|
-
module.exports = v1;
|
212
|
-
|
213
|
-
|
214
|
-
/***/ }),
|
215
|
-
|
216
|
-
/***/ 6426:
|
217
|
-
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
|
218
|
-
|
219
|
-
var rng = __webpack_require__(9157);
|
220
|
-
var bytesToUuid = __webpack_require__(8725);
|
221
|
-
|
222
|
-
function v4(options, buf, offset) {
|
223
|
-
var i = buf && offset || 0;
|
224
|
-
|
225
|
-
if (typeof(options) == 'string') {
|
226
|
-
buf = options === 'binary' ? new Array(16) : null;
|
227
|
-
options = null;
|
228
|
-
}
|
229
|
-
options = options || {};
|
230
|
-
|
231
|
-
var rnds = options.random || (options.rng || rng)();
|
232
|
-
|
233
|
-
// Per 4.4, set bits for version and `clock_seq_hi_and_reserved`
|
234
|
-
rnds[6] = (rnds[6] & 0x0f) | 0x40;
|
235
|
-
rnds[8] = (rnds[8] & 0x3f) | 0x80;
|
236
|
-
|
237
|
-
// Copy bytes to buffer, if provided
|
238
|
-
if (buf) {
|
239
|
-
for (var ii = 0; ii < 16; ++ii) {
|
240
|
-
buf[i + ii] = rnds[ii];
|
241
|
-
}
|
242
|
-
}
|
243
|
-
|
244
|
-
return buf || bytesToUuid(rnds);
|
245
|
-
}
|
246
|
-
|
247
|
-
module.exports = v4;
|
248
|
-
|
249
|
-
|
250
|
-
/***/ })
|
251
|
-
|
252
|
-
/******/ });
|
253
|
-
/************************************************************************/
|
254
|
-
/******/ // The module cache
|
255
|
-
/******/ var __webpack_module_cache__ = {};
|
256
|
-
/******/
|
257
|
-
/******/ // The require function
|
258
|
-
/******/ function __webpack_require__(moduleId) {
|
259
|
-
/******/ // Check if module is in cache
|
260
|
-
/******/ var cachedModule = __webpack_module_cache__[moduleId];
|
261
|
-
/******/ if (cachedModule !== undefined) {
|
262
|
-
/******/ return cachedModule.exports;
|
263
|
-
/******/ }
|
264
|
-
/******/ // Create a new module (and put it into the cache)
|
265
|
-
/******/ var module = __webpack_module_cache__[moduleId] = {
|
266
|
-
/******/ // no module.id needed
|
267
|
-
/******/ // no module.loaded needed
|
268
|
-
/******/ exports: {}
|
269
|
-
/******/ };
|
270
|
-
/******/
|
271
|
-
/******/ // Execute the module function
|
272
|
-
/******/ __webpack_modules__[moduleId](module, module.exports, __webpack_require__);
|
273
|
-
/******/
|
274
|
-
/******/ // Return the exports of the module
|
275
|
-
/******/ return module.exports;
|
276
|
-
/******/ }
|
9
|
+
/******/ // The require scope
|
10
|
+
/******/ var __webpack_require__ = {};
|
277
11
|
/******/
|
278
12
|
/************************************************************************/
|
279
13
|
/******/ /* webpack/runtime/define property getters */
|
@@ -295,8 +29,6 @@ module.exports = v4;
|
|
295
29
|
/******/
|
296
30
|
/************************************************************************/
|
297
31
|
var __webpack_exports__ = {};
|
298
|
-
// This entry need to be wrapped in an IIFE because it need to be isolated against other modules in the chunk.
|
299
|
-
(() => {
|
300
32
|
|
301
33
|
// EXPORTS
|
302
34
|
__webpack_require__.d(__webpack_exports__, {
|
@@ -1747,6 +1479,7 @@ var use_node_action_this = undefined;
|
|
1747
1479
|
* @returns
|
1748
1480
|
*/
|
1749
1481
|
var getVirtualLines = function getVirtualLines(node) {
|
1482
|
+
var _getNodeAttr;
|
1750
1483
|
if (!props.levelLine) {
|
1751
1484
|
return null;
|
1752
1485
|
}
|
@@ -1755,7 +1488,7 @@ var use_node_action_this = undefined;
|
|
1755
1488
|
'--depth': dpth
|
1756
1489
|
};
|
1757
1490
|
};
|
1758
|
-
var maxDeep = getNodeAttr(node, NODE_ATTRIBUTES.DEPTH) + 1;
|
1491
|
+
var maxDeep = ((_getNodeAttr = getNodeAttr(node, NODE_ATTRIBUTES.DEPTH)) !== null && _getNodeAttr !== void 0 ? _getNodeAttr : 0) + 1;
|
1759
1492
|
return new Array(maxDeep).fill('').map(function (_, index) {
|
1760
1493
|
return index;
|
1761
1494
|
}).filter(function (depth) {
|
@@ -2121,8 +1854,94 @@ var use_search_this = undefined;
|
|
2121
1854
|
showChildNodes: showChildNodes
|
2122
1855
|
};
|
2123
1856
|
});
|
2124
|
-
|
2125
|
-
|
1857
|
+
;// CONCATENATED MODULE: ../../node_modules/uuid/dist/esm-browser/native.js
|
1858
|
+
const randomUUID = typeof crypto !== 'undefined' && crypto.randomUUID && crypto.randomUUID.bind(crypto);
|
1859
|
+
/* harmony default export */ const esm_browser_native = ({
|
1860
|
+
randomUUID
|
1861
|
+
});
|
1862
|
+
;// CONCATENATED MODULE: ../../node_modules/uuid/dist/esm-browser/rng.js
|
1863
|
+
// Unique ID creation requires a high quality random # generator. In the browser we therefore
|
1864
|
+
// require the crypto API and do not support built-in fallback to lower quality random number
|
1865
|
+
// generators (like Math.random()).
|
1866
|
+
let getRandomValues;
|
1867
|
+
const rnds8 = new Uint8Array(16);
|
1868
|
+
function rng() {
|
1869
|
+
// lazy load so that environments that need to polyfill have a chance to do so
|
1870
|
+
if (!getRandomValues) {
|
1871
|
+
// getRandomValues needs to be invoked in a context where "this" is a Crypto implementation.
|
1872
|
+
getRandomValues = typeof crypto !== 'undefined' && crypto.getRandomValues && crypto.getRandomValues.bind(crypto);
|
1873
|
+
|
1874
|
+
if (!getRandomValues) {
|
1875
|
+
throw new Error('crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported');
|
1876
|
+
}
|
1877
|
+
}
|
1878
|
+
|
1879
|
+
return getRandomValues(rnds8);
|
1880
|
+
}
|
1881
|
+
;// CONCATENATED MODULE: ../../node_modules/uuid/dist/esm-browser/stringify.js
|
1882
|
+
|
1883
|
+
/**
|
1884
|
+
* Convert array of 16 byte values to UUID string format of the form:
|
1885
|
+
* XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX
|
1886
|
+
*/
|
1887
|
+
|
1888
|
+
const byteToHex = [];
|
1889
|
+
|
1890
|
+
for (let i = 0; i < 256; ++i) {
|
1891
|
+
byteToHex.push((i + 0x100).toString(16).slice(1));
|
1892
|
+
}
|
1893
|
+
|
1894
|
+
function unsafeStringify(arr, offset = 0) {
|
1895
|
+
// Note: Be careful editing this code! It's been tuned for performance
|
1896
|
+
// and works in ways you may not expect. See https://github.com/uuidjs/uuid/pull/434
|
1897
|
+
return byteToHex[arr[offset + 0]] + byteToHex[arr[offset + 1]] + byteToHex[arr[offset + 2]] + byteToHex[arr[offset + 3]] + '-' + byteToHex[arr[offset + 4]] + byteToHex[arr[offset + 5]] + '-' + byteToHex[arr[offset + 6]] + byteToHex[arr[offset + 7]] + '-' + byteToHex[arr[offset + 8]] + byteToHex[arr[offset + 9]] + '-' + byteToHex[arr[offset + 10]] + byteToHex[arr[offset + 11]] + byteToHex[arr[offset + 12]] + byteToHex[arr[offset + 13]] + byteToHex[arr[offset + 14]] + byteToHex[arr[offset + 15]];
|
1898
|
+
}
|
1899
|
+
|
1900
|
+
function stringify(arr, offset = 0) {
|
1901
|
+
const uuid = unsafeStringify(arr, offset); // Consistency check for valid UUID. If this throws, it's likely due to one
|
1902
|
+
// of the following:
|
1903
|
+
// - One or more input array values don't map to a hex octet (leading to
|
1904
|
+
// "undefined" in the uuid)
|
1905
|
+
// - Invalid input values for the RFC `version` or `variant` fields
|
1906
|
+
|
1907
|
+
if (!validate(uuid)) {
|
1908
|
+
throw TypeError('Stringified UUID is invalid');
|
1909
|
+
}
|
1910
|
+
|
1911
|
+
return uuid;
|
1912
|
+
}
|
1913
|
+
|
1914
|
+
/* harmony default export */ const esm_browser_stringify = ((/* unused pure expression or super */ null && (stringify)));
|
1915
|
+
;// CONCATENATED MODULE: ../../node_modules/uuid/dist/esm-browser/v4.js
|
1916
|
+
|
1917
|
+
|
1918
|
+
|
1919
|
+
|
1920
|
+
function v4(options, buf, offset) {
|
1921
|
+
if (esm_browser_native.randomUUID && !buf && !options) {
|
1922
|
+
return esm_browser_native.randomUUID();
|
1923
|
+
}
|
1924
|
+
|
1925
|
+
options = options || {};
|
1926
|
+
const rnds = options.random || (options.rng || rng)(); // Per 4.4, set bits for version and `clock_seq_hi_and_reserved`
|
1927
|
+
|
1928
|
+
rnds[6] = rnds[6] & 0x0f | 0x40;
|
1929
|
+
rnds[8] = rnds[8] & 0x3f | 0x80; // Copy bytes to buffer, if provided
|
1930
|
+
|
1931
|
+
if (buf) {
|
1932
|
+
offset = offset || 0;
|
1933
|
+
|
1934
|
+
for (let i = 0; i < 16; ++i) {
|
1935
|
+
buf[offset + i] = rnds[i];
|
1936
|
+
}
|
1937
|
+
|
1938
|
+
return buf;
|
1939
|
+
}
|
1940
|
+
|
1941
|
+
return unsafeStringify(rnds);
|
1942
|
+
}
|
1943
|
+
|
1944
|
+
/* harmony default export */ const esm_browser_v4 = (v4);
|
2126
1945
|
;// CONCATENATED MODULE: ../../packages/tree/src/use-tree-init.tsx
|
2127
1946
|
|
2128
1947
|
|
@@ -2191,6 +2010,9 @@ var use_tree_init_this = undefined;
|
|
2191
2010
|
var target = treeSchema.get(node);
|
2192
2011
|
if (Object.prototype.hasOwnProperty.call(target, attrName)) {
|
2193
2012
|
if (typeof callFn === 'function' && Reflect.apply(callFn, self, [target, attrName, attrValue, node])) {
|
2013
|
+
if (target[attrName] === attrValue) {
|
2014
|
+
return;
|
2015
|
+
}
|
2194
2016
|
Object.assign(target, _defineProperty({}, attrName, attrValue));
|
2195
2017
|
loopUpdateNodeAttr(target[NODE_ATTRIBUTES.PARENT], attrName, attrValue, callFn);
|
2196
2018
|
}
|
@@ -2200,9 +2022,9 @@ var use_tree_init_this = undefined;
|
|
2200
2022
|
function getUid(item) {
|
2201
2023
|
var uid = null;
|
2202
2024
|
if (typeof props.nodeKey === 'string') {
|
2203
|
-
uid = item[props.nodeKey] || (
|
2025
|
+
uid = item[props.nodeKey] || esm_browser_v4();
|
2204
2026
|
}
|
2205
|
-
return uid || item[NODE_ATTRIBUTES.UUID] || (
|
2027
|
+
return uid || item[NODE_ATTRIBUTES.UUID] || esm_browser_v4();
|
2206
2028
|
}
|
2207
2029
|
/**
|
2208
2030
|
* 默认设置
|
@@ -2712,7 +2534,5 @@ var use_tree_init_this = undefined;
|
|
2712
2534
|
|
2713
2535
|
var BkTree = (0,external_shared_namespaceObject.withInstall)(tree);
|
2714
2536
|
/* harmony default export */ const src = (BkTree);
|
2715
|
-
})();
|
2716
|
-
|
2717
2537
|
var __webpack_exports__default = __webpack_exports__.Z;
|
2718
2538
|
export { __webpack_exports__default as default };
|
@@ -327,40 +327,35 @@ function getMatchedIndex(maxCount, maxHeight, groupItemCount, callback) {
|
|
327
327
|
diffHeight: diffHeight
|
328
328
|
};
|
329
329
|
}
|
330
|
-
function computedVirtualIndex(lineHeight, callback, pagination,
|
331
|
-
if (!
|
330
|
+
function computedVirtualIndex(lineHeight, callback, pagination, _el, event) {
|
331
|
+
if (!event.target) {
|
332
332
|
return;
|
333
333
|
}
|
334
|
-
var elScrollTop =
|
335
|
-
var elScrollLeft =
|
336
|
-
var
|
337
|
-
|
338
|
-
|
339
|
-
|
340
|
-
endIndex = pagination.endIndex,
|
341
|
-
scrollLeft = pagination.scrollLeft;
|
342
|
-
var offsetHeight = /^\d+(\.\d*)?$/.test(height) ? height : el.offsetHeight;
|
334
|
+
var elScrollTop = event.target.scrollTop;
|
335
|
+
var elScrollLeft = event.target.scrollLeft;
|
336
|
+
var elScrollHeight = event.target.scrollHeight;
|
337
|
+
var elOffsetHeight = event.target.offsetHeight;
|
338
|
+
var count = pagination.count,
|
339
|
+
groupItemCount = pagination.groupItemCount;
|
343
340
|
var targetStartIndex = 0;
|
344
341
|
var targetEndIndex = 0;
|
345
342
|
var translateY = 0;
|
346
343
|
if (typeof lineHeight === 'number') {
|
347
344
|
targetStartIndex = Math.floor(elScrollTop / lineHeight);
|
348
|
-
targetEndIndex = Math.ceil(
|
345
|
+
targetEndIndex = Math.ceil(elOffsetHeight / lineHeight) + targetStartIndex;
|
349
346
|
translateY = elScrollTop % lineHeight;
|
350
347
|
}
|
351
348
|
if (typeof lineHeight === 'function') {
|
352
349
|
var startValue = getMatchedIndex(count, elScrollTop, groupItemCount, lineHeight);
|
353
350
|
targetStartIndex = startValue.startIndex > 0 ? startValue.startIndex : 0;
|
354
351
|
translateY = startValue.diffHeight;
|
355
|
-
var endValue = getMatchedIndex(count,
|
356
|
-
targetEndIndex = endValue.startIndex + targetStartIndex
|
357
|
-
}
|
358
|
-
if (elScrollTop !== scrollTop || targetStartIndex !== startIndex || targetEndIndex !== endIndex || scrollLeft !== elScrollLeft) {
|
359
|
-
var bottom = el.scrollHeight - el.offsetHeight - el.scrollTop;
|
360
|
-
typeof callback === 'function' && callback(event, targetStartIndex, targetEndIndex, elScrollTop, translateY, elScrollLeft, {
|
361
|
-
bottom: bottom >= 0 ? bottom : 0
|
362
|
-
});
|
352
|
+
var endValue = getMatchedIndex(count, elOffsetHeight, groupItemCount, lineHeight);
|
353
|
+
targetEndIndex = endValue.startIndex + targetStartIndex;
|
363
354
|
}
|
355
|
+
var bottom = elScrollHeight - elOffsetHeight - elScrollTop;
|
356
|
+
typeof callback === 'function' && callback(event, targetStartIndex, targetEndIndex, elScrollTop, translateY, elScrollLeft, {
|
357
|
+
bottom: bottom >= 0 ? bottom : 0
|
358
|
+
});
|
364
359
|
return {
|
365
360
|
targetStartIndex: targetStartIndex,
|
366
361
|
targetEndIndex: targetEndIndex,
|
@@ -402,7 +397,6 @@ var VisibleRender = /*#__PURE__*/function () {
|
|
402
397
|
count = pagination.count,
|
403
398
|
scrollTop = pagination.scrollTop,
|
404
399
|
scrollLeft = pagination.scrollLeft;
|
405
|
-
var height = this.binding.height;
|
406
400
|
computedVirtualIndex(lineHeight, handleScrollCallback, {
|
407
401
|
scrollTop: scrollTop,
|
408
402
|
startIndex: startIndex,
|
@@ -410,7 +404,7 @@ var VisibleRender = /*#__PURE__*/function () {
|
|
410
404
|
groupItemCount: groupItemCount,
|
411
405
|
count: count,
|
412
406
|
scrollLeft: scrollLeft
|
413
|
-
}, this.wrapper, e
|
407
|
+
}, this.wrapper, e);
|
414
408
|
}
|
415
409
|
}, {
|
416
410
|
key: "executeThrottledRender",
|
@@ -646,16 +640,31 @@ function virtual_render_objectSpread(target) { for (var i = 1; i < arguments.len
|
|
646
640
|
pos: {},
|
647
641
|
groupItemCount: props.groupItemCount
|
648
642
|
});
|
643
|
+
var calcList = (0,external_vue_namespaceObject.ref)([]);
|
649
644
|
/** 指令触发Scroll事件,计算当前startIndex & endIndex & scrollTop & translateY */
|
650
645
|
var handleScrollCallback = function handleScrollCallback(event, startIndex, endIndex, scrollTop, translateY, scrollLeft, pos) {
|
651
|
-
|
652
|
-
pagination
|
653
|
-
|
654
|
-
|
655
|
-
|
656
|
-
|
657
|
-
|
658
|
-
|
646
|
+
var translateX = scrollLeft;
|
647
|
+
Object.assign(pagination, {
|
648
|
+
startIndex: startIndex,
|
649
|
+
endIndex: endIndex,
|
650
|
+
scrollTop: scrollTop,
|
651
|
+
translateX: translateX,
|
652
|
+
translateY: translateY,
|
653
|
+
scrollLeft: scrollLeft,
|
654
|
+
pos: pos
|
655
|
+
});
|
656
|
+
var start = pagination.startIndex * props.groupItemCount;
|
657
|
+
var end = (pagination.endIndex + props.preloadItemCount) * props.groupItemCount;
|
658
|
+
var total = localList.value.length;
|
659
|
+
if (total < end) {
|
660
|
+
var contentLength = end - start;
|
661
|
+
calcList.value = localList.value.slice(start, total);
|
662
|
+
end = total + 1;
|
663
|
+
start = end - contentLength;
|
664
|
+
start = start < 0 ? 0 : start;
|
665
|
+
}
|
666
|
+
var value = localList.value.slice(start, end + 10);
|
667
|
+
calcList.value = value;
|
659
668
|
if (event) {
|
660
669
|
ctx.emit('content-scroll', [event, pagination]);
|
661
670
|
}
|
@@ -668,12 +677,6 @@ function virtual_render_objectSpread(target) { for (var i = 1; i < arguments.len
|
|
668
677
|
var _instance;
|
669
678
|
(_instance = instance) === null || _instance === void 0 ? void 0 : _instance.uninstall();
|
670
679
|
});
|
671
|
-
var resolveHeight = (0,external_vue_namespaceObject.computed)(function () {
|
672
|
-
if (/^\d+(\.\d*)?(px)?$/.test("".concat(props.height))) {
|
673
|
-
return Number("".concat(props.height).replace(/px$/, ''));
|
674
|
-
}
|
675
|
-
return props.height;
|
676
|
-
});
|
677
680
|
(0,external_vue_namespaceObject.watch)(function () {
|
678
681
|
return [props.lineHeight, props.height, props.list, props.maxHeight];
|
679
682
|
}, function () {
|
@@ -723,15 +726,11 @@ function virtual_render_objectSpread(target) { for (var i = 1; i < arguments.len
|
|
723
726
|
left: 0,
|
724
727
|
top: 0
|
725
728
|
};
|
729
|
+
var el = refRoot.value;
|
726
730
|
(0,external_vue_namespaceObject.nextTick)(function () {
|
727
|
-
|
728
|
-
|
729
|
-
|
730
|
-
targetEndIndex = _computedVirtualIndex.targetEndIndex,
|
731
|
-
elScrollTop = _computedVirtualIndex.elScrollTop,
|
732
|
-
translateY = _computedVirtualIndex.translateY,
|
733
|
-
elScrollLeft = _computedVirtualIndex.elScrollLeft;
|
734
|
-
handleScrollCallback(null, targetStartIndex, targetEndIndex, elScrollTop, translateY, elScrollLeft, {});
|
731
|
+
computedVirtualIndex(props.lineHeight, handleScrollCallback, pagination, el, {
|
732
|
+
target: el
|
733
|
+
});
|
735
734
|
});
|
736
735
|
};
|
737
736
|
/** 映射传入的数组为新的数组,增加 $index属性,用来处理唯一Index */
|
@@ -745,10 +744,6 @@ function virtual_render_objectSpread(target) { for (var i = 1; i < arguments.len
|
|
745
744
|
});
|
746
745
|
});
|
747
746
|
});
|
748
|
-
/** 计算出来的当前页数据 */
|
749
|
-
var calcList = (0,external_vue_namespaceObject.computed)(function () {
|
750
|
-
return localList.value.slice(pagination.startIndex * props.groupItemCount, (pagination.endIndex + props.preloadItemCount) * props.groupItemCount);
|
751
|
-
});
|
752
747
|
/** 展示列表内容区域样式 */
|
753
748
|
var innerContentStyle = (0,external_vue_namespaceObject.computed)(function () {
|
754
749
|
return props.scrollPosition === 'content' ? {
|
@@ -1,4 +1,4 @@
|
|
1
|
-
export declare function computedVirtualIndex(lineHeight: any, callback: any, pagination: any,
|
1
|
+
export declare function computedVirtualIndex(lineHeight: any, callback: any, pagination: any, _el: any, event: any): {
|
2
2
|
targetStartIndex: number;
|
3
3
|
targetEndIndex: number;
|
4
4
|
elScrollTop: any;
|