@primer/components 0.0.0-2021113144816 → 0.0.0-2021113204024
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.md +986 -0
- package/dist/browser.esm.js +2227 -2
- package/dist/browser.esm.js.map +1 -1
- package/dist/browser.umd.js +2227 -2
- package/dist/browser.umd.js.map +1 -1
- package/lib/ActionList/Header.js +1 -1
- package/lib/ActionList/Item.js +10 -10
- package/lib/ActionList/List.js +1 -1
- package/lib/ActionList2/Divider.d.ts +2 -3
- package/lib/ActionList2/Divider.js +5 -10
- package/lib/ActionList2/Item.js +6 -22
- package/lib/ActionList2/List.js +2 -12
- package/lib/ActionList2/Selection.js +0 -11
- package/lib/ActionList2/index.d.ts +2 -1
- package/lib/Autocomplete/Autocomplete.d.ts +1 -2
- package/lib/Autocomplete/AutocompleteInput.d.ts +1 -2
- package/lib/Autocomplete/AutocompleteMenu.js +6 -13
- package/lib/Avatar.d.ts +2 -1
- package/lib/Avatar.js +1 -1
- package/lib/BaseStyles.js +20 -2
- package/lib/BorderBox.js +1 -1
- package/lib/Box.js +1 -1
- package/lib/BranchName.d.ts +2 -1
- package/lib/BranchName.js +1 -1
- package/lib/Breadcrumbs.js +3 -3
- package/lib/Button/Button.d.ts +2 -2
- package/lib/Button/Button.js +1 -1
- package/lib/Button/ButtonClose.d.ts +2 -2
- package/lib/Button/ButtonDanger.d.ts +2 -2
- package/lib/Button/ButtonGroup.js +1 -1
- package/lib/Button/ButtonInvisible.d.ts +2 -2
- package/lib/Button/ButtonOutline.d.ts +2 -2
- package/lib/Button/ButtonPrimary.d.ts +2 -2
- package/lib/Checkbox.d.ts +1 -1
- package/lib/Checkbox.js +1 -1
- package/lib/CheckboxInputField.d.ts +11 -0
- package/lib/CheckboxInputField.js +73 -0
- package/lib/ChoiceFieldset/ChoiceFieldCaption.d.ts +3 -0
- package/lib/ChoiceFieldset/ChoiceFieldCaption.js +35 -0
- package/lib/ChoiceFieldset/ChoiceFieldLabel.d.ts +3 -0
- package/lib/ChoiceFieldset/ChoiceFieldLabel.js +35 -0
- package/lib/ChoiceFieldset/ChoiceFieldset.d.ts +65 -0
- package/lib/ChoiceFieldset/ChoiceFieldset.js +95 -0
- package/lib/ChoiceFieldset/ChoiceFieldsetDescription.d.ts +3 -0
- package/lib/ChoiceFieldset/ChoiceFieldsetDescription.js +29 -0
- package/lib/ChoiceFieldset/ChoiceFieldsetLegend.d.ts +9 -0
- package/lib/ChoiceFieldset/ChoiceFieldsetLegend.js +44 -0
- package/lib/ChoiceFieldset/ChoiceFieldsetList.d.ts +9 -0
- package/lib/ChoiceFieldset/ChoiceFieldsetList.js +80 -0
- package/lib/ChoiceFieldset/ChoiceFieldsetListContext.d.ts +19 -0
- package/lib/ChoiceFieldset/ChoiceFieldsetListContext.js +15 -0
- package/lib/ChoiceFieldset/ChoiceFieldsetListItem.d.ts +25 -0
- package/lib/ChoiceFieldset/ChoiceFieldsetListItem.js +75 -0
- package/lib/ChoiceFieldset/ChoiceFieldsetValidation.d.ts +6 -0
- package/lib/ChoiceFieldset/ChoiceFieldsetValidation.js +17 -0
- package/lib/ChoiceFieldset/index.d.ts +3 -0
- package/lib/ChoiceFieldset/index.js +23 -0
- package/lib/CircleOcticon.d.ts +35 -35
- package/lib/Details.d.ts +2 -1
- package/lib/Details.js +4 -2
- package/lib/Dialog.d.ts +37 -37
- package/lib/Dropdown.d.ts +72 -8
- package/lib/DropdownMenu/DropdownButton.d.ts +3 -6
- package/lib/FilterList.d.ts +1 -1
- package/lib/FilteredActionList/FilteredActionList.js +1 -1
- package/lib/Flex.js +1 -1
- package/lib/Heading.d.ts +2 -1
- package/lib/Heading.js +6 -1
- package/lib/LabelGroup.js +1 -1
- package/lib/Overlay.js +1 -1
- package/lib/Pagination/Pagination.js +2 -2
- package/lib/Position.d.ts +4 -4
- package/lib/Position.js +1 -1
- package/lib/ProgressBar.d.ts +11 -16
- package/lib/ProgressBar.js +10 -6
- package/lib/RadioInputField.d.ts +9 -0
- package/lib/RadioInputField.js +82 -0
- package/lib/SelectMenu/SelectMenu.d.ts +10 -11
- package/lib/SelectMenu/SelectMenu.js +1 -1
- package/lib/SelectMenu/SelectMenuFilter.js +1 -1
- package/lib/SelectMenu/SelectMenuFooter.js +1 -1
- package/lib/SelectMenu/SelectMenuItem.d.ts +1 -1
- package/lib/SelectMenu/SelectMenuItem.js +1 -1
- package/lib/SelectMenu/SelectMenuModal.d.ts +1 -1
- package/lib/SelectMenu/SelectMenuTab.js +1 -1
- package/lib/SelectMenu/SelectMenuTabPanel.js +1 -1
- package/lib/SelectMenu/SelectMenuTabs.js +1 -1
- package/lib/Spinner.d.ts +2 -1
- package/lib/Spinner.js +3 -1
- package/lib/StateLabel.js +1 -1
- package/lib/StyledOcticon.js +1 -1
- package/lib/SubNav.js +3 -3
- package/lib/TextInputField.d.ts +581 -0
- package/lib/TextInputField.js +66 -0
- package/lib/TextInputWithTokens.d.ts +1 -2
- package/lib/ThemeProvider.d.ts +0 -1
- package/lib/ThemeProvider.js +4 -17
- package/lib/Timeline.js +4 -4
- package/lib/Token/AvatarToken.d.ts +1 -1
- package/lib/Token/AvatarToken.js +1 -1
- package/lib/Token/IssueLabelToken.d.ts +1 -1
- package/lib/Token/Token.d.ts +1 -1
- package/lib/Token/TokenBase.js +1 -1
- package/lib/Tooltip.js +1 -1
- package/lib/UnderlineNav.js +2 -2
- package/lib/_InputCaption.d.ts +13 -0
- package/lib/_InputCaption.js +27 -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/{ActionList2/MenuContext.js → _InputField/InputFieldValidation.js} +6 -4
- 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/drafts.d.ts +0 -1
- package/lib/drafts.js +0 -13
- package/lib/index.d.ts +4 -0
- package/lib/index.js +38 -0
- package/lib/utils/types/FormValidationStatus.d.ts +1 -0
- package/lib/utils/types/FormValidationStatus.js +1 -0
- package/lib-esm/ActionList/Header.js +1 -1
- package/lib-esm/ActionList/Item.js +10 -10
- package/lib-esm/ActionList/List.js +1 -1
- package/lib-esm/ActionList2/Divider.d.ts +2 -3
- package/lib-esm/ActionList2/Divider.js +5 -8
- package/lib-esm/ActionList2/Item.js +6 -20
- package/lib-esm/ActionList2/List.js +2 -10
- package/lib-esm/ActionList2/Selection.js +0 -9
- package/lib-esm/ActionList2/index.d.ts +2 -1
- package/lib-esm/Autocomplete/Autocomplete.d.ts +1 -2
- package/lib-esm/Autocomplete/AutocompleteInput.d.ts +1 -2
- package/lib-esm/Autocomplete/AutocompleteMenu.js +3 -13
- package/lib-esm/Avatar.d.ts +2 -1
- package/lib-esm/Avatar.js +2 -2
- package/lib-esm/BaseStyles.js +20 -2
- package/lib-esm/BorderBox.js +1 -1
- package/lib-esm/Box.js +1 -1
- package/lib-esm/BranchName.d.ts +2 -1
- package/lib-esm/BranchName.js +2 -2
- package/lib-esm/Breadcrumbs.js +3 -3
- package/lib-esm/Button/Button.d.ts +2 -2
- package/lib-esm/Button/Button.js +1 -1
- package/lib-esm/Button/ButtonClose.d.ts +2 -2
- package/lib-esm/Button/ButtonDanger.d.ts +2 -2
- package/lib-esm/Button/ButtonGroup.js +1 -1
- package/lib-esm/Button/ButtonInvisible.d.ts +2 -2
- package/lib-esm/Button/ButtonOutline.d.ts +2 -2
- package/lib-esm/Button/ButtonPrimary.d.ts +2 -2
- package/lib-esm/Checkbox.d.ts +1 -1
- package/lib-esm/Checkbox.js +1 -1
- package/lib-esm/CheckboxInputField.d.ts +11 -0
- package/lib-esm/CheckboxInputField.js +56 -0
- package/lib-esm/ChoiceFieldset/ChoiceFieldCaption.d.ts +3 -0
- package/lib-esm/ChoiceFieldset/ChoiceFieldCaption.js +20 -0
- package/lib-esm/ChoiceFieldset/ChoiceFieldLabel.d.ts +3 -0
- package/lib-esm/ChoiceFieldset/ChoiceFieldLabel.js +20 -0
- package/lib-esm/ChoiceFieldset/ChoiceFieldset.d.ts +65 -0
- package/lib-esm/ChoiceFieldset/ChoiceFieldset.js +72 -0
- package/lib-esm/ChoiceFieldset/ChoiceFieldsetDescription.d.ts +3 -0
- package/lib-esm/ChoiceFieldset/ChoiceFieldsetDescription.js +17 -0
- package/lib-esm/ChoiceFieldset/ChoiceFieldsetLegend.d.ts +9 -0
- package/lib-esm/ChoiceFieldset/ChoiceFieldsetLegend.js +31 -0
- package/lib-esm/ChoiceFieldset/ChoiceFieldsetList.d.ts +9 -0
- package/lib-esm/ChoiceFieldset/ChoiceFieldsetList.js +63 -0
- package/lib-esm/ChoiceFieldset/ChoiceFieldsetListContext.d.ts +19 -0
- package/lib-esm/ChoiceFieldset/ChoiceFieldsetListContext.js +5 -0
- package/lib-esm/ChoiceFieldset/ChoiceFieldsetListItem.d.ts +25 -0
- package/lib-esm/ChoiceFieldset/ChoiceFieldsetListItem.js +51 -0
- package/lib-esm/ChoiceFieldset/ChoiceFieldsetValidation.d.ts +6 -0
- package/lib-esm/ChoiceFieldset/ChoiceFieldsetValidation.js +7 -0
- package/lib-esm/ChoiceFieldset/index.d.ts +3 -0
- package/lib-esm/ChoiceFieldset/index.js +2 -0
- package/lib-esm/CircleOcticon.d.ts +35 -35
- package/lib-esm/Details.d.ts +2 -1
- package/lib-esm/Details.js +3 -2
- package/lib-esm/Dialog.d.ts +37 -37
- package/lib-esm/Dropdown.d.ts +72 -8
- package/lib-esm/DropdownMenu/DropdownButton.d.ts +3 -6
- package/lib-esm/FilterList.d.ts +1 -1
- package/lib-esm/FilteredActionList/FilteredActionList.js +1 -1
- package/lib-esm/Flex.js +1 -1
- package/lib-esm/Heading.d.ts +2 -1
- package/lib-esm/Heading.js +6 -2
- package/lib-esm/LabelGroup.js +1 -1
- package/lib-esm/Overlay.js +1 -1
- package/lib-esm/Pagination/Pagination.js +2 -2
- package/lib-esm/Position.d.ts +4 -4
- package/lib-esm/Position.js +1 -1
- package/lib-esm/ProgressBar.d.ts +11 -16
- package/lib-esm/ProgressBar.js +11 -7
- package/lib-esm/RadioInputField.d.ts +9 -0
- package/lib-esm/RadioInputField.js +65 -0
- package/lib-esm/SelectMenu/SelectMenu.d.ts +10 -11
- package/lib-esm/SelectMenu/SelectMenu.js +1 -1
- package/lib-esm/SelectMenu/SelectMenuFilter.js +1 -1
- package/lib-esm/SelectMenu/SelectMenuFooter.js +1 -1
- package/lib-esm/SelectMenu/SelectMenuItem.d.ts +1 -1
- package/lib-esm/SelectMenu/SelectMenuItem.js +1 -1
- package/lib-esm/SelectMenu/SelectMenuModal.d.ts +1 -1
- package/lib-esm/SelectMenu/SelectMenuTab.js +1 -1
- package/lib-esm/SelectMenu/SelectMenuTabPanel.js +1 -1
- package/lib-esm/SelectMenu/SelectMenuTabs.js +1 -1
- package/lib-esm/Spinner.d.ts +2 -1
- package/lib-esm/Spinner.js +2 -1
- package/lib-esm/StateLabel.js +1 -1
- package/lib-esm/StyledOcticon.js +1 -1
- package/lib-esm/SubNav.js +3 -3
- package/lib-esm/TextInputField.d.ts +581 -0
- package/lib-esm/TextInputField.js +50 -0
- package/lib-esm/TextInputWithTokens.d.ts +1 -2
- package/lib-esm/ThemeProvider.d.ts +0 -1
- package/lib-esm/ThemeProvider.js +4 -17
- package/lib-esm/Timeline.js +4 -4
- package/lib-esm/Token/AvatarToken.d.ts +1 -1
- package/lib-esm/Token/AvatarToken.js +1 -1
- package/lib-esm/Token/IssueLabelToken.d.ts +1 -1
- package/lib-esm/Token/Token.d.ts +1 -1
- package/lib-esm/Token/TokenBase.js +1 -1
- package/lib-esm/Tooltip.js +1 -1
- package/lib-esm/UnderlineNav.js +2 -2
- package/lib-esm/_InputCaption.d.ts +13 -0
- package/lib-esm/_InputCaption.js +16 -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/drafts.d.ts +0 -1
- package/lib-esm/drafts.js +1 -2
- package/lib-esm/index.d.ts +4 -0
- package/lib-esm/index.js +4 -0
- package/lib-esm/utils/types/FormValidationStatus.d.ts +1 -0
- package/lib-esm/utils/types/FormValidationStatus.js +1 -0
- package/package.json +9 -17
- package/lib/ActionList2/MenuContext.d.ts +0 -10
- package/lib/ActionMenu2.d.ts +0 -313
- package/lib/ActionMenu2.js +0 -91
- package/lib-esm/ActionList2/MenuContext.d.ts +0 -10
- package/lib-esm/ActionList2/MenuContext.js +0 -3
- package/lib-esm/ActionMenu2.d.ts +0 -313
- package/lib-esm/ActionMenu2.js +0 -67
@@ -6,7 +6,6 @@ declare const ButtonInvisible: import("styled-components").StyledComponent<"butt
|
|
6
6
|
variant?: "small" | "medium" | "large" | undefined;
|
7
7
|
} & {
|
8
8
|
color?: string | undefined;
|
9
|
-
property?: string | undefined;
|
10
9
|
translate?: "yes" | "no" | undefined;
|
11
10
|
hidden?: boolean | undefined;
|
12
11
|
children?: import("react").ReactNode;
|
@@ -41,6 +40,7 @@ declare const ButtonInvisible: import("styled-components").StyledComponent<"butt
|
|
41
40
|
datatype?: string | undefined;
|
42
41
|
inlist?: any;
|
43
42
|
prefix?: string | undefined;
|
43
|
+
property?: string | undefined;
|
44
44
|
resource?: string | undefined;
|
45
45
|
typeof?: string | undefined;
|
46
46
|
vocab?: string | undefined;
|
@@ -269,8 +269,8 @@ declare const ButtonInvisible: import("styled-components").StyledComponent<"butt
|
|
269
269
|
onTransitionEnd?: import("react").TransitionEventHandler<HTMLButtonElement> | undefined;
|
270
270
|
onTransitionEndCapture?: import("react").TransitionEventHandler<HTMLButtonElement> | undefined;
|
271
271
|
css?: import("@emotion/core").InterpolationWithTheme<any>;
|
272
|
-
disabled?: boolean | undefined;
|
273
272
|
as?: string | import("react").ComponentClass<any, any> | import("react").FunctionComponent<any> | undefined;
|
273
|
+
disabled?: boolean | undefined;
|
274
274
|
autoFocus?: boolean | undefined;
|
275
275
|
formAction?: string | undefined;
|
276
276
|
formEncType?: string | undefined;
|
@@ -6,7 +6,6 @@ declare const ButtonOutline: import("styled-components").StyledComponent<"button
|
|
6
6
|
variant?: "small" | "medium" | "large" | undefined;
|
7
7
|
} & {
|
8
8
|
color?: string | undefined;
|
9
|
-
property?: string | undefined;
|
10
9
|
translate?: "yes" | "no" | undefined;
|
11
10
|
hidden?: boolean | undefined;
|
12
11
|
children?: import("react").ReactNode;
|
@@ -41,6 +40,7 @@ declare const ButtonOutline: import("styled-components").StyledComponent<"button
|
|
41
40
|
datatype?: string | undefined;
|
42
41
|
inlist?: any;
|
43
42
|
prefix?: string | undefined;
|
43
|
+
property?: string | undefined;
|
44
44
|
resource?: string | undefined;
|
45
45
|
typeof?: string | undefined;
|
46
46
|
vocab?: string | undefined;
|
@@ -269,8 +269,8 @@ declare const ButtonOutline: import("styled-components").StyledComponent<"button
|
|
269
269
|
onTransitionEnd?: import("react").TransitionEventHandler<HTMLButtonElement> | undefined;
|
270
270
|
onTransitionEndCapture?: import("react").TransitionEventHandler<HTMLButtonElement> | undefined;
|
271
271
|
css?: import("@emotion/core").InterpolationWithTheme<any>;
|
272
|
-
disabled?: boolean | undefined;
|
273
272
|
as?: string | import("react").ComponentClass<any, any> | import("react").FunctionComponent<any> | undefined;
|
273
|
+
disabled?: boolean | undefined;
|
274
274
|
autoFocus?: boolean | undefined;
|
275
275
|
formAction?: string | undefined;
|
276
276
|
formEncType?: string | undefined;
|
@@ -6,7 +6,6 @@ export declare const ButtonPrimary: import("styled-components").StyledComponent<
|
|
6
6
|
variant?: "small" | "medium" | "large" | undefined;
|
7
7
|
} & {
|
8
8
|
color?: string | undefined;
|
9
|
-
property?: string | undefined;
|
10
9
|
translate?: "yes" | "no" | undefined;
|
11
10
|
hidden?: boolean | undefined;
|
12
11
|
children?: import("react").ReactNode;
|
@@ -41,6 +40,7 @@ export declare const ButtonPrimary: import("styled-components").StyledComponent<
|
|
41
40
|
datatype?: string | undefined;
|
42
41
|
inlist?: any;
|
43
42
|
prefix?: string | undefined;
|
43
|
+
property?: string | undefined;
|
44
44
|
resource?: string | undefined;
|
45
45
|
typeof?: string | undefined;
|
46
46
|
vocab?: string | undefined;
|
@@ -269,8 +269,8 @@ export declare const ButtonPrimary: import("styled-components").StyledComponent<
|
|
269
269
|
onTransitionEnd?: import("react").TransitionEventHandler<HTMLButtonElement> | undefined;
|
270
270
|
onTransitionEndCapture?: import("react").TransitionEventHandler<HTMLButtonElement> | undefined;
|
271
271
|
css?: import("@emotion/core").InterpolationWithTheme<any>;
|
272
|
-
disabled?: boolean | undefined;
|
273
272
|
as?: string | import("react").ComponentClass<any, any> | import("react").FunctionComponent<any> | undefined;
|
273
|
+
disabled?: boolean | undefined;
|
274
274
|
autoFocus?: boolean | undefined;
|
275
275
|
formAction?: string | undefined;
|
276
276
|
formEncType?: string | undefined;
|
package/lib/Checkbox.d.ts
CHANGED
@@ -25,5 +25,5 @@ export declare type CheckboxProps = {
|
|
25
25
|
/**
|
26
26
|
* An accessible, native checkbox component
|
27
27
|
*/
|
28
|
-
declare const Checkbox: React.ForwardRefExoticComponent<Pick<CheckboxProps, "sx" | keyof React.InputHTMLAttributes<HTMLInputElement> | "
|
28
|
+
declare const Checkbox: React.ForwardRefExoticComponent<Pick<CheckboxProps, "sx" | keyof React.InputHTMLAttributes<HTMLInputElement> | "validationStatus" | "indeterminate"> & React.RefAttributes<HTMLInputElement>>;
|
29
29
|
export default Checkbox;
|
package/lib/Checkbox.js
CHANGED
@@ -23,7 +23,7 @@ function _extends() { _extends = Object.assign || function (target) { for (var i
|
|
23
23
|
|
24
24
|
const StyledCheckbox = _styledComponents.default.input.withConfig({
|
25
25
|
displayName: "Checkbox__StyledCheckbox",
|
26
|
-
componentId: "
|
26
|
+
componentId: "i51804-0"
|
27
27
|
})(["cursor:pointer;", " ", ""], props => props.disabled && `cursor: not-allowed;`, _sx.default);
|
28
28
|
/**
|
29
29
|
* An accessible, native checkbox component
|
@@ -0,0 +1,11 @@
|
|
1
|
+
import React from 'react';
|
2
|
+
import { ToggleInputFieldProps } from './_InputField/ToggleInputField';
|
3
|
+
declare const _default: React.FC<ToggleInputFieldProps> & {
|
4
|
+
Input: React.FC<React.HTMLProps<HTMLInputElement> & {
|
5
|
+
ref?: React.Ref<HTMLInputElement> | undefined;
|
6
|
+
}>;
|
7
|
+
Caption: React.FC<{}>;
|
8
|
+
Label: React.FC<import("./_InputField/InputFieldLabel").Props>;
|
9
|
+
LeadingVisual: React.FC<{}>;
|
10
|
+
};
|
11
|
+
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,35 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
4
|
+
value: true
|
5
|
+
});
|
6
|
+
exports.default = void 0;
|
7
|
+
|
8
|
+
var _react = _interopRequireWildcard(require("react"));
|
9
|
+
|
10
|
+
var _ChoiceFieldsetListContext = _interopRequireDefault(require("./ChoiceFieldsetListContext"));
|
11
|
+
|
12
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
13
|
+
|
14
|
+
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); }
|
15
|
+
|
16
|
+
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; }
|
17
|
+
|
18
|
+
const ChoiceFieldCaption = ({
|
19
|
+
children
|
20
|
+
}) => {
|
21
|
+
const choiceFieldsetListContext = (0, _react.useContext)(_ChoiceFieldsetListContext.default);
|
22
|
+
|
23
|
+
if (choiceFieldsetListContext === null) {
|
24
|
+
throw new Error('ChoiceFieldsetListContext returned null');
|
25
|
+
}
|
26
|
+
|
27
|
+
const {
|
28
|
+
fieldComponent: FieldComponent
|
29
|
+
} = choiceFieldsetListContext;
|
30
|
+
return /*#__PURE__*/_react.default.createElement(FieldComponent.Caption, null, children);
|
31
|
+
};
|
32
|
+
|
33
|
+
ChoiceFieldCaption.displayName = "ChoiceFieldCaption";
|
34
|
+
var _default = ChoiceFieldCaption;
|
35
|
+
exports.default = _default;
|
@@ -0,0 +1,35 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
4
|
+
value: true
|
5
|
+
});
|
6
|
+
exports.default = void 0;
|
7
|
+
|
8
|
+
var _react = _interopRequireWildcard(require("react"));
|
9
|
+
|
10
|
+
var _ChoiceFieldsetListContext = _interopRequireDefault(require("./ChoiceFieldsetListContext"));
|
11
|
+
|
12
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
13
|
+
|
14
|
+
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); }
|
15
|
+
|
16
|
+
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; }
|
17
|
+
|
18
|
+
const ChoiceFieldLabel = ({
|
19
|
+
children
|
20
|
+
}) => {
|
21
|
+
const choiceFieldsetListContext = (0, _react.useContext)(_ChoiceFieldsetListContext.default);
|
22
|
+
|
23
|
+
if (choiceFieldsetListContext === null) {
|
24
|
+
throw new Error('ChoiceFieldsetListContext returned null');
|
25
|
+
}
|
26
|
+
|
27
|
+
const {
|
28
|
+
fieldComponent: FieldComponent
|
29
|
+
} = choiceFieldsetListContext;
|
30
|
+
return /*#__PURE__*/_react.default.createElement(FieldComponent.Label, null, children);
|
31
|
+
};
|
32
|
+
|
33
|
+
ChoiceFieldLabel.displayName = "ChoiceFieldLabel";
|
34
|
+
var _default = ChoiceFieldLabel;
|
35
|
+
exports.default = _default;
|
@@ -0,0 +1,65 @@
|
|
1
|
+
import React, { ComponentProps } from 'react';
|
2
|
+
import { FormValidationStatus } from '../utils/types/FormValidationStatus';
|
3
|
+
export interface ChoiceFieldsetProps<T = Record<string, FormValidationStatus>> {
|
4
|
+
children?: React.ReactNode;
|
5
|
+
/**
|
6
|
+
* Whether the fieldset is NOT ready for user input
|
7
|
+
*/
|
8
|
+
disabled?: boolean;
|
9
|
+
/**
|
10
|
+
* The unique identifier for this fieldset. Used to associate the validation text with the fieldset
|
11
|
+
* If an ID is not passed, one will be automatically generated
|
12
|
+
*/
|
13
|
+
id?: string;
|
14
|
+
/**
|
15
|
+
* The unique identifier used to associate radio inputs with eachother
|
16
|
+
* If a name is not passed and the fieldset renders radio inputs, a name will be automatically generated
|
17
|
+
*/
|
18
|
+
name?: string;
|
19
|
+
/**
|
20
|
+
* The callback that is called when a user toggles a choice on or off
|
21
|
+
*/
|
22
|
+
onSelect?: (selectedValues: string[]) => void;
|
23
|
+
/**
|
24
|
+
* Whether this field must have a value for the user to complete their task
|
25
|
+
*/
|
26
|
+
required?: boolean;
|
27
|
+
/**
|
28
|
+
* The selected values
|
29
|
+
*/
|
30
|
+
selected?: string[];
|
31
|
+
/**
|
32
|
+
* A map of validation statuses and their associated validation keys. When one of the validation keys is passed to the `validationResult` prop,
|
33
|
+
* the associated validation message will be rendered in the correct style
|
34
|
+
*/
|
35
|
+
validationMap?: T;
|
36
|
+
/**
|
37
|
+
* The key of the validation message to show
|
38
|
+
*/
|
39
|
+
validationResult?: keyof T;
|
40
|
+
}
|
41
|
+
export interface ChoiceFieldsetContext extends ChoiceFieldsetProps {
|
42
|
+
validationMessageId: string;
|
43
|
+
}
|
44
|
+
declare const Slot: React.FC<{
|
45
|
+
name: "Description" | "ChoiceList" | "Legend" | "Validation";
|
46
|
+
children: React.ReactNode;
|
47
|
+
}>;
|
48
|
+
export { Slot };
|
49
|
+
declare const ChoiceFieldset: <T extends Record<string, FormValidationStatus>>({ children, disabled, id, name, onSelect, required, selected, validationMap, validationResult }: ChoiceFieldsetProps<T>) => JSX.Element;
|
50
|
+
export declare type InputFieldComponentProps = ComponentProps<typeof ChoiceFieldset>;
|
51
|
+
export type { ChoiceFieldsetListProps } from './ChoiceFieldsetList';
|
52
|
+
export type { ChoiceFieldsetLegendProps } from './ChoiceFieldsetLegend';
|
53
|
+
export type { ChoiceFieldProps } from './ChoiceFieldsetListItem';
|
54
|
+
declare const _default: (<T extends Record<string, FormValidationStatus>>({ children, disabled, id, name, onSelect, required, selected, validationMap, validationResult }: ChoiceFieldsetProps<T>) => JSX.Element) & {
|
55
|
+
Description: React.FC<{}>;
|
56
|
+
Item: React.FC<import("./ChoiceFieldsetListItem").ChoiceFieldProps> & {
|
57
|
+
Caption: React.FC<{}>;
|
58
|
+
Label: React.FC<{}>;
|
59
|
+
LeadingVisual: React.FC<{}>;
|
60
|
+
};
|
61
|
+
Legend: React.FC<import("./ChoiceFieldsetLegend").ChoiceFieldsetLegendProps>;
|
62
|
+
List: React.FC<import("./ChoiceFieldsetList").ChoiceFieldsetListProps>;
|
63
|
+
Validation: React.FC<import("./ChoiceFieldsetValidation").ChoiceFieldsetValidationProps>;
|
64
|
+
};
|
65
|
+
export default _default;
|
@@ -0,0 +1,95 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
4
|
+
value: true
|
5
|
+
});
|
6
|
+
exports.default = exports.Slot = void 0;
|
7
|
+
|
8
|
+
var _react = _interopRequireDefault(require("react"));
|
9
|
+
|
10
|
+
var _ = require("..");
|
11
|
+
|
12
|
+
var _createSlots = _interopRequireDefault(require("../utils/create-slots"));
|
13
|
+
|
14
|
+
var _uniqueId = require("../utils/uniqueId");
|
15
|
+
|
16
|
+
var _ValidationAnimationContainer = _interopRequireDefault(require("../_InputField/ValidationAnimationContainer"));
|
17
|
+
|
18
|
+
var _InputValidation = _interopRequireDefault(require("../_InputValidation"));
|
19
|
+
|
20
|
+
var _ChoiceFieldsetListItem = _interopRequireDefault(require("./ChoiceFieldsetListItem"));
|
21
|
+
|
22
|
+
var _ChoiceFieldsetDescription = _interopRequireDefault(require("./ChoiceFieldsetDescription"));
|
23
|
+
|
24
|
+
var _ChoiceFieldsetLegend = _interopRequireDefault(require("./ChoiceFieldsetLegend"));
|
25
|
+
|
26
|
+
var _ChoiceFieldsetList = _interopRequireDefault(require("./ChoiceFieldsetList"));
|
27
|
+
|
28
|
+
var _ChoiceFieldsetValidation = _interopRequireDefault(require("./ChoiceFieldsetValidation"));
|
29
|
+
|
30
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
31
|
+
|
32
|
+
const {
|
33
|
+
Slots,
|
34
|
+
Slot
|
35
|
+
} = (0, _createSlots.default)(['Description', 'ChoiceList', 'Legend', 'Validation']);
|
36
|
+
exports.Slot = Slot;
|
37
|
+
|
38
|
+
const ChoiceFieldset = ({
|
39
|
+
children,
|
40
|
+
disabled,
|
41
|
+
id,
|
42
|
+
name,
|
43
|
+
onSelect,
|
44
|
+
required,
|
45
|
+
selected,
|
46
|
+
validationMap,
|
47
|
+
validationResult
|
48
|
+
}) => {
|
49
|
+
var _React$Children$map;
|
50
|
+
|
51
|
+
const fieldsetId = id || (0, _uniqueId.uniqueId)();
|
52
|
+
const validationChildren = (_React$Children$map = _react.default.Children.map(children, child => /*#__PURE__*/_react.default.isValidElement(child) && child.type === _ChoiceFieldsetValidation.default ? child : null)) === null || _React$Children$map === void 0 ? void 0 : _React$Children$map.filter(Boolean);
|
53
|
+
const validationChildToRender = validationChildren === null || validationChildren === void 0 ? void 0 : validationChildren.find(child => child.props.validationKey === validationResult);
|
54
|
+
const validationMessageId = validationChildToRender ? `${fieldsetId}-validationMsg` : undefined;
|
55
|
+
return /*#__PURE__*/_react.default.createElement(Slots, {
|
56
|
+
context: {
|
57
|
+
disabled,
|
58
|
+
name,
|
59
|
+
onSelect,
|
60
|
+
required,
|
61
|
+
selected,
|
62
|
+
validationMessageId
|
63
|
+
}
|
64
|
+
}, slots => {
|
65
|
+
const isLegendVisible = /*#__PURE__*/_react.default.isValidElement(slots.Legend) && slots.Legend.props.isVisible;
|
66
|
+
return /*#__PURE__*/_react.default.createElement("div", null, /*#__PURE__*/_react.default.createElement(_.Box, {
|
67
|
+
as: "fieldset",
|
68
|
+
border: "none",
|
69
|
+
margin: 0,
|
70
|
+
padding: 0,
|
71
|
+
"aria-describedby": [validationMessageId].filter(Boolean).join(' ')
|
72
|
+
}, _react.default.Children.toArray(children).filter(child => /*#__PURE__*/_react.default.isValidElement(child) && child.type !== _ChoiceFieldsetValidation.default), /*#__PURE__*/_react.default.createElement(_.Box, {
|
73
|
+
mb: isLegendVisible ? 3 : undefined
|
74
|
+
}, slots.Legend, slots.Description), slots.ChoiceList), validationChildToRender && /*#__PURE__*/_react.default.createElement(_.Box, {
|
75
|
+
mt: 3
|
76
|
+
}, validationMap && validationResult && validationMessageId && /*#__PURE__*/_react.default.createElement(_ValidationAnimationContainer.default, {
|
77
|
+
show: true
|
78
|
+
}, /*#__PURE__*/_react.default.createElement(_InputValidation.default, {
|
79
|
+
validationStatus: validationMap[validationResult],
|
80
|
+
id: validationMessageId
|
81
|
+
}, validationChildToRender))));
|
82
|
+
});
|
83
|
+
};
|
84
|
+
|
85
|
+
ChoiceFieldset.displayName = "ChoiceFieldset";
|
86
|
+
|
87
|
+
var _default = Object.assign(ChoiceFieldset, {
|
88
|
+
Description: _ChoiceFieldsetDescription.default,
|
89
|
+
Item: _ChoiceFieldsetListItem.default,
|
90
|
+
Legend: _ChoiceFieldsetLegend.default,
|
91
|
+
List: _ChoiceFieldsetList.default,
|
92
|
+
Validation: _ChoiceFieldsetValidation.default
|
93
|
+
});
|
94
|
+
|
95
|
+
exports.default = _default;
|
@@ -0,0 +1,29 @@
|
|
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 _ChoiceFieldset = require("./ChoiceFieldset");
|
13
|
+
|
14
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
15
|
+
|
16
|
+
const ChoiceFieldsetDescription = ({
|
17
|
+
children
|
18
|
+
}) => /*#__PURE__*/_react.default.createElement(_ChoiceFieldset.Slot, {
|
19
|
+
name: "Description"
|
20
|
+
}, ({
|
21
|
+
disabled
|
22
|
+
}) => /*#__PURE__*/_react.default.createElement(_.Text, {
|
23
|
+
color: disabled ? 'fg.muted' : 'fg.default',
|
24
|
+
fontSize: 1
|
25
|
+
}, children));
|
26
|
+
|
27
|
+
ChoiceFieldsetDescription.displayName = "ChoiceFieldsetDescription";
|
28
|
+
var _default = ChoiceFieldsetDescription;
|
29
|
+
exports.default = _default;
|
@@ -0,0 +1,9 @@
|
|
1
|
+
import React from 'react';
|
2
|
+
export interface ChoiceFieldsetLegendProps {
|
3
|
+
/**
|
4
|
+
* Whether to visually hide the fieldset legend
|
5
|
+
*/
|
6
|
+
visuallyHidden?: boolean;
|
7
|
+
}
|
8
|
+
declare const ChoiceFieldsetLegend: React.FC<ChoiceFieldsetLegendProps>;
|
9
|
+
export default ChoiceFieldsetLegend;
|
@@ -0,0 +1,44 @@
|
|
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 _VisuallyHidden = _interopRequireDefault(require("../_VisuallyHidden"));
|
13
|
+
|
14
|
+
var _ChoiceFieldset = require("./ChoiceFieldset");
|
15
|
+
|
16
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
17
|
+
|
18
|
+
const ChoiceFieldsetLegend = ({
|
19
|
+
children,
|
20
|
+
visuallyHidden
|
21
|
+
}) => /*#__PURE__*/_react.default.createElement(_ChoiceFieldset.Slot, {
|
22
|
+
name: "Legend"
|
23
|
+
}, ({
|
24
|
+
required,
|
25
|
+
disabled
|
26
|
+
}) => /*#__PURE__*/_react.default.createElement(_VisuallyHidden.default, {
|
27
|
+
as: "legend",
|
28
|
+
isVisible: !visuallyHidden,
|
29
|
+
title: required ? 'required field' : undefined,
|
30
|
+
sx: {
|
31
|
+
color: disabled ? 'fg.muted' : undefined,
|
32
|
+
fontSize: 2,
|
33
|
+
padding: 0
|
34
|
+
}
|
35
|
+
}, required ? /*#__PURE__*/_react.default.createElement(_.Box, {
|
36
|
+
display: "flex",
|
37
|
+
as: "span"
|
38
|
+
}, /*#__PURE__*/_react.default.createElement(_.Box, {
|
39
|
+
mr: 1
|
40
|
+
}, children), /*#__PURE__*/_react.default.createElement("span", null, "*")) : children));
|
41
|
+
|
42
|
+
ChoiceFieldsetLegend.displayName = "ChoiceFieldsetLegend";
|
43
|
+
var _default = ChoiceFieldsetLegend;
|
44
|
+
exports.default = _default;
|
@@ -0,0 +1,9 @@
|
|
1
|
+
import React from 'react';
|
2
|
+
export interface ChoiceFieldsetListProps {
|
3
|
+
/**
|
4
|
+
* Whether multiple items or a single item can be selected
|
5
|
+
*/
|
6
|
+
selectionVariant?: 'single' | 'multiple';
|
7
|
+
}
|
8
|
+
declare const ChoiceFieldsetList: React.FC<ChoiceFieldsetListProps>;
|
9
|
+
export default ChoiceFieldsetList;
|
@@ -0,0 +1,80 @@
|
|
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 _styledComponents = _interopRequireDefault(require("styled-components"));
|
11
|
+
|
12
|
+
var _ = require("..");
|
13
|
+
|
14
|
+
var _constants = require("../constants");
|
15
|
+
|
16
|
+
var _uniqueId = require("../utils/uniqueId");
|
17
|
+
|
18
|
+
var _ChoiceFieldset = require("./ChoiceFieldset");
|
19
|
+
|
20
|
+
var _ChoiceFieldsetListContext = _interopRequireDefault(require("./ChoiceFieldsetListContext"));
|
21
|
+
|
22
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
23
|
+
|
24
|
+
const List = _styledComponents.default.ul.withConfig({
|
25
|
+
displayName: "ChoiceFieldsetList__List",
|
26
|
+
componentId: "sc-16da7ba-0"
|
27
|
+
})(["display:flex;flex-direction:column;list-style:none;margin:0;padding:0;> li + li{margin-top:", ";}"], (0, _constants.get)('space.2'));
|
28
|
+
|
29
|
+
const ChoiceFieldsetList = ({
|
30
|
+
selectionVariant,
|
31
|
+
children
|
32
|
+
}) => {
|
33
|
+
// generates a name to pass to radio inputs if one was not passed in ChoiceFieldset props
|
34
|
+
const getRadioGroupName = nameFromContext => {
|
35
|
+
if (nameFromContext || selectionVariant === 'multiple') {
|
36
|
+
return nameFromContext;
|
37
|
+
}
|
38
|
+
|
39
|
+
return (0, _uniqueId.uniqueId)();
|
40
|
+
};
|
41
|
+
|
42
|
+
return /*#__PURE__*/_react.default.createElement(_ChoiceFieldset.Slot, {
|
43
|
+
name: "ChoiceList"
|
44
|
+
}, ({
|
45
|
+
name,
|
46
|
+
onSelect,
|
47
|
+
disabled,
|
48
|
+
selected = []
|
49
|
+
}) => {
|
50
|
+
const getSelectedCheckboxes = (value, checked) => {
|
51
|
+
if (checked) {
|
52
|
+
return selectionVariant === 'multiple' ? [...selected, value] : [value];
|
53
|
+
}
|
54
|
+
|
55
|
+
return selected.filter(selectedValue => selectedValue !== value);
|
56
|
+
};
|
57
|
+
|
58
|
+
return /*#__PURE__*/_react.default.createElement(_ChoiceFieldsetListContext.default.Provider, {
|
59
|
+
value: {
|
60
|
+
disabled,
|
61
|
+
selected,
|
62
|
+
name: getRadioGroupName(name),
|
63
|
+
fieldComponent: selectionVariant === 'multiple' ? _.CheckboxInputField : _.RadioInputField,
|
64
|
+
onChange: e => {
|
65
|
+
onSelect && onSelect(getSelectedCheckboxes(e.currentTarget.value, e.currentTarget.checked));
|
66
|
+
},
|
67
|
+
selectionVariant
|
68
|
+
}
|
69
|
+
}, /*#__PURE__*/_react.default.createElement(List, null, _react.default.Children.map(children, (child, i) => /*#__PURE__*/_react.default.createElement("li", {
|
70
|
+
key: i
|
71
|
+
}, child))));
|
72
|
+
});
|
73
|
+
};
|
74
|
+
|
75
|
+
ChoiceFieldsetList.displayName = "ChoiceFieldsetList";
|
76
|
+
ChoiceFieldsetList.defaultProps = {
|
77
|
+
selectionVariant: 'single'
|
78
|
+
};
|
79
|
+
var _default = ChoiceFieldsetList;
|
80
|
+
exports.default = _default;
|
@@ -0,0 +1,19 @@
|
|
1
|
+
import { ChangeEventHandler } from 'react';
|
2
|
+
import { CheckboxInputField, RadioInputField } from '..';
|
3
|
+
import { ComponentProps } from '../utils/types';
|
4
|
+
import InputField from '../_InputField';
|
5
|
+
import ToggleInputField, { ToggleInputFieldProps } from '../_InputField/ToggleInputField';
|
6
|
+
declare const ChoiceFieldsetListContext: import("react").Context<{
|
7
|
+
disabled?: boolean | undefined;
|
8
|
+
name?: string | undefined;
|
9
|
+
onChange: ChangeEventHandler<HTMLInputElement>;
|
10
|
+
fieldComponent: React.FC<ToggleInputFieldProps> & {
|
11
|
+
Input: React.FC<ComponentProps<typeof RadioInputField.Input>> | React.FC<ComponentProps<typeof CheckboxInputField.Input>>;
|
12
|
+
Caption: React.FC<ComponentProps<typeof InputField.Caption>>;
|
13
|
+
Label: React.FC<ComponentProps<typeof InputField.Label>>;
|
14
|
+
LeadingVisual: React.FC<ComponentProps<typeof ToggleInputField.LeadingVisual>>;
|
15
|
+
};
|
16
|
+
selected?: string[] | undefined;
|
17
|
+
selectionVariant?: "single" | "multiple" | undefined;
|
18
|
+
} | null>;
|
19
|
+
export default ChoiceFieldsetListContext;
|
@@ -0,0 +1,15 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
4
|
+
value: true
|
5
|
+
});
|
6
|
+
exports.default = void 0;
|
7
|
+
|
8
|
+
var _react = require("react");
|
9
|
+
|
10
|
+
var _ = require("..");
|
11
|
+
|
12
|
+
const ChoiceFieldsetListContext = /*#__PURE__*/(0, _react.createContext)(null);
|
13
|
+
_.CheckboxInputField.Input;
|
14
|
+
var _default = ChoiceFieldsetListContext;
|
15
|
+
exports.default = _default;
|