tntd 2.8.38 → 2.8.40
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/es/_util/hooks/useScrollLock.js +64 -0
- package/es/_util/hooks/useScrollLock.js.map +1 -0
- package/es/array-input/index.js +17 -4
- package/es/array-input/index.js.map +1 -1
- package/es/array-input/index.less +123 -1
- package/es/array-input/utils.js +71 -0
- package/es/array-input/utils.js.map +1 -0
- package/es/ellipsis/index.js +11 -1
- package/es/ellipsis/index.js.map +1 -1
- package/es/page-loading/index.less +4 -4
- package/es/page-loading/loading.gif +0 -0
- package/es/tntd-rc-select/style/index.less +20 -2
- package/es/tooltip/tooltip.js +19 -5
- package/es/tooltip/tooltip.js.map +1 -1
- package/lib/_util/hooks/useScrollLock.d.ts +9 -0
- package/lib/_util/hooks/useScrollLock.d.ts.map +1 -0
- package/lib/_util/hooks/useScrollLock.js +107 -0
- package/lib/_util/hooks/useScrollLock.js.map +1 -0
- package/lib/array-input/index.d.ts.map +1 -1
- package/lib/array-input/index.js +17 -4
- package/lib/array-input/index.js.map +1 -1
- package/lib/array-input/index.less +123 -1
- package/lib/array-input/utils.d.ts +2 -0
- package/lib/array-input/utils.d.ts.map +1 -0
- package/lib/array-input/utils.js +414 -0
- package/lib/array-input/utils.js.map +1 -0
- package/lib/ellipsis/index.d.ts.map +1 -1
- package/lib/ellipsis/index.js +11 -1
- package/lib/ellipsis/index.js.map +1 -1
- package/lib/page-loading/index.less +4 -4
- package/lib/page-loading/loading.gif +0 -0
- package/lib/tntd-rc-select/style/index.less +20 -2
- package/lib/tooltip/tooltip.d.ts +1 -0
- package/lib/tooltip/tooltip.d.ts.map +1 -1
- package/lib/tooltip/tooltip.js +23 -9
- package/lib/tooltip/tooltip.js.map +1 -1
- package/package.json +2 -2
|
@@ -0,0 +1,414 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
function _typeof(o) {
|
|
4
|
+
"@babel/helpers - typeof";
|
|
5
|
+
|
|
6
|
+
return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) {
|
|
7
|
+
return typeof o;
|
|
8
|
+
} : function (o) {
|
|
9
|
+
return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o;
|
|
10
|
+
}, _typeof(o);
|
|
11
|
+
}
|
|
12
|
+
Object.defineProperty(exports, "__esModule", {
|
|
13
|
+
value: true
|
|
14
|
+
});
|
|
15
|
+
exports.validateRules = validateRules;
|
|
16
|
+
var _isObject2 = _interopRequireDefault(require("lodash/isObject"));
|
|
17
|
+
var _isNil2 = _interopRequireDefault(require("lodash/isNil"));
|
|
18
|
+
var _isFunction2 = _interopRequireDefault(require("lodash/isFunction"));
|
|
19
|
+
function _interopRequireDefault(obj) {
|
|
20
|
+
return obj && obj.__esModule ? obj : {
|
|
21
|
+
"default": obj
|
|
22
|
+
};
|
|
23
|
+
}
|
|
24
|
+
function _regeneratorRuntime() {
|
|
25
|
+
"use strict";
|
|
26
|
+
|
|
27
|
+
/*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */
|
|
28
|
+
_regeneratorRuntime = function _regeneratorRuntime() {
|
|
29
|
+
return e;
|
|
30
|
+
};
|
|
31
|
+
var t,
|
|
32
|
+
e = {},
|
|
33
|
+
r = Object.prototype,
|
|
34
|
+
n = r.hasOwnProperty,
|
|
35
|
+
o = Object.defineProperty || function (t, e, r) {
|
|
36
|
+
t[e] = r.value;
|
|
37
|
+
},
|
|
38
|
+
i = "function" == typeof Symbol ? Symbol : {},
|
|
39
|
+
a = i.iterator || "@@iterator",
|
|
40
|
+
c = i.asyncIterator || "@@asyncIterator",
|
|
41
|
+
u = i.toStringTag || "@@toStringTag";
|
|
42
|
+
function define(t, e, r) {
|
|
43
|
+
return Object.defineProperty(t, e, {
|
|
44
|
+
value: r,
|
|
45
|
+
enumerable: !0,
|
|
46
|
+
configurable: !0,
|
|
47
|
+
writable: !0
|
|
48
|
+
}), t[e];
|
|
49
|
+
}
|
|
50
|
+
try {
|
|
51
|
+
define({}, "");
|
|
52
|
+
} catch (t) {
|
|
53
|
+
define = function define(t, e, r) {
|
|
54
|
+
return t[e] = r;
|
|
55
|
+
};
|
|
56
|
+
}
|
|
57
|
+
function wrap(t, e, r, n) {
|
|
58
|
+
var i = e && e.prototype instanceof Generator ? e : Generator,
|
|
59
|
+
a = Object.create(i.prototype),
|
|
60
|
+
c = new Context(n || []);
|
|
61
|
+
return o(a, "_invoke", {
|
|
62
|
+
value: makeInvokeMethod(t, r, c)
|
|
63
|
+
}), a;
|
|
64
|
+
}
|
|
65
|
+
function tryCatch(t, e, r) {
|
|
66
|
+
try {
|
|
67
|
+
return {
|
|
68
|
+
type: "normal",
|
|
69
|
+
arg: t.call(e, r)
|
|
70
|
+
};
|
|
71
|
+
} catch (t) {
|
|
72
|
+
return {
|
|
73
|
+
type: "throw",
|
|
74
|
+
arg: t
|
|
75
|
+
};
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
e.wrap = wrap;
|
|
79
|
+
var h = "suspendedStart",
|
|
80
|
+
l = "suspendedYield",
|
|
81
|
+
f = "executing",
|
|
82
|
+
s = "completed",
|
|
83
|
+
y = {};
|
|
84
|
+
function Generator() {}
|
|
85
|
+
function GeneratorFunction() {}
|
|
86
|
+
function GeneratorFunctionPrototype() {}
|
|
87
|
+
var p = {};
|
|
88
|
+
define(p, a, function () {
|
|
89
|
+
return this;
|
|
90
|
+
});
|
|
91
|
+
var d = Object.getPrototypeOf,
|
|
92
|
+
v = d && d(d(values([])));
|
|
93
|
+
v && v !== r && n.call(v, a) && (p = v);
|
|
94
|
+
var g = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(p);
|
|
95
|
+
function defineIteratorMethods(t) {
|
|
96
|
+
["next", "throw", "return"].forEach(function (e) {
|
|
97
|
+
define(t, e, function (t) {
|
|
98
|
+
return this._invoke(e, t);
|
|
99
|
+
});
|
|
100
|
+
});
|
|
101
|
+
}
|
|
102
|
+
function AsyncIterator(t, e) {
|
|
103
|
+
function invoke(r, o, i, a) {
|
|
104
|
+
var c = tryCatch(t[r], t, o);
|
|
105
|
+
if ("throw" !== c.type) {
|
|
106
|
+
var u = c.arg,
|
|
107
|
+
h = u.value;
|
|
108
|
+
return h && "object" == _typeof(h) && n.call(h, "__await") ? e.resolve(h.__await).then(function (t) {
|
|
109
|
+
invoke("next", t, i, a);
|
|
110
|
+
}, function (t) {
|
|
111
|
+
invoke("throw", t, i, a);
|
|
112
|
+
}) : e.resolve(h).then(function (t) {
|
|
113
|
+
u.value = t, i(u);
|
|
114
|
+
}, function (t) {
|
|
115
|
+
return invoke("throw", t, i, a);
|
|
116
|
+
});
|
|
117
|
+
}
|
|
118
|
+
a(c.arg);
|
|
119
|
+
}
|
|
120
|
+
var r;
|
|
121
|
+
o(this, "_invoke", {
|
|
122
|
+
value: function value(t, n) {
|
|
123
|
+
function callInvokeWithMethodAndArg() {
|
|
124
|
+
return new e(function (e, r) {
|
|
125
|
+
invoke(t, n, e, r);
|
|
126
|
+
});
|
|
127
|
+
}
|
|
128
|
+
return r = r ? r.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg();
|
|
129
|
+
}
|
|
130
|
+
});
|
|
131
|
+
}
|
|
132
|
+
function makeInvokeMethod(e, r, n) {
|
|
133
|
+
var o = h;
|
|
134
|
+
return function (i, a) {
|
|
135
|
+
if (o === f) throw Error("Generator is already running");
|
|
136
|
+
if (o === s) {
|
|
137
|
+
if ("throw" === i) throw a;
|
|
138
|
+
return {
|
|
139
|
+
value: t,
|
|
140
|
+
done: !0
|
|
141
|
+
};
|
|
142
|
+
}
|
|
143
|
+
for (n.method = i, n.arg = a;;) {
|
|
144
|
+
var c = n.delegate;
|
|
145
|
+
if (c) {
|
|
146
|
+
var u = maybeInvokeDelegate(c, n);
|
|
147
|
+
if (u) {
|
|
148
|
+
if (u === y) continue;
|
|
149
|
+
return u;
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
if ("next" === n.method) n.sent = n._sent = n.arg;else if ("throw" === n.method) {
|
|
153
|
+
if (o === h) throw o = s, n.arg;
|
|
154
|
+
n.dispatchException(n.arg);
|
|
155
|
+
} else "return" === n.method && n.abrupt("return", n.arg);
|
|
156
|
+
o = f;
|
|
157
|
+
var p = tryCatch(e, r, n);
|
|
158
|
+
if ("normal" === p.type) {
|
|
159
|
+
if (o = n.done ? s : l, p.arg === y) continue;
|
|
160
|
+
return {
|
|
161
|
+
value: p.arg,
|
|
162
|
+
done: n.done
|
|
163
|
+
};
|
|
164
|
+
}
|
|
165
|
+
"throw" === p.type && (o = s, n.method = "throw", n.arg = p.arg);
|
|
166
|
+
}
|
|
167
|
+
};
|
|
168
|
+
}
|
|
169
|
+
function maybeInvokeDelegate(e, r) {
|
|
170
|
+
var n = r.method,
|
|
171
|
+
o = e.iterator[n];
|
|
172
|
+
if (o === t) return r.delegate = null, "throw" === n && e.iterator["return"] && (r.method = "return", r.arg = t, maybeInvokeDelegate(e, r), "throw" === r.method) || "return" !== n && (r.method = "throw", r.arg = new TypeError("The iterator does not provide a '" + n + "' method")), y;
|
|
173
|
+
var i = tryCatch(o, e.iterator, r.arg);
|
|
174
|
+
if ("throw" === i.type) return r.method = "throw", r.arg = i.arg, r.delegate = null, y;
|
|
175
|
+
var a = i.arg;
|
|
176
|
+
return a ? a.done ? (r[e.resultName] = a.value, r.next = e.nextLoc, "return" !== r.method && (r.method = "next", r.arg = t), r.delegate = null, y) : a : (r.method = "throw", r.arg = new TypeError("iterator result is not an object"), r.delegate = null, y);
|
|
177
|
+
}
|
|
178
|
+
function pushTryEntry(t) {
|
|
179
|
+
var e = {
|
|
180
|
+
tryLoc: t[0]
|
|
181
|
+
};
|
|
182
|
+
1 in t && (e.catchLoc = t[1]), 2 in t && (e.finallyLoc = t[2], e.afterLoc = t[3]), this.tryEntries.push(e);
|
|
183
|
+
}
|
|
184
|
+
function resetTryEntry(t) {
|
|
185
|
+
var e = t.completion || {};
|
|
186
|
+
e.type = "normal", delete e.arg, t.completion = e;
|
|
187
|
+
}
|
|
188
|
+
function Context(t) {
|
|
189
|
+
this.tryEntries = [{
|
|
190
|
+
tryLoc: "root"
|
|
191
|
+
}], t.forEach(pushTryEntry, this), this.reset(!0);
|
|
192
|
+
}
|
|
193
|
+
function values(e) {
|
|
194
|
+
if (e || "" === e) {
|
|
195
|
+
var r = e[a];
|
|
196
|
+
if (r) return r.call(e);
|
|
197
|
+
if ("function" == typeof e.next) return e;
|
|
198
|
+
if (!isNaN(e.length)) {
|
|
199
|
+
var o = -1,
|
|
200
|
+
i = function next() {
|
|
201
|
+
for (; ++o < e.length;) if (n.call(e, o)) return next.value = e[o], next.done = !1, next;
|
|
202
|
+
return next.value = t, next.done = !0, next;
|
|
203
|
+
};
|
|
204
|
+
return i.next = i;
|
|
205
|
+
}
|
|
206
|
+
}
|
|
207
|
+
throw new TypeError(_typeof(e) + " is not iterable");
|
|
208
|
+
}
|
|
209
|
+
return GeneratorFunction.prototype = GeneratorFunctionPrototype, o(g, "constructor", {
|
|
210
|
+
value: GeneratorFunctionPrototype,
|
|
211
|
+
configurable: !0
|
|
212
|
+
}), o(GeneratorFunctionPrototype, "constructor", {
|
|
213
|
+
value: GeneratorFunction,
|
|
214
|
+
configurable: !0
|
|
215
|
+
}), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, u, "GeneratorFunction"), e.isGeneratorFunction = function (t) {
|
|
216
|
+
var e = "function" == typeof t && t.constructor;
|
|
217
|
+
return !!e && (e === GeneratorFunction || "GeneratorFunction" === (e.displayName || e.name));
|
|
218
|
+
}, e.mark = function (t) {
|
|
219
|
+
return Object.setPrototypeOf ? Object.setPrototypeOf(t, GeneratorFunctionPrototype) : (t.__proto__ = GeneratorFunctionPrototype, define(t, u, "GeneratorFunction")), t.prototype = Object.create(g), t;
|
|
220
|
+
}, e.awrap = function (t) {
|
|
221
|
+
return {
|
|
222
|
+
__await: t
|
|
223
|
+
};
|
|
224
|
+
}, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, c, function () {
|
|
225
|
+
return this;
|
|
226
|
+
}), e.AsyncIterator = AsyncIterator, e.async = function (t, r, n, o, i) {
|
|
227
|
+
void 0 === i && (i = Promise);
|
|
228
|
+
var a = new AsyncIterator(wrap(t, r, n, o), i);
|
|
229
|
+
return e.isGeneratorFunction(r) ? a : a.next().then(function (t) {
|
|
230
|
+
return t.done ? t.value : a.next();
|
|
231
|
+
});
|
|
232
|
+
}, defineIteratorMethods(g), define(g, u, "Generator"), define(g, a, function () {
|
|
233
|
+
return this;
|
|
234
|
+
}), define(g, "toString", function () {
|
|
235
|
+
return "[object Generator]";
|
|
236
|
+
}), e.keys = function (t) {
|
|
237
|
+
var e = Object(t),
|
|
238
|
+
r = [];
|
|
239
|
+
for (var n in e) r.push(n);
|
|
240
|
+
return r.reverse(), function next() {
|
|
241
|
+
for (; r.length;) {
|
|
242
|
+
var t = r.pop();
|
|
243
|
+
if (t in e) return next.value = t, next.done = !1, next;
|
|
244
|
+
}
|
|
245
|
+
return next.done = !0, next;
|
|
246
|
+
};
|
|
247
|
+
}, e.values = values, Context.prototype = {
|
|
248
|
+
constructor: Context,
|
|
249
|
+
reset: function reset(e) {
|
|
250
|
+
if (this.prev = 0, this.next = 0, this.sent = this._sent = t, this.done = !1, this.delegate = null, this.method = "next", this.arg = t, this.tryEntries.forEach(resetTryEntry), !e) for (var r in this) "t" === r.charAt(0) && n.call(this, r) && !isNaN(+r.slice(1)) && (this[r] = t);
|
|
251
|
+
},
|
|
252
|
+
stop: function stop() {
|
|
253
|
+
this.done = !0;
|
|
254
|
+
var t = this.tryEntries[0].completion;
|
|
255
|
+
if ("throw" === t.type) throw t.arg;
|
|
256
|
+
return this.rval;
|
|
257
|
+
},
|
|
258
|
+
dispatchException: function dispatchException(e) {
|
|
259
|
+
if (this.done) throw e;
|
|
260
|
+
var r = this;
|
|
261
|
+
function handle(n, o) {
|
|
262
|
+
return a.type = "throw", a.arg = e, r.next = n, o && (r.method = "next", r.arg = t), !!o;
|
|
263
|
+
}
|
|
264
|
+
for (var o = this.tryEntries.length - 1; o >= 0; --o) {
|
|
265
|
+
var i = this.tryEntries[o],
|
|
266
|
+
a = i.completion;
|
|
267
|
+
if ("root" === i.tryLoc) return handle("end");
|
|
268
|
+
if (i.tryLoc <= this.prev) {
|
|
269
|
+
var c = n.call(i, "catchLoc"),
|
|
270
|
+
u = n.call(i, "finallyLoc");
|
|
271
|
+
if (c && u) {
|
|
272
|
+
if (this.prev < i.catchLoc) return handle(i.catchLoc, !0);
|
|
273
|
+
if (this.prev < i.finallyLoc) return handle(i.finallyLoc);
|
|
274
|
+
} else if (c) {
|
|
275
|
+
if (this.prev < i.catchLoc) return handle(i.catchLoc, !0);
|
|
276
|
+
} else {
|
|
277
|
+
if (!u) throw Error("try statement without catch or finally");
|
|
278
|
+
if (this.prev < i.finallyLoc) return handle(i.finallyLoc);
|
|
279
|
+
}
|
|
280
|
+
}
|
|
281
|
+
}
|
|
282
|
+
},
|
|
283
|
+
abrupt: function abrupt(t, e) {
|
|
284
|
+
for (var r = this.tryEntries.length - 1; r >= 0; --r) {
|
|
285
|
+
var o = this.tryEntries[r];
|
|
286
|
+
if (o.tryLoc <= this.prev && n.call(o, "finallyLoc") && this.prev < o.finallyLoc) {
|
|
287
|
+
var i = o;
|
|
288
|
+
break;
|
|
289
|
+
}
|
|
290
|
+
}
|
|
291
|
+
i && ("break" === t || "continue" === t) && i.tryLoc <= e && e <= i.finallyLoc && (i = null);
|
|
292
|
+
var a = i ? i.completion : {};
|
|
293
|
+
return a.type = t, a.arg = e, i ? (this.method = "next", this.next = i.finallyLoc, y) : this.complete(a);
|
|
294
|
+
},
|
|
295
|
+
complete: function complete(t, e) {
|
|
296
|
+
if ("throw" === t.type) throw t.arg;
|
|
297
|
+
return "break" === t.type || "continue" === t.type ? this.next = t.arg : "return" === t.type ? (this.rval = this.arg = t.arg, this.method = "return", this.next = "end") : "normal" === t.type && e && (this.next = e), y;
|
|
298
|
+
},
|
|
299
|
+
finish: function finish(t) {
|
|
300
|
+
for (var e = this.tryEntries.length - 1; e >= 0; --e) {
|
|
301
|
+
var r = this.tryEntries[e];
|
|
302
|
+
if (r.finallyLoc === t) return this.complete(r.completion, r.afterLoc), resetTryEntry(r), y;
|
|
303
|
+
}
|
|
304
|
+
},
|
|
305
|
+
"catch": function _catch(t) {
|
|
306
|
+
for (var e = this.tryEntries.length - 1; e >= 0; --e) {
|
|
307
|
+
var r = this.tryEntries[e];
|
|
308
|
+
if (r.tryLoc === t) {
|
|
309
|
+
var n = r.completion;
|
|
310
|
+
if ("throw" === n.type) {
|
|
311
|
+
var o = n.arg;
|
|
312
|
+
resetTryEntry(r);
|
|
313
|
+
}
|
|
314
|
+
return o;
|
|
315
|
+
}
|
|
316
|
+
}
|
|
317
|
+
throw Error("illegal catch attempt");
|
|
318
|
+
},
|
|
319
|
+
delegateYield: function delegateYield(e, r, n) {
|
|
320
|
+
return this.delegate = {
|
|
321
|
+
iterator: values(e),
|
|
322
|
+
resultName: r,
|
|
323
|
+
nextLoc: n
|
|
324
|
+
}, "next" === this.method && (this.arg = t), y;
|
|
325
|
+
}
|
|
326
|
+
}, e;
|
|
327
|
+
}
|
|
328
|
+
function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {
|
|
329
|
+
try {
|
|
330
|
+
var info = gen[key](arg);
|
|
331
|
+
var value = info.value;
|
|
332
|
+
} catch (error) {
|
|
333
|
+
reject(error);
|
|
334
|
+
return;
|
|
335
|
+
}
|
|
336
|
+
if (info.done) {
|
|
337
|
+
resolve(value);
|
|
338
|
+
} else {
|
|
339
|
+
Promise.resolve(value).then(_next, _throw);
|
|
340
|
+
}
|
|
341
|
+
}
|
|
342
|
+
function _asyncToGenerator(fn) {
|
|
343
|
+
return function () {
|
|
344
|
+
var self = this,
|
|
345
|
+
args = arguments;
|
|
346
|
+
return new Promise(function (resolve, reject) {
|
|
347
|
+
var gen = fn.apply(self, args);
|
|
348
|
+
function _next(value) {
|
|
349
|
+
asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value);
|
|
350
|
+
}
|
|
351
|
+
function _throw(err) {
|
|
352
|
+
asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err);
|
|
353
|
+
}
|
|
354
|
+
_next(undefined);
|
|
355
|
+
});
|
|
356
|
+
};
|
|
357
|
+
}
|
|
358
|
+
function validateRules(rules, value) {
|
|
359
|
+
return new Promise( /*#__PURE__*/function () {
|
|
360
|
+
var _ref = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee(resolve) {
|
|
361
|
+
var i, rule, meg;
|
|
362
|
+
return _regeneratorRuntime().wrap(function _callee$(_context) {
|
|
363
|
+
while (1) switch (_context.prev = _context.next) {
|
|
364
|
+
case 0:
|
|
365
|
+
i = 0;
|
|
366
|
+
case 1:
|
|
367
|
+
if (!(i < rules.length)) {
|
|
368
|
+
_context.next = 17;
|
|
369
|
+
break;
|
|
370
|
+
}
|
|
371
|
+
rule = rules[i];
|
|
372
|
+
if (!((0, _isObject2["default"])(rule) && rule.required)) {
|
|
373
|
+
_context.next = 8;
|
|
374
|
+
break;
|
|
375
|
+
}
|
|
376
|
+
if (!((0, _isNil2["default"])(value) || value === '')) {
|
|
377
|
+
_context.next = 6;
|
|
378
|
+
break;
|
|
379
|
+
}
|
|
380
|
+
return _context.abrupt("return", resolve(rule.message));
|
|
381
|
+
case 6:
|
|
382
|
+
_context.next = 14;
|
|
383
|
+
break;
|
|
384
|
+
case 8:
|
|
385
|
+
if (!(0, _isFunction2["default"])(rule)) {
|
|
386
|
+
_context.next = 14;
|
|
387
|
+
break;
|
|
388
|
+
}
|
|
389
|
+
_context.next = 11;
|
|
390
|
+
return rule(value);
|
|
391
|
+
case 11:
|
|
392
|
+
meg = _context.sent;
|
|
393
|
+
if (!meg) {
|
|
394
|
+
_context.next = 14;
|
|
395
|
+
break;
|
|
396
|
+
}
|
|
397
|
+
return _context.abrupt("return", resolve(meg));
|
|
398
|
+
case 14:
|
|
399
|
+
i++;
|
|
400
|
+
_context.next = 1;
|
|
401
|
+
break;
|
|
402
|
+
case 17:
|
|
403
|
+
resolve(false);
|
|
404
|
+
case 18:
|
|
405
|
+
case "end":
|
|
406
|
+
return _context.stop();
|
|
407
|
+
}
|
|
408
|
+
}, _callee);
|
|
409
|
+
}));
|
|
410
|
+
return function (_x) {
|
|
411
|
+
return _ref.apply(this, arguments);
|
|
412
|
+
};
|
|
413
|
+
}());
|
|
414
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/array-input/utils.js"],"names":[],"mappings":";;;AAAA,mCAAoD;AAEpD,SAAgB,aAAa,CAAC,KAAK,EAAE,KAAK;IACxC,OAAO,IAAI,OAAO,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;QACnC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YACrC,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAA;YACrB,IAAI,IAAA,iBAAQ,EAAC,IAAI,CAAC,IAAI,IAAI,CAAC,QAAQ,EAAE;gBACnC,IAAI,IAAA,cAAK,EAAC,KAAK,CAAC,IAAI,KAAK,KAAK,EAAE,EAAE;oBAChC,OAAO,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;iBAC7B;aACF;iBAAM,IAAI,IAAA,mBAAU,EAAC,IAAI,CAAC,EAAE;gBAC3B,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,CAAA;gBAC7B,IAAI,GAAG,EAAE;oBACP,OAAO,OAAO,CAAC,GAAG,CAAC,CAAA;iBACpB;aACF;SACF;QACD,OAAO,CAAC,KAAK,CAAC,CAAA;IAChB,CAAC,CAAC,CAAA;AACJ,CAAC;AAjBD,sCAiBC","sourcesContent":["import { isFunction, isNil, isObject } from 'lodash'\n\nexport function validateRules(rules, value) {\n return new Promise(async (resolve) => {\n for (let i = 0; i < rules.length; i++) {\n const rule = rules[i]\n if (isObject(rule) && rule.required) {\n if (isNil(value) || value === '') {\n return resolve(rule.message)\n }\n } else if (isFunction(rule)) {\n const meg = await rule(value)\n if (meg) {\n return resolve(meg)\n }\n }\n }\n resolve(false)\n })\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/ellipsis/index.js"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/ellipsis/index.js"],"names":[],"mappings":"AAiCe,yDAoKd"}
|
package/lib/ellipsis/index.js
CHANGED
|
@@ -19,6 +19,7 @@ var _popover2 = _interopRequireDefault(require("../popover"));
|
|
|
19
19
|
var _tooltip = _interopRequireDefault(require("../tooltip"));
|
|
20
20
|
var _CopySVG = _interopRequireDefault(require("./Svg/CopySVG"));
|
|
21
21
|
var _TickSVG = _interopRequireDefault(require("./Svg/TickSVG"));
|
|
22
|
+
var _useScrollLock = _interopRequireDefault(require("../_util/hooks/useScrollLock"));
|
|
22
23
|
require("./index.less");
|
|
23
24
|
function _getRequireWildcardCache(e) {
|
|
24
25
|
if ("function" != typeof WeakMap) return null;
|
|
@@ -135,7 +136,8 @@ var _default = exports["default"] = function _default(props) {
|
|
|
135
136
|
prefix = props.prefix,
|
|
136
137
|
suffix = props.suffix,
|
|
137
138
|
_props$needRefresh = props.needRefresh,
|
|
138
|
-
needRefresh = _props$needRefresh === void 0 ? true : _props$needRefresh
|
|
139
|
+
needRefresh = _props$needRefresh === void 0 ? true : _props$needRefresh,
|
|
140
|
+
enableScrollObserver = props.enableScrollObserver;
|
|
139
141
|
var _useState = (0, _react.useState)(1),
|
|
140
142
|
_useState2 = _slicedToArray(_useState, 2),
|
|
141
143
|
renderId = _useState2[0],
|
|
@@ -160,6 +162,14 @@ var _default = exports["default"] = function _default(props) {
|
|
|
160
162
|
lineHeight = _useState10[0],
|
|
161
163
|
setLineHeight = _useState10[1];
|
|
162
164
|
var elementRef = (0, _react.useRef)();
|
|
165
|
+
var isScrolling = (0, _useScrollLock["default"])({
|
|
166
|
+
enableScrollObserver: enableScrollObserver
|
|
167
|
+
});
|
|
168
|
+
(0, _react.useEffect)(function () {
|
|
169
|
+
if (isScrolling) {
|
|
170
|
+
setTipVisible(false);
|
|
171
|
+
}
|
|
172
|
+
}, [isScrolling]);
|
|
163
173
|
var computeElement = function computeElement() {
|
|
164
174
|
elementRef.current && isEllipsisActive(elementRef.current) ? setFlag(true) : (setFlag(false), setTipVisible(false));
|
|
165
175
|
if (elementRef.current) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/ellipsis/index.js"],"names":[],"mappings":"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","sourcesContent":["/*\n * @Author: 梁洪刚\n * @CreatDate: 2021-03-31 13:57:32\n * @Describe: 省略号组件\n */\n\nimport copy from 'copy-to-clipboard'\nimport React, { useEffect, useLayoutEffect, useRef, useState } from 'react'\n\nimport Popover from '../popover'\nimport Tooltip from '../tooltip'\n\nimport CopySVG from './Svg/CopySVG'\nimport TickSVG from './Svg/TickSVG'\nimport './index.less'\n\nconst tolerance = 0 // In px. Depends on the font you are using\n\nconst isEllipsisActive = (e) => {\n if (e.offsetWidth === e.scrollWidth && e.offsetHeight === e.scrollHeight) {\n let styleStr = 'overflow:visible; '\n if (!e?.parentNode?.getAttribute('style')?.includes('width')) {\n styleStr += 'max-width:100%;'\n }\n e.parentNode.setAttribute('style', styleStr)\n e.setAttribute(\"style\",'overflow:inherit');\n }else {\n e.setAttribute(\"style\", \"\")\n }\n return e.offsetWidth + tolerance < e.scrollWidth || e.offsetHeight < e.scrollHeight\n}\n\nexport default (props) => {\n let {\n _popover = props.Popover, // `Popover` or `Tooltip` ?\n title, // in most cases for `Tooltip`\n content, // in most cases for `Popover`\n className,\n style,\n widthLimit, // width trigger value\n _lines = props.lines !== 1 && props.lines, // number or lines, default 1 line;\n children, // children Node\n emptyText, // default: null\n _copyable = props.copyable, // copy function\n prefix, // 前缀dom\n suffix, // 后缀dom\n needRefresh = true // select.options的情况下不要刷新\n } = props\n\n const [renderId, setRenderId] = useState(1);\n // allow visible or not state\n const [flag, setFlag] = useState(true)\n // visible[Tooltip/Popover] state\n const [tipVisible, setTipVisible] = useState(false)\n // copy animation state\n const [hasCopy, setHasCopy] = useState(false)\n const [lineHeight, setLineHeight] = useState()\n\n const elementRef = useRef()\n\n const computeElement = ()=>{\n elementRef.current && isEllipsisActive(elementRef.current)\n ? setFlag(true)\n : (setFlag(false), setTipVisible(false))\n\n if (elementRef.current) {\n setLineHeight(getComputedStyle(elementRef.current, null).getPropertyValue('line-height'))\n }\n }\n\n useLayoutEffect(()=>{\n if (needRefresh) {\n setRenderId(id => id + 1);\n }else {\n if(renderId < 2) {\n setRenderId(id => id + 1);\n }\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [title, needRefresh, content, children])\n\n useEffect(() => {\n computeElement()\n },[renderId])\n\n useEffect(()=>{\n window.addEventListener(\"resize\",computeElement)\n return ()=>{\n window.removeEventListener('resize',computeElement)\n }\n },[])\n\n // original Node\n const inner = typeof children === 'string' ? children : _popover ? content : title\n\n // for className\n const getClassName = () => {\n return `overflow min-width-0 ${_lines ? 'ellipsis-wrap' : 'ellipsis-nowrap'} ${className || ''}`\n }\n\n // Tooltip.trigger(default 'hover') ==trigger==> onVisibleChange(visible)\n const handleVisibleChange = (visible) => {\n // const { onVisibleChange } = props;\n // onVisibleChange(visible);\n flag && setTipVisible(visible)\n }\n\n // onClick Copy Button\n const handleCopy = (innerText) => {\n copy(innerText)\n setHasCopy(!hasCopy)\n setTimeout(() => {\n setHasCopy(false)\n }, 1000)\n }\n\n const renderNode = () => {\n const popoverNode = (\n <Popover\n {...props}\n content={content || children}\n visible={tipVisible}\n onVisibleChange={(visible) => handleVisibleChange(visible)}\n >\n <div className={className} style={{ WebkitLineClamp: _lines }} ref={elementRef}>\n {children || content}\n </div>\n </Popover>\n )\n\n const tooltipNode = (\n <Tooltip\n {...props}\n title={title || children}\n visible={tipVisible}\n onVisibleChange={(visible) => handleVisibleChange(visible)}\n >\n <div className={className} style={{ WebkitLineClamp: _lines }} ref={elementRef}>\n {children || title}\n </div>\n </Tooltip>\n )\n\n return _popover ? popoverNode : tooltipNode\n }\n\n return (\n <>\n <div\n className=\"tntd-ellipsis\"\n style={{\n ...style,\n maxWidth: widthLimit,\n }}\n >\n {/* prefix */}\n {prefix && prefix}\n {/* content */}\n <div className={getClassName()} key={renderId}>{(inner||inner===0) ? renderNode() : emptyText}</div>\n {/* suffix */}\n {!!suffix && suffix}\n {/* copyable button */}\n {(inner||inner===0) && _copyable && lineHeight && (\n <div\n className=\"svg-button\"\n style={{\n height: lineHeight,\n }}\n onClick={() => handleCopy(elementRef.current.innerText)}\n >\n {!hasCopy ? (\n <CopySVG\n style={{\n height: lineHeight,\n }}\n />\n ) : (\n <TickSVG\n style={{\n height: lineHeight,\n }}\n />\n )}\n </div>\n )}\n </div>\n </>\n )\n}\n"]}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/ellipsis/index.js"],"names":[],"mappings":"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","sourcesContent":["/*\n * @Author: 梁洪刚\n * @CreatDate: 2021-03-31 13:57:32\n * @Describe: 省略号组件\n */\n\nimport copy from 'copy-to-clipboard'\nimport React, { useEffect, useLayoutEffect, useRef, useState } from 'react'\n\nimport Popover from '../popover'\nimport Tooltip from '../tooltip'\n\nimport CopySVG from './Svg/CopySVG'\nimport TickSVG from './Svg/TickSVG'\nimport useScrollLock from '../_util/hooks/useScrollLock'\nimport './index.less'\n\nconst tolerance = 0 // In px. Depends on the font you are using\n\nconst isEllipsisActive = (e) => {\n if (e.offsetWidth === e.scrollWidth && e.offsetHeight === e.scrollHeight) {\n let styleStr = 'overflow:visible; '\n if (!e?.parentNode?.getAttribute('style')?.includes('width')) {\n styleStr += 'max-width:100%;'\n }\n e.parentNode.setAttribute('style', styleStr)\n e.setAttribute(\"style\",'overflow:inherit');\n }else {\n e.setAttribute(\"style\", \"\")\n }\n return e.offsetWidth + tolerance < e.scrollWidth || e.offsetHeight < e.scrollHeight\n}\n\nexport default (props) => {\n let {\n _popover = props.Popover, // `Popover` or `Tooltip` ?\n title, // in most cases for `Tooltip`\n content, // in most cases for `Popover`\n className,\n style,\n widthLimit, // width trigger value\n _lines = props.lines !== 1 && props.lines, // number or lines, default 1 line;\n children, // children Node\n emptyText, // default: null\n _copyable = props.copyable, // copy function\n prefix, // 前缀dom\n suffix, // 后缀dom\n needRefresh = true, \n enableScrollObserver// select.options的情况下不要刷新\n } = props\n\n const [renderId, setRenderId] = useState(1);\n // allow visible or not state\n const [flag, setFlag] = useState(true)\n // visible[Tooltip/Popover] state\n const [tipVisible, setTipVisible] = useState(false)\n // copy animation state\n const [hasCopy, setHasCopy] = useState(false)\n const [lineHeight, setLineHeight] = useState()\n\n const elementRef = useRef()\n\n const isScrolling = useScrollLock({enableScrollObserver});\n useEffect(()=>{\n if(isScrolling) {\n setTipVisible(false)\n }\n },[isScrolling])\n \n const computeElement = ()=>{\n elementRef.current && isEllipsisActive(elementRef.current)\n ? setFlag(true)\n : (setFlag(false), setTipVisible(false))\n\n if (elementRef.current) {\n setLineHeight(getComputedStyle(elementRef.current, null).getPropertyValue('line-height'))\n }\n }\n\n useLayoutEffect(()=>{\n if (needRefresh) {\n setRenderId(id => id + 1);\n }else {\n if(renderId < 2) {\n setRenderId(id => id + 1);\n }\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [title, needRefresh, content, children])\n\n useEffect(() => {\n computeElement()\n },[renderId])\n\n useEffect(()=>{\n window.addEventListener(\"resize\",computeElement)\n return ()=>{\n window.removeEventListener('resize',computeElement)\n }\n },[])\n\n // original Node\n const inner = typeof children === 'string' ? children : _popover ? content : title\n\n // for className\n const getClassName = () => {\n return `overflow min-width-0 ${_lines ? 'ellipsis-wrap' : 'ellipsis-nowrap'} ${className || ''}`\n }\n\n // Tooltip.trigger(default 'hover') ==trigger==> onVisibleChange(visible)\n const handleVisibleChange = (visible) => {\n // const { onVisibleChange } = props;\n // onVisibleChange(visible);\n flag && setTipVisible(visible)\n }\n\n // onClick Copy Button\n const handleCopy = (innerText) => {\n copy(innerText)\n setHasCopy(!hasCopy)\n setTimeout(() => {\n setHasCopy(false)\n }, 1000)\n }\n\n const renderNode = () => {\n const popoverNode = (\n <Popover\n {...props}\n content={content || children}\n visible={tipVisible}\n onVisibleChange={(visible) => handleVisibleChange(visible)}\n >\n <div className={className} style={{ WebkitLineClamp: _lines }} ref={elementRef}>\n {children || content}\n </div>\n </Popover>\n )\n\n const tooltipNode = (\n <Tooltip\n {...props}\n title={title || children}\n visible={tipVisible}\n onVisibleChange={(visible) => handleVisibleChange(visible)}\n >\n <div className={className} style={{ WebkitLineClamp: _lines }} ref={elementRef}>\n {children || title}\n </div>\n </Tooltip>\n )\n\n return _popover ? popoverNode : tooltipNode\n }\n\n return (\n <>\n <div\n className=\"tntd-ellipsis\"\n style={{\n ...style,\n maxWidth: widthLimit,\n }}\n >\n {/* prefix */}\n {prefix && prefix}\n {/* content */}\n <div className={getClassName()} key={renderId}>{(inner||inner===0) ? renderNode() : emptyText}</div>\n {/* suffix */}\n {!!suffix && suffix}\n {/* copyable button */}\n {(inner||inner===0) && _copyable && lineHeight && (\n <div\n className=\"svg-button\"\n style={{\n height: lineHeight,\n }}\n onClick={() => handleCopy(elementRef.current.innerText)}\n >\n {!hasCopy ? (\n <CopySVG\n style={{\n height: lineHeight,\n }}\n />\n ) : (\n <TickSVG\n style={{\n height: lineHeight,\n }}\n />\n )}\n </div>\n )}\n </div>\n </>\n )\n}\n"]}
|
|
@@ -10,8 +10,8 @@
|
|
|
10
10
|
position: absolute;
|
|
11
11
|
top: 45%;
|
|
12
12
|
left: 50%;
|
|
13
|
-
width:
|
|
14
|
-
height:
|
|
13
|
+
width: 51px;
|
|
14
|
+
height: 64px;
|
|
15
15
|
background-size: 100% 100%;
|
|
16
16
|
transform: translate(-50%, -50%);
|
|
17
17
|
background-repeat: no-repeat;
|
|
@@ -21,7 +21,7 @@
|
|
|
21
21
|
span {
|
|
22
22
|
position: absolute;
|
|
23
23
|
left: 50%;
|
|
24
|
-
bottom:
|
|
24
|
+
bottom: -17px;
|
|
25
25
|
transform: translate(-50%, 0);
|
|
26
26
|
width: 100%;
|
|
27
27
|
font-size: 12px;
|
|
@@ -35,4 +35,4 @@
|
|
|
35
35
|
color: #fff;
|
|
36
36
|
}
|
|
37
37
|
}
|
|
38
|
-
}
|
|
38
|
+
}
|
|
Binary file
|
|
@@ -1338,7 +1338,7 @@
|
|
|
1338
1338
|
.tntd-rc-select:not(.tntd-rc-select-customize-input) .tntd-rc-select-selector {
|
|
1339
1339
|
position: relative;
|
|
1340
1340
|
background-color: #fff;
|
|
1341
|
-
border: 1px solid
|
|
1341
|
+
border: 1px solid #c9d2dd;
|
|
1342
1342
|
border-radius: 2px;
|
|
1343
1343
|
transition: all 0.3s cubic-bezier(0.645, 0.045, 0.355, 1);
|
|
1344
1344
|
}
|
|
@@ -1446,7 +1446,7 @@
|
|
|
1446
1446
|
align-items: center;
|
|
1447
1447
|
height: 12px;
|
|
1448
1448
|
margin-top: -6px;
|
|
1449
|
-
color: rgba(
|
|
1449
|
+
color: rgba(23, 35, 61, 0.3);
|
|
1450
1450
|
font-size: 12px;
|
|
1451
1451
|
line-height: 1;
|
|
1452
1452
|
text-align: center;
|
|
@@ -1767,3 +1767,21 @@
|
|
|
1767
1767
|
.tntd-rc-select:not(.tntd-rc-select-customize-input) .tntd-rc-select-selector {
|
|
1768
1768
|
border-radius: @border-radius-base;
|
|
1769
1769
|
}
|
|
1770
|
+
|
|
1771
|
+
.has-error{
|
|
1772
|
+
.tntd-rc-select:not(.tntd-rc-select-customize-input) .tntd-rc-select-selector {
|
|
1773
|
+
border-color: @red-5;
|
|
1774
|
+
box-shadow: none ;
|
|
1775
|
+
}
|
|
1776
|
+
|
|
1777
|
+
.tntd-rc-select-focused:not(.tntd-rc-select-disabled).tntd-rc-select:not(
|
|
1778
|
+
.tntd-rc-select-customize-input
|
|
1779
|
+
) .tntd-rc-select-selector {
|
|
1780
|
+
border-color: @red-5;
|
|
1781
|
+
box-shadow: none;
|
|
1782
|
+
}
|
|
1783
|
+
|
|
1784
|
+
.tntd-rc-select-arrow{
|
|
1785
|
+
color: @red-5;
|
|
1786
|
+
}
|
|
1787
|
+
}
|
package/lib/tooltip/tooltip.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tooltip.d.ts","sourceRoot":"","sources":["../../src/tooltip/tooltip.tsx"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"tooltip.d.ts","sourceRoot":"","sources":["../../src/tooltip/tooltip.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAkB,MAAM,OAAO,CAAA;AACtC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAA;AAMnD,cAAc,iBAAiB,CAAA;AAK/B,QAAA,MAAM,OAAO,EAAE,KAAK,CAAC,EAAE,CACrB,YAAY,GAAG;IAAE,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,OAAO,CAAC;IAAC,oBAAoB,CAAC,EAAE,OAAO,CAAA;CAAE,CA6CzF,CAAA;AAED,eAAe,OAAO,CAAA"}
|
package/lib/tooltip/tooltip.js
CHANGED
|
@@ -14,8 +14,9 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
14
14
|
});
|
|
15
15
|
var _exportNames = {};
|
|
16
16
|
exports["default"] = void 0;
|
|
17
|
-
var _react =
|
|
17
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
18
18
|
var _configProvider = require("../config-provider");
|
|
19
|
+
var _useScrollLock = _interopRequireDefault(require("../_util/hooks/useScrollLock"));
|
|
19
20
|
var _tooltip = _interopRequireWildcard(require("antd/lib/tooltip"));
|
|
20
21
|
Object.keys(_tooltip).forEach(function (key) {
|
|
21
22
|
if (key === "default" || key === "__esModule") return;
|
|
@@ -29,6 +30,11 @@ Object.keys(_tooltip).forEach(function (key) {
|
|
|
29
30
|
});
|
|
30
31
|
});
|
|
31
32
|
var _classnames = _interopRequireDefault(require("classnames"));
|
|
33
|
+
function _interopRequireDefault(obj) {
|
|
34
|
+
return obj && obj.__esModule ? obj : {
|
|
35
|
+
"default": obj
|
|
36
|
+
};
|
|
37
|
+
}
|
|
32
38
|
function _getRequireWildcardCache(e) {
|
|
33
39
|
if ("function" != typeof WeakMap) return null;
|
|
34
40
|
var r = new WeakMap(),
|
|
@@ -54,11 +60,6 @@ function _interopRequireWildcard(e, r) {
|
|
|
54
60
|
}
|
|
55
61
|
return n["default"] = e, t && t.set(e, n), n;
|
|
56
62
|
}
|
|
57
|
-
function _interopRequireDefault(obj) {
|
|
58
|
-
return obj && obj.__esModule ? obj : {
|
|
59
|
-
"default": obj
|
|
60
|
-
};
|
|
61
|
-
}
|
|
62
63
|
var __rest = void 0 && (void 0).__rest || function (s, e) {
|
|
63
64
|
var t = {};
|
|
64
65
|
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
|
|
@@ -76,13 +77,26 @@ var Tooltip = function Tooltip(props) {
|
|
|
76
77
|
theme = _props$theme === void 0 ? '' : _props$theme,
|
|
77
78
|
_props$hiddenArrow = props.hiddenArrow,
|
|
78
79
|
hiddenArrow = _props$hiddenArrow === void 0 ? false : _props$hiddenArrow,
|
|
79
|
-
|
|
80
|
+
enableScrollObserver = props.enableScrollObserver,
|
|
81
|
+
restProps = __rest(props, ["overlayClassName", "theme", "hiddenArrow", "enableScrollObserver"]);
|
|
82
|
+
var isScrolling = (0, _useScrollLock["default"])({
|
|
83
|
+
enableScrollObserver: enableScrollObserver
|
|
84
|
+
});
|
|
85
|
+
var MOUSE_ENTER_DELAY_WHILE_SCROLLING = 9999;
|
|
86
|
+
var DEFAULT_MOUSE_ENTER_DELAY = 0.1;
|
|
87
|
+
var visibleInfo = (0, _react.useMemo)(function () {
|
|
88
|
+
return isScrolling ? {
|
|
89
|
+
visible: false
|
|
90
|
+
} : {};
|
|
91
|
+
}, [isScrolling]);
|
|
80
92
|
return _react["default"].createElement(_configProvider.ConfigConsumer, null, function (_ref) {
|
|
81
93
|
var getPrefixCls = _ref.getPrefixCls;
|
|
82
94
|
var prefixCls = getPrefixCls('tooltip');
|
|
83
95
|
return _react["default"].createElement(_tooltip["default"], Object.assign({
|
|
84
|
-
overlayClassName: (0, _classnames["default"])(prefixCls, 'tnt-tooltip', themeMap(prefixCls, theme), hiddenArrow ? prefixCls
|
|
85
|
-
}, restProps
|
|
96
|
+
overlayClassName: (0, _classnames["default"])(prefixCls, 'tnt-tooltip', themeMap(prefixCls, theme), hiddenArrow ? "".concat(prefixCls, "-arrow-hidden") : '', overlayClassName)
|
|
97
|
+
}, restProps, {
|
|
98
|
+
mouseEnterDelay: isScrolling ? MOUSE_ENTER_DELAY_WHILE_SCROLLING : restProps.mouseEnterDelay || DEFAULT_MOUSE_ENTER_DELAY
|
|
99
|
+
}, visibleInfo));
|
|
86
100
|
});
|
|
87
101
|
};
|
|
88
102
|
var _default = exports["default"] = Tooltip;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tooltip.js","sourceRoot":"","sources":["../../src/tooltip/tooltip.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"tooltip.js","sourceRoot":"","sources":["../../src/tooltip/tooltip.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+CAAsC;AAEtC,wDAAmD;AACnD,iFAAwD;AACxD,8DAAyC;AACzC,4DAAmC;AAEnC,kDAA+B;AAC/B,MAAM,QAAQ,GAAG,CAAC,SAAiB,EAAE,UAAkB,EAAE,EAAE;IACzD,OAAO,GAAG,SAAS,IAAI,UAAU,EAAE,CAAA;AACrC,CAAC,CAAA;AAED,MAAM,OAAO,GAET,CAAC,KAAK,EAAE,EAAE;IACZ,MAAM,EACJ,gBAAgB,EAChB,KAAK,GAAG,EAAE,EACV,WAAW,GAAG,KAAK,EACnB,oBAAoB,KAElB,KAAK,EADJ,SAAS,UACV,KAAK,EANH,oEAML,CAAQ,CAAA;IAET,MAAM,WAAW,GAAG,IAAA,uBAAa,EAAC,EAAE,oBAAoB,EAAE,CAAC,CAAA;IAE3D,MAAM,iCAAiC,GAAG,IAAI,CAAA;IAC9C,MAAM,yBAAyB,GAAG,GAAG,CAAA;IAErC,MAAM,WAAW,GAAG,IAAA,eAAO,EAAC,GAAG,EAAE;QAC/B,OAAO,WAAW,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAA;IAC9C,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,CAAA;IAEjB,OAAO,CACL,8BAAC,gCAAc,QACZ,CAAC,EAAE,YAAY,EAAE,EAAE,EAAE;QACpB,MAAM,SAAS,GAAG,YAAY,CAAC,SAAS,CAAC,CAAA;QAEzC,OAAO,CACL,8BAAC,iBAAW,kBACV,gBAAgB,EAAE,IAAA,oBAAU,EAC1B,SAAS,EACT,aAAa,EACb,QAAQ,CAAC,SAAS,EAAE,KAAK,CAAC,EAC1B,WAAW,CAAC,CAAC,CAAC,GAAG,SAAS,eAAe,CAAC,CAAC,CAAC,EAAE,EAC9C,gBAAgB,CACjB,IACG,SAAS,IACb,eAAe,EACb,WAAW;gBACT,CAAC,CAAC,iCAAiC;gBACnC,CAAC,CAAC,SAAS,CAAC,eAAe,IAAI,yBAAyB,IAExD,WAAW,EACf,CACH,CAAA;IACH,CAAC,CACc,CAClB,CAAA;AACH,CAAC,CAAA;AAED,kBAAe,OAAO,CAAA","sourcesContent":["import React, { useMemo } from 'react'\nimport type { TooltipProps } from 'antd/lib/tooltip'\nimport { ConfigConsumer } from '../config-provider'\nimport useScrollLock from '../_util/hooks/useScrollLock'\nimport AntdTooltip from 'antd/lib/tooltip'\nimport classNames from 'classnames'\n\nexport * from 'antd/lib/tooltip'\nconst themeMap = (prefixCls: string, themeColor: string) => {\n return `${prefixCls}-${themeColor}`\n}\n\nconst Tooltip: React.FC<\n TooltipProps & { theme?: string; hiddenArrow?: boolean; enableScrollObserver?: boolean }\n> = (props) => {\n const {\n overlayClassName,\n theme = '',\n hiddenArrow = false,\n enableScrollObserver,\n ...restProps\n } = props\n\n const isScrolling = useScrollLock({ enableScrollObserver })\n\n const MOUSE_ENTER_DELAY_WHILE_SCROLLING = 9999\n const DEFAULT_MOUSE_ENTER_DELAY = 0.1\n\n const visibleInfo = useMemo(() => {\n return isScrolling ? { visible: false } : {}\n }, [isScrolling])\n\n return (\n <ConfigConsumer>\n {({ getPrefixCls }) => {\n const prefixCls = getPrefixCls('tooltip')\n\n return (\n <AntdTooltip\n overlayClassName={classNames(\n prefixCls,\n 'tnt-tooltip',\n themeMap(prefixCls, theme),\n hiddenArrow ? `${prefixCls}-arrow-hidden` : '',\n overlayClassName\n )}\n {...restProps}\n mouseEnterDelay={\n isScrolling\n ? MOUSE_ENTER_DELAY_WHILE_SCROLLING\n : restProps.mouseEnterDelay || DEFAULT_MOUSE_ENTER_DELAY\n } // 滚动期间延迟触发\n {...visibleInfo} // 滚动时隐藏 tooltip\n />\n )\n }}\n </ConfigConsumer>\n )\n}\n\nexport default Tooltip\n"]}
|