rsuite 5.79.0 → 5.79.1
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/CHANGELOG.md +9 -0
- package/cjs/List/List.js +6 -2
- package/cjs/List/helper/useSortHelper.d.ts +7 -5
- package/cjs/List/helper/useSortHelper.js +109 -16
- package/cjs/List/helper/utils.js +15 -7
- package/dist/rsuite.js +5 -5
- package/dist/rsuite.min.js +1 -1
- package/dist/rsuite.min.js.map +1 -1
- package/esm/List/List.js +6 -2
- package/esm/List/helper/useSortHelper.d.ts +7 -5
- package/esm/List/helper/useSortHelper.js +109 -16
- package/esm/List/helper/utils.js +15 -7
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,12 @@
|
|
|
1
|
+
## [5.79.1](https://github.com/rsuite/rsuite/compare/v5.79.0...v5.79.1) (2025-04-03)
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
### Bug Fixes
|
|
5
|
+
|
|
6
|
+
* **List:** fix sorting issue on mobile devices ([#4215](https://github.com/rsuite/rsuite/issues/4215)) ([5b74d8b](https://github.com/rsuite/rsuite/commit/5b74d8b6e09e3d662e63f0c437a28585f2535a94))
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
|
|
1
10
|
# [5.79.0](https://github.com/rsuite/rsuite/compare/v5.78.1...v5.79.0) (2025-03-26)
|
|
2
11
|
|
|
3
12
|
|
package/cjs/List/List.js
CHANGED
|
@@ -65,7 +65,9 @@ var List = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
65
65
|
register = _useSortHelper.register,
|
|
66
66
|
sorting = _useSortHelper.sorting,
|
|
67
67
|
handleEnd = _useSortHelper.handleEnd,
|
|
68
|
-
handleStart = _useSortHelper.handleStart
|
|
68
|
+
handleStart = _useSortHelper.handleStart,
|
|
69
|
+
handleTouchStart = _useSortHelper.handleTouchStart,
|
|
70
|
+
handleTouchEnd = _useSortHelper.handleTouchEnd;
|
|
69
71
|
var classes = merge(className, withClassPrefix({
|
|
70
72
|
bordered: bordered,
|
|
71
73
|
sortable: sortable,
|
|
@@ -86,7 +88,9 @@ var List = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
86
88
|
ref: (0, _utils.mergeRefs)(containerRef, ref),
|
|
87
89
|
className: classes,
|
|
88
90
|
onMouseDown: sortable ? handleStart : undefined,
|
|
89
|
-
onMouseUp: sortable ? handleEnd : undefined
|
|
91
|
+
onMouseUp: sortable ? handleEnd : undefined,
|
|
92
|
+
onTouchStart: sortable ? handleTouchStart : undefined,
|
|
93
|
+
onTouchEnd: sortable ? handleTouchEnd : undefined
|
|
90
94
|
}), /*#__PURE__*/_react.default.createElement(_ListContext.default.Provider, {
|
|
91
95
|
value: contextValue
|
|
92
96
|
}, children));
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { MouseEventHandler } from 'react';
|
|
1
|
+
import { MouseEventHandler, TouchEventHandler } from 'react';
|
|
2
2
|
import { Collection, ManagedItem } from './useManager';
|
|
3
3
|
export interface MovedItemInfo {
|
|
4
4
|
collection: Collection;
|
|
@@ -10,14 +10,16 @@ export type SortConfig = {
|
|
|
10
10
|
autoScroll?: boolean;
|
|
11
11
|
pressDelay?: number;
|
|
12
12
|
transitionDuration?: number;
|
|
13
|
-
onSortStart?(payload?: MovedItemInfo, event?: MouseEvent): void;
|
|
14
|
-
onSortMove?(payload?: MovedItemInfo, event?: MouseEvent): void;
|
|
15
|
-
onSortEnd?(payload?: MovedItemInfo, event?: MouseEvent): void;
|
|
16
|
-
onSort?(payload?: MovedItemInfo, event?: MouseEvent): void;
|
|
13
|
+
onSortStart?(payload?: MovedItemInfo, event?: MouseEvent | TouchEvent): void;
|
|
14
|
+
onSortMove?(payload?: MovedItemInfo, event?: MouseEvent | TouchEvent): void;
|
|
15
|
+
onSortEnd?(payload?: MovedItemInfo, event?: MouseEvent | TouchEvent): void;
|
|
16
|
+
onSort?(payload?: MovedItemInfo, event?: MouseEvent | TouchEvent): void;
|
|
17
17
|
};
|
|
18
18
|
declare const useSortHelper: (config: SortConfig) => {
|
|
19
19
|
handleStart: MouseEventHandler<Element>;
|
|
20
20
|
handleEnd: MouseEventHandler<Element>;
|
|
21
|
+
handleTouchStart: TouchEventHandler<Element>;
|
|
22
|
+
handleTouchEnd: TouchEventHandler<Element>;
|
|
21
23
|
containerRef: import("react").RefObject<HTMLDivElement>;
|
|
22
24
|
sorting: boolean;
|
|
23
25
|
register: (item: ManagedItem) => {
|
|
@@ -37,7 +37,7 @@ var useSortHelper = function useSortHelper(config) {
|
|
|
37
37
|
/**
|
|
38
38
|
* start dragging
|
|
39
39
|
* */
|
|
40
|
-
var handlePress = (0, _react.useCallback)(function (
|
|
40
|
+
var handlePress = (0, _react.useCallback)(function (event, _targetNode, curManagedItem) {
|
|
41
41
|
var _curManagedItem$info$, _curManagedItem$info$2, _activeNodeHelper;
|
|
42
42
|
if (!isMounted()) return;
|
|
43
43
|
// data
|
|
@@ -51,6 +51,13 @@ var useSortHelper = function useSortHelper(config) {
|
|
|
51
51
|
};
|
|
52
52
|
var animatedNodesOffset = []; // all list item offset
|
|
53
53
|
|
|
54
|
+
// Get initial position from event
|
|
55
|
+
var isTouchEvent = 'touches' in event;
|
|
56
|
+
var initialPosition = {
|
|
57
|
+
pageX: isTouchEvent ? event.touches[0].pageX : event.pageX,
|
|
58
|
+
pageY: isTouchEvent ? event.touches[0].pageY : event.pageY
|
|
59
|
+
};
|
|
60
|
+
|
|
54
61
|
// init scroller
|
|
55
62
|
var scrollContainer = (0, _utils.getScrollingParent)(containerElement) || containerElement;
|
|
56
63
|
var initScroll = {
|
|
@@ -92,17 +99,31 @@ var useSortHelper = function useSortHelper(config) {
|
|
|
92
99
|
y: 0
|
|
93
100
|
});
|
|
94
101
|
};
|
|
95
|
-
|
|
102
|
+
|
|
103
|
+
// Common handler for both mouse and touch move events
|
|
104
|
+
var handleSortMove = function handleSortMove(moveEvent) {
|
|
105
|
+
// Prevent default to stop page scrolling during touch drag
|
|
106
|
+
if ('touches' in moveEvent) {
|
|
107
|
+
moveEvent.preventDefault();
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
// Get current position from event
|
|
111
|
+
var isTouchMoveEvent = 'touches' in moveEvent;
|
|
112
|
+
var currentPosition = {
|
|
113
|
+
pageX: isTouchMoveEvent ? moveEvent.touches[0].pageX : moveEvent.pageX,
|
|
114
|
+
pageY: isTouchMoveEvent ? moveEvent.touches[0].pageY : moveEvent.pageY
|
|
115
|
+
};
|
|
116
|
+
|
|
96
117
|
// Update helper position
|
|
97
118
|
var offset = {
|
|
98
|
-
x:
|
|
99
|
-
y:
|
|
119
|
+
x: currentPosition.pageX,
|
|
120
|
+
y: currentPosition.pageY
|
|
100
121
|
};
|
|
101
122
|
var containerScrollDelta = getContainerScrollDelta();
|
|
102
123
|
var containerBoundingRect = scrollContainer.getBoundingClientRect();
|
|
103
124
|
activeNodeHolderTranslate = {
|
|
104
|
-
x: offset.x -
|
|
105
|
-
y: offset.y -
|
|
125
|
+
x: offset.x - initialPosition.pageX,
|
|
126
|
+
y: offset.y - initialPosition.pageY
|
|
106
127
|
};
|
|
107
128
|
if (activeNodeHelper) {
|
|
108
129
|
(0, _utils.setTranslate3d)(activeNodeHelper, activeNodeHolderTranslate);
|
|
@@ -202,14 +223,22 @@ var useSortHelper = function useSortHelper(config) {
|
|
|
202
223
|
node: activeNode,
|
|
203
224
|
oldIndex: activeNodeOldIndex,
|
|
204
225
|
newIndex: activeNodeNextIndex
|
|
205
|
-
},
|
|
206
|
-
}
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
var
|
|
226
|
+
}, moveEvent);
|
|
227
|
+
};
|
|
228
|
+
|
|
229
|
+
// Common handler for both mouse and touch end events
|
|
230
|
+
var handleSortEnd = function handleSortEnd(endEvent) {
|
|
231
|
+
var _sortTouchMoveListene, _sortTouchEndListener;
|
|
210
232
|
// Remove the event listeners
|
|
211
233
|
sortMouseMoveListener.off();
|
|
212
234
|
sortMouseEndListener.off();
|
|
235
|
+
(_sortTouchMoveListene = sortTouchMoveListener) === null || _sortTouchMoveListene === void 0 || _sortTouchMoveListene.off();
|
|
236
|
+
(_sortTouchEndListener = sortTouchEndListener) === null || _sortTouchEndListener === void 0 || _sortTouchEndListener.off();
|
|
237
|
+
|
|
238
|
+
// Enable page scrolling again
|
|
239
|
+
if (document.body.style.overflow === 'hidden') {
|
|
240
|
+
document.body.style.overflow = '';
|
|
241
|
+
}
|
|
213
242
|
var holderTranslate = getHolderTranslate();
|
|
214
243
|
var containerScrollDelta = getContainerScrollDelta();
|
|
215
244
|
if (activeNodeHelper) {
|
|
@@ -256,12 +285,33 @@ var useSortHelper = function useSortHelper(config) {
|
|
|
256
285
|
newIndex: activeNodeNextIndex,
|
|
257
286
|
oldIndex: activeNodeOldIndex
|
|
258
287
|
};
|
|
259
|
-
onSortEnd === null || onSortEnd === void 0 || onSortEnd(callbackPayload,
|
|
260
|
-
onSort === null || onSort === void 0 || onSort(callbackPayload,
|
|
288
|
+
onSortEnd === null || onSortEnd === void 0 || onSortEnd(callbackPayload, endEvent);
|
|
289
|
+
onSort === null || onSort === void 0 || onSort(callbackPayload, endEvent);
|
|
261
290
|
}, transitionDuration);
|
|
262
|
-
}
|
|
291
|
+
};
|
|
292
|
+
|
|
293
|
+
// Set up mouse event listeners
|
|
294
|
+
var sortMouseMoveListener = (0, _on.default)(window, 'mousemove', handleSortMove, {
|
|
295
|
+
passive: false
|
|
296
|
+
});
|
|
297
|
+
var sortMouseEndListener = (0, _on.default)(window, 'mouseup', handleSortEnd, {
|
|
263
298
|
passive: false
|
|
264
299
|
});
|
|
300
|
+
|
|
301
|
+
// Set up touch event listeners
|
|
302
|
+
var sortTouchMoveListener;
|
|
303
|
+
var sortTouchEndListener;
|
|
304
|
+
if (isTouchEvent) {
|
|
305
|
+
// Disable page scrolling during touch drag
|
|
306
|
+
document.body.style.overflow = 'hidden';
|
|
307
|
+
sortTouchMoveListener = (0, _on.default)(window, 'touchmove', handleSortMove, {
|
|
308
|
+
passive: false
|
|
309
|
+
} // Important: passive: false allows preventDefault() to work
|
|
310
|
+
);
|
|
311
|
+
sortTouchEndListener = (0, _on.default)(window, 'touchend', handleSortEnd, {
|
|
312
|
+
passive: false
|
|
313
|
+
});
|
|
314
|
+
}
|
|
265
315
|
setSorting(true);
|
|
266
316
|
// start callback
|
|
267
317
|
onSortStart === null || onSortStart === void 0 || onSortStart({
|
|
@@ -269,7 +319,7 @@ var useSortHelper = function useSortHelper(config) {
|
|
|
269
319
|
node: activeNode,
|
|
270
320
|
oldIndex: activeNodeOldIndex,
|
|
271
321
|
newIndex: activeNodeNextIndex
|
|
272
|
-
},
|
|
322
|
+
}, event);
|
|
273
323
|
}, [autoScroll, getOrderedItems, isMounted, onSort, onSortEnd, onSortMove, onSortStart, transitionDuration]);
|
|
274
324
|
|
|
275
325
|
/**
|
|
@@ -297,15 +347,58 @@ var useSortHelper = function useSortHelper(config) {
|
|
|
297
347
|
}
|
|
298
348
|
}, [getManagedItem, handlePress, pressDelay, sorting]);
|
|
299
349
|
|
|
350
|
+
/**
|
|
351
|
+
* Handle touch start for mobile devices
|
|
352
|
+
*/
|
|
353
|
+
var handleTouchStart = (0, _react.useCallback)(function (touchStartEvent) {
|
|
354
|
+
var triggeredNode = touchStartEvent.target;
|
|
355
|
+
var targetNode = (0, _utils.closestNode)(triggeredNode, function (el) {
|
|
356
|
+
return Boolean(getManagedItem(el));
|
|
357
|
+
});
|
|
358
|
+
var curManagedItem = getManagedItem(targetNode);
|
|
359
|
+
if (
|
|
360
|
+
// is list item
|
|
361
|
+
Boolean(curManagedItem) && !curManagedItem.info.disabled &&
|
|
362
|
+
// is not sorting
|
|
363
|
+
!sorting &&
|
|
364
|
+
// is valid node
|
|
365
|
+
targetNode instanceof HTMLElement &&
|
|
366
|
+
// excludes interactive elements
|
|
367
|
+
!targetNode.contains((0, _utils.closestNode)(triggeredNode, _utils.isContainInteractiveElement))) {
|
|
368
|
+
// Prevent scrolling while sorting
|
|
369
|
+
touchStartEvent.preventDefault();
|
|
370
|
+
pressTimer.current = setTimeout(handlePress, pressDelay, touchStartEvent, targetNode, curManagedItem);
|
|
371
|
+
}
|
|
372
|
+
}, [getManagedItem, handlePress, pressDelay, sorting]);
|
|
373
|
+
|
|
300
374
|
/**
|
|
301
375
|
* Clear timer after drag
|
|
302
376
|
* */
|
|
303
377
|
var handleEnd = (0, _react.useCallback)(function () {
|
|
304
|
-
|
|
378
|
+
clearTimeout(pressTimer.current);
|
|
379
|
+
|
|
380
|
+
// Ensure page scrolling is re-enabled
|
|
381
|
+
if (document.body.style.overflow === 'hidden') {
|
|
382
|
+
document.body.style.overflow = '';
|
|
383
|
+
}
|
|
384
|
+
}, []);
|
|
385
|
+
|
|
386
|
+
/**
|
|
387
|
+
* Clear timer after touch end
|
|
388
|
+
*/
|
|
389
|
+
var handleTouchEnd = (0, _react.useCallback)(function () {
|
|
390
|
+
clearTimeout(pressTimer.current);
|
|
391
|
+
|
|
392
|
+
// Ensure page scrolling is re-enabled
|
|
393
|
+
if (document.body.style.overflow === 'hidden') {
|
|
394
|
+
document.body.style.overflow = '';
|
|
395
|
+
}
|
|
305
396
|
}, []);
|
|
306
397
|
return {
|
|
307
398
|
handleStart: handleStart,
|
|
308
399
|
handleEnd: handleEnd,
|
|
400
|
+
handleTouchStart: handleTouchStart,
|
|
401
|
+
handleTouchEnd: handleTouchEnd,
|
|
309
402
|
containerRef: containerRef,
|
|
310
403
|
sorting: sorting,
|
|
311
404
|
register: listItemRegister
|
package/cjs/List/helper/utils.js
CHANGED
|
@@ -72,12 +72,20 @@ function getEdgeOffset(node, parent, offset) {
|
|
|
72
72
|
return getEdgeOffset(node.parentNode, parent, nodeOffset);
|
|
73
73
|
}
|
|
74
74
|
function getScrollingParent(el) {
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
return
|
|
80
|
-
|
|
75
|
+
if (!el || typeof window === 'undefined' || !window.getComputedStyle) {
|
|
76
|
+
return null;
|
|
77
|
+
}
|
|
78
|
+
try {
|
|
79
|
+
return closestNode(el, function (el) {
|
|
80
|
+
var computedStyle = window.getComputedStyle(el);
|
|
81
|
+
var overflowRegex = /(auto|scroll)/;
|
|
82
|
+
var properties = ['overflow', 'overflowX', 'overflowY'];
|
|
83
|
+
return properties.some(function (property) {
|
|
84
|
+
return overflowRegex.test(computedStyle[property]);
|
|
85
|
+
});
|
|
81
86
|
});
|
|
82
|
-
})
|
|
87
|
+
} catch (error) {
|
|
88
|
+
// In test environments, errors may occur, so return null
|
|
89
|
+
return null;
|
|
90
|
+
}
|
|
83
91
|
}
|
package/dist/rsuite.js
CHANGED
|
@@ -3645,7 +3645,7 @@ eval("\n\nexports.__esModule = true;\nexports.convertSize = void 0;\nvar convert
|
|
|
3645
3645
|
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
|
|
3646
3646
|
|
|
3647
3647
|
"use strict";
|
|
3648
|
-
eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\nexports.__esModule = true;\nexports[\"default\"] = void 0;\nvar _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\"));\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ \"./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js\"));\nvar _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ \"./node_modules/prop-types/index.js\"));\nvar _react = _interopRequireWildcard(__webpack_require__(/*! react */ \"react\"));\nvar _useSortHelper2 = _interopRequireDefault(__webpack_require__(/*! ./helper/useSortHelper */ \"./src/List/helper/useSortHelper.ts\"));\nvar _ListContext = _interopRequireDefault(__webpack_require__(/*! ./ListContext */ \"./src/List/ListContext.tsx\"));\nvar _ListItem = _interopRequireDefault(__webpack_require__(/*! ./ListItem */ \"./src/List/ListItem.tsx\"));\nvar _hooks = __webpack_require__(/*! ../internals/hooks */ \"./src/internals/hooks/index.ts\");\nvar _utils = __webpack_require__(/*! ../internals/utils */ \"./src/internals/utils/index.ts\");\nvar _propTypes2 = __webpack_require__(/*! ../internals/propTypes */ \"./src/internals/propTypes/index.ts\");\nvar _CustomProvider = __webpack_require__(/*! ../CustomProvider */ \"./src/CustomProvider/index.tsx\");\nvar _excluded = [\"as\", \"autoScroll\", \"bordered\", \"classPrefix\", \"className\", \"children\", \"divider\", \"hover\", \"size\", \"sortable\", \"pressDelay\", \"transitionDuration\", \"onSort\", \"onSortEnd\", \"onSortMove\", \"onSortStart\"];\nvar _jsxFileName = \"/home/runner/work/rsuite/rsuite/src/List/List.tsx\",\n _this = void 0;\nfunction _getRequireWildcardCache(e) { if (\"function\" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }\nfunction _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || \"object\" != typeof e && \"function\" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if (\"default\" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }\n/**\n * The `List` component is used to specify the layout of the list.\n * @see https://rsuitejs.com/components/list\n */\nvar List = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {\n var _useCustom = (0, _CustomProvider.useCustom)('List', props),\n propsWithDefaults = _useCustom.propsWithDefaults;\n var _propsWithDefaults$as = propsWithDefaults.as,\n Component = _propsWithDefaults$as === void 0 ? 'div' : _propsWithDefaults$as,\n _propsWithDefaults$au = propsWithDefaults.autoScroll,\n autoScroll = _propsWithDefaults$au === void 0 ? true : _propsWithDefaults$au,\n bordered = propsWithDefaults.bordered,\n _propsWithDefaults$cl = propsWithDefaults.classPrefix,\n classPrefix = _propsWithDefaults$cl === void 0 ? 'list' : _propsWithDefaults$cl,\n className = propsWithDefaults.className,\n children = propsWithDefaults.children,\n _propsWithDefaults$di = propsWithDefaults.divider,\n divider = _propsWithDefaults$di === void 0 ? true : _propsWithDefaults$di,\n hover = propsWithDefaults.hover,\n _propsWithDefaults$si = propsWithDefaults.size,\n size = _propsWithDefaults$si === void 0 ? 'md' : _propsWithDefaults$si,\n sortable = propsWithDefaults.sortable,\n _propsWithDefaults$pr = propsWithDefaults.pressDelay,\n pressDelay = _propsWithDefaults$pr === void 0 ? 0 : _propsWithDefaults$pr,\n _propsWithDefaults$tr = propsWithDefaults.transitionDuration,\n transitionDuration = _propsWithDefaults$tr === void 0 ? 300 : _propsWithDefaults$tr,\n onSort = propsWithDefaults.onSort,\n onSortEnd = propsWithDefaults.onSortEnd,\n onSortMove = propsWithDefaults.onSortMove,\n onSortStart = propsWithDefaults.onSortStart,\n rest = (0, _objectWithoutPropertiesLoose2.default)(propsWithDefaults, _excluded);\n var _useClassNames = (0, _hooks.useClassNames)(classPrefix),\n withClassPrefix = _useClassNames.withClassPrefix,\n merge = _useClassNames.merge;\n var _useSortHelper = (0, _useSortHelper2.default)({\n autoScroll: autoScroll,\n onSort: onSort,\n onSortEnd: onSortEnd,\n onSortMove: onSortMove,\n onSortStart: onSortStart,\n pressDelay: pressDelay,\n transitionDuration: transitionDuration\n }),\n containerRef = _useSortHelper.containerRef,\n register = _useSortHelper.register,\n sorting = _useSortHelper.sorting,\n handleEnd = _useSortHelper.handleEnd,\n handleStart = _useSortHelper.handleStart;\n var classes = merge(className, withClassPrefix({\n bordered: bordered,\n sortable: sortable,\n sorting: sorting,\n hover: hover,\n divider: divider\n }));\n var contextValue = (0, _react.useMemo)(function () {\n return {\n bordered: bordered,\n size: size,\n register: register\n };\n }, [bordered, register, size]);\n return /*#__PURE__*/_react.default.createElement(Component, (0, _extends2.default)({\n role: \"list\"\n }, rest, {\n ref: (0, _utils.mergeRefs)(containerRef, ref),\n className: classes,\n onMouseDown: sortable ? handleStart : undefined,\n onMouseUp: sortable ? handleEnd : undefined,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber:
|
|
3648
|
+
eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\nexports.__esModule = true;\nexports[\"default\"] = void 0;\nvar _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/extends */ \"./node_modules/@babel/runtime/helpers/extends.js\"));\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/objectWithoutPropertiesLoose */ \"./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js\"));\nvar _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ \"./node_modules/prop-types/index.js\"));\nvar _react = _interopRequireWildcard(__webpack_require__(/*! react */ \"react\"));\nvar _useSortHelper2 = _interopRequireDefault(__webpack_require__(/*! ./helper/useSortHelper */ \"./src/List/helper/useSortHelper.ts\"));\nvar _ListContext = _interopRequireDefault(__webpack_require__(/*! ./ListContext */ \"./src/List/ListContext.tsx\"));\nvar _ListItem = _interopRequireDefault(__webpack_require__(/*! ./ListItem */ \"./src/List/ListItem.tsx\"));\nvar _hooks = __webpack_require__(/*! ../internals/hooks */ \"./src/internals/hooks/index.ts\");\nvar _utils = __webpack_require__(/*! ../internals/utils */ \"./src/internals/utils/index.ts\");\nvar _propTypes2 = __webpack_require__(/*! ../internals/propTypes */ \"./src/internals/propTypes/index.ts\");\nvar _CustomProvider = __webpack_require__(/*! ../CustomProvider */ \"./src/CustomProvider/index.tsx\");\nvar _excluded = [\"as\", \"autoScroll\", \"bordered\", \"classPrefix\", \"className\", \"children\", \"divider\", \"hover\", \"size\", \"sortable\", \"pressDelay\", \"transitionDuration\", \"onSort\", \"onSortEnd\", \"onSortMove\", \"onSortStart\"];\nvar _jsxFileName = \"/home/runner/work/rsuite/rsuite/src/List/List.tsx\",\n _this = void 0;\nfunction _getRequireWildcardCache(e) { if (\"function\" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }\nfunction _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || \"object\" != typeof e && \"function\" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if (\"default\" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }\n/**\n * The `List` component is used to specify the layout of the list.\n * @see https://rsuitejs.com/components/list\n */\nvar List = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {\n var _useCustom = (0, _CustomProvider.useCustom)('List', props),\n propsWithDefaults = _useCustom.propsWithDefaults;\n var _propsWithDefaults$as = propsWithDefaults.as,\n Component = _propsWithDefaults$as === void 0 ? 'div' : _propsWithDefaults$as,\n _propsWithDefaults$au = propsWithDefaults.autoScroll,\n autoScroll = _propsWithDefaults$au === void 0 ? true : _propsWithDefaults$au,\n bordered = propsWithDefaults.bordered,\n _propsWithDefaults$cl = propsWithDefaults.classPrefix,\n classPrefix = _propsWithDefaults$cl === void 0 ? 'list' : _propsWithDefaults$cl,\n className = propsWithDefaults.className,\n children = propsWithDefaults.children,\n _propsWithDefaults$di = propsWithDefaults.divider,\n divider = _propsWithDefaults$di === void 0 ? true : _propsWithDefaults$di,\n hover = propsWithDefaults.hover,\n _propsWithDefaults$si = propsWithDefaults.size,\n size = _propsWithDefaults$si === void 0 ? 'md' : _propsWithDefaults$si,\n sortable = propsWithDefaults.sortable,\n _propsWithDefaults$pr = propsWithDefaults.pressDelay,\n pressDelay = _propsWithDefaults$pr === void 0 ? 0 : _propsWithDefaults$pr,\n _propsWithDefaults$tr = propsWithDefaults.transitionDuration,\n transitionDuration = _propsWithDefaults$tr === void 0 ? 300 : _propsWithDefaults$tr,\n onSort = propsWithDefaults.onSort,\n onSortEnd = propsWithDefaults.onSortEnd,\n onSortMove = propsWithDefaults.onSortMove,\n onSortStart = propsWithDefaults.onSortStart,\n rest = (0, _objectWithoutPropertiesLoose2.default)(propsWithDefaults, _excluded);\n var _useClassNames = (0, _hooks.useClassNames)(classPrefix),\n withClassPrefix = _useClassNames.withClassPrefix,\n merge = _useClassNames.merge;\n var _useSortHelper = (0, _useSortHelper2.default)({\n autoScroll: autoScroll,\n onSort: onSort,\n onSortEnd: onSortEnd,\n onSortMove: onSortMove,\n onSortStart: onSortStart,\n pressDelay: pressDelay,\n transitionDuration: transitionDuration\n }),\n containerRef = _useSortHelper.containerRef,\n register = _useSortHelper.register,\n sorting = _useSortHelper.sorting,\n handleEnd = _useSortHelper.handleEnd,\n handleStart = _useSortHelper.handleStart,\n handleTouchStart = _useSortHelper.handleTouchStart,\n handleTouchEnd = _useSortHelper.handleTouchEnd;\n var classes = merge(className, withClassPrefix({\n bordered: bordered,\n sortable: sortable,\n sorting: sorting,\n hover: hover,\n divider: divider\n }));\n var contextValue = (0, _react.useMemo)(function () {\n return {\n bordered: bordered,\n size: size,\n register: register\n };\n }, [bordered, register, size]);\n return /*#__PURE__*/_react.default.createElement(Component, (0, _extends2.default)({\n role: \"list\"\n }, rest, {\n ref: (0, _utils.mergeRefs)(containerRef, ref),\n className: classes,\n onMouseDown: sortable ? handleStart : undefined,\n onMouseUp: sortable ? handleEnd : undefined,\n onTouchStart: sortable ? handleTouchStart : undefined,\n onTouchEnd: sortable ? handleTouchEnd : undefined,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 100,\n columnNumber: 5\n }\n }), /*#__PURE__*/_react.default.createElement(_ListContext.default.Provider, {\n value: contextValue,\n __self: _this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 110,\n columnNumber: 7\n }\n }, children));\n});\nList.Item = _ListItem.default;\nList.displayName = 'List';\nList.propTypes = {\n className: _propTypes.default.string,\n classPrefix: _propTypes.default.string,\n bordered: _propTypes.default.bool,\n divider: _propTypes.default.bool,\n hover: _propTypes.default.bool,\n sortable: _propTypes.default.bool,\n size: (0, _propTypes2.oneOf)(['lg', 'md', 'sm', 'xs']),\n autoScroll: _propTypes.default.bool,\n pressDelay: _propTypes.default.number,\n transitionDuration: _propTypes.default.number,\n onSortStart: _propTypes.default.func,\n onSortMove: _propTypes.default.func,\n onSortEnd: _propTypes.default.func,\n onSort: _propTypes.default.func\n};\nvar _default = exports[\"default\"] = List;\n\n//# sourceURL=webpack://rsuite/./src/List/List.tsx?");
|
|
3649
3649
|
|
|
3650
3650
|
/***/ }),
|
|
3651
3651
|
|
|
@@ -3700,7 +3700,7 @@ eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/he
|
|
|
3700
3700
|
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
|
|
3701
3701
|
|
|
3702
3702
|
"use strict";
|
|
3703
|
-
eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\nexports.__esModule = true;\nexports[\"default\"] = void 0;\nvar _on = _interopRequireDefault(__webpack_require__(/*! dom-lib/on */ \"./node_modules/dom-lib/esm/on.js\"));\nvar _react = __webpack_require__(/*! react */ \"react\");\nvar _AutoScroller = _interopRequireDefault(__webpack_require__(/*! ./AutoScroller */ \"./src/List/helper/AutoScroller.ts\"));\nvar _utils = __webpack_require__(/*! ./utils */ \"./src/List/helper/utils.ts\");\nvar _hooks = __webpack_require__(/*! ../../internals/hooks */ \"./src/internals/hooks/index.ts\");\nvar _useManager2 = _interopRequireDefault(__webpack_require__(/*! ./useManager */ \"./src/List/helper/useManager.ts\"));\nfunction _createForOfIteratorHelperLoose(r, e) { var t = \"undefined\" != typeof Symbol && r[Symbol.iterator] || r[\"@@iterator\"]; if (t) return (t = t.call(r)).next.bind(t); if (Array.isArray(r) || (t = _unsupportedIterableToArray(r)) || e && r && \"number\" == typeof r.length) { t && (r = t); var o = 0; return function () { return o >= r.length ? { done: !0 } : { done: !1, value: r[o++] }; }; } throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\nfunction _unsupportedIterableToArray(r, a) { if (r) { if (\"string\" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return \"Object\" === t && r.constructor && (t = r.constructor.name), \"Map\" === t || \"Set\" === t ? Array.from(r) : \"Arguments\" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }\nfunction _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }\nvar helperElementClass = 'rs-list-item-helper';\nvar holderElementClass = 'rs-list-item-holder';\nvar useSortHelper = function useSortHelper(config) {\n var autoScroll = config.autoScroll,\n pressDelay = config.pressDelay,\n transitionDuration = config.transitionDuration,\n onSort = config.onSort,\n onSortEnd = config.onSortEnd,\n onSortMove = config.onSortMove,\n onSortStart = config.onSortStart;\n var _useState = (0, _react.useState)(false),\n sorting = _useState[0],\n setSorting = _useState[1];\n var containerRef = (0, _react.useRef)(null);\n var pressTimer = (0, _react.useRef)();\n var _useManager = (0, _useManager2.default)(),\n listItemRegister = _useManager.listItemRegister,\n getManagedItem = _useManager.getManagedItem,\n getOrderedItems = _useManager.getOrderedItems;\n var isMounted = (0, _hooks.useIsMounted)();\n\n /**\n * start dragging\n * */\n var handlePress = (0, _react.useCallback)(function (mouseDownEvent, _targetNode, curManagedItem) {\n var _curManagedItem$info$, _curManagedItem$info$2, _activeNodeHelper;\n if (!isMounted()) return;\n // data\n var containerElement = containerRef.current;\n var activeNode = curManagedItem.node;\n var activeNodeOldIndex = (_curManagedItem$info$ = curManagedItem.info.index) !== null && _curManagedItem$info$ !== void 0 ? _curManagedItem$info$ : 0;\n var activeNodeNextIndex = (_curManagedItem$info$2 = curManagedItem.info.index) !== null && _curManagedItem$info$2 !== void 0 ? _curManagedItem$info$2 : 0;\n var activeNodeHolderTranslate = {\n x: 0,\n y: 0\n };\n var animatedNodesOffset = []; // all list item offset\n\n // init scroller\n var scrollContainer = (0, _utils.getScrollingParent)(containerElement) || containerElement;\n var initScroll = {\n x: scrollContainer.scrollLeft,\n y: scrollContainer.scrollTop\n };\n var autoScroller = new _AutoScroller.default(scrollContainer, function (offset) {\n activeNodeHolderTranslate.x += offset.left;\n activeNodeHolderTranslate.y += offset.top;\n });\n var activeNodeBoundingClientRect = activeNode.getBoundingClientRect();\n var activeNodeOffsetEdge = (0, _utils.getEdgeOffset)(activeNode, containerElement);\n var activeNodeStyle = getComputedStyle(activeNode);\n var activeNodeHelper = activeNode.cloneNode(true);\n (_activeNodeHelper = activeNodeHelper) === null || _activeNodeHelper === void 0 || _activeNodeHelper.classList.add(helperElementClass);\n (0, _utils.setInlineStyles)(activeNodeHelper, {\n position: 'fixed',\n width: activeNodeBoundingClientRect.width + \"px\",\n height: activeNodeBoundingClientRect.height + \"px\",\n left: activeNodeBoundingClientRect.left - parseFloat(activeNodeStyle.marginLeft) + \"px\",\n top: activeNodeBoundingClientRect.top - parseFloat(activeNodeStyle.marginTop) + \"px\"\n });\n activeNode.classList.add(holderElementClass);\n document.body.appendChild(activeNodeHelper);\n var getContainerScrollDelta = function getContainerScrollDelta() {\n return {\n left: scrollContainer.scrollLeft - initScroll.x,\n top: scrollContainer.scrollTop - initScroll.y\n };\n };\n var getHolderTranslate = function getHolderTranslate() {\n return animatedNodesOffset.reduce(function (acc, item) {\n return {\n x: acc.x + item.x,\n y: acc.y + item.y\n };\n }, {\n x: 0,\n y: 0\n });\n };\n var sortMouseMoveListener = (0, _on.default)(window, 'mousemove', function (mouseOverEvent) {\n // Update helper position\n var offset = {\n x: (mouseOverEvent === null || mouseOverEvent === void 0 ? void 0 : mouseOverEvent.pageX) || 0,\n y: (mouseOverEvent === null || mouseOverEvent === void 0 ? void 0 : mouseOverEvent.pageY) || 0\n };\n var containerScrollDelta = getContainerScrollDelta();\n var containerBoundingRect = scrollContainer.getBoundingClientRect();\n activeNodeHolderTranslate = {\n x: offset.x - mouseDownEvent.pageX,\n y: offset.y - mouseDownEvent.pageY\n };\n if (activeNodeHelper) {\n (0, _utils.setTranslate3d)(activeNodeHelper, activeNodeHolderTranslate);\n }\n\n // animate\n activeNodeNextIndex = -1;\n var listItemManagerRefs = getOrderedItems(curManagedItem.info.collection);\n var aTop = activeNodeOffsetEdge.top || 0;\n var cTop = containerScrollDelta.top || 0;\n var sortingOffsetY = aTop + activeNodeHolderTranslate.y + cTop;\n for (var i = 0, len = listItemManagerRefs.length; i < len; i++) {\n var _listItemManagerRefs$;\n var currentNode = listItemManagerRefs[i].node;\n var currentNodeIndex = (_listItemManagerRefs$ = listItemManagerRefs[i].info.index) !== null && _listItemManagerRefs$ !== void 0 ? _listItemManagerRefs$ : 0;\n var offsetY = activeNodeBoundingClientRect.height > currentNode.offsetHeight ? currentNode.offsetHeight / 2 : activeNodeBoundingClientRect.height / 2;\n var translate = {\n x: 0,\n y: 0\n };\n\n // If we haven't cached the node's offsetTop / offsetLeft value\n var curEdgeOffset = listItemManagerRefs[i].edgeOffset || (0, _utils.getEdgeOffset)(currentNode, containerElement);\n listItemManagerRefs[i].edgeOffset = curEdgeOffset;\n\n // Get a reference to the next node\n var prvNode = i > 0 && listItemManagerRefs[i - 1];\n var nextNode = i < len - 1 && listItemManagerRefs[i + 1];\n\n // Also cache the node's edge offset if needed.\n if (prvNode && !prvNode.edgeOffset) {\n prvNode.edgeOffset = (0, _utils.getEdgeOffset)(prvNode.node, containerElement);\n }\n if (nextNode && !nextNode.edgeOffset) {\n nextNode.edgeOffset = (0, _utils.getEdgeOffset)(nextNode.node, containerElement);\n }\n\n // If the node is the one we're currently animating, skip it\n if (currentNodeIndex === activeNodeOldIndex) {\n continue;\n }\n var curEdgeOffsetTop = curEdgeOffset.top || 0;\n if (prvNode && currentNodeIndex > activeNodeOldIndex && sortingOffsetY + offsetY >= curEdgeOffsetTop) {\n var _prvNode$edgeOffset;\n var yOffset = (((_prvNode$edgeOffset = prvNode.edgeOffset) === null || _prvNode$edgeOffset === void 0 ? void 0 : _prvNode$edgeOffset.top) || 0) - curEdgeOffsetTop;\n translate.y = yOffset;\n animatedNodesOffset[currentNodeIndex] = {\n x: 0,\n y: -yOffset\n };\n activeNodeNextIndex = currentNodeIndex;\n } else if (nextNode && currentNodeIndex < activeNodeOldIndex && sortingOffsetY <= curEdgeOffsetTop + offsetY) {\n var _nextNode$edgeOffset;\n var _yOffset = (((_nextNode$edgeOffset = nextNode.edgeOffset) === null || _nextNode$edgeOffset === void 0 ? void 0 : _nextNode$edgeOffset.top) || 0) - curEdgeOffsetTop;\n translate.y = _yOffset;\n animatedNodesOffset[currentNodeIndex] = {\n x: 0,\n y: -_yOffset\n };\n if (activeNodeNextIndex === -1) {\n activeNodeNextIndex = currentNodeIndex;\n }\n } else {\n animatedNodesOffset[currentNodeIndex] = {\n x: 0,\n y: 0\n };\n }\n (0, _utils.setTransitionDuration)(currentNode, transitionDuration);\n (0, _utils.setTranslate3d)(currentNode, translate);\n\n // translate holder\n (0, _utils.setTranslate3d)(activeNode, getHolderTranslate());\n }\n if (activeNodeNextIndex === -1) {\n activeNodeNextIndex = activeNodeOldIndex;\n }\n\n // auto scroll\n if (autoScroll) {\n autoScroller.update({\n width: activeNodeBoundingClientRect.width,\n height: activeNodeBoundingClientRect.height,\n translate: activeNodeHolderTranslate,\n maxTranslate: {\n x: 0,\n y: containerBoundingRect.top + containerBoundingRect.height - activeNodeBoundingClientRect.top - activeNodeBoundingClientRect.height / 2\n },\n minTranslate: {\n x: 0,\n y: containerBoundingRect.top - activeNodeBoundingClientRect.top - activeNodeBoundingClientRect.height / 2\n }\n });\n }\n onSortMove === null || onSortMove === void 0 || onSortMove({\n collection: curManagedItem.info.collection,\n node: activeNode,\n oldIndex: activeNodeOldIndex,\n newIndex: activeNodeNextIndex\n }, mouseOverEvent);\n }, {\n passive: false\n });\n var sortMouseEndListener = (0, _on.default)(window, 'mouseup', function (event) {\n // Remove the event listeners\n sortMouseMoveListener.off();\n sortMouseEndListener.off();\n var holderTranslate = getHolderTranslate();\n var containerScrollDelta = getContainerScrollDelta();\n if (activeNodeHelper) {\n (0, _utils.setTranslate3d)(activeNodeHelper, {\n x: holderTranslate.x - (containerScrollDelta.left || 0),\n y: holderTranslate.y - (containerScrollDelta.top || 0)\n });\n (0, _utils.setTransitionDuration)(activeNodeHelper, transitionDuration);\n }\n\n // wait for animation\n setTimeout(function () {\n var _activeNodeHelper2;\n if (!isMounted()) return;\n // Remove the helper from the DOM\n (_activeNodeHelper2 = activeNodeHelper) === null || _activeNodeHelper2 === void 0 || (_activeNodeHelper2 = _activeNodeHelper2.parentNode) === null || _activeNodeHelper2 === void 0 || _activeNodeHelper2.removeChild(activeNodeHelper);\n activeNodeHelper = null;\n\n // Remove redundant styles\n activeNode.classList.remove(holderElementClass);\n (0, _utils.setTranslate3d)(activeNode, null);\n animatedNodesOffset = [];\n for (var _iterator = _createForOfIteratorHelperLoose(getOrderedItems(curManagedItem.info.collection)), _step; !(_step = _iterator()).done;) {\n var item = _step.value;\n // Clear the cached offsetTop / offsetLeft value\n item.edgeOffset = null;\n\n // Remove the transforms / transitions\n var el = item.node;\n (0, _utils.setTranslate3d)(el, null);\n (0, _utils.setTransitionDuration)(el, null);\n }\n\n // Stop autoScroll\n autoScroller.clear();\n\n // Update manager state\n setSorting(false);\n\n // callbacks\n var callbackPayload = {\n collection: curManagedItem.info.collection,\n node: curManagedItem.node,\n newIndex: activeNodeNextIndex,\n oldIndex: activeNodeOldIndex\n };\n onSortEnd === null || onSortEnd === void 0 || onSortEnd(callbackPayload, event);\n onSort === null || onSort === void 0 || onSort(callbackPayload, event);\n }, transitionDuration);\n }, {\n passive: false\n });\n setSorting(true);\n // start callback\n onSortStart === null || onSortStart === void 0 || onSortStart({\n collection: curManagedItem.info.collection,\n node: activeNode,\n oldIndex: activeNodeOldIndex,\n newIndex: activeNodeNextIndex\n }, mouseDownEvent.nativeEvent);\n }, [autoScroll, getOrderedItems, isMounted, onSort, onSortEnd, onSortMove, onSortStart, transitionDuration]);\n\n /**\n * Determine whether to start dragging\n * */\n var handleStart = (0, _react.useCallback)(function (mouseDownEvent) {\n var triggeredNode = mouseDownEvent.target;\n var targetNode = (0, _utils.closestNode)(triggeredNode, function (el) {\n return Boolean(getManagedItem(el));\n });\n var curManagedItem = getManagedItem(targetNode);\n if (\n // is not secondary button pressed\n mouseDownEvent.button !== 2 &&\n // is list item\n Boolean(curManagedItem) && !curManagedItem.info.disabled &&\n // is not sorting\n !sorting &&\n // is valid node\n targetNode instanceof HTMLElement &&\n // excludes interactive elements\n !targetNode.contains((0, _utils.closestNode)(triggeredNode, _utils.isContainInteractiveElement))) {\n mouseDownEvent.preventDefault();\n pressTimer.current = setTimeout(handlePress, pressDelay, mouseDownEvent, targetNode, curManagedItem);\n }\n }, [getManagedItem, handlePress, pressDelay, sorting]);\n\n /**\n * Clear timer after drag\n * */\n var handleEnd = (0, _react.useCallback)(function () {\n return clearTimeout(pressTimer.current);\n }, []);\n return {\n handleStart: handleStart,\n handleEnd: handleEnd,\n containerRef: containerRef,\n sorting: sorting,\n register: listItemRegister\n };\n};\nvar _default = exports[\"default\"] = useSortHelper;\n\n//# sourceURL=webpack://rsuite/./src/List/helper/useSortHelper.ts?");
|
|
3703
|
+
eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ \"./node_modules/@babel/runtime/helpers/interopRequireDefault.js\");\nexports.__esModule = true;\nexports[\"default\"] = void 0;\nvar _on = _interopRequireDefault(__webpack_require__(/*! dom-lib/on */ \"./node_modules/dom-lib/esm/on.js\"));\nvar _react = __webpack_require__(/*! react */ \"react\");\nvar _AutoScroller = _interopRequireDefault(__webpack_require__(/*! ./AutoScroller */ \"./src/List/helper/AutoScroller.ts\"));\nvar _utils = __webpack_require__(/*! ./utils */ \"./src/List/helper/utils.ts\");\nvar _hooks = __webpack_require__(/*! ../../internals/hooks */ \"./src/internals/hooks/index.ts\");\nvar _useManager2 = _interopRequireDefault(__webpack_require__(/*! ./useManager */ \"./src/List/helper/useManager.ts\"));\nfunction _createForOfIteratorHelperLoose(r, e) { var t = \"undefined\" != typeof Symbol && r[Symbol.iterator] || r[\"@@iterator\"]; if (t) return (t = t.call(r)).next.bind(t); if (Array.isArray(r) || (t = _unsupportedIterableToArray(r)) || e && r && \"number\" == typeof r.length) { t && (r = t); var o = 0; return function () { return o >= r.length ? { done: !0 } : { done: !1, value: r[o++] }; }; } throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\nfunction _unsupportedIterableToArray(r, a) { if (r) { if (\"string\" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return \"Object\" === t && r.constructor && (t = r.constructor.name), \"Map\" === t || \"Set\" === t ? Array.from(r) : \"Arguments\" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }\nfunction _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }\nvar helperElementClass = 'rs-list-item-helper';\nvar holderElementClass = 'rs-list-item-holder';\nvar useSortHelper = function useSortHelper(config) {\n var autoScroll = config.autoScroll,\n pressDelay = config.pressDelay,\n transitionDuration = config.transitionDuration,\n onSort = config.onSort,\n onSortEnd = config.onSortEnd,\n onSortMove = config.onSortMove,\n onSortStart = config.onSortStart;\n var _useState = (0, _react.useState)(false),\n sorting = _useState[0],\n setSorting = _useState[1];\n var containerRef = (0, _react.useRef)(null);\n var pressTimer = (0, _react.useRef)();\n var _useManager = (0, _useManager2.default)(),\n listItemRegister = _useManager.listItemRegister,\n getManagedItem = _useManager.getManagedItem,\n getOrderedItems = _useManager.getOrderedItems;\n var isMounted = (0, _hooks.useIsMounted)();\n\n /**\n * start dragging\n * */\n var handlePress = (0, _react.useCallback)(function (event, _targetNode, curManagedItem) {\n var _curManagedItem$info$, _curManagedItem$info$2, _activeNodeHelper;\n if (!isMounted()) return;\n // data\n var containerElement = containerRef.current;\n var activeNode = curManagedItem.node;\n var activeNodeOldIndex = (_curManagedItem$info$ = curManagedItem.info.index) !== null && _curManagedItem$info$ !== void 0 ? _curManagedItem$info$ : 0;\n var activeNodeNextIndex = (_curManagedItem$info$2 = curManagedItem.info.index) !== null && _curManagedItem$info$2 !== void 0 ? _curManagedItem$info$2 : 0;\n var activeNodeHolderTranslate = {\n x: 0,\n y: 0\n };\n var animatedNodesOffset = []; // all list item offset\n\n // Get initial position from event\n var isTouchEvent = 'touches' in event;\n var initialPosition = {\n pageX: isTouchEvent ? event.touches[0].pageX : event.pageX,\n pageY: isTouchEvent ? event.touches[0].pageY : event.pageY\n };\n\n // init scroller\n var scrollContainer = (0, _utils.getScrollingParent)(containerElement) || containerElement;\n var initScroll = {\n x: scrollContainer.scrollLeft,\n y: scrollContainer.scrollTop\n };\n var autoScroller = new _AutoScroller.default(scrollContainer, function (offset) {\n activeNodeHolderTranslate.x += offset.left;\n activeNodeHolderTranslate.y += offset.top;\n });\n var activeNodeBoundingClientRect = activeNode.getBoundingClientRect();\n var activeNodeOffsetEdge = (0, _utils.getEdgeOffset)(activeNode, containerElement);\n var activeNodeStyle = getComputedStyle(activeNode);\n var activeNodeHelper = activeNode.cloneNode(true);\n (_activeNodeHelper = activeNodeHelper) === null || _activeNodeHelper === void 0 || _activeNodeHelper.classList.add(helperElementClass);\n (0, _utils.setInlineStyles)(activeNodeHelper, {\n position: 'fixed',\n width: activeNodeBoundingClientRect.width + \"px\",\n height: activeNodeBoundingClientRect.height + \"px\",\n left: activeNodeBoundingClientRect.left - parseFloat(activeNodeStyle.marginLeft) + \"px\",\n top: activeNodeBoundingClientRect.top - parseFloat(activeNodeStyle.marginTop) + \"px\"\n });\n activeNode.classList.add(holderElementClass);\n document.body.appendChild(activeNodeHelper);\n var getContainerScrollDelta = function getContainerScrollDelta() {\n return {\n left: scrollContainer.scrollLeft - initScroll.x,\n top: scrollContainer.scrollTop - initScroll.y\n };\n };\n var getHolderTranslate = function getHolderTranslate() {\n return animatedNodesOffset.reduce(function (acc, item) {\n return {\n x: acc.x + item.x,\n y: acc.y + item.y\n };\n }, {\n x: 0,\n y: 0\n });\n };\n\n // Common handler for both mouse and touch move events\n var handleSortMove = function handleSortMove(moveEvent) {\n // Prevent default to stop page scrolling during touch drag\n if ('touches' in moveEvent) {\n moveEvent.preventDefault();\n }\n\n // Get current position from event\n var isTouchMoveEvent = 'touches' in moveEvent;\n var currentPosition = {\n pageX: isTouchMoveEvent ? moveEvent.touches[0].pageX : moveEvent.pageX,\n pageY: isTouchMoveEvent ? moveEvent.touches[0].pageY : moveEvent.pageY\n };\n\n // Update helper position\n var offset = {\n x: currentPosition.pageX,\n y: currentPosition.pageY\n };\n var containerScrollDelta = getContainerScrollDelta();\n var containerBoundingRect = scrollContainer.getBoundingClientRect();\n activeNodeHolderTranslate = {\n x: offset.x - initialPosition.pageX,\n y: offset.y - initialPosition.pageY\n };\n if (activeNodeHelper) {\n (0, _utils.setTranslate3d)(activeNodeHelper, activeNodeHolderTranslate);\n }\n\n // animate\n activeNodeNextIndex = -1;\n var listItemManagerRefs = getOrderedItems(curManagedItem.info.collection);\n var aTop = activeNodeOffsetEdge.top || 0;\n var cTop = containerScrollDelta.top || 0;\n var sortingOffsetY = aTop + activeNodeHolderTranslate.y + cTop;\n for (var i = 0, len = listItemManagerRefs.length; i < len; i++) {\n var _listItemManagerRefs$;\n var currentNode = listItemManagerRefs[i].node;\n var currentNodeIndex = (_listItemManagerRefs$ = listItemManagerRefs[i].info.index) !== null && _listItemManagerRefs$ !== void 0 ? _listItemManagerRefs$ : 0;\n var offsetY = activeNodeBoundingClientRect.height > currentNode.offsetHeight ? currentNode.offsetHeight / 2 : activeNodeBoundingClientRect.height / 2;\n var translate = {\n x: 0,\n y: 0\n };\n\n // If we haven't cached the node's offsetTop / offsetLeft value\n var curEdgeOffset = listItemManagerRefs[i].edgeOffset || (0, _utils.getEdgeOffset)(currentNode, containerElement);\n listItemManagerRefs[i].edgeOffset = curEdgeOffset;\n\n // Get a reference to the next node\n var prvNode = i > 0 && listItemManagerRefs[i - 1];\n var nextNode = i < len - 1 && listItemManagerRefs[i + 1];\n\n // Also cache the node's edge offset if needed.\n if (prvNode && !prvNode.edgeOffset) {\n prvNode.edgeOffset = (0, _utils.getEdgeOffset)(prvNode.node, containerElement);\n }\n if (nextNode && !nextNode.edgeOffset) {\n nextNode.edgeOffset = (0, _utils.getEdgeOffset)(nextNode.node, containerElement);\n }\n\n // If the node is the one we're currently animating, skip it\n if (currentNodeIndex === activeNodeOldIndex) {\n continue;\n }\n var curEdgeOffsetTop = curEdgeOffset.top || 0;\n if (prvNode && currentNodeIndex > activeNodeOldIndex && sortingOffsetY + offsetY >= curEdgeOffsetTop) {\n var _prvNode$edgeOffset;\n var yOffset = (((_prvNode$edgeOffset = prvNode.edgeOffset) === null || _prvNode$edgeOffset === void 0 ? void 0 : _prvNode$edgeOffset.top) || 0) - curEdgeOffsetTop;\n translate.y = yOffset;\n animatedNodesOffset[currentNodeIndex] = {\n x: 0,\n y: -yOffset\n };\n activeNodeNextIndex = currentNodeIndex;\n } else if (nextNode && currentNodeIndex < activeNodeOldIndex && sortingOffsetY <= curEdgeOffsetTop + offsetY) {\n var _nextNode$edgeOffset;\n var _yOffset = (((_nextNode$edgeOffset = nextNode.edgeOffset) === null || _nextNode$edgeOffset === void 0 ? void 0 : _nextNode$edgeOffset.top) || 0) - curEdgeOffsetTop;\n translate.y = _yOffset;\n animatedNodesOffset[currentNodeIndex] = {\n x: 0,\n y: -_yOffset\n };\n if (activeNodeNextIndex === -1) {\n activeNodeNextIndex = currentNodeIndex;\n }\n } else {\n animatedNodesOffset[currentNodeIndex] = {\n x: 0,\n y: 0\n };\n }\n (0, _utils.setTransitionDuration)(currentNode, transitionDuration);\n (0, _utils.setTranslate3d)(currentNode, translate);\n\n // translate holder\n (0, _utils.setTranslate3d)(activeNode, getHolderTranslate());\n }\n if (activeNodeNextIndex === -1) {\n activeNodeNextIndex = activeNodeOldIndex;\n }\n\n // auto scroll\n if (autoScroll) {\n autoScroller.update({\n width: activeNodeBoundingClientRect.width,\n height: activeNodeBoundingClientRect.height,\n translate: activeNodeHolderTranslate,\n maxTranslate: {\n x: 0,\n y: containerBoundingRect.top + containerBoundingRect.height - activeNodeBoundingClientRect.top - activeNodeBoundingClientRect.height / 2\n },\n minTranslate: {\n x: 0,\n y: containerBoundingRect.top - activeNodeBoundingClientRect.top - activeNodeBoundingClientRect.height / 2\n }\n });\n }\n onSortMove === null || onSortMove === void 0 || onSortMove({\n collection: curManagedItem.info.collection,\n node: activeNode,\n oldIndex: activeNodeOldIndex,\n newIndex: activeNodeNextIndex\n }, moveEvent);\n };\n\n // Common handler for both mouse and touch end events\n var handleSortEnd = function handleSortEnd(endEvent) {\n var _sortTouchMoveListene, _sortTouchEndListener;\n // Remove the event listeners\n sortMouseMoveListener.off();\n sortMouseEndListener.off();\n (_sortTouchMoveListene = sortTouchMoveListener) === null || _sortTouchMoveListene === void 0 || _sortTouchMoveListene.off();\n (_sortTouchEndListener = sortTouchEndListener) === null || _sortTouchEndListener === void 0 || _sortTouchEndListener.off();\n\n // Enable page scrolling again\n if (document.body.style.overflow === 'hidden') {\n document.body.style.overflow = '';\n }\n var holderTranslate = getHolderTranslate();\n var containerScrollDelta = getContainerScrollDelta();\n if (activeNodeHelper) {\n (0, _utils.setTranslate3d)(activeNodeHelper, {\n x: holderTranslate.x - (containerScrollDelta.left || 0),\n y: holderTranslate.y - (containerScrollDelta.top || 0)\n });\n (0, _utils.setTransitionDuration)(activeNodeHelper, transitionDuration);\n }\n\n // wait for animation\n setTimeout(function () {\n var _activeNodeHelper2;\n if (!isMounted()) return;\n // Remove the helper from the DOM\n (_activeNodeHelper2 = activeNodeHelper) === null || _activeNodeHelper2 === void 0 || (_activeNodeHelper2 = _activeNodeHelper2.parentNode) === null || _activeNodeHelper2 === void 0 || _activeNodeHelper2.removeChild(activeNodeHelper);\n activeNodeHelper = null;\n\n // Remove redundant styles\n activeNode.classList.remove(holderElementClass);\n (0, _utils.setTranslate3d)(activeNode, null);\n animatedNodesOffset = [];\n for (var _iterator = _createForOfIteratorHelperLoose(getOrderedItems(curManagedItem.info.collection)), _step; !(_step = _iterator()).done;) {\n var item = _step.value;\n // Clear the cached offsetTop / offsetLeft value\n item.edgeOffset = null;\n\n // Remove the transforms / transitions\n var el = item.node;\n (0, _utils.setTranslate3d)(el, null);\n (0, _utils.setTransitionDuration)(el, null);\n }\n\n // Stop autoScroll\n autoScroller.clear();\n\n // Update manager state\n setSorting(false);\n\n // callbacks\n var callbackPayload = {\n collection: curManagedItem.info.collection,\n node: curManagedItem.node,\n newIndex: activeNodeNextIndex,\n oldIndex: activeNodeOldIndex\n };\n onSortEnd === null || onSortEnd === void 0 || onSortEnd(callbackPayload, endEvent);\n onSort === null || onSort === void 0 || onSort(callbackPayload, endEvent);\n }, transitionDuration);\n };\n\n // Set up mouse event listeners\n var sortMouseMoveListener = (0, _on.default)(window, 'mousemove', handleSortMove, {\n passive: false\n });\n var sortMouseEndListener = (0, _on.default)(window, 'mouseup', handleSortEnd, {\n passive: false\n });\n\n // Set up touch event listeners\n var sortTouchMoveListener;\n var sortTouchEndListener;\n if (isTouchEvent) {\n // Disable page scrolling during touch drag\n document.body.style.overflow = 'hidden';\n sortTouchMoveListener = (0, _on.default)(window, 'touchmove', handleSortMove, {\n passive: false\n } // Important: passive: false allows preventDefault() to work\n );\n sortTouchEndListener = (0, _on.default)(window, 'touchend', handleSortEnd, {\n passive: false\n });\n }\n setSorting(true);\n // start callback\n onSortStart === null || onSortStart === void 0 || onSortStart({\n collection: curManagedItem.info.collection,\n node: activeNode,\n oldIndex: activeNodeOldIndex,\n newIndex: activeNodeNextIndex\n }, event);\n }, [autoScroll, getOrderedItems, isMounted, onSort, onSortEnd, onSortMove, onSortStart, transitionDuration]);\n\n /**\n * Determine whether to start dragging\n * */\n var handleStart = (0, _react.useCallback)(function (mouseDownEvent) {\n var triggeredNode = mouseDownEvent.target;\n var targetNode = (0, _utils.closestNode)(triggeredNode, function (el) {\n return Boolean(getManagedItem(el));\n });\n var curManagedItem = getManagedItem(targetNode);\n if (\n // is not secondary button pressed\n mouseDownEvent.button !== 2 &&\n // is list item\n Boolean(curManagedItem) && !curManagedItem.info.disabled &&\n // is not sorting\n !sorting &&\n // is valid node\n targetNode instanceof HTMLElement &&\n // excludes interactive elements\n !targetNode.contains((0, _utils.closestNode)(triggeredNode, _utils.isContainInteractiveElement))) {\n mouseDownEvent.preventDefault();\n pressTimer.current = setTimeout(handlePress, pressDelay, mouseDownEvent, targetNode, curManagedItem);\n }\n }, [getManagedItem, handlePress, pressDelay, sorting]);\n\n /**\n * Handle touch start for mobile devices\n */\n var handleTouchStart = (0, _react.useCallback)(function (touchStartEvent) {\n var triggeredNode = touchStartEvent.target;\n var targetNode = (0, _utils.closestNode)(triggeredNode, function (el) {\n return Boolean(getManagedItem(el));\n });\n var curManagedItem = getManagedItem(targetNode);\n if (\n // is list item\n Boolean(curManagedItem) && !curManagedItem.info.disabled &&\n // is not sorting\n !sorting &&\n // is valid node\n targetNode instanceof HTMLElement &&\n // excludes interactive elements\n !targetNode.contains((0, _utils.closestNode)(triggeredNode, _utils.isContainInteractiveElement))) {\n // Prevent scrolling while sorting\n touchStartEvent.preventDefault();\n pressTimer.current = setTimeout(handlePress, pressDelay, touchStartEvent, targetNode, curManagedItem);\n }\n }, [getManagedItem, handlePress, pressDelay, sorting]);\n\n /**\n * Clear timer after drag\n * */\n var handleEnd = (0, _react.useCallback)(function () {\n clearTimeout(pressTimer.current);\n\n // Ensure page scrolling is re-enabled\n if (document.body.style.overflow === 'hidden') {\n document.body.style.overflow = '';\n }\n }, []);\n\n /**\n * Clear timer after touch end\n */\n var handleTouchEnd = (0, _react.useCallback)(function () {\n clearTimeout(pressTimer.current);\n\n // Ensure page scrolling is re-enabled\n if (document.body.style.overflow === 'hidden') {\n document.body.style.overflow = '';\n }\n }, []);\n return {\n handleStart: handleStart,\n handleEnd: handleEnd,\n handleTouchStart: handleTouchStart,\n handleTouchEnd: handleTouchEnd,\n containerRef: containerRef,\n sorting: sorting,\n register: listItemRegister\n };\n};\nvar _default = exports[\"default\"] = useSortHelper;\n\n//# sourceURL=webpack://rsuite/./src/List/helper/useSortHelper.ts?");
|
|
3704
3704
|
|
|
3705
3705
|
/***/ }),
|
|
3706
3706
|
|
|
@@ -3711,7 +3711,7 @@ eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/he
|
|
|
3711
3711
|
/***/ (function(__unused_webpack_module, exports) {
|
|
3712
3712
|
|
|
3713
3713
|
"use strict";
|
|
3714
|
-
eval("\n\nexports.__esModule = true;\nexports.closestNode = closestNode;\nexports.getEdgeOffset = getEdgeOffset;\nexports.getScrollingParent = getScrollingParent;\nexports.isContainInteractiveElement = isContainInteractiveElement;\nexports.setInlineStyles = setInlineStyles;\nexports.setTransitionDuration = setTransitionDuration;\nexports.setTranslate3d = setTranslate3d;\n/**\n * interactive elements should be skiped\n * */\nvar INTERACTIVE_ELEMENTS = ['A', 'BUTTON', 'INPUT', 'OPTION', 'TEXTAREA', 'SELECT'];\nfunction isContainInteractiveElement(targetNode) {\n return INTERACTIVE_ELEMENTS.includes(targetNode.tagName) || targetNode.contentEditable === 'true';\n}\nfunction setInlineStyles(node, styles) {\n if (node !== null && styles !== null) {\n for (var _i = 0, _Object$entries = Object.entries(styles); _i < _Object$entries.length; _i++) {\n var _Object$entries$_i = _Object$entries[_i],\n key = _Object$entries$_i[0],\n value = _Object$entries$_i[1];\n node.style[key] = value;\n }\n }\n}\nfunction setTranslate3d(node, translate) {\n setInlineStyles(node, {\n transform: translate ? \"translate3d(\" + translate.x + \"px,\" + translate.y + \"px,0)\" : ''\n });\n}\nfunction setTransitionDuration(node, duration) {\n setInlineStyles(node, {\n transitionDuration: duration ? duration + \"ms\" : ''\n });\n}\n\n/**\n * find closest target node from source node\n * */\nfunction closestNode(sourceNode, judge) {\n var currentNode = sourceNode;\n while (currentNode) {\n if (judge(currentNode)) {\n return currentNode;\n }\n currentNode = currentNode.parentNode;\n }\n return null;\n}\nfunction getEdgeOffset(node, parent, offset) {\n if (offset === void 0) {\n offset = {\n left: 0,\n top: 0\n };\n }\n if (!node || !parent) {\n return {};\n }\n\n // Get the actual offsetTop / offsetLeft value, no matter how deep the node is nested\n var nodeOffset = {\n left: (offset.left || 0) + node.offsetLeft,\n top: (offset.top || 0) + node.offsetTop\n };\n if (node.parentNode === parent) {\n return nodeOffset;\n }\n return getEdgeOffset(node.parentNode, parent, nodeOffset);\n}\nfunction getScrollingParent(el) {\n return closestNode(el, function (el) {\n
|
|
3714
|
+
eval("\n\nexports.__esModule = true;\nexports.closestNode = closestNode;\nexports.getEdgeOffset = getEdgeOffset;\nexports.getScrollingParent = getScrollingParent;\nexports.isContainInteractiveElement = isContainInteractiveElement;\nexports.setInlineStyles = setInlineStyles;\nexports.setTransitionDuration = setTransitionDuration;\nexports.setTranslate3d = setTranslate3d;\n/**\n * interactive elements should be skiped\n * */\nvar INTERACTIVE_ELEMENTS = ['A', 'BUTTON', 'INPUT', 'OPTION', 'TEXTAREA', 'SELECT'];\nfunction isContainInteractiveElement(targetNode) {\n return INTERACTIVE_ELEMENTS.includes(targetNode.tagName) || targetNode.contentEditable === 'true';\n}\nfunction setInlineStyles(node, styles) {\n if (node !== null && styles !== null) {\n for (var _i = 0, _Object$entries = Object.entries(styles); _i < _Object$entries.length; _i++) {\n var _Object$entries$_i = _Object$entries[_i],\n key = _Object$entries$_i[0],\n value = _Object$entries$_i[1];\n node.style[key] = value;\n }\n }\n}\nfunction setTranslate3d(node, translate) {\n setInlineStyles(node, {\n transform: translate ? \"translate3d(\" + translate.x + \"px,\" + translate.y + \"px,0)\" : ''\n });\n}\nfunction setTransitionDuration(node, duration) {\n setInlineStyles(node, {\n transitionDuration: duration ? duration + \"ms\" : ''\n });\n}\n\n/**\n * find closest target node from source node\n * */\nfunction closestNode(sourceNode, judge) {\n var currentNode = sourceNode;\n while (currentNode) {\n if (judge(currentNode)) {\n return currentNode;\n }\n currentNode = currentNode.parentNode;\n }\n return null;\n}\nfunction getEdgeOffset(node, parent, offset) {\n if (offset === void 0) {\n offset = {\n left: 0,\n top: 0\n };\n }\n if (!node || !parent) {\n return {};\n }\n\n // Get the actual offsetTop / offsetLeft value, no matter how deep the node is nested\n var nodeOffset = {\n left: (offset.left || 0) + node.offsetLeft,\n top: (offset.top || 0) + node.offsetTop\n };\n if (node.parentNode === parent) {\n return nodeOffset;\n }\n return getEdgeOffset(node.parentNode, parent, nodeOffset);\n}\nfunction getScrollingParent(el) {\n if (!el || typeof window === 'undefined' || !window.getComputedStyle) {\n return null;\n }\n try {\n return closestNode(el, function (el) {\n var computedStyle = window.getComputedStyle(el);\n var overflowRegex = /(auto|scroll)/;\n var properties = ['overflow', 'overflowX', 'overflowY'];\n return properties.some(function (property) {\n return overflowRegex.test(computedStyle[property]);\n });\n });\n } catch (error) {\n // In test environments, errors may occur, so return null\n return null;\n }\n}\n\n//# sourceURL=webpack://rsuite/./src/List/helper/utils.ts?");
|
|
3715
3715
|
|
|
3716
3716
|
/***/ }),
|
|
3717
3717
|
|
|
@@ -10774,9 +10774,9 @@ eval("var memoizeCapped = __webpack_require__(/*! ./_memoizeCapped */ \"./node_m
|
|
|
10774
10774
|
/*!***************************************!*\
|
|
10775
10775
|
!*** ./node_modules/lodash/_toKey.js ***!
|
|
10776
10776
|
\***************************************/
|
|
10777
|
-
/***/ (function(module) {
|
|
10777
|
+
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
|
|
10778
10778
|
|
|
10779
|
-
eval("
|
|
10779
|
+
eval("var isSymbol = __webpack_require__(/*! ./isSymbol */ \"./node_modules/lodash/isSymbol.js\");\n\n/** Used as references for various `Number` constants. */\nvar INFINITY = 1 / 0;\n\n/**\n * Converts `value` to a string key if it's not a string or symbol.\n *\n * @private\n * @param {*} value The value to inspect.\n * @returns {string|symbol} Returns the key.\n */\nfunction toKey(value) {\n if (typeof value == 'string' || isSymbol(value)) {\n return value;\n }\n var result = (value + '');\n return (result == '0' && (1 / value) == -INFINITY) ? '-0' : result;\n}\n\nmodule.exports = toKey;\n\n\n//# sourceURL=webpack://rsuite/./node_modules/lodash/_toKey.js?");
|
|
10780
10780
|
|
|
10781
10781
|
/***/ }),
|
|
10782
10782
|
|