@fluentui/react-utilities 9.0.0-nightly.f81b28ceb3.1 → 9.0.0-rc.4
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.json +209 -8
- package/CHANGELOG.md +64 -6
- package/dist/react-utilities.d.ts +225 -198
- package/lib/compose/getSlots.d.ts +11 -10
- package/lib/compose/getSlots.js +21 -30
- package/lib/compose/getSlots.js.map +1 -1
- package/lib/compose/index.d.ts +0 -5
- package/lib/compose/index.js +0 -5
- package/lib/compose/index.js.map +1 -1
- package/lib/compose/resolveShorthand.d.ts +10 -6
- package/lib/compose/resolveShorthand.js +13 -12
- package/lib/compose/resolveShorthand.js.map +1 -1
- package/lib/compose/types.d.ts +86 -76
- package/lib/compose/types.js +5 -1
- package/lib/compose/types.js.map +1 -1
- package/lib/hooks/index.d.ts +1 -1
- package/lib/hooks/index.js +1 -1
- package/lib/hooks/index.js.map +1 -1
- package/lib/hooks/useBoolean.js +10 -21
- package/lib/hooks/useBoolean.js.map +1 -1
- package/lib/hooks/useConst.js +1 -1
- package/lib/hooks/useConst.js.map +1 -1
- package/lib/hooks/useControllableState.d.ts +16 -6
- package/lib/hooks/useControllableState.js +26 -25
- package/lib/hooks/useControllableState.js.map +1 -1
- package/lib/hooks/useEventCallback.js +6 -12
- package/lib/hooks/useEventCallback.js.map +1 -1
- package/lib/hooks/useFirstMount.js +1 -1
- package/lib/hooks/useFirstMount.js.map +1 -1
- package/lib/hooks/useForceUpdate.js +1 -3
- package/lib/hooks/useForceUpdate.js.map +1 -1
- package/lib/hooks/useId.d.ts +1 -1
- package/lib/hooks/useId.js +9 -5
- package/lib/hooks/useId.js.map +1 -1
- package/lib/hooks/useIsomorphicLayoutEffect.js +1 -1
- package/lib/hooks/useIsomorphicLayoutEffect.js.map +1 -1
- package/lib/hooks/useMergedEventCallbacks.d.ts +18 -0
- package/lib/hooks/useMergedEventCallbacks.js +26 -0
- package/lib/hooks/useMergedEventCallbacks.js.map +1 -0
- package/lib/hooks/useMergedRefs.js +5 -13
- package/lib/hooks/useMergedRefs.js.map +1 -1
- package/lib/hooks/useMount.js +3 -3
- package/lib/hooks/useMount.js.map +1 -1
- package/lib/hooks/useOnClickOutside.js +30 -36
- package/lib/hooks/useOnClickOutside.js.map +1 -1
- package/lib/hooks/useOnScrollOutside.js +13 -15
- package/lib/hooks/useOnScrollOutside.js.map +1 -1
- package/lib/hooks/usePrevious.js +3 -3
- package/lib/hooks/usePrevious.js.map +1 -1
- package/lib/hooks/useTimeout.js +13 -17
- package/lib/hooks/useTimeout.js.map +1 -1
- package/lib/hooks/useUnmount.js +5 -7
- package/lib/hooks/useUnmount.js.map +1 -1
- package/lib/index.js.map +1 -1
- package/lib/ssr/SSRContext.js +9 -15
- package/lib/ssr/SSRContext.js.map +1 -1
- package/lib/ssr/canUseDOM.js.map +1 -1
- package/lib/ssr/index.js.map +1 -1
- package/lib/utils/applyTriggerPropsToChildren.d.ts +1 -1
- package/lib/utils/applyTriggerPropsToChildren.js +24 -4
- package/lib/utils/applyTriggerPropsToChildren.js.map +1 -1
- package/lib/utils/clamp.js +1 -3
- package/lib/utils/clamp.js.map +1 -1
- package/lib/utils/getNativeElementProps.d.ts +22 -0
- package/lib/utils/getNativeElementProps.js +26 -3
- package/lib/utils/getNativeElementProps.js.map +1 -1
- package/lib/utils/getRTLSafeKey.js +1 -1
- package/lib/utils/getRTLSafeKey.js.map +1 -1
- package/lib/utils/getReactCallbackName.d.ts +25 -0
- package/lib/utils/getReactCallbackName.js +26 -0
- package/lib/utils/getReactCallbackName.js.map +1 -0
- package/lib/utils/getTriggerChild.d.ts +22 -0
- package/lib/utils/getTriggerChild.js +26 -0
- package/lib/utils/getTriggerChild.js.map +1 -0
- package/lib/utils/index.d.ts +2 -1
- package/lib/utils/index.js +2 -1
- package/lib/utils/index.js.map +1 -1
- package/lib/utils/isFluentTrigger.d.ts +22 -0
- package/lib/utils/isFluentTrigger.js +8 -0
- package/lib/utils/isFluentTrigger.js.map +1 -0
- package/lib/utils/omit.js +2 -2
- package/lib/utils/omit.js.map +1 -1
- package/lib/utils/properties.d.ts +6 -0
- package/lib/utils/properties.js +63 -44
- package/lib/utils/properties.js.map +1 -1
- package/lib/utils/shouldPreventDefaultOnKeyDown.js +4 -4
- package/lib/utils/shouldPreventDefaultOnKeyDown.js.map +1 -1
- package/lib-commonjs/compose/getSlots.d.ts +11 -10
- package/lib-commonjs/compose/getSlots.js +23 -34
- package/lib-commonjs/compose/getSlots.js.map +1 -1
- package/lib-commonjs/compose/index.d.ts +0 -5
- package/lib-commonjs/compose/index.js +1 -11
- package/lib-commonjs/compose/index.js.map +1 -1
- package/lib-commonjs/compose/resolveShorthand.d.ts +10 -6
- package/lib-commonjs/compose/resolveShorthand.js +14 -14
- package/lib-commonjs/compose/resolveShorthand.js.map +1 -1
- package/lib-commonjs/compose/types.d.ts +86 -76
- package/lib-commonjs/compose/types.js +5 -1
- package/lib-commonjs/compose/types.js.map +1 -1
- package/lib-commonjs/hooks/index.d.ts +1 -1
- package/lib-commonjs/hooks/index.js +3 -3
- package/lib-commonjs/hooks/index.js.map +1 -1
- package/lib-commonjs/hooks/useBoolean.js +12 -23
- package/lib-commonjs/hooks/useBoolean.js.map +1 -1
- package/lib-commonjs/hooks/useConst.js +2 -2
- package/lib-commonjs/hooks/useConst.js.map +1 -1
- package/lib-commonjs/hooks/useControllableState.d.ts +16 -6
- package/lib-commonjs/hooks/useControllableState.js +28 -27
- package/lib-commonjs/hooks/useControllableState.js.map +1 -1
- package/lib-commonjs/hooks/useEventCallback.js +8 -14
- package/lib-commonjs/hooks/useEventCallback.js.map +1 -1
- package/lib-commonjs/hooks/useFirstMount.js +2 -2
- package/lib-commonjs/hooks/useFirstMount.js.map +1 -1
- package/lib-commonjs/hooks/useForceUpdate.js +2 -4
- package/lib-commonjs/hooks/useForceUpdate.js.map +1 -1
- package/lib-commonjs/hooks/useId.d.ts +1 -1
- package/lib-commonjs/hooks/useId.js +11 -7
- package/lib-commonjs/hooks/useId.js.map +1 -1
- package/lib-commonjs/hooks/useIsomorphicLayoutEffect.js +2 -2
- package/lib-commonjs/hooks/useIsomorphicLayoutEffect.js.map +1 -1
- package/lib-commonjs/hooks/useMergedEventCallbacks.d.ts +18 -0
- package/lib-commonjs/hooks/useMergedEventCallbacks.js +36 -0
- package/lib-commonjs/hooks/useMergedEventCallbacks.js.map +1 -0
- package/lib-commonjs/hooks/useMergedRefs.js +6 -15
- package/lib-commonjs/hooks/useMergedRefs.js.map +1 -1
- package/lib-commonjs/hooks/useMount.js +4 -4
- package/lib-commonjs/hooks/useMount.js.map +1 -1
- package/lib-commonjs/hooks/useOnClickOutside.js +32 -38
- package/lib-commonjs/hooks/useOnClickOutside.js.map +1 -1
- package/lib-commonjs/hooks/useOnScrollOutside.js +15 -17
- package/lib-commonjs/hooks/useOnScrollOutside.js.map +1 -1
- package/lib-commonjs/hooks/usePrevious.js +4 -4
- package/lib-commonjs/hooks/usePrevious.js.map +1 -1
- package/lib-commonjs/hooks/useTimeout.js +15 -19
- package/lib-commonjs/hooks/useTimeout.js.map +1 -1
- package/lib-commonjs/hooks/useUnmount.js +6 -8
- package/lib-commonjs/hooks/useUnmount.js.map +1 -1
- package/lib-commonjs/index.js +1 -1
- package/lib-commonjs/index.js.map +1 -1
- package/lib-commonjs/ssr/SSRContext.js +9 -15
- package/lib-commonjs/ssr/SSRContext.js.map +1 -1
- package/lib-commonjs/ssr/canUseDOM.js.map +1 -1
- package/lib-commonjs/ssr/index.js +1 -1
- package/lib-commonjs/ssr/index.js.map +1 -1
- package/lib-commonjs/utils/applyTriggerPropsToChildren.d.ts +1 -1
- package/lib-commonjs/utils/applyTriggerPropsToChildren.js +26 -6
- package/lib-commonjs/utils/applyTriggerPropsToChildren.js.map +1 -1
- package/lib-commonjs/utils/clamp.js +1 -3
- package/lib-commonjs/utils/clamp.js.map +1 -1
- package/lib-commonjs/utils/getNativeElementProps.d.ts +22 -0
- package/lib-commonjs/utils/getNativeElementProps.js +29 -4
- package/lib-commonjs/utils/getNativeElementProps.js.map +1 -1
- package/lib-commonjs/utils/getRTLSafeKey.js +1 -1
- package/lib-commonjs/utils/getRTLSafeKey.js.map +1 -1
- package/lib-commonjs/utils/getReactCallbackName.d.ts +25 -0
- package/lib-commonjs/utils/getReactCallbackName.js +35 -0
- package/lib-commonjs/utils/getReactCallbackName.js.map +1 -0
- package/lib-commonjs/utils/getTriggerChild.d.ts +22 -0
- package/lib-commonjs/utils/getTriggerChild.js +37 -0
- package/lib-commonjs/utils/getTriggerChild.js.map +1 -0
- package/lib-commonjs/utils/index.d.ts +2 -1
- package/lib-commonjs/utils/index.js +5 -3
- package/lib-commonjs/utils/index.js.map +1 -1
- package/lib-commonjs/utils/isFluentTrigger.d.ts +22 -0
- package/lib-commonjs/utils/isFluentTrigger.js +17 -0
- package/lib-commonjs/utils/isFluentTrigger.js.map +1 -0
- package/lib-commonjs/utils/omit.js +2 -2
- package/lib-commonjs/utils/omit.js.map +1 -1
- package/lib-commonjs/utils/properties.d.ts +6 -0
- package/lib-commonjs/utils/properties.js +60 -41
- package/lib-commonjs/utils/properties.js.map +1 -1
- package/lib-commonjs/utils/shouldPreventDefaultOnKeyDown.js +5 -5
- package/lib-commonjs/utils/shouldPreventDefaultOnKeyDown.js.map +1 -1
- package/package.json +6 -11
- package/lib/compose/getSlotsCompat.d.ts +0 -22
- package/lib/compose/getSlotsCompat.js +0 -56
- package/lib/compose/getSlotsCompat.js.map +0 -1
- package/lib/compose/makeMergeProps.d.ts +0 -15
- package/lib/compose/makeMergeProps.js +0 -106
- package/lib/compose/makeMergeProps.js.map +0 -1
- package/lib/compose/makeMergePropsCompat.d.ts +0 -9
- package/lib/compose/makeMergePropsCompat.js +0 -9
- package/lib/compose/makeMergePropsCompat.js.map +0 -1
- package/lib/compose/nullRender.d.ts +0 -4
- package/lib/compose/nullRender.js +0 -7
- package/lib/compose/nullRender.js.map +0 -1
- package/lib/compose/resolveShorthandProps.d.ts +0 -8
- package/lib/compose/resolveShorthandProps.js +0 -30
- package/lib/compose/resolveShorthandProps.js.map +0 -1
- package/lib/hooks/useControllableValue.d.ts +0 -20
- package/lib/hooks/useControllableValue.js +0 -62
- package/lib/hooks/useControllableValue.js.map +0 -1
- package/lib/utils/onlyChild.d.ts +0 -5
- package/lib/utils/onlyChild.js +0 -13
- package/lib/utils/onlyChild.js.map +0 -1
- package/lib-commonjs/compose/getSlotsCompat.d.ts +0 -22
- package/lib-commonjs/compose/getSlotsCompat.js +0 -68
- package/lib-commonjs/compose/getSlotsCompat.js.map +0 -1
- package/lib-commonjs/compose/makeMergeProps.d.ts +0 -15
- package/lib-commonjs/compose/makeMergeProps.js +0 -117
- package/lib-commonjs/compose/makeMergeProps.js.map +0 -1
- package/lib-commonjs/compose/makeMergePropsCompat.d.ts +0 -9
- package/lib-commonjs/compose/makeMergePropsCompat.js +0 -17
- package/lib-commonjs/compose/makeMergePropsCompat.js.map +0 -1
- package/lib-commonjs/compose/nullRender.d.ts +0 -4
- package/lib-commonjs/compose/nullRender.js +0 -16
- package/lib-commonjs/compose/nullRender.js.map +0 -1
- package/lib-commonjs/compose/resolveShorthandProps.d.ts +0 -8
- package/lib-commonjs/compose/resolveShorthandProps.js +0 -41
- package/lib-commonjs/compose/resolveShorthandProps.js.map +0 -1
- package/lib-commonjs/hooks/useControllableValue.d.ts +0 -20
- package/lib-commonjs/hooks/useControllableValue.js +0 -73
- package/lib-commonjs/hooks/useControllableValue.js.map +0 -1
- package/lib-commonjs/utils/onlyChild.d.ts +0 -5
- package/lib-commonjs/utils/onlyChild.js +0 -23
- package/lib-commonjs/utils/onlyChild.js.map +0 -1
@@ -1,106 +0,0 @@
|
|
1
|
-
import { __spreadArrays } from "tslib";
|
2
|
-
import * as React from 'react';
|
3
|
-
/**
|
4
|
-
* Concatenation helper, which can merge class names together. Skips over falsey values.
|
5
|
-
*
|
6
|
-
* @public
|
7
|
-
*/
|
8
|
-
|
9
|
-
function css() {
|
10
|
-
var args = [];
|
11
|
-
|
12
|
-
for (var _i = 0; _i < arguments.length; _i++) {
|
13
|
-
args[_i] = arguments[_i];
|
14
|
-
}
|
15
|
-
|
16
|
-
var classes = [];
|
17
|
-
|
18
|
-
for (var _a = 0, args_1 = args; _a < args_1.length; _a++) {
|
19
|
-
var arg = args_1[_a];
|
20
|
-
|
21
|
-
if (arg) {
|
22
|
-
if (typeof arg === 'string') {
|
23
|
-
classes.push(arg);
|
24
|
-
} else if (arg.hasOwnProperty('toString') && typeof arg.toString === 'function') {
|
25
|
-
classes.push(arg.toString());
|
26
|
-
} else {
|
27
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
28
|
-
for (var key in arg) {
|
29
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
30
|
-
if (arg[key]) {
|
31
|
-
classes.push(key);
|
32
|
-
}
|
33
|
-
}
|
34
|
-
}
|
35
|
-
}
|
36
|
-
}
|
37
|
-
|
38
|
-
return classes.join(' ');
|
39
|
-
}
|
40
|
-
/**
|
41
|
-
* Helper which deep clones props, but respectively assigns JSX, object refs, and class names
|
42
|
-
* appropriately.
|
43
|
-
*
|
44
|
-
* @param target - the target object to merge onto.
|
45
|
-
* @param propSets - one or more prop sets to deep merge onto the target.
|
46
|
-
*/
|
47
|
-
|
48
|
-
|
49
|
-
export var makeMergeProps = function (options) {
|
50
|
-
if (options === void 0) {
|
51
|
-
options = {};
|
52
|
-
}
|
53
|
-
|
54
|
-
var deepMerge = __spreadArrays(options.deepMerge || [], ['style']);
|
55
|
-
|
56
|
-
var mergeProps = function (target) {
|
57
|
-
var propSets = [];
|
58
|
-
|
59
|
-
for (var _i = 1; _i < arguments.length; _i++) {
|
60
|
-
propSets[_i - 1] = arguments[_i];
|
61
|
-
}
|
62
|
-
|
63
|
-
for (var _a = 0, propSets_1 = propSets; _a < propSets_1.length; _a++) {
|
64
|
-
var props = propSets_1[_a];
|
65
|
-
|
66
|
-
if (props) {
|
67
|
-
for (var _b = 0, _c = Object.keys(props); _b < _c.length; _b++) {
|
68
|
-
var propName = _c[_b];
|
69
|
-
var propValue = props[propName];
|
70
|
-
var propValueType = typeof propValue;
|
71
|
-
|
72
|
-
if (propValue !== undefined) {
|
73
|
-
if (propValue && propValueType === 'object') {
|
74
|
-
if (Array.isArray(propValue)) {
|
75
|
-
// for arrays, replace.
|
76
|
-
target[propName] = propValue;
|
77
|
-
} else {
|
78
|
-
target[propName] = target[propName] || {};
|
79
|
-
|
80
|
-
if (typeof target[propName] !== 'object' || /*#__PURE__*/React.isValidElement(propValue) || propValue && typeof propValue === 'object' && propValue.hasOwnProperty('current') || deepMerge.indexOf(propName) === -1) {
|
81
|
-
// if target is not an object, or value is JSX, or a ref object, replace
|
82
|
-
target[propName] = propValue;
|
83
|
-
} else {
|
84
|
-
// else deep merge.
|
85
|
-
mergeProps(target[propName], propValue);
|
86
|
-
}
|
87
|
-
}
|
88
|
-
} else if (propName === 'className') {
|
89
|
-
if (propValue) {
|
90
|
-
// for classnames, append
|
91
|
-
target[propName] = css(target[propName], propValue);
|
92
|
-
}
|
93
|
-
} else {
|
94
|
-
target[propName] = propValue;
|
95
|
-
}
|
96
|
-
}
|
97
|
-
}
|
98
|
-
}
|
99
|
-
}
|
100
|
-
|
101
|
-
return target;
|
102
|
-
};
|
103
|
-
|
104
|
-
return mergeProps;
|
105
|
-
};
|
106
|
-
//# sourceMappingURL=makeMergeProps.js.map
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"sources":["../../src/compose/makeMergeProps.ts"],"names":[],"mappings":"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","sourceRoot":""}
|
@@ -1,9 +0,0 @@
|
|
1
|
-
import type { MergePropsOptions } from './makeMergeProps';
|
2
|
-
declare type GenericDictionary = Record<string, any>;
|
3
|
-
/**
|
4
|
-
* Backwards-compatible version of makeMergeProps that has less restrictive type checking
|
5
|
-
*
|
6
|
-
* @deprecated Use makeMergeProps instead
|
7
|
-
*/
|
8
|
-
export declare const makeMergePropsCompat: <TState = Record<string, any>>(options?: MergePropsOptions<Record<string, any>> | undefined) => (target: GenericDictionary, ...propSets: (GenericDictionary | undefined)[]) => TState;
|
9
|
-
export {};
|
@@ -1,9 +0,0 @@
|
|
1
|
-
import { makeMergeProps } from './makeMergeProps';
|
2
|
-
/**
|
3
|
-
* Backwards-compatible version of makeMergeProps that has less restrictive type checking
|
4
|
-
*
|
5
|
-
* @deprecated Use makeMergeProps instead
|
6
|
-
*/
|
7
|
-
|
8
|
-
export var makeMergePropsCompat = makeMergeProps;
|
9
|
-
//# sourceMappingURL=makeMergePropsCompat.js.map
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"sources":["../../src/compose/makeMergePropsCompat.ts"],"names":[],"mappings":"AAAA,SAAS,cAAT,QAA+B,kBAA/B;AAMA;;;;AAIG;;AACH,OAAO,IAAM,oBAAoB,GAAG,cAA7B","sourceRoot":""}
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"sources":["../../src/compose/nullRender.tsx"],"names":[],"mappings":"AAAA;;AAEG;AACH,OAAO,IAAM,UAAU,GAAG,YAAA;AAAM,SAAA,IAAA;AAAI,CAA7B","sourceRoot":""}
|
@@ -1,8 +0,0 @@
|
|
1
|
-
import type { ResolvedShorthandPropsCompat } from './types';
|
2
|
-
/**
|
3
|
-
* Ensures that the given slots are represented using object syntax. This ensures that
|
4
|
-
* the object can be merged along with other objects.
|
5
|
-
* @param props - The incoming props
|
6
|
-
* @param shorthandPropNames - An array of prop names to apply simplification to
|
7
|
-
*/
|
8
|
-
export declare const resolveShorthandProps: <TProps, TShorthandPropNames extends keyof TProps>(props: TProps, shorthandPropNames: readonly TShorthandPropNames[]) => ResolvedShorthandPropsCompat<TProps, TShorthandPropNames>;
|
@@ -1,30 +0,0 @@
|
|
1
|
-
import { __assign } from "tslib";
|
2
|
-
import * as React from 'react';
|
3
|
-
/**
|
4
|
-
* Ensures that the given slots are represented using object syntax. This ensures that
|
5
|
-
* the object can be merged along with other objects.
|
6
|
-
* @param props - The incoming props
|
7
|
-
* @param shorthandPropNames - An array of prop names to apply simplification to
|
8
|
-
*/
|
9
|
-
|
10
|
-
export var resolveShorthandProps = function (props, shorthandPropNames) {
|
11
|
-
var newProps = props;
|
12
|
-
|
13
|
-
for (var _i = 0, shorthandPropNames_1 = shorthandPropNames; _i < shorthandPropNames_1.length; _i++) {
|
14
|
-
var propName = shorthandPropNames_1[_i];
|
15
|
-
var propValue = props[propName];
|
16
|
-
|
17
|
-
if (propValue !== undefined && (typeof propValue !== 'object' || /*#__PURE__*/React.isValidElement(propValue))) {
|
18
|
-
if (newProps === props) {
|
19
|
-
newProps = __assign({}, props); // Copy props before modifying
|
20
|
-
}
|
21
|
-
|
22
|
-
newProps[propName] = {
|
23
|
-
children: propValue
|
24
|
-
};
|
25
|
-
}
|
26
|
-
}
|
27
|
-
|
28
|
-
return newProps;
|
29
|
-
};
|
30
|
-
//# sourceMappingURL=resolveShorthandProps.js.map
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"sources":["../../src/compose/resolveShorthandProps.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,KAAZ,MAAuB,OAAvB;AAGA;;;;;AAKG;;AACH,OAAO,IAAM,qBAAqB,GAAG,UACnC,KADmC,EAEnC,kBAFmC,EAEe;AAElD,MAAI,QAAQ,GAAG,KAAf;;AAEA,OAAuB,IAAA,EAAA,GAAA,CAAA,EAAA,oBAAA,GAAA,kBAAvB,EAAuB,EAAA,GAAA,oBAAA,CAAA,MAAvB,EAAuB,EAAA,EAAvB,EAA2C;AAAtC,QAAM,QAAQ,GAAA,oBAAA,CAAA,EAAA,CAAd;AACH,QAAM,SAAS,GAAG,KAAK,CAAC,QAAD,CAAvB;;AACA,QAAI,SAAS,KAAK,SAAd,KAA4B,OAAO,SAAP,KAAqB,QAArB,iBAAiC,KAAK,CAAC,cAAN,CAAqB,SAArB,CAA7D,CAAJ,EAAmG;AACjG,UAAI,QAAQ,KAAK,KAAjB,EAAwB;AACtB,QAAA,QAAQ,GAAA,QAAA,CAAA,EAAA,EAAQ,KAAR,CAAR,CADsB,CACG;AAC1B;;AAEA,MAAA,QAAQ,CAAC,QAAD,CAAR,GAAoD;AAAE,QAAA,QAAQ,EAAE;AAAZ,OAApD;AACF;AACF;;AAED,SAAQ,QAAR;AACD,CAlBM","sourceRoot":""}
|
@@ -1,20 +0,0 @@
|
|
1
|
-
import * as React from 'react';
|
2
|
-
export declare type ChangeCallback<TElement extends HTMLElement, TValue, TEvent extends React.SyntheticEvent<TElement> | undefined> = (ev: TEvent, newValue: TValue | undefined) => void;
|
3
|
-
/**
|
4
|
-
* Default value can be a value or an initializer
|
5
|
-
*/
|
6
|
-
declare type DefaultValue<TValue> = TValue | (() => TValue);
|
7
|
-
/**
|
8
|
-
* Hook to manage a value that could be either controlled or uncontrolled, such as a checked state or
|
9
|
-
* text box string.
|
10
|
-
* @param controlledValue - The controlled value passed in the props. This value will always be used if provided,
|
11
|
-
* and the internal state will be updated to reflect it.
|
12
|
-
* @param defaultUncontrolledValue - Initial value for the internal state in the uncontrolled case.
|
13
|
-
* @returns An array of the current value and an updater callback. Like `React.useState`, the updater
|
14
|
-
* callback always has the same identity, and it can take either a new value, or a function which
|
15
|
-
* is passed the previous value and returns the new value.
|
16
|
-
* @see https://reactjs.org/docs/uncontrolled-components.html
|
17
|
-
*/
|
18
|
-
export declare function useControllableValue<TValue, TElement extends HTMLElement>(controlledValue: TValue, defaultUncontrolledValue: DefaultValue<TValue>): Readonly<[TValue, (update: React.SetStateAction<TValue>) => void]>;
|
19
|
-
export declare function useControllableValue<TValue, TElement extends HTMLElement, TEvent extends React.SyntheticEvent<TElement> | undefined>(controlledValue: TValue, defaultUncontrolledValue: DefaultValue<TValue>, onChange: ChangeCallback<TElement, TValue, TEvent>): Readonly<[TValue, (update: React.SetStateAction<TValue>, ev?: React.FormEvent<TElement>) => void]>;
|
20
|
-
export {};
|
@@ -1,62 +0,0 @@
|
|
1
|
-
import * as React from 'react';
|
2
|
-
import { useConst } from './useConst';
|
3
|
-
export function useControllableValue(controlledValue, defaultUncontrolledValue, onChange) {
|
4
|
-
var _a = React.useState(defaultUncontrolledValue),
|
5
|
-
value = _a[0],
|
6
|
-
setValue = _a[1];
|
7
|
-
|
8
|
-
var isControlled = useIsControlled(controlledValue);
|
9
|
-
var currentValue = isControlled ? controlledValue : value; // Duplicate the current value and onChange in refs so they're accessible from
|
10
|
-
// setValueOrCallOnChange without creating a new callback every time
|
11
|
-
|
12
|
-
var valueRef = React.useRef(currentValue);
|
13
|
-
var onChangeRef = React.useRef(onChange);
|
14
|
-
React.useEffect(function () {
|
15
|
-
valueRef.current = currentValue;
|
16
|
-
onChangeRef.current = onChange;
|
17
|
-
}); // To match the behavior of the setter returned by React.useState, this callback's identity
|
18
|
-
// should never change. This means it MUST NOT directly reference variables that can change.
|
19
|
-
|
20
|
-
var setValueOrCallOnChange = useConst(function () {
|
21
|
-
return function (update, ev) {
|
22
|
-
// Assuming here that TValue is not a function, because a controllable value will typically
|
23
|
-
// be something a user can enter as input
|
24
|
-
var newValue = typeof update === 'function' ? update(valueRef.current) : update;
|
25
|
-
|
26
|
-
if (onChangeRef.current) {
|
27
|
-
onChangeRef.current(ev, newValue);
|
28
|
-
}
|
29
|
-
|
30
|
-
if (!isControlled) {
|
31
|
-
setValue(newValue);
|
32
|
-
}
|
33
|
-
};
|
34
|
-
});
|
35
|
-
return [currentValue, setValueOrCallOnChange];
|
36
|
-
}
|
37
|
-
/**
|
38
|
-
* Helper hook to handle previous comparison of controlled/uncontrolled
|
39
|
-
* Prints an error when isControlled value switches between subsequent renders
|
40
|
-
*/
|
41
|
-
|
42
|
-
var useIsControlled = function (controlledValue) {
|
43
|
-
var isControlled = useConst(controlledValue !== undefined);
|
44
|
-
|
45
|
-
if (process.env.NODE_ENV !== 'production') {
|
46
|
-
// We don't want these warnings in production even though it is against native behaviour
|
47
|
-
// eslint-disable-next-line react-hooks/rules-of-hooks
|
48
|
-
React.useEffect(function () {
|
49
|
-
if (isControlled !== (controlledValue !== undefined)) {
|
50
|
-
var error = new Error();
|
51
|
-
var controlWarning = isControlled ? 'a controlled value to be uncontrolled' : 'an uncontrolled value to be controlled';
|
52
|
-
var undefinedWarning = isControlled ? 'defined to an undefined' : 'undefined to a defined'; // eslint-disable-next-line no-console
|
53
|
-
|
54
|
-
console.error([// Default react error
|
55
|
-
'A component is changing ' + controlWarning + '. This is likely caused by the value', 'changing from ' + undefinedWarning + ' value, which should not happen.', 'Decide between using a controlled or uncontrolled input element for the lifetime of the component.', 'More info: https://reactjs.org/link/controlled-components', error.stack].join(' '));
|
56
|
-
}
|
57
|
-
}, [isControlled, controlledValue]);
|
58
|
-
}
|
59
|
-
|
60
|
-
return isControlled;
|
61
|
-
};
|
62
|
-
//# sourceMappingURL=useControllableValue.js.map
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"sources":["../../src/hooks/useControllableValue.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAZ,MAAuB,OAAvB;AACA,SAAS,QAAT,QAAyB,YAAzB;AAqCA,OAAM,SAAU,oBAAV,CAKJ,eALI,EAMJ,wBANI,EAOJ,QAPI,EAO+C;AAE7C,MAAA,EAAA,GAAoB,KAAK,CAAC,QAAN,CAAmC,wBAAnC,CAApB;AAAA,MAAC,KAAK,GAAA,EAAA,CAAA,CAAA,CAAN;AAAA,MAAQ,QAAQ,GAAA,EAAA,CAAA,CAAA,CAAhB;;AACN,MAAM,YAAY,GAAG,eAAe,CAAC,eAAD,CAApC;AACA,MAAM,YAAY,GAAG,YAAY,GAAG,eAAH,GAAqB,KAAtD,CAJmD,CAMnD;AACA;;AACA,MAAM,QAAQ,GAAG,KAAK,CAAC,MAAN,CAAa,YAAb,CAAjB;AACA,MAAM,WAAW,GAAG,KAAK,CAAC,MAAN,CAAa,QAAb,CAApB;AACA,EAAA,KAAK,CAAC,SAAN,CAAgB,YAAA;AACd,IAAA,QAAQ,CAAC,OAAT,GAAmB,YAAnB;AACA,IAAA,WAAW,CAAC,OAAZ,GAAsB,QAAtB;AACD,GAHD,EAVmD,CAenD;AACA;;AACA,MAAM,sBAAsB,GAAG,QAAQ,CAAC,YAAA;AAAM,WAAA,UAAC,MAAD,EAAmD,EAAnD,EAA8D;AAC1G;AACA;AACA,UAAM,QAAQ,GAAG,OAAO,MAAP,KAAkB,UAAlB,GAAgC,MAAmB,CAAC,QAAQ,CAAC,OAAV,CAAnD,GAAwE,MAAzF;;AAEA,UAAI,WAAW,CAAC,OAAhB,EAAyB;AACvB,QAAA,WAAW,CAAC,OAAZ,CAAoB,EAApB,EAAyB,QAAzB;AACD;;AAED,UAAI,CAAC,YAAL,EAAmB;AACjB,QAAA,QAAQ,CAAC,QAAD,CAAR;AACD;AAX2C,KAAA;AAY7C,GAZsC,CAAvC;AAcA,SAAO,CAAC,YAAD,EAAe,sBAAf,CAAP;AACD;AAED;;;AAGG;;AACH,IAAM,eAAe,GAAG,UAAS,eAAT,EAAgC;AACtD,MAAM,YAAY,GAAG,QAAQ,CAAU,eAAe,KAAK,SAA9B,CAA7B;;AAEA,MAAI,OAAO,CAAC,GAAR,CAAY,QAAZ,KAAyB,YAA7B,EAA2C;AACzC;AACA;AACA,IAAA,KAAK,CAAC,SAAN,CAAgB,YAAA;AACd,UAAI,YAAY,MAAM,eAAe,KAAK,SAA1B,CAAhB,EAAsD;AACpD,YAAM,KAAK,GAAG,IAAI,KAAJ,EAAd;AAEA,YAAM,cAAc,GAAG,YAAY,GAC/B,uCAD+B,GAE/B,wCAFJ;AAIA,YAAM,gBAAgB,GAAG,YAAY,GAAG,yBAAH,GAA+B,wBAApE,CAPoD,CASpD;;AACA,QAAA,OAAO,CAAC,KAAR,CACE,CACE;AACA,qCAA6B,cAA7B,GAA8C,sCAFhD,EAGE,mBAAmB,gBAAnB,GAAsC,kCAHxC,EAIE,oGAJF,EAKE,2DALF,EAME,KAAK,CAAC,KANR,EAOE,IAPF,CAOO,GAPP,CADF;AAUD;AACF,KAtBD,EAsBG,CAAC,YAAD,EAAe,eAAf,CAtBH;AAuBD;;AAED,SAAO,YAAP;AACD,CAhCD","sourceRoot":""}
|
package/lib/utils/onlyChild.d.ts
DELETED
@@ -1,5 +0,0 @@
|
|
1
|
-
import * as React from 'react';
|
2
|
-
/**
|
3
|
-
* Similar to React.Children.only, but drills into fragments rather than treating them as a single child
|
4
|
-
*/
|
5
|
-
export declare const onlyChild: <P>(child: string | number | boolean | {} | React.ReactNodeArray | React.ReactPortal | React.ReactElement<P, string | ((props: any) => React.ReactElement<any, string | any | (new (props: any) => React.Component<any, any, any>)> | null) | (new (props: any) => React.Component<any, any, any>)> | null | undefined) => React.ReactElement<P, string | ((props: any) => React.ReactElement<any, string | any | (new (props: any) => React.Component<any, any, any>)> | null) | (new (props: any) => React.Component<any, any, any>)>;
|
package/lib/utils/onlyChild.js
DELETED
@@ -1,13 +0,0 @@
|
|
1
|
-
import * as React from 'react';
|
2
|
-
/**
|
3
|
-
* Similar to React.Children.only, but drills into fragments rather than treating them as a single child
|
4
|
-
*/
|
5
|
-
|
6
|
-
export var onlyChild = function (child) {
|
7
|
-
if (! /*#__PURE__*/React.isValidElement(child)) {
|
8
|
-
throw new Error("Component's child must be a single element");
|
9
|
-
}
|
10
|
-
|
11
|
-
return child.type === React.Fragment ? onlyChild(child.props.children) : child;
|
12
|
-
};
|
13
|
-
//# sourceMappingURL=onlyChild.js.map
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"sources":["../../src/utils/onlyChild.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAZ,MAAuB,OAAvB;AAEA;;AAEG;;AACH,OAAO,IAAM,SAAS,GAAG,UACvB,KADuB,EAC8F;AAErH,MAAI,eAAC,KAAK,CAAC,cAAN,CAAqB,KAArB,CAAL,EAAkC;AAChC,UAAM,IAAI,KAAJ,CAAU,4CAAV,CAAN;AACD;;AAED,SAAO,KAAK,CAAC,IAAN,KAAe,KAAK,CAAC,QAArB,GAAgC,SAAS,CAAC,KAAK,CAAC,KAAN,CAAY,QAAb,CAAzC,GAAkE,KAAzE;AACD,CARM","sourceRoot":""}
|
@@ -1,22 +0,0 @@
|
|
1
|
-
declare type GenericDictionary = Record<string, any>;
|
2
|
-
/**
|
3
|
-
* Given the state and an array of slot names, will break out `slots` and `slotProps`
|
4
|
-
* collections.
|
5
|
-
*
|
6
|
-
* The root is always derived from the `as` prop.
|
7
|
-
*
|
8
|
-
* Slots will render as null if they are rendered as primitives with undefined children.
|
9
|
-
*
|
10
|
-
* The slotProps will always omit the `as` prop within them, and for slots that are string
|
11
|
-
* primitives, the props will be filtered according the the slot type. For example, if the
|
12
|
-
* slot is rendered `as: 'a'`, the props will be filtered for acceptable anchor props.
|
13
|
-
*
|
14
|
-
* @param state - State including slot definitions
|
15
|
-
* @param slotNames - Name of which props are slots
|
16
|
-
* @returns An object containing the `slots` map and `slotProps` map.
|
17
|
-
*/
|
18
|
-
export declare const getSlotsCompat: (state: GenericDictionary, slotNames?: readonly string[] | undefined) => {
|
19
|
-
slots: Record<string, any>;
|
20
|
-
slotProps: Record<string, any>;
|
21
|
-
};
|
22
|
-
export {};
|
@@ -1,68 +0,0 @@
|
|
1
|
-
"use strict";
|
2
|
-
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
4
|
-
value: true
|
5
|
-
});
|
6
|
-
exports.getSlotsCompat = void 0;
|
7
|
-
|
8
|
-
var React = /*#__PURE__*/require("react");
|
9
|
-
|
10
|
-
var nullRender_1 = /*#__PURE__*/require("./nullRender");
|
11
|
-
|
12
|
-
var index_1 = /*#__PURE__*/require("../utils/index");
|
13
|
-
/**
|
14
|
-
* Given the state and an array of slot names, will break out `slots` and `slotProps`
|
15
|
-
* collections.
|
16
|
-
*
|
17
|
-
* The root is always derived from the `as` prop.
|
18
|
-
*
|
19
|
-
* Slots will render as null if they are rendered as primitives with undefined children.
|
20
|
-
*
|
21
|
-
* The slotProps will always omit the `as` prop within them, and for slots that are string
|
22
|
-
* primitives, the props will be filtered according the the slot type. For example, if the
|
23
|
-
* slot is rendered `as: 'a'`, the props will be filtered for acceptable anchor props.
|
24
|
-
*
|
25
|
-
* @param state - State including slot definitions
|
26
|
-
* @param slotNames - Name of which props are slots
|
27
|
-
* @returns An object containing the `slots` map and `slotProps` map.
|
28
|
-
*/
|
29
|
-
|
30
|
-
|
31
|
-
var getSlotsCompat = function (state, slotNames) {
|
32
|
-
var slots = {
|
33
|
-
root: state.as || 'div'
|
34
|
-
};
|
35
|
-
var slotProps = {
|
36
|
-
root: typeof slots.root === 'string' ? index_1.getNativeElementProps(slots.root, state, ['as']) : index_1.omit(state, ['as'])
|
37
|
-
};
|
38
|
-
|
39
|
-
if (slotNames) {
|
40
|
-
for (var _i = 0, slotNames_1 = slotNames; _i < slotNames_1.length; _i++) {
|
41
|
-
var name_1 = slotNames_1[_i];
|
42
|
-
var slotDefinition = state[name_1] || {};
|
43
|
-
var _a = slotDefinition.as,
|
44
|
-
slotAs = _a === void 0 ? 'span' : _a,
|
45
|
-
children = slotDefinition.children;
|
46
|
-
var isSlotPrimitive = typeof slotAs === 'string';
|
47
|
-
var isSlotEmpty = isSlotPrimitive && slotDefinition.children === undefined;
|
48
|
-
slots[name_1] = isSlotEmpty ? nullRender_1.nullRender : slotAs;
|
49
|
-
|
50
|
-
if (typeof children === 'function') {
|
51
|
-
slotProps[name_1] = {
|
52
|
-
children: children(slots[name_1], index_1.omit(slotDefinition, ['as', 'children']))
|
53
|
-
};
|
54
|
-
slots[name_1] = React.Fragment;
|
55
|
-
} else if (slots[name_1] !== nullRender_1.nullRender) {
|
56
|
-
slotProps[name_1] = isSlotPrimitive ? index_1.getNativeElementProps(slotAs, slotDefinition, ['as']) : index_1.omit(slotDefinition, ['as']);
|
57
|
-
}
|
58
|
-
}
|
59
|
-
}
|
60
|
-
|
61
|
-
return {
|
62
|
-
slots: slots,
|
63
|
-
slotProps: slotProps
|
64
|
-
};
|
65
|
-
};
|
66
|
-
|
67
|
-
exports.getSlotsCompat = getSlotsCompat;
|
68
|
-
//# sourceMappingURL=getSlotsCompat.js.map
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"sources":["../../src/compose/getSlotsCompat.ts"],"names":[],"mappings":";;;;;;;AAAA,IAAA,KAAA,gBAAA,OAAA,CAAA,OAAA,CAAA;;AAEA,IAAA,YAAA,gBAAA,OAAA,CAAA,cAAA,CAAA;;AACA,IAAA,OAAA,gBAAA,OAAA,CAAA,gBAAA,CAAA;AAKA;;;;;;;;;;;;;;;AAeG;;;AACI,IAAM,cAAc,GAAG,UAAC,KAAD,EAA2B,SAA3B,EAAwD;AACpF,MAAM,KAAK,GAAsB;AAC/B,IAAA,IAAI,EAAE,KAAK,CAAC,EAAN,IAAY;AADa,GAAjC;AAIA,MAAM,SAAS,GAAsB;AACnC,IAAA,IAAI,EAAE,OAAO,KAAK,CAAC,IAAb,KAAsB,QAAtB,GAAiC,OAAA,CAAA,qBAAA,CAAsB,KAAK,CAAC,IAA5B,EAAkC,KAAlC,EAAyC,CAAC,IAAD,CAAzC,CAAjC,GAAoF,OAAA,CAAA,IAAA,CAAK,KAAL,EAAY,CAAC,IAAD,CAAZ;AADvD,GAArC;;AAIA,MAAI,SAAJ,EAAe;AACb,SAAmB,IAAA,EAAA,GAAA,CAAA,EAAA,WAAA,GAAA,SAAnB,EAAmB,EAAA,GAAA,WAAA,CAAA,MAAnB,EAAmB,EAAA,EAAnB,EAA8B;AAAzB,UAAM,MAAI,GAAA,WAAA,CAAA,EAAA,CAAV;AACH,UAAM,cAAc,GAAG,KAAK,CAAC,MAAD,CAAL,IAAe,EAAtC;AACQ,UAAA,EAAA,GAAkC,cAAc,CAA7B,EAAnB;AAAA,UAAI,MAAM,GAAA,EAAA,KAAA,KAAA,CAAA,GAAG,MAAH,GAAS,EAAnB;AAAA,UAAqB,QAAQ,GAAK,cAAc,CAAnB,QAA7B;AACR,UAAM,eAAe,GAAG,OAAO,MAAP,KAAkB,QAA1C;AACA,UAAM,WAAW,GAAG,eAAe,IAAI,cAAc,CAAC,QAAf,KAA4B,SAAnE;AAEA,MAAA,KAAK,CAAC,MAAD,CAAL,GAAc,WAAW,GAAG,YAAA,CAAA,UAAH,GAAgB,MAAzC;;AAEA,UAAI,OAAO,QAAP,KAAoB,UAAxB,EAAoC;AAClC,QAAA,SAAS,CAAC,MAAD,CAAT,GAAkB;AAChB,UAAA,QAAQ,EAAE,QAAQ,CAAC,KAAK,CAAC,MAAD,CAAN,EAAc,OAAA,CAAA,IAAA,CAAK,cAAL,EAAqB,CAAC,IAAD,EAAO,UAAP,CAArB,CAAd;AADF,SAAlB;AAGA,QAAA,KAAK,CAAC,MAAD,CAAL,GAAc,KAAK,CAAC,QAApB;AACD,OALD,MAKO,IAAI,KAAK,CAAC,MAAD,CAAL,KAAgB,YAAA,CAAA,UAApB,EAAgC;AACrC,QAAA,SAAS,CAAC,MAAD,CAAT,GAAkB,eAAe,GAC7B,OAAA,CAAA,qBAAA,CAAsB,MAAtB,EAA8B,cAA9B,EAA8C,CAAC,IAAD,CAA9C,CAD6B,GAE7B,OAAA,CAAA,IAAA,CAAK,cAAL,EAAqB,CAAC,IAAD,CAArB,CAFJ;AAGD;AACF;AACF;;AAED,SAAO;AAAE,IAAA,KAAK,EAAA,KAAP;AAAS,IAAA,SAAS,EAAA;AAAlB,GAAP;AACD,CAhCM;;AAAM,OAAA,CAAA,cAAA,GAAc,cAAd","sourceRoot":""}
|
@@ -1,15 +0,0 @@
|
|
1
|
-
export declare type MergePropsOptions<TState> = {
|
2
|
-
/**
|
3
|
-
* A list of props to deep merge. By default, `style` will
|
4
|
-
* always be deep merged so it's not required to be provided.
|
5
|
-
*/
|
6
|
-
deepMerge?: readonly (keyof TState)[];
|
7
|
-
};
|
8
|
-
/**
|
9
|
-
* Helper which deep clones props, but respectively assigns JSX, object refs, and class names
|
10
|
-
* appropriately.
|
11
|
-
*
|
12
|
-
* @param target - the target object to merge onto.
|
13
|
-
* @param propSets - one or more prop sets to deep merge onto the target.
|
14
|
-
*/
|
15
|
-
export declare const makeMergeProps: <TState>(options?: MergePropsOptions<TState>) => (target: TState, ...propSets: (Partial<TState> | undefined)[]) => TState;
|
@@ -1,117 +0,0 @@
|
|
1
|
-
"use strict";
|
2
|
-
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
4
|
-
value: true
|
5
|
-
});
|
6
|
-
exports.makeMergeProps = void 0;
|
7
|
-
|
8
|
-
var tslib_1 = /*#__PURE__*/require("tslib");
|
9
|
-
|
10
|
-
var React = /*#__PURE__*/require("react");
|
11
|
-
/**
|
12
|
-
* Concatenation helper, which can merge class names together. Skips over falsey values.
|
13
|
-
*
|
14
|
-
* @public
|
15
|
-
*/
|
16
|
-
|
17
|
-
|
18
|
-
function css() {
|
19
|
-
var args = [];
|
20
|
-
|
21
|
-
for (var _i = 0; _i < arguments.length; _i++) {
|
22
|
-
args[_i] = arguments[_i];
|
23
|
-
}
|
24
|
-
|
25
|
-
var classes = [];
|
26
|
-
|
27
|
-
for (var _a = 0, args_1 = args; _a < args_1.length; _a++) {
|
28
|
-
var arg = args_1[_a];
|
29
|
-
|
30
|
-
if (arg) {
|
31
|
-
if (typeof arg === 'string') {
|
32
|
-
classes.push(arg);
|
33
|
-
} else if (arg.hasOwnProperty('toString') && typeof arg.toString === 'function') {
|
34
|
-
classes.push(arg.toString());
|
35
|
-
} else {
|
36
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
37
|
-
for (var key in arg) {
|
38
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
39
|
-
if (arg[key]) {
|
40
|
-
classes.push(key);
|
41
|
-
}
|
42
|
-
}
|
43
|
-
}
|
44
|
-
}
|
45
|
-
}
|
46
|
-
|
47
|
-
return classes.join(' ');
|
48
|
-
}
|
49
|
-
/**
|
50
|
-
* Helper which deep clones props, but respectively assigns JSX, object refs, and class names
|
51
|
-
* appropriately.
|
52
|
-
*
|
53
|
-
* @param target - the target object to merge onto.
|
54
|
-
* @param propSets - one or more prop sets to deep merge onto the target.
|
55
|
-
*/
|
56
|
-
|
57
|
-
|
58
|
-
var makeMergeProps = function (options) {
|
59
|
-
if (options === void 0) {
|
60
|
-
options = {};
|
61
|
-
}
|
62
|
-
|
63
|
-
var deepMerge = tslib_1.__spreadArrays(options.deepMerge || [], ['style']);
|
64
|
-
|
65
|
-
var mergeProps = function (target) {
|
66
|
-
var propSets = [];
|
67
|
-
|
68
|
-
for (var _i = 1; _i < arguments.length; _i++) {
|
69
|
-
propSets[_i - 1] = arguments[_i];
|
70
|
-
}
|
71
|
-
|
72
|
-
for (var _a = 0, propSets_1 = propSets; _a < propSets_1.length; _a++) {
|
73
|
-
var props = propSets_1[_a];
|
74
|
-
|
75
|
-
if (props) {
|
76
|
-
for (var _b = 0, _c = Object.keys(props); _b < _c.length; _b++) {
|
77
|
-
var propName = _c[_b];
|
78
|
-
var propValue = props[propName];
|
79
|
-
var propValueType = typeof propValue;
|
80
|
-
|
81
|
-
if (propValue !== undefined) {
|
82
|
-
if (propValue && propValueType === 'object') {
|
83
|
-
if (Array.isArray(propValue)) {
|
84
|
-
// for arrays, replace.
|
85
|
-
target[propName] = propValue;
|
86
|
-
} else {
|
87
|
-
target[propName] = target[propName] || {};
|
88
|
-
|
89
|
-
if (typeof target[propName] !== 'object' || React.isValidElement(propValue) || propValue && typeof propValue === 'object' && propValue.hasOwnProperty('current') || deepMerge.indexOf(propName) === -1) {
|
90
|
-
// if target is not an object, or value is JSX, or a ref object, replace
|
91
|
-
target[propName] = propValue;
|
92
|
-
} else {
|
93
|
-
// else deep merge.
|
94
|
-
mergeProps(target[propName], propValue);
|
95
|
-
}
|
96
|
-
}
|
97
|
-
} else if (propName === 'className') {
|
98
|
-
if (propValue) {
|
99
|
-
// for classnames, append
|
100
|
-
target[propName] = css(target[propName], propValue);
|
101
|
-
}
|
102
|
-
} else {
|
103
|
-
target[propName] = propValue;
|
104
|
-
}
|
105
|
-
}
|
106
|
-
}
|
107
|
-
}
|
108
|
-
}
|
109
|
-
|
110
|
-
return target;
|
111
|
-
};
|
112
|
-
|
113
|
-
return mergeProps;
|
114
|
-
};
|
115
|
-
|
116
|
-
exports.makeMergeProps = makeMergeProps;
|
117
|
-
//# sourceMappingURL=makeMergeProps.js.map
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"sources":["../../src/compose/makeMergeProps.ts"],"names":[],"mappings":"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","sourceRoot":""}
|
@@ -1,9 +0,0 @@
|
|
1
|
-
import type { MergePropsOptions } from './makeMergeProps';
|
2
|
-
declare type GenericDictionary = Record<string, any>;
|
3
|
-
/**
|
4
|
-
* Backwards-compatible version of makeMergeProps that has less restrictive type checking
|
5
|
-
*
|
6
|
-
* @deprecated Use makeMergeProps instead
|
7
|
-
*/
|
8
|
-
export declare const makeMergePropsCompat: <TState = Record<string, any>>(options?: MergePropsOptions<Record<string, any>> | undefined) => (target: GenericDictionary, ...propSets: (GenericDictionary | undefined)[]) => TState;
|
9
|
-
export {};
|
@@ -1,17 +0,0 @@
|
|
1
|
-
"use strict";
|
2
|
-
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
4
|
-
value: true
|
5
|
-
});
|
6
|
-
exports.makeMergePropsCompat = void 0;
|
7
|
-
|
8
|
-
var makeMergeProps_1 = /*#__PURE__*/require("./makeMergeProps");
|
9
|
-
/**
|
10
|
-
* Backwards-compatible version of makeMergeProps that has less restrictive type checking
|
11
|
-
*
|
12
|
-
* @deprecated Use makeMergeProps instead
|
13
|
-
*/
|
14
|
-
|
15
|
-
|
16
|
-
exports.makeMergePropsCompat = makeMergeProps_1.makeMergeProps;
|
17
|
-
//# sourceMappingURL=makeMergePropsCompat.js.map
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"sources":["../../src/compose/makeMergePropsCompat.ts"],"names":[],"mappings":";;;;;;;AAAA,IAAA,gBAAA,gBAAA,OAAA,CAAA,kBAAA,CAAA;AAMA;;;;AAIG;;;AACU,OAAA,CAAA,oBAAA,GAAuB,gBAAA,CAAA,cAAvB","sourceRoot":""}
|
@@ -1,16 +0,0 @@
|
|
1
|
-
"use strict";
|
2
|
-
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
4
|
-
value: true
|
5
|
-
});
|
6
|
-
exports.nullRender = void 0;
|
7
|
-
/**
|
8
|
-
* Simple constant function for returning null, used to render empty templates in JSX.
|
9
|
-
*/
|
10
|
-
|
11
|
-
var nullRender = function () {
|
12
|
-
return null;
|
13
|
-
};
|
14
|
-
|
15
|
-
exports.nullRender = nullRender;
|
16
|
-
//# sourceMappingURL=nullRender.js.map
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"sources":["../../src/compose/nullRender.tsx"],"names":[],"mappings":";;;;;;AAAA;;AAEG;;AACI,IAAM,UAAU,GAAG,YAAA;AAAM,SAAA,IAAA;AAAI,CAA7B;;AAAM,OAAA,CAAA,UAAA,GAAU,UAAV","sourceRoot":""}
|
@@ -1,8 +0,0 @@
|
|
1
|
-
import type { ResolvedShorthandPropsCompat } from './types';
|
2
|
-
/**
|
3
|
-
* Ensures that the given slots are represented using object syntax. This ensures that
|
4
|
-
* the object can be merged along with other objects.
|
5
|
-
* @param props - The incoming props
|
6
|
-
* @param shorthandPropNames - An array of prop names to apply simplification to
|
7
|
-
*/
|
8
|
-
export declare const resolveShorthandProps: <TProps, TShorthandPropNames extends keyof TProps>(props: TProps, shorthandPropNames: readonly TShorthandPropNames[]) => ResolvedShorthandPropsCompat<TProps, TShorthandPropNames>;
|