@recursica/mantine-adapter 0.23.0 → 0.26.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 +32 -0
- package/SETUP.md +79 -0
- package/USAGE.md +55 -0
- package/dist/mantine-adapter.cjs +1 -1
- package/dist/mantine-adapter.cjs.map +1 -1
- package/dist/mantine-adapter.css +1 -1
- package/dist/mantine-adapter.js +928 -878
- package/dist/mantine-adapter.js.map +1 -1
- package/dist/src/components/Accordion/Accordion.d.ts +4 -24
- package/dist/src/components/AssistiveElement/AssistiveElement.d.ts +1 -6
- package/dist/src/components/AutoComplete/AutoComplete.d.ts +7 -3
- package/dist/src/components/Avatar/Avatar.d.ts +2 -6
- package/dist/src/components/Badge/Badge.d.ts +2 -5
- package/dist/src/components/Breadcrumb/Breadcrumb.d.ts +1 -2
- package/dist/src/components/Button/Button.d.ts +2 -16
- package/dist/src/components/Card/Card.d.ts +4 -6
- package/dist/src/components/Checkbox/Checkbox.d.ts +4 -4
- package/dist/src/components/Checkbox/CheckboxGroup.d.ts +7 -3
- package/dist/src/components/Chip/Chip.d.ts +1 -10
- package/dist/src/components/Container/Container.d.ts +1 -11
- package/dist/src/components/DatePicker/DatePicker.d.ts +7 -3
- package/dist/src/components/Dropdown/Dropdown.d.ts +2 -4
- package/dist/src/components/Flex/Flex.d.ts +2 -11
- package/dist/src/components/FormControlLayout/FormControlLayout.d.ts +2 -7
- package/dist/src/components/FormControlWrapper/FormControlWrapper.d.ts +1 -15
- package/dist/src/components/Group/Group.d.ts +1 -10
- package/dist/src/components/HoverCard/HoverCard.d.ts +1 -11
- package/dist/src/components/Label/Label.d.ts +1 -14
- package/dist/src/components/Link/Link.d.ts +2 -11
- package/dist/src/components/Loader/Loader.d.ts +2 -7
- package/dist/src/components/Menu/Menu.d.ts +4 -3
- package/dist/src/components/Modal/Modal.d.ts +2 -1
- package/dist/src/components/NumberInput/NumberInput.d.ts +2 -4
- package/dist/src/components/Pagination/Pagination.d.ts +2 -4
- package/dist/src/components/Panel/Panel.d.ts +2 -9
- package/dist/src/components/Popover/Popover.d.ts +1 -11
- package/dist/src/components/Radio/Radio.d.ts +4 -4
- package/dist/src/components/Radio/RadioGroup.d.ts +7 -3
- package/dist/src/components/ReadOnlyField/ReadOnlyField.d.ts +2 -10
- package/dist/src/components/SegmentedControl/SegmentedControl.d.ts +1 -11
- package/dist/src/components/Slider/Slider.d.ts +7 -13
- package/dist/src/components/Stack/Stack.d.ts +2 -9
- package/dist/src/components/Stepper/Stepper.d.ts +2 -4
- package/dist/src/components/Switch/Switch.d.ts +4 -4
- package/dist/src/components/Switch/SwitchGroup.d.ts +7 -3
- package/dist/src/components/Table/Table.d.ts +2 -1
- package/dist/src/components/Tabs/Tabs.d.ts +2 -4
- package/dist/src/components/Text/Text.d.ts +2 -11
- package/dist/src/components/TextArea/TextArea.d.ts +2 -8
- package/dist/src/components/TextField/TextField.d.ts +7 -3
- 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 +1 -12
- package/dist/src/components/Title/Title.d.ts +1 -7
- package/dist/src/components/Toast/Toast.d.ts +1 -12
- package/dist/src/components/Tooltip/Tooltip.d.ts +1 -12
- package/dist/src/components/TransferList/TransferList.d.ts +2 -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 +9 -2
- package/src/components/Accordion/Accordion.module.css +1 -2
- package/src/components/Accordion/Accordion.tsx +15 -28
- package/src/components/AssistiveElement/AssistiveElement.tsx +1 -6
- package/src/components/AutoComplete/AutoComplete.tsx +4 -1
- package/src/components/Avatar/Avatar.tsx +1 -5
- package/src/components/Badge/Badge.tsx +1 -4
- package/src/components/Breadcrumb/Breadcrumb.tsx +1 -2
- package/src/components/Button/Button.module.css +18 -45
- package/src/components/Button/Button.tsx +1 -15
- package/src/components/Card/Card.tsx +11 -6
- package/src/components/Checkbox/Checkbox.module.css +6 -10
- package/src/components/Checkbox/Checkbox.tsx +19 -14
- package/src/components/Checkbox/CheckboxGroup.tsx +4 -1
- package/src/components/Chip/CHIP_IMPLEMENTATION_NOTES.md +4 -1
- package/src/components/Chip/Chip.module.css +36 -28
- package/src/components/Chip/Chip.tsx +8 -15
- package/src/components/Container/Container.tsx +1 -19
- package/src/components/DatePicker/DatePicker.module.css +2 -2
- package/src/components/DatePicker/DatePicker.tsx +4 -1
- package/src/components/Dropdown/Dropdown.tsx +4 -4
- package/src/components/Flex/Flex.tsx +2 -13
- package/src/components/FormControlLayout/FormControlLayout.module.css +6 -18
- package/src/components/FormControlLayout/FormControlLayout.tsx +4 -8
- package/src/components/FormControlWrapper/FormControlWrapper.tsx +2 -15
- package/src/components/Group/Group.tsx +2 -13
- package/src/components/HoverCard/HoverCard.tsx +1 -8
- package/src/components/Label/Label.module.css +5 -10
- package/src/components/Label/Label.tsx +1 -14
- package/src/components/Link/Link.module.css +4 -3
- package/src/components/Link/Link.stories.tsx +2 -3
- package/src/components/Link/Link.tsx +1 -10
- package/src/components/Loader/Loader.module.css +1 -2
- package/src/components/Loader/Loader.tsx +1 -7
- package/src/components/Menu/Menu.tsx +5 -1
- package/src/components/Modal/Modal.tsx +3 -1
- package/src/components/NumberInput/NumberInput.tsx +4 -4
- package/src/components/Pagination/Pagination.module.css +12 -24
- package/src/components/Pagination/Pagination.stories.tsx +0 -8
- package/src/components/Pagination/Pagination.tsx +5 -4
- package/src/components/Panel/Panel.tsx +1 -8
- package/src/components/Popover/Popover.tsx +1 -8
- package/src/components/Radio/Radio.module.css +4 -10
- package/src/components/Radio/Radio.tsx +19 -14
- package/src/components/Radio/RadioGroup.tsx +4 -1
- package/src/components/ReadOnlyField/ReadOnlyField.module.css +9 -18
- package/src/components/ReadOnlyField/ReadOnlyField.tsx +4 -11
- package/src/components/SegmentedControl/SegmentedControl.module.css +20 -44
- package/src/components/SegmentedControl/SegmentedControl.tsx +1 -11
- package/src/components/Slider/Slider.module.css +1 -4
- package/src/components/Slider/Slider.tsx +4 -12
- package/src/components/Stack/Stack.tsx +2 -11
- package/src/components/Stepper/Stepper.tsx +1 -7
- package/src/components/Switch/Switch.tsx +19 -11
- package/src/components/Switch/SwitchGroup.tsx +4 -1
- package/src/components/Table/Table.tsx +3 -1
- package/src/components/Tabs/Tabs.tsx +1 -7
- package/src/components/Text/Text.tsx +2 -16
- package/src/components/TextArea/TextArea.tsx +4 -8
- package/src/components/TextField/TextField.tsx +4 -1
- 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.tsx +1 -6
- package/src/components/Toast/Toast.tsx +1 -13
- package/src/components/Tooltip/Tooltip.tsx +1 -9
- package/src/components/TransferList/TransferList.tsx +3 -1
- package/src/utils/RequireAccessibleLabel.ts +1 -12
- package/src/utils/filterStylingProps.ts +7 -20
|
@@ -2,10 +2,8 @@ import { default as React } from 'react';
|
|
|
2
2
|
import { Pagination as MantinePagination, PaginationProps as MantinePaginationProps, PaginationRootProps as MantinePaginationRootProps } from '@mantine/core';
|
|
3
3
|
import { RecursicaOverStyled } from '../../utils/filterStylingProps';
|
|
4
4
|
import { PaginationIcon } from './Pagination.icons';
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
withLabels?: boolean;
|
|
8
|
-
};
|
|
5
|
+
import { RecursicaPaginationProps } from '@recursica/adapter-common';
|
|
6
|
+
export type PaginationProps = RecursicaOverStyled<MantinePaginationProps & RecursicaPaginationProps>;
|
|
9
7
|
export type PaginationRootProps = RecursicaOverStyled<MantinePaginationRootProps>;
|
|
10
8
|
export type PaginationEdgeProps<T extends React.ElementType> = React.ComponentProps<T> & {
|
|
11
9
|
/** If set to true, displays text labels alongside the icon. */
|
|
@@ -1,13 +1,6 @@
|
|
|
1
|
-
import { Drawer as MantineDrawer
|
|
1
|
+
import { Drawer as MantineDrawer } from '@mantine/core';
|
|
2
2
|
import { RecursicaOverStyled } from '../../utils/filterStylingProps';
|
|
3
|
-
|
|
4
|
-
/**
|
|
5
|
-
* If true, forces the header text to a single line and truncates with an ellipsis.
|
|
6
|
-
* Note: While the prop is named `wrapHeaderText` for backward compatibility,
|
|
7
|
-
* setting it to `true` actually PREVENTS wrapping (it forces truncation).
|
|
8
|
-
*/
|
|
9
|
-
wrapHeaderText?: boolean;
|
|
10
|
-
}
|
|
3
|
+
import { RecursicaPanelProps } from '@recursica/adapter-common';
|
|
11
4
|
/**
|
|
12
5
|
* Recursica Panel root props. Extends Mantine Drawer.
|
|
13
6
|
*/
|
|
@@ -1,16 +1,6 @@
|
|
|
1
1
|
import { PopoverProps as MantinePopoverProps, PopoverTargetProps as MantinePopoverTargetProps, PopoverDropdownProps as MantinePopoverDropdownProps } from '@mantine/core';
|
|
2
2
|
import { RecursicaOverStyled } from '../../utils/filterStylingProps';
|
|
3
|
-
|
|
4
|
-
* Recursica-specific props for Popover.
|
|
5
|
-
*/
|
|
6
|
-
export interface RecursicaPopoverProps {
|
|
7
|
-
/**
|
|
8
|
-
* Whether to display a beak (arrow) pointing from the dropdown to the target.
|
|
9
|
-
* This is the Recursica equivalent of Mantine's `withArrow`.
|
|
10
|
-
* When both `withBeak` and `withArrow` are provided, `withBeak` takes precedence.
|
|
11
|
-
*/
|
|
12
|
-
withBeak?: boolean;
|
|
13
|
-
}
|
|
3
|
+
import { RecursicaPopoverProps } from '@recursica/adapter-common';
|
|
14
4
|
/**
|
|
15
5
|
* Recursica Popover component wrapping Mantine's composable Popover.
|
|
16
6
|
*
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { RadioProps as MantineRadioProps } from '@mantine/core';
|
|
2
|
-
import { ReadOnlyControlProps } from '@recursica/adapter-common';
|
|
2
|
+
import { ReadOnlyControlProps, RequireAccessibleLabel, RecursicaRadioProps } from '@recursica/adapter-common';
|
|
3
3
|
import { RadioGroup } from './RadioGroup';
|
|
4
4
|
import { RecursicaOverStyled } from '../../utils/filterStylingProps';
|
|
5
|
-
import { RequireAccessibleLabel } from '../../utils/RequireAccessibleLabel';
|
|
6
5
|
import { FormControlLayoutProps } from '../FormControlLayout/FormControlLayout';
|
|
7
|
-
export type
|
|
8
|
-
export type
|
|
6
|
+
export type RadioWrapperProps = Omit<MantineRadioProps, "size" | "color" | "radius" | "iconColor" | "variant"> & RecursicaRadioProps & ReadOnlyControlProps & Pick<FormControlLayoutProps, "formLayout" | "labelSize" | "controlMaxWidth" | "controlMinWidth">;
|
|
7
|
+
export type RecursicaRadioPropsAlias = RequireAccessibleLabel<RadioWrapperProps>;
|
|
8
|
+
export type RadioProps = RecursicaOverStyled<RecursicaRadioPropsAlias>;
|
|
9
9
|
type RadioComponent = React.ForwardRefExoticComponent<RadioProps & React.RefAttributes<HTMLInputElement>> & {
|
|
10
10
|
Group: typeof RadioGroup;
|
|
11
11
|
};
|
|
@@ -1,9 +1,13 @@
|
|
|
1
1
|
import { default as React } from 'react';
|
|
2
2
|
import { RadioGroupProps as MantineRadioGroupProps } from '@mantine/core';
|
|
3
|
-
import { ReadOnlyControlProps } from '@recursica/adapter-common';
|
|
3
|
+
import { ReadOnlyControlProps, RecursicaRadioGroupProps as BaseRecursicaRadioGroupProps } from '@recursica/adapter-common';
|
|
4
4
|
import { RecursicaOverStyled } from '../../utils/filterStylingProps';
|
|
5
5
|
import { RecursicaFormControlWrapperProps } from '../FormControlWrapper/FormControlWrapper';
|
|
6
|
-
export interface RecursicaRadioGroupProps extends Omit<MantineRadioGroupProps, "size" | "labelProps">, Omit<RecursicaFormControlWrapperProps, "controlMaxWidth" | "controlMinWidth">, ReadOnlyControlProps {
|
|
6
|
+
export interface RecursicaRadioGroupProps extends Omit<MantineRadioGroupProps, "size" | "labelProps">, Omit<RecursicaFormControlWrapperProps, "controlMaxWidth" | "controlMinWidth">, ReadOnlyControlProps, BaseRecursicaRadioGroupProps {
|
|
7
7
|
}
|
|
8
8
|
export type RadioGroupProps = RecursicaOverStyled<RecursicaRadioGroupProps>;
|
|
9
|
-
export declare const RadioGroup: React.ForwardRefExoticComponent<
|
|
9
|
+
export declare const RadioGroup: React.ForwardRefExoticComponent<(Omit<Omit<RecursicaRadioGroupProps, import('@recursica/adapter-common').BlockedStylingKeys> & import('@recursica/adapter-common').ForbiddenStyles & {
|
|
10
|
+
overStyled?: false | undefined;
|
|
11
|
+
}, "ref"> | Omit<RecursicaRadioGroupProps & {
|
|
12
|
+
overStyled: true;
|
|
13
|
+
}, "ref">) & React.RefAttributes<HTMLDivElement>>;
|
|
@@ -1,16 +1,8 @@
|
|
|
1
1
|
import { default as React } from 'react';
|
|
2
|
-
import {
|
|
2
|
+
import { ReadOnlyControlProps, RecursicaReadOnlyFieldProps as BaseRecursicaReadOnlyFieldProps } from '@recursica/adapter-common';
|
|
3
3
|
import { RecursicaOverStyled } from '../../utils/filterStylingProps';
|
|
4
4
|
import { FormControlWrapperProps } from '../FormControlWrapper/FormControlWrapper';
|
|
5
|
-
export interface RecursicaReadOnlyFieldProps extends Omit<FormControlWrapperProps, "children" | "overStyled" | "controlMaxWidth" | "controlMinWidth">, Pick<ReadOnlyControlProps, "emptyValueComponent"
|
|
6
|
-
/** The specific value to be rendered in read-only mode explicitly matching the original field input */
|
|
7
|
-
value?: any;
|
|
8
|
-
/** The data type formatting rules bounding how the string is presented to the user */
|
|
9
|
-
type?: ReadOnlyFieldType;
|
|
10
|
-
/** Pass the native maximum width design variable dynamically bounding the specific wrapper width exclusively. */
|
|
11
|
-
controlMaxWidth?: string | undefined;
|
|
12
|
-
/** Pass the native minimum width design variable dynamically bounding the specific wrapper width exclusively. */
|
|
13
|
-
controlMinWidth?: string | undefined;
|
|
5
|
+
export interface RecursicaReadOnlyFieldProps extends Omit<FormControlWrapperProps, "children" | "overStyled" | "controlMaxWidth" | "controlMinWidth">, Pick<ReadOnlyControlProps, "emptyValueComponent">, BaseRecursicaReadOnlyFieldProps {
|
|
14
6
|
}
|
|
15
7
|
export type ReadOnlyFieldProps = RecursicaOverStyled<RecursicaReadOnlyFieldProps>;
|
|
16
8
|
/**
|
|
@@ -1,16 +1,6 @@
|
|
|
1
1
|
import { SegmentedControlProps as MantineSegmentedControlProps } from '@mantine/core';
|
|
2
2
|
import { RecursicaOverStyled } from '../../utils/filterStylingProps';
|
|
3
|
-
|
|
4
|
-
/** The orientation of the control */
|
|
5
|
-
orientation?: "horizontal" | "vertical";
|
|
6
|
-
/** If true, the control will take up the full width of its container */
|
|
7
|
-
fullWidth?: boolean;
|
|
8
|
-
/**
|
|
9
|
-
* SegmentedControl should NOT be allowed to be disabled by design.
|
|
10
|
-
* This component explicitly disables the `disabled` prop.
|
|
11
|
-
*/
|
|
12
|
-
disabled?: never;
|
|
13
|
-
}
|
|
3
|
+
import { RecursicaSegmentedControlProps } from '@recursica/adapter-common';
|
|
14
4
|
export type SegmentedControlProps = RecursicaOverStyled<Omit<MantineSegmentedControlProps, "variant" | "size" | "radius" | "color" | "classNames" | "className" | "disabled"> & {
|
|
15
5
|
className?: string;
|
|
16
6
|
classNames?: Partial<Record<string, string>>;
|
|
@@ -1,19 +1,9 @@
|
|
|
1
1
|
import { default as React } from 'react';
|
|
2
2
|
import { SliderProps as MantineSliderProps, InputWrapperProps } from '@mantine/core';
|
|
3
|
-
import { ReadOnlyControlProps } from '@recursica/adapter-common';
|
|
3
|
+
import { ReadOnlyControlProps, RecursicaSliderProps as BaseRecursicaSliderProps } from '@recursica/adapter-common';
|
|
4
4
|
import { RecursicaOverStyled } from '../../utils/filterStylingProps';
|
|
5
5
|
import { RecursicaFormControlWrapperProps } from '../FormControlWrapper/FormControlWrapper';
|
|
6
|
-
export interface RecursicaSliderProps extends Omit<MantineSliderProps, "size" | "variant" | "radius" | "wrapperProps" | "classNames" | "styles" | "label">, Omit<RecursicaFormControlWrapperProps, "controlMaxWidth" | "controlMinWidth">, Pick<InputWrapperProps, "error" | "required" | "withAsterisk">, ReadOnlyControlProps {
|
|
7
|
-
/** The form control label displayed above or beside the slider track. */
|
|
8
|
-
label?: React.ReactNode;
|
|
9
|
-
/** Floating tooltip shown above the thumb when dragging. Replaces Mantine's `label`. */
|
|
10
|
-
tooltipLabel?: MantineSliderProps["label"];
|
|
11
|
-
/** An optional icon rendered to the left of the slider track. */
|
|
12
|
-
icon?: React.ReactNode;
|
|
13
|
-
/** Whether to render a numeric input field side-by-side or stacked with the track. Defaults to false. */
|
|
14
|
-
showInput?: boolean;
|
|
15
|
-
/** Whether to render min and max labels below the track. Defaults to true. */
|
|
16
|
-
showMinMaxLabels?: boolean;
|
|
6
|
+
export interface RecursicaSliderProps extends Omit<MantineSliderProps, "size" | "variant" | "radius" | "wrapperProps" | "classNames" | "styles" | "label">, Omit<RecursicaFormControlWrapperProps, "controlMaxWidth" | "controlMinWidth">, Pick<InputWrapperProps, "error" | "required" | "withAsterisk">, ReadOnlyControlProps, BaseRecursicaSliderProps {
|
|
17
7
|
}
|
|
18
8
|
export type SliderProps = RecursicaOverStyled<RecursicaSliderProps>;
|
|
19
9
|
/**
|
|
@@ -22,4 +12,8 @@ export type SliderProps = RecursicaOverStyled<RecursicaSliderProps>;
|
|
|
22
12
|
* Implements a bidirectional text input field next to the slider track, responsive layouts,
|
|
23
13
|
* custom typography-bound min/max labels, an optional leading icon, and an explicit read-only layout.
|
|
24
14
|
*/
|
|
25
|
-
export declare const Slider: React.ForwardRefExoticComponent<
|
|
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,12 +1,5 @@
|
|
|
1
1
|
import { StackProps as MantineStackProps } from '@mantine/core';
|
|
2
|
-
import {
|
|
3
|
-
export interface RecursicaStackProps {
|
|
4
|
-
/**
|
|
5
|
-
* Children components inside the stack
|
|
6
|
-
*/
|
|
7
|
-
children?: React.ReactNode;
|
|
8
|
-
gap?: MantineStackProps["gap"] | RecursicaSpacing;
|
|
9
|
-
}
|
|
2
|
+
import { RecursicaStackProps } from '@recursica/adapter-common';
|
|
10
3
|
/**
|
|
11
4
|
* Stack flex layout wrapper.
|
|
12
5
|
*
|
|
@@ -17,7 +10,7 @@ export interface RecursicaStackProps {
|
|
|
17
10
|
export type StackProps = MantineStackProps & RecursicaStackProps;
|
|
18
11
|
export declare const Stack: (<C = "div">(props: import('@mantine/core').PolymorphicComponentProps<C, StackProps>) => React.ReactElement) & Omit<import('react').FunctionComponent<(MantineStackProps & RecursicaStackProps & {
|
|
19
12
|
component?: any;
|
|
20
|
-
} & Omit<Omit<any, "ref">, "className" | "classNames" | "style" | "styles" | "vars" | "p" | "px" | "py" | "pt" | "pb" | "pl" | "pr" | "bg" | "c" | "opacity" | "ff" | "fz" | "fw" | "lts" | "ta" | "lh" | "fs" | "tt" | "td" | "bd" | "w" | "miw" | "maw" | "h" | "mih" | "mah" | "m" | "my" | "mx" | "mt" | "mb" | "ml" | "mr" | "gap" | "top" | "left" | "bottom" | "right" | "key" | "defaultValue" | "onChange" | "slot" | "title" | "defaultChecked" | "suppressContentEditableWarning" | "suppressHydrationWarning" | "accessKey" | "autoCapitalize" | "autoFocus" | "contentEditable" | "contextMenu" | "dir" | "draggable" | "enterKeyHint" | "hidden" | "id" | "lang" | "nonce" | "spellCheck" | "tabIndex" | "translate" | "radioGroup" | "role" | "about" | "content" | "datatype" | "inlist" | "prefix" | "property" | "rel" | "resource" | "rev" | "typeof" | "vocab" | "autoCorrect" | "autoSave" | "color" | "itemProp" | "itemScope" | "itemType" | "itemID" | "itemRef" | "results" | "security" | "unselectable" | "popover" | "popoverTargetAction" | "popoverTarget" | "inert" | "inputMode" | "is" | "exportparts" | "part" | "aria-activedescendant" | "aria-atomic" | "aria-autocomplete" | "aria-braillelabel" | "aria-brailleroledescription" | "aria-busy" | "aria-checked" | "aria-colcount" | "aria-colindex" | "aria-colindextext" | "aria-colspan" | "aria-controls" | "aria-current" | "aria-describedby" | "aria-description" | "aria-details" | "aria-disabled" | "aria-dropeffect" | "aria-errormessage" | "aria-expanded" | "aria-flowto" | "aria-grabbed" | "aria-haspopup" | "aria-hidden" | "aria-invalid" | "aria-keyshortcuts" | "aria-label" | "aria-labelledby" | "aria-level" | "aria-live" | "aria-modal" | "aria-multiline" | "aria-multiselectable" | "aria-orientation" | "aria-owns" | "aria-placeholder" | "aria-posinset" | "aria-pressed" | "aria-readonly" | "aria-relevant" | "aria-required" | "aria-roledescription" | "aria-rowcount" | "aria-rowindex" | "aria-rowindextext" | "aria-rowspan" | "aria-selected" | "aria-setsize" | "aria-sort" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "children" | "dangerouslySetInnerHTML" | "onCopy" | "onCopyCapture" | "onCut" | "onCutCapture" | "onPaste" | "onPasteCapture" | "onCompositionEnd" | "onCompositionEndCapture" | "onCompositionStart" | "onCompositionStartCapture" | "onCompositionUpdate" | "onCompositionUpdateCapture" | "onFocus" | "onFocusCapture" | "onBlur" | "onBlurCapture" | "onChangeCapture" | "onBeforeInput" | "onBeforeInputCapture" | "onInput" | "onInputCapture" | "onReset" | "onResetCapture" | "onSubmit" | "onSubmitCapture" | "onInvalid" | "onInvalidCapture" | "onLoad" | "onLoadCapture" | "onError" | "onErrorCapture" | "onKeyDown" | "onKeyDownCapture" | "onKeyPress" | "onKeyPressCapture" | "onKeyUp" | "onKeyUpCapture" | "onAbort" | "onAbortCapture" | "onCanPlay" | "onCanPlayCapture" | "onCanPlayThrough" | "onCanPlayThroughCapture" | "onDurationChange" | "onDurationChangeCapture" | "onEmptied" | "onEmptiedCapture" | "onEncrypted" | "onEncryptedCapture" | "onEnded" | "onEndedCapture" | "onLoadedData" | "onLoadedDataCapture" | "onLoadedMetadata" | "onLoadedMetadataCapture" | "onLoadStart" | "onLoadStartCapture" | "onPause" | "onPauseCapture" | "onPlay" | "onPlayCapture" | "onPlaying" | "onPlayingCapture" | "onProgress" | "onProgressCapture" | "onRateChange" | "onRateChangeCapture" | "onSeeked" | "onSeekedCapture" | "onSeeking" | "onSeekingCapture" | "onStalled" | "onStalledCapture" | "onSuspend" | "onSuspendCapture" | "onTimeUpdate" | "onTimeUpdateCapture" | "onVolumeChange" | "onVolumeChangeCapture" | "onWaiting" | "onWaitingCapture" | "onAuxClick" | "onAuxClickCapture" | "onClick" | "onClickCapture" | "onContextMenu" | "onContextMenuCapture" | "onDoubleClick" | "onDoubleClickCapture" | "onDrag" | "onDragCapture" | "onDragEnd" | "onDragEndCapture" | "onDragEnter" | "onDragEnterCapture" | "onDragExit" | "onDragExitCapture" | "onDragLeave" | "onDragLeaveCapture" | "onDragOver" | "onDragOverCapture" | "onDragStart" | "onDragStartCapture" | "onDrop" | "onDropCapture" | "onMouseDown" | "onMouseDownCapture" | "onMouseEnter" | "onMouseLeave" | "onMouseMove" | "onMouseMoveCapture" | "onMouseOut" | "onMouseOutCapture" | "onMouseOver" | "onMouseOverCapture" | "onMouseUp" | "onMouseUpCapture" | "onSelect" | "onSelectCapture" | "onTouchCancel" | "onTouchCancelCapture" | "onTouchEnd" | "onTouchEndCapture" | "onTouchMove" | "onTouchMoveCapture" | "onTouchStart" | "onTouchStartCapture" | "onPointerDown" | "onPointerDownCapture" | "onPointerMove" | "onPointerMoveCapture" | "onPointerUp" | "onPointerUpCapture" | "onPointerCancel" | "onPointerCancelCapture" | "onPointerEnter" | "onPointerLeave" | "onPointerOver" | "onPointerOverCapture" | "onPointerOut" | "onPointerOutCapture" | "onGotPointerCapture" | "onGotPointerCaptureCapture" | "onLostPointerCapture" | "onLostPointerCaptureCapture" | "onScroll" | "onScrollCapture" | "onScrollEnd" | "onScrollEndCapture" | "onWheel" | "onWheelCapture" | "onAnimationStart" | "onAnimationStartCapture" | "onAnimationEnd" | "onAnimationEndCapture" | "onAnimationIteration" | "onAnimationIterationCapture" | "onToggle" | "onBeforeToggle" | "onTransitionCancel" | "onTransitionCancelCapture" | "onTransitionEnd" | "onTransitionEndCapture" | "onTransitionRun" | "onTransitionRunCapture" | "onTransitionStart" | "onTransitionStartCapture" | "__vars" | "__size" | "hiddenFrom" | "visibleFrom" | "lightHidden" | "darkHidden" | "mod" | "ms" | "me" | "ps" | "pe" | "bdrs" | "bgsz" | "bgp" | "bgr" | "bga" | "pos" | "inset" | "display" | "flex" | "unstyled" | "
|
|
13
|
+
} & Omit<Omit<any, "ref">, "className" | "classNames" | "style" | "styles" | "vars" | "p" | "px" | "py" | "pt" | "pb" | "pl" | "pr" | "bg" | "c" | "opacity" | "ff" | "fz" | "fw" | "lts" | "ta" | "lh" | "fs" | "tt" | "td" | "bd" | "w" | "miw" | "maw" | "h" | "mih" | "mah" | "m" | "my" | "mx" | "mt" | "mb" | "ml" | "mr" | "gap" | "top" | "left" | "bottom" | "right" | "key" | "defaultValue" | "onChange" | "variant" | "slot" | "title" | "defaultChecked" | "suppressContentEditableWarning" | "suppressHydrationWarning" | "accessKey" | "autoCapitalize" | "autoFocus" | "contentEditable" | "contextMenu" | "dir" | "draggable" | "enterKeyHint" | "hidden" | "id" | "lang" | "nonce" | "spellCheck" | "tabIndex" | "translate" | "radioGroup" | "role" | "about" | "content" | "datatype" | "inlist" | "prefix" | "property" | "rel" | "resource" | "rev" | "typeof" | "vocab" | "autoCorrect" | "autoSave" | "color" | "itemProp" | "itemScope" | "itemType" | "itemID" | "itemRef" | "results" | "security" | "unselectable" | "popover" | "popoverTargetAction" | "popoverTarget" | "inert" | "inputMode" | "is" | "exportparts" | "part" | "aria-activedescendant" | "aria-atomic" | "aria-autocomplete" | "aria-braillelabel" | "aria-brailleroledescription" | "aria-busy" | "aria-checked" | "aria-colcount" | "aria-colindex" | "aria-colindextext" | "aria-colspan" | "aria-controls" | "aria-current" | "aria-describedby" | "aria-description" | "aria-details" | "aria-disabled" | "aria-dropeffect" | "aria-errormessage" | "aria-expanded" | "aria-flowto" | "aria-grabbed" | "aria-haspopup" | "aria-hidden" | "aria-invalid" | "aria-keyshortcuts" | "aria-label" | "aria-labelledby" | "aria-level" | "aria-live" | "aria-modal" | "aria-multiline" | "aria-multiselectable" | "aria-orientation" | "aria-owns" | "aria-placeholder" | "aria-posinset" | "aria-pressed" | "aria-readonly" | "aria-relevant" | "aria-required" | "aria-roledescription" | "aria-rowcount" | "aria-rowindex" | "aria-rowindextext" | "aria-rowspan" | "aria-selected" | "aria-setsize" | "aria-sort" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "children" | "dangerouslySetInnerHTML" | "onCopy" | "onCopyCapture" | "onCut" | "onCutCapture" | "onPaste" | "onPasteCapture" | "onCompositionEnd" | "onCompositionEndCapture" | "onCompositionStart" | "onCompositionStartCapture" | "onCompositionUpdate" | "onCompositionUpdateCapture" | "onFocus" | "onFocusCapture" | "onBlur" | "onBlurCapture" | "onChangeCapture" | "onBeforeInput" | "onBeforeInputCapture" | "onInput" | "onInputCapture" | "onReset" | "onResetCapture" | "onSubmit" | "onSubmitCapture" | "onInvalid" | "onInvalidCapture" | "onLoad" | "onLoadCapture" | "onError" | "onErrorCapture" | "onKeyDown" | "onKeyDownCapture" | "onKeyPress" | "onKeyPressCapture" | "onKeyUp" | "onKeyUpCapture" | "onAbort" | "onAbortCapture" | "onCanPlay" | "onCanPlayCapture" | "onCanPlayThrough" | "onCanPlayThroughCapture" | "onDurationChange" | "onDurationChangeCapture" | "onEmptied" | "onEmptiedCapture" | "onEncrypted" | "onEncryptedCapture" | "onEnded" | "onEndedCapture" | "onLoadedData" | "onLoadedDataCapture" | "onLoadedMetadata" | "onLoadedMetadataCapture" | "onLoadStart" | "onLoadStartCapture" | "onPause" | "onPauseCapture" | "onPlay" | "onPlayCapture" | "onPlaying" | "onPlayingCapture" | "onProgress" | "onProgressCapture" | "onRateChange" | "onRateChangeCapture" | "onSeeked" | "onSeekedCapture" | "onSeeking" | "onSeekingCapture" | "onStalled" | "onStalledCapture" | "onSuspend" | "onSuspendCapture" | "onTimeUpdate" | "onTimeUpdateCapture" | "onVolumeChange" | "onVolumeChangeCapture" | "onWaiting" | "onWaitingCapture" | "onAuxClick" | "onAuxClickCapture" | "onClick" | "onClickCapture" | "onContextMenu" | "onContextMenuCapture" | "onDoubleClick" | "onDoubleClickCapture" | "onDrag" | "onDragCapture" | "onDragEnd" | "onDragEndCapture" | "onDragEnter" | "onDragEnterCapture" | "onDragExit" | "onDragExitCapture" | "onDragLeave" | "onDragLeaveCapture" | "onDragOver" | "onDragOverCapture" | "onDragStart" | "onDragStartCapture" | "onDrop" | "onDropCapture" | "onMouseDown" | "onMouseDownCapture" | "onMouseEnter" | "onMouseLeave" | "onMouseMove" | "onMouseMoveCapture" | "onMouseOut" | "onMouseOutCapture" | "onMouseOver" | "onMouseOverCapture" | "onMouseUp" | "onMouseUpCapture" | "onSelect" | "onSelectCapture" | "onTouchCancel" | "onTouchCancelCapture" | "onTouchEnd" | "onTouchEndCapture" | "onTouchMove" | "onTouchMoveCapture" | "onTouchStart" | "onTouchStartCapture" | "onPointerDown" | "onPointerDownCapture" | "onPointerMove" | "onPointerMoveCapture" | "onPointerUp" | "onPointerUpCapture" | "onPointerCancel" | "onPointerCancelCapture" | "onPointerEnter" | "onPointerLeave" | "onPointerOver" | "onPointerOverCapture" | "onPointerOut" | "onPointerOutCapture" | "onGotPointerCapture" | "onGotPointerCaptureCapture" | "onLostPointerCapture" | "onLostPointerCaptureCapture" | "onScroll" | "onScrollCapture" | "onScrollEnd" | "onScrollEndCapture" | "onWheel" | "onWheelCapture" | "onAnimationStart" | "onAnimationStartCapture" | "onAnimationEnd" | "onAnimationEndCapture" | "onAnimationIteration" | "onAnimationIterationCapture" | "onToggle" | "onBeforeToggle" | "onTransitionCancel" | "onTransitionCancelCapture" | "onTransitionEnd" | "onTransitionEndCapture" | "onTransitionRun" | "onTransitionRunCapture" | "onTransitionStart" | "onTransitionStartCapture" | "__vars" | "__size" | "hiddenFrom" | "visibleFrom" | "lightHidden" | "darkHidden" | "mod" | "ms" | "me" | "ps" | "pe" | "bdrs" | "bgsz" | "bgp" | "bgr" | "bga" | "pos" | "inset" | "display" | "flex" | "unstyled" | "attributes" | "justify" | "component" | "align"> & {
|
|
21
14
|
ref?: any;
|
|
22
15
|
renderRoot?: (props: any) => any;
|
|
23
16
|
}) | (MantineStackProps & RecursicaStackProps & {
|
|
@@ -1,9 +1,7 @@
|
|
|
1
1
|
import { default as React } from 'react';
|
|
2
|
-
import { Stepper as MantineStepper
|
|
2
|
+
import { Stepper as MantineStepper } from '@mantine/core';
|
|
3
3
|
import { RecursicaOverStyled } from '../../utils/filterStylingProps';
|
|
4
|
-
|
|
5
|
-
size?: "small" | "large";
|
|
6
|
-
}
|
|
4
|
+
import { RecursicaStepperProps } from '@recursica/adapter-common';
|
|
7
5
|
export type StepperProps = RecursicaOverStyled<RecursicaStepperProps>;
|
|
8
6
|
declare const _Stepper: React.ForwardRefExoticComponent<StepperProps & React.RefAttributes<HTMLDivElement>>;
|
|
9
7
|
export declare const Stepper: typeof _Stepper & {
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { SwitchProps as MantineSwitchProps } from '@mantine/core';
|
|
2
|
-
import { ReadOnlyControlProps } from '@recursica/adapter-common';
|
|
2
|
+
import { ReadOnlyControlProps, RequireAccessibleLabel, RecursicaSwitchProps } from '@recursica/adapter-common';
|
|
3
3
|
import { RecursicaOverStyled } from '../../utils/filterStylingProps';
|
|
4
|
-
import { RequireAccessibleLabel } from '../../utils/RequireAccessibleLabel';
|
|
5
4
|
import { FormControlLayoutProps } from '../FormControlLayout/FormControlLayout';
|
|
6
5
|
import { SwitchGroup } from './SwitchGroup';
|
|
7
|
-
export type
|
|
8
|
-
export type
|
|
6
|
+
export type SwitchWrapperProps = Omit<MantineSwitchProps, "size" | "color" | "radius" | "variant"> & RecursicaSwitchProps & ReadOnlyControlProps & Pick<FormControlLayoutProps, "formLayout" | "labelSize" | "controlMaxWidth" | "controlMinWidth">;
|
|
7
|
+
export type RecursicaSwitchPropsAlias = RequireAccessibleLabel<SwitchWrapperProps>;
|
|
8
|
+
export type SwitchProps = RecursicaOverStyled<RecursicaSwitchPropsAlias>;
|
|
9
9
|
type SwitchComponent = React.ForwardRefExoticComponent<SwitchProps & React.RefAttributes<HTMLInputElement>> & {
|
|
10
10
|
Group: typeof SwitchGroup;
|
|
11
11
|
};
|
|
@@ -1,9 +1,13 @@
|
|
|
1
1
|
import { default as React } from 'react';
|
|
2
2
|
import { SwitchGroupProps as MantineSwitchGroupProps } from '@mantine/core';
|
|
3
|
-
import { ReadOnlyControlProps } from '@recursica/adapter-common';
|
|
3
|
+
import { ReadOnlyControlProps, RecursicaSwitchGroupProps as BaseRecursicaSwitchGroupProps } from '@recursica/adapter-common';
|
|
4
4
|
import { RecursicaOverStyled } from '../../utils/filterStylingProps';
|
|
5
5
|
import { RecursicaFormControlWrapperProps } from '../FormControlWrapper/FormControlWrapper';
|
|
6
|
-
export interface RecursicaSwitchGroupProps extends Omit<MantineSwitchGroupProps, "size" | "labelProps">, Omit<RecursicaFormControlWrapperProps, "controlMaxWidth" | "controlMinWidth">, ReadOnlyControlProps {
|
|
6
|
+
export interface RecursicaSwitchGroupProps extends Omit<MantineSwitchGroupProps, "size" | "labelProps">, Omit<RecursicaFormControlWrapperProps, "controlMaxWidth" | "controlMinWidth">, ReadOnlyControlProps, BaseRecursicaSwitchGroupProps {
|
|
7
7
|
}
|
|
8
8
|
export type SwitchGroupProps = RecursicaOverStyled<RecursicaSwitchGroupProps>;
|
|
9
|
-
export declare const SwitchGroup: React.ForwardRefExoticComponent<
|
|
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,8 +1,6 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { TabsListProps as MantineTabsListProps, TabsTabProps as MantineTabsTabProps, TabsPanelProps as MantineTabsPanelProps } from '@mantine/core';
|
|
2
2
|
import { RecursicaOverStyled } from '../../utils/filterStylingProps';
|
|
3
|
-
|
|
4
|
-
variant?: "default" | "outline" | "pills";
|
|
5
|
-
}
|
|
3
|
+
import { RecursicaTabsProps } from '@recursica/adapter-common';
|
|
6
4
|
export type TabsProps = RecursicaOverStyled<RecursicaTabsProps>;
|
|
7
5
|
declare const _Tabs: import('react').ForwardRefExoticComponent<TabsProps & import('react').RefAttributes<HTMLDivElement>>;
|
|
8
6
|
export type TabsListProps = RecursicaOverStyled<MantineTabsListProps>;
|
|
@@ -1,14 +1,5 @@
|
|
|
1
|
-
import { ReactNode } from 'react';
|
|
2
|
-
import { TextProps as MantineTextProps } from '@mantine/core';
|
|
3
1
|
import { RecursicaOverStyled } from '../../utils/filterStylingProps';
|
|
4
|
-
|
|
5
|
-
export type RecursicaTextProps = Omit<MantineTextProps, "variant"> & {
|
|
6
|
-
/**
|
|
7
|
-
* The explicit typography hierarchy dictated by Recursica's global design tokens.
|
|
8
|
-
*/
|
|
9
|
-
variant?: TextVariant;
|
|
10
|
-
children?: ReactNode;
|
|
11
|
-
};
|
|
2
|
+
import { RecursicaTextProps } from '@recursica/adapter-common';
|
|
12
3
|
export type TextProps = RecursicaOverStyled<RecursicaTextProps>;
|
|
13
4
|
/**
|
|
14
5
|
* A generalized typographical wrapper limiting text properties to bounded Recursica UI-kit tokens inherently.
|
|
@@ -23,7 +14,7 @@ export type TextProps = RecursicaOverStyled<RecursicaTextProps>;
|
|
|
23
14
|
*/
|
|
24
15
|
export declare const Text: (<C = "p">(props: import('@mantine/core').PolymorphicComponentProps<C, TextProps>) => React.ReactElement) & Omit<import('react').FunctionComponent<((TextProps & {
|
|
25
16
|
component?: any;
|
|
26
|
-
}) & Omit<Omit<any, "ref">, "
|
|
17
|
+
}) & Omit<Omit<any, "ref">, "variant" | "children" | "overStyled" | "component"> & {
|
|
27
18
|
ref?: any;
|
|
28
19
|
renderRoot?: (props: any) => any;
|
|
29
20
|
}) | (TextProps & {
|
|
@@ -1,15 +1,9 @@
|
|
|
1
1
|
import { default as React } from 'react';
|
|
2
2
|
import { TextareaProps as MantineTextareaProps } from '@mantine/core';
|
|
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<MantineTextareaProps, "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<MantineTextareaProps, "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
9
|
export declare const TextArea: React.ForwardRefExoticComponent<TextAreaProps & React.RefAttributes<HTMLTextAreaElement>>;
|
|
@@ -1,9 +1,13 @@
|
|
|
1
1
|
import { default as React } from 'react';
|
|
2
2
|
import { InputProps, InputWrapperProps } from '@mantine/core';
|
|
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<InputProps, "size" | "variant" | "radius" | "wrapperProps">, Pick<InputWrapperProps, "label" | "error" | "required" | "withAsterisk" | "id">, Omit<React.ComponentPropsWithoutRef<"input">, "size" | "style" | "className" | "id">, Omit<RecursicaFormControlWrapperProps, "controlMaxWidth" | "controlMinWidth">, ReadOnlyControlProps {
|
|
6
|
+
export interface RecursicaTextFieldProps extends Omit<InputProps, "size" | "variant" | "radius" | "wrapperProps">, Pick<InputWrapperProps, "label" | "error" | "required" | "withAsterisk" | "id">, Omit<React.ComponentPropsWithoutRef<"input">, "size" | "style" | "className" | "id">, Omit<RecursicaFormControlWrapperProps, "controlMaxWidth" | "controlMinWidth">, ReadOnlyControlProps, BaseRecursicaTextFieldProps {
|
|
7
7
|
}
|
|
8
8
|
export type TextFieldProps = RecursicaOverStyled<RecursicaTextFieldProps>;
|
|
9
|
-
export declare const TextField: React.ForwardRefExoticComponent<
|
|
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>;
|
|
@@ -2,12 +2,13 @@ import { default as React } from 'react';
|
|
|
2
2
|
import { TimelineProps as MantineTimelineProps } from '@mantine/core';
|
|
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 Mantine 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<MantineTimelineProps, "color" | "radius" | "bulletSize" | "lineWidth"
|
|
11
|
+
export type TimelineProps = RecursicaOverStyled<Omit<MantineTimelineProps, "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 MantineTimelineItemProps } from '@mantine/core';
|
|
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<MantineTimelineItemProps, "radius" | "color" | "lineVariant"> & RecursicaTimelineItemProps>;
|
|
17
6
|
/**
|
|
18
7
|
* The individual item component for the Timeline.
|
|
@@ -1,11 +1,5 @@
|
|
|
1
|
-
import { TitleProps as MantineTitleProps } from '@mantine/core';
|
|
2
1
|
import { RecursicaOverStyled } from '../../utils/filterStylingProps';
|
|
3
|
-
|
|
4
|
-
/**
|
|
5
|
-
* Enforces semantic HTML headers (h1-h6) cleanly bound to native typographic scaling variables in the design system.
|
|
6
|
-
*/
|
|
7
|
-
order?: 1 | 2 | 3 | 4 | 5 | 6;
|
|
8
|
-
};
|
|
2
|
+
import { RecursicaTitleProps } from '@recursica/adapter-common';
|
|
9
3
|
export type TitleProps = RecursicaOverStyled<RecursicaTitleProps>;
|
|
10
4
|
/**
|
|
11
5
|
* Enforces highly accessible structural markup utilizing semantic `<h1>` through `<h6>` tags securely bound directly to Recursica typographic scales.
|
|
@@ -1,18 +1,7 @@
|
|
|
1
1
|
import { default as React } from 'react';
|
|
2
2
|
import { NotificationProps as MantineNotificationProps } from '@mantine/core';
|
|
3
3
|
import { RecursicaOverStyled } from '../../utils/filterStylingProps';
|
|
4
|
-
|
|
5
|
-
/**
|
|
6
|
-
* The visual variant of the toast.
|
|
7
|
-
* @default "default"
|
|
8
|
-
*/
|
|
9
|
-
variant?: "default" | "error" | "success";
|
|
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;
|
|
15
|
-
}
|
|
4
|
+
import { RecursicaToastProps } from '@recursica/adapter-common';
|
|
16
5
|
/**
|
|
17
6
|
* Toast component wrapping Mantine's Notification.
|
|
18
7
|
*
|
|
@@ -1,17 +1,6 @@
|
|
|
1
1
|
import { Tooltip as MantineTooltip, TooltipProps as MantineTooltipProps } from '@mantine/core';
|
|
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 Mantine'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 Mantine's Tooltip.
|
|
17
6
|
*
|
|
@@ -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>;
|
|
@@ -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,17 +22,7 @@
|
|
|
22
22
|
* @returns Sanitized component props safe for internal styling merging
|
|
23
23
|
*/
|
|
24
24
|
export declare const BLOCKED_STYLING_KEYS: readonly ["className", "classNames", "style", "styles", "vars", "p", "px", "py", "pt", "pb", "pl", "pr", "bg", "c", "opacity", "ff", "fz", "fw", "lts", "ta", "lh", "fs", "tt", "td", "bd", "bdw", "bds", "bdc", "bdr", "shadow", "w", "miw", "maw", "h", "mih", "mah"];
|
|
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
|
-
export type RecursicaOverStyled<T> = (Omit<T, BlockedStylingKeys> & ForbiddenStyles & {
|
|
33
|
-
overStyled?: false | undefined;
|
|
34
|
-
}) | (T & {
|
|
35
|
-
overStyled: true;
|
|
36
|
-
});
|
|
37
27
|
export declare function mapLayoutProps<T extends Record<string, unknown>>(props: T): T;
|
|
38
28
|
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/mantine-adapter
|
|
2
|
+
|
|
3
|
+
> Reusable UI components for Recursica applications based on Mantine 8+.
|
|
4
|
+
|
|
5
|
+
This adapter converts Recursica design tokens into Mantine-specific themes and components.
|
|
6
|
+
|
|
7
|
+
## Usage Guidelines
|
|
8
|
+
|
|
9
|
+
- Relies on `@mantine/core`, `@mantine/dates`, and `@mantine/hooks` 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/mantine-adapter"
|
|
15
15
|
},
|
|
16
|
-
"version": "0.
|
|
16
|
+
"version": "0.26.0",
|
|
17
17
|
"type": "module",
|
|
18
18
|
"main": "./dist/mantine-adapter.cjs",
|
|
19
19
|
"module": "./dist/mantine-adapter.js",
|
|
@@ -30,7 +30,11 @@
|
|
|
30
30
|
"dist",
|
|
31
31
|
"src",
|
|
32
32
|
"CHANGELOG.md",
|
|
33
|
-
".storybook/commonArgTypes.ts"
|
|
33
|
+
".storybook/commonArgTypes.ts",
|
|
34
|
+
"llms.txt",
|
|
35
|
+
"USAGE.md",
|
|
36
|
+
"ARCHITECTURE.md",
|
|
37
|
+
"SETUP.md"
|
|
34
38
|
],
|
|
35
39
|
"keywords": [
|
|
36
40
|
"react",
|
|
@@ -88,6 +92,9 @@
|
|
|
88
92
|
"vite-plugin-svgr": "^4.3.0",
|
|
89
93
|
"vitest": "^3.2.4"
|
|
90
94
|
},
|
|
95
|
+
"dependencies": {
|
|
96
|
+
"@recursica/official-release": "*"
|
|
97
|
+
},
|
|
91
98
|
"peerDependencies": {
|
|
92
99
|
"@mantine/core": "^8.0.0",
|
|
93
100
|
"@mantine/dates": "^8.0.0",
|