@aiszlab/relax 1.2.63 → 1.2.64
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.
|
@@ -93,26 +93,6 @@ function _nonIterableRest() {
|
|
|
93
93
|
function _nonIterableSpread() {
|
|
94
94
|
throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
|
|
95
95
|
}
|
|
96
|
-
function _objectWithoutProperties(e, t) {
|
|
97
|
-
if (null == e) return {};
|
|
98
|
-
var o,
|
|
99
|
-
r,
|
|
100
|
-
i = _objectWithoutPropertiesLoose(e, t);
|
|
101
|
-
if (Object.getOwnPropertySymbols) {
|
|
102
|
-
var s = Object.getOwnPropertySymbols(e);
|
|
103
|
-
for (r = 0; r < s.length; r++) o = s[r], t.includes(o) || {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]);
|
|
104
|
-
}
|
|
105
|
-
return i;
|
|
106
|
-
}
|
|
107
|
-
function _objectWithoutPropertiesLoose(r, e) {
|
|
108
|
-
if (null == r) return {};
|
|
109
|
-
var t = {};
|
|
110
|
-
for (var n in r) if ({}.hasOwnProperty.call(r, n)) {
|
|
111
|
-
if (e.includes(n)) continue;
|
|
112
|
-
t[n] = r[n];
|
|
113
|
-
}
|
|
114
|
-
return t;
|
|
115
|
-
}
|
|
116
96
|
function _slicedToArray(r, e) {
|
|
117
97
|
return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest();
|
|
118
98
|
}
|
|
@@ -150,4 +130,4 @@ function _unsupportedIterableToArray(r, a) {
|
|
|
150
130
|
}
|
|
151
131
|
}
|
|
152
132
|
|
|
153
|
-
export { _arrayLikeToArray as arrayLikeToArray, _arrayWithHoles as arrayWithHoles, _arrayWithoutHoles as arrayWithoutHoles, _assertClassBrand as assertClassBrand, _checkPrivateRedeclaration as checkPrivateRedeclaration, _classCallCheck as classCallCheck, _classPrivateFieldGet2 as classPrivateFieldGet2, _classPrivateFieldInitSpec as classPrivateFieldInitSpec, _classPrivateFieldSet2 as classPrivateFieldSet2, _classPrivateMethodInitSpec as classPrivateMethodInitSpec, _construct as construct, _createClass as createClass, _isNativeReflectConstruct as isNativeReflectConstruct, _iterableToArray as iterableToArray, _iterableToArrayLimit as iterableToArrayLimit, _nonIterableRest as nonIterableRest, _nonIterableSpread as nonIterableSpread,
|
|
133
|
+
export { _arrayLikeToArray as arrayLikeToArray, _arrayWithHoles as arrayWithHoles, _arrayWithoutHoles as arrayWithoutHoles, _assertClassBrand as assertClassBrand, _checkPrivateRedeclaration as checkPrivateRedeclaration, _classCallCheck as classCallCheck, _classPrivateFieldGet2 as classPrivateFieldGet2, _classPrivateFieldInitSpec as classPrivateFieldInitSpec, _classPrivateFieldSet2 as classPrivateFieldSet2, _classPrivateMethodInitSpec as classPrivateMethodInitSpec, _construct as construct, _createClass as createClass, _isNativeReflectConstruct as isNativeReflectConstruct, _iterableToArray as iterableToArray, _iterableToArrayLimit as iterableToArrayLimit, _nonIterableRest as nonIterableRest, _nonIterableSpread as nonIterableSpread, _slicedToArray as slicedToArray, _toConsumableArray as toConsumableArray, _toPrimitive as toPrimitive, _toPropertyKey as toPropertyKey, _typeof as typeof, _unsupportedIterableToArray as unsupportedIterableToArray };
|
|
@@ -19,7 +19,7 @@ type TogglableKey = {
|
|
|
19
19
|
* @description
|
|
20
20
|
* extra options
|
|
21
21
|
*/
|
|
22
|
-
type
|
|
22
|
+
type UseTogglableOptions = {
|
|
23
23
|
/**
|
|
24
24
|
* @description
|
|
25
25
|
* default toggled
|
|
@@ -35,12 +35,17 @@ type Options = {
|
|
|
35
35
|
* on toggle callback
|
|
36
36
|
*/
|
|
37
37
|
onToggle?: (keys: Key[]) => void;
|
|
38
|
+
/**
|
|
39
|
+
* @description
|
|
40
|
+
* default toggled keys
|
|
41
|
+
*/
|
|
42
|
+
defaultToggledKeys?: Key[];
|
|
38
43
|
};
|
|
39
44
|
/**
|
|
40
45
|
* @description
|
|
41
46
|
* toggle able
|
|
42
47
|
*/
|
|
43
|
-
export declare const useTogglable: (togglableKeys: TogglableKey[], { onToggle,
|
|
48
|
+
export declare const useTogglable: (togglableKeys: TogglableKey[], { onToggle, defaultToggledKeys, isDefaultToggled, toggledKeys }?: UseTogglableOptions) => {
|
|
44
49
|
toggledKeys: Set<Key>;
|
|
45
50
|
isToggled: (key: Key) => boolean;
|
|
46
51
|
toggle: (key: Key) => void;
|
|
@@ -1,9 +1,8 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { slicedToArray as _slicedToArray, createClass as _createClass, classPrivateFieldGet2 as _classPrivateFieldGet2, classCallCheck as _classCallCheck, classPrivateFieldInitSpec as _classPrivateFieldInitSpec, classPrivateFieldSet2 as _classPrivateFieldSet2 } from '../_virtual/_rollupPluginBabelHelpers.js';
|
|
2
2
|
import { useMemo, useCallback } from 'react';
|
|
3
3
|
import { useControlledState } from './use-controlled-state.js';
|
|
4
4
|
import { useEvent } from './use-event.js';
|
|
5
5
|
|
|
6
|
-
var _excluded = ["onToggle"];
|
|
7
6
|
var _groupedLeaves = /*#__PURE__*/new WeakMap();
|
|
8
7
|
var Tree = /*#__PURE__*/function () {
|
|
9
8
|
function Tree() {
|
|
@@ -139,36 +138,34 @@ var Leaf = /*#__PURE__*/function () {
|
|
|
139
138
|
var useTogglable = function useTogglable(togglableKeys) {
|
|
140
139
|
var _ref = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},
|
|
141
140
|
onToggle = _ref.onToggle,
|
|
142
|
-
|
|
143
|
-
|
|
141
|
+
_ref$defaultToggledKe = _ref.defaultToggledKeys,
|
|
142
|
+
defaultToggledKeys = _ref$defaultToggledKe === void 0 ? [] : _ref$defaultToggledKe,
|
|
143
|
+
isDefaultToggled = _ref.isDefaultToggled,
|
|
144
|
+
toggledKeys = _ref.toggledKeys;
|
|
145
|
+
// re-create tree when togglable keys changed
|
|
144
146
|
var tree = useMemo(function () {
|
|
145
147
|
return togglableKeys.reduce(function (_tree, togglable) {
|
|
146
148
|
return _tree.grow(togglable);
|
|
147
149
|
}, new Tree());
|
|
148
150
|
}, [togglableKeys]);
|
|
149
|
-
|
|
150
|
-
var _useControlledState = useControlledState(
|
|
151
|
+
// use controlled state to record toggled keys
|
|
152
|
+
var _useControlledState = useControlledState(toggledKeys, {
|
|
151
153
|
defaultState: function defaultState() {
|
|
152
|
-
return
|
|
153
|
-
leaves.forEach(function (leaf) {
|
|
154
|
-
return prev.add(leaf.key);
|
|
155
|
-
});
|
|
156
|
-
return prev;
|
|
157
|
-
}, new Set())) : [];
|
|
154
|
+
return isDefaultToggled ? Array.from(tree.groupedLeaves.keys()) : defaultToggledKeys;
|
|
158
155
|
}
|
|
159
156
|
}),
|
|
160
157
|
_useControlledState2 = _slicedToArray(_useControlledState, 2),
|
|
161
158
|
_toggledKeys = _useControlledState2[0],
|
|
162
159
|
_setToggledKeys = _useControlledState2[1];
|
|
163
|
-
|
|
160
|
+
// use set for toggled keys to make it read easily
|
|
164
161
|
var readableToggledKeys = useMemo(function () {
|
|
165
162
|
return new Set(_toggledKeys);
|
|
166
163
|
}, [_toggledKeys]);
|
|
167
|
-
|
|
164
|
+
// check current key is toggled
|
|
168
165
|
var isToggled = useCallback(function (key) {
|
|
169
|
-
return
|
|
166
|
+
return readableToggledKeys.has(key);
|
|
170
167
|
}, [readableToggledKeys]);
|
|
171
|
-
|
|
168
|
+
// toggle one key
|
|
172
169
|
var toggle = useEvent(function (key) {
|
|
173
170
|
// get new toggled keys by toggle current key
|
|
174
171
|
var _toggledKeys = Array.from(tree.toggle(key, readableToggledKeys));
|