@recursica/mui-adapter 0.5.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 +15 -0
- package/SETUP.md +77 -0
- package/USAGE.md +55 -0
- package/dist/mui-adapter.cjs +74 -1
- package/dist/mui-adapter.cjs.map +1 -1
- package/dist/mui-adapter.css +1 -1
- package/dist/mui-adapter.js +6863 -205
- package/dist/mui-adapter.js.map +1 -1
- package/dist/src/components/Accordion/Accordion.d.ts +43 -2
- package/dist/src/components/AssistiveElement/AssistiveElement.d.ts +6 -2
- package/dist/src/components/Autocomplete/Autocomplete.d.ts +12 -2
- package/dist/src/components/Avatar/Avatar.d.ts +10 -3
- package/dist/src/components/Badge/Badge.d.ts +10 -3
- package/dist/src/components/Breadcrumb/Breadcrumb.d.ts +9 -3
- package/dist/src/components/Button/Button.d.ts +2 -17
- package/dist/src/components/Card/Card.d.ts +38 -3
- package/dist/src/components/Checkbox/Checkbox.d.ts +13 -2
- package/dist/src/components/Checkbox/CheckboxGroup.d.ts +18 -0
- package/dist/src/components/Checkbox/index.d.ts +5 -1
- package/dist/src/components/Chip/Chip.d.ts +9 -2
- 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 +12 -2
- package/dist/src/components/Flex/Flex.d.ts +2 -22
- package/dist/src/components/FormControlLayout/FormControlLayout.d.ts +5 -2
- package/dist/src/components/FormControlWrapper/FormControlWrapper.d.ts +9 -2
- package/dist/src/components/Group/Group.d.ts +2 -7
- package/dist/src/components/HoverCard/HoverCard.d.ts +28 -2
- package/dist/src/components/Label/Label.d.ts +6 -2
- 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 +25 -3
- package/dist/src/components/Modal/Modal.d.ts +37 -2
- package/dist/src/components/NumberInput/NumberInput.d.ts +12 -2
- package/dist/src/components/Pagination/Pagination.d.ts +12 -3
- package/dist/src/components/Pagination/Pagination.icons.d.ts +8 -0
- package/dist/src/components/Panel/Panel.d.ts +52 -3
- package/dist/src/components/Radio/Radio.d.ts +13 -3
- package/dist/src/components/Radio/RadioGroup.d.ts +9 -0
- package/dist/src/components/ReadOnlyField/ReadOnlyBooleanField.d.ts +5 -0
- package/dist/src/components/ReadOnlyField/ReadOnlyField.d.ts +4 -2
- package/dist/src/components/ReadOnlyField/ReadOnlySwitchField.d.ts +5 -0
- package/dist/src/components/ReadOnlyField/ReadOnlyTextField.d.ts +8 -0
- package/dist/src/components/ReadOnlyField/WithReadOnlyWrapper.d.ts +28 -0
- package/dist/src/components/ReadOnlyField/index.d.ts +1 -0
- package/dist/src/components/SegmentedControl/SegmentedControl.d.ts +21 -3
- package/dist/src/components/Slider/Slider.d.ts +18 -2
- package/dist/src/components/Stack/Stack.d.ts +2 -5
- package/dist/src/components/Stepper/Stepper.d.ts +41 -2
- package/dist/src/components/Switch/Switch.d.ts +10 -3
- package/dist/src/components/Switch/SwitchGroup.d.ts +13 -0
- package/dist/src/components/Table/Table.d.ts +2 -1
- package/dist/src/components/Tabs/Tabs.d.ts +20 -3
- package/dist/src/components/Text/Text.d.ts +2 -16
- package/dist/src/components/TextArea/TextArea.d.ts +12 -2
- package/dist/src/components/TextField/TextField.d.ts +12 -2
- package/dist/src/components/TimePicker/TimePicker.d.ts +2 -1
- package/dist/src/components/Timeline/Timeline.d.ts +15 -2
- package/dist/src/components/Timeline/TimelineItem.d.ts +18 -0
- package/dist/src/components/Title/Title.d.ts +2 -15
- package/dist/src/components/Toast/Toast.d.ts +20 -2
- package/dist/src/components/Tooltip/Tooltip.d.ts +28 -3
- 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 +14 -3
- package/src/components/Accordion/Accordion.module.css +294 -56
- package/src/components/Accordion/Accordion.stories.tsx +131 -21
- package/src/components/Accordion/Accordion.tsx +260 -5
- package/src/components/AssistiveElement/AssistiveElement.module.css +114 -20
- package/src/components/AssistiveElement/AssistiveElement.stories.tsx +60 -20
- package/src/components/AssistiveElement/AssistiveElement.tsx +81 -5
- package/src/components/Autocomplete/Autocomplete.module.css +319 -42
- package/src/components/Autocomplete/Autocomplete.stories.tsx +175 -23
- package/src/components/Autocomplete/Autocomplete.tsx +181 -6
- package/src/components/Avatar/Avatar.module.css +343 -73
- package/src/components/Avatar/Avatar.stories.tsx +94 -22
- package/src/components/Avatar/Avatar.tsx +99 -6
- package/src/components/Badge/Badge.module.css +127 -29
- package/src/components/Badge/Badge.stories.tsx +65 -22
- package/src/components/Badge/Badge.tsx +67 -6
- package/src/components/Breadcrumb/Breadcrumb.module.css +25 -5
- package/src/components/Breadcrumb/Breadcrumb.stories.tsx +57 -22
- package/src/components/Breadcrumb/Breadcrumb.tsx +59 -6
- 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 +154 -38
- package/src/components/Card/Card.stories.tsx +117 -19
- package/src/components/Card/Card.tsx +181 -5
- package/src/components/Checkbox/Checkbox.module.css +249 -39
- package/src/components/Checkbox/Checkbox.stories.tsx +81 -19
- package/src/components/Checkbox/Checkbox.tsx +246 -5
- package/src/components/Checkbox/CheckboxGroup.stories.tsx +139 -0
- package/src/components/Checkbox/CheckboxGroup.tsx +137 -0
- package/src/components/Checkbox/index.ts +6 -1
- package/src/components/Chip/Chip.module.css +246 -43
- package/src/components/Chip/Chip.stories.tsx +101 -21
- package/src/components/Chip/Chip.tsx +136 -6
- 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.module.css +291 -41
- package/src/components/Dropdown/Dropdown.stories.tsx +80 -21
- package/src/components/Dropdown/Dropdown.tsx +180 -6
- 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.module.css +92 -0
- package/src/components/FormControlLayout/FormControlLayout.stories.tsx +67 -20
- package/src/components/FormControlLayout/FormControlLayout.tsx +69 -4
- package/src/components/FormControlWrapper/FormControlWrapper.module.css +87 -0
- package/src/components/FormControlWrapper/FormControlWrapper.stories.tsx +116 -22
- package/src/components/FormControlWrapper/FormControlWrapper.tsx +126 -6
- package/src/components/Group/Group.stories.tsx +6 -30
- package/src/components/Group/Group.tsx +14 -9
- package/src/components/HoverCard/HoverCard.module.css +90 -22
- package/src/components/HoverCard/HoverCard.stories.tsx +158 -21
- package/src/components/HoverCard/HoverCard.tsx +147 -5
- package/src/components/Label/Label.module.css +140 -35
- package/src/components/Label/Label.stories.tsx +108 -21
- package/src/components/Label/Label.tsx +82 -5
- 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.module.css +285 -51
- package/src/components/Menu/Menu.stories.tsx +229 -25
- package/src/components/Menu/Menu.tsx +73 -6
- package/src/components/Modal/Modal.module.css +171 -35
- package/src/components/Modal/Modal.stories.tsx +66 -22
- package/src/components/Modal/Modal.tsx +215 -5
- package/src/components/NumberInput/NumberInput.module.css +276 -42
- package/src/components/NumberInput/NumberInput.stories.tsx +83 -20
- package/src/components/NumberInput/NumberInput.tsx +136 -6
- package/src/components/Pagination/IMPLEMENTATION_NOTES.md +3 -0
- package/src/components/Pagination/Pagination.icons.tsx +66 -0
- package/src/components/Pagination/Pagination.module.css +234 -20
- package/src/components/Pagination/Pagination.stories.tsx +34 -21
- package/src/components/Pagination/Pagination.tsx +74 -6
- package/src/components/Panel/Panel.module.css +206 -38
- package/src/components/Panel/Panel.stories.tsx +214 -22
- package/src/components/Panel/Panel.tsx +130 -5
- package/src/components/Radio/Radio.module.css +235 -37
- package/src/components/Radio/Radio.stories.tsx +77 -19
- package/src/components/Radio/Radio.tsx +210 -5
- package/src/components/Radio/RadioGroup.stories.tsx +117 -0
- package/src/components/Radio/RadioGroup.tsx +125 -0
- package/src/components/ReadOnlyField/ReadOnlyBooleanField.tsx +21 -0
- package/src/components/ReadOnlyField/ReadOnlyField.module.css +53 -15
- package/src/components/ReadOnlyField/ReadOnlyField.stories.tsx +147 -19
- package/src/components/ReadOnlyField/ReadOnlyField.tsx +105 -5
- package/src/components/ReadOnlyField/ReadOnlySwitchField.tsx +21 -0
- package/src/components/ReadOnlyField/ReadOnlyTextField.tsx +48 -0
- package/src/components/ReadOnlyField/WithReadOnlyWrapper.tsx +93 -0
- package/src/components/ReadOnlyField/index.ts +1 -0
- package/src/components/SegmentedControl/SegmentedControl.module.css +179 -47
- package/src/components/SegmentedControl/SegmentedControl.stories.tsx +102 -20
- package/src/components/SegmentedControl/SegmentedControl.tsx +140 -6
- package/src/components/Slider/Slider.module.css +539 -86
- package/src/components/Slider/Slider.stories.tsx +157 -19
- package/src/components/Slider/Slider.tsx +283 -5
- 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.module.css +410 -71
- package/src/components/Stepper/Stepper.stories.tsx +146 -20
- package/src/components/Stepper/Stepper.tsx +147 -6
- package/src/components/Switch/Switch.module.css +259 -39
- package/src/components/Switch/Switch.stories.tsx +98 -19
- package/src/components/Switch/Switch.tsx +200 -6
- package/src/components/Switch/SwitchGroup.stories.tsx +132 -0
- package/src/components/Switch/SwitchGroup.tsx +120 -0
- 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.module.css +422 -79
- package/src/components/Tabs/Tabs.stories.tsx +156 -20
- package/src/components/Tabs/Tabs.tsx +86 -6
- package/src/components/Text/Text.stories.tsx +5 -17
- package/src/components/Text/Text.tsx +1 -15
- package/src/components/TextArea/TextArea.module.css +155 -32
- package/src/components/TextArea/TextArea.stories.tsx +80 -21
- package/src/components/TextArea/TextArea.tsx +146 -6
- package/src/components/TextField/TextField.module.css +261 -42
- package/src/components/TextField/TextField.stories.tsx +147 -20
- package/src/components/TextField/TextField.tsx +169 -6
- package/src/components/TimePicker/TimePicker.stories.tsx +2 -19
- package/src/components/TimePicker/TimePicker.tsx +3 -1
- package/src/components/Timeline/Timeline.module.css +365 -76
- package/src/components/Timeline/Timeline.stories.tsx +114 -21
- package/src/components/Timeline/Timeline.tsx +83 -5
- package/src/components/Timeline/TimelineItem.tsx +90 -0
- package/src/components/Title/Title.stories.tsx +0 -18
- package/src/components/Title/Title.tsx +1 -7
- package/src/components/Toast/Toast.module.css +166 -28
- package/src/components/Toast/Toast.stories.tsx +54 -22
- package/src/components/Toast/Toast.tsx +124 -5
- package/src/components/Tooltip/Tooltip.module.css +89 -24
- package/src/components/Tooltip/Tooltip.stories.tsx +152 -22
- package/src/components/Tooltip/Tooltip.tsx +88 -5
- 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,3 +1,52 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
import { RecursicaOverStyled } from '../../utils/filterStylingProps';
|
|
2
|
+
import { RecursicaPanelProps } from '@recursica/adapter-common';
|
|
3
|
+
/**
|
|
4
|
+
* Recursica Panel root props. Extends Mui Drawer.
|
|
5
|
+
*/
|
|
6
|
+
export type PanelProps = RecursicaOverStyled<RecursicaPanelProps>;
|
|
7
|
+
/**
|
|
8
|
+
* Recursica Panel component wrapping Mui's Drawer.
|
|
9
|
+
*
|
|
10
|
+
* Panels slide in or expand from the edge of the screen to reveal
|
|
11
|
+
* additional content or functionality. They are commonly used to provide
|
|
12
|
+
* supplementary information, navigation options, or toolsets without
|
|
13
|
+
* cluttering the main interface.
|
|
14
|
+
*
|
|
15
|
+
* ```tsx
|
|
16
|
+
* <Panel opened={opened} onClose={close} title="Panel Title" position="right">
|
|
17
|
+
* <Panel.Body>
|
|
18
|
+
* Content goes here
|
|
19
|
+
* </Panel.Body>
|
|
20
|
+
* </Panel>
|
|
21
|
+
* ```
|
|
22
|
+
*
|
|
23
|
+
* Mui Drawer sub-components available via dot-notation:
|
|
24
|
+
* - `Panel.Header` — Top section with title and close button
|
|
25
|
+
* - `Panel.Title` — Title text within the header
|
|
26
|
+
* - `Panel.CloseButton` — Close button within the header
|
|
27
|
+
* - `Panel.Body` — Scrollable body content area
|
|
28
|
+
* - `Panel.Content` — Outer content container
|
|
29
|
+
* - `Panel.Overlay` — Background overlay
|
|
30
|
+
* - `Panel.Root` — Root element for advanced composition
|
|
31
|
+
* - `Panel.Stack` — Stacked drawer context
|
|
32
|
+
*/
|
|
33
|
+
declare const PanelBase: {
|
|
34
|
+
({ overStyled, position, keepMounted, wrapHeaderText, ...rest }: PanelProps & {
|
|
35
|
+
position?: "left" | "right" | "top" | "bottom";
|
|
36
|
+
opened?: boolean;
|
|
37
|
+
}): import("react/jsx-runtime").JSX.Element;
|
|
38
|
+
displayName: string;
|
|
39
|
+
};
|
|
40
|
+
export type PanelFooterProps = RecursicaOverStyled<React.HTMLAttributes<HTMLDivElement>>;
|
|
41
|
+
/**
|
|
42
|
+
* Panel footer section with action buttons.
|
|
43
|
+
* Separated from the body by a divider. Remains fixed at the bottom.
|
|
44
|
+
* This is a Recursica-specific sub-component; Mui Drawer does not
|
|
45
|
+
* natively provide a footer.
|
|
46
|
+
*/
|
|
47
|
+
export declare const PanelFooter: import('react').ForwardRefExoticComponent<PanelFooterProps & import('react').RefAttributes<HTMLDivElement>>;
|
|
48
|
+
type PanelComponent = typeof PanelBase & {
|
|
49
|
+
Footer: typeof PanelFooter;
|
|
50
|
+
};
|
|
51
|
+
export declare const Panel: PanelComponent;
|
|
52
|
+
export {};
|
|
@@ -1,3 +1,13 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
import { RadioProps as MuiRadioProps } from '@mui/material';
|
|
2
|
+
import { ReadOnlyControlProps, RequireAccessibleLabel, RecursicaRadioProps } from '@recursica/adapter-common';
|
|
3
|
+
import { RadioGroup } from './RadioGroup';
|
|
4
|
+
import { RecursicaOverStyled } from '../../utils/filterStylingProps';
|
|
5
|
+
import { FormControlLayoutProps } from '../FormControlLayout/FormControlLayout';
|
|
6
|
+
export type RadioWrapperProps = Omit<MuiRadioProps, "size" | "color"> & RecursicaRadioProps & ReadOnlyControlProps & Pick<FormControlLayoutProps, "formLayout" | "labelSize" | "controlMaxWidth" | "controlMinWidth">;
|
|
7
|
+
export type RecursicaRadioPropsAlias = RequireAccessibleLabel<RadioWrapperProps>;
|
|
8
|
+
export type RadioProps = RecursicaOverStyled<RecursicaRadioPropsAlias>;
|
|
9
|
+
type RadioComponent = React.ForwardRefExoticComponent<RadioProps & React.RefAttributes<HTMLInputElement>> & {
|
|
10
|
+
Group: typeof RadioGroup;
|
|
11
|
+
};
|
|
12
|
+
export declare const Radio: RadioComponent;
|
|
13
|
+
export {};
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { default as React } from 'react';
|
|
2
|
+
import { RadioGroupProps as MuiRadioGroupProps } from '@mui/material';
|
|
3
|
+
import { ReadOnlyControlProps, RecursicaRadioGroupProps as BaseRecursicaRadioGroupProps } from '@recursica/adapter-common';
|
|
4
|
+
import { RecursicaOverStyled } from '../../utils/filterStylingProps';
|
|
5
|
+
import { RecursicaFormControlWrapperProps } from '../FormControlWrapper/FormControlWrapper';
|
|
6
|
+
export interface RecursicaRadioGroupProps extends Omit<MuiRadioGroupProps, "size" | "labelProps" | "classes" | "ref" | "onChange" | "value" | "defaultValue">, Omit<RecursicaFormControlWrapperProps, "controlMaxWidth" | "controlMinWidth" | "classes" | "onChange" | keyof MuiRadioGroupProps>, ReadOnlyControlProps, BaseRecursicaRadioGroupProps {
|
|
7
|
+
}
|
|
8
|
+
export type RadioGroupProps = RecursicaOverStyled<RecursicaRadioGroupProps>;
|
|
9
|
+
export declare const RadioGroup: React.ForwardRefExoticComponent<RadioGroupProps & React.RefAttributes<HTMLDivElement>>;
|
|
@@ -1,3 +1,5 @@
|
|
|
1
1
|
import { default as React } from 'react';
|
|
2
|
-
|
|
3
|
-
|
|
2
|
+
import { ReadOnlyControlProps, RecursicaReadOnlyFieldProps as BaseRecursicaReadOnlyFieldProps } from '@recursica/adapter-common';
|
|
3
|
+
import { RecursicaFormControlWrapperProps } from '../FormControlWrapper/FormControlWrapper';
|
|
4
|
+
export type ReadOnlyFieldProps = Omit<RecursicaFormControlWrapperProps, "error" | "focused" | "controlMaxWidth" | "controlMinWidth"> & ReadOnlyControlProps & BaseRecursicaReadOnlyFieldProps;
|
|
5
|
+
export declare const ReadOnlyField: React.ForwardRefExoticComponent<Omit<ReadOnlyFieldProps, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { default as React } from 'react';
|
|
2
|
+
import { RecursicaOverStyled } from '../../utils/filterStylingProps';
|
|
3
|
+
export interface RecursicaReadOnlyTextFieldProps {
|
|
4
|
+
/** The value strictly rendered as text output */
|
|
5
|
+
value?: any;
|
|
6
|
+
}
|
|
7
|
+
export type ReadOnlyTextFieldProps = RecursicaOverStyled<RecursicaReadOnlyTextFieldProps>;
|
|
8
|
+
export declare const ReadOnlyTextField: React.FC<ReadOnlyTextFieldProps>;
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { default as React } from 'react';
|
|
2
|
+
import { ReadOnlyFieldType } from '@recursica/adapter-common';
|
|
3
|
+
import { FormControlWrapperProps } from '../FormControlWrapper/FormControlWrapper';
|
|
4
|
+
export interface WithReadOnlyWrapperProps extends Omit<FormControlWrapperProps, "children" | "overStyled"> {
|
|
5
|
+
/** Injects whether the field defaults to reading mode natively */
|
|
6
|
+
readOnly?: boolean;
|
|
7
|
+
/** Explicit React component directly overtaking the baseline text renderer when read-only mode is active */
|
|
8
|
+
readOnlyComponent?: React.ElementType<any>;
|
|
9
|
+
/** Custom renderer explicitly responsible for formatting missing/empty value mappings (overriding default 'N/A') */
|
|
10
|
+
emptyValueComponent?: React.ElementType<{
|
|
11
|
+
value?: any;
|
|
12
|
+
}>;
|
|
13
|
+
/** The full native props dictionary securely forwarded into the custom readOnlyComponent if active */
|
|
14
|
+
readOnlyNativeProps?: any;
|
|
15
|
+
/** Instructs the underlying generic ReadOnlyField which raw visual structure to bridge automatically */
|
|
16
|
+
readOnlyType?: ReadOnlyFieldType;
|
|
17
|
+
/** The isolated raw data value intercepted explicitly into the ReadOnly formatters */
|
|
18
|
+
readOnlyValue?: any;
|
|
19
|
+
/** Safely enables deep overrides transparently bypassing block filters */
|
|
20
|
+
overStyled?: boolean;
|
|
21
|
+
/** The nested active node dynamically exposed exclusively when read-only bounds are disabled */
|
|
22
|
+
activeComponent: React.ReactNode;
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* Universal execution barrier trapping readOnly states globally.
|
|
26
|
+
* Natively delegates active logic down avoiding duplicative internal component bindings dynamically.
|
|
27
|
+
*/
|
|
28
|
+
export declare const WithReadOnlyWrapper: React.ForwardRefExoticComponent<Omit<WithReadOnlyWrapperProps, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
@@ -1,3 +1,21 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
import { ToggleButtonGroupProps as MuiSegmentedControlProps } from '@mui/material';
|
|
2
|
+
import { RecursicaOverStyled } from '../../utils/filterStylingProps';
|
|
3
|
+
import { RecursicaSegmentedControlProps } from '@recursica/adapter-common';
|
|
4
|
+
export type SegmentedControlProps = RecursicaOverStyled<Omit<MuiSegmentedControlProps, "variant" | "size" | "radius" | "color" | "classNames" | "className" | "disabled" | "value" | "onChange"> & {
|
|
5
|
+
className?: string;
|
|
6
|
+
classNames?: Partial<Record<string, string>>;
|
|
7
|
+
} & RecursicaSegmentedControlProps>;
|
|
8
|
+
/**
|
|
9
|
+
* Recursica SegmentedControl component wrapping Mui's SegmentedControl.
|
|
10
|
+
*/
|
|
11
|
+
export declare const SegmentedControl: import('react').ForwardRefExoticComponent<(Omit<Omit<Omit<MuiSegmentedControlProps, "className" | "color" | "value" | "classNames" | "onChange" | "variant" | "disabled" | "size" | "radius"> & {
|
|
12
|
+
className?: string;
|
|
13
|
+
classNames?: Partial<Record<string, string>>;
|
|
14
|
+
} & RecursicaSegmentedControlProps, import('@recursica/adapter-common').BlockedStylingKeys> & import('@recursica/adapter-common').ForbiddenStyles & {
|
|
15
|
+
overStyled?: false | undefined;
|
|
16
|
+
}, "ref"> | Omit<Omit<MuiSegmentedControlProps, "className" | "color" | "value" | "classNames" | "onChange" | "variant" | "disabled" | "size" | "radius"> & {
|
|
17
|
+
className?: string;
|
|
18
|
+
classNames?: Partial<Record<string, string>>;
|
|
19
|
+
} & RecursicaSegmentedControlProps & {
|
|
20
|
+
overStyled: true;
|
|
21
|
+
}, "ref">) & import('react').RefAttributes<HTMLDivElement>>;
|
|
@@ -1,3 +1,19 @@
|
|
|
1
1
|
import { default as React } from 'react';
|
|
2
|
-
|
|
3
|
-
|
|
2
|
+
import { SliderProps as MuiSliderProps } from '@mui/material';
|
|
3
|
+
import { ReadOnlyControlProps, RecursicaSliderProps as BaseRecursicaSliderProps } from '@recursica/adapter-common';
|
|
4
|
+
import { RecursicaOverStyled } from '../../utils/filterStylingProps';
|
|
5
|
+
import { RecursicaFormControlWrapperProps } from '../FormControlWrapper/FormControlWrapper';
|
|
6
|
+
export interface RecursicaSliderProps extends Omit<MuiSliderProps, "size" | "color" | "classes" | "onChange" | "onChangeCommitted">, Omit<RecursicaFormControlWrapperProps, "controlMaxWidth" | "controlMinWidth" | "error" | "required" | "withAsterisk" | keyof MuiSliderProps>, ReadOnlyControlProps, BaseRecursicaSliderProps {
|
|
7
|
+
}
|
|
8
|
+
export type SliderProps = RecursicaOverStyled<RecursicaSliderProps>;
|
|
9
|
+
/**
|
|
10
|
+
* Recursica Slider component wrapping Mui's Slider.
|
|
11
|
+
*
|
|
12
|
+
* Implements a bidirectional text input field next to the slider track, responsive layouts,
|
|
13
|
+
* custom typography-bound min/max labels, an optional leading icon, and an explicit read-only layout.
|
|
14
|
+
*/
|
|
15
|
+
export declare const Slider: React.ForwardRefExoticComponent<(Omit<Omit<RecursicaSliderProps, import('@recursica/adapter-common').BlockedStylingKeys> & import('@recursica/adapter-common').ForbiddenStyles & {
|
|
16
|
+
overStyled?: false | undefined;
|
|
17
|
+
}, "ref"> | Omit<RecursicaSliderProps & {
|
|
18
|
+
overStyled: true;
|
|
19
|
+
}, "ref">) & React.RefAttributes<HTMLDivElement>>;
|
|
@@ -1,9 +1,6 @@
|
|
|
1
1
|
import { default as React } from 'react';
|
|
2
2
|
import { StackProps as MUIStackProps } from '@mui/material';
|
|
3
|
-
import {
|
|
4
|
-
|
|
5
|
-
children?: React.ReactNode;
|
|
6
|
-
gap?: MUIStackProps["spacing"] | RecursicaSpacing;
|
|
7
|
-
}
|
|
3
|
+
import { OmitSx } from '../../utils/filterStylingProps';
|
|
4
|
+
import { RecursicaStackProps } from '@recursica/adapter-common';
|
|
8
5
|
export type StackProps = OmitSx<Omit<MUIStackProps, "spacing"> & RecursicaStackProps>;
|
|
9
6
|
export declare const Stack: React.ForwardRefExoticComponent<Omit<StackProps, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
@@ -1,3 +1,42 @@
|
|
|
1
1
|
import { default as React } from 'react';
|
|
2
|
-
|
|
3
|
-
|
|
2
|
+
import { StepProps as MuiStepProps, StepLabelProps as MuiStepLabelProps, StepButtonProps as MuiStepButtonProps, StepConnectorProps as MuiStepConnectorProps } from '@mui/material';
|
|
3
|
+
import { RecursicaOverStyled } from '../../utils/filterStylingProps';
|
|
4
|
+
import { RecursicaStepperProps } from '@recursica/adapter-common';
|
|
5
|
+
export type StepperProps = RecursicaOverStyled<RecursicaStepperProps>;
|
|
6
|
+
export declare const Stepper: React.ForwardRefExoticComponent<StepperProps & React.RefAttributes<HTMLDivElement>>;
|
|
7
|
+
export type StepProps = RecursicaOverStyled<MuiStepProps>;
|
|
8
|
+
export declare const Step: React.ForwardRefExoticComponent<(Omit<Omit<MuiStepProps, import('@recursica/adapter-common').BlockedStylingKeys> & import('@recursica/adapter-common').ForbiddenStyles & {
|
|
9
|
+
overStyled?: false | undefined;
|
|
10
|
+
}, "ref"> | Omit<{
|
|
11
|
+
component?: React.ElementType | undefined;
|
|
12
|
+
} & import('@mui/material').StepOwnProps & import('@mui/material/OverridableComponent').CommonProps & Omit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "className" | "classes" | "style" | "sx" | "children" | "disabled" | "expanded" | "component" | "last" | "active" | "index" | "completed"> & {
|
|
13
|
+
component?: React.ElementType | undefined;
|
|
14
|
+
} & {
|
|
15
|
+
overStyled: true;
|
|
16
|
+
}, "ref">) & React.RefAttributes<HTMLDivElement>>;
|
|
17
|
+
export type StepButtonProps = RecursicaOverStyled<MuiStepButtonProps>;
|
|
18
|
+
export declare const StepButton: React.ForwardRefExoticComponent<(Omit<Omit<MuiStepButtonProps, import('@recursica/adapter-common').BlockedStylingKeys> & import('@recursica/adapter-common').ForbiddenStyles & {
|
|
19
|
+
overStyled?: false | undefined;
|
|
20
|
+
}, "ref"> | Omit<import('@mui/material').StepButtonOwnProps & Omit<import('@mui/material').ButtonBaseOwnProps, "classes"> & import('@mui/material/OverridableComponent').CommonProps & Omit<React.DetailedHTMLProps<React.ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>, "className" | "classes" | "style" | "sx" | "tabIndex" | "children" | "disabled" | "action" | "centerRipple" | "disableRipple" | "disableTouchRipple" | "focusRipple" | "focusVisibleClassName" | "LinkComponent" | "onFocusVisible" | "TouchRippleProps" | "touchRippleRef" | "icon" | "optional"> & {
|
|
21
|
+
component?: React.ElementType | undefined;
|
|
22
|
+
} & {
|
|
23
|
+
overStyled: true;
|
|
24
|
+
}, "ref">) & React.RefAttributes<HTMLButtonElement>>;
|
|
25
|
+
export type StepLabelProps = RecursicaOverStyled<MuiStepLabelProps & {
|
|
26
|
+
description?: React.ReactNode;
|
|
27
|
+
}>;
|
|
28
|
+
export declare const StepLabel: React.ForwardRefExoticComponent<(Omit<Omit<MuiStepLabelProps & {
|
|
29
|
+
description?: React.ReactNode;
|
|
30
|
+
}, import('@recursica/adapter-common').BlockedStylingKeys> & import('@recursica/adapter-common').ForbiddenStyles & {
|
|
31
|
+
overStyled?: false | undefined;
|
|
32
|
+
}, "ref"> | Omit<MuiStepLabelProps & {
|
|
33
|
+
description?: React.ReactNode;
|
|
34
|
+
} & {
|
|
35
|
+
overStyled: true;
|
|
36
|
+
}, "ref">) & React.RefAttributes<HTMLDivElement>>;
|
|
37
|
+
export type StepConnectorProps = RecursicaOverStyled<MuiStepConnectorProps>;
|
|
38
|
+
export declare const StepConnector: React.ForwardRefExoticComponent<(Omit<Omit<MuiStepConnectorProps, import('@recursica/adapter-common').BlockedStylingKeys> & import('@recursica/adapter-common').ForbiddenStyles & {
|
|
39
|
+
overStyled?: false | undefined;
|
|
40
|
+
}, "ref"> | Omit<MuiStepConnectorProps & {
|
|
41
|
+
overStyled: true;
|
|
42
|
+
}, "ref">) & React.RefAttributes<HTMLDivElement>>;
|
|
@@ -1,3 +1,10 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
import { SwitchProps as MuiSwitchProps } from '@mui/material';
|
|
2
|
+
import { ReadOnlyControlProps, RequireAccessibleLabel, RecursicaSwitchProps } from '@recursica/adapter-common';
|
|
3
|
+
import { RecursicaOverStyled } from '../../utils/filterStylingProps';
|
|
4
|
+
import { FormControlLayoutProps } from '../FormControlLayout/FormControlLayout';
|
|
5
|
+
export type SwitchWrapperProps = Omit<MuiSwitchProps, "size" | "color" | "radius" | "variant"> & RecursicaSwitchProps & ReadOnlyControlProps & Pick<FormControlLayoutProps, "formLayout" | "labelSize" | "controlMaxWidth" | "controlMinWidth">;
|
|
6
|
+
export type RecursicaSwitchPropsAlias = RequireAccessibleLabel<SwitchWrapperProps>;
|
|
7
|
+
export type SwitchProps = RecursicaOverStyled<RecursicaSwitchPropsAlias>;
|
|
8
|
+
type SwitchComponent = any;
|
|
9
|
+
export declare const Switch: SwitchComponent;
|
|
10
|
+
export {};
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { default as React } from 'react';
|
|
2
|
+
import { FormGroupProps as MuiFormGroupProps } from '@mui/material';
|
|
3
|
+
import { ReadOnlyControlProps, RecursicaSwitchGroupProps as BaseRecursicaSwitchGroupProps } from '@recursica/adapter-common';
|
|
4
|
+
import { RecursicaOverStyled } from '../../utils/filterStylingProps';
|
|
5
|
+
import { RecursicaFormControlWrapperProps } from '../FormControlWrapper/FormControlWrapper';
|
|
6
|
+
export interface RecursicaSwitchGroupProps extends Omit<MuiFormGroupProps, "size" | "labelProps" | "onChange" | "classes" | "ref" | "value" | "defaultValue">, Omit<RecursicaFormControlWrapperProps, "controlMaxWidth" | "controlMinWidth" | "classes" | "onChange">, ReadOnlyControlProps, BaseRecursicaSwitchGroupProps {
|
|
7
|
+
}
|
|
8
|
+
export type SwitchGroupProps = RecursicaOverStyled<RecursicaSwitchGroupProps>;
|
|
9
|
+
export declare const SwitchGroup: React.ForwardRefExoticComponent<(Omit<Omit<RecursicaSwitchGroupProps, import('@recursica/adapter-common').BlockedStylingKeys> & import('@recursica/adapter-common').ForbiddenStyles & {
|
|
10
|
+
overStyled?: false | undefined;
|
|
11
|
+
}, "ref"> | Omit<RecursicaSwitchGroupProps & {
|
|
12
|
+
overStyled: true;
|
|
13
|
+
}, "ref">) & React.RefAttributes<HTMLDivElement>>;
|
|
@@ -1,3 +1,4 @@
|
|
|
1
1
|
import { default as React } from 'react';
|
|
2
|
-
|
|
2
|
+
import { RecursicaTableProps } from '@recursica/adapter-common';
|
|
3
|
+
export type TableProps = React.HTMLAttributes<HTMLDivElement> & RecursicaTableProps;
|
|
3
4
|
export declare const Table: React.FC<TableProps>;
|
|
@@ -1,3 +1,20 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
import { TabProps as MuiTabProps } from '@mui/material';
|
|
2
|
+
import { RecursicaOverStyled } from '../../utils/filterStylingProps';
|
|
3
|
+
import { RecursicaTabsProps } from '@recursica/adapter-common';
|
|
4
|
+
import { TabPanelProps as MuiTabPanelProps } from '@mui/lab';
|
|
5
|
+
export type TabsProps = RecursicaOverStyled<RecursicaTabsProps>;
|
|
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 & {
|
|
9
|
+
overStyled?: false | undefined;
|
|
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"> & {
|
|
11
|
+
component?: React.ElementType | undefined;
|
|
12
|
+
} & {
|
|
13
|
+
overStyled: true;
|
|
14
|
+
}, "ref">) & import('react').RefAttributes<HTMLDivElement>>;
|
|
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 & {
|
|
17
|
+
overStyled?: false | undefined;
|
|
18
|
+
}, "ref"> | Omit<MuiTabPanelProps & {
|
|
19
|
+
overStyled: true;
|
|
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,3 +1,13 @@
|
|
|
1
1
|
import { default as React } from 'react';
|
|
2
|
-
|
|
3
|
-
|
|
2
|
+
import { TextFieldProps as MuiTextareaProps } from '@mui/material';
|
|
3
|
+
import { ReadOnlyControlProps, RecursicaTextAreaProps as BaseRecursicaTextAreaProps } from '@recursica/adapter-common';
|
|
4
|
+
import { RecursicaOverStyled } from '../../utils/filterStylingProps';
|
|
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, BaseRecursicaTextAreaProps {
|
|
7
|
+
}
|
|
8
|
+
export type TextAreaProps = RecursicaOverStyled<RecursicaTextAreaProps>;
|
|
9
|
+
export declare const TextArea: React.ForwardRefExoticComponent<(Omit<Omit<RecursicaTextAreaProps, import('@recursica/adapter-common').BlockedStylingKeys> & import('@recursica/adapter-common').ForbiddenStyles & {
|
|
10
|
+
overStyled?: false | undefined;
|
|
11
|
+
}, "ref"> | Omit<RecursicaTextAreaProps & {
|
|
12
|
+
overStyled: true;
|
|
13
|
+
}, "ref">) & React.RefAttributes<HTMLTextAreaElement>>;
|
|
@@ -1,3 +1,13 @@
|
|
|
1
1
|
import { default as React } from 'react';
|
|
2
|
-
|
|
3
|
-
|
|
2
|
+
import { InputBaseProps } from '@mui/material';
|
|
3
|
+
import { ReadOnlyControlProps, RecursicaTextFieldProps as BaseRecursicaTextFieldProps } from '@recursica/adapter-common';
|
|
4
|
+
import { RecursicaOverStyled } from '../../utils/filterStylingProps';
|
|
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, BaseRecursicaTextFieldProps {
|
|
7
|
+
}
|
|
8
|
+
export type TextFieldProps = RecursicaOverStyled<RecursicaTextFieldProps>;
|
|
9
|
+
export declare const TextField: React.ForwardRefExoticComponent<(Omit<Omit<RecursicaTextFieldProps, import('@recursica/adapter-common').BlockedStylingKeys> & import('@recursica/adapter-common').ForbiddenStyles & {
|
|
10
|
+
overStyled?: false | undefined;
|
|
11
|
+
}, "ref"> | Omit<RecursicaTextFieldProps & {
|
|
12
|
+
overStyled: true;
|
|
13
|
+
}, "ref">) & React.RefAttributes<HTMLInputElement>>;
|
|
@@ -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>;
|
|
@@ -1,3 +1,16 @@
|
|
|
1
1
|
import { default as React } from 'react';
|
|
2
|
-
|
|
3
|
-
|
|
2
|
+
import { TimelineProps as MuiTimelineProps } from '@mui/lab/Timeline';
|
|
3
|
+
import { RecursicaOverStyled } from '../../utils/filterStylingProps';
|
|
4
|
+
import { TimelineItem } from './TimelineItem';
|
|
5
|
+
import { RecursicaTimelineProps } from '@recursica/adapter-common';
|
|
6
|
+
/**
|
|
7
|
+
* Properties for the strictly-tokenized Timeline component.
|
|
8
|
+
* Native Mui abstract properties like `color`, `radius`, `bulletSize`, and `lineWidth`
|
|
9
|
+
* have been stripped out to strictly enforce the structural mappings of the Recursica UI Kit.
|
|
10
|
+
*/
|
|
11
|
+
export type TimelineProps = RecursicaOverStyled<Omit<MuiTimelineProps, "color" | "radius" | "bulletSize" | "lineWidth"> & RecursicaTimelineProps>;
|
|
12
|
+
interface TimelineComponent extends React.ForwardRefExoticComponent<TimelineProps & React.RefAttributes<HTMLDivElement>> {
|
|
13
|
+
Item: typeof TimelineItem;
|
|
14
|
+
}
|
|
15
|
+
export declare const Timeline: TimelineComponent;
|
|
16
|
+
export {};
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { default as React } from 'react';
|
|
2
|
+
import { TimelineItemProps as MuiTimelineItemProps } from '@mui/lab/TimelineItem';
|
|
3
|
+
import { RecursicaOverStyled } from '../../utils/filterStylingProps';
|
|
4
|
+
import { RecursicaTimelineItemProps } from '@recursica/adapter-common';
|
|
5
|
+
export type TimelineItemProps = RecursicaOverStyled<Omit<MuiTimelineItemProps, "radius" | "color" | "lineVariant"> & RecursicaTimelineItemProps>;
|
|
6
|
+
/**
|
|
7
|
+
* The individual item component for the Timeline.
|
|
8
|
+
*
|
|
9
|
+
* **Recursica Abstract:**
|
|
10
|
+
* The `Timeline.Item` has been extended to support a `timestamp` string natively,
|
|
11
|
+
* rendering it below the body content. It also accepts a `bulletVariant` to morph
|
|
12
|
+
* the structural dimensions of the node circle automatically.
|
|
13
|
+
*/
|
|
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 & {
|
|
15
|
+
overStyled?: false | undefined;
|
|
16
|
+
}, "ref"> | Omit<Omit<MuiTimelineItemProps, "color" | "radius" | "lineVariant"> & RecursicaTimelineItemProps & {
|
|
17
|
+
overStyled: true;
|
|
18
|
+
}, "ref">) & React.RefAttributes<HTMLDivElement>>;
|
|
@@ -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,3 +1,21 @@
|
|
|
1
1
|
import { default as React } from 'react';
|
|
2
|
-
|
|
3
|
-
|
|
2
|
+
import { AlertProps as MuiAlertProps } from '@mui/material';
|
|
3
|
+
import { RecursicaOverStyled } from '../../utils/filterStylingProps';
|
|
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;
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* Toast component wrapping Mui's Alert.
|
|
13
|
+
*
|
|
14
|
+
* Can be used as a standalone visual component to display a notification or message.
|
|
15
|
+
*/
|
|
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 & {
|
|
18
|
+
overStyled?: false | undefined;
|
|
19
|
+
}, "ref"> | Omit<Omit<MuiAlertProps, "color" | "variant" | "onClose" | "radius"> & RecursicaToastProps & {
|
|
20
|
+
overStyled: true;
|
|
21
|
+
}, "ref">) & React.RefAttributes<HTMLDivElement>>;
|
|
@@ -1,3 +1,28 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
import { TooltipProps as MuiTooltipProps } from '@mui/material';
|
|
2
|
+
import { RecursicaOverStyled } from '../../utils/filterStylingProps';
|
|
3
|
+
import { RecursicaTooltipProps } from '@recursica/adapter-common';
|
|
4
|
+
/**
|
|
5
|
+
* Recursica Tooltip component wrapping Mui's Tooltip.
|
|
6
|
+
*
|
|
7
|
+
* Displays a floating label when the user hovers over or focuses a target element.
|
|
8
|
+
* Unlike HoverCard, Tooltip is a single component (not composable) — content is
|
|
9
|
+
* passed via the `label` prop, and the trigger is passed as `children`.
|
|
10
|
+
*
|
|
11
|
+
* ```tsx
|
|
12
|
+
* <Tooltip label="Helpful information" withBeak>
|
|
13
|
+
* <Button>Hover me</Button>
|
|
14
|
+
* </Tooltip>
|
|
15
|
+
* ```
|
|
16
|
+
*
|
|
17
|
+
* Static sub-components available via dot-notation:
|
|
18
|
+
* - `// Tooltip.Floating` — Tooltip that follows the cursor
|
|
19
|
+
* - `// Tooltip.Group` — Shared hover delay group for multiple tooltips
|
|
20
|
+
*/
|
|
21
|
+
export type TooltipProps = RecursicaOverStyled<MuiTooltipProps & RecursicaTooltipProps>;
|
|
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;
|
|
27
|
+
displayName: string;
|
|
28
|
+
};
|
|
@@ -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)
|