@recursica/mui-adapter 0.6.0 → 0.7.0
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/ARCHITECTURE.md +15 -0
- package/CHANGELOG.md +6 -0
- package/SETUP.md +77 -0
- package/USAGE.md +55 -0
- package/dist/mui-adapter.cjs +26 -26
- package/dist/mui-adapter.cjs.map +1 -1
- package/dist/mui-adapter.css +1 -1
- package/dist/mui-adapter.js +3721 -3511
- package/dist/mui-adapter.js.map +1 -1
- package/dist/src/components/Accordion/Accordion.d.ts +9 -29
- package/dist/src/components/AssistiveElement/AssistiveElement.d.ts +2 -5
- package/dist/src/components/Autocomplete/Autocomplete.d.ts +4 -8
- package/dist/src/components/Avatar/Avatar.d.ts +1 -6
- package/dist/src/components/Badge/Badge.d.ts +1 -4
- package/dist/src/components/Breadcrumb/Breadcrumb.d.ts +2 -3
- package/dist/src/components/Button/Button.d.ts +2 -17
- package/dist/src/components/Card/Card.d.ts +2 -4
- package/dist/src/components/Checkbox/Checkbox.d.ts +4 -6
- package/dist/src/components/Checkbox/CheckboxGroup.d.ts +8 -6
- package/dist/src/components/Chip/Chip.d.ts +2 -11
- package/dist/src/components/Container/Container.d.ts +1 -5
- package/dist/src/components/DatePicker/DatePicker.d.ts +2 -1
- package/dist/src/components/Dropdown/Dropdown.d.ts +4 -14
- package/dist/src/components/Flex/Flex.d.ts +2 -22
- package/dist/src/components/FormControlLayout/FormControlLayout.d.ts +2 -7
- package/dist/src/components/FormControlWrapper/FormControlWrapper.d.ts +3 -18
- package/dist/src/components/Group/Group.d.ts +2 -7
- package/dist/src/components/HoverCard/HoverCard.d.ts +13 -39
- package/dist/src/components/Label/Label.d.ts +2 -9
- package/dist/src/components/Link/Link.d.ts +2 -6
- package/dist/src/components/Loader/Loader.d.ts +2 -7
- package/dist/src/components/Menu/Menu.d.ts +24 -98
- package/dist/src/components/Modal/Modal.d.ts +32 -31
- package/dist/src/components/NumberInput/NumberInput.d.ts +3 -5
- package/dist/src/components/Pagination/Pagination.d.ts +8 -41
- package/dist/src/components/Panel/Panel.d.ts +5 -18
- package/dist/src/components/Radio/Radio.d.ts +4 -4
- package/dist/src/components/Radio/RadioGroup.d.ts +3 -7
- package/dist/src/components/ReadOnlyField/ReadOnlyField.d.ts +2 -5
- package/dist/src/components/SegmentedControl/SegmentedControl.d.ts +5 -15
- package/dist/src/components/Slider/Slider.d.ts +4 -14
- package/dist/src/components/Stack/Stack.d.ts +2 -5
- package/dist/src/components/Stepper/Stepper.d.ts +36 -16
- package/dist/src/components/Switch/Switch.d.ts +4 -4
- package/dist/src/components/Switch/SwitchGroup.d.ts +4 -4
- package/dist/src/components/Table/Table.d.ts +2 -1
- package/dist/src/components/Tabs/Tabs.d.ts +11 -26
- package/dist/src/components/Text/Text.d.ts +2 -16
- package/dist/src/components/TextArea/TextArea.d.ts +3 -9
- package/dist/src/components/TextField/TextField.d.ts +3 -7
- package/dist/src/components/TimePicker/TimePicker.d.ts +2 -1
- package/dist/src/components/Timeline/Timeline.d.ts +2 -1
- package/dist/src/components/Timeline/TimelineItem.d.ts +2 -13
- package/dist/src/components/Title/Title.d.ts +2 -15
- package/dist/src/components/Toast/Toast.d.ts +11 -16
- package/dist/src/components/Tooltip/Tooltip.d.ts +7 -21
- package/dist/src/components/TransferList/TransferList.d.ts +2 -1
- package/dist/src/components/Typography/Typography.d.ts +1 -1
- package/dist/src/utils/RequireAccessibleLabel.d.ts +1 -18
- package/dist/src/utils/filterStylingProps.d.ts +1 -11
- package/llms.txt +16 -0
- package/package.json +6 -2
- package/src/components/Accordion/Accordion.module.css +1 -2
- package/src/components/Accordion/Accordion.stories.tsx +0 -18
- package/src/components/Accordion/Accordion.tsx +19 -23
- package/src/components/AssistiveElement/AssistiveElement.module.css +32 -29
- package/src/components/AssistiveElement/AssistiveElement.stories.tsx +10 -27
- package/src/components/AssistiveElement/AssistiveElement.tsx +11 -15
- package/src/components/Autocomplete/Autocomplete.module.css +17 -18
- package/src/components/Autocomplete/Autocomplete.stories.tsx +7 -16
- package/src/components/Autocomplete/Autocomplete.tsx +27 -45
- package/src/components/Avatar/Avatar.tsx +2 -13
- package/src/components/Badge/Badge.tsx +2 -5
- package/src/components/Breadcrumb/Breadcrumb.tsx +1 -4
- package/src/components/Button/Button.module.css +19 -61
- package/src/components/Button/Button.stories.tsx +24 -23
- package/src/components/Button/Button.tsx +7 -18
- package/src/components/Card/Card.module.css +36 -0
- package/src/components/Card/Card.tsx +6 -4
- package/src/components/Checkbox/Checkbox.module.css +27 -10
- package/src/components/Checkbox/Checkbox.tsx +124 -24
- package/src/components/Checkbox/CheckboxGroup.stories.tsx +139 -0
- package/src/components/Checkbox/CheckboxGroup.tsx +43 -23
- package/src/components/Chip/Chip.module.css +52 -34
- package/src/components/Chip/Chip.tsx +45 -47
- package/src/components/Container/Container.stories.tsx +103 -20
- package/src/components/Container/Container.tsx +1 -13
- package/src/components/DatePicker/DatePicker.stories.tsx +125 -19
- package/src/components/DatePicker/DatePicker.tsx +3 -1
- package/src/components/Dropdown/Dropdown.tsx +7 -9
- package/src/components/FileInput/FileInput.stories.tsx +2 -19
- package/src/components/FileUpload/FileUpload.stories.tsx +2 -19
- package/src/components/Flex/Flex.stories.tsx +113 -20
- package/src/components/Flex/Flex.tsx +16 -26
- package/src/components/FormControlLayout/FormControlLayout.stories.tsx +0 -8
- package/src/components/FormControlLayout/FormControlLayout.tsx +18 -7
- package/src/components/FormControlWrapper/FormControlWrapper.module.css +1 -10
- package/src/components/FormControlWrapper/FormControlWrapper.stories.tsx +12 -21
- package/src/components/FormControlWrapper/FormControlWrapper.tsx +11 -30
- package/src/components/Group/Group.stories.tsx +6 -30
- package/src/components/Group/Group.tsx +14 -9
- package/src/components/HoverCard/HoverCard.tsx +72 -75
- package/src/components/Label/Label.module.css +4 -0
- package/src/components/Label/Label.stories.tsx +18 -12
- package/src/components/Label/Label.tsx +3 -9
- package/src/components/Link/Link.module.css +4 -3
- package/src/components/Link/Link.stories.tsx +2 -8
- package/src/components/Link/Link.tsx +1 -5
- package/src/components/Loader/Loader.module.css +1 -2
- package/src/components/Loader/Loader.tsx +1 -7
- package/src/components/Menu/IMPLEMENTATION_NOTES.md +4 -0
- package/src/components/Menu/Menu.stories.tsx +106 -188
- package/src/components/Menu/Menu.tsx +34 -280
- package/src/components/Modal/Modal.tsx +158 -160
- package/src/components/NumberInput/NumberInput.tsx +6 -18
- package/src/components/Pagination/IMPLEMENTATION_NOTES.md +3 -0
- package/src/components/Pagination/Pagination.module.css +12 -24
- package/src/components/Pagination/Pagination.stories.tsx +0 -8
- package/src/components/Pagination/Pagination.tsx +20 -140
- package/src/components/Panel/Panel.tsx +7 -30
- package/src/components/Radio/Radio.module.css +25 -10
- package/src/components/Radio/Radio.tsx +51 -19
- package/src/components/Radio/RadioGroup.stories.tsx +117 -0
- package/src/components/Radio/RadioGroup.tsx +26 -12
- package/src/components/ReadOnlyField/ReadOnlyField.module.css +6 -6
- package/src/components/ReadOnlyField/ReadOnlyField.stories.tsx +5 -36
- package/src/components/ReadOnlyField/ReadOnlyField.tsx +9 -13
- package/src/components/SegmentedControl/SegmentedControl.module.css +23 -47
- package/src/components/SegmentedControl/SegmentedControl.tsx +44 -14
- package/src/components/Slider/Slider.module.css +1 -4
- package/src/components/Slider/Slider.stories.tsx +3 -3
- package/src/components/Slider/Slider.tsx +26 -25
- package/src/components/Stack/Stack.stories.tsx +4 -25
- package/src/components/Stack/Stack.tsx +1 -5
- package/src/components/Stepper/IMPLEMENTATION_NOTES.md +4 -0
- package/src/components/Stepper/Stepper.stories.tsx +56 -43
- package/src/components/Stepper/Stepper.tsx +89 -87
- package/src/components/Switch/Switch.module.css +21 -0
- package/src/components/Switch/Switch.tsx +63 -16
- package/src/components/Switch/SwitchGroup.stories.tsx +132 -0
- package/src/components/Switch/SwitchGroup.tsx +27 -18
- package/src/components/Table/Table.stories.tsx +1 -19
- package/src/components/Table/Table.tsx +3 -1
- package/src/components/Tabs/IMPLEMENTATION_NOTES.md +4 -0
- package/src/components/Tabs/Tabs.stories.tsx +41 -24
- package/src/components/Tabs/Tabs.tsx +49 -66
- package/src/components/Text/Text.stories.tsx +5 -17
- package/src/components/Text/Text.tsx +1 -15
- package/src/components/TextArea/TextArea.tsx +7 -17
- package/src/components/TextField/TextField.stories.tsx +1 -27
- package/src/components/TextField/TextField.tsx +4 -6
- package/src/components/TimePicker/TimePicker.stories.tsx +2 -19
- package/src/components/TimePicker/TimePicker.tsx +3 -1
- package/src/components/Timeline/Timeline.tsx +4 -1
- package/src/components/Timeline/TimelineItem.tsx +1 -12
- package/src/components/Title/Title.stories.tsx +0 -18
- package/src/components/Title/Title.tsx +1 -7
- package/src/components/Toast/Toast.stories.tsx +1 -1
- package/src/components/Toast/Toast.tsx +62 -28
- package/src/components/Tooltip/Tooltip.tsx +11 -37
- package/src/components/TransferList/TransferList.stories.tsx +1 -19
- package/src/components/TransferList/TransferList.tsx +3 -1
- package/src/utils/RequireAccessibleLabel.ts +1 -12
- package/src/utils/filterStylingProps.ts +7 -20
|
@@ -1,35 +1,20 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { TabProps as MuiTabProps } from '@mui/material';
|
|
2
2
|
import { RecursicaOverStyled } from '../../utils/filterStylingProps';
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
}
|
|
3
|
+
import { RecursicaTabsProps } from '@recursica/adapter-common';
|
|
4
|
+
import { TabPanelProps as MuiTabPanelProps } from '@mui/lab';
|
|
6
5
|
export type TabsProps = RecursicaOverStyled<RecursicaTabsProps>;
|
|
7
|
-
declare const
|
|
6
|
+
export declare const Tabs: import('react').ForwardRefExoticComponent<TabsProps & import('react').RefAttributes<HTMLDivElement>>;
|
|
7
|
+
export type TabProps = RecursicaOverStyled<MuiTabProps>;
|
|
8
|
+
export declare const Tab: import('react').ForwardRefExoticComponent<(Omit<Omit<MuiTabProps, import('@recursica/adapter-common').BlockedStylingKeys> & import('@recursica/adapter-common').ForbiddenStyles & {
|
|
8
9
|
overStyled?: false | undefined;
|
|
9
|
-
}, "ref"> | Omit<
|
|
10
|
-
overStyled: true;
|
|
11
|
-
}, "ref">) & import('react').RefAttributes<HTMLDivElement>>;
|
|
12
|
-
export type TabsListProps = RecursicaOverStyled<MuiTabsListProps>;
|
|
13
|
-
declare const _TabsList: import('react').ForwardRefExoticComponent<(Omit<Omit<MuiTabsListProps, "className" | "classes" | "style" | "sx" | "color" | "bgcolor" | "backgroundColor" | "typography" | "fontFamily" | "fontSize" | "fontWeight" | "lineHeight" | "letterSpacing" | "textAlign" | "border" | "borderTop" | "borderBottom" | "borderLeft" | "borderRight" | "borderColor" | "borderRadius" | "boxShadow" | "display" | "position" | "zIndex"> & import('../../utils/filterStylingProps').ForbiddenStyles & {
|
|
14
|
-
overStyled?: false | undefined;
|
|
15
|
-
}, "ref"> | Omit<import('@mui/material').ListOwnProps & import('@mui/material/OverridableComponent').CommonProps & Omit<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLUListElement>, HTMLUListElement>, "className" | "classes" | "style" | "sx" | "children" | "dense" | "disablePadding" | "subheader"> & {
|
|
10
|
+
}, "ref"> | Omit<import('@mui/material').TabOwnProps & Omit<import('@mui/material').ButtonBaseOwnProps, "classes"> & import('@mui/material/OverridableComponent').CommonProps & Omit<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "className" | "classes" | "style" | "sx" | "value" | "tabIndex" | "children" | "disabled" | "label" | "action" | "centerRipple" | "disableRipple" | "disableTouchRipple" | "focusRipple" | "focusVisibleClassName" | "LinkComponent" | "onFocusVisible" | "TouchRippleProps" | "touchRippleRef" | "icon" | "disableFocusRipple" | "iconPosition" | "wrapped"> & {
|
|
16
11
|
component?: React.ElementType | undefined;
|
|
17
12
|
} & {
|
|
18
13
|
overStyled: true;
|
|
19
14
|
}, "ref">) & import('react').RefAttributes<HTMLDivElement>>;
|
|
20
|
-
export type
|
|
21
|
-
declare const
|
|
15
|
+
export type TabPanelProps = RecursicaOverStyled<MuiTabPanelProps>;
|
|
16
|
+
export declare const TabPanel: import('react').ForwardRefExoticComponent<(Omit<Omit<MuiTabPanelProps, import('@recursica/adapter-common').BlockedStylingKeys> & import('@recursica/adapter-common').ForbiddenStyles & {
|
|
22
17
|
overStyled?: false | undefined;
|
|
23
|
-
}, "ref"> | Omit<
|
|
24
|
-
component?: React.ElementType | undefined;
|
|
25
|
-
} & {
|
|
18
|
+
}, "ref"> | Omit<MuiTabPanelProps & {
|
|
26
19
|
overStyled: true;
|
|
27
|
-
}, "ref">) & import('react').RefAttributes<
|
|
28
|
-
export type TabsPanelProps = RecursicaOverStyled<MuiTabsPanelProps>;
|
|
29
|
-
declare const _TabsPanel: import('react').ForwardRefExoticComponent<any>;
|
|
30
|
-
export declare const Tabs: typeof _Tabs & {
|
|
31
|
-
List: typeof _TabsList;
|
|
32
|
-
Tab: typeof _TabsTab;
|
|
33
|
-
Panel: typeof _TabsPanel;
|
|
34
|
-
};
|
|
35
|
-
export {};
|
|
20
|
+
}, "ref">) & import('react').RefAttributes<HTMLDivElement>>;
|
|
@@ -1,19 +1,5 @@
|
|
|
1
1
|
import { default as React } from 'react';
|
|
2
2
|
import { RecursicaOverStyled } from '../../utils/filterStylingProps';
|
|
3
|
-
import {
|
|
4
|
-
export type TextVariant = "body" | "body-small" | "caption" | "overline" | "subtitle" | "subtitle-small";
|
|
5
|
-
export type RecursicaTextProps = Omit<MuiTypographyProps, "variant"> & {
|
|
6
|
-
variant?: TextVariant;
|
|
7
|
-
children?: React.ReactNode;
|
|
8
|
-
component?: React.ElementType;
|
|
9
|
-
};
|
|
3
|
+
import { RecursicaTextProps } from '@recursica/adapter-common';
|
|
10
4
|
export type TextProps = RecursicaOverStyled<RecursicaTextProps>;
|
|
11
|
-
export declare const Text: React.ForwardRefExoticComponent<
|
|
12
|
-
overStyled?: false | undefined;
|
|
13
|
-
}, "ref"> | Omit<Omit<MuiTypographyProps, "variant"> & {
|
|
14
|
-
variant?: TextVariant;
|
|
15
|
-
children?: React.ReactNode;
|
|
16
|
-
component?: React.ElementType;
|
|
17
|
-
} & {
|
|
18
|
-
overStyled: true;
|
|
19
|
-
}, "ref">) & React.RefAttributes<HTMLElement>>;
|
|
5
|
+
export declare const Text: React.ForwardRefExoticComponent<TextProps & React.RefAttributes<HTMLElement>>;
|
|
@@ -1,18 +1,12 @@
|
|
|
1
1
|
import { default as React } from 'react';
|
|
2
2
|
import { TextFieldProps as MuiTextareaProps } from '@mui/material';
|
|
3
|
-
import { ReadOnlyControlProps } from '@recursica/adapter-common';
|
|
3
|
+
import { ReadOnlyControlProps, RecursicaTextAreaProps as BaseRecursicaTextAreaProps } from '@recursica/adapter-common';
|
|
4
4
|
import { RecursicaOverStyled } from '../../utils/filterStylingProps';
|
|
5
5
|
import { RecursicaFormControlWrapperProps } from '../FormControlWrapper/FormControlWrapper';
|
|
6
|
-
export interface RecursicaTextAreaProps extends Omit<MuiTextareaProps, "size" | "variant" | "radius" | "wrapperProps">, Pick<RecursicaFormControlWrapperProps, "assistiveText" | "assistiveWithIcon" | "formLayout" | "labelSize" | "labelAlignment" | "labelOptionalText" | "labelWithEditIcon" | "onLabelEditClick">, ReadOnlyControlProps {
|
|
7
|
-
/** Maximum rows for autosize textarea to grow */
|
|
8
|
-
maxRows?: number;
|
|
9
|
-
/** Minimum rows of autosize textarea */
|
|
10
|
-
minRows?: number;
|
|
11
|
-
/** If set, enables textarea height growing with its content */
|
|
12
|
-
autosize?: boolean;
|
|
6
|
+
export interface RecursicaTextAreaProps extends Omit<MuiTextareaProps, "size" | "variant" | "radius" | "wrapperProps">, Pick<RecursicaFormControlWrapperProps, "assistiveText" | "assistiveWithIcon" | "formLayout" | "labelSize" | "labelAlignment" | "labelOptionalText" | "labelWithEditIcon" | "onLabelEditClick">, ReadOnlyControlProps, BaseRecursicaTextAreaProps {
|
|
13
7
|
}
|
|
14
8
|
export type TextAreaProps = RecursicaOverStyled<RecursicaTextAreaProps>;
|
|
15
|
-
export declare const TextArea: React.ForwardRefExoticComponent<(Omit<Omit<RecursicaTextAreaProps,
|
|
9
|
+
export declare const TextArea: React.ForwardRefExoticComponent<(Omit<Omit<RecursicaTextAreaProps, import('@recursica/adapter-common').BlockedStylingKeys> & import('@recursica/adapter-common').ForbiddenStyles & {
|
|
16
10
|
overStyled?: false | undefined;
|
|
17
11
|
}, "ref"> | Omit<RecursicaTextAreaProps & {
|
|
18
12
|
overStyled: true;
|
|
@@ -1,16 +1,12 @@
|
|
|
1
1
|
import { default as React } from 'react';
|
|
2
2
|
import { InputBaseProps } from '@mui/material';
|
|
3
|
-
import { ReadOnlyControlProps } from '@recursica/adapter-common';
|
|
3
|
+
import { ReadOnlyControlProps, RecursicaTextFieldProps as BaseRecursicaTextFieldProps } from '@recursica/adapter-common';
|
|
4
4
|
import { RecursicaOverStyled } from '../../utils/filterStylingProps';
|
|
5
5
|
import { RecursicaFormControlWrapperProps } from '../FormControlWrapper/FormControlWrapper';
|
|
6
|
-
export interface RecursicaTextFieldProps extends Omit<InputBaseProps, "color" | "size" | "startAdornment" | "endAdornment" | "autoComplete">, Omit<React.ComponentPropsWithoutRef<"input">, keyof InputBaseProps | "size" | "color" | "style" | "className" | "id">, Pick<RecursicaFormControlWrapperProps, "label" | "error" | "required" | "id" | "assistiveText" | "assistiveWithIcon" | "formLayout" | "labelSize" | "labelAlignment" | "labelOptionalText" | "labelWithEditIcon" | "onLabelEditClick">, ReadOnlyControlProps {
|
|
7
|
-
/** Renders a section on the left side of the input (e.g. icon). Maps to Mantine's leftSection natively. */
|
|
8
|
-
leftSection?: React.ReactNode;
|
|
9
|
-
/** Renders a section on the right side of the input (e.g. clear button). Maps to Mantine's rightSection natively. */
|
|
10
|
-
rightSection?: React.ReactNode;
|
|
6
|
+
export interface RecursicaTextFieldProps extends Omit<InputBaseProps, "color" | "size" | "startAdornment" | "endAdornment" | "autoComplete">, Omit<React.ComponentPropsWithoutRef<"input">, keyof InputBaseProps | "size" | "color" | "style" | "className" | "id">, Pick<RecursicaFormControlWrapperProps, "label" | "error" | "required" | "id" | "assistiveText" | "assistiveWithIcon" | "formLayout" | "labelSize" | "labelAlignment" | "labelOptionalText" | "labelWithEditIcon" | "onLabelEditClick">, ReadOnlyControlProps, BaseRecursicaTextFieldProps {
|
|
11
7
|
}
|
|
12
8
|
export type TextFieldProps = RecursicaOverStyled<RecursicaTextFieldProps>;
|
|
13
|
-
export declare const TextField: React.ForwardRefExoticComponent<(Omit<Omit<RecursicaTextFieldProps,
|
|
9
|
+
export declare const TextField: React.ForwardRefExoticComponent<(Omit<Omit<RecursicaTextFieldProps, import('@recursica/adapter-common').BlockedStylingKeys> & import('@recursica/adapter-common').ForbiddenStyles & {
|
|
14
10
|
overStyled?: false | undefined;
|
|
15
11
|
}, "ref"> | Omit<RecursicaTextFieldProps & {
|
|
16
12
|
overStyled: true;
|
|
@@ -1,3 +1,4 @@
|
|
|
1
1
|
import { default as React } from 'react';
|
|
2
|
-
|
|
2
|
+
import { RecursicaTimePickerProps } from '@recursica/adapter-common';
|
|
3
|
+
export type TimePickerProps = React.HTMLAttributes<HTMLDivElement> & RecursicaTimePickerProps;
|
|
3
4
|
export declare const TimePicker: React.FC<TimePickerProps>;
|
|
@@ -2,12 +2,13 @@ import { default as React } from 'react';
|
|
|
2
2
|
import { TimelineProps as MuiTimelineProps } from '@mui/lab/Timeline';
|
|
3
3
|
import { RecursicaOverStyled } from '../../utils/filterStylingProps';
|
|
4
4
|
import { TimelineItem } from './TimelineItem';
|
|
5
|
+
import { RecursicaTimelineProps } from '@recursica/adapter-common';
|
|
5
6
|
/**
|
|
6
7
|
* Properties for the strictly-tokenized Timeline component.
|
|
7
8
|
* Native Mui abstract properties like `color`, `radius`, `bulletSize`, and `lineWidth`
|
|
8
9
|
* have been stripped out to strictly enforce the structural mappings of the Recursica UI Kit.
|
|
9
10
|
*/
|
|
10
|
-
export type TimelineProps = RecursicaOverStyled<Omit<MuiTimelineProps, "color" | "radius" | "bulletSize" | "lineWidth"
|
|
11
|
+
export type TimelineProps = RecursicaOverStyled<Omit<MuiTimelineProps, "color" | "radius" | "bulletSize" | "lineWidth"> & RecursicaTimelineProps>;
|
|
11
12
|
interface TimelineComponent extends React.ForwardRefExoticComponent<TimelineProps & React.RefAttributes<HTMLDivElement>> {
|
|
12
13
|
Item: typeof TimelineItem;
|
|
13
14
|
}
|
|
@@ -1,18 +1,7 @@
|
|
|
1
1
|
import { default as React } from 'react';
|
|
2
2
|
import { TimelineItemProps as MuiTimelineItemProps } from '@mui/lab/TimelineItem';
|
|
3
3
|
import { RecursicaOverStyled } from '../../utils/filterStylingProps';
|
|
4
|
-
|
|
5
|
-
/**
|
|
6
|
-
* Timestamp text displayed below the description.
|
|
7
|
-
*/
|
|
8
|
-
timestamp?: React.ReactNode;
|
|
9
|
-
/**
|
|
10
|
-
* The structural styling variant of the bullet container.
|
|
11
|
-
* Maps to the UI Kit structural tokens.
|
|
12
|
-
* @default "default"
|
|
13
|
-
*/
|
|
14
|
-
bulletVariant?: "default" | "avatar" | "icon" | "icon-alternative";
|
|
15
|
-
}
|
|
4
|
+
import { RecursicaTimelineItemProps } from '@recursica/adapter-common';
|
|
16
5
|
export type TimelineItemProps = RecursicaOverStyled<Omit<MuiTimelineItemProps, "radius" | "color" | "lineVariant"> & RecursicaTimelineItemProps>;
|
|
17
6
|
/**
|
|
18
7
|
* The individual item component for the Timeline.
|
|
@@ -22,7 +11,7 @@ export type TimelineItemProps = RecursicaOverStyled<Omit<MuiTimelineItemProps, "
|
|
|
22
11
|
* rendering it below the body content. It also accepts a `bulletVariant` to morph
|
|
23
12
|
* the structural dimensions of the node circle automatically.
|
|
24
13
|
*/
|
|
25
|
-
export declare const TimelineItem: React.ForwardRefExoticComponent<(Omit<Omit<Omit<MuiTimelineItemProps, "color" | "radius" | "lineVariant"> & RecursicaTimelineItemProps,
|
|
14
|
+
export declare const TimelineItem: React.ForwardRefExoticComponent<(Omit<Omit<Omit<MuiTimelineItemProps, "color" | "radius" | "lineVariant"> & RecursicaTimelineItemProps, import('@recursica/adapter-common').BlockedStylingKeys> & import('@recursica/adapter-common').ForbiddenStyles & {
|
|
26
15
|
overStyled?: false | undefined;
|
|
27
16
|
}, "ref"> | Omit<Omit<MuiTimelineItemProps, "color" | "radius" | "lineVariant"> & RecursicaTimelineItemProps & {
|
|
28
17
|
overStyled: true;
|
|
@@ -1,18 +1,5 @@
|
|
|
1
1
|
import { default as React } from 'react';
|
|
2
2
|
import { RecursicaOverStyled } from '../../utils/filterStylingProps';
|
|
3
|
-
import {
|
|
4
|
-
export type RecursicaTitleProps = Omit<MuiTypographyProps, "variant"> & {
|
|
5
|
-
order?: 1 | 2 | 3 | 4 | 5 | 6;
|
|
6
|
-
children?: React.ReactNode;
|
|
7
|
-
component?: React.ElementType;
|
|
8
|
-
};
|
|
3
|
+
import { RecursicaTitleProps } from '@recursica/adapter-common';
|
|
9
4
|
export type TitleProps = RecursicaOverStyled<RecursicaTitleProps>;
|
|
10
|
-
export declare const Title: React.ForwardRefExoticComponent<
|
|
11
|
-
overStyled?: false | undefined;
|
|
12
|
-
}, "ref"> | Omit<Omit<MuiTypographyProps, "variant"> & {
|
|
13
|
-
order?: 1 | 2 | 3 | 4 | 5 | 6;
|
|
14
|
-
children?: React.ReactNode;
|
|
15
|
-
component?: React.ElementType;
|
|
16
|
-
} & {
|
|
17
|
-
overStyled: true;
|
|
18
|
-
}, "ref">) & React.RefAttributes<HTMLElement>>;
|
|
5
|
+
export declare const Title: React.ForwardRefExoticComponent<TitleProps & React.RefAttributes<HTMLElement>>;
|
|
@@ -1,26 +1,21 @@
|
|
|
1
1
|
import { default as React } from 'react';
|
|
2
|
-
import {
|
|
2
|
+
import { AlertProps as MuiAlertProps } from '@mui/material';
|
|
3
3
|
import { RecursicaOverStyled } from '../../utils/filterStylingProps';
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
/**
|
|
11
|
-
* Loading state is natively unsupported by Recursica UI Kit.
|
|
12
|
-
* If a loading state is required, pass a `<Loader size="sm" />` directly into the `icon` prop.
|
|
13
|
-
*/
|
|
14
|
-
loading?: false;
|
|
4
|
+
import { RecursicaToastProps as BaseRecursicaToastProps } from '@recursica/adapter-common';
|
|
5
|
+
export interface RecursicaToastProps extends BaseRecursicaToastProps {
|
|
6
|
+
withCloseButton?: boolean;
|
|
7
|
+
title?: React.ReactNode;
|
|
8
|
+
icon?: React.ReactNode;
|
|
9
|
+
onClose?: () => void;
|
|
15
10
|
}
|
|
16
11
|
/**
|
|
17
|
-
* Toast component wrapping Mui's
|
|
12
|
+
* Toast component wrapping Mui's Alert.
|
|
18
13
|
*
|
|
19
14
|
* Can be used as a standalone visual component to display a notification or message.
|
|
20
15
|
*/
|
|
21
|
-
export type ToastProps = RecursicaOverStyled<Omit<
|
|
22
|
-
export declare const Toast: React.ForwardRefExoticComponent<(Omit<Omit<Omit<
|
|
16
|
+
export type ToastProps = RecursicaOverStyled<Omit<MuiAlertProps, "color" | "radius" | "variant" | "onClose"> & RecursicaToastProps>;
|
|
17
|
+
export declare const Toast: React.ForwardRefExoticComponent<(Omit<Omit<Omit<MuiAlertProps, "color" | "variant" | "onClose" | "radius"> & RecursicaToastProps, import('@recursica/adapter-common').BlockedStylingKeys> & import('@recursica/adapter-common').ForbiddenStyles & {
|
|
23
18
|
overStyled?: false | undefined;
|
|
24
|
-
}, "ref"> | Omit<Omit<
|
|
19
|
+
}, "ref"> | Omit<Omit<MuiAlertProps, "color" | "variant" | "onClose" | "radius"> & RecursicaToastProps & {
|
|
25
20
|
overStyled: true;
|
|
26
21
|
}, "ref">) & React.RefAttributes<HTMLDivElement>>;
|
|
@@ -1,17 +1,6 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { TooltipProps as MuiTooltipProps } from '@mui/material';
|
|
2
2
|
import { RecursicaOverStyled } from '../../utils/filterStylingProps';
|
|
3
|
-
|
|
4
|
-
* Recursica-specific props for Tooltip.
|
|
5
|
-
*/
|
|
6
|
-
export interface RecursicaTooltipProps {
|
|
7
|
-
/**
|
|
8
|
-
* Whether to display a beak (arrow) pointing from the tooltip to the target.
|
|
9
|
-
* This is the Recursica equivalent of Mui's `withArrow`.
|
|
10
|
-
* When both `withBeak` and `withArrow` are provided, `withBeak` takes precedence.
|
|
11
|
-
* @default true
|
|
12
|
-
*/
|
|
13
|
-
withBeak?: boolean;
|
|
14
|
-
}
|
|
3
|
+
import { RecursicaTooltipProps } from '@recursica/adapter-common';
|
|
15
4
|
/**
|
|
16
5
|
* Recursica Tooltip component wrapping Mui's Tooltip.
|
|
17
6
|
*
|
|
@@ -30,13 +19,10 @@ export interface RecursicaTooltipProps {
|
|
|
30
19
|
* - `// Tooltip.Group` — Shared hover delay group for multiple tooltips
|
|
31
20
|
*/
|
|
32
21
|
export type TooltipProps = RecursicaOverStyled<MuiTooltipProps & RecursicaTooltipProps>;
|
|
33
|
-
declare const
|
|
34
|
-
({ overStyled, withBeak, ...rest }: TooltipProps
|
|
22
|
+
export declare const Tooltip: {
|
|
23
|
+
({ overStyled, withBeak, label, opened, ...rest }: TooltipProps & {
|
|
24
|
+
label?: React.ReactNode;
|
|
25
|
+
opened?: boolean;
|
|
26
|
+
}): import("react/jsx-runtime").JSX.Element;
|
|
35
27
|
displayName: string;
|
|
36
28
|
};
|
|
37
|
-
type TooltipComponent = typeof TooltipBase & {
|
|
38
|
-
Floating: typeof MuiTooltip.Floating;
|
|
39
|
-
Group: typeof MuiTooltip.Group;
|
|
40
|
-
};
|
|
41
|
-
export declare const Tooltip: TooltipComponent;
|
|
42
|
-
export {};
|
|
@@ -1,3 +1,4 @@
|
|
|
1
1
|
import { default as React } from 'react';
|
|
2
|
-
|
|
2
|
+
import { RecursicaTransferListProps } from '@recursica/adapter-common';
|
|
3
|
+
export type TransferListProps = React.HTMLAttributes<HTMLDivElement> & RecursicaTransferListProps;
|
|
3
4
|
export declare const TransferList: React.FC<TransferListProps>;
|
|
@@ -14,7 +14,7 @@ export declare const Typography: React.ForwardRefExoticComponent<(Omit<Omit<Omit
|
|
|
14
14
|
*/
|
|
15
15
|
typographyClass: string;
|
|
16
16
|
component?: React.ElementType;
|
|
17
|
-
},
|
|
17
|
+
}, import('@recursica/adapter-common').BlockedStylingKeys> & import('@recursica/adapter-common').ForbiddenStyles & {
|
|
18
18
|
overStyled?: false | undefined;
|
|
19
19
|
}, "ref"> | Omit<Omit<MuiTypographyProps, "variant"> & {
|
|
20
20
|
/**
|
|
@@ -1,18 +1 @@
|
|
|
1
|
-
|
|
2
|
-
/**
|
|
3
|
-
* Enforces accessibility by strictly requiring at least one form of labeling:
|
|
4
|
-
* either a visual \`label\`, an \`aria-label\`, or an \`aria-labelledby\`.
|
|
5
|
-
*/
|
|
6
|
-
export type RequireAccessibleLabel<T> = T & ({
|
|
7
|
-
label: ReactNode;
|
|
8
|
-
"aria-label"?: string;
|
|
9
|
-
"aria-labelledby"?: string;
|
|
10
|
-
} | {
|
|
11
|
-
label?: ReactNode;
|
|
12
|
-
"aria-label": string;
|
|
13
|
-
"aria-labelledby"?: string;
|
|
14
|
-
} | {
|
|
15
|
-
label?: ReactNode;
|
|
16
|
-
"aria-label"?: string;
|
|
17
|
-
"aria-labelledby": string;
|
|
18
|
-
});
|
|
1
|
+
export { type RequireAccessibleLabel } from '@recursica/adapter-common';
|
|
@@ -22,18 +22,8 @@
|
|
|
22
22
|
* @returns Sanitized component props safe for internal styling merging
|
|
23
23
|
*/
|
|
24
24
|
export declare const BLOCKED_STYLING_KEYS: readonly ["className", "classes", "style", "sx", "color", "bgcolor", "backgroundColor", "typography", "fontFamily", "fontSize", "fontWeight", "lineHeight", "letterSpacing", "textAlign", "border", "borderTop", "borderBottom", "borderLeft", "borderRight", "borderColor", "borderRadius", "boxShadow", "display", "position", "zIndex"];
|
|
25
|
-
export type BlockedStylingKeys
|
|
26
|
-
export type RecursicaSpacing = "rec-none" | "rec-sm" | "rec-default" | "rec-md" | "rec-lg" | "rec-xl" | "rec-2xl";
|
|
27
|
-
export type RecursicaSize = "small" | "default" | "large";
|
|
25
|
+
export { type RecursicaSpacing, type RecursicaSize, type RecursicaOverStyled, type BlockedStylingKeys, type ForbiddenStyles, } from '@recursica/adapter-common';
|
|
28
26
|
export declare const SPACING_MAP: Record<string, string>;
|
|
29
|
-
export type ForbiddenStyles = {
|
|
30
|
-
[K in BlockedStylingKeys]?: never;
|
|
31
|
-
};
|
|
32
27
|
export type OmitSx<T> = Omit<T, "sx">;
|
|
33
28
|
export declare function filterSxProp<T extends Record<string, unknown>>(props: T): Omit<T, "sx">;
|
|
34
|
-
export type RecursicaOverStyled<T> = (Omit<T, BlockedStylingKeys> & ForbiddenStyles & {
|
|
35
|
-
overStyled?: false | undefined;
|
|
36
|
-
}) | (T & {
|
|
37
|
-
overStyled: true;
|
|
38
|
-
});
|
|
39
29
|
export declare function filterStylingProps<T extends Record<string, unknown>>(props: T, overStyled?: boolean): Partial<T>;
|
package/llms.txt
ADDED
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
# @recursica/mui-adapter
|
|
2
|
+
|
|
3
|
+
> Reusable UI components for Recursica applications based on Material UI (MUI) v7.
|
|
4
|
+
|
|
5
|
+
This adapter converts Recursica design tokens into MUI-specific themes and components.
|
|
6
|
+
|
|
7
|
+
## Usage Guidelines
|
|
8
|
+
|
|
9
|
+
- Relies on `@mui/material`, `@emotion/react`, and `@emotion/styled` peer dependencies.
|
|
10
|
+
- When building UI in consumer applications, prioritize using components exported by this package to adhere to the Recursica design system.
|
|
11
|
+
|
|
12
|
+
## Documentation
|
|
13
|
+
|
|
14
|
+
- [USAGE](USAGE.md): Detailed usage instructions.
|
|
15
|
+
- [ARCHITECTURE](ARCHITECTURE.md): Package architecture and dependencies.
|
|
16
|
+
- [README](README.md)
|
package/package.json
CHANGED
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
"url": "git+https://github.com/borderux/recursica.git",
|
|
14
14
|
"directory": "packages/mui-adapter"
|
|
15
15
|
},
|
|
16
|
-
"version": "0.
|
|
16
|
+
"version": "0.7.0",
|
|
17
17
|
"publishConfig": {
|
|
18
18
|
"access": "public"
|
|
19
19
|
},
|
|
@@ -33,7 +33,11 @@
|
|
|
33
33
|
"dist",
|
|
34
34
|
"src",
|
|
35
35
|
"CHANGELOG.md",
|
|
36
|
-
".storybook/commonArgTypes.ts"
|
|
36
|
+
".storybook/commonArgTypes.ts",
|
|
37
|
+
"llms.txt",
|
|
38
|
+
"USAGE.md",
|
|
39
|
+
"ARCHITECTURE.md",
|
|
40
|
+
"SETUP.md"
|
|
37
41
|
],
|
|
38
42
|
"keywords": [
|
|
39
43
|
"react",
|
|
@@ -143,21 +143,3 @@ export const LayerOne: StoryObj<typeof Accordion> = {
|
|
|
143
143
|
);
|
|
144
144
|
},
|
|
145
145
|
};
|
|
146
|
-
|
|
147
|
-
export const Docs: StoryObj<typeof Accordion> = {
|
|
148
|
-
render: () => {
|
|
149
|
-
return (
|
|
150
|
-
<Layer layer={0} style={{ padding: "24px" }}>
|
|
151
|
-
<Accordion defaultValue="docs-1">
|
|
152
|
-
<Accordion.Item value="docs-1">
|
|
153
|
-
<Accordion.Control>Documentation Content</Accordion.Control>
|
|
154
|
-
<Accordion.Panel>
|
|
155
|
-
This is the explicitly requested Docs story for automated layout
|
|
156
|
-
testing.
|
|
157
|
-
</Accordion.Panel>
|
|
158
|
-
</Accordion.Item>
|
|
159
|
-
</Accordion>
|
|
160
|
-
</Layer>
|
|
161
|
-
);
|
|
162
|
-
},
|
|
163
|
-
};
|
|
@@ -13,6 +13,12 @@ import {
|
|
|
13
13
|
} from "../../utils/filterStylingProps";
|
|
14
14
|
import styles from "./Accordion.module.css";
|
|
15
15
|
|
|
16
|
+
import {
|
|
17
|
+
type RecursicaAccordionProps,
|
|
18
|
+
type RecursicaAccordionItemProps,
|
|
19
|
+
type RecursicaAccordionControlProps,
|
|
20
|
+
} from "@recursica/adapter-common";
|
|
21
|
+
|
|
16
22
|
const ChevronIcon = () => (
|
|
17
23
|
<svg
|
|
18
24
|
viewBox="0 0 24 24"
|
|
@@ -35,13 +41,7 @@ const AccordionContext = createContext<{
|
|
|
35
41
|
|
|
36
42
|
// ==== ACCORDION CONTAINER ====
|
|
37
43
|
export type AccordionProps = RecursicaOverStyled<
|
|
38
|
-
React.HTMLAttributes<HTMLDivElement> &
|
|
39
|
-
variant?: string;
|
|
40
|
-
value?: string | string[];
|
|
41
|
-
defaultValue?: string | string[];
|
|
42
|
-
onChange?: (value: string | string[] | null) => void;
|
|
43
|
-
multiple?: boolean;
|
|
44
|
-
}
|
|
44
|
+
React.HTMLAttributes<HTMLDivElement> & RecursicaAccordionProps
|
|
45
45
|
>;
|
|
46
46
|
|
|
47
47
|
const AccordionBase = forwardRef<HTMLDivElement, AccordionProps>(
|
|
@@ -106,15 +106,11 @@ const AccordionBase = forwardRef<HTMLDivElement, AccordionProps>(
|
|
|
106
106
|
);
|
|
107
107
|
AccordionBase.displayName = "Accordion";
|
|
108
108
|
|
|
109
|
-
// ==== ACCORDION ITEM ====
|
|
110
109
|
export type AccordionItemWrapperProps = RecursicaOverStyled<
|
|
111
110
|
Omit<MuiAccordionProps, "children" | "value"> & {
|
|
112
111
|
children?: React.ReactNode;
|
|
113
|
-
title?: React.ReactNode;
|
|
114
|
-
leftIcon?: React.ReactNode;
|
|
115
|
-
divider?: boolean;
|
|
116
112
|
value: string;
|
|
117
|
-
}
|
|
113
|
+
} & RecursicaAccordionItemProps
|
|
118
114
|
>;
|
|
119
115
|
|
|
120
116
|
export const AccordionItem = forwardRef<
|
|
@@ -171,14 +167,16 @@ export const AccordionItem = forwardRef<
|
|
|
171
167
|
"expanded" | "onChange"
|
|
172
168
|
>)}
|
|
173
169
|
>
|
|
174
|
-
{
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
170
|
+
{
|
|
171
|
+
(title ? (
|
|
172
|
+
<>
|
|
173
|
+
<AccordionControl leftIcon={leftIcon}>{title}</AccordionControl>
|
|
174
|
+
<AccordionPanel>{children}</AccordionPanel>
|
|
175
|
+
</>
|
|
176
|
+
) : (
|
|
177
|
+
children
|
|
178
|
+
)) as any
|
|
179
|
+
}
|
|
182
180
|
</MuiAccordion>
|
|
183
181
|
);
|
|
184
182
|
});
|
|
@@ -186,9 +184,7 @@ AccordionItem.displayName = "AccordionItem";
|
|
|
186
184
|
|
|
187
185
|
// ==== ACCORDION CONTROL ====
|
|
188
186
|
export type AccordionControlWrapperProps = RecursicaOverStyled<
|
|
189
|
-
MuiAccordionSummaryProps &
|
|
190
|
-
leftIcon?: React.ReactNode;
|
|
191
|
-
}
|
|
187
|
+
MuiAccordionSummaryProps & RecursicaAccordionControlProps
|
|
192
188
|
>;
|
|
193
189
|
|
|
194
190
|
export const AccordionControl = forwardRef<
|
|
@@ -5,15 +5,21 @@
|
|
|
5
5
|
|
|
6
6
|
.root {
|
|
7
7
|
/* Override MUI FormHelperText native resets structurally safely */
|
|
8
|
-
display: flex;
|
|
9
|
-
align-items: flex-start; /* Forces the icon to align with the first line of text */
|
|
10
|
-
margin: 0; /* HARDCODE: structural reset */
|
|
11
|
-
padding: 0; /* HARDCODE: structural reset */
|
|
8
|
+
display: flex !important;
|
|
9
|
+
align-items: flex-start !important; /* Forces the icon to align with the first line of text */
|
|
10
|
+
margin: 0 !important; /* HARDCODE: structural reset */
|
|
11
|
+
padding: 0 !important; /* HARDCODE: structural reset */
|
|
12
12
|
width: 100%;
|
|
13
13
|
|
|
14
14
|
gap: var(
|
|
15
15
|
--recursica_ui-kit_components_assistive-element_properties_icon-text-gap
|
|
16
16
|
);
|
|
17
|
+
margin-top: var(
|
|
18
|
+
--recursica_ui-kit_components_assistive-element_properties_top-margin
|
|
19
|
+
) !important;
|
|
20
|
+
max-width: var(
|
|
21
|
+
--recursica_ui-kit_components_assistive-element_properties_max-width
|
|
22
|
+
);
|
|
17
23
|
|
|
18
24
|
font-family: var(
|
|
19
25
|
--recursica_ui-kit_components_assistive-element_properties_text_font-family
|
|
@@ -42,40 +48,37 @@
|
|
|
42
48
|
}
|
|
43
49
|
|
|
44
50
|
.text {
|
|
45
|
-
|
|
51
|
+
overflow-wrap: break-word;
|
|
52
|
+
white-space: normal;
|
|
46
53
|
}
|
|
47
54
|
|
|
48
55
|
/* Base Icon Architecture */
|
|
49
56
|
.icon {
|
|
50
|
-
flex-shrink: 0; /* Prevent squishing */
|
|
51
|
-
display: flex;
|
|
52
|
-
align-items: center;
|
|
53
|
-
justify-content: center;
|
|
57
|
+
flex-shrink: 0 !important; /* Prevent squishing */
|
|
58
|
+
display: flex !important;
|
|
59
|
+
align-items: center !important;
|
|
60
|
+
justify-content: center !important;
|
|
61
|
+
|
|
54
62
|
width: var(
|
|
55
63
|
--recursica_ui-kit_components_assistive-element_properties_icon-size
|
|
56
|
-
);
|
|
57
|
-
height:
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
--recursica_ui-kit_components_assistive-element_properties_text_line-height
|
|
66
|
-
) -
|
|
67
|
-
var(
|
|
68
|
-
--recursica_ui-kit_components_assistive-element_properties_icon-size
|
|
69
|
-
)
|
|
70
|
-
) /
|
|
71
|
-
2
|
|
72
|
-
); /* Forces exact centering bounds within the first text line vertically */
|
|
64
|
+
) !important;
|
|
65
|
+
height: calc(
|
|
66
|
+
var(
|
|
67
|
+
--recursica_ui-kit_components_assistive-element_properties_text_line-height
|
|
68
|
+
) *
|
|
69
|
+
var(
|
|
70
|
+
--recursica_ui-kit_components_assistive-element_properties_text_font-size
|
|
71
|
+
)
|
|
72
|
+
) !important; /* Forces exact centering bounds within the first text line vertically */
|
|
73
73
|
}
|
|
74
74
|
|
|
75
75
|
.icon :global(svg) {
|
|
76
|
-
width:
|
|
77
|
-
|
|
78
|
-
|
|
76
|
+
width: var(
|
|
77
|
+
--recursica_ui-kit_components_assistive-element_properties_icon-size
|
|
78
|
+
) !important;
|
|
79
|
+
height: var(
|
|
80
|
+
--recursica_ui-kit_components_assistive-element_properties_icon-size
|
|
81
|
+
) !important;
|
|
79
82
|
}
|
|
80
83
|
|
|
81
84
|
/* =========================================
|