@pingux/astro 2.33.0-alpha.6 → 2.33.0-alpha.8
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/lib/cjs/components/Tabs/Tabs.stories.js +2 -2
- package/lib/cjs/components/Tabs/Tabs.style.js +0 -1
- package/lib/cjs/hooks/useField/useField.d.ts +33 -35
- package/lib/cjs/hooks/useField/useField.js +1 -1
- package/lib/cjs/hooks/useSelectField/index.d.ts +1 -0
- package/lib/cjs/hooks/useSelectField/useSelectField.d.ts +55 -0
- package/lib/cjs/hooks/useSelectField/useSelectField.js +10 -10
- package/lib/cjs/types/item.d.ts +4 -7
- package/lib/cjs/types/popoverContainer.d.ts +1 -0
- package/lib/cjs/types/shared/style.d.ts +6 -0
- package/lib/components/Tabs/Tabs.stories.js +3 -3
- package/lib/components/Tabs/Tabs.style.js +0 -1
- package/lib/hooks/useField/useField.js +2 -0
- package/lib/hooks/useSelectField/useSelectField.js +11 -9
- package/package.json +1 -1
@@ -196,11 +196,11 @@ var ContentSlots = function ContentSlots() {
|
|
196
196
|
marginLeft: 6,
|
197
197
|
marginTop: 10
|
198
198
|
};
|
199
|
-
var afterTabNode = (0, _react2.jsx)(_index.Badge, {
|
199
|
+
var afterTabNode = (0, _react2.jsx)(_index.Box, null, (0, _react2.jsx)(_index.Badge, {
|
200
200
|
variant: "countNeutral",
|
201
201
|
sx: nodeSx,
|
202
202
|
label: "14"
|
203
|
-
});
|
203
|
+
}));
|
204
204
|
return (0, _react2.jsx)(_react["default"].Fragment, null, (0, _react2.jsx)(_index.Tabs, {
|
205
205
|
items: tabs,
|
206
206
|
mb: 50
|
@@ -1,5 +1,5 @@
|
|
1
|
-
|
2
|
-
|
1
|
+
import { Key } from 'react';
|
2
|
+
import { AriaLabelingProps, CollectionChildren, DOMProps } from '@react-types/shared';
|
3
3
|
import { LabelProps as ThemeUILabelProps } from 'theme-ui';
|
4
4
|
import { BoxProps } from '../../types';
|
5
5
|
/**
|
@@ -22,7 +22,29 @@ interface LabelProps extends ThemeUILabelProps {
|
|
22
22
|
[className: string]: boolean;
|
23
23
|
};
|
24
24
|
}
|
25
|
-
interface
|
25
|
+
export interface FieldControlInputProps extends AriaLabelingProps, DOMProps {
|
26
|
+
autoComplete?: string;
|
27
|
+
autoCorrect?: string;
|
28
|
+
autoFocus?: boolean;
|
29
|
+
className?: string;
|
30
|
+
defaultSelected?: boolean;
|
31
|
+
defaultValue?: string | number;
|
32
|
+
disabled?: boolean;
|
33
|
+
id?: string;
|
34
|
+
isFocused?: boolean;
|
35
|
+
isIndeterminate?: boolean;
|
36
|
+
maxLength?: number;
|
37
|
+
name?: string;
|
38
|
+
onChange: (event: CustomChangeEventType | React.ChangeEvent) => void | undefined;
|
39
|
+
placeholder?: string;
|
40
|
+
readOnly?: boolean;
|
41
|
+
required?: boolean;
|
42
|
+
role?: string;
|
43
|
+
spellCheck?: boolean;
|
44
|
+
type?: string;
|
45
|
+
value?: string | number;
|
46
|
+
}
|
47
|
+
export interface ControlProps extends React.HTMLAttributes<Element> {
|
26
48
|
statusClasses?: {
|
27
49
|
[className: string]: boolean;
|
28
50
|
};
|
@@ -31,14 +53,14 @@ export interface UseFieldProps<T> {
|
|
31
53
|
autocomplete?: string;
|
32
54
|
autoComplete?: string;
|
33
55
|
autoCorrect?: string;
|
34
|
-
children?: React.ReactNode
|
56
|
+
children?: React.ReactNode | CollectionChildren<T>;
|
35
57
|
className?: string;
|
36
58
|
containerProps?: ContainerProps;
|
37
|
-
controlProps?: ControlProps
|
59
|
+
controlProps?: ControlProps;
|
38
60
|
defaultText?: string;
|
39
61
|
defaultValue?: string | number;
|
40
62
|
direction?: string;
|
41
|
-
disabledKeys?: string[]
|
63
|
+
disabledKeys?: string[] | Iterable<Key>;
|
42
64
|
hasAutoFocus?: boolean;
|
43
65
|
hasNoStatusIndicator?: boolean;
|
44
66
|
helperText?: string;
|
@@ -62,7 +84,7 @@ export interface UseFieldProps<T> {
|
|
62
84
|
onFocus?: (e: React.FocusEvent) => void;
|
63
85
|
onFocusChange?: (isFocused: boolean) => void;
|
64
86
|
onLoadMore?: () => void;
|
65
|
-
onOpenChange?: () =>
|
87
|
+
onOpenChange?: (isOpen: boolean) => unknown;
|
66
88
|
onSelectionChange?: (key: string) => void;
|
67
89
|
placeholder?: string | number;
|
68
90
|
role?: string;
|
@@ -84,32 +106,7 @@ type CustomChangeEventType = {
|
|
84
106
|
};
|
85
107
|
declare const useField: <T>(props: UseFieldProps<T>) => {
|
86
108
|
fieldContainerProps: any;
|
87
|
-
fieldControlInputProps:
|
88
|
-
'aria-label'?: string | undefined;
|
89
|
-
'aria-labelledby'?: string | undefined;
|
90
|
-
'aria-describedby'?: string | undefined;
|
91
|
-
'aria-details'?: string | undefined;
|
92
|
-
id: string | undefined;
|
93
|
-
autoComplete: string | undefined;
|
94
|
-
autoCorrect: string | undefined;
|
95
|
-
autoFocus: boolean | undefined;
|
96
|
-
className: string;
|
97
|
-
defaultSelected: boolean | undefined;
|
98
|
-
defaultValue: string | number | undefined;
|
99
|
-
disabled: boolean | undefined;
|
100
|
-
isFocused: boolean;
|
101
|
-
isIndeterminate: boolean | undefined;
|
102
|
-
maxLength: number | undefined;
|
103
|
-
name: string | undefined;
|
104
|
-
onChange: (e: CustomChangeEventType) => any;
|
105
|
-
placeholder: string | number | undefined;
|
106
|
-
readOnly: boolean | undefined;
|
107
|
-
required: boolean | undefined;
|
108
|
-
role: string | undefined;
|
109
|
-
spellCheck: string | undefined;
|
110
|
-
type: string | undefined;
|
111
|
-
value: string | number | undefined;
|
112
|
-
};
|
109
|
+
fieldControlInputProps: FieldControlInputProps;
|
113
110
|
fieldControlWrapperProps: {
|
114
111
|
id?: string | undefined;
|
115
112
|
statusClasses?: {
|
@@ -120,6 +117,7 @@ declare const useField: <T>(props: UseFieldProps<T>) => {
|
|
120
117
|
isDisabled?: boolean | undefined;
|
121
118
|
variant?: string | undefined;
|
122
119
|
as?: string | number | boolean | import("react").ReactElement<any, string | import("react").JSXElementConstructor<any>> | Iterable<import("react").ReactNode> | import("react").ReactPortal | import("react").ComponentClass<any, any> | import("react").FunctionComponent<any> | null | undefined;
|
120
|
+
style?: string | import("react").CSSProperties | undefined;
|
123
121
|
grid?: import("theme-ui").StylePropertyValue<import("csstype").Property.Grid | undefined>;
|
124
122
|
accentColor?: import("theme-ui").StylePropertyValue<import("csstype").Property.AccentColor | undefined>;
|
125
123
|
alignContent?: import("theme-ui").StylePropertyValue<import("csstype").Property.AlignContent | undefined>;
|
@@ -1118,7 +1116,7 @@ declare const useField: <T>(props: UseFieldProps<T>) => {
|
|
1118
1116
|
color?: string | undefined;
|
1119
1117
|
content?: string | undefined;
|
1120
1118
|
translate?: "yes" | "no" | undefined;
|
1121
|
-
key?:
|
1119
|
+
key?: Key | null | undefined;
|
1122
1120
|
defaultChecked?: boolean | undefined;
|
1123
1121
|
defaultValue?: string | number | readonly string[] | undefined;
|
1124
1122
|
suppressContentEditableWarning?: boolean | undefined;
|
@@ -1433,7 +1431,7 @@ declare const useField: <T>(props: UseFieldProps<T>) => {
|
|
1433
1431
|
color?: string | undefined;
|
1434
1432
|
content?: string | undefined;
|
1435
1433
|
translate?: "yes" | "no" | undefined;
|
1436
|
-
key?:
|
1434
|
+
key?: Key | null | undefined;
|
1437
1435
|
defaultChecked?: boolean | undefined;
|
1438
1436
|
defaultValue?: string | number | readonly string[] | undefined;
|
1439
1437
|
suppressContentEditableWarning?: boolean | undefined;
|
@@ -25,7 +25,7 @@ var _constants = require("../../components/Label/constants");
|
|
25
25
|
var _statuses = _interopRequireDefault(require("../../utils/devUtils/constants/statuses"));
|
26
26
|
var _ariaAttributes = require("../../utils/docUtils/ariaAttributes");
|
27
27
|
var _ = require("..");
|
28
|
-
var _excluded = ["autocomplete", "autoComplete", "autoCorrect", "className", "containerProps", "controlProps", "defaultValue", "hasAutoFocus", "hasNoStatusIndicator", "hintText", "id", "isDefaultSelected", "isDisabled", "isIndeterminate", "isReadOnly", "isRequired", "isRestrictiveMultivalues", "label", "labelMode", "labelProps", "maxLength", "name", "onBlur", "onChange", "onFocus", "placeholder", "role", "spellCheck", "status", "statusClasses", "type", "value", "wrapperProps"];
|
28
|
+
var _excluded = ["autocomplete", "autoComplete", "autoCorrect", "className", "containerProps", "controlProps", "defaultValue", "hasAutoFocus", "hasNoStatusIndicator", "hintText", "id", "isDefaultSelected", "isDisabled", "isIndeterminate", "isReadOnly", "isRequired", "isRestrictiveMultivalues", "label", "labelMode", "labelProps", "maxLength", "name", "onBlur", "onChange", "onFocus", "placeholder", "role", "spellCheck", "status", "statusClasses", "type", "value", "wrapperProps"]; // eslint-disable-next-line import/no-unresolved
|
29
29
|
function ownKeys(object, enumerableOnly) { var keys = _Object$keys(object); if (_Object$getOwnPropertySymbols) { var symbols = _Object$getOwnPropertySymbols(object); enumerableOnly && (symbols = _filterInstanceProperty(symbols).call(symbols, function (sym) { return _Object$getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
30
30
|
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var _context, _context2; var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? _forEachInstanceProperty(_context = ownKeys(Object(source), !0)).call(_context, function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }) : _Object$getOwnPropertyDescriptors ? _Object$defineProperties(target, _Object$getOwnPropertyDescriptors(source)) : _forEachInstanceProperty(_context2 = ownKeys(Object(source))).call(_context2, function (key) { _Object$defineProperty(target, key, _Object$getOwnPropertyDescriptor(source, key)); }); } return target; }
|
31
31
|
/**
|
@@ -0,0 +1 @@
|
|
1
|
+
export { default } from './useSelectField';
|
@@ -0,0 +1,55 @@
|
|
1
|
+
import React, { DOMAttributes, Key } from 'react';
|
2
|
+
import { AriaButtonProps } from 'react-aria';
|
3
|
+
import { SelectState } from 'react-stately';
|
4
|
+
import { CollectionChildren } from '@react-types/shared';
|
5
|
+
import { LabelProps as ThemeUILabelProps } from 'theme-ui';
|
6
|
+
import { Axis, BoxProps, FocusableElement, PlacementAxis, ReactRef, StyleProps } from '../../types';
|
7
|
+
import { FieldControlInputProps } from '../useField/useField';
|
8
|
+
interface UseSelectFieldProps<T> {
|
9
|
+
children: CollectionChildren<T>;
|
10
|
+
align?: PlacementAxis;
|
11
|
+
defaultSelectedKey?: string;
|
12
|
+
defaultText?: string;
|
13
|
+
direction?: Axis;
|
14
|
+
disabledKeys?: Iterable<Key>;
|
15
|
+
hasNoEmptySelection?: boolean;
|
16
|
+
isDefaultOpen?: boolean;
|
17
|
+
isDisabled?: boolean;
|
18
|
+
isLoading?: boolean;
|
19
|
+
isNotFlippable?: boolean;
|
20
|
+
isOpen?: boolean;
|
21
|
+
isReadOnly?: boolean;
|
22
|
+
isRequired?: boolean;
|
23
|
+
items?: Iterable<T>;
|
24
|
+
label?: string;
|
25
|
+
listboxStyle?: React.CSSProperties;
|
26
|
+
name?: string;
|
27
|
+
placeholder?: string;
|
28
|
+
selectedKey?: string;
|
29
|
+
onLoadMore?: () => unknown;
|
30
|
+
onOpenChange?: (isOpen: boolean) => unknown;
|
31
|
+
onSelectionChange?: (key: Key) => unknown;
|
32
|
+
controlProps?: React.HTMLAttributes<Element>;
|
33
|
+
scrollBoxProps?: BoxProps;
|
34
|
+
listBoxProps?: BoxProps;
|
35
|
+
labelProps?: ThemeUILabelProps;
|
36
|
+
containerProps?: BoxProps;
|
37
|
+
labelMode: 'default' | 'float' | 'left';
|
38
|
+
}
|
39
|
+
interface UseSelectFieldReturnProps {
|
40
|
+
columnStyleProps: StyleProps;
|
41
|
+
fieldContainerProps: BoxProps;
|
42
|
+
fieldControlInputProps: FieldControlInputProps;
|
43
|
+
fieldControlWrapperProps: BoxProps;
|
44
|
+
fieldLabelProps: ThemeUILabelProps;
|
45
|
+
isLoadingInitial?: boolean;
|
46
|
+
listBoxRef: ReactRef;
|
47
|
+
overlay: React.ReactNode;
|
48
|
+
popoverRef: ReactRef;
|
49
|
+
state: SelectState<object>;
|
50
|
+
triggerProps: AriaButtonProps<'button'>;
|
51
|
+
triggerRef: ReactRef;
|
52
|
+
valueProps: DOMAttributes<FocusableElement>;
|
53
|
+
}
|
54
|
+
declare const useSelectField: <T extends object>(props: UseSelectFieldProps<T>, ref: ReactRef) => UseSelectFieldReturnProps;
|
55
|
+
export default useSelectField;
|
@@ -24,7 +24,7 @@ var _reactAria = require("react-aria");
|
|
24
24
|
var _reactStately = require("react-stately");
|
25
25
|
var _utils = require("@react-aria/utils");
|
26
26
|
var _constants = require("../../components/Label/constants");
|
27
|
-
var _ListBox = _interopRequireDefault(require("../../components/ListBox"));
|
27
|
+
var _ListBox = _interopRequireDefault(require("../../components/ListBox/ListBox"));
|
28
28
|
var _PopoverContainer = _interopRequireDefault(require("../../components/PopoverContainer"));
|
29
29
|
var _ScrollBox = _interopRequireDefault(require("../../components/ScrollBox"));
|
30
30
|
var _ = require("..");
|
@@ -32,7 +32,7 @@ var _react2 = require("@emotion/react");
|
|
32
32
|
function _getRequireWildcardCache(nodeInterop) { if (typeof _WeakMap !== "function") return null; var cacheBabelInterop = new _WeakMap(); var cacheNodeInterop = new _WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
33
33
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = _Object$defineProperty && _Object$getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? _Object$getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { _Object$defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
34
34
|
function ownKeys(object, enumerableOnly) { var keys = _Object$keys(object); if (_Object$getOwnPropertySymbols) { var symbols = _Object$getOwnPropertySymbols(object); enumerableOnly && (symbols = _filterInstanceProperty(symbols).call(symbols, function (sym) { return _Object$getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
35
|
-
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var _context2, _context3; var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? _forEachInstanceProperty(_context2 = ownKeys(Object(source), !0)).call(_context2, function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }) : _Object$getOwnPropertyDescriptors ? _Object$defineProperties(target, _Object$getOwnPropertyDescriptors(source)) : _forEachInstanceProperty(_context3 = ownKeys(Object(source))).call(_context3, function (key) { _Object$defineProperty(target, key, _Object$getOwnPropertyDescriptor(source, key)); }); } return target; }
|
35
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var _context2, _context3; var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? _forEachInstanceProperty(_context2 = ownKeys(Object(source), !0)).call(_context2, function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }) : _Object$getOwnPropertyDescriptors ? _Object$defineProperties(target, _Object$getOwnPropertyDescriptors(source)) : _forEachInstanceProperty(_context3 = ownKeys(Object(source))).call(_context3, function (key) { _Object$defineProperty(target, key, _Object$getOwnPropertyDescriptor(source, key)); }); } return target; } // eslint-disable-next-line import/no-unresolved
|
36
36
|
var useSelectField = function useSelectField(props, ref) {
|
37
37
|
var _context;
|
38
38
|
var align = props.align,
|
@@ -64,8 +64,7 @@ var useSelectField = function useSelectField(props, ref) {
|
|
64
64
|
// We use falsy booleans as defaults, but React Aria has this as true by default so we need to
|
65
65
|
// negate this.
|
66
66
|
var shouldFlip = !isNotFlippable;
|
67
|
-
var selectProps = _objectSpread({
|
68
|
-
children: children,
|
67
|
+
var selectProps = _objectSpread(_objectSpread({
|
69
68
|
defaultSelectedKey: defaultSelectedKey,
|
70
69
|
defaultText: defaultText,
|
71
70
|
disabledKeys: disabledKeys,
|
@@ -87,13 +86,14 @@ var useSelectField = function useSelectField(props, ref) {
|
|
87
86
|
disallowEmptySelection: disallowEmptySelection,
|
88
87
|
// must match React Aria API
|
89
88
|
shouldFlip: shouldFlip
|
90
|
-
}, controlProps)
|
89
|
+
}, controlProps), {}, {
|
90
|
+
children: children
|
91
|
+
});
|
91
92
|
// Create state based on the incoming props
|
92
93
|
var state = (0, _reactStately.useSelectState)(selectProps);
|
93
94
|
var popoverRef = (0, _react.useRef)();
|
94
|
-
var triggerRef = (0, _react.useRef)();
|
95
95
|
var listBoxRef = (0, _react.useRef)();
|
96
|
-
|
96
|
+
var triggerRef = (0, _react.useRef)();
|
97
97
|
/* istanbul ignore next */
|
98
98
|
(0, _react.useImperativeHandle)(ref, function () {
|
99
99
|
return triggerRef.current;
|
@@ -120,7 +120,7 @@ var useSelectField = function useSelectField(props, ref) {
|
|
120
120
|
placeholder: props.labelMode === _constants.modes.FLOAT ? '' : placeholder,
|
121
121
|
labelProps: _objectSpread(_objectSpread({}, props.labelProps), labelProps),
|
122
122
|
containerProps: _objectSpread({
|
123
|
-
isFloatLabelActive: state.selectedItem
|
123
|
+
isFloatLabelActive: !!state.selectedItem
|
124
124
|
}, props.containerProps)
|
125
125
|
})),
|
126
126
|
fieldContainerProps = _useField.fieldContainerProps,
|
@@ -152,7 +152,7 @@ var useSelectField = function useSelectField(props, ref) {
|
|
152
152
|
}, [state.isOpen, updatePosition]);
|
153
153
|
|
154
154
|
// Measure the width of the input to inform the width of the listbox (below).
|
155
|
-
var _useState = (0, _react.useState)(
|
155
|
+
var _useState = (0, _react.useState)(0),
|
156
156
|
_useState2 = (0, _slicedToArray2["default"])(_useState, 2),
|
157
157
|
buttonWidth = _useState2[0],
|
158
158
|
setButtonWidth = _useState2[1];
|
@@ -161,7 +161,7 @@ var useSelectField = function useSelectField(props, ref) {
|
|
161
161
|
if (triggerRef.current) {
|
162
162
|
setButtonWidth(triggerRef.current.offsetWidth);
|
163
163
|
}
|
164
|
-
}, [triggerRef, setButtonWidth
|
164
|
+
}, [triggerRef, setButtonWidth]);
|
165
165
|
(0, _utils.useResizeObserver)({
|
166
166
|
ref: triggerRef,
|
167
167
|
onResize: onResize
|
package/lib/cjs/types/item.d.ts
CHANGED
@@ -1,17 +1,14 @@
|
|
1
|
-
import {
|
1
|
+
import { ElementType } from 'react';
|
2
2
|
import type { ItemProps } from '@react-types/shared';
|
3
3
|
import { DOMAttributes, StyleProps } from './shared';
|
4
|
-
export interface StylingProps extends DOMAttributes, StyleProps {
|
5
|
-
style?: CSSProperties | string;
|
6
|
-
}
|
7
4
|
declare module '@react-types/shared' {
|
8
5
|
interface ItemProps<T> extends StyleProps, DOMAttributes {
|
9
6
|
/** The rendered label for the item. */
|
10
7
|
label?: string;
|
11
8
|
/** Props for the accordion item content element. */
|
12
|
-
regionProps?:
|
9
|
+
regionProps?: StyleProps;
|
13
10
|
/** Props for the accordion item content element. */
|
14
|
-
containerProps?:
|
11
|
+
containerProps?: StyleProps;
|
15
12
|
/** Whether the item has a separator */
|
16
13
|
isSeparator?: boolean;
|
17
14
|
/** Whether the item is pressed */
|
@@ -23,7 +20,7 @@ declare module '@react-types/shared' {
|
|
23
20
|
/** A URL to link to if elementType="a". */
|
24
21
|
href?: string;
|
25
22
|
/** Inline styling prop for item */
|
26
|
-
sx?:
|
23
|
+
sx?: StyleProps;
|
27
24
|
}
|
28
25
|
}
|
29
26
|
export default ItemProps;
|
@@ -16,6 +16,7 @@ export interface PopoverContainerProps extends StylePropsExtended, DOMAttributes
|
|
16
16
|
isKeyboardDismissDisabled?: boolean;
|
17
17
|
isNonModal?: boolean;
|
18
18
|
isDismissable?: boolean;
|
19
|
+
isOpen?: boolean;
|
19
20
|
}
|
20
21
|
export interface PopoverWrapperProps extends PopoverContainerProps {
|
21
22
|
isOpen?: boolean;
|
@@ -8,4 +8,10 @@ export interface StyleProps extends ThemeUICSSProperties, SxProp {
|
|
8
8
|
variant?: string;
|
9
9
|
/** The base HTML tag name or React component type to render */
|
10
10
|
as?: string | React.ReactNode | React.ElementType;
|
11
|
+
/** Inline style object that allows you to directly apply CSS styles to the element. */
|
12
|
+
style?: React.CSSProperties | string;
|
11
13
|
}
|
14
|
+
export type Placement = 'bottom' | 'bottom left' | 'bottom right' | 'bottom start' | 'bottom end' | 'top' | 'top left' | 'top right' | 'top start' | 'top end' | 'left' | 'left top' | 'left bottom' | 'start' | 'start top' | 'start bottom' | 'right' | 'right top' | 'right bottom' | 'end' | 'end top' | 'end bottom';
|
15
|
+
export type Axis = 'top' | 'bottom' | 'left' | 'right';
|
16
|
+
export type SizeAxis = 'width' | 'height';
|
17
|
+
export type PlacementAxis = Axis | 'center';
|
@@ -4,7 +4,7 @@ import _concatInstanceProperty from "@babel/runtime-corejs3/core-js-stable/insta
|
|
4
4
|
import React, { useState } from 'react';
|
5
5
|
import LockIcon from '@pingux/mdi-react/LockIcon';
|
6
6
|
import DocsLayout from '../../../.storybook/storybookDocsLayout';
|
7
|
-
import { Badge, Icon, Tab, Tabs, Text } from '../../index';
|
7
|
+
import { Badge, Box, Icon, Tab, Tabs, Text } from '../../index';
|
8
8
|
import TabsReadme from './Tabs.mdx';
|
9
9
|
import { jsx as ___EmotionJSX } from "@emotion/react";
|
10
10
|
export default {
|
@@ -174,11 +174,11 @@ export var ContentSlots = function ContentSlots() {
|
|
174
174
|
marginLeft: 6,
|
175
175
|
marginTop: 10
|
176
176
|
};
|
177
|
-
var afterTabNode = ___EmotionJSX(Badge, {
|
177
|
+
var afterTabNode = ___EmotionJSX(Box, null, ___EmotionJSX(Badge, {
|
178
178
|
variant: "countNeutral",
|
179
179
|
sx: nodeSx,
|
180
180
|
label: "14"
|
181
|
-
});
|
181
|
+
}));
|
182
182
|
return ___EmotionJSX(React.Fragment, null, ___EmotionJSX(Tabs, {
|
183
183
|
items: tabs,
|
184
184
|
mb: 50
|
@@ -15,6 +15,8 @@ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { va
|
|
15
15
|
import { useEffect, useState } from 'react';
|
16
16
|
import { mergeProps, useFocusRing, useLabel } from 'react-aria';
|
17
17
|
import { useFocusWithin } from '@react-aria/interactions';
|
18
|
+
// eslint-disable-next-line import/no-unresolved
|
19
|
+
|
18
20
|
import noop from 'lodash/noop';
|
19
21
|
import omit from 'lodash/omit';
|
20
22
|
import { modes as labelModes } from '../../components/Label/constants';
|
@@ -16,8 +16,10 @@ import React, { useCallback, useImperativeHandle, useLayoutEffect, useRef, useSt
|
|
16
16
|
import { DismissButton, FocusScope, useOverlayPosition, useSelect } from 'react-aria';
|
17
17
|
import { useSelectState } from 'react-stately';
|
18
18
|
import { useResizeObserver } from '@react-aria/utils';
|
19
|
+
// eslint-disable-next-line import/no-unresolved
|
20
|
+
|
19
21
|
import { modes } from '../../components/Label/constants';
|
20
|
-
import ListBox from '../../components/ListBox';
|
22
|
+
import ListBox from '../../components/ListBox/ListBox';
|
21
23
|
import PopoverContainer from '../../components/PopoverContainer';
|
22
24
|
import ScrollBox from '../../components/ScrollBox';
|
23
25
|
import { useColumnStyles, useDeprecationWarning, useField } from '..';
|
@@ -53,8 +55,7 @@ var useSelectField = function useSelectField(props, ref) {
|
|
53
55
|
// We use falsy booleans as defaults, but React Aria has this as true by default so we need to
|
54
56
|
// negate this.
|
55
57
|
var shouldFlip = !isNotFlippable;
|
56
|
-
var selectProps = _objectSpread({
|
57
|
-
children: children,
|
58
|
+
var selectProps = _objectSpread(_objectSpread({
|
58
59
|
defaultSelectedKey: defaultSelectedKey,
|
59
60
|
defaultText: defaultText,
|
60
61
|
disabledKeys: disabledKeys,
|
@@ -76,13 +77,14 @@ var useSelectField = function useSelectField(props, ref) {
|
|
76
77
|
disallowEmptySelection: disallowEmptySelection,
|
77
78
|
// must match React Aria API
|
78
79
|
shouldFlip: shouldFlip
|
79
|
-
}, controlProps)
|
80
|
+
}, controlProps), {}, {
|
81
|
+
children: children
|
82
|
+
});
|
80
83
|
// Create state based on the incoming props
|
81
84
|
var state = useSelectState(selectProps);
|
82
85
|
var popoverRef = useRef();
|
83
|
-
var triggerRef = useRef();
|
84
86
|
var listBoxRef = useRef();
|
85
|
-
|
87
|
+
var triggerRef = useRef();
|
86
88
|
/* istanbul ignore next */
|
87
89
|
useImperativeHandle(ref, function () {
|
88
90
|
return triggerRef.current;
|
@@ -109,7 +111,7 @@ var useSelectField = function useSelectField(props, ref) {
|
|
109
111
|
placeholder: props.labelMode === modes.FLOAT ? '' : placeholder,
|
110
112
|
labelProps: _objectSpread(_objectSpread({}, props.labelProps), labelProps),
|
111
113
|
containerProps: _objectSpread({
|
112
|
-
isFloatLabelActive: state.selectedItem
|
114
|
+
isFloatLabelActive: !!state.selectedItem
|
113
115
|
}, props.containerProps)
|
114
116
|
})),
|
115
117
|
fieldContainerProps = _useField.fieldContainerProps,
|
@@ -141,7 +143,7 @@ var useSelectField = function useSelectField(props, ref) {
|
|
141
143
|
}, [state.isOpen, updatePosition]);
|
142
144
|
|
143
145
|
// Measure the width of the input to inform the width of the listbox (below).
|
144
|
-
var _useState = useState(
|
146
|
+
var _useState = useState(0),
|
145
147
|
_useState2 = _slicedToArray(_useState, 2),
|
146
148
|
buttonWidth = _useState2[0],
|
147
149
|
setButtonWidth = _useState2[1];
|
@@ -150,7 +152,7 @@ var useSelectField = function useSelectField(props, ref) {
|
|
150
152
|
if (triggerRef.current) {
|
151
153
|
setButtonWidth(triggerRef.current.offsetWidth);
|
152
154
|
}
|
153
|
-
}, [triggerRef, setButtonWidth
|
155
|
+
}, [triggerRef, setButtonWidth]);
|
154
156
|
useResizeObserver({
|
155
157
|
ref: triggerRef,
|
156
158
|
onResize: onResize
|