@primer/components 0.0.0-202111613730 → 0.0.0-2021116163027
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/browser.esm.js +2 -2
- package/dist/browser.esm.js.map +1 -1
- package/dist/browser.umd.js +2 -2
- package/dist/browser.umd.js.map +1 -1
- package/lib/ActionList2/{MenuContext.d.ts → ActionListContainerContext.d.ts} +3 -3
- package/lib/ActionList2/{MenuContext.js → ActionListContainerContext.js} +3 -3
- package/lib/ActionList2/Item.js +4 -6
- package/lib/ActionList2/List.js +2 -2
- package/lib/ActionList2/Selection.js +4 -4
- package/lib/ActionMenu2.d.ts +13 -9
- package/lib/ActionMenu2.js +63 -29
- package/lib/Autocomplete/AutocompleteMenu.js +6 -13
- package/lib/CheckboxInputField.d.ts +10 -0
- package/lib/CheckboxInputField.js +73 -0
- package/lib/RadioInputField.d.ts +8 -0
- package/lib/RadioInputField.js +82 -0
- package/lib/TextInputField.d.ts +583 -0
- package/lib/TextInputField.js +66 -0
- package/lib/_InputCaption.d.ts +13 -0
- package/lib/_InputCaption.js +26 -0
- package/lib/_InputField/InputField.d.ts +39 -0
- package/lib/_InputField/InputField.js +90 -0
- package/lib/_InputField/InputFieldCaption.d.ts +3 -0
- package/lib/_InputField/InputFieldCaption.js +30 -0
- package/lib/_InputField/InputFieldLabel.d.ts +9 -0
- package/lib/_InputField/InputFieldLabel.js +34 -0
- package/lib/_InputField/InputFieldValidation.d.ts +6 -0
- package/lib/_InputField/InputFieldValidation.js +17 -0
- package/lib/_InputField/ToggleInputField.d.ts +13 -0
- package/lib/_InputField/ToggleInputField.js +71 -0
- package/lib/_InputField/ToggleInputLeadingVisual.d.ts +3 -0
- package/lib/_InputField/ToggleInputLeadingVisual.js +22 -0
- package/lib/_InputField/ValidationAnimationContainer.d.ts +6 -0
- package/lib/_InputField/ValidationAnimationContainer.js +48 -0
- package/lib/_InputField/index.d.ts +1 -0
- package/lib/_InputField/index.js +15 -0
- package/lib/_InputField/slots.d.ts +13 -0
- package/lib/_InputField/slots.js +17 -0
- package/lib/_InputLabel.d.ts +8 -0
- package/lib/_InputLabel.js +44 -0
- package/lib/_InputValidation.d.ts +8 -0
- package/lib/_InputValidation.js +56 -0
- package/lib/_VisuallyHidden.d.ts +6 -0
- package/lib/_VisuallyHidden.js +39 -0
- package/lib/hooks/index.d.ts +1 -0
- package/lib/hooks/index.js +9 -1
- package/lib/index.d.ts +3 -0
- package/lib/index.js +24 -0
- package/lib/utils/types/FormValidationStatus.d.ts +1 -0
- package/lib/utils/types/FormValidationStatus.js +1 -0
- package/lib-esm/ActionList2/{MenuContext.d.ts → ActionListContainerContext.d.ts} +3 -3
- package/lib-esm/ActionList2/{MenuContext.js → ActionListContainerContext.js} +1 -1
- package/lib-esm/ActionList2/Item.js +4 -6
- package/lib-esm/ActionList2/List.js +2 -2
- package/lib-esm/ActionList2/Selection.js +4 -4
- package/lib-esm/ActionMenu2.d.ts +13 -9
- package/lib-esm/ActionMenu2.js +60 -27
- package/lib-esm/Autocomplete/AutocompleteMenu.js +3 -13
- package/lib-esm/CheckboxInputField.d.ts +10 -0
- package/lib-esm/CheckboxInputField.js +56 -0
- package/lib-esm/RadioInputField.d.ts +8 -0
- package/lib-esm/RadioInputField.js +65 -0
- package/lib-esm/TextInputField.d.ts +583 -0
- package/lib-esm/TextInputField.js +50 -0
- package/lib-esm/_InputCaption.d.ts +13 -0
- package/lib-esm/_InputCaption.js +15 -0
- package/lib-esm/_InputField/InputField.d.ts +39 -0
- package/lib-esm/_InputField/InputField.js +70 -0
- package/lib-esm/_InputField/InputFieldCaption.d.ts +3 -0
- package/lib-esm/_InputField/InputFieldCaption.js +18 -0
- package/lib-esm/_InputField/InputFieldLabel.d.ts +9 -0
- package/lib-esm/_InputField/InputFieldLabel.js +22 -0
- package/lib-esm/_InputField/InputFieldValidation.d.ts +6 -0
- package/lib-esm/_InputField/InputFieldValidation.js +7 -0
- package/lib-esm/_InputField/ToggleInputField.d.ts +13 -0
- package/lib-esm/_InputField/ToggleInputField.js +54 -0
- package/lib-esm/_InputField/ToggleInputLeadingVisual.d.ts +3 -0
- package/lib-esm/_InputField/ToggleInputLeadingVisual.js +11 -0
- package/lib-esm/_InputField/ValidationAnimationContainer.d.ts +6 -0
- package/lib-esm/_InputField/ValidationAnimationContainer.js +33 -0
- package/lib-esm/_InputField/index.d.ts +1 -0
- package/lib-esm/_InputField/index.js +1 -0
- package/lib-esm/_InputField/slots.d.ts +13 -0
- package/lib-esm/_InputField/slots.js +5 -0
- package/lib-esm/_InputLabel.d.ts +8 -0
- package/lib-esm/_InputLabel.js +32 -0
- package/lib-esm/_InputValidation.d.ts +8 -0
- package/lib-esm/_InputValidation.js +43 -0
- package/lib-esm/_VisuallyHidden.d.ts +6 -0
- package/lib-esm/_VisuallyHidden.js +26 -0
- package/lib-esm/hooks/index.d.ts +1 -0
- package/lib-esm/hooks/index.js +2 -1
- package/lib-esm/index.d.ts +3 -0
- package/lib-esm/index.js +3 -0
- package/lib-esm/utils/types/FormValidationStatus.d.ts +1 -0
- package/lib-esm/utils/types/FormValidationStatus.js +1 -0
- package/package.json +2 -2
@@ -1,10 +1,10 @@
|
|
1
1
|
/** This context can be used by components that compose ActionList inside a Menu */
|
2
2
|
import React from 'react';
|
3
3
|
declare type ContextProps = {
|
4
|
-
|
4
|
+
container?: string;
|
5
5
|
listRole?: string;
|
6
6
|
itemRole?: string;
|
7
|
-
afterSelect?:
|
7
|
+
afterSelect?: Function;
|
8
8
|
};
|
9
|
-
export declare const
|
9
|
+
export declare const ActionListContainerContext: React.Context<ContextProps>;
|
10
10
|
export {};
|
@@ -3,13 +3,13 @@
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
4
4
|
value: true
|
5
5
|
});
|
6
|
-
exports.
|
6
|
+
exports.ActionListContainerContext = void 0;
|
7
7
|
|
8
8
|
var _react = _interopRequireDefault(require("react"));
|
9
9
|
|
10
10
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
11
11
|
|
12
12
|
/** This context can be used by components that compose ActionList inside a Menu */
|
13
|
-
const
|
13
|
+
const ActionListContainerContext = /*#__PURE__*/_react.default.createContext({});
|
14
14
|
|
15
|
-
exports.
|
15
|
+
exports.ActionListContainerContext = ActionListContainerContext;
|
package/lib/ActionList2/Item.js
CHANGED
@@ -21,7 +21,7 @@ var _createSlots = _interopRequireDefault(require("../utils/create-slots"));
|
|
21
21
|
|
22
22
|
var _List = require("./List");
|
23
23
|
|
24
|
-
var
|
24
|
+
var _ActionListContainerContext = require("./ActionListContainerContext");
|
25
25
|
|
26
26
|
var _Selection = require("./Selection");
|
27
27
|
|
@@ -96,7 +96,7 @@ const Item = /*#__PURE__*/_react.default.forwardRef(({
|
|
96
96
|
const {
|
97
97
|
itemRole,
|
98
98
|
afterSelect
|
99
|
-
} = _react.default.useContext(
|
99
|
+
} = _react.default.useContext(_ActionListContainerContext.ActionListContainerContext);
|
100
100
|
|
101
101
|
const {
|
102
102
|
theme
|
@@ -171,22 +171,20 @@ const Item = /*#__PURE__*/_react.default.forwardRef(({
|
|
171
171
|
};
|
172
172
|
|
173
173
|
const clickHandler = _react.default.useCallback(event => {
|
174
|
-
if (typeof onSelect !== 'function') return;
|
175
174
|
if (disabled) return;
|
176
175
|
|
177
176
|
if (!event.defaultPrevented) {
|
178
|
-
onSelect(event); // if this Item is inside a Menu, close the Menu
|
177
|
+
if (typeof onSelect === 'function') onSelect(event); // if this Item is inside a Menu, close the Menu
|
179
178
|
|
180
179
|
if (typeof afterSelect === 'function') afterSelect();
|
181
180
|
}
|
182
181
|
}, [onSelect, disabled, afterSelect]);
|
183
182
|
|
184
183
|
const keyPressHandler = _react.default.useCallback(event => {
|
185
|
-
if (typeof onSelect !== 'function') return;
|
186
184
|
if (disabled) return;
|
187
185
|
|
188
186
|
if (!event.defaultPrevented && [' ', 'Enter'].includes(event.key)) {
|
189
|
-
onSelect(event); // if this Item is inside a Menu, close the Menu
|
187
|
+
if (typeof onSelect === 'function') onSelect(event); // if this Item is inside a Menu, close the Menu
|
190
188
|
|
191
189
|
if (typeof afterSelect === 'function') afterSelect();
|
192
190
|
}
|
package/lib/ActionList2/List.js
CHANGED
@@ -11,7 +11,7 @@ var _styledComponents = _interopRequireDefault(require("styled-components"));
|
|
11
11
|
|
12
12
|
var _sx = _interopRequireWildcard(require("../sx"));
|
13
13
|
|
14
|
-
var
|
14
|
+
var _ActionListContainerContext = require("./ActionListContainerContext");
|
15
15
|
|
16
16
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
17
17
|
|
@@ -48,7 +48,7 @@ const List = /*#__PURE__*/_react.default.forwardRef(({
|
|
48
48
|
|
49
49
|
const {
|
50
50
|
listRole
|
51
|
-
} = _react.default.useContext(
|
51
|
+
} = _react.default.useContext(_ActionListContainerContext.ActionListContainerContext);
|
52
52
|
|
53
53
|
return /*#__PURE__*/_react.default.createElement(ListBox, _extends({
|
54
54
|
sx: (0, _sx.merge)(styles, sxProp),
|
@@ -13,7 +13,7 @@ var _List = require("./List");
|
|
13
13
|
|
14
14
|
var _Group = require("./Group");
|
15
15
|
|
16
|
-
var
|
16
|
+
var _ActionListContainerContext = require("./ActionListContainerContext");
|
17
17
|
|
18
18
|
var _Visuals = require("./Visuals");
|
19
19
|
|
@@ -31,8 +31,8 @@ const Selection = ({
|
|
31
31
|
} = _react.default.useContext(_Group.GroupContext);
|
32
32
|
|
33
33
|
const {
|
34
|
-
|
35
|
-
} = _react.default.useContext(
|
34
|
+
container
|
35
|
+
} = _react.default.useContext(_ActionListContainerContext.ActionListContainerContext);
|
36
36
|
/** selectionVariant in Group can override the selectionVariant in List root */
|
37
37
|
|
38
38
|
|
@@ -44,7 +44,7 @@ const Selection = ({
|
|
44
44
|
return null;
|
45
45
|
}
|
46
46
|
|
47
|
-
if (
|
47
|
+
if (container === 'ActionMenu') {
|
48
48
|
throw new Error('ActionList cannot have a selectionVariant inside ActionMenu, please use DropdownMenu or SelectPanel instead. More information: https://primer.style/design/components/action-list#application');
|
49
49
|
return null;
|
50
50
|
}
|
package/lib/ActionMenu2.d.ts
CHANGED
@@ -1,10 +1,12 @@
|
|
1
1
|
import { ButtonProps } from './Button';
|
2
2
|
import React from 'react';
|
3
|
+
import { AnchoredOverlayProps } from './AnchoredOverlay';
|
3
4
|
import { OverlayProps } from './Overlay';
|
4
|
-
|
5
|
-
declare
|
5
|
+
declare type MenuContextProps = Pick<AnchoredOverlayProps, 'anchorRef' | 'renderAnchor' | 'open' | 'onOpen' | 'onClose'>;
|
6
|
+
export declare const MenuContext: React.Context<MenuContextProps>;
|
7
|
+
export declare type ActionMenuProps = {
|
6
8
|
/**
|
7
|
-
* Recommended: `ActionMenu.Button` or `ActionMenu.Anchor` with
|
9
|
+
* Recommended: `ActionMenu.Button` or `ActionMenu.Anchor` with `ActionMenu.Overlay`
|
8
10
|
*/
|
9
11
|
children: React.ReactElement[] | React.ReactElement;
|
10
12
|
/**
|
@@ -15,17 +17,18 @@ declare type ActionMenuBaseProps = {
|
|
15
17
|
* If defined, will control the open/closed state of the overlay. Must be used in conjuction with `open`.
|
16
18
|
*/
|
17
19
|
onOpenChange?: (s: boolean) => void;
|
18
|
-
|
19
|
-
* Props to be spread on the internal `Overlay` component.
|
20
|
-
*/
|
21
|
-
overlayProps?: Partial<OverlayProps>;
|
22
|
-
};
|
23
|
-
export declare type ActionMenuProps = ActionMenuBaseProps & AnchoredOverlayWrapperAnchorProps;
|
20
|
+
} & Pick<AnchoredOverlayProps, 'anchorRef'>;
|
24
21
|
export declare type MenuAnchorProps = {
|
25
22
|
children: React.ReactElement;
|
26
23
|
};
|
27
24
|
/** this component is syntactical sugar 🍭 */
|
28
25
|
export declare type MenuButtonProps = ButtonProps;
|
26
|
+
declare type MenuOverlayProps = Partial<OverlayProps> & {
|
27
|
+
/**
|
28
|
+
* Recommended: `ActionList`
|
29
|
+
*/
|
30
|
+
children: React.ReactElement[] | React.ReactElement;
|
31
|
+
};
|
29
32
|
export declare const ActionMenu: React.FC<ActionMenuProps> & {
|
30
33
|
Button: React.ForwardRefExoticComponent<Pick<{
|
31
34
|
color?: string | undefined;
|
@@ -308,6 +311,7 @@ export declare const ActionMenu: React.FC<ActionMenuProps> & {
|
|
308
311
|
variant?: "small" | "medium" | "large" | undefined;
|
309
312
|
}> & React.RefAttributes<React.RefObject<HTMLElement> | undefined>>;
|
310
313
|
Anchor: React.ForwardRefExoticComponent<MenuAnchorProps & React.RefAttributes<React.RefObject<HTMLElement> | undefined>>;
|
314
|
+
Overlay: React.FC<MenuOverlayProps>;
|
311
315
|
Divider: React.FC<import("./sx").SxProp>;
|
312
316
|
};
|
313
317
|
export {};
|
package/lib/ActionMenu2.js
CHANGED
@@ -3,7 +3,7 @@
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
4
4
|
value: true
|
5
5
|
});
|
6
|
-
exports.ActionMenu = void 0;
|
6
|
+
exports.ActionMenu = exports.MenuContext = void 0;
|
7
7
|
|
8
8
|
var _Button = _interopRequireDefault(require("./Button"));
|
9
9
|
|
@@ -11,59 +11,60 @@ var _react = _interopRequireDefault(require("react"));
|
|
11
11
|
|
12
12
|
var _AnchoredOverlay = require("./AnchoredOverlay");
|
13
13
|
|
14
|
-
var _useProvidedStateOrCreate = require("./hooks/useProvidedStateOrCreate");
|
15
|
-
|
16
14
|
var _hooks = require("./hooks");
|
17
15
|
|
18
16
|
var _Divider = require("./ActionList2/Divider");
|
19
17
|
|
20
|
-
var
|
18
|
+
var _ActionListContainerContext = require("./ActionList2/ActionListContainerContext");
|
21
19
|
|
22
20
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
23
21
|
|
24
|
-
const
|
22
|
+
const MenuContext = /*#__PURE__*/_react.default.createContext({
|
23
|
+
renderAnchor: null,
|
24
|
+
open: false
|
25
|
+
});
|
26
|
+
|
27
|
+
exports.MenuContext = MenuContext;
|
28
|
+
|
29
|
+
const Menu = ({
|
25
30
|
anchorRef: externalAnchorRef,
|
26
31
|
open,
|
27
32
|
onOpenChange,
|
28
|
-
overlayProps,
|
29
33
|
children
|
30
34
|
}) => {
|
31
|
-
const [combinedOpenState, setCombinedOpenState] = (0,
|
32
|
-
const anchorRef = (0, _hooks.useProvidedRefOrCreate)(externalAnchorRef);
|
35
|
+
const [combinedOpenState, setCombinedOpenState] = (0, _hooks.useProvidedStateOrCreate)(open, onOpenChange, false);
|
33
36
|
|
34
37
|
const onOpen = _react.default.useCallback(() => setCombinedOpenState(true), [setCombinedOpenState]);
|
35
38
|
|
36
39
|
const onClose = _react.default.useCallback(() => setCombinedOpenState(false), [setCombinedOpenState]);
|
37
40
|
|
38
|
-
|
39
|
-
|
41
|
+
const anchorRef = (0, _hooks.useProvidedRefOrCreate)(externalAnchorRef);
|
42
|
+
let renderAnchor = null; // 🚨 Hack for good API!
|
43
|
+
// we strip out Anchor from children and pass it to AnchoredOverlay to render
|
44
|
+
// with additional props for accessibility
|
40
45
|
|
41
|
-
_react.default.Children.map(children, child => {
|
46
|
+
const contents = _react.default.Children.map(children, child => {
|
42
47
|
if (child.type === MenuButton || child.type === Anchor) {
|
43
48
|
renderAnchor = anchorProps => /*#__PURE__*/_react.default.cloneElement(child, anchorProps);
|
44
|
-
|
45
|
-
|
49
|
+
|
50
|
+
return null;
|
46
51
|
}
|
52
|
+
|
53
|
+
return child;
|
47
54
|
});
|
48
55
|
|
49
|
-
return /*#__PURE__*/_react.default.createElement(
|
50
|
-
renderAnchor: renderAnchor,
|
51
|
-
anchorRef: anchorRef,
|
52
|
-
open: combinedOpenState,
|
53
|
-
onOpen: onOpen,
|
54
|
-
onClose: onClose,
|
55
|
-
overlayProps: overlayProps
|
56
|
-
}, /*#__PURE__*/_react.default.createElement(_MenuContext.MenuContext.Provider, {
|
56
|
+
return /*#__PURE__*/_react.default.createElement(MenuContext.Provider, {
|
57
57
|
value: {
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
58
|
+
anchorRef,
|
59
|
+
renderAnchor,
|
60
|
+
open: combinedOpenState,
|
61
|
+
onOpen,
|
62
|
+
onClose
|
62
63
|
}
|
63
|
-
}, contents)
|
64
|
+
}, contents);
|
64
65
|
};
|
65
66
|
|
66
|
-
|
67
|
+
Menu.displayName = "Menu";
|
67
68
|
|
68
69
|
const Anchor = /*#__PURE__*/_react.default.forwardRef(({
|
69
70
|
children,
|
@@ -82,10 +83,43 @@ const MenuButton = /*#__PURE__*/_react.default.forwardRef((props, anchorRef) =>
|
|
82
83
|
}, /*#__PURE__*/_react.default.createElement(_Button.default, props));
|
83
84
|
});
|
84
85
|
|
85
|
-
|
86
|
-
|
86
|
+
const Overlay = ({
|
87
|
+
children,
|
88
|
+
...overlayProps
|
89
|
+
}) => {
|
90
|
+
// we typecast anchorRef as required instead of optional
|
91
|
+
// because we know that we're setting it in context in Menu
|
92
|
+
const {
|
93
|
+
anchorRef,
|
94
|
+
renderAnchor,
|
95
|
+
open,
|
96
|
+
onOpen,
|
97
|
+
onClose
|
98
|
+
} = _react.default.useContext(MenuContext);
|
99
|
+
|
100
|
+
return /*#__PURE__*/_react.default.createElement(_AnchoredOverlay.AnchoredOverlay, {
|
101
|
+
anchorRef: anchorRef,
|
102
|
+
renderAnchor: renderAnchor,
|
103
|
+
open: open,
|
104
|
+
onOpen: onOpen,
|
105
|
+
onClose: onClose,
|
106
|
+
overlayProps: overlayProps
|
107
|
+
}, /*#__PURE__*/_react.default.createElement(_ActionListContainerContext.ActionListContainerContext.Provider, {
|
108
|
+
value: {
|
109
|
+
container: 'ActionMenu',
|
110
|
+
listRole: 'menu',
|
111
|
+
itemRole: 'menuitem',
|
112
|
+
afterSelect: onClose
|
113
|
+
}
|
114
|
+
}, children));
|
115
|
+
};
|
116
|
+
|
117
|
+
Overlay.displayName = "Overlay";
|
118
|
+
Menu.displayName = 'ActionMenu';
|
119
|
+
const ActionMenu = Object.assign(Menu, {
|
87
120
|
Button: MenuButton,
|
88
121
|
Anchor,
|
122
|
+
Overlay,
|
89
123
|
Divider: _Divider.Divider
|
90
124
|
});
|
91
125
|
exports.ActionMenu = ActionMenu;
|
@@ -21,6 +21,10 @@ var _uniqueId = require("../utils/uniqueId");
|
|
21
21
|
|
22
22
|
var _scrollIntoViewingArea = require("../behaviors/scrollIntoViewingArea");
|
23
23
|
|
24
|
+
var _VisuallyHidden = _interopRequireDefault(require("../_VisuallyHidden"));
|
25
|
+
|
26
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
27
|
+
|
24
28
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
25
29
|
|
26
30
|
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; }
|
@@ -182,19 +186,8 @@ function AutocompleteMenu(props) {
|
|
182
186
|
setSelectedItemLength(selectedItemIds.length);
|
183
187
|
}
|
184
188
|
}, [selectedItemIds, setSelectedItemLength]);
|
185
|
-
return /*#__PURE__*/_react.default.createElement(
|
186
|
-
|
187
|
-
// visually hides this label for sighted users
|
188
|
-
position: 'absolute',
|
189
|
-
width: '1px',
|
190
|
-
height: '1px',
|
191
|
-
padding: '0',
|
192
|
-
margin: '-1px',
|
193
|
-
overflow: 'hidden',
|
194
|
-
clip: 'rect(0, 0, 0, 0)',
|
195
|
-
whiteSpace: 'nowrap',
|
196
|
-
borderWidth: '0'
|
197
|
-
} : {}
|
189
|
+
return /*#__PURE__*/_react.default.createElement(_VisuallyHidden.default, {
|
190
|
+
isVisible: showMenu
|
198
191
|
}, loading ? /*#__PURE__*/_react.default.createElement(_.Box, {
|
199
192
|
p: 3,
|
200
193
|
display: "flex",
|
@@ -0,0 +1,10 @@
|
|
1
|
+
import React from 'react';
|
2
|
+
declare const _default: React.FC<import("./_InputField/ToggleInputField").Props> & {
|
3
|
+
Input: React.FC<Omit<React.HTMLProps<HTMLInputElement>, "ref"> & {
|
4
|
+
ref?: React.Ref<HTMLInputElement> | undefined;
|
5
|
+
}>;
|
6
|
+
Caption: React.FC<{}>;
|
7
|
+
Label: React.FC<import("./_InputField/InputFieldLabel").Props>;
|
8
|
+
LeadingVisual: React.FC<{}>;
|
9
|
+
};
|
10
|
+
export default _default;
|
@@ -0,0 +1,73 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
4
|
+
value: true
|
5
|
+
});
|
6
|
+
exports.default = void 0;
|
7
|
+
|
8
|
+
var _react = _interopRequireDefault(require("react"));
|
9
|
+
|
10
|
+
var _ = require(".");
|
11
|
+
|
12
|
+
var _InputField = _interopRequireDefault(require("./_InputField/InputField"));
|
13
|
+
|
14
|
+
var _slots = require("./_InputField/slots");
|
15
|
+
|
16
|
+
var _ToggleInputField = _interopRequireDefault(require("./_InputField/ToggleInputField"));
|
17
|
+
|
18
|
+
var _ToggleInputLeadingVisual = _interopRequireDefault(require("./_InputField/ToggleInputLeadingVisual"));
|
19
|
+
|
20
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
21
|
+
|
22
|
+
function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
23
|
+
|
24
|
+
const Input = ({
|
25
|
+
id: idProp,
|
26
|
+
required: requiredProp,
|
27
|
+
disabled: disabledProp,
|
28
|
+
...rest
|
29
|
+
}) => {
|
30
|
+
if (idProp) {
|
31
|
+
// eslint-disable-next-line no-console
|
32
|
+
console.warn("instead of passing the 'id' prop directly to <TextInputField.Input>, it should be passed to the parent component, <TextInputField>");
|
33
|
+
}
|
34
|
+
|
35
|
+
if (disabledProp) {
|
36
|
+
// eslint-disable-next-line no-console
|
37
|
+
console.warn("instead of passing the 'disabled' prop directly to <TextInputField.Input>, it should be passed to the parent component, <TextInputField>");
|
38
|
+
}
|
39
|
+
|
40
|
+
if (requiredProp) {
|
41
|
+
// eslint-disable-next-line no-console
|
42
|
+
console.warn("instead of passing the 'required' prop directly to <TextInputField.Input>, it should be passed to the parent component, <TextInputField>");
|
43
|
+
}
|
44
|
+
|
45
|
+
return /*#__PURE__*/_react.default.createElement(_slots.Slot, {
|
46
|
+
name: "Input"
|
47
|
+
}, ({
|
48
|
+
disabled,
|
49
|
+
id,
|
50
|
+
required,
|
51
|
+
captionId
|
52
|
+
}) => /*#__PURE__*/_react.default.createElement(_.Checkbox, _extends({
|
53
|
+
"aria-describedby": captionId,
|
54
|
+
id: id,
|
55
|
+
required: required,
|
56
|
+
disabled: disabled
|
57
|
+
}, rest)));
|
58
|
+
};
|
59
|
+
|
60
|
+
Input.displayName = "Input";
|
61
|
+
|
62
|
+
const CheckboxInputField = props => /*#__PURE__*/_react.default.createElement(_ToggleInputField.default, props);
|
63
|
+
|
64
|
+
CheckboxInputField.displayName = "CheckboxInputField";
|
65
|
+
|
66
|
+
var _default = Object.assign(CheckboxInputField, {
|
67
|
+
Input,
|
68
|
+
Caption: _InputField.default.Caption,
|
69
|
+
Label: _InputField.default.Label,
|
70
|
+
LeadingVisual: _ToggleInputLeadingVisual.default
|
71
|
+
});
|
72
|
+
|
73
|
+
exports.default = _default;
|
@@ -0,0 +1,8 @@
|
|
1
|
+
import React from 'react';
|
2
|
+
declare const _default: React.FC<import("./_InputField/ToggleInputField").Props> & {
|
3
|
+
Input: React.FC<React.HTMLProps<HTMLInputElement>>;
|
4
|
+
Caption: React.FC<{}>;
|
5
|
+
Label: React.FC<import("./_InputField/InputFieldLabel").Props>;
|
6
|
+
LeadingVisual: React.FC<{}>;
|
7
|
+
};
|
8
|
+
export default _default;
|
@@ -0,0 +1,82 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
4
|
+
value: true
|
5
|
+
});
|
6
|
+
exports.default = void 0;
|
7
|
+
|
8
|
+
var _react = _interopRequireDefault(require("react"));
|
9
|
+
|
10
|
+
var _InputField = _interopRequireDefault(require("./_InputField/InputField"));
|
11
|
+
|
12
|
+
var _slots = require("./_InputField/slots");
|
13
|
+
|
14
|
+
var _ToggleInputField = _interopRequireDefault(require("./_InputField/ToggleInputField"));
|
15
|
+
|
16
|
+
var _ToggleInputLeadingVisual = _interopRequireDefault(require("./_InputField/ToggleInputLeadingVisual"));
|
17
|
+
|
18
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
19
|
+
|
20
|
+
function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
21
|
+
|
22
|
+
// TODO: use Primer's checkbox input once it's available
|
23
|
+
// https://github.com/github/primer/issues/489
|
24
|
+
const RadioInput = props => {
|
25
|
+
return /*#__PURE__*/_react.default.createElement("input", _extends({
|
26
|
+
type: "radio"
|
27
|
+
}, props));
|
28
|
+
};
|
29
|
+
|
30
|
+
RadioInput.displayName = "RadioInput";
|
31
|
+
|
32
|
+
// pulling out `id`, `disabled`, and `required` because those should come from the parent TextInputField component
|
33
|
+
const Input = ({
|
34
|
+
id: idProp,
|
35
|
+
required: requiredProp,
|
36
|
+
disabled: disabledProp,
|
37
|
+
...rest
|
38
|
+
}) => {
|
39
|
+
if (idProp) {
|
40
|
+
// eslint-disable-next-line no-console
|
41
|
+
console.warn("instead of passing the 'id' prop directly to <TextInputField.Input>, it should be passed to the parent component, <TextInputField>");
|
42
|
+
}
|
43
|
+
|
44
|
+
if (disabledProp) {
|
45
|
+
// eslint-disable-next-line no-console
|
46
|
+
console.warn("instead of passing the 'disabled' prop directly to <TextInputField.Input>, it should be passed to the parent component, <TextInputField>");
|
47
|
+
}
|
48
|
+
|
49
|
+
if (requiredProp) {
|
50
|
+
// eslint-disable-next-line no-console
|
51
|
+
console.warn("instead of passing the 'required' prop directly to <TextInputField.Input>, it should be passed to the parent component, <TextInputField>");
|
52
|
+
}
|
53
|
+
|
54
|
+
return /*#__PURE__*/_react.default.createElement(_slots.Slot, {
|
55
|
+
name: "Input"
|
56
|
+
}, ({
|
57
|
+
disabled,
|
58
|
+
id,
|
59
|
+
required,
|
60
|
+
captionId
|
61
|
+
}) => /*#__PURE__*/_react.default.createElement(RadioInput, _extends({
|
62
|
+
"aria-describedby": captionId,
|
63
|
+
id: id,
|
64
|
+
required: required,
|
65
|
+
disabled: disabled
|
66
|
+
}, rest)));
|
67
|
+
};
|
68
|
+
|
69
|
+
Input.displayName = "Input";
|
70
|
+
|
71
|
+
const RadioInputField = props => /*#__PURE__*/_react.default.createElement(_ToggleInputField.default, props);
|
72
|
+
|
73
|
+
RadioInputField.displayName = "RadioInputField";
|
74
|
+
|
75
|
+
var _default = Object.assign(RadioInputField, {
|
76
|
+
Input,
|
77
|
+
Caption: _InputField.default.Caption,
|
78
|
+
Label: _InputField.default.Label,
|
79
|
+
LeadingVisual: _ToggleInputLeadingVisual.default
|
80
|
+
});
|
81
|
+
|
82
|
+
exports.default = _default;
|