@recursica/mui-adapter 0.1.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/.storybook/commonArgTypes.ts +148 -0
- package/CHANGELOG.md +13 -0
- package/LICENSE +21 -0
- package/README.md +70 -0
- package/dist/index.d.ts +2 -0
- package/dist/mui-adapter.cjs +2 -0
- package/dist/mui-adapter.cjs.map +1 -0
- package/dist/mui-adapter.css +1 -0
- package/dist/mui-adapter.js +164 -0
- package/dist/mui-adapter.js.map +1 -0
- package/dist/src/components/Accordion/Accordion.d.ts +3 -0
- package/dist/src/components/Accordion/index.d.ts +1 -0
- package/dist/src/components/AssistiveElement/AssistiveElement.d.ts +3 -0
- package/dist/src/components/AssistiveElement/index.d.ts +1 -0
- package/dist/src/components/Avatar/Avatar.d.ts +3 -0
- package/dist/src/components/Avatar/index.d.ts +1 -0
- package/dist/src/components/Badge/Badge.d.ts +3 -0
- package/dist/src/components/Badge/index.d.ts +1 -0
- package/dist/src/components/Box/Box.d.ts +9 -0
- package/dist/src/components/Box/index.d.ts +1 -0
- package/dist/src/components/Breadcrumb/Breadcrumb.d.ts +3 -0
- package/dist/src/components/Breadcrumb/index.d.ts +1 -0
- package/dist/src/components/Button/Button.d.ts +3 -0
- package/dist/src/components/Button/index.d.ts +1 -0
- package/dist/src/components/Card/Card.d.ts +3 -0
- package/dist/src/components/Card/index.d.ts +1 -0
- package/dist/src/components/Checkbox/Checkbox.d.ts +3 -0
- package/dist/src/components/Checkbox/index.d.ts +1 -0
- package/dist/src/components/Chip/Chip.d.ts +3 -0
- package/dist/src/components/Chip/index.d.ts +1 -0
- package/dist/src/components/Container/Container.d.ts +3 -0
- package/dist/src/components/Container/index.d.ts +1 -0
- package/dist/src/components/DatePicker/DatePicker.d.ts +3 -0
- package/dist/src/components/DatePicker/index.d.ts +1 -0
- package/dist/src/components/Dropdown/Dropdown.d.ts +3 -0
- package/dist/src/components/Dropdown/index.d.ts +1 -0
- package/dist/src/components/FileInput/FileInput.d.ts +3 -0
- package/dist/src/components/FileInput/index.d.ts +1 -0
- package/dist/src/components/FileUpload/FileUpload.d.ts +3 -0
- package/dist/src/components/FileUpload/index.d.ts +1 -0
- package/dist/src/components/Flex/Flex.d.ts +3 -0
- package/dist/src/components/Flex/index.d.ts +1 -0
- package/dist/src/components/FormControlLayout/FormControlLayout.d.ts +3 -0
- package/dist/src/components/FormControlLayout/index.d.ts +1 -0
- package/dist/src/components/FormControlWrapper/FormControlWrapper.d.ts +3 -0
- package/dist/src/components/FormControlWrapper/index.d.ts +1 -0
- package/dist/src/components/Group/Group.d.ts +3 -0
- package/dist/src/components/Group/index.d.ts +1 -0
- package/dist/src/components/HoverCard/HoverCard.d.ts +3 -0
- package/dist/src/components/HoverCard/index.d.ts +1 -0
- package/dist/src/components/Label/Label.d.ts +3 -0
- package/dist/src/components/Label/index.d.ts +1 -0
- package/dist/src/components/Link/Link.d.ts +3 -0
- package/dist/src/components/Link/index.d.ts +1 -0
- package/dist/src/components/Loader/Loader.d.ts +3 -0
- package/dist/src/components/Loader/index.d.ts +1 -0
- package/dist/src/components/Menu/Menu.d.ts +3 -0
- package/dist/src/components/Menu/index.d.ts +1 -0
- package/dist/src/components/Modal/Modal.d.ts +3 -0
- package/dist/src/components/Modal/index.d.ts +1 -0
- package/dist/src/components/NumberInput/NumberInput.d.ts +3 -0
- package/dist/src/components/NumberInput/index.d.ts +1 -0
- package/dist/src/components/Pagination/Pagination.d.ts +3 -0
- package/dist/src/components/Pagination/index.d.ts +1 -0
- package/dist/src/components/Panel/Panel.d.ts +3 -0
- package/dist/src/components/Panel/index.d.ts +1 -0
- package/dist/src/components/Radio/Radio.d.ts +3 -0
- package/dist/src/components/Radio/index.d.ts +1 -0
- package/dist/src/components/ReadOnlyField/ReadOnlyField.d.ts +3 -0
- package/dist/src/components/ReadOnlyField/index.d.ts +1 -0
- package/dist/src/components/SegmentedControl/SegmentedControl.d.ts +3 -0
- package/dist/src/components/SegmentedControl/index.d.ts +1 -0
- package/dist/src/components/Slider/Slider.d.ts +3 -0
- package/dist/src/components/Slider/index.d.ts +1 -0
- package/dist/src/components/Stack/Stack.d.ts +3 -0
- package/dist/src/components/Stack/index.d.ts +1 -0
- package/dist/src/components/Stepper/Stepper.d.ts +3 -0
- package/dist/src/components/Stepper/index.d.ts +1 -0
- package/dist/src/components/Switch/Switch.d.ts +3 -0
- package/dist/src/components/Switch/index.d.ts +1 -0
- package/dist/src/components/Table/Table.d.ts +3 -0
- package/dist/src/components/Table/index.d.ts +1 -0
- package/dist/src/components/Tabs/Tabs.d.ts +3 -0
- package/dist/src/components/Tabs/index.d.ts +1 -0
- package/dist/src/components/Text/Text.d.ts +3 -0
- package/dist/src/components/Text/index.d.ts +1 -0
- package/dist/src/components/TextArea/TextArea.d.ts +3 -0
- package/dist/src/components/TextArea/index.d.ts +1 -0
- package/dist/src/components/TextField/TextField.d.ts +3 -0
- package/dist/src/components/TextField/index.d.ts +1 -0
- package/dist/src/components/TimePicker/TimePicker.d.ts +3 -0
- package/dist/src/components/TimePicker/index.d.ts +1 -0
- package/dist/src/components/Timeline/Timeline.d.ts +3 -0
- package/dist/src/components/Timeline/index.d.ts +1 -0
- package/dist/src/components/Title/Title.d.ts +3 -0
- package/dist/src/components/Title/index.d.ts +1 -0
- package/dist/src/components/Toast/Toast.d.ts +3 -0
- package/dist/src/components/Toast/index.d.ts +1 -0
- package/dist/src/components/Tooltip/Tooltip.d.ts +3 -0
- package/dist/src/components/Tooltip/index.d.ts +1 -0
- package/dist/src/components/TransferList/TransferList.d.ts +3 -0
- package/dist/src/components/TransferList/index.d.ts +1 -0
- package/dist/src/components/index.d.ts +46 -0
- package/dist/src/index.d.ts +2 -0
- package/dist/src/types/index.d.ts +6 -0
- package/dist/src/utils/ColorSchemeWrapper.d.ts +3 -0
- package/dist/src/utils/RequireAccessibleLabel.d.ts +18 -0
- package/dist/src/utils/copyToClipboard.d.ts +8 -0
- package/dist/src/utils/filterStylingProps.d.ts +36 -0
- package/dist/src/utils/index.d.ts +1 -0
- package/dist/vite.config.d.ts +2 -0
- package/dist/vite.svg +1 -0
- package/dist/vitest.workspace.d.ts +2 -0
- package/package.json +98 -0
- package/src/OverStyling.stories.tsx +235 -0
- package/src/Version.stories.tsx +56 -0
- package/src/components/Accordion/Accordion.stories.tsx +16 -0
- package/src/components/Accordion/Accordion.tsx +7 -0
- package/src/components/Accordion/index.ts +1 -0
- package/src/components/AssistiveElement/AssistiveElement.stories.tsx +16 -0
- package/src/components/AssistiveElement/AssistiveElement.tsx +7 -0
- package/src/components/AssistiveElement/index.ts +1 -0
- package/src/components/Avatar/Avatar.stories.tsx +16 -0
- package/src/components/Avatar/Avatar.tsx +7 -0
- package/src/components/Avatar/index.ts +1 -0
- package/src/components/Badge/Badge.stories.tsx +16 -0
- package/src/components/Badge/Badge.tsx +7 -0
- package/src/components/Badge/index.ts +1 -0
- package/src/components/Box/Box.stories.tsx +59 -0
- package/src/components/Box/Box.tsx +27 -0
- package/src/components/Box/index.ts +1 -0
- package/src/components/Breadcrumb/Breadcrumb.stories.tsx +16 -0
- package/src/components/Breadcrumb/Breadcrumb.tsx +7 -0
- package/src/components/Breadcrumb/index.ts +1 -0
- package/src/components/Button/Button.stories.tsx +16 -0
- package/src/components/Button/Button.tsx +7 -0
- package/src/components/Button/index.ts +1 -0
- package/src/components/Card/Card.stories.tsx +16 -0
- package/src/components/Card/Card.tsx +7 -0
- package/src/components/Card/index.ts +1 -0
- package/src/components/Checkbox/Checkbox.stories.tsx +16 -0
- package/src/components/Checkbox/Checkbox.tsx +7 -0
- package/src/components/Checkbox/index.ts +1 -0
- package/src/components/Chip/Chip.stories.tsx +16 -0
- package/src/components/Chip/Chip.tsx +7 -0
- package/src/components/Chip/index.ts +1 -0
- package/src/components/Container/Container.stories.tsx +16 -0
- package/src/components/Container/Container.tsx +7 -0
- package/src/components/Container/index.ts +1 -0
- package/src/components/DatePicker/DatePicker.stories.tsx +16 -0
- package/src/components/DatePicker/DatePicker.tsx +7 -0
- package/src/components/DatePicker/index.ts +1 -0
- package/src/components/Dropdown/Dropdown.stories.tsx +16 -0
- package/src/components/Dropdown/Dropdown.tsx +7 -0
- package/src/components/Dropdown/index.ts +1 -0
- package/src/components/FileInput/FileInput.stories.tsx +16 -0
- package/src/components/FileInput/FileInput.tsx +7 -0
- package/src/components/FileInput/index.ts +1 -0
- package/src/components/FileUpload/FileUpload.stories.tsx +16 -0
- package/src/components/FileUpload/FileUpload.tsx +7 -0
- package/src/components/FileUpload/index.ts +1 -0
- package/src/components/Flex/Flex.stories.tsx +16 -0
- package/src/components/Flex/Flex.tsx +7 -0
- package/src/components/Flex/index.ts +1 -0
- package/src/components/FormControlLayout/FormControlLayout.stories.tsx +16 -0
- package/src/components/FormControlLayout/FormControlLayout.tsx +7 -0
- package/src/components/FormControlLayout/index.ts +1 -0
- package/src/components/FormControlWrapper/FormControlWrapper.stories.tsx +16 -0
- package/src/components/FormControlWrapper/FormControlWrapper.tsx +9 -0
- package/src/components/FormControlWrapper/index.ts +1 -0
- package/src/components/Group/Group.stories.tsx +16 -0
- package/src/components/Group/Group.tsx +7 -0
- package/src/components/Group/index.ts +1 -0
- package/src/components/HoverCard/HoverCard.stories.tsx +16 -0
- package/src/components/HoverCard/HoverCard.tsx +7 -0
- package/src/components/HoverCard/index.ts +1 -0
- package/src/components/Label/Label.stories.tsx +16 -0
- package/src/components/Label/Label.tsx +7 -0
- package/src/components/Label/index.ts +1 -0
- package/src/components/Link/Link.stories.tsx +16 -0
- package/src/components/Link/Link.tsx +7 -0
- package/src/components/Link/index.ts +1 -0
- package/src/components/Loader/Loader.stories.tsx +16 -0
- package/src/components/Loader/Loader.tsx +7 -0
- package/src/components/Loader/index.ts +1 -0
- package/src/components/Menu/Menu.stories.tsx +16 -0
- package/src/components/Menu/Menu.tsx +7 -0
- package/src/components/Menu/index.ts +1 -0
- package/src/components/Modal/Modal.stories.tsx +16 -0
- package/src/components/Modal/Modal.tsx +7 -0
- package/src/components/Modal/index.ts +1 -0
- package/src/components/NumberInput/NumberInput.stories.tsx +16 -0
- package/src/components/NumberInput/NumberInput.tsx +7 -0
- package/src/components/NumberInput/index.ts +1 -0
- package/src/components/Pagination/Pagination.stories.tsx +16 -0
- package/src/components/Pagination/Pagination.tsx +7 -0
- package/src/components/Pagination/index.ts +1 -0
- package/src/components/Panel/Panel.stories.tsx +16 -0
- package/src/components/Panel/Panel.tsx +7 -0
- package/src/components/Panel/index.ts +1 -0
- package/src/components/Radio/Radio.stories.tsx +16 -0
- package/src/components/Radio/Radio.tsx +7 -0
- package/src/components/Radio/index.ts +1 -0
- package/src/components/ReadOnlyField/ReadOnlyField.stories.tsx +16 -0
- package/src/components/ReadOnlyField/ReadOnlyField.tsx +7 -0
- package/src/components/ReadOnlyField/index.ts +1 -0
- package/src/components/SegmentedControl/SegmentedControl.stories.tsx +16 -0
- package/src/components/SegmentedControl/SegmentedControl.tsx +7 -0
- package/src/components/SegmentedControl/index.ts +1 -0
- package/src/components/Slider/Slider.stories.tsx +16 -0
- package/src/components/Slider/Slider.tsx +7 -0
- package/src/components/Slider/index.ts +1 -0
- package/src/components/Stack/Stack.stories.tsx +16 -0
- package/src/components/Stack/Stack.tsx +7 -0
- package/src/components/Stack/index.ts +1 -0
- package/src/components/Stepper/Stepper.stories.tsx +16 -0
- package/src/components/Stepper/Stepper.tsx +7 -0
- package/src/components/Stepper/index.ts +1 -0
- package/src/components/Switch/Switch.stories.tsx +16 -0
- package/src/components/Switch/Switch.tsx +7 -0
- package/src/components/Switch/index.ts +1 -0
- package/src/components/Table/Table.stories.tsx +16 -0
- package/src/components/Table/Table.tsx +7 -0
- package/src/components/Table/index.ts +1 -0
- package/src/components/Tabs/Tabs.stories.tsx +16 -0
- package/src/components/Tabs/Tabs.tsx +7 -0
- package/src/components/Tabs/index.ts +1 -0
- package/src/components/Text/Text.stories.tsx +16 -0
- package/src/components/Text/Text.tsx +7 -0
- package/src/components/Text/index.ts +1 -0
- package/src/components/TextArea/TextArea.stories.tsx +16 -0
- package/src/components/TextArea/TextArea.tsx +7 -0
- package/src/components/TextArea/index.ts +1 -0
- package/src/components/TextField/TextField.stories.tsx +16 -0
- package/src/components/TextField/TextField.tsx +7 -0
- package/src/components/TextField/index.ts +1 -0
- package/src/components/TimePicker/TimePicker.stories.tsx +16 -0
- package/src/components/TimePicker/TimePicker.tsx +7 -0
- package/src/components/TimePicker/index.ts +1 -0
- package/src/components/Timeline/Timeline.stories.tsx +16 -0
- package/src/components/Timeline/Timeline.tsx +7 -0
- package/src/components/Timeline/index.ts +1 -0
- package/src/components/Title/Title.stories.tsx +16 -0
- package/src/components/Title/Title.tsx +7 -0
- package/src/components/Title/index.ts +1 -0
- package/src/components/Toast/Toast.stories.tsx +16 -0
- package/src/components/Toast/Toast.tsx +7 -0
- package/src/components/Toast/index.ts +1 -0
- package/src/components/Tooltip/Tooltip.stories.tsx +16 -0
- package/src/components/Tooltip/Tooltip.tsx +7 -0
- package/src/components/Tooltip/index.ts +1 -0
- package/src/components/TransferList/TransferList.stories.tsx +16 -0
- package/src/components/TransferList/TransferList.tsx +7 -0
- package/src/components/TransferList/index.ts +1 -0
- package/src/components/index.ts +46 -0
- package/src/env.d.ts +7 -0
- package/src/index.ts +3 -0
- package/src/types/index.ts +9 -0
- package/src/types/mantine.d.ts +7 -0
- package/src/types/scss-modules.d.ts +9 -0
- package/src/utils/ColorSchemeWrapper.tsx +27 -0
- package/src/utils/RequireAccessibleLabel.ts +12 -0
- package/src/utils/copyToClipboard.ts +36 -0
- package/src/utils/filterStylingProps.ts +139 -0
- package/src/utils/index.ts +1 -0
|
@@ -0,0 +1,148 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* commonArgTypes.ts
|
|
3
|
+
*
|
|
4
|
+
* This file centralizes the standard Storybook Controls (ArgTypes) for all UI Kit
|
|
5
|
+
* components that natively wrap or extend the `FormControlWrapper`.
|
|
6
|
+
*
|
|
7
|
+
* PHILOSOPHY:
|
|
8
|
+
* Recursica ensures strict unified design boundaries across all form inputs (TextField,
|
|
9
|
+
* CheckboxGroup, Dropdown, etc.). Because they all share the exact same label structures,
|
|
10
|
+
* layout variants (stacked vs side-by-side), and assistive text bindings natively supplied
|
|
11
|
+
* by the `FormControlWrapper`, their Storybook experiences should be exactly identical.
|
|
12
|
+
*
|
|
13
|
+
* USAGE:
|
|
14
|
+
* Rather than recreating these controls inside every `Component.stories.tsx` file,
|
|
15
|
+
* developers must spread this object directly into the `argTypes` of their story default block:
|
|
16
|
+
*
|
|
17
|
+
* ```tsx
|
|
18
|
+
* import { formControlArgTypes } from "../../.storybook/commonArgTypes";
|
|
19
|
+
*
|
|
20
|
+
* export default {
|
|
21
|
+
* component: TextField,
|
|
22
|
+
* argTypes: {
|
|
23
|
+
* ...formControlArgTypes,
|
|
24
|
+
* // Component-specific argTypes below...
|
|
25
|
+
* }
|
|
26
|
+
* }
|
|
27
|
+
* ```
|
|
28
|
+
*/
|
|
29
|
+
import type { ArgTypes } from "@storybook/react";
|
|
30
|
+
|
|
31
|
+
export const formControlArgTypes: Partial<ArgTypes> = {
|
|
32
|
+
formLayout: {
|
|
33
|
+
control: "inline-radio",
|
|
34
|
+
options: ["stacked", "side-by-side"],
|
|
35
|
+
description:
|
|
36
|
+
"Determines the structural flow layout of the Label relative to the Input.",
|
|
37
|
+
table: {
|
|
38
|
+
category: "Form Layout",
|
|
39
|
+
},
|
|
40
|
+
},
|
|
41
|
+
labelSize: {
|
|
42
|
+
control: "inline-radio",
|
|
43
|
+
options: ["default", "small"],
|
|
44
|
+
description:
|
|
45
|
+
"Adjusts the typographical boundaries bounding the Label section.",
|
|
46
|
+
table: {
|
|
47
|
+
category: "Form Layout",
|
|
48
|
+
},
|
|
49
|
+
},
|
|
50
|
+
labelAlignment: {
|
|
51
|
+
control: "inline-radio",
|
|
52
|
+
options: ["left", "right"],
|
|
53
|
+
description:
|
|
54
|
+
"Adjusts the explicit text alignment axis exclusively evaluating side-by-side structures.",
|
|
55
|
+
table: {
|
|
56
|
+
category: "Form Layout",
|
|
57
|
+
},
|
|
58
|
+
},
|
|
59
|
+
labelOptionalText: {
|
|
60
|
+
control: "text",
|
|
61
|
+
description:
|
|
62
|
+
"Optional secondary stylistic text injected alongside the primary Label node.",
|
|
63
|
+
table: {
|
|
64
|
+
category: "Form Layout",
|
|
65
|
+
},
|
|
66
|
+
},
|
|
67
|
+
labelWithEditIcon: {
|
|
68
|
+
control: "boolean",
|
|
69
|
+
description:
|
|
70
|
+
"Dynamically toggles interactivity hooks revealing the Edit context icon.",
|
|
71
|
+
table: {
|
|
72
|
+
category: "Form Layout",
|
|
73
|
+
},
|
|
74
|
+
},
|
|
75
|
+
description: {
|
|
76
|
+
table: {
|
|
77
|
+
disable: true,
|
|
78
|
+
},
|
|
79
|
+
},
|
|
80
|
+
assistiveText: {
|
|
81
|
+
control: "text",
|
|
82
|
+
description:
|
|
83
|
+
"Helper instructions safely dynamically anchored below the input box natively outperforming description.",
|
|
84
|
+
table: {
|
|
85
|
+
category: "Form Layout",
|
|
86
|
+
},
|
|
87
|
+
},
|
|
88
|
+
assistiveWithIcon: {
|
|
89
|
+
control: "boolean",
|
|
90
|
+
description:
|
|
91
|
+
"Toggles native Recursica Info-styling rendering universally alongside the assistive block.",
|
|
92
|
+
table: {
|
|
93
|
+
category: "Form Layout",
|
|
94
|
+
},
|
|
95
|
+
},
|
|
96
|
+
error: {
|
|
97
|
+
control: "text",
|
|
98
|
+
description:
|
|
99
|
+
"Dynamically maps error feedback validation strings rendering explicit error states.",
|
|
100
|
+
table: {
|
|
101
|
+
category: "Form State",
|
|
102
|
+
},
|
|
103
|
+
},
|
|
104
|
+
required: {
|
|
105
|
+
control: "boolean",
|
|
106
|
+
description:
|
|
107
|
+
"Native DOM compliance flag explicitly marking the field as required natively.",
|
|
108
|
+
table: {
|
|
109
|
+
category: "Form State",
|
|
110
|
+
},
|
|
111
|
+
},
|
|
112
|
+
disabled: {
|
|
113
|
+
control: "boolean",
|
|
114
|
+
description:
|
|
115
|
+
"Globally disables interactive components bounding all click and focus logic natively.",
|
|
116
|
+
table: {
|
|
117
|
+
category: "Form State",
|
|
118
|
+
},
|
|
119
|
+
},
|
|
120
|
+
withAsterisk: {
|
|
121
|
+
control: "boolean",
|
|
122
|
+
description:
|
|
123
|
+
"Visually forces the mandatory asterisk presence completely independent of logical 'required' attribute properties.",
|
|
124
|
+
table: {
|
|
125
|
+
category: "Form State",
|
|
126
|
+
},
|
|
127
|
+
},
|
|
128
|
+
labelActionArea: {
|
|
129
|
+
table: {
|
|
130
|
+
disable: true,
|
|
131
|
+
},
|
|
132
|
+
},
|
|
133
|
+
onLabelEditClick: {
|
|
134
|
+
table: {
|
|
135
|
+
disable: true,
|
|
136
|
+
},
|
|
137
|
+
},
|
|
138
|
+
controlMaxWidth: {
|
|
139
|
+
table: {
|
|
140
|
+
disable: true,
|
|
141
|
+
},
|
|
142
|
+
},
|
|
143
|
+
controlMinWidth: {
|
|
144
|
+
table: {
|
|
145
|
+
disable: true,
|
|
146
|
+
},
|
|
147
|
+
},
|
|
148
|
+
};
|
package/CHANGELOG.md
ADDED
package/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2024 Border LLC
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/README.md
ADDED
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
# @recursica/mui-adapter
|
|
2
|
+
|
|
3
|
+
A modern React component library built with TypeScript and **MUI 7**. This package serves as the core UI kit for Recursica applications, providing reusable UI components, centralized theme configurations, and a comprehensive Storybook environment for development.
|
|
4
|
+
|
|
5
|
+
## Installation
|
|
6
|
+
|
|
7
|
+
```bash
|
|
8
|
+
npm install @recursica/mui-adapter
|
|
9
|
+
# or
|
|
10
|
+
yarn add @recursica/mui-adapter
|
|
11
|
+
# or
|
|
12
|
+
pnpm add @recursica/mui-adapter
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
## Peer Dependencies
|
|
16
|
+
|
|
17
|
+
This library requires the following peer dependencies to be installed in your project:
|
|
18
|
+
|
|
19
|
+
```bash
|
|
20
|
+
npm install @mui/core@>=7.0.0 @mui/dates@>=7.0.0 @mui/hooks@>=7.0.0 react@>=16.8.0 react-dom@>=16.8.0
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
**Important**: Make sure you have these exact versions or higher installed, as the components rely on MUI 7+ features and React 16.8+ hooks.
|
|
24
|
+
|
|
25
|
+
## Philosophy
|
|
26
|
+
|
|
27
|
+
Please read [PHILOSOPHY.md](./docs/PHILOSOPHY.md) to understand the core principles of the adapter.
|
|
28
|
+
|
|
29
|
+
## Developer & AI Guidelines
|
|
30
|
+
|
|
31
|
+
This repository provides dedicated routing documents for both human developers and AI Agents to ensure strict adherence to our design system constraints.
|
|
32
|
+
|
|
33
|
+
- **For Human Developers:** This `README.md` acts as your primary routing document. If you are integrating this library into an application, please read [USAGE.md](./USAGE.md). If you are building or modifying components inside this library, please read [CONTRIBUTING.md](./CONTRIBUTING.md).
|
|
34
|
+
- **For AI Agents:** All AI Agents operating in this repository must start by reading [AGENT.md](./AGENT.md), which serves as the primary routing document for AI workflows.
|
|
35
|
+
|
|
36
|
+
## Development and Architecture
|
|
37
|
+
|
|
38
|
+
This project is built using:
|
|
39
|
+
|
|
40
|
+
- **Vite (Library Mode)**: For fast builds, producing optimized ES and CJS modules.
|
|
41
|
+
- **MUI 7**: Base components, hooks, and native standard styling architecture.
|
|
42
|
+
- **Storybook**: Used heavily for interactive component development, documentation, and prototyping.
|
|
43
|
+
|
|
44
|
+
> **Note:** We relying completely on MUI's built-in CSS styling and Vite's native CSS/CSS Modules capabilities. No complex CSS-in-JS overhead!
|
|
45
|
+
|
|
46
|
+
## Storybook Documentation
|
|
47
|
+
|
|
48
|
+
This library includes Storybook for all components. You can:
|
|
49
|
+
|
|
50
|
+
- **View live examples** of components.
|
|
51
|
+
- **Test component interactions** and accessibility.
|
|
52
|
+
- **Explore UI tokens** and layout utilities.
|
|
53
|
+
|
|
54
|
+
### Accessing Storybook Locally
|
|
55
|
+
|
|
56
|
+
If you're contributing or developing locally, clone the repository and run:
|
|
57
|
+
|
|
58
|
+
```bash
|
|
59
|
+
npm run storybook
|
|
60
|
+
```
|
|
61
|
+
|
|
62
|
+
This will spin up a local server (typically at `http://localhost:6006`) with a hot-reloading environment for component prototyping.
|
|
63
|
+
|
|
64
|
+
## TypeScript Support
|
|
65
|
+
|
|
66
|
+
All newly built components will include full TypeScript support with comprehensive prop types exported.
|
|
67
|
+
|
|
68
|
+
## License
|
|
69
|
+
|
|
70
|
+
This project is licensed under the MIT License - see the [LICENSE](./LICENSE) file for details.
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("react/jsx-runtime"),c=require("react"),m=require("@mui/material"),p=e=>r.jsx("div",{...e,children:"Accordion"}),j=e=>r.jsx("div",{...e,children:"AssistiveElement"}),b=e=>r.jsx("div",{...e,children:"Avatar"}),T=e=>r.jsx("div",{...e,children:"Badge"}),_=["className","classes","style","sx","color","bgcolor","backgroundColor","typography","fontFamily","fontSize","fontWeight","lineHeight","letterSpacing","textAlign","border","borderTop","borderBottom","borderLeft","borderRight","borderColor","borderRadius","boxShadow","display","position","zIndex"],g=new Set(["m","my","mx","mt","mb","ml","mr","p","py","px","pt","pb","pl","pr","gap","rowGap","columnGap","top","left","bottom","right"]),a={"rec-none":"var(--recursica_brand_dimensions_general_none)","rec-sm":"var(--recursica_brand_dimensions_general_sm)","rec-default":"var(--recursica_brand_dimensions_general_default)","rec-md":"var(--recursica_brand_dimensions_general_md)","rec-lg":"var(--recursica_brand_dimensions_general_lg)","rec-xl":"var(--recursica_brand_dimensions_general_xl)","rec-2xl":"var(--recursica_brand_dimensions_general_2xl)"};function y(e,i){if(i)return e;const n={...e};for(const t of _)t in n&&delete n[t];for(const[t,o]of Object.entries(n))typeof o=="string"&&o.startsWith("rec-")&&g.has(t)&&o in a&&(n[t]=a[o]);return n}const f=c.forwardRef(function(i,n){const{overStyled:t=!1,...o}=i,d=y(o,t);return r.jsx(m.Box,{ref:n,...d})}),C=e=>r.jsx("div",{...e,children:"Breadcrumb"}),S=e=>r.jsx("div",{...e,children:"Button"}),F=e=>r.jsx("div",{...e,children:"Card"}),A=e=>r.jsx("div",{...e,children:"Checkbox"}),L=e=>r.jsx("div",{...e,children:"Chip"}),P=e=>r.jsx("div",{...e,children:"Container"}),k=e=>r.jsx("div",{...e,children:"DatePicker"}),B=e=>r.jsx("div",{...e,children:"Dropdown"}),R=e=>r.jsx("div",{...e,children:"FileInput"}),w=e=>r.jsx("div",{...e,children:"FileUpload"}),N=e=>r.jsx("div",{...e,children:"Flex"}),E=e=>r.jsx("div",{...e,children:"FormControlLayout"}),I=e=>r.jsx("div",{...e,children:"FormControlWrapper"}),O=e=>r.jsx("div",{...e,children:"Group"}),M=e=>r.jsx("div",{...e,children:"HoverCard"}),$=e=>r.jsx("div",{...e,children:"Label"}),D=e=>r.jsx("div",{...e,children:"Link"}),G=e=>r.jsx("div",{...e,children:"Loader"}),q=e=>r.jsx("div",{...e,children:"Menu"}),W=e=>r.jsx("div",{...e,children:"Modal"}),z=e=>r.jsx("div",{...e,children:"NumberInput"}),H=e=>r.jsx("div",{...e,children:"Pagination"}),U=e=>r.jsx("div",{...e,children:"Panel"}),Y=e=>r.jsx("div",{...e,children:"Radio"}),K=e=>r.jsx("div",{...e,children:"ReadOnlyField"}),V=e=>r.jsx("div",{...e,children:"SegmentedControl"}),J=e=>r.jsx("div",{...e,children:"Slider"}),Q=e=>r.jsx("div",{...e,children:"Stack"}),X=e=>r.jsx("div",{...e,children:"Stepper"}),Z=e=>r.jsx("div",{...e,children:"Switch"}),ee=e=>r.jsx("div",{...e,children:"Table"}),re=e=>r.jsx("div",{...e,children:"Tabs"}),ne=e=>r.jsx("div",{...e,children:"Text"}),te=e=>r.jsx("div",{...e,children:"TextArea"}),ie=e=>r.jsx("div",{...e,children:"TextField"}),oe=e=>r.jsx("div",{...e,children:"TimePicker"}),se=e=>r.jsx("div",{...e,children:"Timeline"}),ce=e=>r.jsx("div",{...e,children:"Title"}),de=e=>r.jsx("div",{...e,children:"Toast"}),le=e=>r.jsx("div",{...e,children:"Tooltip"}),ae=e=>r.jsx("div",{...e,children:"TransferList"}),ue="_root_1qhn7_3",xe="_contents_1qhn7_18",s={root:ue,contents:xe},x=c.forwardRef(function({layer:e,contentsOnly:i,children:n,className:t,style:o,...d},h){const v=i?t?`${s.root} ${s.contents} ${t}`:`${s.root} ${s.contents}`:t?`${s.root} ${t}`:s.root;return r.jsx("div",{ref:h,className:v,style:o,...i?{}:{"data-recursica-layer":String(e)},...d,children:n})});x.displayName="Layer";const l=({emptyText:e="N/A"})=>r.jsx(c.Fragment,{children:e});l.displayName="EmptyValueRenderer";l.check=e=>e==null||e===""||Array.isArray(e)&&e.length===0;const u="data-recursica-theme";function he({children:e,theme:i="light"}){return c.useEffect(()=>{const n=document.documentElement;return n.setAttribute(u,i),()=>{n.removeAttribute(u)}},[i]),r.jsx(r.Fragment,{children:e})}exports.Accordion=p;exports.AssistiveElement=j;exports.Avatar=b;exports.Badge=T;exports.Box=f;exports.Breadcrumb=C;exports.Button=S;exports.Card=F;exports.Checkbox=A;exports.Chip=L;exports.Container=P;exports.DatePicker=k;exports.Dropdown=B;exports.EmptyValueRenderer=l;exports.FileInput=R;exports.FileUpload=w;exports.Flex=N;exports.FormControlLayout=E;exports.FormControlWrapper=I;exports.Group=O;exports.HoverCard=M;exports.Label=$;exports.Layer=x;exports.Link=D;exports.Loader=G;exports.Menu=q;exports.Modal=W;exports.NumberInput=z;exports.Pagination=H;exports.Panel=U;exports.Radio=Y;exports.ReadOnlyField=K;exports.RecursicaThemeProvider=he;exports.SegmentedControl=V;exports.Slider=J;exports.Stack=Q;exports.Stepper=X;exports.Switch=Z;exports.Table=ee;exports.Tabs=re;exports.Text=ne;exports.TextArea=te;exports.TextField=ie;exports.TimePicker=oe;exports.Timeline=se;exports.Title=ce;exports.Toast=de;exports.Tooltip=le;exports.TransferList=ae;
|
|
2
|
+
//# sourceMappingURL=mui-adapter.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mui-adapter.cjs","sources":["../src/components/Accordion/Accordion.tsx","../src/components/AssistiveElement/AssistiveElement.tsx","../src/components/Avatar/Avatar.tsx","../src/components/Badge/Badge.tsx","../src/utils/filterStylingProps.ts","../src/components/Box/Box.tsx","../src/components/Breadcrumb/Breadcrumb.tsx","../src/components/Button/Button.tsx","../src/components/Card/Card.tsx","../src/components/Checkbox/Checkbox.tsx","../src/components/Chip/Chip.tsx","../src/components/Container/Container.tsx","../src/components/DatePicker/DatePicker.tsx","../src/components/Dropdown/Dropdown.tsx","../src/components/FileInput/FileInput.tsx","../src/components/FileUpload/FileUpload.tsx","../src/components/Flex/Flex.tsx","../src/components/FormControlLayout/FormControlLayout.tsx","../src/components/FormControlWrapper/FormControlWrapper.tsx","../src/components/Group/Group.tsx","../src/components/HoverCard/HoverCard.tsx","../src/components/Label/Label.tsx","../src/components/Link/Link.tsx","../src/components/Loader/Loader.tsx","../src/components/Menu/Menu.tsx","../src/components/Modal/Modal.tsx","../src/components/NumberInput/NumberInput.tsx","../src/components/Pagination/Pagination.tsx","../src/components/Panel/Panel.tsx","../src/components/Radio/Radio.tsx","../src/components/ReadOnlyField/ReadOnlyField.tsx","../src/components/SegmentedControl/SegmentedControl.tsx","../src/components/Slider/Slider.tsx","../src/components/Stack/Stack.tsx","../src/components/Stepper/Stepper.tsx","../src/components/Switch/Switch.tsx","../src/components/Table/Table.tsx","../src/components/Tabs/Tabs.tsx","../src/components/Text/Text.tsx","../src/components/TextArea/TextArea.tsx","../src/components/TextField/TextField.tsx","../src/components/TimePicker/TimePicker.tsx","../src/components/Timeline/Timeline.tsx","../src/components/Title/Title.tsx","../src/components/Toast/Toast.tsx","../src/components/Tooltip/Tooltip.tsx","../src/components/TransferList/TransferList.tsx","../../adapter-common/dist/adapter-common.js"],"sourcesContent":["import React from \"react\";\n\nexport type AccordionProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const Accordion: React.FC<AccordionProps> = (props) => {\n return <div {...props}>Accordion</div>;\n};\n","import React from \"react\";\n\nexport type AssistiveElementProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const AssistiveElement: React.FC<AssistiveElementProps> = (props) => {\n return <div {...props}>AssistiveElement</div>;\n};\n","import React from \"react\";\n\nexport type AvatarProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const Avatar: React.FC<AvatarProps> = (props) => {\n return <div {...props}>Avatar</div>;\n};\n","import React from \"react\";\n\nexport type BadgeProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const Badge: React.FC<BadgeProps> = (props) => {\n return <div {...props}>Badge</div>;\n};\n","/**\n * filterStylingProps\n *\n * This utility acts as the central gatekeeper for strict design-system adherence across\n * all Recursica components mapped over MUI.\n *\n * PHILOSOPHY:\n * Recursica components are designed to be explicitly sandboxed tokens. Allowing external\n * `className` or MUI style props (`sx`, `classes`, etc.) breaks the design system by\n * allowing developers to leak arbitrary designs into components.\n *\n * By default (`overStyled=false`), this utility actively prevents developers from overriding\n * internal component styles (such as background, colors, typography, or internal classes).\n * It safely *permits* external layout overrides (like `margin` / `m`) so that components can\n * easily be spaced alongside other DOM elements.\n *\n * If a developer passes `overStyled={true}`, this filter allows all styling properties to\n * flow through to the underlying MUI component natively, at the developer's own risk.\n *\n * @param props - The raw component props passed down to the wrapper\n * @param overStyled - Boolean toggle to allow raw external styling. Defaults to false.\n * @returns Sanitized component props safe for internal styling merging\n */\n\nexport const BLOCKED_STYLING_KEYS = [\n \"className\",\n \"classes\", // MUI specific nested class overrides\n \"style\",\n \"sx\", // MUI's primary system style prop\n\n // Potential Box/Typography system props to block (if we wrap those)\n \"color\",\n \"bgcolor\",\n \"backgroundColor\",\n \"typography\",\n \"fontFamily\",\n \"fontSize\",\n \"fontWeight\",\n \"lineHeight\",\n \"letterSpacing\",\n \"textAlign\",\n \"border\",\n \"borderTop\",\n \"borderBottom\",\n \"borderLeft\",\n \"borderRight\",\n \"borderColor\",\n \"borderRadius\",\n \"boxShadow\",\n \"display\",\n \"position\",\n \"zIndex\",\n] as const;\n\nexport type BlockedStylingKeys = (typeof BLOCKED_STYLING_KEYS)[number];\n\nexport type RecursicaSpacing =\n | \"rec-none\"\n | \"rec-sm\"\n | \"rec-default\"\n | \"rec-md\"\n | \"rec-lg\"\n | \"rec-xl\"\n | \"rec-2xl\";\n\nexport type RecursicaSize = \"small\" | \"default\" | \"large\";\n\nconst LAYOUT_PROPS = new Set([\n \"m\",\n \"my\",\n \"mx\",\n \"mt\",\n \"mb\",\n \"ml\",\n \"mr\",\n \"p\",\n \"py\",\n \"px\",\n \"pt\",\n \"pb\",\n \"pl\",\n \"pr\",\n \"gap\",\n \"rowGap\",\n \"columnGap\",\n \"top\",\n \"left\",\n \"bottom\",\n \"right\",\n]);\n\nconst SPACING_MAP: Record<string, string> = {\n \"rec-none\": \"var(--recursica_brand_dimensions_general_none)\",\n \"rec-sm\": \"var(--recursica_brand_dimensions_general_sm)\",\n \"rec-default\": \"var(--recursica_brand_dimensions_general_default)\",\n \"rec-md\": \"var(--recursica_brand_dimensions_general_md)\",\n \"rec-lg\": \"var(--recursica_brand_dimensions_general_lg)\",\n \"rec-xl\": \"var(--recursica_brand_dimensions_general_xl)\",\n \"rec-2xl\": \"var(--recursica_brand_dimensions_general_2xl)\",\n};\n\nexport type ForbiddenStyles = { [K in BlockedStylingKeys]?: never };\n\nexport type RecursicaOverStyled<T> =\n | (Omit<T, BlockedStylingKeys> &\n ForbiddenStyles & { overStyled?: false | undefined })\n | (T & { overStyled: true });\n\nexport function filterStylingProps<T extends Record<string, unknown>>(\n props: T,\n overStyled?: boolean,\n): Partial<T> {\n if (overStyled) {\n return props;\n }\n\n const sanitized = { ...props };\n\n for (const prop of BLOCKED_STYLING_KEYS) {\n if (prop in sanitized) {\n delete sanitized[prop];\n }\n }\n\n // Intercept Recursica spacing tokens for valid layout properties\n for (const [key, value] of Object.entries(sanitized)) {\n if (\n typeof value === \"string\" &&\n value.startsWith(\"rec-\") &&\n LAYOUT_PROPS.has(key)\n ) {\n if (value in SPACING_MAP) {\n (sanitized as Record<string, unknown>)[key] = SPACING_MAP[value];\n }\n }\n }\n\n return sanitized;\n}\n","import React, { forwardRef } from \"react\";\nimport { Box as MUIBox, type BoxProps as MUIBoxProps } from \"@mui/material\";\nimport {\n filterStylingProps,\n type RecursicaOverStyled,\n} from \"../../utils/filterStylingProps\";\n\nexport type BoxProps<C extends React.ElementType = \"div\"> = RecursicaOverStyled<\n MUIBoxProps<C, { component?: C }>\n>;\n\nexport const Box = forwardRef(function Box<C extends React.ElementType = \"div\">(\n props: BoxProps<C>,\n ref: React.Ref<Element>\n) {\n const { overStyled = false, ...rest } = props;\n\n const sanitizedProps = filterStylingProps(\n rest as Record<string, unknown>,\n overStyled\n );\n\n return <MUIBox ref={ref} {...sanitizedProps} />;\n}) as <C extends React.ElementType = \"div\">(\n props: BoxProps<C> & { ref?: React.ForwardedRef<any> }\n) => React.ReactElement | null;\n","import React from \"react\";\n\nexport type BreadcrumbProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const Breadcrumb: React.FC<BreadcrumbProps> = (props) => {\n return <div {...props}>Breadcrumb</div>;\n};\n","import React from \"react\";\n\nexport type ButtonProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const Button: React.FC<ButtonProps> = (props) => {\n return <div {...props}>Button</div>;\n};\n","import React from \"react\";\n\nexport type CardProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const Card: React.FC<CardProps> = (props) => {\n return <div {...props}>Card</div>;\n};\n","import React from \"react\";\n\nexport type CheckboxProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const Checkbox: React.FC<CheckboxProps> = (props) => {\n return <div {...props}>Checkbox</div>;\n};\n","import React from \"react\";\n\nexport type ChipProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const Chip: React.FC<ChipProps> = (props) => {\n return <div {...props}>Chip</div>;\n};\n","import React from \"react\";\n\nexport type ContainerProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const Container: React.FC<ContainerProps> = (props) => {\n return <div {...props}>Container</div>;\n};\n","import React from \"react\";\n\nexport type DatePickerProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const DatePicker: React.FC<DatePickerProps> = (props) => {\n return <div {...props}>DatePicker</div>;\n};\n","import React from \"react\";\n\nexport type DropdownProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const Dropdown: React.FC<DropdownProps> = (props) => {\n return <div {...props}>Dropdown</div>;\n};\n","import React from \"react\";\n\nexport type FileInputProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const FileInput: React.FC<FileInputProps> = (props) => {\n return <div {...props}>FileInput</div>;\n};\n","import React from \"react\";\n\nexport type FileUploadProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const FileUpload: React.FC<FileUploadProps> = (props) => {\n return <div {...props}>FileUpload</div>;\n};\n","import React from \"react\";\n\nexport type FlexProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const Flex: React.FC<FlexProps> = (props) => {\n return <div {...props}>Flex</div>;\n};\n","import React from \"react\";\n\nexport type FormControlLayoutProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const FormControlLayout: React.FC<FormControlLayoutProps> = (props) => {\n return <div {...props}>FormControlLayout</div>;\n};\n","import React from \"react\";\n\nexport type FormControlWrapperProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const FormControlWrapper: React.FC<FormControlWrapperProps> = (\n props,\n) => {\n return <div {...props}>FormControlWrapper</div>;\n};\n","import React from \"react\";\n\nexport type GroupProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const Group: React.FC<GroupProps> = (props) => {\n return <div {...props}>Group</div>;\n};\n","import React from \"react\";\n\nexport type HoverCardProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const HoverCard: React.FC<HoverCardProps> = (props) => {\n return <div {...props}>HoverCard</div>;\n};\n","import React from \"react\";\n\nexport type LabelProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const Label: React.FC<LabelProps> = (props) => {\n return <div {...props}>Label</div>;\n};\n","import React from \"react\";\n\nexport type LinkProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const Link: React.FC<LinkProps> = (props) => {\n return <div {...props}>Link</div>;\n};\n","import React from \"react\";\n\nexport type LoaderProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const Loader: React.FC<LoaderProps> = (props) => {\n return <div {...props}>Loader</div>;\n};\n","import React from \"react\";\n\nexport type MenuProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const Menu: React.FC<MenuProps> = (props) => {\n return <div {...props}>Menu</div>;\n};\n","import React from \"react\";\n\nexport type ModalProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const Modal: React.FC<ModalProps> = (props) => {\n return <div {...props}>Modal</div>;\n};\n","import React from \"react\";\n\nexport type NumberInputProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const NumberInput: React.FC<NumberInputProps> = (props) => {\n return <div {...props}>NumberInput</div>;\n};\n","import React from \"react\";\n\nexport type PaginationProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const Pagination: React.FC<PaginationProps> = (props) => {\n return <div {...props}>Pagination</div>;\n};\n","import React from \"react\";\n\nexport type PanelProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const Panel: React.FC<PanelProps> = (props) => {\n return <div {...props}>Panel</div>;\n};\n","import React from \"react\";\n\nexport type RadioProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const Radio: React.FC<RadioProps> = (props) => {\n return <div {...props}>Radio</div>;\n};\n","import React from \"react\";\n\nexport type ReadOnlyFieldProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const ReadOnlyField: React.FC<ReadOnlyFieldProps> = (props) => {\n return <div {...props}>ReadOnlyField</div>;\n};\n","import React from \"react\";\n\nexport type SegmentedControlProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const SegmentedControl: React.FC<SegmentedControlProps> = (props) => {\n return <div {...props}>SegmentedControl</div>;\n};\n","import React from \"react\";\n\nexport type SliderProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const Slider: React.FC<SliderProps> = (props) => {\n return <div {...props}>Slider</div>;\n};\n","import React from \"react\";\n\nexport type StackProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const Stack: React.FC<StackProps> = (props) => {\n return <div {...props}>Stack</div>;\n};\n","import React from \"react\";\n\nexport type StepperProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const Stepper: React.FC<StepperProps> = (props) => {\n return <div {...props}>Stepper</div>;\n};\n","import React from \"react\";\n\nexport type SwitchProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const Switch: React.FC<SwitchProps> = (props) => {\n return <div {...props}>Switch</div>;\n};\n","import React from \"react\";\n\nexport type TableProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const Table: React.FC<TableProps> = (props) => {\n return <div {...props}>Table</div>;\n};\n","import React from \"react\";\n\nexport type TabsProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const Tabs: React.FC<TabsProps> = (props) => {\n return <div {...props}>Tabs</div>;\n};\n","import React from \"react\";\n\nexport type TextProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const Text: React.FC<TextProps> = (props) => {\n return <div {...props}>Text</div>;\n};\n","import React from \"react\";\n\nexport type TextAreaProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const TextArea: React.FC<TextAreaProps> = (props) => {\n return <div {...props}>TextArea</div>;\n};\n","import React from \"react\";\n\nexport type TextFieldProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const TextField: React.FC<TextFieldProps> = (props) => {\n return <div {...props}>TextField</div>;\n};\n","import React from \"react\";\n\nexport type TimePickerProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const TimePicker: React.FC<TimePickerProps> = (props) => {\n return <div {...props}>TimePicker</div>;\n};\n","import React from \"react\";\n\nexport type TimelineProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const Timeline: React.FC<TimelineProps> = (props) => {\n return <div {...props}>Timeline</div>;\n};\n","import React from \"react\";\n\nexport type TitleProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const Title: React.FC<TitleProps> = (props) => {\n return <div {...props}>Title</div>;\n};\n","import React from \"react\";\n\nexport type ToastProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const Toast: React.FC<ToastProps> = (props) => {\n return <div {...props}>Toast</div>;\n};\n","import React from \"react\";\n\nexport type TooltipProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const Tooltip: React.FC<TooltipProps> = (props) => {\n return <div {...props}>Tooltip</div>;\n};\n","import React from \"react\";\n\nexport type TransferListProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const TransferList: React.FC<TransferListProps> = (props) => {\n return <div {...props}>TransferList</div>;\n};\n","import { jsx as c, Fragment as f } from \"react/jsx-runtime\";\nimport h, { forwardRef as l, useEffect as p } from \"react\";\nconst E = \"_root_1qhn7_3\", _ = \"_contents_1qhn7_18\", r = {\n root: E,\n contents: _\n}, $ = l(function({ layer: o, contentsOnly: e, children: i, className: n, style: u, ...m }, d) {\n const y = e ? n ? `${r.root} ${r.contents} ${n}` : `${r.root} ${r.contents}` : n ? `${r.root} ${n}` : r.root;\n return /* @__PURE__ */ c(\n \"div\",\n {\n ref: d,\n className: y,\n style: u,\n ...e ? {} : { \"data-recursica-layer\": String(o) },\n ...m,\n children: i\n }\n );\n});\n$.displayName = \"Layer\";\nconst a = ({ emptyText: t = \"N/A\" }) => /* @__PURE__ */ c(h.Fragment, { children: t });\na.displayName = \"EmptyValueRenderer\";\na.check = (t) => t == null || t === \"\" || Array.isArray(t) && t.length === 0;\nconst s = \"data-recursica-theme\";\nfunction g({\n children: t,\n theme: o = \"light\"\n}) {\n return p(() => {\n const e = document.documentElement;\n return e.setAttribute(s, o), () => {\n e.removeAttribute(s);\n };\n }, [o]), /* @__PURE__ */ c(f, { children: t });\n}\nexport {\n a as EmptyValueRenderer,\n $ as Layer,\n g as RecursicaThemeProvider\n};\n//# sourceMappingURL=adapter-common.js.map\n"],"names":["Accordion","props","jsx","AssistiveElement","Avatar","Badge","BLOCKED_STYLING_KEYS","LAYOUT_PROPS","SPACING_MAP","filterStylingProps","overStyled","sanitized","prop","key","value","Box","forwardRef","ref","rest","sanitizedProps","MUIBox","Breadcrumb","Button","Card","Checkbox","Chip","Container","DatePicker","Dropdown","FileInput","FileUpload","Flex","FormControlLayout","FormControlWrapper","Group","HoverCard","Label","Link","Loader","Menu","Modal","NumberInput","Pagination","Panel","Radio","ReadOnlyField","SegmentedControl","Slider","Stack","Stepper","Switch","Table","Tabs","Text","TextArea","TextField","TimePicker","Timeline","Title","Toast","Tooltip","TransferList","E","_","r","$","l","o","e","i","n","u","m","d","y","c","a","t","h","s","g","p","f"],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
._root_1qhn7_3{display:block;border-style:solid}._root_1qhn7_3._contents_1qhn7_18{display:contents;border-style:unset}._root_1qhn7_3[data-recursica-layer="0"]{background-color:var(--recursica_brand_layer_0_properties_surface);color:var(--recursica_brand_layer_0_elements_text_color);border-color:var(--recursica_brand_layer_0_properties_border-color);border-width:var(--recursica_brand_layer_0_properties_border-size);border-radius:var(--recursica_brand_layer_0_properties_border-radius);box-shadow:var(--recursica_brand_layer_0_properties_elevation);padding:var(--recursica_brand_layer_0_properties_padding)}._root_1qhn7_3[data-recursica-layer="1"]{background-color:var(--recursica_brand_layer_1_properties_surface);color:var(--recursica_brand_layer_1_elements_text_color);border-color:var(--recursica_brand_layer_1_properties_border-color);border-width:var(--recursica_brand_layer_1_properties_border-size);border-radius:var(--recursica_brand_layer_1_properties_border-radius);box-shadow:var(--recursica_brand_layer_1_properties_elevation);padding:var(--recursica_brand_layer_1_properties_padding)}._root_1qhn7_3[data-recursica-layer="2"]{background-color:var(--recursica_brand_layer_2_properties_surface);color:var(--recursica_brand_layer_2_elements_text_color);border-color:var(--recursica_brand_layer_2_properties_border-color);border-width:var(--recursica_brand_layer_2_properties_border-size);border-radius:var(--recursica_brand_layer_2_properties_border-radius);box-shadow:var(--recursica_brand_layer_2_properties_elevation);padding:var(--recursica_brand_layer_2_properties_padding)}._root_1qhn7_3[data-recursica-layer="3"]{background-color:var(--recursica_brand_layer_3_properties_surface);color:var(--recursica_brand_layer_3_elements_text_color);border-color:var(--recursica_brand_layer_3_properties_border-color);border-width:var(--recursica_brand_layer_3_properties_border-size);border-radius:var(--recursica_brand_layer_3_properties_border-radius);box-shadow:var(--recursica_brand_layer_3_properties_elevation);padding:var(--recursica_brand_layer_3_properties_padding)}
|
|
@@ -0,0 +1,164 @@
|
|
|
1
|
+
import { jsx as e, Fragment as m } from "react/jsx-runtime";
|
|
2
|
+
import p, { forwardRef as a, useEffect as _ } from "react";
|
|
3
|
+
import { Box as b } from "@mui/material";
|
|
4
|
+
const L = (r) => /* @__PURE__ */ e("div", { ...r, children: "Accordion" }), P = (r) => /* @__PURE__ */ e("div", { ...r, children: "AssistiveElement" }), k = (r) => /* @__PURE__ */ e("div", { ...r, children: "Avatar" }), B = (r) => /* @__PURE__ */ e("div", { ...r, children: "Badge" }), g = [
|
|
5
|
+
"className",
|
|
6
|
+
"classes",
|
|
7
|
+
// MUI specific nested class overrides
|
|
8
|
+
"style",
|
|
9
|
+
"sx",
|
|
10
|
+
// MUI's primary system style prop
|
|
11
|
+
// Potential Box/Typography system props to block (if we wrap those)
|
|
12
|
+
"color",
|
|
13
|
+
"bgcolor",
|
|
14
|
+
"backgroundColor",
|
|
15
|
+
"typography",
|
|
16
|
+
"fontFamily",
|
|
17
|
+
"fontSize",
|
|
18
|
+
"fontWeight",
|
|
19
|
+
"lineHeight",
|
|
20
|
+
"letterSpacing",
|
|
21
|
+
"textAlign",
|
|
22
|
+
"border",
|
|
23
|
+
"borderTop",
|
|
24
|
+
"borderBottom",
|
|
25
|
+
"borderLeft",
|
|
26
|
+
"borderRight",
|
|
27
|
+
"borderColor",
|
|
28
|
+
"borderRadius",
|
|
29
|
+
"boxShadow",
|
|
30
|
+
"display",
|
|
31
|
+
"position",
|
|
32
|
+
"zIndex"
|
|
33
|
+
], f = /* @__PURE__ */ new Set([
|
|
34
|
+
"m",
|
|
35
|
+
"my",
|
|
36
|
+
"mx",
|
|
37
|
+
"mt",
|
|
38
|
+
"mb",
|
|
39
|
+
"ml",
|
|
40
|
+
"mr",
|
|
41
|
+
"p",
|
|
42
|
+
"py",
|
|
43
|
+
"px",
|
|
44
|
+
"pt",
|
|
45
|
+
"pb",
|
|
46
|
+
"pl",
|
|
47
|
+
"pr",
|
|
48
|
+
"gap",
|
|
49
|
+
"rowGap",
|
|
50
|
+
"columnGap",
|
|
51
|
+
"top",
|
|
52
|
+
"left",
|
|
53
|
+
"bottom",
|
|
54
|
+
"right"
|
|
55
|
+
]), l = {
|
|
56
|
+
"rec-none": "var(--recursica_brand_dimensions_general_none)",
|
|
57
|
+
"rec-sm": "var(--recursica_brand_dimensions_general_sm)",
|
|
58
|
+
"rec-default": "var(--recursica_brand_dimensions_general_default)",
|
|
59
|
+
"rec-md": "var(--recursica_brand_dimensions_general_md)",
|
|
60
|
+
"rec-lg": "var(--recursica_brand_dimensions_general_lg)",
|
|
61
|
+
"rec-xl": "var(--recursica_brand_dimensions_general_xl)",
|
|
62
|
+
"rec-2xl": "var(--recursica_brand_dimensions_general_2xl)"
|
|
63
|
+
};
|
|
64
|
+
function y(r, i) {
|
|
65
|
+
if (i)
|
|
66
|
+
return r;
|
|
67
|
+
const n = { ...r };
|
|
68
|
+
for (const t of g)
|
|
69
|
+
t in n && delete n[t];
|
|
70
|
+
for (const [t, o] of Object.entries(n))
|
|
71
|
+
typeof o == "string" && o.startsWith("rec-") && f.has(t) && o in l && (n[t] = l[o]);
|
|
72
|
+
return n;
|
|
73
|
+
}
|
|
74
|
+
const R = a(function(i, n) {
|
|
75
|
+
const { overStyled: t = !1, ...o } = i, d = y(
|
|
76
|
+
o,
|
|
77
|
+
t
|
|
78
|
+
);
|
|
79
|
+
return /* @__PURE__ */ e(b, { ref: n, ...d });
|
|
80
|
+
}), N = (r) => /* @__PURE__ */ e("div", { ...r, children: "Breadcrumb" }), E = (r) => /* @__PURE__ */ e("div", { ...r, children: "Button" }), $ = (r) => /* @__PURE__ */ e("div", { ...r, children: "Card" }), w = (r) => /* @__PURE__ */ e("div", { ...r, children: "Checkbox" }), I = (r) => /* @__PURE__ */ e("div", { ...r, children: "Chip" }), O = (r) => /* @__PURE__ */ e("div", { ...r, children: "Container" }), G = (r) => /* @__PURE__ */ e("div", { ...r, children: "DatePicker" }), D = (r) => /* @__PURE__ */ e("div", { ...r, children: "Dropdown" }), M = (r) => /* @__PURE__ */ e("div", { ...r, children: "FileInput" }), z = (r) => /* @__PURE__ */ e("div", { ...r, children: "FileUpload" }), W = (r) => /* @__PURE__ */ e("div", { ...r, children: "Flex" }), H = (r) => /* @__PURE__ */ e("div", { ...r, children: "FormControlLayout" }), U = (r) => /* @__PURE__ */ e("div", { ...r, children: "FormControlWrapper" }), Y = (r) => /* @__PURE__ */ e("div", { ...r, children: "Group" }), j = (r) => /* @__PURE__ */ e("div", { ...r, children: "HoverCard" }), q = (r) => /* @__PURE__ */ e("div", { ...r, children: "Label" }), K = (r) => /* @__PURE__ */ e("div", { ...r, children: "Link" }), V = (r) => /* @__PURE__ */ e("div", { ...r, children: "Loader" }), J = (r) => /* @__PURE__ */ e("div", { ...r, children: "Menu" }), Q = (r) => /* @__PURE__ */ e("div", { ...r, children: "Modal" }), X = (r) => /* @__PURE__ */ e("div", { ...r, children: "NumberInput" }), Z = (r) => /* @__PURE__ */ e("div", { ...r, children: "Pagination" }), rr = (r) => /* @__PURE__ */ e("div", { ...r, children: "Panel" }), er = (r) => /* @__PURE__ */ e("div", { ...r, children: "Radio" }), nr = (r) => /* @__PURE__ */ e("div", { ...r, children: "ReadOnlyField" }), tr = (r) => /* @__PURE__ */ e("div", { ...r, children: "SegmentedControl" }), ir = (r) => /* @__PURE__ */ e("div", { ...r, children: "Slider" }), or = (r) => /* @__PURE__ */ e("div", { ...r, children: "Stack" }), cr = (r) => /* @__PURE__ */ e("div", { ...r, children: "Stepper" }), dr = (r) => /* @__PURE__ */ e("div", { ...r, children: "Switch" }), lr = (r) => /* @__PURE__ */ e("div", { ...r, children: "Table" }), sr = (r) => /* @__PURE__ */ e("div", { ...r, children: "Tabs" }), ar = (r) => /* @__PURE__ */ e("div", { ...r, children: "Text" }), ur = (r) => /* @__PURE__ */ e("div", { ...r, children: "TextArea" }), hr = (r) => /* @__PURE__ */ e("div", { ...r, children: "TextField" }), vr = (r) => /* @__PURE__ */ e("div", { ...r, children: "TimePicker" }), mr = (r) => /* @__PURE__ */ e("div", { ...r, children: "Timeline" }), pr = (r) => /* @__PURE__ */ e("div", { ...r, children: "Title" }), _r = (r) => /* @__PURE__ */ e("div", { ...r, children: "Toast" }), br = (r) => /* @__PURE__ */ e("div", { ...r, children: "Tooltip" }), gr = (r) => /* @__PURE__ */ e("div", { ...r, children: "TransferList" }), x = "_root_1qhn7_3", T = "_contents_1qhn7_18", c = {
|
|
81
|
+
root: x,
|
|
82
|
+
contents: T
|
|
83
|
+
}, S = a(function({ layer: r, contentsOnly: i, children: n, className: t, style: o, ...d }, h) {
|
|
84
|
+
const v = i ? t ? `${c.root} ${c.contents} ${t}` : `${c.root} ${c.contents}` : t ? `${c.root} ${t}` : c.root;
|
|
85
|
+
return /* @__PURE__ */ e(
|
|
86
|
+
"div",
|
|
87
|
+
{
|
|
88
|
+
ref: h,
|
|
89
|
+
className: v,
|
|
90
|
+
style: o,
|
|
91
|
+
...i ? {} : { "data-recursica-layer": String(r) },
|
|
92
|
+
...d,
|
|
93
|
+
children: n
|
|
94
|
+
}
|
|
95
|
+
);
|
|
96
|
+
});
|
|
97
|
+
S.displayName = "Layer";
|
|
98
|
+
const u = ({ emptyText: r = "N/A" }) => /* @__PURE__ */ e(p.Fragment, { children: r });
|
|
99
|
+
u.displayName = "EmptyValueRenderer";
|
|
100
|
+
u.check = (r) => r == null || r === "" || Array.isArray(r) && r.length === 0;
|
|
101
|
+
const s = "data-recursica-theme";
|
|
102
|
+
function fr({
|
|
103
|
+
children: r,
|
|
104
|
+
theme: i = "light"
|
|
105
|
+
}) {
|
|
106
|
+
return _(() => {
|
|
107
|
+
const n = document.documentElement;
|
|
108
|
+
return n.setAttribute(s, i), () => {
|
|
109
|
+
n.removeAttribute(s);
|
|
110
|
+
};
|
|
111
|
+
}, [i]), /* @__PURE__ */ e(m, { children: r });
|
|
112
|
+
}
|
|
113
|
+
export {
|
|
114
|
+
L as Accordion,
|
|
115
|
+
P as AssistiveElement,
|
|
116
|
+
k as Avatar,
|
|
117
|
+
B as Badge,
|
|
118
|
+
R as Box,
|
|
119
|
+
N as Breadcrumb,
|
|
120
|
+
E as Button,
|
|
121
|
+
$ as Card,
|
|
122
|
+
w as Checkbox,
|
|
123
|
+
I as Chip,
|
|
124
|
+
O as Container,
|
|
125
|
+
G as DatePicker,
|
|
126
|
+
D as Dropdown,
|
|
127
|
+
u as EmptyValueRenderer,
|
|
128
|
+
M as FileInput,
|
|
129
|
+
z as FileUpload,
|
|
130
|
+
W as Flex,
|
|
131
|
+
H as FormControlLayout,
|
|
132
|
+
U as FormControlWrapper,
|
|
133
|
+
Y as Group,
|
|
134
|
+
j as HoverCard,
|
|
135
|
+
q as Label,
|
|
136
|
+
S as Layer,
|
|
137
|
+
K as Link,
|
|
138
|
+
V as Loader,
|
|
139
|
+
J as Menu,
|
|
140
|
+
Q as Modal,
|
|
141
|
+
X as NumberInput,
|
|
142
|
+
Z as Pagination,
|
|
143
|
+
rr as Panel,
|
|
144
|
+
er as Radio,
|
|
145
|
+
nr as ReadOnlyField,
|
|
146
|
+
fr as RecursicaThemeProvider,
|
|
147
|
+
tr as SegmentedControl,
|
|
148
|
+
ir as Slider,
|
|
149
|
+
or as Stack,
|
|
150
|
+
cr as Stepper,
|
|
151
|
+
dr as Switch,
|
|
152
|
+
lr as Table,
|
|
153
|
+
sr as Tabs,
|
|
154
|
+
ar as Text,
|
|
155
|
+
ur as TextArea,
|
|
156
|
+
hr as TextField,
|
|
157
|
+
vr as TimePicker,
|
|
158
|
+
mr as Timeline,
|
|
159
|
+
pr as Title,
|
|
160
|
+
_r as Toast,
|
|
161
|
+
br as Tooltip,
|
|
162
|
+
gr as TransferList
|
|
163
|
+
};
|
|
164
|
+
//# sourceMappingURL=mui-adapter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mui-adapter.js","sources":["../src/components/Accordion/Accordion.tsx","../src/components/AssistiveElement/AssistiveElement.tsx","../src/components/Avatar/Avatar.tsx","../src/components/Badge/Badge.tsx","../src/utils/filterStylingProps.ts","../src/components/Box/Box.tsx","../src/components/Breadcrumb/Breadcrumb.tsx","../src/components/Button/Button.tsx","../src/components/Card/Card.tsx","../src/components/Checkbox/Checkbox.tsx","../src/components/Chip/Chip.tsx","../src/components/Container/Container.tsx","../src/components/DatePicker/DatePicker.tsx","../src/components/Dropdown/Dropdown.tsx","../src/components/FileInput/FileInput.tsx","../src/components/FileUpload/FileUpload.tsx","../src/components/Flex/Flex.tsx","../src/components/FormControlLayout/FormControlLayout.tsx","../src/components/FormControlWrapper/FormControlWrapper.tsx","../src/components/Group/Group.tsx","../src/components/HoverCard/HoverCard.tsx","../src/components/Label/Label.tsx","../src/components/Link/Link.tsx","../src/components/Loader/Loader.tsx","../src/components/Menu/Menu.tsx","../src/components/Modal/Modal.tsx","../src/components/NumberInput/NumberInput.tsx","../src/components/Pagination/Pagination.tsx","../src/components/Panel/Panel.tsx","../src/components/Radio/Radio.tsx","../src/components/ReadOnlyField/ReadOnlyField.tsx","../src/components/SegmentedControl/SegmentedControl.tsx","../src/components/Slider/Slider.tsx","../src/components/Stack/Stack.tsx","../src/components/Stepper/Stepper.tsx","../src/components/Switch/Switch.tsx","../src/components/Table/Table.tsx","../src/components/Tabs/Tabs.tsx","../src/components/Text/Text.tsx","../src/components/TextArea/TextArea.tsx","../src/components/TextField/TextField.tsx","../src/components/TimePicker/TimePicker.tsx","../src/components/Timeline/Timeline.tsx","../src/components/Title/Title.tsx","../src/components/Toast/Toast.tsx","../src/components/Tooltip/Tooltip.tsx","../src/components/TransferList/TransferList.tsx","../../adapter-common/dist/adapter-common.js"],"sourcesContent":["import React from \"react\";\n\nexport type AccordionProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const Accordion: React.FC<AccordionProps> = (props) => {\n return <div {...props}>Accordion</div>;\n};\n","import React from \"react\";\n\nexport type AssistiveElementProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const AssistiveElement: React.FC<AssistiveElementProps> = (props) => {\n return <div {...props}>AssistiveElement</div>;\n};\n","import React from \"react\";\n\nexport type AvatarProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const Avatar: React.FC<AvatarProps> = (props) => {\n return <div {...props}>Avatar</div>;\n};\n","import React from \"react\";\n\nexport type BadgeProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const Badge: React.FC<BadgeProps> = (props) => {\n return <div {...props}>Badge</div>;\n};\n","/**\n * filterStylingProps\n *\n * This utility acts as the central gatekeeper for strict design-system adherence across\n * all Recursica components mapped over MUI.\n *\n * PHILOSOPHY:\n * Recursica components are designed to be explicitly sandboxed tokens. Allowing external\n * `className` or MUI style props (`sx`, `classes`, etc.) breaks the design system by\n * allowing developers to leak arbitrary designs into components.\n *\n * By default (`overStyled=false`), this utility actively prevents developers from overriding\n * internal component styles (such as background, colors, typography, or internal classes).\n * It safely *permits* external layout overrides (like `margin` / `m`) so that components can\n * easily be spaced alongside other DOM elements.\n *\n * If a developer passes `overStyled={true}`, this filter allows all styling properties to\n * flow through to the underlying MUI component natively, at the developer's own risk.\n *\n * @param props - The raw component props passed down to the wrapper\n * @param overStyled - Boolean toggle to allow raw external styling. Defaults to false.\n * @returns Sanitized component props safe for internal styling merging\n */\n\nexport const BLOCKED_STYLING_KEYS = [\n \"className\",\n \"classes\", // MUI specific nested class overrides\n \"style\",\n \"sx\", // MUI's primary system style prop\n\n // Potential Box/Typography system props to block (if we wrap those)\n \"color\",\n \"bgcolor\",\n \"backgroundColor\",\n \"typography\",\n \"fontFamily\",\n \"fontSize\",\n \"fontWeight\",\n \"lineHeight\",\n \"letterSpacing\",\n \"textAlign\",\n \"border\",\n \"borderTop\",\n \"borderBottom\",\n \"borderLeft\",\n \"borderRight\",\n \"borderColor\",\n \"borderRadius\",\n \"boxShadow\",\n \"display\",\n \"position\",\n \"zIndex\",\n] as const;\n\nexport type BlockedStylingKeys = (typeof BLOCKED_STYLING_KEYS)[number];\n\nexport type RecursicaSpacing =\n | \"rec-none\"\n | \"rec-sm\"\n | \"rec-default\"\n | \"rec-md\"\n | \"rec-lg\"\n | \"rec-xl\"\n | \"rec-2xl\";\n\nexport type RecursicaSize = \"small\" | \"default\" | \"large\";\n\nconst LAYOUT_PROPS = new Set([\n \"m\",\n \"my\",\n \"mx\",\n \"mt\",\n \"mb\",\n \"ml\",\n \"mr\",\n \"p\",\n \"py\",\n \"px\",\n \"pt\",\n \"pb\",\n \"pl\",\n \"pr\",\n \"gap\",\n \"rowGap\",\n \"columnGap\",\n \"top\",\n \"left\",\n \"bottom\",\n \"right\",\n]);\n\nconst SPACING_MAP: Record<string, string> = {\n \"rec-none\": \"var(--recursica_brand_dimensions_general_none)\",\n \"rec-sm\": \"var(--recursica_brand_dimensions_general_sm)\",\n \"rec-default\": \"var(--recursica_brand_dimensions_general_default)\",\n \"rec-md\": \"var(--recursica_brand_dimensions_general_md)\",\n \"rec-lg\": \"var(--recursica_brand_dimensions_general_lg)\",\n \"rec-xl\": \"var(--recursica_brand_dimensions_general_xl)\",\n \"rec-2xl\": \"var(--recursica_brand_dimensions_general_2xl)\",\n};\n\nexport type ForbiddenStyles = { [K in BlockedStylingKeys]?: never };\n\nexport type RecursicaOverStyled<T> =\n | (Omit<T, BlockedStylingKeys> &\n ForbiddenStyles & { overStyled?: false | undefined })\n | (T & { overStyled: true });\n\nexport function filterStylingProps<T extends Record<string, unknown>>(\n props: T,\n overStyled?: boolean,\n): Partial<T> {\n if (overStyled) {\n return props;\n }\n\n const sanitized = { ...props };\n\n for (const prop of BLOCKED_STYLING_KEYS) {\n if (prop in sanitized) {\n delete sanitized[prop];\n }\n }\n\n // Intercept Recursica spacing tokens for valid layout properties\n for (const [key, value] of Object.entries(sanitized)) {\n if (\n typeof value === \"string\" &&\n value.startsWith(\"rec-\") &&\n LAYOUT_PROPS.has(key)\n ) {\n if (value in SPACING_MAP) {\n (sanitized as Record<string, unknown>)[key] = SPACING_MAP[value];\n }\n }\n }\n\n return sanitized;\n}\n","import React, { forwardRef } from \"react\";\nimport { Box as MUIBox, type BoxProps as MUIBoxProps } from \"@mui/material\";\nimport {\n filterStylingProps,\n type RecursicaOverStyled,\n} from \"../../utils/filterStylingProps\";\n\nexport type BoxProps<C extends React.ElementType = \"div\"> = RecursicaOverStyled<\n MUIBoxProps<C, { component?: C }>\n>;\n\nexport const Box = forwardRef(function Box<C extends React.ElementType = \"div\">(\n props: BoxProps<C>,\n ref: React.Ref<Element>\n) {\n const { overStyled = false, ...rest } = props;\n\n const sanitizedProps = filterStylingProps(\n rest as Record<string, unknown>,\n overStyled\n );\n\n return <MUIBox ref={ref} {...sanitizedProps} />;\n}) as <C extends React.ElementType = \"div\">(\n props: BoxProps<C> & { ref?: React.ForwardedRef<any> }\n) => React.ReactElement | null;\n","import React from \"react\";\n\nexport type BreadcrumbProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const Breadcrumb: React.FC<BreadcrumbProps> = (props) => {\n return <div {...props}>Breadcrumb</div>;\n};\n","import React from \"react\";\n\nexport type ButtonProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const Button: React.FC<ButtonProps> = (props) => {\n return <div {...props}>Button</div>;\n};\n","import React from \"react\";\n\nexport type CardProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const Card: React.FC<CardProps> = (props) => {\n return <div {...props}>Card</div>;\n};\n","import React from \"react\";\n\nexport type CheckboxProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const Checkbox: React.FC<CheckboxProps> = (props) => {\n return <div {...props}>Checkbox</div>;\n};\n","import React from \"react\";\n\nexport type ChipProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const Chip: React.FC<ChipProps> = (props) => {\n return <div {...props}>Chip</div>;\n};\n","import React from \"react\";\n\nexport type ContainerProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const Container: React.FC<ContainerProps> = (props) => {\n return <div {...props}>Container</div>;\n};\n","import React from \"react\";\n\nexport type DatePickerProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const DatePicker: React.FC<DatePickerProps> = (props) => {\n return <div {...props}>DatePicker</div>;\n};\n","import React from \"react\";\n\nexport type DropdownProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const Dropdown: React.FC<DropdownProps> = (props) => {\n return <div {...props}>Dropdown</div>;\n};\n","import React from \"react\";\n\nexport type FileInputProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const FileInput: React.FC<FileInputProps> = (props) => {\n return <div {...props}>FileInput</div>;\n};\n","import React from \"react\";\n\nexport type FileUploadProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const FileUpload: React.FC<FileUploadProps> = (props) => {\n return <div {...props}>FileUpload</div>;\n};\n","import React from \"react\";\n\nexport type FlexProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const Flex: React.FC<FlexProps> = (props) => {\n return <div {...props}>Flex</div>;\n};\n","import React from \"react\";\n\nexport type FormControlLayoutProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const FormControlLayout: React.FC<FormControlLayoutProps> = (props) => {\n return <div {...props}>FormControlLayout</div>;\n};\n","import React from \"react\";\n\nexport type FormControlWrapperProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const FormControlWrapper: React.FC<FormControlWrapperProps> = (\n props,\n) => {\n return <div {...props}>FormControlWrapper</div>;\n};\n","import React from \"react\";\n\nexport type GroupProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const Group: React.FC<GroupProps> = (props) => {\n return <div {...props}>Group</div>;\n};\n","import React from \"react\";\n\nexport type HoverCardProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const HoverCard: React.FC<HoverCardProps> = (props) => {\n return <div {...props}>HoverCard</div>;\n};\n","import React from \"react\";\n\nexport type LabelProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const Label: React.FC<LabelProps> = (props) => {\n return <div {...props}>Label</div>;\n};\n","import React from \"react\";\n\nexport type LinkProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const Link: React.FC<LinkProps> = (props) => {\n return <div {...props}>Link</div>;\n};\n","import React from \"react\";\n\nexport type LoaderProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const Loader: React.FC<LoaderProps> = (props) => {\n return <div {...props}>Loader</div>;\n};\n","import React from \"react\";\n\nexport type MenuProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const Menu: React.FC<MenuProps> = (props) => {\n return <div {...props}>Menu</div>;\n};\n","import React from \"react\";\n\nexport type ModalProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const Modal: React.FC<ModalProps> = (props) => {\n return <div {...props}>Modal</div>;\n};\n","import React from \"react\";\n\nexport type NumberInputProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const NumberInput: React.FC<NumberInputProps> = (props) => {\n return <div {...props}>NumberInput</div>;\n};\n","import React from \"react\";\n\nexport type PaginationProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const Pagination: React.FC<PaginationProps> = (props) => {\n return <div {...props}>Pagination</div>;\n};\n","import React from \"react\";\n\nexport type PanelProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const Panel: React.FC<PanelProps> = (props) => {\n return <div {...props}>Panel</div>;\n};\n","import React from \"react\";\n\nexport type RadioProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const Radio: React.FC<RadioProps> = (props) => {\n return <div {...props}>Radio</div>;\n};\n","import React from \"react\";\n\nexport type ReadOnlyFieldProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const ReadOnlyField: React.FC<ReadOnlyFieldProps> = (props) => {\n return <div {...props}>ReadOnlyField</div>;\n};\n","import React from \"react\";\n\nexport type SegmentedControlProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const SegmentedControl: React.FC<SegmentedControlProps> = (props) => {\n return <div {...props}>SegmentedControl</div>;\n};\n","import React from \"react\";\n\nexport type SliderProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const Slider: React.FC<SliderProps> = (props) => {\n return <div {...props}>Slider</div>;\n};\n","import React from \"react\";\n\nexport type StackProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const Stack: React.FC<StackProps> = (props) => {\n return <div {...props}>Stack</div>;\n};\n","import React from \"react\";\n\nexport type StepperProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const Stepper: React.FC<StepperProps> = (props) => {\n return <div {...props}>Stepper</div>;\n};\n","import React from \"react\";\n\nexport type SwitchProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const Switch: React.FC<SwitchProps> = (props) => {\n return <div {...props}>Switch</div>;\n};\n","import React from \"react\";\n\nexport type TableProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const Table: React.FC<TableProps> = (props) => {\n return <div {...props}>Table</div>;\n};\n","import React from \"react\";\n\nexport type TabsProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const Tabs: React.FC<TabsProps> = (props) => {\n return <div {...props}>Tabs</div>;\n};\n","import React from \"react\";\n\nexport type TextProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const Text: React.FC<TextProps> = (props) => {\n return <div {...props}>Text</div>;\n};\n","import React from \"react\";\n\nexport type TextAreaProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const TextArea: React.FC<TextAreaProps> = (props) => {\n return <div {...props}>TextArea</div>;\n};\n","import React from \"react\";\n\nexport type TextFieldProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const TextField: React.FC<TextFieldProps> = (props) => {\n return <div {...props}>TextField</div>;\n};\n","import React from \"react\";\n\nexport type TimePickerProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const TimePicker: React.FC<TimePickerProps> = (props) => {\n return <div {...props}>TimePicker</div>;\n};\n","import React from \"react\";\n\nexport type TimelineProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const Timeline: React.FC<TimelineProps> = (props) => {\n return <div {...props}>Timeline</div>;\n};\n","import React from \"react\";\n\nexport type TitleProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const Title: React.FC<TitleProps> = (props) => {\n return <div {...props}>Title</div>;\n};\n","import React from \"react\";\n\nexport type ToastProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const Toast: React.FC<ToastProps> = (props) => {\n return <div {...props}>Toast</div>;\n};\n","import React from \"react\";\n\nexport type TooltipProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const Tooltip: React.FC<TooltipProps> = (props) => {\n return <div {...props}>Tooltip</div>;\n};\n","import React from \"react\";\n\nexport type TransferListProps = React.HTMLAttributes<HTMLDivElement>;\n\nexport const TransferList: React.FC<TransferListProps> = (props) => {\n return <div {...props}>TransferList</div>;\n};\n","import { jsx as c, Fragment as f } from \"react/jsx-runtime\";\nimport h, { forwardRef as l, useEffect as p } from \"react\";\nconst E = \"_root_1qhn7_3\", _ = \"_contents_1qhn7_18\", r = {\n root: E,\n contents: _\n}, $ = l(function({ layer: o, contentsOnly: e, children: i, className: n, style: u, ...m }, d) {\n const y = e ? n ? `${r.root} ${r.contents} ${n}` : `${r.root} ${r.contents}` : n ? `${r.root} ${n}` : r.root;\n return /* @__PURE__ */ c(\n \"div\",\n {\n ref: d,\n className: y,\n style: u,\n ...e ? {} : { \"data-recursica-layer\": String(o) },\n ...m,\n children: i\n }\n );\n});\n$.displayName = \"Layer\";\nconst a = ({ emptyText: t = \"N/A\" }) => /* @__PURE__ */ c(h.Fragment, { children: t });\na.displayName = \"EmptyValueRenderer\";\na.check = (t) => t == null || t === \"\" || Array.isArray(t) && t.length === 0;\nconst s = \"data-recursica-theme\";\nfunction g({\n children: t,\n theme: o = \"light\"\n}) {\n return p(() => {\n const e = document.documentElement;\n return e.setAttribute(s, o), () => {\n e.removeAttribute(s);\n };\n }, [o]), /* @__PURE__ */ c(f, { children: t });\n}\nexport {\n a as EmptyValueRenderer,\n $ as Layer,\n g as RecursicaThemeProvider\n};\n//# sourceMappingURL=adapter-common.js.map\n"],"names":["Accordion","props","jsx","AssistiveElement","Avatar","Badge","BLOCKED_STYLING_KEYS","LAYOUT_PROPS","SPACING_MAP","filterStylingProps","overStyled","sanitized","prop","key","value","Box","forwardRef","ref","rest","sanitizedProps","MUIBox","Breadcrumb","Button","Card","Checkbox","Chip","Container","DatePicker","Dropdown","FileInput","FileUpload","Flex","FormControlLayout","FormControlWrapper","Group","HoverCard","Label","Link","Loader","Menu","Modal","NumberInput","Pagination","Panel","Radio","ReadOnlyField","SegmentedControl","Slider","Stack","Stepper","Switch","Table","Tabs","Text","TextArea","TextField","TimePicker","Timeline","Title","Toast","Tooltip","TransferList","E","_","r","$","l","o","e","i","n","u","m","d","y","c","a","t","h","g","p","f"],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './Accordion';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './AssistiveElement';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './Avatar';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './Badge';
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { default as React } from 'react';
|
|
2
|
+
import { BoxProps as MUIBoxProps } from '@mui/material';
|
|
3
|
+
import { RecursicaOverStyled } from '../../utils/filterStylingProps';
|
|
4
|
+
export type BoxProps<C extends React.ElementType = "div"> = RecursicaOverStyled<MUIBoxProps<C, {
|
|
5
|
+
component?: C;
|
|
6
|
+
}>>;
|
|
7
|
+
export declare const Box: <C extends React.ElementType = "div">(props: BoxProps<C> & {
|
|
8
|
+
ref?: React.ForwardedRef<any>;
|
|
9
|
+
}) => React.ReactElement | null;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './Box';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './Breadcrumb';
|