@fluentui/react-utilities 9.0.0-nightly.f81b28ceb3.1 → 9.0.0-rc.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.json +167 -8
- package/CHANGELOG.md +44 -6
- package/dist/react-utilities.d.ts +218 -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.js +2 -4
- 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/ssr/SSRContext.js +9 -15
- package/lib/ssr/SSRContext.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 +24 -2
- 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.js +55 -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.js +4 -6
- 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/ssr/SSRContext.js +9 -15
- package/lib-commonjs/ssr/SSRContext.js.map +1 -1
- package/lib-commonjs/ssr/index.js +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 +28 -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.js +51 -40
- 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
package/lib/utils/properties.js
CHANGED
@@ -1,18 +1,10 @@
|
|
1
|
-
|
2
|
-
|
1
|
+
const toObjectMap = (...items) => {
|
2
|
+
const result = {};
|
3
3
|
|
4
|
-
for (
|
5
|
-
|
6
|
-
}
|
7
|
-
|
8
|
-
var result = {};
|
9
|
-
|
10
|
-
for (var _a = 0, items_1 = items; _a < items_1.length; _a++) {
|
11
|
-
var item = items_1[_a];
|
12
|
-
var keys = Array.isArray(item) ? item : Object.keys(item);
|
4
|
+
for (const item of items) {
|
5
|
+
const keys = Array.isArray(item) ? item : Object.keys(item);
|
13
6
|
|
14
|
-
for (
|
15
|
-
var key = keys_1[_b];
|
7
|
+
for (const key of keys) {
|
16
8
|
result[key] = 1;
|
17
9
|
}
|
18
10
|
}
|
@@ -26,155 +18,175 @@ var toObjectMap = function () {
|
|
26
18
|
*/
|
27
19
|
|
28
20
|
|
29
|
-
export
|
21
|
+
export const baseElementEvents = /*#__PURE__*/toObjectMap(['onAuxClick', 'onCopy', 'onCut', 'onPaste', 'onCompositionEnd', 'onCompositionStart', 'onCompositionUpdate', 'onFocus', 'onFocusCapture', 'onBlur', 'onBlurCapture', 'onChange', 'onInput', 'onSubmit', 'onLoad', 'onError', 'onKeyDown', 'onKeyDownCapture', 'onKeyPress', 'onKeyUp', 'onAbort', 'onCanPlay', 'onCanPlayThrough', 'onDurationChange', 'onEmptied', 'onEncrypted', 'onEnded', 'onLoadedData', 'onLoadedMetadata', 'onLoadStart', 'onPause', 'onPlay', 'onPlaying', 'onProgress', 'onRateChange', 'onSeeked', 'onSeeking', 'onStalled', 'onSuspend', 'onTimeUpdate', 'onVolumeChange', 'onWaiting', 'onClick', 'onClickCapture', 'onContextMenu', 'onDoubleClick', 'onDrag', 'onDragEnd', 'onDragEnter', 'onDragExit', 'onDragLeave', 'onDragOver', 'onDragStart', 'onDrop', 'onMouseDown', 'onMouseDownCapture', 'onMouseEnter', 'onMouseLeave', 'onMouseMove', 'onMouseOut', 'onMouseOver', 'onMouseUp', 'onMouseUpCapture', 'onSelect', 'onTouchCancel', 'onTouchEnd', 'onTouchMove', 'onTouchStart', 'onScroll', 'onWheel', 'onPointerCancel', 'onPointerDown', 'onPointerEnter', 'onPointerLeave', 'onPointerMove', 'onPointerOut', 'onPointerOver', 'onPointerUp', 'onGotPointerCapture', 'onLostPointerCapture']);
|
30
22
|
/**
|
31
23
|
* An array of element attributes which are allowed on every html element type.
|
32
24
|
*
|
33
25
|
* @public
|
34
26
|
*/
|
35
27
|
|
36
|
-
export
|
28
|
+
export const baseElementProperties = /*#__PURE__*/toObjectMap(['accessKey', 'children', 'className', 'contentEditable', 'dir', 'draggable', 'hidden', 'htmlFor', 'id', 'lang', 'ref', 'role', 'style', 'tabIndex', 'title', 'translate', 'spellCheck', 'name' // global
|
29
|
+
]);
|
37
30
|
/**
|
38
31
|
* An array of HTML element properties and events.
|
39
32
|
*
|
40
33
|
* @public
|
41
34
|
*/
|
42
35
|
|
43
|
-
export
|
36
|
+
export const htmlElementProperties = /*#__PURE__*/toObjectMap(baseElementProperties, baseElementEvents);
|
44
37
|
/**
|
45
38
|
* An array of LABEL tag properties and events.
|
46
39
|
*
|
47
40
|
* @public
|
48
41
|
*/
|
49
42
|
|
50
|
-
export
|
43
|
+
export const labelProperties = /*#__PURE__*/toObjectMap(htmlElementProperties, ['form' // button, fieldset, input, label, meter, object, output, select, textarea
|
44
|
+
]);
|
51
45
|
/**
|
52
46
|
* An array of AUDIO tag properties and events.
|
53
47
|
|
54
48
|
* @public
|
55
49
|
*/
|
56
50
|
|
57
|
-
export
|
51
|
+
export const audioProperties = /*#__PURE__*/toObjectMap(htmlElementProperties, ['height', 'loop', 'muted', 'preload', 'src', 'width' // canvas, embed, iframe, img, input, object, video
|
52
|
+
]);
|
58
53
|
/**
|
59
54
|
* An array of VIDEO tag properties and events.
|
60
55
|
*
|
61
56
|
* @public
|
62
57
|
*/
|
63
58
|
|
64
|
-
export
|
59
|
+
export const videoProperties = /*#__PURE__*/toObjectMap(audioProperties, ['poster' // video
|
60
|
+
]);
|
65
61
|
/**
|
66
62
|
* An array of OL tag properties and events.
|
67
63
|
*
|
68
64
|
* @public
|
69
65
|
*/
|
70
66
|
|
71
|
-
export
|
67
|
+
export const olProperties = /*#__PURE__*/toObjectMap(htmlElementProperties, ['start' // ol
|
68
|
+
]);
|
72
69
|
/**
|
73
70
|
* An array of LI tag properties and events.
|
74
71
|
*
|
75
72
|
* @public
|
76
73
|
*/
|
77
74
|
|
78
|
-
export
|
75
|
+
export const liProperties = /*#__PURE__*/toObjectMap(htmlElementProperties, ['value' // button, input, li, option, meter, progress, param
|
76
|
+
]);
|
79
77
|
/**
|
80
78
|
* An array of A tag properties and events.
|
81
79
|
*
|
82
80
|
* @public
|
83
81
|
*/
|
84
82
|
|
85
|
-
export
|
83
|
+
export const anchorProperties = /*#__PURE__*/toObjectMap(htmlElementProperties, ['download', 'href', 'hrefLang', 'media', 'rel', 'target', 'type' // a, button, input, link, menu, object, script, source, style
|
84
|
+
]);
|
86
85
|
/**
|
87
86
|
* An array of BUTTON tag properties and events.
|
88
87
|
*
|
89
88
|
* @public
|
90
89
|
*/
|
91
90
|
|
92
|
-
export
|
91
|
+
export const buttonProperties = /*#__PURE__*/toObjectMap(htmlElementProperties, ['autoFocus', 'disabled', 'form', 'formAction', 'formEncType', 'formMethod', 'formNoValidate', 'formTarget', 'type', 'value' // button, input, li, option, meter, progress, param,
|
92
|
+
]);
|
93
93
|
/**
|
94
94
|
* An array of INPUT tag properties and events.
|
95
95
|
*
|
96
96
|
* @public
|
97
97
|
*/
|
98
98
|
|
99
|
-
export
|
99
|
+
export const inputProperties = /*#__PURE__*/toObjectMap(buttonProperties, ['accept', 'alt', 'autoCapitalize', 'autoComplete', 'checked', 'dirname', 'form', 'height', 'inputMode', 'list', 'max', 'maxLength', 'min', 'multiple', 'pattern', 'placeholder', 'readOnly', 'required', 'src', 'step', 'size', 'type', 'value', 'width' // canvas, embed, iframe, img, input, object, video
|
100
|
+
]);
|
100
101
|
/**
|
101
102
|
* An array of TEXTAREA tag properties and events.
|
102
103
|
*
|
103
104
|
* @public
|
104
105
|
*/
|
105
106
|
|
106
|
-
export
|
107
|
+
export const textAreaProperties = /*#__PURE__*/toObjectMap(buttonProperties, ['autoCapitalize', 'cols', 'dirname', 'form', 'maxLength', 'placeholder', 'readOnly', 'required', 'rows', 'wrap' // textarea
|
108
|
+
]);
|
107
109
|
/**
|
108
110
|
* An array of SELECT tag properties and events.
|
109
111
|
*
|
110
112
|
* @public
|
111
113
|
*/
|
112
114
|
|
113
|
-
export
|
114
|
-
|
115
|
+
export const selectProperties = /*#__PURE__*/toObjectMap(buttonProperties, ['form', 'multiple', 'required' // input, select, textarea
|
116
|
+
]);
|
117
|
+
export const optionProperties = /*#__PURE__*/toObjectMap(htmlElementProperties, ['selected', 'value' // button, input, li, option, meter, progress, param
|
118
|
+
]);
|
115
119
|
/**
|
116
120
|
* An array of TABLE tag properties and events.
|
117
121
|
*
|
118
122
|
* @public
|
119
123
|
*/
|
120
124
|
|
121
|
-
export
|
125
|
+
export const tableProperties = /*#__PURE__*/toObjectMap(htmlElementProperties, ['cellPadding', 'cellSpacing' // table
|
126
|
+
]);
|
122
127
|
/**
|
123
128
|
* An array of TR tag properties and events.
|
124
129
|
*
|
125
130
|
* @public
|
126
131
|
*/
|
127
132
|
|
128
|
-
export
|
133
|
+
export const trProperties = htmlElementProperties;
|
129
134
|
/**
|
130
135
|
* An array of TH tag properties and events.
|
131
136
|
*
|
132
137
|
* @public
|
133
138
|
*/
|
134
139
|
|
135
|
-
export
|
140
|
+
export const thProperties = /*#__PURE__*/toObjectMap(htmlElementProperties, ['rowSpan', 'scope' // th
|
141
|
+
]);
|
136
142
|
/**
|
137
143
|
* An array of TD tag properties and events.
|
138
144
|
*
|
139
145
|
* @public
|
140
146
|
*/
|
141
147
|
|
142
|
-
export
|
143
|
-
|
144
|
-
export
|
148
|
+
export const tdProperties = /*#__PURE__*/toObjectMap(htmlElementProperties, ['colSpan', 'headers', 'rowSpan', 'scope' // th
|
149
|
+
]);
|
150
|
+
export const colGroupProperties = /*#__PURE__*/toObjectMap(htmlElementProperties, ['span' // col, colgroup
|
151
|
+
]);
|
152
|
+
export const colProperties = /*#__PURE__*/toObjectMap(htmlElementProperties, ['span' // col, colgroup
|
153
|
+
]);
|
145
154
|
/**
|
146
155
|
* An array of FORM tag properties and events.
|
147
156
|
*
|
148
157
|
* @public
|
149
158
|
*/
|
150
159
|
|
151
|
-
export
|
160
|
+
export const formProperties = /*#__PURE__*/toObjectMap(htmlElementProperties, ['acceptCharset', 'action', 'encType', 'encType', 'method', 'noValidate', 'target' // form
|
161
|
+
]);
|
152
162
|
/**
|
153
163
|
* An array of IFRAME tag properties and events.
|
154
164
|
*
|
155
165
|
* @public
|
156
166
|
*/
|
157
167
|
|
158
|
-
export
|
168
|
+
export const iframeProperties = /*#__PURE__*/toObjectMap(htmlElementProperties, ['allow', 'allowFullScreen', 'allowPaymentRequest', 'allowTransparency', 'csp', 'height', 'importance', 'referrerPolicy', 'sandbox', 'src', 'srcDoc', 'width' // canvas, embed, iframe, img, input, object, video,
|
169
|
+
]);
|
159
170
|
/**
|
160
171
|
* An array of IMAGE tag properties and events.
|
161
172
|
*
|
162
173
|
* @public
|
163
174
|
*/
|
164
175
|
|
165
|
-
export
|
176
|
+
export const imgProperties = /*#__PURE__*/toObjectMap(htmlElementProperties, ['alt', 'crossOrigin', 'height', 'src', 'srcSet', 'useMap', 'width' // canvas, embed, iframe, img, input, object, video
|
177
|
+
]);
|
166
178
|
/**
|
167
179
|
* @deprecated Use imgProperties for img elements.
|
168
180
|
*/
|
169
181
|
|
170
|
-
export
|
182
|
+
export const imageProperties = imgProperties;
|
171
183
|
/**
|
172
184
|
* An array of DIV tag properties and events.
|
173
185
|
*
|
174
186
|
* @public
|
175
187
|
*/
|
176
188
|
|
177
|
-
export
|
189
|
+
export const divProperties = htmlElementProperties;
|
178
190
|
/**
|
179
191
|
* Gets native supported props for an html element provided the allowance set. Use one of the property
|
180
192
|
* sets defined (divProperties, buttonPropertes, etc) to filter out supported properties from a given
|
@@ -198,14 +210,13 @@ props, allowedPropNames, excludedPropNames) {
|
|
198
210
|
// Then we'd be able to enforce props extends native props (including aria- and data- attributes), and then
|
199
211
|
// return native props.
|
200
212
|
// We should be able to do this once this PR is merged: https://github.com/microsoft/TypeScript/pull/26797
|
201
|
-
|
213
|
+
const isArray = Array.isArray(allowedPropNames); // eslint-disable-next-line @typescript-eslint/no-explicit-any
|
202
214
|
|
203
|
-
|
204
|
-
|
215
|
+
const result = {};
|
216
|
+
const keys = Object.keys(props);
|
205
217
|
|
206
|
-
for (
|
207
|
-
|
208
|
-
var isNativeProp = !isArray && allowedPropNames[key] || isArray && allowedPropNames.indexOf(key) >= 0 || key.indexOf('data-') === 0 || key.indexOf('aria-') === 0;
|
218
|
+
for (const key of keys) {
|
219
|
+
const isNativeProp = !isArray && allowedPropNames[key] || isArray && allowedPropNames.indexOf(key) >= 0 || key.indexOf('data-') === 0 || key.indexOf('aria-') === 0;
|
209
220
|
|
210
221
|
if (isNativeProp && (!excludedPropNames || (excludedPropNames === null || excludedPropNames === void 0 ? void 0 : excludedPropNames.indexOf(key)) === -1)) {
|
211
222
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"sources":["../../src/utils/properties.ts"],"names":[],"mappings":"AAAA,
|
1
|
+
{"version":3,"sources":["../../src/utils/properties.ts"],"names":[],"mappings":"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","sourceRoot":""}
|
@@ -6,15 +6,15 @@ import { Space, Enter } from '@fluentui/keyboard-keys';
|
|
6
6
|
*/
|
7
7
|
|
8
8
|
export function shouldPreventDefaultOnKeyDown(e) {
|
9
|
-
|
10
|
-
|
11
|
-
|
9
|
+
const key = e.key;
|
10
|
+
const target = e.target;
|
11
|
+
const matchesByKey = key === Space || key === Enter;
|
12
12
|
|
13
13
|
if ((target === null || target === void 0 ? void 0 : target.tagName) === 'A') {
|
14
14
|
return key === Space;
|
15
15
|
}
|
16
16
|
|
17
|
-
|
17
|
+
const ignoredByTag = (target === null || target === void 0 ? void 0 : target.tagName) === 'INPUT' || (target === null || target === void 0 ? void 0 : target.tagName) === 'TEXTAREA' || (target === null || target === void 0 ? void 0 : target.isContentEditable) === true;
|
18
18
|
return matchesByKey && !ignoredByTag;
|
19
19
|
}
|
20
20
|
//# sourceMappingURL=shouldPreventDefaultOnKeyDown.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"sources":["../../src/utils/shouldPreventDefaultOnKeyDown.ts"],"names":[],"mappings":"AAAA,SAAS,KAAT,EAAgB,KAAhB,QAA6B,yBAA7B;AAGA;;;;AAIG;;AACH,OAAM,SAAU,6BAAV,CAAwC,CAAxC,EAA8E;AAClF,
|
1
|
+
{"version":3,"sources":["../../src/utils/shouldPreventDefaultOnKeyDown.ts"],"names":[],"mappings":"AAAA,SAAS,KAAT,EAAgB,KAAhB,QAA6B,yBAA7B;AAGA;;;;AAIG;;AACH,OAAM,SAAU,6BAAV,CAAwC,CAAxC,EAA8E;AAClF,QAAM,GAAG,GAAG,CAAC,CAAC,GAAd;AACA,QAAM,MAAM,GAA4B,CAAC,CAAC,MAA1C;AAEA,QAAM,YAAY,GAAG,GAAG,KAAK,KAAR,IAAiB,GAAG,KAAK,KAA9C;;AAEA,MAAI,CAAA,MAAM,KAAA,IAAN,IAAA,MAAM,KAAA,KAAA,CAAN,GAAM,KAAA,CAAN,GAAA,MAAM,CAAE,OAAR,MAAoB,GAAxB,EAA6B;AAC3B,WAAO,GAAG,KAAK,KAAf;AACD;;AAED,QAAM,YAAY,GAChB,CAAA,MAAM,KAAA,IAAN,IAAA,MAAM,KAAA,KAAA,CAAN,GAAM,KAAA,CAAN,GAAA,MAAM,CAAE,OAAR,MAAoB,OAApB,IAA+B,CAAA,MAAM,KAAA,IAAN,IAAA,MAAM,KAAA,KAAA,CAAN,GAAM,KAAA,CAAN,GAAA,MAAM,CAAE,OAAR,MAAoB,UAAnD,IAAiE,CAAA,MAAM,KAAA,IAAN,IAAA,MAAM,KAAA,KAAA,CAAN,GAAM,KAAA,CAAN,GAAA,MAAM,CAAE,iBAAR,MAA8B,IADjG;AAGA,SAAO,YAAY,IAAI,CAAC,YAAxB;AACD","sourceRoot":""}
|
@@ -1,10 +1,10 @@
|
|
1
1
|
import * as React from 'react';
|
2
|
-
import { AsIntrinsicElement, ComponentState,
|
3
|
-
export declare type Slots<S extends
|
4
|
-
[K in keyof S]
|
2
|
+
import type { AsIntrinsicElement, ComponentState, ExtractSlotProps, SlotPropsRecord, UnionToIntersection } from './types';
|
3
|
+
export declare type Slots<S extends SlotPropsRecord> = {
|
4
|
+
[K in keyof S]: ExtractSlotProps<S[K]> extends AsIntrinsicElement<infer As> ? As : ExtractSlotProps<S[K]> extends React.ComponentType<infer P> ? React.ElementType<NonNullable<P>> : React.ElementType<ExtractSlotProps<S[K]>>;
|
5
5
|
};
|
6
|
-
declare type
|
7
|
-
[K in keyof S]-?:
|
6
|
+
declare type ObjectSlotProps<S extends SlotPropsRecord> = {
|
7
|
+
[K in keyof S]-?: ExtractSlotProps<S[K]> extends AsIntrinsicElement<infer As> ? UnionToIntersection<JSX.IntrinsicElements[As]> : ExtractSlotProps<S[K]> extends React.ComponentType<infer P> ? P : never;
|
8
8
|
};
|
9
9
|
/**
|
10
10
|
* Given the state and an array of slot names, will break out `slots` and `slotProps`
|
@@ -15,15 +15,16 @@ declare type SlotProps<S extends ObjectShorthandPropsRecord> = {
|
|
15
15
|
* Slots will render as null if they are rendered as primitives with undefined children.
|
16
16
|
*
|
17
17
|
* The slotProps will always omit the `as` prop within them, and for slots that are string
|
18
|
-
* primitives, the props will be filtered according
|
19
|
-
* slot is rendered `as: 'a'`, the props will be filtered for acceptable
|
18
|
+
* primitives, the props will be filtered according to the slot type by the type system.
|
19
|
+
* For example, if the slot is rendered `as: 'a'`, the props will be filtered for acceptable
|
20
|
+
* anchor props. Note that this is only enforced at build time by Typescript -- there is no
|
21
|
+
* runtime code filtering props in this function.
|
20
22
|
*
|
21
23
|
* @param state - State including slot definitions
|
22
|
-
* @param slotNames - Name of which props are slots
|
23
24
|
* @returns An object containing the `slots` map and `slotProps` map.
|
24
25
|
*/
|
25
|
-
export declare function getSlots<R extends
|
26
|
+
export declare function getSlots<R extends SlotPropsRecord>(state: ComponentState<R>): {
|
26
27
|
slots: Slots<R>;
|
27
|
-
slotProps:
|
28
|
+
slotProps: ObjectSlotProps<R>;
|
28
29
|
};
|
29
30
|
export {};
|
@@ -5,13 +5,9 @@ Object.defineProperty(exports, "__esModule", {
|
|
5
5
|
});
|
6
6
|
exports.getSlots = void 0;
|
7
7
|
|
8
|
-
|
8
|
+
const React = /*#__PURE__*/require("react");
|
9
9
|
|
10
|
-
|
11
|
-
|
12
|
-
var nullRender_1 = /*#__PURE__*/require("./nullRender");
|
13
|
-
|
14
|
-
var omit_1 = /*#__PURE__*/require("../utils/omit");
|
10
|
+
const omit_1 = /*#__PURE__*/require("../utils/omit");
|
15
11
|
/**
|
16
12
|
* Given the state and an array of slot names, will break out `slots` and `slotProps`
|
17
13
|
* collections.
|
@@ -21,36 +17,29 @@ var omit_1 = /*#__PURE__*/require("../utils/omit");
|
|
21
17
|
* Slots will render as null if they are rendered as primitives with undefined children.
|
22
18
|
*
|
23
19
|
* The slotProps will always omit the `as` prop within them, and for slots that are string
|
24
|
-
* primitives, the props will be filtered according
|
25
|
-
* slot is rendered `as: 'a'`, the props will be filtered for acceptable
|
20
|
+
* primitives, the props will be filtered according to the slot type by the type system.
|
21
|
+
* For example, if the slot is rendered `as: 'a'`, the props will be filtered for acceptable
|
22
|
+
* anchor props. Note that this is only enforced at build time by Typescript -- there is no
|
23
|
+
* runtime code filtering props in this function.
|
26
24
|
*
|
27
25
|
* @param state - State including slot definitions
|
28
|
-
* @param slotNames - Name of which props are slots
|
29
26
|
* @returns An object containing the `slots` map and `slotProps` map.
|
30
27
|
*/
|
31
28
|
|
32
29
|
|
33
|
-
function getSlots(state
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
var slots = {};
|
39
|
-
var slotProps = {};
|
40
|
-
|
41
|
-
for (var _i = 0, slotNames_1 = slotNames; _i < slotNames_1.length; _i++) {
|
42
|
-
var slotName = slotNames_1[_i];
|
43
|
-
|
44
|
-
var _a = getSlot(state, slotName),
|
45
|
-
slot = _a[0],
|
46
|
-
props = _a[1];
|
30
|
+
function getSlots(state) {
|
31
|
+
const slots = {};
|
32
|
+
const slotProps = {};
|
33
|
+
const slotNames = Object.keys(state.components);
|
47
34
|
|
35
|
+
for (const slotName of slotNames) {
|
36
|
+
const [slot, props] = getSlot(state, slotName);
|
48
37
|
slots[slotName] = slot;
|
49
38
|
slotProps[slotName] = props;
|
50
39
|
}
|
51
40
|
|
52
41
|
return {
|
53
|
-
slots
|
42
|
+
slots,
|
54
43
|
slotProps: slotProps
|
55
44
|
};
|
56
45
|
}
|
@@ -61,25 +50,25 @@ function getSlot(state, slotName) {
|
|
61
50
|
var _a, _b, _c;
|
62
51
|
|
63
52
|
if (state[slotName] === undefined) {
|
64
|
-
return [
|
53
|
+
return [null, undefined];
|
65
54
|
}
|
66
55
|
|
67
|
-
|
68
|
-
|
69
|
-
|
70
|
-
|
71
|
-
|
72
|
-
|
56
|
+
const {
|
57
|
+
children,
|
58
|
+
as: asProp,
|
59
|
+
...rest
|
60
|
+
} = state[slotName];
|
61
|
+
const slot = ((_a = state.components) === null || _a === void 0 ? void 0 : _a[slotName]) === undefined || typeof state.components[slotName] === 'string' ? asProp || ((_b = state.components) === null || _b === void 0 ? void 0 : _b[slotName]) || 'div' : state.components[slotName];
|
73
62
|
|
74
63
|
if (typeof children === 'function') {
|
75
|
-
|
64
|
+
const render = children;
|
76
65
|
return [React.Fragment, {
|
77
66
|
children: render(slot, rest)
|
78
67
|
}];
|
79
68
|
}
|
80
69
|
|
81
|
-
|
82
|
-
|
70
|
+
const shouldOmitAsProp = typeof slot === 'string' && ((_c = state[slotName]) === null || _c === void 0 ? void 0 : _c.as);
|
71
|
+
const slotProps = shouldOmitAsProp ? omit_1.omit(state[slotName], ['as']) : state[slotName];
|
83
72
|
return [slot, slotProps];
|
84
73
|
}
|
85
74
|
//# sourceMappingURL=getSlots.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"sources":["../../src/compose/getSlots.ts"],"names":[],"mappings":"
|
1
|
+
{"version":3,"sources":["../../src/compose/getSlots.ts"],"names":[],"mappings":";;;;;;;AAAA,MAAA,KAAA,gBAAA,OAAA,CAAA,OAAA,CAAA;;AAEA,MAAA,MAAA,gBAAA,OAAA,CAAA,eAAA,CAAA;AA6BA;;;;;;;;;;;;;;;;AAgBG;;;AACH,SAAgB,QAAhB,CACE,KADF,EAC0B;AAKxB,QAAM,KAAK,GAAG,EAAd;AACA,QAAM,SAAS,GAAG,EAAlB;AAEA,QAAM,SAAS,GAAgB,MAAM,CAAC,IAAP,CAAY,KAAK,CAAC,UAAlB,CAA/B;;AACA,OAAK,MAAM,QAAX,IAAuB,SAAvB,EAAkC;AAChC,UAAM,CAAC,IAAD,EAAO,KAAP,IAAgB,OAAO,CAAC,KAAD,EAAQ,QAAR,CAA7B;AACA,IAAA,KAAK,CAAC,QAAD,CAAL,GAAkB,IAAlB;AACA,IAAA,SAAS,CAAC,QAAD,CAAT,GAAsB,KAAtB;AACD;;AACD,SAAO;AAAE,IAAA,KAAF;AAAS,IAAA,SAAS,EAAG;AAArB,GAAP;AACD;;AAhBD,OAAA,CAAA,QAAA,GAAA,QAAA;;AAkBA,SAAS,OAAT,CACE,KADF,EAEE,QAFF,EAEa;;;AAEX,MAAI,KAAK,CAAC,QAAD,CAAL,KAAoB,SAAxB,EAAmC;AACjC,WAAO,CAAC,IAAD,EAAO,SAAP,CAAP;AACD;;AACD,QAAM;AAAE,IAAA,QAAF;AAAY,IAAA,EAAE,EAAE,MAAhB;AAAwB,OAAG;AAA3B,MAAoC,KAAK,CAAC,QAAD,CAA/C;AAEA,QAAM,IAAI,GAAI,CAAA,CAAA,EAAA,GAAA,KAAK,CAAC,UAAN,MAAgB,IAAhB,IAAgB,EAAA,KAAA,KAAA,CAAhB,GAAgB,KAAA,CAAhB,GAAgB,EAAA,CAAG,QAAH,CAAhB,MAAiC,SAAjC,IAA8C,OAAO,KAAK,CAAC,UAAN,CAAiB,QAAjB,CAAP,KAAsC,QAApF,GACV,MAAM,KAAI,CAAA,EAAA,GAAA,KAAK,CAAC,UAAN,MAAgB,IAAhB,IAAgB,EAAA,KAAA,KAAA,CAAhB,GAAgB,KAAA,CAAhB,GAAgB,EAAA,CAAG,QAAH,CAApB,CAAN,IAA0C,KADhC,GAEV,KAAK,CAAC,UAAN,CAAiB,QAAjB,CAFJ;;AAIA,MAAI,OAAO,QAAP,KAAoB,UAAxB,EAAoC;AAClC,UAAM,MAAM,GAAG,QAAf;AACA,WAAO,CACL,KAAK,CAAC,QADD,EAEJ;AACC,MAAA,QAAQ,EAAE,MAAM,CAAC,IAAD,EAAO,IAAP;AADjB,KAFI,CAAP;AAMD;;AAED,QAAM,gBAAgB,GAAG,OAAO,IAAP,KAAgB,QAAhB,KAA4B,CAAA,EAAA,GAAA,KAAK,CAAC,QAAD,CAAL,MAAe,IAAf,IAAe,EAAA,KAAA,KAAA,CAAf,GAAe,KAAA,CAAf,GAAe,EAAA,CAAE,EAA7C,CAAzB;AACA,QAAM,SAAS,GAAI,gBAAgB,GAAG,MAAA,CAAA,IAAA,CAAK,KAAK,CAAC,QAAD,CAAV,EAAuB,CAAC,IAAD,CAAvB,CAAH,GAAoC,KAAK,CAAC,QAAD,CAA5E;AAEA,SAAO,CAAC,IAAD,EAAO,SAAP,CAAP;AACD","sourceRoot":""}
|
@@ -1,8 +1,3 @@
|
|
1
1
|
export * from './getSlots';
|
2
|
-
export * from './getSlotsCompat';
|
3
|
-
export * from './makeMergeProps';
|
4
|
-
export * from './makeMergePropsCompat';
|
5
|
-
export * from './nullRender';
|
6
2
|
export * from './resolveShorthand';
|
7
|
-
export * from './resolveShorthandProps';
|
8
3
|
export * from './types';
|
@@ -4,21 +4,11 @@ Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
5
5
|
});
|
6
6
|
|
7
|
-
|
7
|
+
const tslib_1 = /*#__PURE__*/require("tslib");
|
8
8
|
|
9
9
|
tslib_1.__exportStar(require("./getSlots"), exports);
|
10
10
|
|
11
|
-
tslib_1.__exportStar(require("./getSlotsCompat"), exports);
|
12
|
-
|
13
|
-
tslib_1.__exportStar(require("./makeMergeProps"), exports);
|
14
|
-
|
15
|
-
tslib_1.__exportStar(require("./makeMergePropsCompat"), exports);
|
16
|
-
|
17
|
-
tslib_1.__exportStar(require("./nullRender"), exports);
|
18
|
-
|
19
11
|
tslib_1.__exportStar(require("./resolveShorthand"), exports);
|
20
12
|
|
21
|
-
tslib_1.__exportStar(require("./resolveShorthandProps"), exports);
|
22
|
-
|
23
13
|
tslib_1.__exportStar(require("./types"), exports);
|
24
14
|
//# sourceMappingURL=index.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"sources":["../../src/compose/index.ts"],"names":[],"mappings":";;;;;;;;AAAA,OAAA,CAAA,YAAA,CAAA,OAAA,CAAA,YAAA,CAAA,EAAA,OAAA;;AACA,OAAA,CAAA,YAAA,CAAA,OAAA,CAAA,
|
1
|
+
{"version":3,"sources":["../../src/compose/index.ts"],"names":[],"mappings":";;;;;;;;AAAA,OAAA,CAAA,YAAA,CAAA,OAAA,CAAA,YAAA,CAAA,EAAA,OAAA;;AACA,OAAA,CAAA,YAAA,CAAA,OAAA,CAAA,oBAAA,CAAA,EAAA,OAAA;;AACA,OAAA,CAAA,YAAA,CAAA,OAAA,CAAA,SAAA,CAAA,EAAA,OAAA","sourceRoot":""}
|
@@ -1,12 +1,16 @@
|
|
1
|
-
import type {
|
2
|
-
export declare type ResolveShorthandOptions<Props
|
1
|
+
import type { ReplaceNullWithUndefined, SlotShorthandValue, UnknownSlotProps } from './types';
|
2
|
+
export declare type ResolveShorthandOptions<Props, Required extends boolean = false> = {
|
3
3
|
required?: Required;
|
4
4
|
defaultProps?: Props;
|
5
5
|
};
|
6
|
+
export declare type ResolveShorthandFunction<Props extends UnknownSlotProps = UnknownSlotProps> = {
|
7
|
+
<P extends Props | null>(value: P | SlotShorthandValue | undefined, options?: ResolveShorthandOptions<P, true>): ReplaceNullWithUndefined<P>;
|
8
|
+
<P extends Props | null>(value: P | SlotShorthandValue | undefined, options?: ResolveShorthandOptions<P, boolean>): ReplaceNullWithUndefined<P> | undefined;
|
9
|
+
};
|
6
10
|
/**
|
7
|
-
* Resolves
|
11
|
+
* Resolves shorthands into slot props, to ensure normalization of the signature
|
8
12
|
* being passed down to getSlots method
|
9
|
-
* @param value - the base
|
10
|
-
* @param options - options to resolve
|
13
|
+
* @param value - the base shorthand props
|
14
|
+
* @param options - options to resolve shorthand props
|
11
15
|
*/
|
12
|
-
export declare
|
16
|
+
export declare const resolveShorthand: ResolveShorthandFunction;
|
@@ -5,28 +5,26 @@ Object.defineProperty(exports, "__esModule", {
|
|
5
5
|
});
|
6
6
|
exports.resolveShorthand = void 0;
|
7
7
|
|
8
|
-
|
9
|
-
|
10
|
-
var react_1 = /*#__PURE__*/require("react");
|
8
|
+
const react_1 = /*#__PURE__*/require("react");
|
11
9
|
/**
|
12
|
-
* Resolves
|
10
|
+
* Resolves shorthands into slot props, to ensure normalization of the signature
|
13
11
|
* being passed down to getSlots method
|
14
|
-
* @param value - the base
|
15
|
-
* @param options - options to resolve
|
12
|
+
* @param value - the base shorthand props
|
13
|
+
* @param options - options to resolve shorthand props
|
16
14
|
*/
|
17
15
|
|
18
16
|
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
17
|
+
const resolveShorthand = (value, options) => {
|
18
|
+
const {
|
19
|
+
required = false,
|
20
|
+
defaultProps
|
21
|
+
} = options || {};
|
24
22
|
|
25
23
|
if (value === null || value === undefined && !required) {
|
26
24
|
return undefined;
|
27
25
|
}
|
28
26
|
|
29
|
-
|
27
|
+
let resolvedShorthand = {};
|
30
28
|
|
31
29
|
if (typeof value === 'string' || typeof value === 'number' || Array.isArray(value) || react_1.isValidElement(value)) {
|
32
30
|
resolvedShorthand.children = value;
|
@@ -34,8 +32,10 @@ function resolveShorthand(value, options) {
|
|
34
32
|
resolvedShorthand = value;
|
35
33
|
}
|
36
34
|
|
37
|
-
return defaultProps ?
|
38
|
-
|
35
|
+
return defaultProps ? { ...defaultProps,
|
36
|
+
...resolvedShorthand
|
37
|
+
} : resolvedShorthand;
|
38
|
+
};
|
39
39
|
|
40
40
|
exports.resolveShorthand = resolveShorthand;
|
41
41
|
//# sourceMappingURL=resolveShorthand.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"sources":["../../src/compose/resolveShorthand.ts"],"names":[],"mappings":"
|
1
|
+
{"version":3,"sources":["../../src/compose/resolveShorthand.ts"],"names":[],"mappings":";;;;;;;AAAA,MAAA,OAAA,gBAAA,OAAA,CAAA,OAAA,CAAA;AAkBA;;;;;AAKG;;;AACI,MAAM,gBAAgB,GAA6B,CAAC,KAAD,EAAQ,OAAR,KAAmB;AAC3E,QAAM;AAAE,IAAA,QAAQ,GAAG,KAAb;AAAoB,IAAA;AAApB,MAAqC,OAAO,IAAI,EAAtD;;AACA,MAAI,KAAK,KAAK,IAAV,IAAmB,KAAK,KAAK,SAAV,IAAuB,CAAC,QAA/C,EAA0D;AACxD,WAAO,SAAP;AACD;;AAED,MAAI,iBAAiB,GAAG,EAAxB;;AAEA,MAAI,OAAO,KAAP,KAAiB,QAAjB,IAA6B,OAAO,KAAP,KAAiB,QAA9C,IAA0D,KAAK,CAAC,OAAN,CAAc,KAAd,CAA1D,IAAkF,OAAA,CAAA,cAAA,CAAe,KAAf,CAAtF,EAA6G;AAC3G,IAAA,iBAAiB,CAAC,QAAlB,GAA6B,KAA7B;AACD,GAFD,MAEO,IAAI,OAAO,KAAP,KAAiB,QAArB,EAA+B;AACpC,IAAA,iBAAiB,GAAG,KAApB;AACD;;AAED,SAAO,YAAY,GAAG,EAAE,GAAG,YAAL;AAAmB,OAAG;AAAtB,GAAH,GAA+C,iBAAlE;AACD,CAfM;;AAAM,OAAA,CAAA,gBAAA,GAAgB,gBAAhB","sourceRoot":""}
|