@aiszlab/relax 1.3.15 → 1.3.16
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/dom/contains.cjs +4 -3
- package/dist/dom/contains.d.ts +1 -1
- package/dist/dom/contains.mjs +4 -3
- package/dist/hooks/use-click-away.d.ts +1 -1
- package/dist/hooks/use-refs.cjs +2 -2
- package/dist/hooks/use-refs.d.ts +2 -2
- package/dist/hooks/use-refs.mjs +2 -2
- package/dist/hooks/use-scrollable.d.ts +1 -1
- package/dist/index.cjs +2 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.mjs +1 -0
- package/dist/is/is-empty.cjs +1 -1
- package/dist/is/is-empty.mjs +1 -1
- package/dist/is/is-primitive.cjs +2 -1
- package/dist/is/is-primitive.d.ts +4 -2
- package/dist/is/is-primitive.mjs +2 -1
- package/dist/react/mount-ref.cjs +5 -5
- package/dist/react/mount-ref.d.ts +1 -1
- package/dist/react/mount-ref.mjs +5 -5
- package/dist/utils/clone.cjs +33 -6
- package/dist/utils/clone.d.ts +1 -1
- package/dist/utils/clone.mjs +33 -6
- package/dist/utils/first.d.ts +1 -1
- package/dist/utils/last.d.ts +1 -1
- package/dist/utils/merge.cjs +53 -0
- package/dist/utils/merge.d.ts +7 -0
- package/dist/utils/merge.mjs +51 -0
- package/dist/utils/unique.cjs +7 -2
- package/dist/utils/unique.d.ts +1 -1
- package/dist/utils/unique.mjs +7 -2
- package/package.json +3 -1
package/dist/dom/contains.cjs
CHANGED
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var contains = function contains(root
|
|
3
|
+
var contains = function contains(root) {
|
|
4
|
+
var node = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
|
|
4
5
|
if (!root) {
|
|
5
6
|
return false;
|
|
6
7
|
}
|
|
7
8
|
// Use native if support
|
|
8
|
-
if (root.contains) {
|
|
9
|
-
return root.contains(node
|
|
9
|
+
if (!!root.contains) {
|
|
10
|
+
return root.contains(node);
|
|
10
11
|
}
|
|
11
12
|
// `document.contains` not support with IE11
|
|
12
13
|
var _node = node;
|
package/dist/dom/contains.d.ts
CHANGED
|
@@ -13,4 +13,4 @@ export type Containable = {
|
|
|
13
13
|
*/
|
|
14
14
|
contains?: (node: Nullable<Node>) => boolean;
|
|
15
15
|
};
|
|
16
|
-
export declare const contains: (root: Voidable<Containable>, node
|
|
16
|
+
export declare const contains: (root: Voidable<Containable>, node?: Voidable<Node>) => boolean;
|
package/dist/dom/contains.mjs
CHANGED
|
@@ -1,10 +1,11 @@
|
|
|
1
|
-
var contains = function contains(root
|
|
1
|
+
var contains = function contains(root) {
|
|
2
|
+
var node = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
|
|
2
3
|
if (!root) {
|
|
3
4
|
return false;
|
|
4
5
|
}
|
|
5
6
|
// Use native if support
|
|
6
|
-
if (root.contains) {
|
|
7
|
-
return root.contains(node
|
|
7
|
+
if (!!root.contains) {
|
|
8
|
+
return root.contains(node);
|
|
8
9
|
}
|
|
9
10
|
// `document.contains` not support with IE11
|
|
10
11
|
var _node = node;
|
package/dist/hooks/use-refs.cjs
CHANGED
|
@@ -7,10 +7,10 @@ var useRefs = function useRefs() {
|
|
|
7
7
|
for (var _len = arguments.length, refs = new Array(_len), _key = 0; _key < _len; _key++) {
|
|
8
8
|
refs[_key] = arguments[_key];
|
|
9
9
|
}
|
|
10
|
-
return useEvent.useEvent(function (
|
|
10
|
+
return useEvent.useEvent(function (reference) {
|
|
11
11
|
refs.forEach(function (ref) {
|
|
12
12
|
if (!ref) return;
|
|
13
|
-
mountRef.mountRef(ref,
|
|
13
|
+
mountRef.mountRef(ref, reference);
|
|
14
14
|
});
|
|
15
15
|
});
|
|
16
16
|
};
|
package/dist/hooks/use-refs.d.ts
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import type { Nullable, Voidable } from "@aiszlab/relax/types";
|
|
2
|
-
import { type Refable } from "
|
|
3
|
-
export declare const useRefs: <T>(...refs: Voidable<Refable<Nullable<T>>>[]) => (
|
|
2
|
+
import { type Refable } from "../react";
|
|
3
|
+
export declare const useRefs: <T>(...refs: Voidable<Refable<Nullable<T>>>[]) => (reference: T) => void;
|
package/dist/hooks/use-refs.mjs
CHANGED
|
@@ -5,10 +5,10 @@ var useRefs = function useRefs() {
|
|
|
5
5
|
for (var _len = arguments.length, refs = new Array(_len), _key = 0; _key < _len; _key++) {
|
|
6
6
|
refs[_key] = arguments[_key];
|
|
7
7
|
}
|
|
8
|
-
return useEvent(function (
|
|
8
|
+
return useEvent(function (reference) {
|
|
9
9
|
refs.forEach(function (ref) {
|
|
10
10
|
if (!ref) return;
|
|
11
|
-
mountRef(ref,
|
|
11
|
+
mountRef(ref, reference);
|
|
12
12
|
});
|
|
13
13
|
});
|
|
14
14
|
};
|
package/dist/index.cjs
CHANGED
|
@@ -67,6 +67,7 @@ var replace = require('./utils/replace.cjs');
|
|
|
67
67
|
var clsx = require('./utils/clsx.cjs');
|
|
68
68
|
var first = require('./utils/first.cjs');
|
|
69
69
|
var last = require('./utils/last.cjs');
|
|
70
|
+
var merge = require('./utils/merge.cjs');
|
|
70
71
|
|
|
71
72
|
|
|
72
73
|
|
|
@@ -138,3 +139,4 @@ exports.replace = replace.replace;
|
|
|
138
139
|
exports.clsx = clsx.clsx;
|
|
139
140
|
exports.first = first.first;
|
|
140
141
|
exports.last = last.last;
|
|
142
|
+
exports.merge = merge.merge;
|
package/dist/index.d.ts
CHANGED
package/dist/index.mjs
CHANGED
package/dist/is/is-empty.cjs
CHANGED
package/dist/is/is-empty.mjs
CHANGED
package/dist/is/is-primitive.cjs
CHANGED
|
@@ -1,5 +1,7 @@
|
|
|
1
|
+
export type Primitive = string | number | symbol | boolean | null | undefined;
|
|
1
2
|
/**
|
|
2
3
|
* @description
|
|
3
|
-
*
|
|
4
|
+
* primitive type
|
|
5
|
+
* string | number | symbol | boolean | null | undefined
|
|
4
6
|
*/
|
|
5
|
-
export declare const isPrimitive: (value: unknown) =>
|
|
7
|
+
export declare const isPrimitive: <T extends Primitive>(value: unknown) => value is T;
|
package/dist/is/is-primitive.mjs
CHANGED
package/dist/react/mount-ref.cjs
CHANGED
|
@@ -2,18 +2,18 @@
|
|
|
2
2
|
|
|
3
3
|
var isFunction = require('../is/is-function.cjs');
|
|
4
4
|
|
|
5
|
-
var mountRef = function mountRef(
|
|
6
|
-
if (isFunction.isFunction(
|
|
7
|
-
|
|
5
|
+
var mountRef = function mountRef(refable, reference) {
|
|
6
|
+
if (isFunction.isFunction(refable)) {
|
|
7
|
+
refable(reference);
|
|
8
8
|
return;
|
|
9
9
|
}
|
|
10
10
|
// in deprecated react, class component can use string ref
|
|
11
11
|
// but there are many problems, in relax, we just make it not work
|
|
12
12
|
// issue for react: https://github.com/facebook/react/pull/8333#issuecomment-271648615
|
|
13
|
-
if (typeof
|
|
13
|
+
if (typeof refable === "string") {
|
|
14
14
|
return;
|
|
15
15
|
}
|
|
16
|
-
|
|
16
|
+
refable.current = reference;
|
|
17
17
|
};
|
|
18
18
|
|
|
19
19
|
exports.mountRef = mountRef;
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import type { MutableRefObject, RefCallback } from "react";
|
|
2
2
|
export type Refable<T> = RefCallback<T> | MutableRefObject<T> | string;
|
|
3
|
-
export declare const mountRef: <T>(
|
|
3
|
+
export declare const mountRef: <T>(refable: Refable<T>, reference: T) => void;
|
package/dist/react/mount-ref.mjs
CHANGED
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
import { isFunction } from '../is/is-function.mjs';
|
|
2
2
|
|
|
3
|
-
var mountRef = function mountRef(
|
|
4
|
-
if (isFunction(
|
|
5
|
-
|
|
3
|
+
var mountRef = function mountRef(refable, reference) {
|
|
4
|
+
if (isFunction(refable)) {
|
|
5
|
+
refable(reference);
|
|
6
6
|
return;
|
|
7
7
|
}
|
|
8
8
|
// in deprecated react, class component can use string ref
|
|
9
9
|
// but there are many problems, in relax, we just make it not work
|
|
10
10
|
// issue for react: https://github.com/facebook/react/pull/8333#issuecomment-271648615
|
|
11
|
-
if (typeof
|
|
11
|
+
if (typeof refable === "string") {
|
|
12
12
|
return;
|
|
13
13
|
}
|
|
14
|
-
|
|
14
|
+
refable.current = reference;
|
|
15
15
|
};
|
|
16
16
|
|
|
17
17
|
export { mountRef };
|
package/dist/utils/clone.cjs
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
+
var _slicedToArray = require('@babel/runtime/helpers/slicedToArray');
|
|
3
4
|
var isArray = require('../is/is-array.cjs');
|
|
4
5
|
var isPrimitive = require('../is/is-primitive.cjs');
|
|
5
6
|
|
|
@@ -8,12 +9,38 @@ var isPrimitive = require('../is/is-primitive.cjs');
|
|
|
8
9
|
* in develop, there are many cases to clone a string/number/object/array
|
|
9
10
|
* this util is planning to resolve it
|
|
10
11
|
*/
|
|
11
|
-
var
|
|
12
|
+
var _clone = function clone(value) {
|
|
12
13
|
if (isPrimitive.isPrimitive(value)) return value;
|
|
13
|
-
if (value instanceof Map)
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
14
|
+
if (value instanceof Map) {
|
|
15
|
+
// @ts-ignore
|
|
16
|
+
return new Map(Array.from(value.entries()).map(function (_ref) {
|
|
17
|
+
var _ref2 = _slicedToArray(_ref, 2),
|
|
18
|
+
_key = _ref2[0],
|
|
19
|
+
_value = _ref2[1];
|
|
20
|
+
return [_key, _clone(_value)];
|
|
21
|
+
}));
|
|
22
|
+
}
|
|
23
|
+
if (value instanceof Set) {
|
|
24
|
+
// @ts-ignore
|
|
25
|
+
return new Set(Array.from(value.values()).map(function (_value) {
|
|
26
|
+
return _clone(_value);
|
|
27
|
+
}));
|
|
28
|
+
}
|
|
29
|
+
if (isArray.isArray(value)) {
|
|
30
|
+
// @ts-ignore
|
|
31
|
+
return value.map(function (_value) {
|
|
32
|
+
return _clone(_value);
|
|
33
|
+
});
|
|
34
|
+
}
|
|
35
|
+
// @ts-ignore
|
|
36
|
+
return Object.entries(value).reduce(function (cloned, _ref3) {
|
|
37
|
+
var _ref4 = _slicedToArray(_ref3, 2),
|
|
38
|
+
_key = _ref4[0],
|
|
39
|
+
_value = _ref4[1];
|
|
40
|
+
// @ts-ignore
|
|
41
|
+
cloned[_key] = _clone(_value);
|
|
42
|
+
return cloned;
|
|
43
|
+
}, {});
|
|
17
44
|
};
|
|
18
45
|
|
|
19
|
-
exports.clone =
|
|
46
|
+
exports.clone = _clone;
|
package/dist/utils/clone.d.ts
CHANGED
package/dist/utils/clone.mjs
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import _slicedToArray from '@babel/runtime/helpers/slicedToArray';
|
|
1
2
|
import { isArray } from '../is/is-array.mjs';
|
|
2
3
|
import { isPrimitive } from '../is/is-primitive.mjs';
|
|
3
4
|
|
|
@@ -6,12 +7,38 @@ import { isPrimitive } from '../is/is-primitive.mjs';
|
|
|
6
7
|
* in develop, there are many cases to clone a string/number/object/array
|
|
7
8
|
* this util is planning to resolve it
|
|
8
9
|
*/
|
|
9
|
-
var
|
|
10
|
+
var _clone = function clone(value) {
|
|
10
11
|
if (isPrimitive(value)) return value;
|
|
11
|
-
if (value instanceof Map)
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
12
|
+
if (value instanceof Map) {
|
|
13
|
+
// @ts-ignore
|
|
14
|
+
return new Map(Array.from(value.entries()).map(function (_ref) {
|
|
15
|
+
var _ref2 = _slicedToArray(_ref, 2),
|
|
16
|
+
_key = _ref2[0],
|
|
17
|
+
_value = _ref2[1];
|
|
18
|
+
return [_key, _clone(_value)];
|
|
19
|
+
}));
|
|
20
|
+
}
|
|
21
|
+
if (value instanceof Set) {
|
|
22
|
+
// @ts-ignore
|
|
23
|
+
return new Set(Array.from(value.values()).map(function (_value) {
|
|
24
|
+
return _clone(_value);
|
|
25
|
+
}));
|
|
26
|
+
}
|
|
27
|
+
if (isArray(value)) {
|
|
28
|
+
// @ts-ignore
|
|
29
|
+
return value.map(function (_value) {
|
|
30
|
+
return _clone(_value);
|
|
31
|
+
});
|
|
32
|
+
}
|
|
33
|
+
// @ts-ignore
|
|
34
|
+
return Object.entries(value).reduce(function (cloned, _ref3) {
|
|
35
|
+
var _ref4 = _slicedToArray(_ref3, 2),
|
|
36
|
+
_key = _ref4[0],
|
|
37
|
+
_value = _ref4[1];
|
|
38
|
+
// @ts-ignore
|
|
39
|
+
cloned[_key] = _clone(_value);
|
|
40
|
+
return cloned;
|
|
41
|
+
}, {});
|
|
15
42
|
};
|
|
16
43
|
|
|
17
|
-
export { clone };
|
|
44
|
+
export { _clone as clone };
|
package/dist/utils/first.d.ts
CHANGED
package/dist/utils/last.d.ts
CHANGED
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var _objectSpread = require('@babel/runtime/helpers/objectSpread2');
|
|
4
|
+
var isArray = require('../is/is-array.cjs');
|
|
5
|
+
var isFunction = require('../is/is-function.cjs');
|
|
6
|
+
var isPrimitive = require('../is/is-primitive.cjs');
|
|
7
|
+
var clone = require('./clone.cjs');
|
|
8
|
+
var unique = require('./unique.cjs');
|
|
9
|
+
|
|
10
|
+
var _merge2 = function _merge(previous, next) {
|
|
11
|
+
if (isPrimitive.isPrimitive(previous) || isPrimitive.isPrimitive(next) || isFunction.isFunction(previous) || isFunction.isFunction(next) || previous === next) {
|
|
12
|
+
return clone.clone(next);
|
|
13
|
+
}
|
|
14
|
+
var _previous = new Map(Object.entries(previous));
|
|
15
|
+
var _next = new Map(Object.entries(next));
|
|
16
|
+
var _uniqueKeys = unique.unique(_previous.keys(), _next.keys());
|
|
17
|
+
var merged = _uniqueKeys.reduce(function (_merged, _key) {
|
|
18
|
+
var _previousValue = _previous.get(_key);
|
|
19
|
+
var _nextValue = _next.get(_key);
|
|
20
|
+
if (!_next.has(_key)) {
|
|
21
|
+
_merged[_key] = clone.clone(_previousValue);
|
|
22
|
+
return _merged;
|
|
23
|
+
}
|
|
24
|
+
// deep merge child value
|
|
25
|
+
_merged[_key] = _merge2(_previousValue, _nextValue);
|
|
26
|
+
return _merged;
|
|
27
|
+
}, {});
|
|
28
|
+
// convert value type same as previous
|
|
29
|
+
// if `previous` is object, use merged object directly
|
|
30
|
+
if (!isArray.isArray(previous)) return merged;
|
|
31
|
+
// else `previous` is array, check next value type
|
|
32
|
+
// but length will be merged when next value is array
|
|
33
|
+
return Array.from(_objectSpread(_objectSpread({}, merged), {}, {
|
|
34
|
+
length: isArray.isArray(next) ? Object.keys(merged).length : previous.length
|
|
35
|
+
}));
|
|
36
|
+
};
|
|
37
|
+
/**
|
|
38
|
+
* @description
|
|
39
|
+
* deep merge api
|
|
40
|
+
* use unique values to avoid duplicate
|
|
41
|
+
*/
|
|
42
|
+
var merge = function merge() {
|
|
43
|
+
for (var _len = arguments.length, values = new Array(_len), _key2 = 0; _key2 < _len; _key2++) {
|
|
44
|
+
values[_key2] = arguments[_key2];
|
|
45
|
+
}
|
|
46
|
+
// @ts-ignore
|
|
47
|
+
return unique.unique(values).reduce(function (_merged, _value) {
|
|
48
|
+
// @ts-ignore
|
|
49
|
+
return _merge2(_merged, _value !== null && _value !== void 0 ? _value : {});
|
|
50
|
+
}, null);
|
|
51
|
+
};
|
|
52
|
+
|
|
53
|
+
exports.merge = merge;
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import _objectSpread from '@babel/runtime/helpers/objectSpread2';
|
|
2
|
+
import { isArray } from '../is/is-array.mjs';
|
|
3
|
+
import { isFunction } from '../is/is-function.mjs';
|
|
4
|
+
import { isPrimitive } from '../is/is-primitive.mjs';
|
|
5
|
+
import { clone as _clone } from './clone.mjs';
|
|
6
|
+
import { unique } from './unique.mjs';
|
|
7
|
+
|
|
8
|
+
var _merge2 = function _merge(previous, next) {
|
|
9
|
+
if (isPrimitive(previous) || isPrimitive(next) || isFunction(previous) || isFunction(next) || previous === next) {
|
|
10
|
+
return _clone(next);
|
|
11
|
+
}
|
|
12
|
+
var _previous = new Map(Object.entries(previous));
|
|
13
|
+
var _next = new Map(Object.entries(next));
|
|
14
|
+
var _uniqueKeys = unique(_previous.keys(), _next.keys());
|
|
15
|
+
var merged = _uniqueKeys.reduce(function (_merged, _key) {
|
|
16
|
+
var _previousValue = _previous.get(_key);
|
|
17
|
+
var _nextValue = _next.get(_key);
|
|
18
|
+
if (!_next.has(_key)) {
|
|
19
|
+
_merged[_key] = _clone(_previousValue);
|
|
20
|
+
return _merged;
|
|
21
|
+
}
|
|
22
|
+
// deep merge child value
|
|
23
|
+
_merged[_key] = _merge2(_previousValue, _nextValue);
|
|
24
|
+
return _merged;
|
|
25
|
+
}, {});
|
|
26
|
+
// convert value type same as previous
|
|
27
|
+
// if `previous` is object, use merged object directly
|
|
28
|
+
if (!isArray(previous)) return merged;
|
|
29
|
+
// else `previous` is array, check next value type
|
|
30
|
+
// but length will be merged when next value is array
|
|
31
|
+
return Array.from(_objectSpread(_objectSpread({}, merged), {}, {
|
|
32
|
+
length: isArray(next) ? Object.keys(merged).length : previous.length
|
|
33
|
+
}));
|
|
34
|
+
};
|
|
35
|
+
/**
|
|
36
|
+
* @description
|
|
37
|
+
* deep merge api
|
|
38
|
+
* use unique values to avoid duplicate
|
|
39
|
+
*/
|
|
40
|
+
var merge = function merge() {
|
|
41
|
+
for (var _len = arguments.length, values = new Array(_len), _key2 = 0; _key2 < _len; _key2++) {
|
|
42
|
+
values[_key2] = arguments[_key2];
|
|
43
|
+
}
|
|
44
|
+
// @ts-ignore
|
|
45
|
+
return unique(values).reduce(function (_merged, _value) {
|
|
46
|
+
// @ts-ignore
|
|
47
|
+
return _merge2(_merged, _value !== null && _value !== void 0 ? _value : {});
|
|
48
|
+
}, null);
|
|
49
|
+
};
|
|
50
|
+
|
|
51
|
+
export { merge };
|
package/dist/utils/unique.cjs
CHANGED
|
@@ -4,8 +4,13 @@
|
|
|
4
4
|
* @description
|
|
5
5
|
* unique
|
|
6
6
|
*/
|
|
7
|
-
var unique = function unique(
|
|
8
|
-
|
|
7
|
+
var unique = function unique() {
|
|
8
|
+
for (var _len = arguments.length, values = new Array(_len), _key = 0; _key < _len; _key++) {
|
|
9
|
+
values[_key] = arguments[_key];
|
|
10
|
+
}
|
|
11
|
+
return Array.from(values.reduce(function (unionize, _value) {
|
|
12
|
+
return unionize.union(new Set(_value));
|
|
13
|
+
}, new Set()));
|
|
9
14
|
};
|
|
10
15
|
/**
|
|
11
16
|
* @description
|
package/dist/utils/unique.d.ts
CHANGED
package/dist/utils/unique.mjs
CHANGED
|
@@ -2,8 +2,13 @@
|
|
|
2
2
|
* @description
|
|
3
3
|
* unique
|
|
4
4
|
*/
|
|
5
|
-
var unique = function unique(
|
|
6
|
-
|
|
5
|
+
var unique = function unique() {
|
|
6
|
+
for (var _len = arguments.length, values = new Array(_len), _key = 0; _key < _len; _key++) {
|
|
7
|
+
values[_key] = arguments[_key];
|
|
8
|
+
}
|
|
9
|
+
return Array.from(values.reduce(function (unionize, _value) {
|
|
10
|
+
return unionize.union(new Set(_value));
|
|
11
|
+
}, new Set()));
|
|
7
12
|
};
|
|
8
13
|
/**
|
|
9
14
|
* @description
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@aiszlab/relax",
|
|
3
|
-
"version": "1.3.
|
|
3
|
+
"version": "1.3.16",
|
|
4
4
|
"description": "react utils collection",
|
|
5
5
|
"exports": {
|
|
6
6
|
".": {
|
|
@@ -32,6 +32,7 @@
|
|
|
32
32
|
"clean:build": "rm -rf dist",
|
|
33
33
|
"prepublishOnly": "npm run clean:build && npm run build",
|
|
34
34
|
"test": "jest",
|
|
35
|
+
"test:coverage": "jest --coverage",
|
|
35
36
|
"publish:npm": "npm publish"
|
|
36
37
|
},
|
|
37
38
|
"dependencies": {
|
|
@@ -50,6 +51,7 @@
|
|
|
50
51
|
"@rollup/plugin-node-resolve": "^15.2.3",
|
|
51
52
|
"@rollup/plugin-typescript": "^11.1.6",
|
|
52
53
|
"@testing-library/react": "^16.0.1",
|
|
54
|
+
"@types/babel__core": "^7.20.5",
|
|
53
55
|
"@types/react": "^18.3.6",
|
|
54
56
|
"@types/react-dom": "^18.3.0",
|
|
55
57
|
"@types/react-is": "^18.3.0",
|