@recursica/mantine-adapter 0.27.0 → 0.29.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/CHANGELOG.md +26 -0
- package/dist/mantine-adapter.cjs +11 -1
- package/dist/mantine-adapter.cjs.map +1 -1
- package/dist/mantine-adapter.css +1 -1
- package/dist/mantine-adapter.js +2036 -1851
- package/dist/mantine-adapter.js.map +1 -1
- package/dist/src/components/Panel/Panel.d.ts +1 -1
- package/dist/src/components/Popover/Popover.d.ts +3 -1
- package/dist/src/components/Tree/Tree.d.ts +9 -0
- package/dist/src/components/Tree/index.d.ts +1 -0
- package/dist/src/components/index.d.ts +2 -0
- package/dist/src/index.d.ts +153 -1
- package/package.json +2 -2
- package/src/OverStyling.tsx +67 -3
- package/src/components/AutoComplete/AutoComplete.tsx +2 -2
- package/src/components/Button/Button.module.css +42 -0
- package/src/components/Card/Card.tsx +3 -1
- package/src/components/DatePicker/DatePicker.stories.tsx +0 -1
- package/src/components/Dropdown/Dropdown.stories.tsx +0 -6
- package/src/components/Dropdown/Dropdown.tsx +1 -1
- package/src/components/Link/Link.tsx +1 -1
- package/src/components/NumberInput/NumberInput.stories.tsx +0 -2
- package/src/components/Panel/Panel.tsx +1 -1
- package/src/components/Popover/Popover.tsx +8 -3
- package/src/components/SegmentedControl/SegmentedControl.module.css +1 -0
- package/src/components/Slider/Slider.module.css +29 -0
- package/src/components/Table/Table.module.css +387 -2
- package/src/components/Table/Table.tsx +1 -1
- package/src/components/Tabs/Tabs.module.css +2 -0
- package/src/components/Toast/Toast.module.css +6 -1
- package/src/components/Tree/Tree.module.css +43 -0
- package/src/components/Tree/Tree.stories.tsx +14 -0
- package/src/components/Tree/Tree.tsx +24 -0
- package/src/components/Tree/index.ts +1 -0
- package/src/components/index.ts +2 -0
- package/src/index.ts +157 -1
|
@@ -4,7 +4,7 @@ import { RecursicaPanelProps as BaseRecursicaPanelProps } from '@recursica/adapt
|
|
|
4
4
|
/**
|
|
5
5
|
* Recursica Panel root props. Extends Mantine Drawer.
|
|
6
6
|
*/
|
|
7
|
-
export interface RecursicaPanelProps extends Omit<MantineDrawerProps, "size" | "styles" | "classNames" | "style" | "position">, BaseRecursicaPanelProps {
|
|
7
|
+
export interface RecursicaPanelProps extends Omit<MantineDrawerProps, "size" | "styles" | "classNames" | "style" | "position" | "opened">, BaseRecursicaPanelProps {
|
|
8
8
|
}
|
|
9
9
|
export type PanelProps = RecursicaOverStyled<RecursicaPanelProps>;
|
|
10
10
|
/**
|
|
@@ -17,7 +17,9 @@ import { RecursicaPopoverProps } from '@recursica/adapter-common';
|
|
|
17
17
|
* </Popover>
|
|
18
18
|
* ```
|
|
19
19
|
*/
|
|
20
|
-
export type PopoverProps = RecursicaOverStyled<MantinePopoverProps & RecursicaPopoverProps
|
|
20
|
+
export type PopoverProps = Omit<RecursicaOverStyled<Omit<MantinePopoverProps, "position"> & RecursicaPopoverProps>, "position"> & {
|
|
21
|
+
position?: MantinePopoverProps["position"];
|
|
22
|
+
};
|
|
21
23
|
declare const PopoverBase: {
|
|
22
24
|
({ overStyled, withBeak, ...rest }: PopoverProps): import("react/jsx-runtime").JSX.Element;
|
|
23
25
|
displayName: string;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { default as React } from 'react';
|
|
2
|
+
import { RecursicaOverStyled } from '../../utils/filterStylingProps';
|
|
3
|
+
export interface TreeProps extends React.ComponentPropsWithoutRef<"div"> {
|
|
4
|
+
overStyled?: boolean;
|
|
5
|
+
}
|
|
6
|
+
/**
|
|
7
|
+
* Placeholder component for Tree (Coming Soon).
|
|
8
|
+
*/
|
|
9
|
+
export declare const Tree: React.ForwardRefExoticComponent<RecursicaOverStyled<TreeProps> & React.RefAttributes<HTMLDivElement>>;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './Tree';
|
|
@@ -42,7 +42,9 @@ export * from './TextArea/TextArea';
|
|
|
42
42
|
export * from './TextField/TextField';
|
|
43
43
|
export * from './TimePicker/TimePicker';
|
|
44
44
|
export * from './Timeline/Timeline';
|
|
45
|
+
export * from './Timeline/TimelineItem';
|
|
45
46
|
export * from './Title/Title';
|
|
46
47
|
export * from './Toast';
|
|
47
48
|
export * from './Tooltip/Tooltip';
|
|
48
49
|
export * from './TransferList/TransferList';
|
|
50
|
+
export * from './Tree';
|
package/dist/src/index.d.ts
CHANGED
|
@@ -1,3 +1,155 @@
|
|
|
1
|
-
|
|
1
|
+
import * as rawComponents from "./components";
|
|
2
2
|
export * from '@recursica/adapter-common';
|
|
3
|
+
export declare const Flex: (<C = "div">(props: import('@mantine/core').PolymorphicComponentProps<C, rawComponents.FlexProps>) => React.ReactElement) & Omit<import('react').FunctionComponent<(Omit<import('@mantine/core').FlexProps & import('@recursica/adapter-common').RecursicaFlexProps, "m" | "my" | "mx" | "mt" | "mb" | "ml" | "mr" | "gap" | "rowGap" | "columnGap"> & {
|
|
4
|
+
m?: string | number | import('@recursica/adapter-common').RecursicaSpacing;
|
|
5
|
+
mx?: string | number | import('@recursica/adapter-common').RecursicaSpacing;
|
|
6
|
+
my?: string | number | import('@recursica/adapter-common').RecursicaSpacing;
|
|
7
|
+
mt?: string | number | import('@recursica/adapter-common').RecursicaSpacing;
|
|
8
|
+
mb?: string | number | import('@recursica/adapter-common').RecursicaSpacing;
|
|
9
|
+
ml?: string | number | import('@recursica/adapter-common').RecursicaSpacing;
|
|
10
|
+
mr?: string | number | import('@recursica/adapter-common').RecursicaSpacing;
|
|
11
|
+
gap?: string | number | import('@recursica/adapter-common').RecursicaSpacing;
|
|
12
|
+
rowGap?: string | number | import('@recursica/adapter-common').RecursicaSpacing;
|
|
13
|
+
columnGap?: string | number | import('@recursica/adapter-common').RecursicaSpacing;
|
|
14
|
+
} & {
|
|
15
|
+
component?: any;
|
|
16
|
+
} & 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" | "rowGap" | "columnGap" | "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" | "wrap" | "align" | "direction"> & {
|
|
17
|
+
ref?: any;
|
|
18
|
+
renderRoot?: (props: any) => any;
|
|
19
|
+
}) | (Omit<import('@mantine/core').FlexProps & import('@recursica/adapter-common').RecursicaFlexProps, "m" | "my" | "mx" | "mt" | "mb" | "ml" | "mr" | "gap" | "rowGap" | "columnGap"> & {
|
|
20
|
+
m?: string | number | import('@recursica/adapter-common').RecursicaSpacing;
|
|
21
|
+
mx?: string | number | import('@recursica/adapter-common').RecursicaSpacing;
|
|
22
|
+
my?: string | number | import('@recursica/adapter-common').RecursicaSpacing;
|
|
23
|
+
mt?: string | number | import('@recursica/adapter-common').RecursicaSpacing;
|
|
24
|
+
mb?: string | number | import('@recursica/adapter-common').RecursicaSpacing;
|
|
25
|
+
ml?: string | number | import('@recursica/adapter-common').RecursicaSpacing;
|
|
26
|
+
mr?: string | number | import('@recursica/adapter-common').RecursicaSpacing;
|
|
27
|
+
gap?: string | number | import('@recursica/adapter-common').RecursicaSpacing;
|
|
28
|
+
rowGap?: string | number | import('@recursica/adapter-common').RecursicaSpacing;
|
|
29
|
+
columnGap?: string | number | import('@recursica/adapter-common').RecursicaSpacing;
|
|
30
|
+
} & {
|
|
31
|
+
component: React.ElementType;
|
|
32
|
+
renderRoot?: (props: Record<string, any>) => any;
|
|
33
|
+
})>, never> & Record<string, never>;
|
|
34
|
+
export declare const Group: import('react').ForwardRefExoticComponent<Omit<import('@mantine/core').GroupProps & import('@recursica/adapter-common').RecursicaGroupProps, "m" | "my" | "mx" | "mt" | "mb" | "ml" | "mr" | "gap" | "rowGap" | "columnGap"> & {
|
|
35
|
+
m?: string | number | import('@recursica/adapter-common').RecursicaSpacing;
|
|
36
|
+
mx?: string | number | import('@recursica/adapter-common').RecursicaSpacing;
|
|
37
|
+
my?: string | number | import('@recursica/adapter-common').RecursicaSpacing;
|
|
38
|
+
mt?: string | number | import('@recursica/adapter-common').RecursicaSpacing;
|
|
39
|
+
mb?: string | number | import('@recursica/adapter-common').RecursicaSpacing;
|
|
40
|
+
ml?: string | number | import('@recursica/adapter-common').RecursicaSpacing;
|
|
41
|
+
mr?: string | number | import('@recursica/adapter-common').RecursicaSpacing;
|
|
42
|
+
gap?: string | number | import('@recursica/adapter-common').RecursicaSpacing;
|
|
43
|
+
rowGap?: string | number | import('@recursica/adapter-common').RecursicaSpacing;
|
|
44
|
+
columnGap?: string | number | import('@recursica/adapter-common').RecursicaSpacing;
|
|
45
|
+
} & import('react').RefAttributes<HTMLDivElement>>;
|
|
46
|
+
export declare const Stack: (<C = "div">(props: import('@mantine/core').PolymorphicComponentProps<C, rawComponents.StackProps>) => React.ReactElement) & Omit<import('react').FunctionComponent<(Omit<import('@mantine/core').StackProps & import('@recursica/adapter-common').RecursicaStackProps, "m" | "my" | "mx" | "mt" | "mb" | "ml" | "mr" | "gap" | "rowGap" | "columnGap"> & {
|
|
47
|
+
m?: string | number | import('@recursica/adapter-common').RecursicaSpacing;
|
|
48
|
+
mx?: string | number | import('@recursica/adapter-common').RecursicaSpacing;
|
|
49
|
+
my?: string | number | import('@recursica/adapter-common').RecursicaSpacing;
|
|
50
|
+
mt?: string | number | import('@recursica/adapter-common').RecursicaSpacing;
|
|
51
|
+
mb?: string | number | import('@recursica/adapter-common').RecursicaSpacing;
|
|
52
|
+
ml?: string | number | import('@recursica/adapter-common').RecursicaSpacing;
|
|
53
|
+
mr?: string | number | import('@recursica/adapter-common').RecursicaSpacing;
|
|
54
|
+
gap?: string | number | import('@recursica/adapter-common').RecursicaSpacing;
|
|
55
|
+
rowGap?: string | number | import('@recursica/adapter-common').RecursicaSpacing;
|
|
56
|
+
columnGap?: string | number | import('@recursica/adapter-common').RecursicaSpacing;
|
|
57
|
+
} & {
|
|
58
|
+
component?: any;
|
|
59
|
+
} & 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" | "rowGap" | "columnGap" | "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"> & {
|
|
60
|
+
ref?: any;
|
|
61
|
+
renderRoot?: (props: any) => any;
|
|
62
|
+
}) | (Omit<import('@mantine/core').StackProps & import('@recursica/adapter-common').RecursicaStackProps, "m" | "my" | "mx" | "mt" | "mb" | "ml" | "mr" | "gap" | "rowGap" | "columnGap"> & {
|
|
63
|
+
m?: string | number | import('@recursica/adapter-common').RecursicaSpacing;
|
|
64
|
+
mx?: string | number | import('@recursica/adapter-common').RecursicaSpacing;
|
|
65
|
+
my?: string | number | import('@recursica/adapter-common').RecursicaSpacing;
|
|
66
|
+
mt?: string | number | import('@recursica/adapter-common').RecursicaSpacing;
|
|
67
|
+
mb?: string | number | import('@recursica/adapter-common').RecursicaSpacing;
|
|
68
|
+
ml?: string | number | import('@recursica/adapter-common').RecursicaSpacing;
|
|
69
|
+
mr?: string | number | import('@recursica/adapter-common').RecursicaSpacing;
|
|
70
|
+
gap?: string | number | import('@recursica/adapter-common').RecursicaSpacing;
|
|
71
|
+
rowGap?: string | number | import('@recursica/adapter-common').RecursicaSpacing;
|
|
72
|
+
columnGap?: string | number | import('@recursica/adapter-common').RecursicaSpacing;
|
|
73
|
+
} & {
|
|
74
|
+
component: React.ElementType;
|
|
75
|
+
renderRoot?: (props: Record<string, any>) => any;
|
|
76
|
+
})>, never> & Record<string, never>;
|
|
77
|
+
export declare const Container: import('react').ForwardRefExoticComponent<Omit<Omit<import('@mantine/core').ContainerProps, "size"> & import('@recursica/adapter-common').RecursicaContainerProps, "m" | "my" | "mx" | "mt" | "mb" | "ml" | "mr" | "gap" | "rowGap" | "columnGap"> & {
|
|
78
|
+
m?: string | number | import('@recursica/adapter-common').RecursicaSpacing;
|
|
79
|
+
mx?: string | number | import('@recursica/adapter-common').RecursicaSpacing;
|
|
80
|
+
my?: string | number | import('@recursica/adapter-common').RecursicaSpacing;
|
|
81
|
+
mt?: string | number | import('@recursica/adapter-common').RecursicaSpacing;
|
|
82
|
+
mb?: string | number | import('@recursica/adapter-common').RecursicaSpacing;
|
|
83
|
+
ml?: string | number | import('@recursica/adapter-common').RecursicaSpacing;
|
|
84
|
+
mr?: string | number | import('@recursica/adapter-common').RecursicaSpacing;
|
|
85
|
+
gap?: string | number | import('@recursica/adapter-common').RecursicaSpacing;
|
|
86
|
+
rowGap?: string | number | import('@recursica/adapter-common').RecursicaSpacing;
|
|
87
|
+
columnGap?: string | number | import('@recursica/adapter-common').RecursicaSpacing;
|
|
88
|
+
} & import('react').RefAttributes<HTMLDivElement>>;
|
|
89
|
+
export declare const Link: (<C = "a">(props: import('@mantine/core').PolymorphicComponentProps<C, rawComponents.LinkProps>) => React.ReactElement) & Omit<import('react').FunctionComponent<((rawComponents.LinkProps & {
|
|
90
|
+
component?: any;
|
|
91
|
+
}) & 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" | "rowGap" | "columnGap" | "top" | "left" | "bottom" | "right" | "variant" | "color" | "children" | "__vars" | "__size" | "hiddenFrom" | "visibleFrom" | "lightHidden" | "darkHidden" | "mod" | "ms" | "me" | "ps" | "pe" | "bdrs" | "bgsz" | "bgp" | "bgr" | "bga" | "pos" | "inset" | "display" | "flex" | "unstyled" | "attributes" | "overStyled" | "icon" | "inherit" | "inline" | "size" | "__staticSelector" | "component" | "gradient" | "lineClamp" | "truncate"> & {
|
|
92
|
+
ref?: any;
|
|
93
|
+
renderRoot?: (props: any) => any;
|
|
94
|
+
}) | (rawComponents.LinkProps & {
|
|
95
|
+
component: React.ElementType;
|
|
96
|
+
renderRoot?: (props: Record<string, any>) => any;
|
|
97
|
+
})>, never> & Record<string, never>;
|
|
98
|
+
export declare const Text: (<C = "p">(props: import('@mantine/core').PolymorphicComponentProps<C, rawComponents.TextProps>) => React.ReactElement) & Omit<import('react').FunctionComponent<((rawComponents.TextProps & {
|
|
99
|
+
component?: any;
|
|
100
|
+
}) & 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" | "rowGap" | "columnGap" | "top" | "left" | "bottom" | "right" | "variant" | "span" | "color" | "children" | "__vars" | "__size" | "hiddenFrom" | "visibleFrom" | "lightHidden" | "darkHidden" | "mod" | "ms" | "me" | "ps" | "pe" | "bdrs" | "bgsz" | "bgp" | "bgr" | "bga" | "pos" | "inset" | "display" | "flex" | "unstyled" | "attributes" | "overStyled" | "inherit" | "inline" | "size" | "__staticSelector" | "component" | "gradient" | "lineClamp" | "truncate"> & {
|
|
101
|
+
ref?: any;
|
|
102
|
+
renderRoot?: (props: any) => any;
|
|
103
|
+
}) | (rawComponents.TextProps & {
|
|
104
|
+
component: React.ElementType;
|
|
105
|
+
renderRoot?: (props: Record<string, any>) => any;
|
|
106
|
+
})>, never> & Record<string, never>;
|
|
107
|
+
export declare const Accordion: typeof rawComponents.Accordion;
|
|
108
|
+
export declare const AccordionItem: typeof rawComponents.AccordionItem;
|
|
109
|
+
export declare const AccordionControl: typeof rawComponents.AccordionControl;
|
|
110
|
+
export declare const AccordionPanel: typeof rawComponents.AccordionPanel;
|
|
111
|
+
export declare const AutoComplete: typeof rawComponents.AutoComplete;
|
|
112
|
+
export declare const Avatar: typeof rawComponents.Avatar;
|
|
113
|
+
export declare const Badge: typeof rawComponents.Badge;
|
|
114
|
+
export declare const Breadcrumb: typeof rawComponents.Breadcrumb;
|
|
115
|
+
export declare const Button: typeof rawComponents.Button;
|
|
116
|
+
export declare const Card: typeof rawComponents.Card;
|
|
117
|
+
export declare const Checkbox: typeof rawComponents.Checkbox;
|
|
118
|
+
export declare const CheckboxGroup: typeof rawComponents.CheckboxGroup;
|
|
119
|
+
export declare const Chip: typeof rawComponents.Chip;
|
|
120
|
+
export declare const DatePicker: typeof rawComponents.DatePicker;
|
|
121
|
+
export declare const Dropdown: typeof rawComponents.Dropdown;
|
|
122
|
+
export declare const FileInput: typeof rawComponents.FileInput;
|
|
123
|
+
export declare const FileUpload: typeof rawComponents.FileUpload;
|
|
124
|
+
export declare const FormControlLayout: typeof rawComponents.FormControlLayout;
|
|
125
|
+
export declare const HoverCard: typeof rawComponents.HoverCard;
|
|
126
|
+
export declare const Loader: typeof rawComponents.Loader;
|
|
127
|
+
export declare const Label: typeof rawComponents.Label;
|
|
128
|
+
export declare const Menu: typeof rawComponents.Menu;
|
|
129
|
+
export declare const Modal: typeof rawComponents.Modal;
|
|
130
|
+
export declare const NumberInput: typeof rawComponents.NumberInput;
|
|
131
|
+
export declare const Pagination: typeof rawComponents.Pagination;
|
|
132
|
+
export declare const Panel: typeof rawComponents.Panel;
|
|
133
|
+
export declare const PanelFooter: typeof rawComponents.PanelFooter;
|
|
134
|
+
export declare const Popover: typeof rawComponents.Popover;
|
|
135
|
+
export declare const Radio: typeof rawComponents.Radio;
|
|
136
|
+
export declare const RadioGroup: typeof rawComponents.RadioGroup;
|
|
137
|
+
export declare const ReadOnlyField: typeof rawComponents.ReadOnlyField;
|
|
138
|
+
export declare const SegmentedControl: typeof rawComponents.SegmentedControl;
|
|
139
|
+
export declare const Slider: typeof rawComponents.Slider;
|
|
140
|
+
export declare const Stepper: typeof rawComponents.Stepper;
|
|
141
|
+
export declare const Switch: typeof rawComponents.Switch;
|
|
142
|
+
export declare const SwitchGroup: typeof rawComponents.SwitchGroup;
|
|
143
|
+
export declare const Table: typeof rawComponents.Table;
|
|
144
|
+
export declare const Tabs: typeof rawComponents.Tabs;
|
|
145
|
+
export declare const TextArea: typeof rawComponents.TextArea;
|
|
146
|
+
export declare const TextField: typeof rawComponents.TextField;
|
|
147
|
+
export declare const TimePicker: typeof rawComponents.TimePicker;
|
|
148
|
+
export declare const Timeline: typeof rawComponents.Timeline;
|
|
149
|
+
export declare const TimelineItem: typeof rawComponents.TimelineItem;
|
|
150
|
+
export declare const Title: typeof rawComponents.Title;
|
|
151
|
+
export declare const Toast: typeof rawComponents.Toast;
|
|
152
|
+
export declare const Tooltip: typeof rawComponents.Tooltip;
|
|
153
|
+
export declare const TransferList: typeof rawComponents.TransferList;
|
|
154
|
+
export declare const Tree: typeof rawComponents.Tree;
|
|
3
155
|
export type { RecursicaCheckboxGroupProps, RecursicaDatePickerProps, RecursicaDropdownProps, RecursicaNumberInputProps, RecursicaRadioGroupProps, RecursicaReadOnlyFieldProps, RecursicaReadOnlyTextFieldProps, RecursicaSliderProps, RecursicaSwitchGroupProps, RecursicaTextAreaProps, RecursicaTextFieldProps, } from './components';
|
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.29.0",
|
|
17
17
|
"type": "module",
|
|
18
18
|
"main": "./dist/mantine-adapter.cjs",
|
|
19
19
|
"module": "./dist/mantine-adapter.js",
|
|
@@ -52,7 +52,7 @@
|
|
|
52
52
|
"build-storybook": "storybook build -o storybook-static",
|
|
53
53
|
"lint": "eslint .",
|
|
54
54
|
"storybook": "storybook dev -p 6011",
|
|
55
|
-
"analyze-tokens": "analyze-tokens --css recursica_variables_scoped.css --dir src/components --output token-analysis.json",
|
|
55
|
+
"analyze-tokens": "analyze-tokens --css @recursica/official-release/recursica_variables_scoped.css --dir src/components --output token-analysis.json",
|
|
56
56
|
"prebuild": "npm run analyze-tokens"
|
|
57
57
|
},
|
|
58
58
|
"devDependencies": {
|
package/src/OverStyling.tsx
CHANGED
|
@@ -1,7 +1,25 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
1
|
+
import {
|
|
2
|
+
Container,
|
|
3
|
+
Card,
|
|
4
|
+
Title,
|
|
5
|
+
Text as RawText,
|
|
6
|
+
Group,
|
|
7
|
+
Stack,
|
|
8
|
+
Switch as RawSwitch,
|
|
9
|
+
} from "./components";
|
|
10
|
+
import { Button as RawButton } from "./components/Button/Button";
|
|
11
|
+
import {
|
|
12
|
+
useGlobalOverStyled,
|
|
13
|
+
toggleGlobalOverStyled,
|
|
14
|
+
wrapComponent,
|
|
15
|
+
} from "@recursica/adapter-common";
|
|
16
|
+
|
|
17
|
+
const Button = wrapComponent(RawButton);
|
|
18
|
+
const Text = wrapComponent(RawText);
|
|
19
|
+
const Switch = wrapComponent(RawSwitch);
|
|
3
20
|
|
|
4
21
|
export const OverStylingInfo = () => {
|
|
22
|
+
const isHighlightActive = useGlobalOverStyled();
|
|
5
23
|
return (
|
|
6
24
|
<Container size="md" style={{ padding: "32px 0" }}>
|
|
7
25
|
<Card>
|
|
@@ -197,6 +215,52 @@ export const OverStylingInfo = () => {
|
|
|
197
215
|
mb="rec-xl"
|
|
198
216
|
/>
|
|
199
217
|
|
|
218
|
+
<Title order={3} mb="rec-sm">
|
|
219
|
+
Visual Auditing & Highlights (Development Only)
|
|
220
|
+
</Title>
|
|
221
|
+
<Text mb="rec-sm">
|
|
222
|
+
To make it easy to spot technical debt and design system violations,
|
|
223
|
+
Recursica automatically tracks any component that uses the{" "}
|
|
224
|
+
<code>overStyled={`{true}`}</code> prop.
|
|
225
|
+
</Text>
|
|
226
|
+
<Text mb="rec-sm">
|
|
227
|
+
In <strong>development builds</strong>, you can highlight all
|
|
228
|
+
over-styled components on the page. Open your browser's developer
|
|
229
|
+
console and run:
|
|
230
|
+
</Text>
|
|
231
|
+
<Stack
|
|
232
|
+
style={{
|
|
233
|
+
padding: 12,
|
|
234
|
+
backgroundColor: "#f5f5f5",
|
|
235
|
+
borderRadius: 6,
|
|
236
|
+
fontSize: 13,
|
|
237
|
+
marginTop: 8,
|
|
238
|
+
marginBottom: 16,
|
|
239
|
+
}}
|
|
240
|
+
>
|
|
241
|
+
<code>recursica.toggleOverStyled()</code>
|
|
242
|
+
</Stack>
|
|
243
|
+
<Group mb="rec-md">
|
|
244
|
+
<Switch
|
|
245
|
+
label="Highlight Over-Styled Components"
|
|
246
|
+
checked={isHighlightActive}
|
|
247
|
+
onChange={() => toggleGlobalOverStyled()}
|
|
248
|
+
/>
|
|
249
|
+
</Group>
|
|
250
|
+
<Text mb="rec-xl">
|
|
251
|
+
This toggles a <strong>cyan 2px box shadow</strong> outline around
|
|
252
|
+
the children of all over-styled components. The wrapping elements
|
|
253
|
+
use <code>display: contents</code> under the hood to ensure they
|
|
254
|
+
occupy zero DOM space and do not affect flex, grid, or absolute
|
|
255
|
+
positioning flow. In production builds, this debugging helper is
|
|
256
|
+
completely disabled and stripped with zero performance overhead.
|
|
257
|
+
</Text>
|
|
258
|
+
|
|
259
|
+
<Stack
|
|
260
|
+
style={{ height: 1, backgroundColor: "#eaeaea" }}
|
|
261
|
+
mb="rec-xl"
|
|
262
|
+
/>
|
|
263
|
+
|
|
200
264
|
<Title order={3} mb="rec-md">
|
|
201
265
|
Live Example
|
|
202
266
|
</Title>
|
|
@@ -217,7 +281,7 @@ export const OverStylingInfo = () => {
|
|
|
217
281
|
</Stack>
|
|
218
282
|
<Stack gap="rec-sm">
|
|
219
283
|
<Text overStyled size="sm" c="dimmed">
|
|
220
|
-
overStyled
|
|
284
|
+
overStyled
|
|
221
285
|
</Text>
|
|
222
286
|
<Button overStyled={true} bg="pink" c="black" radius="xl">
|
|
223
287
|
Unsafe Pink Marketing Button
|
|
@@ -149,8 +149,8 @@ export const AutoComplete = forwardRef<HTMLInputElement, AutoCompleteProps>(
|
|
|
149
149
|
ref={ref}
|
|
150
150
|
classNames={mergedClassNames}
|
|
151
151
|
disabled={disabled}
|
|
152
|
-
value={value as
|
|
153
|
-
defaultValue={defaultValue as
|
|
152
|
+
value={value as string | undefined}
|
|
153
|
+
defaultValue={defaultValue as string | undefined}
|
|
154
154
|
wrapperProps={{
|
|
155
155
|
"data-disabled": disabled ? "true" : undefined,
|
|
156
156
|
"data-error": error ? "true" : undefined,
|
|
@@ -356,9 +356,23 @@
|
|
|
356
356
|
color: var(
|
|
357
357
|
--recursica_ui-kit_components_button_variants_styles_solid_properties_colors_text-hover
|
|
358
358
|
);
|
|
359
|
+
border-color: var(
|
|
360
|
+
--recursica_ui-kit_components_button_variants_styles_solid_properties_colors_border-color-hover
|
|
361
|
+
);
|
|
359
362
|
box-shadow: var(
|
|
360
363
|
--recursica_ui-kit_components_button_variants_styles_solid_properties_hover-elevation
|
|
361
364
|
);
|
|
365
|
+
|
|
366
|
+
.iconWrapper {
|
|
367
|
+
color: var(
|
|
368
|
+
--recursica_ui-kit_components_button_variants_styles_solid_properties_colors_icon-color-hover
|
|
369
|
+
);
|
|
370
|
+
}
|
|
371
|
+
}
|
|
372
|
+
.root[data-variant="solid"]:disabled {
|
|
373
|
+
box-shadow: var(
|
|
374
|
+
--recursica_ui-kit_components_button_variants_styles_solid_properties_disabled-elevation
|
|
375
|
+
);
|
|
362
376
|
}
|
|
363
377
|
|
|
364
378
|
/* OUTLINE */
|
|
@@ -389,9 +403,23 @@
|
|
|
389
403
|
color: var(
|
|
390
404
|
--recursica_ui-kit_components_button_variants_styles_outline_properties_colors_text-hover
|
|
391
405
|
);
|
|
406
|
+
border-color: var(
|
|
407
|
+
--recursica_ui-kit_components_button_variants_styles_outline_properties_colors_border-color-hover
|
|
408
|
+
);
|
|
392
409
|
box-shadow: var(
|
|
393
410
|
--recursica_ui-kit_components_button_variants_styles_outline_properties_hover-elevation
|
|
394
411
|
);
|
|
412
|
+
|
|
413
|
+
.iconWrapper {
|
|
414
|
+
color: var(
|
|
415
|
+
--recursica_ui-kit_components_button_variants_styles_outline_properties_colors_icon-color-hover
|
|
416
|
+
);
|
|
417
|
+
}
|
|
418
|
+
}
|
|
419
|
+
.root[data-variant="outline"]:disabled {
|
|
420
|
+
box-shadow: var(
|
|
421
|
+
--recursica_ui-kit_components_button_variants_styles_outline_properties_disabled-elevation
|
|
422
|
+
);
|
|
395
423
|
}
|
|
396
424
|
|
|
397
425
|
/* TEXT */
|
|
@@ -422,7 +450,21 @@
|
|
|
422
450
|
color: var(
|
|
423
451
|
--recursica_ui-kit_components_button_variants_styles_text_properties_colors_text-hover
|
|
424
452
|
);
|
|
453
|
+
border-color: var(
|
|
454
|
+
--recursica_ui-kit_components_button_variants_styles_text_properties_colors_border-color-hover
|
|
455
|
+
);
|
|
425
456
|
box-shadow: var(
|
|
426
457
|
--recursica_ui-kit_components_button_variants_styles_text_properties_hover-elevation
|
|
427
458
|
);
|
|
459
|
+
|
|
460
|
+
.iconWrapper {
|
|
461
|
+
color: var(
|
|
462
|
+
--recursica_ui-kit_components_button_variants_styles_text_properties_colors_icon-color-hover
|
|
463
|
+
);
|
|
464
|
+
}
|
|
465
|
+
}
|
|
466
|
+
.root[data-variant="text"]:disabled {
|
|
467
|
+
box-shadow: var(
|
|
468
|
+
--recursica_ui-kit_components_button_variants_styles_text_properties_disabled-elevation
|
|
469
|
+
);
|
|
428
470
|
}
|
|
@@ -50,7 +50,9 @@ const CardBase = forwardRef<HTMLDivElement, CardProps>(function Card(
|
|
|
50
50
|
] as const;
|
|
51
51
|
safeCardLayoutKeys.forEach((key) => {
|
|
52
52
|
if (key in rest && !(key in sanitizedProps)) {
|
|
53
|
-
(sanitizedProps as
|
|
53
|
+
(sanitizedProps as Record<string, unknown>)[key] = (
|
|
54
|
+
rest as Record<string, unknown>
|
|
55
|
+
)[key];
|
|
54
56
|
}
|
|
55
57
|
});
|
|
56
58
|
|
|
@@ -150,7 +150,7 @@ export const Dropdown = forwardRef<HTMLInputElement, DropdownProps>(
|
|
|
150
150
|
disabled={disabled}
|
|
151
151
|
value={value}
|
|
152
152
|
defaultValue={defaultValue}
|
|
153
|
-
data={(data as
|
|
153
|
+
data={(data as unknown as MantineSelectProps["data"]) || []}
|
|
154
154
|
label={undefined}
|
|
155
155
|
description={undefined}
|
|
156
156
|
error={undefined}
|
|
@@ -49,7 +49,7 @@ const _Link = forwardRef<HTMLAnchorElement, LinkProps>(function Link(
|
|
|
49
49
|
classNames={mergedClassNames}
|
|
50
50
|
underline="never"
|
|
51
51
|
{...(icon ? { "data-has-icon": "" } : {})}
|
|
52
|
-
{...(sanitizedProps as
|
|
52
|
+
{...(sanitizedProps as Record<string, unknown>)}
|
|
53
53
|
>
|
|
54
54
|
{icon && (
|
|
55
55
|
<span className={styles.iconWrapper} aria-hidden>
|
|
@@ -21,8 +21,6 @@ const meta: Meta<typeof NumberInput> = {
|
|
|
21
21
|
control: "select",
|
|
22
22
|
options: ["small", "default", "large"],
|
|
23
23
|
},
|
|
24
|
-
checked: { table: { disable: true } },
|
|
25
|
-
defaultChecked: { table: { disable: true } },
|
|
26
24
|
assistiveWithIcon: { table: { disable: true } },
|
|
27
25
|
labelOptionalText: { table: { disable: true } },
|
|
28
26
|
labelWithEditIcon: { table: { disable: true } },
|
|
@@ -21,7 +21,7 @@ import { type RecursicaPanelProps as BaseRecursicaPanelProps } from "@recursica/
|
|
|
21
21
|
export interface RecursicaPanelProps
|
|
22
22
|
extends Omit<
|
|
23
23
|
MantineDrawerProps,
|
|
24
|
-
"size" | "styles" | "classNames" | "style" | "position"
|
|
24
|
+
"size" | "styles" | "classNames" | "style" | "position" | "opened"
|
|
25
25
|
>,
|
|
26
26
|
BaseRecursicaPanelProps {}
|
|
27
27
|
|
|
@@ -35,9 +35,14 @@ import { type RecursicaPopoverProps } from "@recursica/adapter-common";
|
|
|
35
35
|
* </Popover>
|
|
36
36
|
* ```
|
|
37
37
|
*/
|
|
38
|
-
export type PopoverProps =
|
|
39
|
-
|
|
40
|
-
|
|
38
|
+
export type PopoverProps = Omit<
|
|
39
|
+
RecursicaOverStyled<
|
|
40
|
+
Omit<MantinePopoverProps, "position"> & RecursicaPopoverProps
|
|
41
|
+
>,
|
|
42
|
+
"position"
|
|
43
|
+
> & {
|
|
44
|
+
position?: MantinePopoverProps["position"];
|
|
45
|
+
};
|
|
41
46
|
|
|
42
47
|
const PopoverBase = function Popover({
|
|
43
48
|
overStyled = false,
|
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
- background-color: transparent; on label hover (overriding Mantine)
|
|
4
4
|
- Scope prefix .root to enforce Figma tokens over Mantine's inline calculation without using !important
|
|
5
5
|
*/
|
|
6
|
+
/* recursica-ignore: --recursica_ui-kit_components_segmented-control-item_properties_item_border-radius */
|
|
6
7
|
|
|
7
8
|
.root {
|
|
8
9
|
background-color: var(
|
|
@@ -5,6 +5,7 @@
|
|
|
5
5
|
* - transform: translateX(-50%); (Mantine's standard step marks positioning alignment offset)
|
|
6
6
|
* - outline: none; border-style: solid; (Standard focus reset and border outlines)
|
|
7
7
|
*/
|
|
8
|
+
/* recursica-ignore: --recursica_ui-kit_components_slider_properties_input-border-size */
|
|
8
9
|
|
|
9
10
|
/* ==========================================
|
|
10
11
|
1. Baseline, Reset & Layout Overrides
|
|
@@ -356,6 +357,34 @@
|
|
|
356
357
|
6. State-Specific Overrides (Disabled, Error)
|
|
357
358
|
========================================== */
|
|
358
359
|
|
|
360
|
+
/* Focus states */
|
|
361
|
+
.sliderRoot:has(.sliderThumb:focus) .sliderTrack,
|
|
362
|
+
.sliderRoot:focus-within .sliderTrack {
|
|
363
|
+
background-color: var(
|
|
364
|
+
--recursica_ui-kit_components_slider_variants_states_focus_properties_colors_track
|
|
365
|
+
);
|
|
366
|
+
}
|
|
367
|
+
|
|
368
|
+
.sliderRoot:has(.sliderThumb:focus) .sliderMark,
|
|
369
|
+
.sliderRoot:focus-within .sliderMark {
|
|
370
|
+
background-color: var(
|
|
371
|
+
--recursica_ui-kit_components_slider_variants_states_focus_properties_colors_step-indicator-color
|
|
372
|
+
);
|
|
373
|
+
}
|
|
374
|
+
|
|
375
|
+
.sliderRoot:has(.sliderThumb:focus) .sliderMark[data-filled],
|
|
376
|
+
.sliderRoot:focus-within .sliderMark[data-filled] {
|
|
377
|
+
background-color: var(
|
|
378
|
+
--recursica_ui-kit_components_slider_variants_states_focus_properties_colors_step-indicator-color-active
|
|
379
|
+
);
|
|
380
|
+
}
|
|
381
|
+
|
|
382
|
+
.sliderContainer:focus-within .iconWrapper {
|
|
383
|
+
color: var(
|
|
384
|
+
--recursica_ui-kit_components_slider_variants_states_focus_properties_colors_icon-color
|
|
385
|
+
);
|
|
386
|
+
}
|
|
387
|
+
|
|
359
388
|
/* Disabled state */
|
|
360
389
|
.sliderContainer[data-disabled="true"] .iconWrapper {
|
|
361
390
|
color: var(
|