├── .github └── workflows │ └── ci.yml ├── .gitignore ├── .prettierrc ├── .yarnrc.yml ├── CHANGELOG.md ├── CONTRIBUTING.md ├── LICENSE ├── README.md ├── documentation ├── README.md ├── bs-css.md ├── css.md ├── icons.md ├── module-colors.md ├── module-core.md ├── module-system.md ├── tailwind.md ├── theming.md └── union-values.md ├── examples ├── package.json ├── rescript.json └── src │ ├── App.bs.js │ ├── App.res │ ├── Index.bs.js │ ├── Index.res │ ├── examples │ ├── ExampleAccordionSummary.bs.js │ ├── ExampleAccordionSummary.res │ ├── ExampleAlert.bs.js │ ├── ExampleAlert.res │ ├── ExampleAutocomplete.bs.js │ ├── ExampleAutocomplete.res │ ├── ExampleBox.bs.js │ ├── ExampleBox.res │ ├── ExampleButton.bs.js │ ├── ExampleButton.res │ ├── ExampleButtonBase.bs.js │ ├── ExampleButtonBase.res │ ├── ExampleButtonGroup.bs.js │ ├── ExampleButtonGroup.res │ ├── ExampleButtons.bs.js │ ├── ExampleButtons.res │ ├── ExampleCardActionArea.bs.js │ ├── ExampleCardActionArea.res │ ├── ExampleCheckbox.bs.js │ ├── ExampleCheckbox.res │ ├── ExampleComponentOverride.bs.js │ ├── ExampleComponentOverride.res │ ├── ExampleDashboard.bs.js │ ├── ExampleDashboard.res │ ├── ExampleFab.bs.js │ ├── ExampleFab.res │ ├── ExampleIconButton.bs.js │ ├── ExampleIconButton.res │ ├── ExampleIcons.bs.js │ ├── ExampleIcons.res │ ├── ExampleList.bs.js │ ├── ExampleList.res │ ├── ExampleListItemButton.bs.js │ ├── ExampleListItemButton.res │ ├── ExampleMenu.bs.js │ ├── ExampleMenu.res │ ├── ExampleMenuItem.bs.js │ ├── ExampleMenuItem.res │ ├── ExamplePagination.bs.js │ ├── ExamplePagination.res │ ├── ExamplePopover.bs.js │ ├── ExamplePopover.res │ ├── ExampleRadio.bs.js │ ├── ExampleRadio.res │ ├── ExampleRadioGroup.bs.js │ ├── ExampleRadioGroup.res │ ├── ExampleRating.bs.js │ ├── ExampleRating.res │ ├── ExampleSelect.bs.js │ ├── ExampleSelect.res │ ├── ExampleSkeleton.bs.js │ ├── ExampleSkeleton.res │ ├── ExampleSlider.bs.js │ ├── ExampleSlider.res │ ├── ExampleStepper.bs.js │ ├── ExampleStepper.res │ ├── ExampleStylingBsCss.bs.js │ ├── ExampleStylingBsCss.res │ ├── ExampleStylingCss.bs.js │ ├── ExampleStylingCss.res │ ├── ExampleStylingTailwind.bs.js │ ├── ExampleStylingTailwind.res │ ├── ExampleSwitch.bs.js │ ├── ExampleSwitch.res │ ├── ExampleTableSortLabel.bs.js │ ├── ExampleTableSortLabel.res │ ├── ExampleTabs.bs.js │ ├── ExampleTabs.res │ ├── ExampleTextFieldSize.bs.js │ ├── ExampleTextFieldSize.res │ ├── ExampleTheme.bs.js │ ├── ExampleTheme.res │ ├── ExampleThemeProvider.bs.js │ ├── ExampleThemeProvider.res │ ├── ExampleThemeProviderOverride.bs.js │ ├── ExampleThemeProviderOverride.res │ ├── Examples.bs.js │ └── Examples.res │ ├── index.html │ └── labExamples │ ├── ExampleToggleButton.bs.js │ ├── ExampleToggleButton.res │ ├── ExampleTreeView.bs.js │ ├── ExampleTreeView.res │ ├── ExamplesLab.bs.js │ └── ExamplesLab.res ├── helpers ├── package.json ├── rescript.json └── src │ ├── GenerateOverrides.bs.js │ ├── GenerateOverrides.res │ ├── NodeJs.bs.js │ └── bindings │ ├── NodeJs.bs.js │ └── NodeJs.res ├── package.json ├── packages ├── rescript-mui-lab │ ├── README.md │ ├── package.json │ ├── rescript.json │ └── src │ │ ├── LoadingButton.bs.js │ │ ├── LoadingButton.res │ │ ├── Masonry.bs.js │ │ ├── Masonry.res │ │ ├── Overrides.bs.js │ │ ├── Overrides.res │ │ ├── TabContext.bs.js │ │ ├── TabContext.res │ │ ├── TabList.bs.js │ │ ├── TabList.res │ │ ├── TabPanel.bs.js │ │ ├── TabPanel.res │ │ ├── Timeline.bs.js │ │ ├── Timeline.res │ │ ├── TimelineConnector.bs.js │ │ ├── TimelineConnector.res │ │ ├── TimelineContent.bs.js │ │ ├── TimelineContent.res │ │ ├── TimelineDot.bs.js │ │ ├── TimelineDot.res │ │ ├── TimelineItem.bs.js │ │ ├── TimelineItem.res │ │ ├── TimelineOppositeContent.bs.js │ │ ├── TimelineOppositeContent.res │ │ ├── TimelineSeparator.bs.js │ │ ├── TimelineSeparator.res │ │ ├── TreeItem.bs.js │ │ ├── TreeItem.res │ │ ├── TreeView.bs.js │ │ └── TreeView.res ├── rescript-mui-material │ ├── README.md │ ├── package.json │ ├── rescript.json │ └── src │ │ ├── components │ │ ├── Accordion.bs.js │ │ ├── Accordion.res │ │ ├── AccordionActions.bs.js │ │ ├── AccordionActions.res │ │ ├── AccordionDetails.bs.js │ │ ├── AccordionDetails.res │ │ ├── AccordionSummary.bs.js │ │ ├── AccordionSummary.res │ │ ├── Alert.bs.js │ │ ├── Alert.res │ │ ├── AlertTitle.bs.js │ │ ├── AlertTitle.res │ │ ├── AppBar.bs.js │ │ ├── AppBar.res │ │ ├── Autocomplete.bs.js │ │ ├── Autocomplete.res │ │ ├── Avatar.bs.js │ │ ├── Avatar.res │ │ ├── AvatarGroup.bs.js │ │ ├── AvatarGroup.res │ │ ├── Backdrop.bs.js │ │ ├── Backdrop.res │ │ ├── Badge.bs.js │ │ ├── Badge.res │ │ ├── BottomNavigation.bs.js │ │ ├── BottomNavigation.res │ │ ├── BottomNavigationAction.bs.js │ │ ├── BottomNavigationAction.res │ │ ├── Box.bs.js │ │ ├── Box.res │ │ ├── Breadcrumbs.bs.js │ │ ├── Breadcrumbs.res │ │ ├── Button.bs.js │ │ ├── Button.res │ │ ├── ButtonBase.bs.js │ │ ├── ButtonBase.res │ │ ├── ButtonGroup.bs.js │ │ ├── ButtonGroup.res │ │ ├── Card.bs.js │ │ ├── Card.res │ │ ├── CardActionArea.bs.js │ │ ├── CardActionArea.res │ │ ├── CardActions.bs.js │ │ ├── CardActions.res │ │ ├── CardContent.bs.js │ │ ├── CardContent.res │ │ ├── CardHeader.bs.js │ │ ├── CardHeader.res │ │ ├── CardMedia.bs.js │ │ ├── CardMedia.res │ │ ├── Checkbox.bs.js │ │ ├── Checkbox.res │ │ ├── Chip.bs.js │ │ ├── Chip.res │ │ ├── CircularProgress.bs.js │ │ ├── CircularProgress.res │ │ ├── Collapse.bs.js │ │ ├── Collapse.res │ │ ├── Colors.bs.js │ │ ├── Colors.res │ │ ├── Container.bs.js │ │ ├── Container.res │ │ ├── Core.bs.js │ │ ├── Core.res │ │ ├── CssBaseline.bs.js │ │ ├── CssBaseline.res │ │ ├── Dialog.bs.js │ │ ├── Dialog.res │ │ ├── DialogActions.bs.js │ │ ├── DialogActions.res │ │ ├── DialogContent.bs.js │ │ ├── DialogContent.res │ │ ├── DialogContentText.bs.js │ │ ├── DialogContentText.res │ │ ├── DialogTitle.bs.js │ │ ├── DialogTitle.res │ │ ├── Divider.bs.js │ │ ├── Divider.res │ │ ├── Drawer.bs.js │ │ ├── Drawer.res │ │ ├── Fab.bs.js │ │ ├── Fab.res │ │ ├── Fade.bs.js │ │ ├── Fade.res │ │ ├── FilledInput.bs.js │ │ ├── FilledInput.res │ │ ├── FormControl.bs.js │ │ ├── FormControl.res │ │ ├── FormControlLabel.bs.js │ │ ├── FormControlLabel.res │ │ ├── FormGroup.bs.js │ │ ├── FormGroup.res │ │ ├── FormHelperText.bs.js │ │ ├── FormHelperText.res │ │ ├── FormLabel.bs.js │ │ ├── FormLabel.res │ │ ├── GlobalStyles.bs.js │ │ ├── GlobalStyles.res │ │ ├── Grid.bs.js │ │ ├── Grid.res │ │ ├── Grow.bs.js │ │ ├── Grow.res │ │ ├── Hidden.bs.js │ │ ├── Hidden.res │ │ ├── Icon.bs.js │ │ ├── Icon.res │ │ ├── IconButton.bs.js │ │ ├── IconButton.res │ │ ├── ImageList.bs.js │ │ ├── ImageList.res │ │ ├── ImageListItem.bs.js │ │ ├── ImageListItem.res │ │ ├── ImageListItemBar.bs.js │ │ ├── ImageListItemBar.res │ │ ├── Input.bs.js │ │ ├── Input.res │ │ ├── InputAdornment.bs.js │ │ ├── InputAdornment.res │ │ ├── InputBase.bs.js │ │ ├── InputBase.res │ │ ├── InputLabel.bs.js │ │ ├── InputLabel.res │ │ ├── LinearProgress.bs.js │ │ ├── LinearProgress.res │ │ ├── Link.bs.js │ │ ├── Link.res │ │ ├── List.bs.js │ │ ├── List.res │ │ ├── ListItem.bs.js │ │ ├── ListItem.res │ │ ├── ListItemAvatar.bs.js │ │ ├── ListItemAvatar.res │ │ ├── ListItemButton.bs.js │ │ ├── ListItemButton.res │ │ ├── ListItemIcon.bs.js │ │ ├── ListItemIcon.res │ │ ├── ListItemSecondaryAction.bs.js │ │ ├── ListItemSecondaryAction.res │ │ ├── ListItemText.bs.js │ │ ├── ListItemText.res │ │ ├── ListSubheader.bs.js │ │ ├── ListSubheader.res │ │ ├── Menu.bs.js │ │ ├── Menu.res │ │ ├── MenuItem.bs.js │ │ ├── MenuItem.res │ │ ├── MenuList.bs.js │ │ ├── MenuList.res │ │ ├── MobileStepper.bs.js │ │ ├── MobileStepper.res │ │ ├── Modal.bs.js │ │ ├── Modal.res │ │ ├── NativeSelect.bs.js │ │ ├── NativeSelect.res │ │ ├── OutlinedInput.bs.js │ │ ├── OutlinedInput.res │ │ ├── Pagination.bs.js │ │ ├── Pagination.res │ │ ├── PaginationItem.bs.js │ │ ├── PaginationItem.res │ │ ├── Paper.bs.js │ │ ├── Paper.res │ │ ├── Popover.bs.js │ │ ├── Popover.res │ │ ├── Popper.bs.js │ │ ├── Popper.res │ │ ├── Radio.bs.js │ │ ├── Radio.res │ │ ├── RadioGroup.bs.js │ │ ├── RadioGroup.res │ │ ├── Rating.bs.js │ │ ├── Rating.res │ │ ├── ScopedCssBaseline.bs.js │ │ ├── ScopedCssBaseline.res │ │ ├── Select.bs.js │ │ ├── Select.res │ │ ├── Skeleton.bs.js │ │ ├── Skeleton.res │ │ ├── Slide.bs.js │ │ ├── Slide.res │ │ ├── Slider.bs.js │ │ ├── Slider.res │ │ ├── Snackbar.bs.js │ │ ├── Snackbar.res │ │ ├── SnackbarContent.bs.js │ │ ├── SnackbarContent.res │ │ ├── SpeedDial.bs.js │ │ ├── SpeedDial.res │ │ ├── SpeedDialAction.bs.js │ │ ├── SpeedDialAction.res │ │ ├── SpeedDialIcon.bs.js │ │ ├── SpeedDialIcon.res │ │ ├── Stack.bs.js │ │ ├── Stack.res │ │ ├── Step.bs.js │ │ ├── Step.res │ │ ├── StepButton.bs.js │ │ ├── StepButton.res │ │ ├── StepConnector.bs.js │ │ ├── StepConnector.res │ │ ├── StepContent.bs.js │ │ ├── StepContent.res │ │ ├── StepIcon.bs.js │ │ ├── StepIcon.res │ │ ├── StepLabel.bs.js │ │ ├── StepLabel.res │ │ ├── Stepper.bs.js │ │ ├── Stepper.res │ │ ├── StyledEngineProvider.bs.js │ │ ├── StyledEngineProvider.res │ │ ├── SvgIcon.bs.js │ │ ├── SvgIcon.res │ │ ├── SwipeableDrawer.bs.js │ │ ├── SwipeableDrawer.res │ │ ├── Switch.bs.js │ │ ├── Switch.res │ │ ├── Tab.bs.js │ │ ├── Tab.res │ │ ├── TabScrollButton.bs.js │ │ ├── TabScrollButton.res │ │ ├── Table.bs.js │ │ ├── Table.res │ │ ├── TableBody.bs.js │ │ ├── TableBody.res │ │ ├── TableCell.bs.js │ │ ├── TableCell.res │ │ ├── TableContainer.bs.js │ │ ├── TableContainer.res │ │ ├── TableFooter.bs.js │ │ ├── TableFooter.res │ │ ├── TableHead.bs.js │ │ ├── TableHead.res │ │ ├── TablePagination.bs.js │ │ ├── TablePagination.res │ │ ├── TableRow.bs.js │ │ ├── TableRow.res │ │ ├── TableSortLabel.bs.js │ │ ├── TableSortLabel.res │ │ ├── Tabs.bs.js │ │ ├── Tabs.res │ │ ├── TextField.bs.js │ │ ├── TextField.res │ │ ├── Theme.bs.js │ │ ├── Theme.res │ │ ├── ThemeHelpers.bs.js │ │ ├── ThemeHelpers.res │ │ ├── ThemeOptions.bs.js │ │ ├── ThemeOptions.res │ │ ├── ThemeProvider.bs.js │ │ ├── ThemeProvider.res │ │ ├── ToggleButton.bs.js │ │ ├── ToggleButton.res │ │ ├── ToggleButtonGroup.bs.js │ │ ├── ToggleButtonGroup.res │ │ ├── Toolbar.bs.js │ │ ├── Toolbar.res │ │ ├── Tooltip.bs.js │ │ ├── Tooltip.res │ │ ├── Typography.bs.js │ │ ├── Typography.res │ │ ├── Zoom.bs.js │ │ └── Zoom.res │ │ └── types │ │ ├── Breakpoint.bs.js │ │ ├── Breakpoint.res │ │ ├── CommonProps.bs.js │ │ ├── CommonProps.res │ │ ├── OverridableComponent.bs.js │ │ ├── OverridableComponent.res │ │ ├── Overrides.bs.js │ │ ├── Overrides.res │ │ ├── Sx.bs.js │ │ ├── Sx.res │ │ ├── System.bs.js │ │ ├── System.res │ │ ├── Transition.bs.js │ │ ├── Transition.res │ │ ├── UsePagination.bs.js │ │ └── UsePagination.res ├── rescript-mui-system │ ├── README.md │ ├── package.json │ ├── rescript.json │ └── src │ │ ├── System.bs.js │ │ └── System.res └── rescript-mui-x-date-pickers │ ├── README.md │ ├── bsconfig.json │ ├── package.json │ └── src │ ├── AdapterDateFns.bs.js │ ├── AdapterDateFns.res │ ├── AdapterDateFnsJalali.bs.js │ ├── AdapterDateFnsJalali.res │ ├── AdapterDayjs.bs.js │ ├── AdapterDayjs.res │ ├── AdapterLuxon.bs.js │ ├── AdapterLuxon.res │ ├── AdapterMoment.bs.js │ ├── AdapterMoment.res │ ├── AdapterMomentHijri.bs.js │ ├── AdapterMomentHijri.res │ ├── AdapterMomentJalaali.bs.js │ ├── AdapterMomentJalaali.res │ ├── DateCalendar.bs.js │ ├── DateCalendar.res │ ├── DateField.bs.js │ ├── DateField.res │ ├── DatePicker.bs.js │ ├── DatePicker.res │ ├── DateTimeField.bs.js │ ├── DateTimeField.res │ ├── DateTimePicker.bs.js │ ├── DateTimePicker.res │ ├── DayCalendarSkeleton.bs.js │ ├── DayCalendarSkeleton.res │ ├── DesktopDatePicker.bs.js │ ├── DesktopDatePicker.res │ ├── DesktopDateTimePicker.bs.js │ ├── DesktopDateTimePicker.res │ ├── DesktopTimePicker.bs.js │ ├── DesktopTimePicker.res │ ├── DigitalClock.bs.js │ ├── DigitalClock.res │ ├── LocalizationProvider.bs.js │ ├── LocalizationProvider.res │ ├── MobileDatePicker.bs.js │ ├── MobileDatePicker.res │ ├── MobileDateTimePicker.bs.js │ ├── MobileDateTimePicker.res │ ├── MobileTimePicker.bs.js │ ├── MobileTimePicker.res │ ├── MonthCalendar.bs.js │ ├── MonthCalendar.res │ ├── MultiSectionDigitalClock.bs.js │ ├── MultiSectionDigitalClock.res │ ├── PickersActionBar.bs.js │ ├── PickersActionBar.res │ ├── PickersDay.bs.js │ ├── PickersDay.res │ ├── PickersLayout.bs.js │ ├── PickersLayout.res │ ├── PickersShortcuts.bs.js │ ├── PickersShortcuts.res │ ├── StaticDatePicker.bs.js │ ├── StaticDatePicker.res │ ├── StaticDateTimePicker.bs.js │ ├── StaticDateTimePicker.res │ ├── StaticTimePicker.bs.js │ ├── StaticTimePicker.res │ ├── TimeClock.bs.js │ ├── TimeClock.res │ ├── TimeField.bs.js │ ├── TimeField.res │ ├── TimePicker.bs.js │ ├── TimePicker.res │ ├── YearCalendar.bs.js │ ├── YearCalendar.res │ └── types │ ├── Adapters.bs.js │ ├── Adapters.res │ ├── Common.bs.js │ ├── Common.res │ ├── Fields.bs.js │ └── Fields.res ├── rescript.json └── yarn.lock /.github/workflows/ci.yml: -------------------------------------------------------------------------------- 1 | name: CI 2 | 3 | on: 4 | push: 5 | tags: 6 | - v* 7 | pull_request: 8 | branches: 9 | - master 10 | 11 | jobs: 12 | build: 13 | name: Build test 14 | runs-on: ubuntu-latest 15 | 16 | steps: 17 | - name: Checkout repository 18 | uses: actions/checkout@v4 19 | 20 | - name: Use Node.js ${{ matrix.node-version }} 21 | uses: actions/setup-node@v4 22 | 23 | with: 24 | node-version: 20 25 | 26 | - name: Corepack 27 | run: corepack enable 28 | 29 | - name: Yarn install 30 | run: yarn 31 | 32 | - name: Compile packages and examples 33 | run: yarn build 34 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # Logs 2 | *.log 3 | npm-debug.log* 4 | yarn-debug.log* 5 | yarn-error.log* 6 | .yarn/install-state.gz 7 | 8 | # Dependency directories 9 | node_modules/ 10 | 11 | # Parcel 12 | dist/ 13 | .parcel-cache 14 | 15 | # Package files 16 | output 17 | 18 | # macOS 19 | .DS_Store 20 | 21 | # ReScript 22 | lib/ 23 | .merlin 24 | .bsb.lock 25 | -------------------------------------------------------------------------------- /.prettierrc: -------------------------------------------------------------------------------- 1 | { 2 | "singleQuote": true, 3 | "trailingComma": "all" 4 | } 5 | -------------------------------------------------------------------------------- /.yarnrc.yml: -------------------------------------------------------------------------------- 1 | nodeLinker: node-modules 2 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2017 Jonathan Siebern, Control Center Apps GmbH 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. 22 | -------------------------------------------------------------------------------- /documentation/README.md: -------------------------------------------------------------------------------- 1 | # @rescript-mui documentation 2 | 3 | ### Naming 4 | 5 | `@rescript-mui/material` provides all components in individual files. The file 6 | pattern is: 7 | 8 | Mui.[COMPONENT_NAME].res 9 | 10 | If you wish to use the `Typography` component for example, it would look like 11 | this: 12 | 13 | ```rescript 14 | 15 | {"Some example text"->React.string} 16 | 17 | ``` 18 | 19 | The component names map one to one to the ones found in the `Component API` 20 | section of the MUI documentation. 21 | 22 | ### Global module 23 | 24 | For convenience, the `Mui` module includes a few special modules, which will be 25 | discussed later. To avoid name clashes, we suggest you stick to typing out 26 | `Mui.[COMPONENT_NAME]` instead of using `open`. 27 | 28 | ```rescript 29 | @react.component 30 | let make = () => 31 |
32 | 33 | {"Headline"->React.string} 34 | 35 | 36 | {"Some example text"->React.string} 37 | 38 |
39 | ``` 40 | 41 | ### Special modules 42 | 43 | The `Mui` namespace contains the following special modules: 44 | 45 | - [Colors](module-colors.md) 46 | - [Core](module-core.md) 47 | - [System](module-system.md) 48 | - [Theme](theming.md) 49 | - [ThemeOptions](theming.md) 50 | - [ThemeHelpers](theming.md) 51 | 52 | ## Styling 53 | 54 | For styling `@rescript-mui` components, you need to pass CSS class names 55 | to them. We have documented the following popular options: 56 | 57 | - [CSS](css.md) 58 | - [Tailwind CSS](tailwind.md) 59 | - [a CSS-in-ReScript library like `bs-css`](bs-css.md) 60 | -------------------------------------------------------------------------------- /documentation/bs-css.md: -------------------------------------------------------------------------------- 1 | ## Usage with bs-css or other CSS-in-ReScript libraries 2 | 3 | It is important to change the style precedence order with the help of the 4 | `StyledEngineProvider` component, otherwise the internal MUI classes will overwrite 5 | your styles. 6 | 7 | ### Example 8 | 9 | ```rescript 10 | module Styles = { 11 | open CssJs 12 | 13 | let categoryButton = style([textTransform(#none), justifyContent(#flexStart)]) 14 | } 15 | 16 | @react.component 17 | let make = () => 18 | 19 | 20 | {React.string("Hello, BS-CSS & MUI!")} 21 | 22 | 23 | ``` 24 | -------------------------------------------------------------------------------- /documentation/css.md: -------------------------------------------------------------------------------- 1 | ## Usage with plain CSS 2 | 3 | It is important to change the style precedence order with the help of the 4 | `StyledEngineProvider` component, otherwise the internal MUI classes will overwrite 5 | your styles. 6 | 7 | ### Example 8 | 9 | ```rescript 10 | @react.component 11 | let make = () => 12 | 13 | 17 | {React.string("Hello, plain CSS & MUI!")} 18 | 19 | 20 | ``` 21 | -------------------------------------------------------------------------------- /documentation/icons.md: -------------------------------------------------------------------------------- 1 | ## Icons 2 | 3 | The MaterialUi icons **do not** have separate bindings. There is a good reason 4 | for this: Bindings result in thousands of files (or one extremely large one), 5 | which take a good while to recompile (easily upwards of one minute, this is 6 | unacceptable performance for a ReScript project). 7 | 8 | It is therefore recommended to bind to the icons you need manually. See the 9 | following example for how this could look like: 10 | 11 | ```rescript 12 | module SupervisedUserCircleOutlined = { 13 | @react.component @module("@mui/icons-material/SupervisedUserCircle") 14 | external make: unit => React.element = "default" 15 | } 16 | 17 | @react.component 18 | let make = () => { 19 | 20 | } 21 | ``` 22 | -------------------------------------------------------------------------------- /documentation/module-core.md: -------------------------------------------------------------------------------- 1 | ## Core 2 | 3 | The `Mui.Core` module contains a few manual bindings to potentially useful 4 | functions. 5 | 6 | ### useMediaQuery(Breakpoint.t) => bool 7 | 8 | A [react](https://rescript-lang.org/docs/react/latest/introduction) hook to 9 | execute a programmatic media query. It returns a boolean for wether the query is 10 | true or not. 11 | 12 | The `useMediaQuery` uses a type of `Mui.Core.Breakpoint.t`. (See 13 | [this page](https://material-ui.com/components/use-media-query/#using-material-uis-breakpoint-helpers) 14 | for more information). 15 | 16 | You can construct a breakpoint like this: 17 | 18 | ```rescript 19 | @react.component 20 | let make = () => { 21 | open Mui.Core 22 | let theme = useTheme() 23 | let matches = useMediaQuery(Breakpoint.get(theme, #up(#sm))) 24 | Js.log(matches) 25 | 26 |
27 | } 28 | ``` 29 | 30 | ### useMediaQueryString(string) => bool 31 | 32 | It serves the same purpose as the one mentioned above, but you can pass a string 33 | with a custom query instead of a breakpoint. (See 34 | [this page](https://material-ui.com/components/use-media-query/#simple-media-query) 35 | for more information). 36 | -------------------------------------------------------------------------------- /documentation/module-system.md: -------------------------------------------------------------------------------- 1 | ## System 2 | 3 | The `Mui.System` module contains types for `@mui/system` values and props that are used in components like [`Box`](<(https://mui.com/material-ui/react-box/)>) or [`Grid`](https://mui.com/material-ui/react-grid/). 4 | 5 | The bindings are not complete and therefore do not offer the full functionality 6 | that the original does. Feel free to 7 | [open an issue](https://github.com/cca-io/rescript-mui/issues) if you're 8 | missing a vital use case with this component. 9 | 10 | It makes heavy use of unboxed & untagged unions. Please refer to 11 | [this section](union-values.md#rules-for-mixed-unions), to see how they are 12 | used. 13 | 14 | Example: 15 | 16 | ```rescript 17 | @react.component 18 | let make = () => 19 | 29 | {"Testbox"->React.string} 30 | 31 | ``` 32 | -------------------------------------------------------------------------------- /documentation/tailwind.md: -------------------------------------------------------------------------------- 1 | ## Usage with TailwindCSS 2 | 3 | It is important to change the style precedence order with the help of the 4 | `StyledEngineProvider` component, otherwise the internal MUI classes will overwrite 5 | your styles. 6 | 7 | ### Example 8 | 9 | ```rescript 10 | @react.component 11 | let make = () => 12 | 13 | 14 | {React.string("Hello, Tailwind & MUI!")} 15 | 16 | 17 | ``` 18 | -------------------------------------------------------------------------------- /examples/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "rescript-material-ui-examples", 3 | "version": "1.0.0", 4 | "private": true, 5 | "description": "Examples for ReScript-MUI.", 6 | "author": "Jonathan Siebern ", 7 | "contributors": [ 8 | "Christoph Knittel ", 9 | "Florian Hammerschmidt " 10 | ], 11 | "license": "MIT", 12 | "dependencies": { 13 | "@emotion/react": "^11.11.4", 14 | "@emotion/styled": "^11.11.5", 15 | "@mui/icons-material": "^5.15.15", 16 | "@rescript/react": "^0.12.1", 17 | "bs-css-emotion": "^6.0.2", 18 | "react": "^18.2.0", 19 | "react-dom": "^18.2.0" 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /examples/rescript.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "rescript-material-ui-examples", 3 | "namespace": false, 4 | "sources": [ 5 | { 6 | "dir": "src", 7 | "subdirs": true 8 | } 9 | ], 10 | "bs-dependencies": [ 11 | "@rescript/react", 12 | "bs-css-emotion", 13 | "@rescript-mui/lab", 14 | "@rescript-mui/material" 15 | ], 16 | "warnings": { 17 | "number": "-103" 18 | }, 19 | "jsx": { 20 | "mode": "automatic", 21 | "version": 4 22 | } 23 | } -------------------------------------------------------------------------------- /examples/src/App.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | 3 | import * as Examples from "./examples/Examples.bs.js"; 4 | import * as ExamplesLab from "./labExamples/ExamplesLab.bs.js"; 5 | import Box from "@mui/material/Box"; 6 | import * as JsxRuntime from "react/jsx-runtime"; 7 | import * as Styles from "@mui/material/styles"; 8 | import CssBaseline from "@mui/material/CssBaseline"; 9 | 10 | function App(props) { 11 | return JsxRuntime.jsx(Styles.ThemeProvider, { 12 | children: JsxRuntime.jsxs(Box, { 13 | height: "100%", 14 | maxWidth: "970px", 15 | width: "100%", 16 | margin: "30px auto", 17 | children: [ 18 | JsxRuntime.jsx(CssBaseline, {}), 19 | JsxRuntime.jsx(Examples.make, {}), 20 | JsxRuntime.jsx(ExamplesLab.make, {}) 21 | ] 22 | }), 23 | theme: Styles.createTheme({}) 24 | }); 25 | } 26 | 27 | var make = App; 28 | 29 | export { 30 | make , 31 | } 32 | /* Examples Not a pure module */ 33 | -------------------------------------------------------------------------------- /examples/src/App.res: -------------------------------------------------------------------------------- 1 | open Mui 2 | 3 | @react.component 4 | let make = () => 5 | 6 | 11 | 12 | 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /examples/src/Index.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | 3 | import * as App from "./App.bs.js"; 4 | import * as Client from "react-dom/client"; 5 | import * as JsxRuntime from "react/jsx-runtime"; 6 | 7 | var domElement = document.querySelector("#app"); 8 | 9 | if (!(domElement == null)) { 10 | Client.createRoot(domElement).render(JsxRuntime.jsx(App.make, {})); 11 | } 12 | 13 | export { 14 | 15 | } 16 | /* domElement Not a pure module */ 17 | -------------------------------------------------------------------------------- /examples/src/Index.res: -------------------------------------------------------------------------------- 1 | switch ReactDOM.querySelector("#app") { 2 | | Some(domElement) => 3 | open ReactDOM.Client 4 | 5 | createRoot(domElement)->Root.render() 6 | | None => () 7 | } 8 | -------------------------------------------------------------------------------- /examples/src/examples/ExampleAlert.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | 3 | import * as JsxRuntime from "react/jsx-runtime"; 4 | import Alert from "@mui/material/Alert"; 5 | 6 | function ExampleAlert(props) { 7 | return JsxRuntime.jsxs("div", { 8 | children: [ 9 | JsxRuntime.jsx(Alert, { 10 | id: "error", 11 | children: "This is an error alert — check it out!", 12 | severity: "error" 13 | }), 14 | JsxRuntime.jsx(Alert, { 15 | id: "warning", 16 | children: "This is a warning alert — check it out!", 17 | severity: "warning" 18 | }), 19 | JsxRuntime.jsx(Alert, { 20 | id: "info", 21 | children: "This is an info alert — check it out!", 22 | severity: "info" 23 | }), 24 | JsxRuntime.jsx(Alert, { 25 | id: "success", 26 | children: "This is a success alert — check it out!", 27 | severity: "success" 28 | }) 29 | ] 30 | }); 31 | } 32 | 33 | var make = ExampleAlert; 34 | 35 | export { 36 | make , 37 | } 38 | /* react/jsx-runtime Not a pure module */ 39 | -------------------------------------------------------------------------------- /examples/src/examples/ExampleAlert.res: -------------------------------------------------------------------------------- 1 | open Mui 2 | 3 | @react.component 4 | let make = () => { 5 |
6 | {`This is an error alert — check it out!`->React.string} 7 | {`This is a warning alert — check it out!`->React.string} 8 | {`This is an info alert — check it out!`->React.string} 9 | {`This is a success alert — check it out!`->React.string} 10 |
11 | } 12 | -------------------------------------------------------------------------------- /examples/src/examples/ExampleBox.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | 3 | import Box from "@mui/material/Box"; 4 | import * as JsxRuntime from "react/jsx-runtime"; 5 | 6 | function ExampleBox(props) { 7 | return JsxRuntime.jsx(Box, { 8 | style: { 9 | boxSizing: "border-box" 10 | }, 11 | borderColor: "error.main", 12 | borderTop: 1, 13 | bgcolor: "background.paper", 14 | color: "text.secondary", 15 | m: [ 16 | 2, 17 | 5 18 | ], 19 | p: { 20 | sm: 2, 21 | md: 5 22 | }, 23 | fontSize: "30px", 24 | children: "Testbox", 25 | component: "span" 26 | }); 27 | } 28 | 29 | var make = ExampleBox; 30 | 31 | export { 32 | make , 33 | } 34 | /* @mui/material/Box Not a pure module */ 35 | -------------------------------------------------------------------------------- /examples/src/examples/ExampleBox.res: -------------------------------------------------------------------------------- 1 | @react.component 2 | let make = () => 3 | 13 | {"Testbox"->React.string} 14 | 15 | -------------------------------------------------------------------------------- /examples/src/examples/ExampleButton.res: -------------------------------------------------------------------------------- 1 | open Mui 2 | 3 | @react.component 4 | let make = () => { 5 |
6 | {"Button Examples:"->React.string} 7 | 8 | 11 | 14 | 17 | 20 | 23 | 26 | 29 | 30 |
31 | } 32 | -------------------------------------------------------------------------------- /examples/src/examples/ExampleButtonBase.res: -------------------------------------------------------------------------------- 1 | open Mui 2 | 3 | @react.component 4 | let make = () => { 5 |
6 | {"ButtonBase Examples:"->React.string} 7 | 8 | 10 | {"Default ButtonBase"->React.string} 11 | 12 | 13 | 16 | {"With Focus Ripple"->React.string} 17 | 18 | 19 | 22 | {"Centered Ripple"->React.string} 23 | 24 | 25 | 28 | {"Disabled"->React.string} 29 | 30 | 31 | 34 | {"Link Component"->React.string} 35 | 36 | 37 |
38 | } 39 | -------------------------------------------------------------------------------- /examples/src/examples/ExampleButtonGroup.res: -------------------------------------------------------------------------------- 1 | open Mui 2 | 3 | @react.component 4 | let make = () => { 5 |
6 | {"Button Group Examples:"->React.string} 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 25 | 26 | 27 | 28 | 29 | 30 |
31 | } 32 | -------------------------------------------------------------------------------- /examples/src/examples/ExampleButtons.res: -------------------------------------------------------------------------------- 1 | open Mui 2 | 3 | @react.component 4 | let make = () => { 5 | <> 6 | 7 | {React.string("AddCircleFilled")} 8 | 9 | 12 | 15 | 18 | 19 | } -------------------------------------------------------------------------------- /examples/src/examples/ExampleCardActionArea.res: -------------------------------------------------------------------------------- 1 | open Mui 2 | 3 | @react.component 4 | let make = () => { 5 |
6 | {"Card Action Area Example:"->React.string} 7 | 8 | 9 | 10 | 11 | {"Image Placeholder"->React.string} 12 | 13 | 14 | 15 | 16 | {"Clickable Card"->React.string} 17 | 18 | 19 | {"This entire card is clickable because it uses CardActionArea."->React.string} 20 | 21 | 22 | 23 | 24 | 27 | 30 | 31 | 32 |
33 | } 34 | -------------------------------------------------------------------------------- /examples/src/examples/ExampleComponentOverride.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | 3 | import * as Caml_option from "rescript/lib/es6/caml_option.js"; 4 | import * as JsxRuntime from "react/jsx-runtime"; 5 | import Typography from "@mui/material/Typography"; 6 | 7 | function ExampleComponentOverride$H7(props) { 8 | return JsxRuntime.jsx("span", { 9 | children: props.children, 10 | style: { 11 | fontWeight: "bold", 12 | marginBottom: "4px" 13 | } 14 | }); 15 | } 16 | 17 | var H7 = { 18 | make: ExampleComponentOverride$H7 19 | }; 20 | 21 | function ExampleComponentOverride(props) { 22 | return JsxRuntime.jsx(Typography, { 23 | component: Caml_option.some(ExampleComponentOverride$H7), 24 | children: "This is a custom h7" 25 | }); 26 | } 27 | 28 | var make = ExampleComponentOverride; 29 | 30 | export { 31 | H7 , 32 | make , 33 | } 34 | /* react/jsx-runtime Not a pure module */ 35 | -------------------------------------------------------------------------------- /examples/src/examples/ExampleComponentOverride.res: -------------------------------------------------------------------------------- 1 | module H7 = { 2 | @react.component 3 | let make = (~children) => children 4 | } 5 | 6 | @react.component 7 | let make = () => 8 | 9 | {"This is a custom h7"->React.string} 10 | 11 | -------------------------------------------------------------------------------- /examples/src/examples/ExampleFab.res: -------------------------------------------------------------------------------- 1 | open Mui 2 | 3 | @react.component 4 | let make = () => { 5 |
6 | {"Floating Action Button Examples:"->React.string} 7 | 8 | 9 | {"+"->React.string} 10 | 11 | 12 | {"✎"->React.string} 13 | 14 | 15 | {"Navigate"->React.string} 16 | 17 | 18 | {"X"->React.string} 19 | 20 | 21 |
22 | } 23 | -------------------------------------------------------------------------------- /examples/src/examples/ExampleIconButton.res: -------------------------------------------------------------------------------- 1 | open Mui 2 | 3 | @react.component 4 | let make = () => { 5 |
6 | {"Icon Button Examples:"->React.string} 7 | 8 | 9 | {"A"->React.string} 10 | 11 | 12 | {"B"->React.string} 13 | 14 | 15 | {"C"->React.string} 16 | 17 | 18 | {"D"->React.string} 19 | 20 | 21 |
22 | } 23 | -------------------------------------------------------------------------------- /examples/src/examples/ExampleList.res: -------------------------------------------------------------------------------- 1 | open Mui 2 | 3 | @react.component 4 | let make = () => { 5 | let subheader =
  • 6 | 7 | 8 | 9 | 10 | 11 | {React.array(Array.map(sectionId => 12 |
  • 13 |
      14 | {React.array( 15 | Array.append( 16 | [ 17 | 18 | {React.string("I'm sticky " ++ string_of_int(sectionId))} 19 | , 20 | ], 21 | Array.map(item => 22 | 26 | 27 | {React.string("Item " ++ string_of_int(item))} 28 | 29 | 30 | , [0, 1, 2]), 31 | ), 32 | )} 33 |
    34 |
  • 35 | , [0, 1, 2, 3, 4]))} 36 | 37 | 38 | 41 | 42 | 43 | 44 | } 45 | -------------------------------------------------------------------------------- /examples/src/examples/ExampleMenu.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | 3 | import * as JsxRuntime from "react/jsx-runtime"; 4 | import Menu from "@mui/material/Menu"; 5 | import MenuItem from "@mui/material/MenuItem"; 6 | 7 | function ExampleMenu(props) { 8 | return JsxRuntime.jsxs(Menu, { 9 | id: "menu", 10 | component: "nav", 11 | open: true, 12 | children: [ 13 | JsxRuntime.jsx(MenuItem, { 14 | id: "simple-menu-item-1", 15 | children: "Profile" 16 | }), 17 | JsxRuntime.jsx(MenuItem, { 18 | id: "simple-menu-item-2", 19 | children: "My account" 20 | }), 21 | JsxRuntime.jsx(MenuItem, { 22 | id: "simple-menu-item-3", 23 | children: "Logout" 24 | }) 25 | ] 26 | }); 27 | } 28 | 29 | var make = ExampleMenu; 30 | 31 | export { 32 | make , 33 | } 34 | /* react/jsx-runtime Not a pure module */ 35 | -------------------------------------------------------------------------------- /examples/src/examples/ExampleMenu.res: -------------------------------------------------------------------------------- 1 | open Mui 2 | 3 | @react.component 4 | let make = () => { 5 | 6 | {React.string("Profile")} 7 | {React.string("My account")} 8 | {React.string("Logout")} 9 | 10 | } -------------------------------------------------------------------------------- /examples/src/examples/ExamplePagination.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | 3 | import * as JsxRuntime from "react/jsx-runtime"; 4 | import Pagination from "@mui/material/Pagination"; 5 | 6 | function ExamplePagination(props) { 7 | return JsxRuntime.jsxs("div", { 8 | children: [ 9 | JsxRuntime.jsx(Pagination, { 10 | count: 10 11 | }), 12 | JsxRuntime.jsx(Pagination, { 13 | count: 10, 14 | color: "primary" 15 | }), 16 | JsxRuntime.jsx(Pagination, { 17 | count: 10, 18 | color: "secondary" 19 | }), 20 | JsxRuntime.jsx(Pagination, { 21 | count: 10, 22 | disabled: true 23 | }) 24 | ] 25 | }); 26 | } 27 | 28 | var make = ExamplePagination; 29 | 30 | export { 31 | make , 32 | } 33 | /* react/jsx-runtime Not a pure module */ 34 | -------------------------------------------------------------------------------- /examples/src/examples/ExamplePagination.res: -------------------------------------------------------------------------------- 1 | @react.component 2 | let make = () => { 3 |
    4 | 5 | 6 | 7 | 8 |
    9 | } 10 | -------------------------------------------------------------------------------- /examples/src/examples/ExamplePopover.res: -------------------------------------------------------------------------------- 1 | external toDomElement: 'a => Dom.element = "%identity" 2 | 3 | let messages: array = %raw(` [...'养绌聭'] `) 4 | 5 | type state = { 6 | anchorEl: option, 7 | popupMessage: string, 8 | } 9 | 10 | type action = 11 | | OpenPopup((Dom.element, string)) 12 | | ClosePopup 13 | 14 | let reducer = (state: state, action: action) => 15 | switch action { 16 | | OpenPopup((el, message)) => {anchorEl: Some(el), popupMessage: message} 17 | | ClosePopup => {...state, anchorEl: None} 18 | } 19 | 20 | @react.component 21 | let make = () => { 22 | let (state, dispatch) = React.useReducer(reducer, {anchorEl: None, popupMessage: ""}) 23 | 24 |
    25 | dispatch(ClosePopup)} 28 | anchorEl=?{state.anchorEl->Belt.Option.map(el => el->ReactDOM.domElementToObj->Obj.magic)}> 29 |
    36 | {React.string(state.popupMessage)} 37 |
    38 |
    39 | 40 | {messages 41 | ->Belt.Array.mapWithIndex((i, message) => 42 | 45 | dispatch(OpenPopup((evt->ReactEvent.Mouse.target->toDomElement, message)))}> 46 | {React.string(message)} 47 | 48 | ) 49 | ->React.array} 50 | 51 |
    52 | } 53 | -------------------------------------------------------------------------------- /examples/src/examples/ExampleRadioGroup.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | 3 | import * as React from "react"; 4 | import * as JsxRuntime from "react/jsx-runtime"; 5 | import Radio from "@mui/material/Radio"; 6 | import RadioGroup from "@mui/material/RadioGroup"; 7 | import FormControlLabel from "@mui/material/FormControlLabel"; 8 | 9 | function ExampleRadioGroup(props) { 10 | var match = React.useState(function () { 11 | return "Yes"; 12 | }); 13 | var setState = match[1]; 14 | return JsxRuntime.jsxs(RadioGroup, { 15 | children: [ 16 | JsxRuntime.jsx(FormControlLabel, { 17 | control: JsxRuntime.jsx(Radio, {}), 18 | label: "Yes", 19 | value: "Yes" 20 | }), 21 | JsxRuntime.jsx(FormControlLabel, { 22 | control: JsxRuntime.jsx(Radio, {}), 23 | label: "No", 24 | value: "No" 25 | }), 26 | JsxRuntime.jsx(FormControlLabel, { 27 | control: JsxRuntime.jsx(Radio, {}), 28 | label: "Maybe", 29 | value: "Maybe" 30 | }) 31 | ], 32 | name: "answer", 33 | onChange: (function (e, param) { 34 | var value = e.target.value; 35 | setState(function (param) { 36 | return value; 37 | }); 38 | }), 39 | value: match[0] 40 | }); 41 | } 42 | 43 | var make = ExampleRadioGroup; 44 | 45 | export { 46 | make , 47 | } 48 | /* react Not a pure module */ 49 | -------------------------------------------------------------------------------- /examples/src/examples/ExampleRadioGroup.res: -------------------------------------------------------------------------------- 1 | type answer = Yes | No | Maybe 2 | 3 | @react.component 4 | let make = () => { 5 | let (state, setState) = React.useState(() => Yes) 6 | 7 | open Mui 8 | { 12 | let value = (e->ReactEvent.Form.target)["value"] 13 | setState(_ => value) 14 | }}> 15 | } label={React.string("Yes")} /> 16 | } label={React.string("No")} /> 17 | } label={React.string("Maybe")} /> 18 | 19 | } 20 | -------------------------------------------------------------------------------- /examples/src/examples/ExampleSkeleton.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | 3 | import * as JsxRuntime from "react/jsx-runtime"; 4 | import Skeleton from "@mui/material/Skeleton"; 5 | 6 | function ExampleSkeleton(props) { 7 | return JsxRuntime.jsxs("div", { 8 | children: [ 9 | JsxRuntime.jsx(Skeleton, { 10 | variant: "text" 11 | }), 12 | JsxRuntime.jsx(Skeleton, { 13 | height: 40, 14 | variant: "circular", 15 | width: 40 16 | }), 17 | JsxRuntime.jsx(Skeleton, { 18 | height: 118, 19 | variant: "rectangular", 20 | width: 210 21 | }) 22 | ] 23 | }); 24 | } 25 | 26 | var make = ExampleSkeleton; 27 | 28 | export { 29 | make , 30 | } 31 | /* react/jsx-runtime Not a pure module */ 32 | -------------------------------------------------------------------------------- /examples/src/examples/ExampleSkeleton.res: -------------------------------------------------------------------------------- 1 | open Mui 2 | 3 | @react.component 4 | let make = () => { 5 |
    6 | 7 | 8 | 9 |
    10 | } 11 | -------------------------------------------------------------------------------- /examples/src/examples/ExampleSlider.res: -------------------------------------------------------------------------------- 1 | open Mui 2 | 3 | module VolumeUpIcon = { 4 | @react.component @module("@mui/icons-material/VolumeUp") 5 | external make: unit => React.element = "default" 6 | } 7 | 8 | @react.component 9 | let make = () => { 10 | let (value, setValue) = React.useReducer((_, v) => v, 0.) 11 | 12 |
    13 | {"Volume"->React.string} 14 | 15 | 16 | 17 | 18 | 19 | setValue(v)} ariaLabelledby="input-slider" /> 20 | 21 | 22 | setValue((e->ReactEvent.Form.target)["value"]->float_of_string)} 26 | onBlur={_ => 27 | if value < 0. { 28 | setValue(0.) 29 | } else if value > 100. { 30 | setValue(100.) 31 | }} 32 | inputProps={ 33 | step: 10, 34 | min: 0, 35 | max: 100, 36 | type_: "number", 37 | ariaLabelledby: "input-slider", 38 | } 39 | /> 40 | 41 | 42 |
    43 | } 44 | -------------------------------------------------------------------------------- /examples/src/examples/ExampleStylingBsCss.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | 3 | import * as CssJs from "bs-css-emotion/src/CssJs.bs.js"; 4 | import * as JsxRuntime from "react/jsx-runtime"; 5 | import Button from "@mui/material/Button"; 6 | import * as Styles from "@mui/material/styles"; 7 | 8 | var categoryButton = CssJs.style([ 9 | CssJs.textTransform("none"), 10 | CssJs.justifyContent("flexStart") 11 | ]); 12 | 13 | var Styles$1 = { 14 | categoryButton: categoryButton 15 | }; 16 | 17 | function ExampleStylingBsCss(props) { 18 | return JsxRuntime.jsx(Styles.StyledEngineProvider, { 19 | children: JsxRuntime.jsx(Button, { 20 | children: "Hello, BS-CSS & MUI!", 21 | onClick: (function (prim) { 22 | 23 | }), 24 | classes: { 25 | root: categoryButton 26 | }, 27 | color: "primary" 28 | }), 29 | injectFirst: true 30 | }); 31 | } 32 | 33 | var make = ExampleStylingBsCss; 34 | 35 | export { 36 | Styles$1 as Styles, 37 | make , 38 | } 39 | /* categoryButton Not a pure module */ 40 | -------------------------------------------------------------------------------- /examples/src/examples/ExampleStylingBsCss.res: -------------------------------------------------------------------------------- 1 | module Styles = { 2 | open CssJs 3 | 4 | let categoryButton = style([textTransform(#none), justifyContent(#flexStart)]) 5 | } 6 | 7 | @react.component 8 | let make = () => 9 | 10 | 11 | {React.string("Hello, BS-CSS & MUI!")} 12 | 13 | 14 | -------------------------------------------------------------------------------- /examples/src/examples/ExampleStylingCss.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | 3 | import * as JsxRuntime from "react/jsx-runtime"; 4 | import Button from "@mui/material/Button"; 5 | import * as Styles from "@mui/material/styles"; 6 | 7 | function ExampleStylingCss(props) { 8 | return JsxRuntime.jsx(Styles.StyledEngineProvider, { 9 | children: JsxRuntime.jsx(Button, { 10 | className: "my-global-class-name", 11 | children: "Hello, plain CSS & MUI!", 12 | onClick: (function (prim) { 13 | 14 | }), 15 | color: "primary" 16 | }), 17 | injectFirst: true 18 | }); 19 | } 20 | 21 | var make = ExampleStylingCss; 22 | 23 | export { 24 | make , 25 | } 26 | /* react/jsx-runtime Not a pure module */ 27 | -------------------------------------------------------------------------------- /examples/src/examples/ExampleStylingCss.res: -------------------------------------------------------------------------------- 1 | @react.component 2 | let make = () => 3 | 4 | 5 | {React.string("Hello, plain CSS & MUI!")} 6 | 7 | 8 | -------------------------------------------------------------------------------- /examples/src/examples/ExampleStylingTailwind.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | 3 | import * as JsxRuntime from "react/jsx-runtime"; 4 | import Button from "@mui/material/Button"; 5 | import * as Styles from "@mui/material/styles"; 6 | 7 | function ExampleStylingTailwind(props) { 8 | return JsxRuntime.jsx(Styles.StyledEngineProvider, { 9 | children: JsxRuntime.jsx(Button, { 10 | children: "Hello, Tailwind & MUI!", 11 | onClick: (function (prim) { 12 | 13 | }), 14 | classes: { 15 | root: "normal-case justify-start" 16 | }, 17 | color: "primary" 18 | }), 19 | injectFirst: true 20 | }); 21 | } 22 | 23 | var make = ExampleStylingTailwind; 24 | 25 | export { 26 | make , 27 | } 28 | /* react/jsx-runtime Not a pure module */ 29 | -------------------------------------------------------------------------------- /examples/src/examples/ExampleStylingTailwind.res: -------------------------------------------------------------------------------- 1 | @react.component 2 | let make = () => 3 | 4 | 5 | {React.string("Hello, Tailwind & MUI!")} 6 | 7 | 8 | -------------------------------------------------------------------------------- /examples/src/examples/ExampleTabs.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | 3 | import * as React from "react"; 4 | import * as Caml_option from "rescript/lib/es6/caml_option.js"; 5 | import Tab from "@mui/material/Tab"; 6 | import * as JsxRuntime from "react/jsx-runtime"; 7 | import Tabs from "@mui/material/Tabs"; 8 | import Paper from "@mui/material/Paper"; 9 | 10 | function ExampleTabs(props) { 11 | var match = React.useReducer((function (param, v) { 12 | return v; 13 | }), 2); 14 | var setValue = match[1]; 15 | var handleChange = function (param, newValue) { 16 | setValue(newValue); 17 | }; 18 | return JsxRuntime.jsx(Paper, { 19 | square: true, 20 | children: Caml_option.some(JsxRuntime.jsxs(Tabs, { 21 | indicatorColor: "primary", 22 | textColor: "primary", 23 | children: [ 24 | JsxRuntime.jsx(Tab, { 25 | label: "Active" 26 | }), 27 | JsxRuntime.jsx(Tab, { 28 | disabled: true, 29 | label: "Disabled" 30 | }), 31 | JsxRuntime.jsx(Tab, { 32 | label: "Active" 33 | }) 34 | ], 35 | onChange: handleChange, 36 | value: match[0] 37 | })) 38 | }); 39 | } 40 | 41 | var make = ExampleTabs; 42 | 43 | export { 44 | make , 45 | } 46 | /* react Not a pure module */ 47 | -------------------------------------------------------------------------------- /examples/src/examples/ExampleTabs.res: -------------------------------------------------------------------------------- 1 | @react.component 2 | let make = () => { 3 | let (value, setValue) = React.useReducer((_, v) => v, 2) 4 | 5 | let handleChange = (_, newValue) => setValue(newValue) 6 | 7 | 8 | 9 | React.string} /> 10 | React.string} disabled=true /> 11 | React.string} /> 12 | 13 | 14 | } 15 | -------------------------------------------------------------------------------- /examples/src/examples/ExampleTextFieldSize.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | 3 | import * as JsxRuntime from "react/jsx-runtime"; 4 | import TextField from "@mui/material/TextField"; 5 | 6 | function ExampleTextFieldSize(props) { 7 | return JsxRuntime.jsxs("div", { 8 | children: [ 9 | JsxRuntime.jsx(TextField, { 10 | placeholder: "None", 11 | fullWidth: true, 12 | variant: "outlined" 13 | }), 14 | JsxRuntime.jsx("br", {}), 15 | JsxRuntime.jsx("br", {}), 16 | JsxRuntime.jsx(TextField, { 17 | placeholder: "Medium", 18 | fullWidth: true, 19 | size: "medium", 20 | variant: "outlined" 21 | }), 22 | JsxRuntime.jsx("br", {}), 23 | JsxRuntime.jsx("br", {}), 24 | JsxRuntime.jsx(TextField, { 25 | placeholder: "Small", 26 | fullWidth: true, 27 | size: "small", 28 | variant: "outlined" 29 | }) 30 | ] 31 | }); 32 | } 33 | 34 | var make = ExampleTextFieldSize; 35 | 36 | export { 37 | make , 38 | } 39 | /* react/jsx-runtime Not a pure module */ 40 | -------------------------------------------------------------------------------- /examples/src/examples/ExampleTextFieldSize.res: -------------------------------------------------------------------------------- 1 | @react.component 2 | let make = () => 3 |
    4 | 5 |
    6 |
    7 | 8 |
    9 |
    10 | 11 |
    12 | -------------------------------------------------------------------------------- /examples/src/examples/ExampleThemeProvider.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | 3 | import * as Caml_obj from "rescript/lib/es6/caml_obj.js"; 4 | import * as JsxRuntime from "react/jsx-runtime"; 5 | import Button from "@mui/material/Button"; 6 | import * as Styles from "@mui/material/styles"; 7 | 8 | function theme(outerTheme) { 9 | var newrecord = Caml_obj.obj_dup(outerTheme); 10 | return Styles.createTheme((newrecord.palette = { 11 | primary: { 12 | main: "#8fe830" 13 | } 14 | }, newrecord)); 15 | } 16 | 17 | function ExampleThemeProvider(props) { 18 | return JsxRuntime.jsxs("div", { 19 | children: [ 20 | JsxRuntime.jsx(Button, { 21 | children: "Default Primary Color", 22 | color: "primary", 23 | variant: "outlined" 24 | }), 25 | " ", 26 | JsxRuntime.jsx(Styles.ThemeProvider, { 27 | children: JsxRuntime.jsx(Button, { 28 | children: "Themed Primary Color", 29 | color: "primary", 30 | variant: "outlined" 31 | }), 32 | theme: theme 33 | }) 34 | ] 35 | }); 36 | } 37 | 38 | var make = ExampleThemeProvider; 39 | 40 | export { 41 | theme , 42 | make , 43 | } 44 | /* react/jsx-runtime Not a pure module */ 45 | -------------------------------------------------------------------------------- /examples/src/examples/ExampleThemeProvider.res: -------------------------------------------------------------------------------- 1 | let theme = outerTheme => 2 | Mui.Theme.create({ 3 | ...outerTheme, 4 | palette: {primary: {main: "#8fe830"}}, 5 | }) 6 | 7 | @react.component 8 | let make = () => 9 |
    10 | 11 | {"Default Primary Color"->React.string} 12 | 13 | {" "->React.string} 14 | 15 | 16 | {"Themed Primary Color"->React.string} 17 | 18 | 19 |
    20 | -------------------------------------------------------------------------------- /examples/src/examples/ExampleThemeProviderOverride.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | 3 | import * as Caml_obj from "rescript/lib/es6/caml_obj.js"; 4 | import * as JsxRuntime from "react/jsx-runtime"; 5 | import Button from "@mui/material/Button"; 6 | import * as Styles from "@mui/material/styles"; 7 | import SupervisedUserCircle from "@mui/icons-material/SupervisedUserCircle"; 8 | 9 | function theme(outerTheme) { 10 | var newrecord = Caml_obj.obj_dup(outerTheme); 11 | return Styles.createTheme((newrecord.components = { 12 | MuiButton: { 13 | styleOverrides: { 14 | outlined: { 15 | color: "gray", 16 | fontSize: "12px", 17 | fontWeight: "300" 18 | } 19 | } 20 | } 21 | }, newrecord)); 22 | } 23 | 24 | var SupervisedUserCircleIcon = {}; 25 | 26 | function ExampleThemeProviderOverride(props) { 27 | return JsxRuntime.jsx("div", { 28 | children: JsxRuntime.jsx(Styles.ThemeProvider, { 29 | children: JsxRuntime.jsxs(Button, { 30 | children: [ 31 | JsxRuntime.jsx(SupervisedUserCircle, {}), 32 | "Overriden Outline Styles" 33 | ], 34 | color: "secondary", 35 | variant: "outlined" 36 | }), 37 | theme: theme 38 | }) 39 | }); 40 | } 41 | 42 | var make = ExampleThemeProviderOverride; 43 | 44 | export { 45 | theme , 46 | SupervisedUserCircleIcon , 47 | make , 48 | } 49 | /* react/jsx-runtime Not a pure module */ 50 | -------------------------------------------------------------------------------- /examples/src/examples/ExampleThemeProviderOverride.res: -------------------------------------------------------------------------------- 1 | let theme = outerTheme => 2 | Mui.Theme.create({ 3 | ...outerTheme, 4 | components: { 5 | muiButton: { 6 | styleOverrides: { 7 | outlined: { 8 | fontSize: "12px", 9 | fontWeight: "300", 10 | color: "gray", 11 | }, 12 | }, 13 | }, 14 | }, 15 | }) 16 | 17 | module SupervisedUserCircleIcon = { 18 | @react.component @module("@mui/icons-material/SupervisedUserCircle") 19 | external make: (~color: string=?, ~fontSize: string=?) => React.element = "default" 20 | } 21 | 22 | @react.component 23 | let make = () => 24 |
    25 | 26 | 27 | 28 | {"Overriden Outline Styles"->React.string} 29 | 30 | 31 |
    32 | -------------------------------------------------------------------------------- /examples/src/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | ReScript Material-UI Examples 5 | 6 | 7 | 8 |
    9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /examples/src/labExamples/ExampleTreeView.res: -------------------------------------------------------------------------------- 1 | open Mui 2 | open MuiLab 3 | 4 | module ExpandMoreIcon = { 5 | @react.component @module("@mui/icons-material/ExpandMore") 6 | external make: unit => React.element = "default" 7 | } 8 | 9 | module ChevronRightIcon = { 10 | @react.component @module("@mui/icons-material/ChevronRight") 11 | external make: unit => React.element = "default" 12 | } 13 | 14 | @react.component 15 | let make = () => { 16 | 17 | } defaultExpandIcon={}> 18 | React.string}> 19 | React.string} /> 20 | React.string} /> 21 | React.string} /> 22 | 23 | React.string}> 24 | React.string} /> 25 | React.string}> 26 | React.string}> 27 | React.string} /> 28 | React.string} /> 29 | 30 | 31 | 32 | 33 | 34 | } 35 | -------------------------------------------------------------------------------- /helpers/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "helpers", 3 | "version": "1.0.0", 4 | "private": true, 5 | "description": "Helper scripts for ReScript-MUI.", 6 | "author": "Florian Hammerschmidt ", 7 | "contributors": [ 8 | "Christoph Knittel " 9 | ], 10 | "type": "module" 11 | } 12 | -------------------------------------------------------------------------------- /helpers/rescript.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "helpers", 3 | "namespace": false, 4 | "sources": [ 5 | { 6 | "dir": "src", 7 | "subdirs": true 8 | } 9 | ] 10 | } -------------------------------------------------------------------------------- /helpers/src/NodeJs.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | 3 | 4 | var Fs = {}; 5 | 6 | var Path = {}; 7 | 8 | export { 9 | Fs , 10 | Path , 11 | } 12 | /* No side effect */ 13 | -------------------------------------------------------------------------------- /helpers/src/bindings/NodeJs.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | 3 | 4 | var Fs = {}; 5 | 6 | var Path = {}; 7 | 8 | export { 9 | Fs , 10 | Path , 11 | } 12 | /* No side effect */ 13 | -------------------------------------------------------------------------------- /helpers/src/bindings/NodeJs.res: -------------------------------------------------------------------------------- 1 | module Fs = { 2 | @module("fs") 3 | external readdirSync: string => array = "readdirSync" 4 | 5 | type fileOptions = {encoding: string} 6 | 7 | @module("fs") 8 | external readFileSync: (string, fileOptions) => string = "readFileSync" 9 | 10 | @module("fs") 11 | external writeFileSync: (string, string, fileOptions) => unit = "writeFileSync" 12 | } 13 | 14 | module Path = { 15 | type t = { 16 | dir: string, 17 | root: string, 18 | base: string, 19 | name: string, 20 | ext: string, 21 | } 22 | 23 | @module("path") @variadic 24 | external join: array => string = "join" 25 | } 26 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "private": true, 3 | "workspaces": [ 4 | "examples", 5 | "helpers", 6 | "packages/rescript-mui-material", 7 | "packages/rescript-mui-lab", 8 | "packages/rescript-mui-system", 9 | "packages/rescript-mui-x-date-pickers" 10 | ], 11 | "engines": { 12 | "node": ">=20" 13 | }, 14 | "packageManager": "yarn@4.1.1", 15 | "scripts": { 16 | "build": "rescript build -with-deps", 17 | "clean": "rewatch clean .", 18 | "format": "rescript format -all", 19 | "watch": "rewatch watch .", 20 | "start": "cd examples && parcel serve src/index.html", 21 | "generateOverrides": "node helpers/src/GenerateOverrides.bs.js && rescript format ./packages/rescript-mui-material/src/types/Overrides.res && rescript format ./packages/rescript-mui-lab/src/Overrides.res", 22 | "publishLab": "yarn clean && cd packages/rescript-mui-lab && npm publish --access public", 23 | "publishMui": "yarn clean && cd packages/rescript-mui-material && npm publish --access public", 24 | "publishSystem": "yarn clean && cd packages/rescript-mui-system && npm publish --access public", 25 | "publishDatePickers": "yarn clean && cd packages/rescript-mui-x-date-pickers && npm publish --access public" 26 | }, 27 | "devDependencies": { 28 | "@mui/lab": "^5.0.0-alpha.170", 29 | "@mui/material": "^5.15.15", 30 | "@mui/system": "^5.15.15", 31 | "@mui/x-date-pickers": "^7.1.1", 32 | "@rescript/react": "^0.12.1", 33 | "@rescript/tools": "^0.6.6", 34 | "@rolandpeelen/rewatch": "^1.2.0", 35 | "parcel": "^2.13.3", 36 | "rescript": "^11.1.4" 37 | } 38 | } 39 | -------------------------------------------------------------------------------- /packages/rescript-mui-lab/README.md: -------------------------------------------------------------------------------- 1 | # ReScript bindings for @mui/lab 2 | 3 | This library provides ReScript bindings for the labs part of [MUI](https://mui.com/). 4 | 5 | ## Installation 6 | 7 | 1. Install all necessary packages according to the official MUI-Lab installation guide: https://mui.com/material-ui/about-the-lab/#installation. 8 | 2. Install both `@rescript-mui/material` and `@rescript-mui/lab` 9 | 10 | ```sh 11 | npm install @rescript-mui/material @rescript-mui/lab 12 | ``` 13 | 14 | 3. Add them to `dependencies` in your `rescript.json`: 15 | 16 | ```json 17 | { 18 | "bs-dependencies": ["@rescript-mui/material", "@rescript-mui/lab"] 19 | } 20 | ``` 21 | 22 | ## Examples 23 | 24 | Check out the examples here: [https://github.com/cca-io/rescript-mui/tree/master/examples/src/labExamples/](https://github.com/cca-io/rescript-mui/tree/master/examples/src/labExamples/) 25 | -------------------------------------------------------------------------------- /packages/rescript-mui-lab/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@rescript-mui/lab", 3 | "version": "5.1.2", 4 | "description": "This library provides ReScript bindings for material-ui-lab.", 5 | "keywords": [ 6 | "rescript", 7 | "bindings", 8 | "material-ui", 9 | "mui" 10 | ], 11 | "homepage": "https://rescript-material-ui.cca.io/", 12 | "repository": "https://github.com/cca-io/rescript-material-ui", 13 | "bugs": "https://github.com/cca-io/rescript-material-ui/issues", 14 | "author": "Jonathan Siebern ", 15 | "contributors": [ 16 | "Christoph Knittel ", 17 | "Florian Hammerschmidt " 18 | ], 19 | "license": "MIT", 20 | "files": [ 21 | "/src", 22 | "/rescript.json" 23 | ], 24 | "peerDependencies": { 25 | "@mui/lab": "^5.0.0-alpha.134", 26 | "@mui/material": "^5.14.1", 27 | "@rescript-mui/material": "^5.0.0", 28 | "@rescript/react": "^0.12.0", 29 | "react": "^18.0.0", 30 | "react-dom": "^18.0.0", 31 | "rescript": "^11.0.0" 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /packages/rescript-mui-lab/rescript.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@rescript-mui/lab", 3 | "namespace": "mui-lab", 4 | "sources": [ 5 | { 6 | "dir": "src", 7 | "subdirs": true 8 | } 9 | ], 10 | "package-specs": { 11 | "module": "es6", 12 | "in-source": true 13 | }, 14 | "bs-dependencies": ["@rescript/react", "@rescript-mui/material"], 15 | "warnings": { 16 | "number": "-103" 17 | }, 18 | "jsx": { 19 | "version": 4, 20 | "mode": "automatic" 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /packages/rescript-mui-lab/src/LoadingButton.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-lab/src/Masonry.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-lab/src/Masonry.res: -------------------------------------------------------------------------------- 1 | type classes = { 2 | /** Styles applied to the root element. */ 3 | root?: string, 4 | } 5 | 6 | type props = { 7 | ...Mui.CommonProps.t, 8 | /** 9 | * The content of the component. 10 | */ 11 | children: React.element, 12 | /** 13 | * Override or extend the styles applied to the component. 14 | */ 15 | classes?: classes, 16 | /** 17 | * Number of columns. 18 | * @default 4 19 | */ 20 | columns?: Mui.System.Value.t, 21 | /** 22 | * The component used for the root node. 23 | * Either a string to use a HTML element or a component. 24 | */ 25 | component?: Mui.OverridableComponent.t, 26 | /** 27 | * The default number of columns of the component. This is provided for server-side rendering. 28 | */ 29 | defaultColumns?: int, 30 | /** 31 | * The default height of the component in px. This is provided for server-side rendering. 32 | */ 33 | defaultHeight?: int, 34 | /** 35 | * The default spacing of the component. Like `spacing`, it is a factor of the theme's spacing. This is provided for server-side rendering. 36 | */ 37 | defaultSpacing?: int, 38 | /** 39 | * Defines the space between children. It is a factor of the theme's spacing. 40 | * @default 1 41 | */ 42 | spacing?: Mui.System.Value.t, 43 | /** 44 | * Allows defining system overrides as well as additional CSS styles. 45 | */ 46 | sx?: Mui.Sx.props, 47 | } 48 | 49 | @module("@mui/lab/Masonry") 50 | external make: React.component = "default" 51 | -------------------------------------------------------------------------------- /packages/rescript-mui-lab/src/Overrides.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-lab/src/TabContext.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-lab/src/TabContext.res: -------------------------------------------------------------------------------- 1 | type props = { 2 | ...Mui.CommonProps.t_NoRef, 3 | /** 4 | * The content of the component. 5 | */ 6 | children?: React.element, 7 | /** 8 | * The value of the currently selected `Tab`. 9 | */ 10 | value: string, 11 | } 12 | 13 | @module("@mui/lab/TabContext") 14 | external make: React.component = "default" 15 | -------------------------------------------------------------------------------- /packages/rescript-mui-lab/src/TabList.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-lab/src/TabPanel.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-lab/src/TabPanel.res: -------------------------------------------------------------------------------- 1 | type classes = { 2 | /** Styles applied to the root element. */ 3 | root?: string, 4 | } 5 | 6 | type props = { 7 | ...Mui.CommonProps.t, 8 | /** 9 | * The content of the component. 10 | */ 11 | children?: React.element, 12 | /** 13 | * Override or extend the styles applied to the component. 14 | */ 15 | classes?: classes, 16 | /** 17 | * The system prop that allows defining system overrides as well as additional CSS styles. 18 | */ 19 | sx?: Mui.Sx.props, 20 | /** 21 | * The `value` of the corresponding `Tab`. Must use the index of the `Tab` when 22 | * no `value` was passed to `Tab`. 23 | */ 24 | value: string, 25 | } 26 | 27 | @module("@mui/lab/TabPanel") 28 | external make: React.component = "default" 29 | -------------------------------------------------------------------------------- /packages/rescript-mui-lab/src/Timeline.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-lab/src/Timeline.res: -------------------------------------------------------------------------------- 1 | type classes = { 2 | /** Styles applied to the root element. */ 3 | root?: string, 4 | /** Styles applied to the root element if `position="left"`. */ 5 | positionLeft?: string, 6 | /** Styles applied to the root element if `position="right"`. */ 7 | positionRight?: string, 8 | /** Styles applied to the root element if `position="alternate"`. */ 9 | positionAlternate?: string, 10 | /** Styles applied to the root element if `position="alternate-reverse"`. */ 11 | positionAlternateReverse?: string, 12 | } 13 | 14 | type position = 15 | | @as("left") Left 16 | | @as("right") Right 17 | | @as("alternate") Alternate 18 | | @as("alternate-reverse") AlternateReverse 19 | 20 | type props = { 21 | ...Mui.CommonProps.t, 22 | /** 23 | * The content of the component. 24 | */ 25 | children?: React.element, 26 | /** 27 | * Override or extend the styles applied to the component. 28 | */ 29 | classes?: classes, 30 | /** 31 | * The position where the TimelineContent should appear relative to the time axis. 32 | * @default 'right' 33 | */ 34 | position?: position, 35 | /** 36 | * The system prop that allows defining system overrides as well as additional CSS styles. 37 | */ 38 | sx?: Mui.Sx.props, 39 | } 40 | 41 | @module("@mui/lab/Timeline") 42 | external make: React.component = "default" 43 | -------------------------------------------------------------------------------- /packages/rescript-mui-lab/src/TimelineConnector.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-lab/src/TimelineConnector.res: -------------------------------------------------------------------------------- 1 | type classes = { 2 | /** Styles applied to the root element. */ 3 | root?: string, 4 | } 5 | 6 | type props = { 7 | ...Mui.CommonProps.t, 8 | /** 9 | * The content of the component. 10 | */ 11 | children?: React.element, 12 | /** 13 | * Override or extend the styles applied to the component. 14 | */ 15 | classes?: classes, 16 | /** 17 | * The system prop that allows defining system overrides as well as additional CSS styles. 18 | */ 19 | sx?: Mui.Sx.props, 20 | } 21 | 22 | @module("@mui/lab/TimelineConnector") 23 | external make: React.component = "default" 24 | -------------------------------------------------------------------------------- /packages/rescript-mui-lab/src/TimelineContent.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-lab/src/TimelineContent.res: -------------------------------------------------------------------------------- 1 | type classes = { 2 | /** Styles applied to the root element. */ 3 | root?: string, 4 | /** Styles applied to the root element if `position="right"`. */ 5 | positionRight?: string, 6 | /** Styles applied to the root element if `position="left"`. */ 7 | positionLeft?: string, 8 | /** Styles applied to the root element if `position="alternate"`. */ 9 | positionAlternate?: string, 10 | /** Styles applied to the root element if `position="alternate-reverse"`. */ 11 | positionAlternateReverse?: string, 12 | } 13 | 14 | type props = { 15 | ...Mui.CommonProps.t, 16 | /** 17 | * The content of the component. 18 | */ 19 | children?: React.element, 20 | /** 21 | * Override or extend the styles applied to the component. 22 | */ 23 | classes?: classes, 24 | /** 25 | * The system prop that allows defining system overrides as well as additional CSS styles. 26 | */ 27 | sx?: Mui.Sx.props, 28 | } 29 | 30 | @module("@mui/lab") 31 | external make: React.component = "TimelineContent" 32 | -------------------------------------------------------------------------------- /packages/rescript-mui-lab/src/TimelineDot.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-lab/src/TimelineItem.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-lab/src/TimelineItem.res: -------------------------------------------------------------------------------- 1 | type classes = { 2 | /** Styles applied to the root element. */ 3 | root?: string, 4 | /** Styles applied to the root element if `position="left"`. */ 5 | positionLeft?: string, 6 | /** Styles applied to the root element if `position="right"`. */ 7 | positionRight?: string, 8 | /** Styles applied to the root element if `position="alternate"`. */ 9 | positionAlternate?: string, 10 | /** Styles applied to the root element if `position="alternate-reverse"`. */ 11 | positionAlternateReverse?: string, 12 | /** Styles applied to the root element if TimelineOppositeContent isn't provided. */ 13 | missingOppositeContent?: string, 14 | } 15 | 16 | type position = 17 | | @as("left") Left 18 | | @as("right") Right 19 | | @as("alternate") Alternate 20 | | @as("alternate-reverse") AlternateReverse 21 | 22 | type props = { 23 | ...Mui.CommonProps.t, 24 | /** 25 | * The position where the timeline's item should appear. 26 | */ 27 | position?: position, 28 | /** 29 | * The content of the component. 30 | */ 31 | children?: React.element, 32 | /** 33 | * Override or extend the styles applied to the component. 34 | */ 35 | classes?: classes, 36 | /** 37 | * The system prop that allows defining system overrides as well as additional CSS styles. 38 | */ 39 | sx?: Mui.Sx.props, 40 | } 41 | 42 | @module("@mui/lab/TimelineItem") 43 | external make: React.component = "default" 44 | -------------------------------------------------------------------------------- /packages/rescript-mui-lab/src/TimelineOppositeContent.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-lab/src/TimelineOppositeContent.res: -------------------------------------------------------------------------------- 1 | type classes = { 2 | /** Styles applied to the root element. */ 3 | root?: string, 4 | /** Styles applied to the root element if `position="right"`. */ 5 | positionRight?: string, 6 | /** Styles applied to the root element if `position="left"`. */ 7 | positionLeft?: string, 8 | /** Styles applied to the root element if `position="alternate"`. */ 9 | positionAlternate?: string, 10 | /** Styles applied to the root element if `position="alternate-reverse"`. */ 11 | positionAlternateReverse?: string, 12 | } 13 | 14 | type props = { 15 | ...Mui.Typography.publicProps, 16 | /** 17 | * The content of the component. 18 | */ 19 | children?: React.element, 20 | /** 21 | * Override or extend the styles applied to the component. 22 | */ 23 | classes?: classes, 24 | /** 25 | * The system prop that allows defining system overrides as well as additional CSS styles. 26 | */ 27 | sx?: Mui.Sx.props, 28 | } 29 | 30 | @module("@mui/lab/TimelineOppositeContent") 31 | external make: React.component = "default" 32 | -------------------------------------------------------------------------------- /packages/rescript-mui-lab/src/TimelineSeparator.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-lab/src/TimelineSeparator.res: -------------------------------------------------------------------------------- 1 | type classes = { 2 | /** Styles applied to the root element. */ 3 | root?: string, 4 | } 5 | 6 | type props = { 7 | ...Mui.CommonProps.t, 8 | /** 9 | * The content of the component. 10 | */ 11 | children?: React.element, 12 | /** 13 | * Override or extend the styles applied to the component. 14 | */ 15 | classes?: classes, 16 | /** 17 | * The system prop that allows defining system overrides as well as additional CSS styles. 18 | */ 19 | sx?: Mui.Sx.props, 20 | } 21 | 22 | @module("@mui/lab/TimelineSeparator") 23 | external make: React.component = "default" 24 | -------------------------------------------------------------------------------- /packages/rescript-mui-lab/src/TreeItem.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | 3 | 4 | var Content = {}; 5 | 6 | export { 7 | Content , 8 | } 9 | /* No side effect */ 10 | -------------------------------------------------------------------------------- /packages/rescript-mui-lab/src/TreeView.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | 3 | 4 | var MultiSelect = {}; 5 | 6 | export { 7 | MultiSelect , 8 | } 9 | /* No side effect */ 10 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/README.md: -------------------------------------------------------------------------------- 1 | # ReScript Bindings for MUI-Material 2 | 3 | This library provides [ReScript](https://rescript-lang.org/) bindings for the material part of [MUI](https://mui.com/). 4 | 5 | ## Installation 6 | 7 | 1. Install all necessary packages according to the official MUI-Material installation guide: https://mui.com/material-ui/getting-started/installation/. 8 | 2. Install `@rescript-mui/material` 9 | 10 | ```sh 11 | npm install @rescript-mui/material 12 | ``` 13 | 14 | 3. Add it to `dependencies` in your `rescript.json`: 15 | 16 | ```json 17 | { 18 | "bs-dependencies": ["@rescript-mui/material"] 19 | } 20 | ``` 21 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@rescript-mui/material", 3 | "version": "5.1.2", 4 | "description": "This library provides ReScript bindings for material-ui (MUI).", 5 | "keywords": [ 6 | "rescript", 7 | "bindings", 8 | "material-ui", 9 | "mui" 10 | ], 11 | "homepage": "https://rescript-material-ui.cca.io/", 12 | "repository": "https://github.com/cca-io/rescript-material-ui", 13 | "bugs": "https://github.com/cca-io/rescript-material-ui/issues", 14 | "author": "Jonathan Siebern ", 15 | "contributors": [ 16 | "Christoph Knittel ", 17 | "Florian Hammerschmidt " 18 | ], 19 | "license": "MIT", 20 | "files": [ 21 | "/src", 22 | "/rescript.json" 23 | ], 24 | "peerDependencies": { 25 | "@mui/material": "^5.14.1", 26 | "@rescript/react": "^0.12.0-alpha.2", 27 | "react": "^18.0.0", 28 | "react-dom": "^18.0.0", 29 | "rescript": "^11.0.0" 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/rescript.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@rescript-mui/material", 3 | "namespace": "mui", 4 | "sources": [ 5 | { 6 | "dir": "src", 7 | "subdirs": true 8 | } 9 | ], 10 | "package-specs": { 11 | "module": "es6", 12 | "in-source": true 13 | }, 14 | "bs-dependencies": ["@rescript/react"], 15 | "warnings": { 16 | "number": "-103" 17 | }, 18 | "jsx": { 19 | "version": 4, 20 | "mode": "automatic" 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/Accordion.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/AccordionActions.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/AccordionActions.res: -------------------------------------------------------------------------------- 1 | type classes = { 2 | /** Styles applied to the root element. */ 3 | root?: string, 4 | /** Styles applied to the root element unless `disableSpacing={true}`. */ 5 | spacing?: string, 6 | } 7 | 8 | type props = { 9 | ...CommonProps.t, 10 | /** 11 | * The content of the component. 12 | */ 13 | children?: React.element, 14 | /** 15 | * Override or extend the styles applied to the component. 16 | */ 17 | classes?: classes, 18 | /** 19 | * If `true`, the actions do not have additional margin. 20 | * @default false 21 | */ 22 | disableSpacing?: bool, 23 | /** 24 | * The system prop that allows defining system overrides as well as additional CSS styles. 25 | */ 26 | sx?: Sx.props, 27 | } 28 | 29 | @module("@mui/material/AccordionActions") 30 | external make: React.component = "default" 31 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/AccordionDetails.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/AccordionDetails.res: -------------------------------------------------------------------------------- 1 | type classes = { 2 | /** Styles applied to the root element. */ 3 | root?: string, 4 | } 5 | 6 | type props = { 7 | ...CommonProps.t, 8 | /** 9 | * The content of the component. 10 | */ 11 | children?: React.element, 12 | /** 13 | * Override or extend the styles applied to the component. 14 | */ 15 | classes?: classes, 16 | /** 17 | * The system prop that allows defining system overrides as well as additional CSS styles. 18 | */ 19 | sx?: Sx.props, 20 | } 21 | 22 | @module("@mui/material/AccordionDetails") 23 | external make: React.component = "default" 24 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/AccordionSummary.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/AccordionSummary.res: -------------------------------------------------------------------------------- 1 | type classes = { 2 | /** Styles applied to the root element. */ 3 | root?: string, 4 | /** State class applied to the root element, children wrapper element and `IconButton` component if `expanded={true}`. */ 5 | expanded?: string, 6 | /** State class applied to the ButtonBase root element if the button is keyboard focused. */ 7 | focusVisible?: string, 8 | /** State class applied to the root element if `disabled={true}`. */ 9 | disabled?: string, 10 | /** Styles applied to the root element unless `disableGutters={true}`. */ 11 | gutters?: string, 12 | /** Styles applied to the children wrapper element unless `disableGutters={true}`. */ 13 | contentGutters?: string, 14 | /** Styles applied to the children wrapper element. */ 15 | content?: string, 16 | /** Styles applied to the `expandIcon`'s wrapper element. */ 17 | expandIconWrapper?: string, 18 | } 19 | 20 | type props = { 21 | ...ButtonBase.publicPropsWithOnClick, 22 | /** 23 | * Override or extend the styles applied to the component. 24 | */ 25 | classes?: classes, 26 | /** 27 | * If `true`, the component is disabled. 28 | * @default false 29 | */ 30 | disabled?: bool, 31 | /** 32 | * The icon to display as the expand indicator. 33 | */ 34 | expandIcon?: React.element, 35 | /** 36 | * The system prop that allows defining system overrides as well as additional CSS styles. 37 | */ 38 | sx?: Sx.props, 39 | } 40 | 41 | @module("@mui/material/AccordionSummary") 42 | external make: React.component = "default" 43 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/Alert.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/AlertTitle.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/AlertTitle.res: -------------------------------------------------------------------------------- 1 | type classes = { 2 | /** Styles applied to the root element. */ 3 | root?: string, 4 | } 5 | 6 | type props = { 7 | ...CommonProps.t, 8 | /** 9 | * The content of the component. 10 | */ 11 | children?: React.element, 12 | /** 13 | * Override or extend the styles applied to the component. 14 | */ 15 | classes?: classes, 16 | /** 17 | * The system prop that allows defining system overrides as well as additional CSS styles. 18 | */ 19 | sx?: Sx.props, 20 | } 21 | 22 | @module("@mui/material/AlertTitle") 23 | external make: React.component = "default" 24 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/AppBar.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/Autocomplete.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | 3 | 4 | var Multiple = {}; 5 | 6 | export { 7 | Multiple , 8 | } 9 | /* No side effect */ 10 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/Avatar.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/AvatarGroup.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/Backdrop.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/Badge.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/BottomNavigation.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/BottomNavigation.res: -------------------------------------------------------------------------------- 1 | type classes = { 2 | /** Styles applied to the root element. */ 3 | root?: string, 4 | } 5 | 6 | type props<'value> = { 7 | ...CommonProps.t, 8 | /** 9 | * The content of the component. 10 | */ 11 | children?: React.element, 12 | /** 13 | * Override or extend the styles applied to the component. 14 | */ 15 | classes?: classes, 16 | /** 17 | * The component used for the root node. 18 | * Either a string to use a HTML element or a component. 19 | */ 20 | component?: OverridableComponent.t, 21 | /** 22 | * Callback fired when the value changes. 23 | * 24 | * @param {React.SyntheticEvent} event The event source of the callback. **Warning**: This is a generic event not a change event. 25 | * @param {any} value We default to the index of the child. 26 | */ 27 | onChange?: (ReactEvent.Synthetic.t, 'value) => unit, 28 | /** 29 | * If `true`, all `BottomNavigationAction`s will show their labels. 30 | * By default, only the selected `BottomNavigationAction` will show its label. 31 | * @default false 32 | */ 33 | showLabels?: bool, 34 | /** 35 | * The system prop that allows defining system overrides as well as additional CSS styles. 36 | */ 37 | sx?: Sx.props, 38 | /** 39 | * The value of the currently selected `BottomNavigationAction`. 40 | */ 41 | value?: 'value, 42 | } 43 | 44 | @module("@mui/material/BottomNavigation") 45 | external make: React.component> = "default" 46 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/BottomNavigationAction.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/BottomNavigationAction.res: -------------------------------------------------------------------------------- 1 | type classes = { 2 | /** Styles applied to the root element. */ 3 | root?: string, 4 | /** State class applied to the root element if selected. */ 5 | selected?: string, 6 | /** State class applied to the root element if `showLabel={false}` and not selected. */ 7 | iconOnly?: string, 8 | /** Styles applied to the label's span element. */ 9 | label?: string, 10 | } 11 | 12 | type props<'value> = { 13 | ...ButtonBase.publicPropsWithOnClick, 14 | /** 15 | * Override or extend the styles applied to the component. 16 | */ 17 | classes?: classes, 18 | /** 19 | * If `true`, the component is disabled. 20 | * @default false 21 | */ 22 | disabled?: bool, 23 | /** 24 | * The icon to display. 25 | */ 26 | icon?: React.element, 27 | /** 28 | * The label element. 29 | */ 30 | label?: React.element, 31 | onChange?: ReactEvent.Form.t => unit, 32 | /** 33 | * If `true`, the `BottomNavigationAction` will show its label. 34 | * By default, only the selected `BottomNavigationAction` 35 | * inside `BottomNavigation` will show its label. 36 | * 37 | * The prop defaults to the value (`false`) inherited from the parent BottomNavigation component. 38 | */ 39 | showLabel?: bool, 40 | /** 41 | * The system prop that allows defining system overrides as well as additional CSS styles. 42 | */ 43 | sx?: Sx.props, 44 | /** 45 | * You can provide your own value. Otherwise, we fallback to the child position index. 46 | */ 47 | value?: 'value, 48 | } 49 | 50 | @module("@mui/material/BottomNavigationAction") 51 | external make: React.component> = "default" 52 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/Box.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/Box.res: -------------------------------------------------------------------------------- 1 | type props = { 2 | ...System.props, 3 | children?: React.element, 4 | /** 5 | * The component used for the root node. 6 | * Either a string to use a HTML element or a component. 7 | */ 8 | component?: OverridableComponent.t, 9 | /** 10 | * The system prop that allows defining system overrides as well as additional CSS styles. 11 | */ 12 | sx?: Sx.props, 13 | } 14 | 15 | @module("@mui/material/Box") 16 | external make: React.component = "default" 17 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/Breadcrumbs.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/Button.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/ButtonBase.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/ButtonGroup.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/Card.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/Card.res: -------------------------------------------------------------------------------- 1 | type classes = { 2 | /** Styles applied to the root element. */ 3 | root?: string, 4 | } 5 | 6 | type props = { 7 | ...Paper.publicProps, 8 | /** 9 | * The content of the component. 10 | */ 11 | children?: React.element, 12 | /** 13 | * Override or extend the styles applied to the component. 14 | */ 15 | classes?: classes, 16 | /** 17 | * If `true`, the card will use raised styling. 18 | * @default false 19 | */ 20 | raised?: bool, 21 | /** 22 | * The variant to use. 23 | * @default 'elevation' 24 | */ 25 | variant?: Paper.variant, 26 | } 27 | 28 | @module("@mui/material/Card") 29 | external make: React.component = "default" 30 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/CardActionArea.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/CardActionArea.res: -------------------------------------------------------------------------------- 1 | type classes = { 2 | /** Styles applied to the root element. */ 3 | root?: string, 4 | /** State class applied to the ButtonBase root element if the action area is keyboard focused. */ 5 | focusVisible?: string, 6 | /** Styles applied to the overlay that covers the action area when it is keyboard focused. */ 7 | focusHighlight?: string, 8 | } 9 | 10 | type props = { 11 | ...ButtonBase.publicPropsWithOnClick, 12 | /** 13 | * Override or extend the styles applied to the component. 14 | */ 15 | classes?: classes, 16 | /** 17 | * If `true`, the component is disabled. 18 | * @default false 19 | */ 20 | disabled?: bool, 21 | /** 22 | * The system prop that allows defining system overrides as well as additional CSS styles. 23 | */ 24 | sx?: Sx.props, 25 | } 26 | 27 | @module("@mui/material/CardActionArea") 28 | external make: React.component = "default" 29 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/CardActions.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/CardActions.res: -------------------------------------------------------------------------------- 1 | type classes = { 2 | /** Styles applied to the root element. */ 3 | root?: string, 4 | /** Styles applied to the root element unless `disableSpacing={true}`. */ 5 | spacing?: string, 6 | } 7 | 8 | type props = { 9 | ...CommonProps.t, 10 | /** 11 | * The content of the component. 12 | */ 13 | children?: React.element, 14 | /** 15 | * Override or extend the styles applied to the component. 16 | */ 17 | classes?: classes, 18 | /** 19 | * The system prop that allows defining system overrides as well as additional CSS styles. 20 | */ 21 | sx?: Sx.props, 22 | /** 23 | * If `true`, the actions do not have additional margin. 24 | * @default false 25 | */ 26 | disableSpacing?: bool, 27 | } 28 | 29 | @module("@mui/material/CardActions") 30 | external make: React.component = "default" 31 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/CardContent.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/CardContent.res: -------------------------------------------------------------------------------- 1 | type classes = { 2 | /** Styles applied to the root element. */ 3 | root?: string, 4 | } 5 | 6 | type props = { 7 | ...CommonProps.t, 8 | /** 9 | * The content of the component. 10 | */ 11 | children?: React.element, 12 | /** 13 | * Override or extend the styles applied to the component. 14 | */ 15 | classes?: classes, 16 | /** 17 | * The component used for the root node. Either a string to use a HTML element or a component. 18 | */ 19 | component?: OverridableComponent.t, 20 | /** 21 | * The system prop that allows defining system overrides as well as additional CSS styles. 22 | */ 23 | sx?: Sx.props, 24 | } 25 | 26 | @module("@mui/material/CardContent") 27 | external make: React.component = "default" 28 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/CardHeader.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/CardMedia.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/CardMedia.res: -------------------------------------------------------------------------------- 1 | type classes = { 2 | /** Styles applied to the root element. */ 3 | root?: string, 4 | /** Styles applied to the root element if `component="video, audio, picture, iframe, or img"`. */ 5 | media?: string, 6 | /** Styles applied to the root element if `component="picture or img"`. */ 7 | img?: string, 8 | } 9 | 10 | type props = { 11 | /** 12 | * The content of the component. 13 | */ 14 | children?: React.element, 15 | /** 16 | * Override or extend the styles applied to the component. 17 | */ 18 | classes?: classes, 19 | /** 20 | * The component used for the root node. 21 | * Either a string to use a HTML element or a component. 22 | */ 23 | component?: OverridableComponent.t, 24 | /** 25 | * Image to be displayed as a background image. 26 | * Either `image` or `src` prop must be specified. 27 | * Note that caller must specify height otherwise the image will not be visible. 28 | */ 29 | image?: string, 30 | /** 31 | * An alias for `image` property. 32 | * Available only with media components. 33 | * Media components: `video`, `audio`, `picture`, `iframe`, `img`. 34 | */ 35 | src?: string, 36 | /** 37 | * The system prop that allows defining system overrides as well as additional CSS styles. 38 | */ 39 | sx?: Sx.props, 40 | } 41 | 42 | @module("@mui/material/CardMedia") 43 | external make: React.component = "default" 44 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/Checkbox.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/Chip.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/CircularProgress.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/Collapse.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/Colors.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/Container.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/Core.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/Core.res: -------------------------------------------------------------------------------- 1 | @module("@mui/material/useMediaQuery") 2 | external useMediaQueryString: string => bool = "default" 3 | 4 | @module("@mui/material/useMediaQuery") 5 | external useMediaQuery: System.Breakpoint.t => bool = "default" 6 | 7 | @module("@mui/material/useScrollTrigger") 8 | external useScrollTrigger: unit => bool = "default" 9 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/CssBaseline.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/CssBaseline.res: -------------------------------------------------------------------------------- 1 | type props = { 2 | ...CommonProps.t_NoRef, 3 | /** 4 | * You can wrap a node. 5 | */ 6 | children?: React.element, 7 | /** 8 | * Enable `color-scheme` CSS property to use `theme.palette.mode`. 9 | * For more details, check out https://developer.mozilla.org/en-US/docs/Web/CSS/color-scheme 10 | * For browser support, check out https://caniuse.com/?search=color-scheme 11 | * @default false 12 | */ 13 | enableColorScheme?: bool, 14 | } 15 | 16 | @module("@mui/material/CssBaseline") 17 | external make: React.component = "default" 18 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/Dialog.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/DialogActions.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/DialogActions.res: -------------------------------------------------------------------------------- 1 | type classes = { 2 | /** Styles applied to the root element. */ 3 | root?: string, 4 | /** Styles applied to the root element unless `disableSpacing={true}`. */ 5 | spacing?: string, 6 | } 7 | 8 | type props = { 9 | ...CommonProps.t, 10 | /** 11 | * The content of the component. 12 | */ 13 | children?: React.element, 14 | /** 15 | * Override or extend the styles applied to the component. 16 | */ 17 | classes?: classes, 18 | /** 19 | * If `true`, the actions do not have additional margin. 20 | * @default false 21 | */ 22 | disableSpacing?: bool, 23 | /** 24 | * The system prop that allows defining system overrides as well as additional CSS styles. 25 | */ 26 | sx?: Sx.props, 27 | } 28 | 29 | @module("@mui/material/DialogActions") 30 | external make: React.component = "default" 31 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/DialogContent.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/DialogContent.res: -------------------------------------------------------------------------------- 1 | type classes = { 2 | /** Styles applied to the root element. */ 3 | root?: string, 4 | /** Styles applied to the root element if `dividers={true}`. */ 5 | dividers?: string, 6 | } 7 | 8 | type props = { 9 | ...CommonProps.t, 10 | /** 11 | * The content of the component. 12 | */ 13 | children?: React.element, 14 | /** 15 | * Override or extend the styles applied to the component. 16 | */ 17 | classes?: classes, 18 | /** 19 | * Display the top and bottom dividers. 20 | * @default false 21 | */ 22 | dividers?: bool, 23 | /** 24 | * The system prop that allows defining system overrides as well as additional CSS styles. 25 | */ 26 | sx?: Sx.props, 27 | } 28 | 29 | @module("@mui/material/DialogContent") 30 | external make: React.component = "default" 31 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/DialogContentText.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/DialogContentText.res: -------------------------------------------------------------------------------- 1 | type classes = { 2 | /** Styles applied to the root element. */ 3 | root?: string, 4 | } 5 | 6 | type props = { 7 | ...Typography.publicProps, 8 | /** 9 | * The content of the component. 10 | */ 11 | children?: React.element, 12 | /** 13 | * Override or extend the styles applied to the component. 14 | */ 15 | classes?: classes, 16 | /** 17 | * The system prop that allows defining system overrides as well as additional CSS styles. 18 | */ 19 | sx?: Sx.props, 20 | } 21 | 22 | @module("@mui/material/DialogContentText") 23 | external make: React.component = "default" 24 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/DialogTitle.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/DialogTitle.res: -------------------------------------------------------------------------------- 1 | type classes = { 2 | /** Styles applied to the root element. */ 3 | root?: string, 4 | } 5 | 6 | type props = { 7 | ...Typography.publicProps, 8 | /** 9 | * The content of the component. 10 | */ 11 | children?: React.element, 12 | /** 13 | * Override or extend the styles applied to the component. 14 | */ 15 | classes?: classes, 16 | /** 17 | * The system prop that allows defining system overrides as well as additional CSS styles. 18 | */ 19 | sx?: Sx.props, 20 | } 21 | 22 | @module("@mui/material/DialogTitle") 23 | external make: React.component = "default" 24 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/Divider.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/Drawer.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/Fab.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/Fade.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/Fade.res: -------------------------------------------------------------------------------- 1 | type publicProps = { 2 | ...Transition.publicProps, 3 | /** 4 | * Perform the enter transition when it first mounts if `in` is also `true`. 5 | * Set this to `false` to disable this behavior. 6 | * @default true 7 | */ 8 | appear?: bool, 9 | /** 10 | * The transition timing function. 11 | * You may specify a single easing or a object containing enter and exit values. 12 | */ 13 | easing?: Transition.easing, 14 | /** 15 | * If `true`, the component will transition in. 16 | */ 17 | @as("in") 18 | in_?: bool, 19 | /** 20 | * The duration for the transition, in milliseconds. 21 | * You may specify a single timeout for all transitions, or individually with an object. 22 | * @default { 23 | * enter: theme.transitions.duration.enteringScreen, 24 | * exit: theme.transitions.duration.leavingScreen, 25 | * } 26 | */ 27 | timeout?: Transition.duration, 28 | } 29 | 30 | type props = { 31 | ...publicProps, 32 | /** 33 | * A single child content element. 34 | */ 35 | children: React.element, 36 | } 37 | 38 | @module("@mui/material/Fade") 39 | external make: React.component = "default" 40 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/FilledInput.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/FormControl.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/FormControlLabel.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/FormGroup.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/FormGroup.res: -------------------------------------------------------------------------------- 1 | type classes = { 2 | /** Styles applied to the root element. */ 3 | root?: string, 4 | /** Styles applied to the root element if `row={true}`. */ 5 | row?: string, 6 | /** State class applied to the root element if `error={true}`. */ 7 | error?: string, 8 | } 9 | 10 | type props = { 11 | ...CommonProps.t, 12 | /** 13 | * The content of the component. 14 | */ 15 | children?: React.element, 16 | /** 17 | * Override or extend the styles applied to the component. 18 | */ 19 | classes?: classes, 20 | /** 21 | * Display group of elements in a compact row. 22 | * @default false 23 | */ 24 | row?: bool, 25 | /** 26 | * The system prop that allows defining system overrides as well as additional CSS styles. 27 | */ 28 | sx?: Sx.props, 29 | } 30 | 31 | @module("@mui/material/FormGroup") 32 | external make: React.component = "default" 33 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/FormHelperText.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/FormLabel.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/GlobalStyles.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/GlobalStyles.res: -------------------------------------------------------------------------------- 1 | type props = { 2 | ...CommonProps.t_NoRef, 3 | styles: System.props, 4 | } 5 | 6 | @module("@mui/material/GlobalStyles") 7 | external make: React.component = "default" 8 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/Grid.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/Grow.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/Grow.res: -------------------------------------------------------------------------------- 1 | type props = { 2 | ...Transition.props, 3 | /** 4 | * A single child content element. 5 | */ 6 | children: React.element, 7 | /** 8 | * The transition timing function. 9 | * You may specify a single easing or a object containing enter and exit values. 10 | */ 11 | easing?: Transition.easing, 12 | /** 13 | * If `true`, the component will transition in. 14 | */ 15 | @as("in") 16 | in_?: bool, 17 | /** 18 | * The duration for the transition, in milliseconds. 19 | * You may specify a single timeout for all transitions, or individually with an object. 20 | * 21 | * Set to 'auto' to automatically calculate transition time based on height. 22 | * @default 'auto' 23 | */ 24 | timeout?: Transition.durationWithAuto, 25 | } 26 | 27 | @module("@mui/material/Grow") 28 | external make: React.component = "default" 29 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/Hidden.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/Icon.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/IconButton.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/ImageList.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/ImageListItem.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/ImageListItem.res: -------------------------------------------------------------------------------- 1 | type classes = { 2 | /** Styles applied to the root element. */ 3 | root?: string, 4 | /** Styles applied to an `img` element to ensure it covers the item. */ 5 | img?: string, 6 | /** Styles applied to the root element if `variant="standard"`. */ 7 | standard?: string, 8 | /** Styles applied to the root element if `variant="woven"`. */ 9 | woven?: string, 10 | /** Styles applied to the root element if `variant="masonry"`. */ 11 | masonry?: string, 12 | /** Styles applied to the root element if `variant="quilted"`. */ 13 | quilted?: string, 14 | } 15 | 16 | type props = { 17 | ...CommonProps.t, 18 | /** 19 | * The content of the component, normally an ``. 20 | */ 21 | children?: React.element, 22 | /** 23 | * Override or extend the styles applied to the component. 24 | */ 25 | classes?: classes, 26 | /** 27 | * Width of the item in number of grid columns. 28 | * @default 1 29 | */ 30 | cols?: int, 31 | /** 32 | * The component used for the root node. Either a string to use a HTML element or a component. 33 | */ 34 | component?: OverridableComponent.t, 35 | /** 36 | * Height of the item in number of grid rows. 37 | * @default 1 38 | */ 39 | rows?: int, 40 | /** 41 | * The system prop that allows defining system overrides as well as additional CSS styles. 42 | */ 43 | sx?: Sx.props, 44 | } 45 | 46 | @module("@mui/material/ImageListItem") 47 | external make: React.component = "default" 48 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/ImageListItemBar.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/Input.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/InputAdornment.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/InputBase.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/InputLabel.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/LinearProgress.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/Link.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/List.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/List.res: -------------------------------------------------------------------------------- 1 | type classes = { 2 | /** Styles applied to the root element. */ 3 | root?: string, 4 | /** Styles applied to the root element unless `disablePadding={true}`. */ 5 | padding?: string, 6 | /** Styles applied to the root element if dense. */ 7 | dense?: string, 8 | /** Styles applied to the root element if a `subheader` is provided. */ 9 | subheader?: string, 10 | } 11 | 12 | type props = { 13 | ...CommonProps.t, 14 | /** 15 | * The content of the component. 16 | */ 17 | children?: React.element, 18 | /** 19 | * Override or extend the styles applied to the component. 20 | */ 21 | classes?: classes, 22 | /** 23 | * The component used for the root node. Either a string to use a HTML element or a component. 24 | */ 25 | component?: OverridableComponent.t, 26 | /** 27 | * If `true`, compact vertical padding designed for keyboard and mouse input is used for 28 | * the list and list items. 29 | * The prop is available to descendant components as the `dense` context. 30 | * @default false 31 | */ 32 | dense?: bool, 33 | /** 34 | * If `true`, vertical padding is removed from the list. 35 | * @default false 36 | */ 37 | disablePadding?: bool, 38 | /** 39 | * The content of the subheader, normally `ListSubheader`. 40 | */ 41 | subheader?: React.element, 42 | /** 43 | * The system prop that allows defining system overrides as well as additional CSS styles. 44 | */ 45 | sx?: Sx.props, 46 | } 47 | 48 | @module("@mui/material/List") 49 | external make: React.component = "default" 50 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/ListItem.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/ListItemAvatar.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/ListItemAvatar.res: -------------------------------------------------------------------------------- 1 | type classes = { 2 | /** Styles applied to the root element. */ 3 | root?: string, 4 | /** Styles applied to the root element when the parent `ListItem` uses `alignItems="flex-start"`. */ 5 | alignItemsFlexStart?: string, 6 | } 7 | 8 | type props = { 9 | ...CommonProps.t, 10 | /** 11 | * The content of the component, normally an `Avatar`. 12 | */ 13 | children?: React.element, 14 | /** 15 | * Override or extend the styles applied to the component. 16 | */ 17 | classes?: classes, 18 | /** 19 | * The system prop that allows defining system overrides as well as additional CSS styles. 20 | */ 21 | sx?: Sx.props, 22 | } 23 | 24 | @module("@mui/material/ListItemAvatar") 25 | external make: React.component = "default" 26 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/ListItemButton.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/ListItemIcon.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/ListItemIcon.res: -------------------------------------------------------------------------------- 1 | type classes = { 2 | /** Styles applied to the root element. */ 3 | root?: string, 4 | /** Styles applied to the root element when the parent `ListItem` uses `alignItems="flex-start"`. */ 5 | alignItemsFlexStart?: string, 6 | } 7 | 8 | type props = { 9 | ...CommonProps.t, 10 | /** 11 | * The content of the component, normally `Icon`, `SvgIcon`, 12 | * or a `@mui/icons-material` SVG icon element. 13 | */ 14 | children?: React.element, 15 | /** 16 | * Override or extend the styles applied to the component. 17 | */ 18 | classes?: classes, 19 | /** 20 | * The system prop that allows defining system overrides as well as additional CSS styles. 21 | */ 22 | sx?: Sx.props, 23 | } 24 | 25 | @module("@mui/material/ListItemIcon") 26 | external make: React.component = "default" 27 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/ListItemSecondaryAction.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/ListItemSecondaryAction.res: -------------------------------------------------------------------------------- 1 | type classes = { 2 | /** Styles applied to the root element. */ 3 | root?: string, 4 | /** Styles applied to the root element when the parent `ListItem` has `disableGutters={true}`. */ 5 | disableGutters?: string, 6 | } 7 | 8 | type props = { 9 | ...CommonProps.t, 10 | /** 11 | * The content of the component, normally an `IconButton` or selection control. 12 | */ 13 | children?: React.element, 14 | /** 15 | * Override or extend the styles applied to the component. 16 | */ 17 | classes?: classes, 18 | /** 19 | * The system prop that allows defining system overrides as well as additional CSS styles. 20 | */ 21 | sx?: Sx.props, 22 | } 23 | 24 | @module("@mui/material/ListItemSecondaryAction") 25 | external make: React.component = "default" 26 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/ListItemText.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/ListSubheader.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/Menu.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/Menu.res: -------------------------------------------------------------------------------- 1 | type classes = { 2 | /** Styles applied to the root element. */ 3 | root?: string, 4 | /** Styles applied to the Paper component. */ 5 | paper?: string, 6 | /** Styles applied to the List component via `MenuList`. */ 7 | list?: string, 8 | } 9 | 10 | type props = { 11 | ...Popover.publicProps, 12 | /** 13 | * Override or extend the styles applied to the component. 14 | */ 15 | classes?: classes, 16 | /** 17 | * When opening the menu will not focus the active item but the `[role="menu"]` 18 | * unless `autoFocus` is also set to `false`. Not using the default means not 19 | * following WAI-ARIA authoring practices. Please be considerate about possible 20 | * accessibility implications. 21 | * @default false 22 | */ 23 | disableAutoFocusItem?: bool, 24 | /** 25 | * Props applied to the [`MenuList`](/material-ui/api/menu-list/) element. 26 | * @default {} 27 | */ 28 | @as("MenuListProps") 29 | menuListProps?: MenuList.props, 30 | /** 31 | * `classes` prop applied to the [`Popover`](/material-ui/api/popover/) element. 32 | */ 33 | @as("PopoverClasses") 34 | popoverClasses?: Popover.classes, 35 | /** 36 | * The system prop that allows defining system overrides as well as additional CSS styles. 37 | */ 38 | sx?: Sx.props, 39 | /** 40 | * The variant to use. Use `menu` to prevent selected items from impacting the initial focus. 41 | * @default 'selectedMenu' 42 | */ 43 | variant?: MenuList.variant, 44 | } 45 | 46 | @module("@mui/material/Menu") 47 | external make: React.component = "default" 48 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/MenuItem.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/MenuList.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/MenuList.res: -------------------------------------------------------------------------------- 1 | type variant = 2 | | @as("menu") Menu 3 | | @as("selectedMenu") SelectedMenu 4 | 5 | type props = { 6 | ...List.props, 7 | /** 8 | * If `true`, will focus the first menuitem if `variant="menu"` or selected item 9 | * if `variant="selectedMenu"`. 10 | * @default false 11 | */ 12 | autoFocusItem?: bool, 13 | /** 14 | * If `true`, will allow focus on disabled items. 15 | * @default false 16 | */ 17 | disabledItemsFocusable?: bool, 18 | /** 19 | * If `true`, the menu items will not wrap focus. 20 | * @default false 21 | */ 22 | disableListWrap?: bool, 23 | /** 24 | * The variant to use. Use `menu` to prevent selected items from impacting the initial focus 25 | * and the vertical alignment relative to the anchor element. 26 | * @default 'selectedMenu' 27 | */ 28 | variant?: variant, 29 | } 30 | 31 | @module("@mui/material/MenuList") 32 | external make: React.component = "default" 33 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/MobileStepper.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/Modal.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/NativeSelect.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/OutlinedInput.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/Pagination.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/PaginationItem.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/Paper.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/Popover.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/Popper.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/Radio.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/RadioGroup.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/RadioGroup.res: -------------------------------------------------------------------------------- 1 | type props<'value> = { 2 | ...FormGroup.props, 3 | /** 4 | * The default value. Use when the component is not controlled. 5 | */ 6 | defaultValue?: 'value, 7 | /** 8 | * The name used to reference the value of the control. 9 | * If you don't provide this prop, it falls back to a randomly generated name. 10 | */ 11 | name?: string, 12 | /** 13 | * Callback fired when a radio button is selected. 14 | * 15 | * @param {React.ChangeEvent} event The event source of the callback. 16 | * @param {string} value The value of the selected radio button. 17 | * You can pull out the new value by accessing `event.target.value` (string). 18 | */ 19 | onChange?: (ReactEvent.Form.t, string) => unit, 20 | /** 21 | * Value of the selected radio button. The DOM API casts this to a string. 22 | */ 23 | value?: 'value, 24 | } 25 | 26 | @module("@mui/material/RadioGroup") 27 | external make: React.component> = "default" 28 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/Rating.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/ScopedCssBaseline.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/ScopedCssBaseline.res: -------------------------------------------------------------------------------- 1 | type classes = { 2 | /** Styles applied to the root element. */ 3 | root?: string, 4 | } 5 | 6 | type props = { 7 | ...CommonProps.t, 8 | /** 9 | * The content of the component. 10 | */ 11 | children?: React.element, 12 | /** 13 | * Override or extend the styles applied to the component. 14 | */ 15 | classes?: classes, 16 | /** 17 | * The component used for the root node. Either a string to use a HTML element or a component. 18 | */ 19 | component?: OverridableComponent.t, 20 | /** 21 | * Enable `color-scheme` CSS property to use `theme.palette.mode`. 22 | * For more details, check out https://developer.mozilla.org/en-US/docs/Web/CSS/color-scheme 23 | * For browser support, check out https://caniuse.com/?search=color-scheme 24 | */ 25 | enableColorScheme?: bool, 26 | /** 27 | * The system prop that allows defining system overrides as well as additional CSS styles. 28 | */ 29 | sx?: Sx.props, 30 | } 31 | 32 | @module("@mui/material/ScopedCssBaseline") 33 | external make: React.component = "default" 34 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/Select.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/Skeleton.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/Slide.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/Slide.res: -------------------------------------------------------------------------------- 1 | type direction = 2 | | @as("left") Left 3 | | @as("right") Right 4 | | @as("up") Up 5 | | @as("down") Down 6 | 7 | type props = { 8 | ...Transition.publicProps, 9 | /** 10 | * Perform the enter transition when it first mounts if `in` is also `true`. 11 | * Set this to `false` to disable this behavior. 12 | * @default true 13 | */ 14 | appear?: bool, 15 | /** 16 | * A single child content element. 17 | */ 18 | children: React.element, 19 | /** 20 | * An HTML element, or a function that returns one. 21 | * It's used to set the container the Slide is transitioning from. 22 | */ 23 | container?: React.element, 24 | /** 25 | * Direction the child node will enter from. 26 | * @default 'down' 27 | */ 28 | direction?: direction, 29 | /** 30 | * The transition timing function. 31 | * You may specify a single easing or a object containing enter and exit values. 32 | * @default { 33 | * enter: theme.transitions.easing.easeOut, 34 | * exit: theme.transitions.easing.sharp, 35 | * } 36 | */ 37 | easing?: Transition.easing, 38 | /** 39 | * If `true`, the component will transition in. 40 | */ 41 | @as("in") 42 | in_?: bool, 43 | /** 44 | * The duration for the transition, in milliseconds. 45 | * You may specify a single timeout for all transitions, or individually with an object. 46 | * @default { 47 | * enter: theme.transitions.duration.enteringScreen, 48 | * exit: theme.transitions.duration.leavingScreen, 49 | * } 50 | */ 51 | timeout?: Transition.duration, 52 | } 53 | 54 | @module("@mui/material/Slide") 55 | external make: React.component = "default" 56 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/Slider.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | 3 | 4 | var Ranged = {}; 5 | 6 | export { 7 | Ranged , 8 | } 9 | /* No side effect */ 10 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/Snackbar.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/SnackbarContent.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/SnackbarContent.res: -------------------------------------------------------------------------------- 1 | type classes = { 2 | /** Styles applied to the root element. */ 3 | root?: string, 4 | /** Styles applied to the message wrapper element. */ 5 | message?: string, 6 | /** Styles applied to the action wrapper element if `action` is provided. */ 7 | action?: string, 8 | } 9 | 10 | type action = React.element 11 | 12 | type message = React.element 13 | 14 | type props = { 15 | ...Paper.publicProps, 16 | /** 17 | * The action to display. It renders after the message, at the end of the snackbar. 18 | */ 19 | action?: action, 20 | /** 21 | * The content of the component. 22 | */ 23 | children?: React.element, 24 | /** 25 | * Override or extend the styles applied to the component. 26 | */ 27 | classes?: classes, 28 | /** 29 | * The message to display. 30 | */ 31 | message?: message, 32 | /** 33 | * The variant to use. 34 | * @default 'elevation' 35 | */ 36 | variant?: Paper.variant, 37 | } 38 | 39 | @module("@mui/material/SnackbarContent") 40 | external make: React.component = "default" 41 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/SpeedDial.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/SpeedDialAction.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/SpeedDialIcon.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/SpeedDialIcon.res: -------------------------------------------------------------------------------- 1 | type classes = { 2 | /** Styles applied to the root element. */ 3 | root?: string, 4 | /** Styles applied to the icon component. */ 5 | icon?: string, 6 | /** Styles applied to the icon component if `open={true}`. */ 7 | iconOpen?: string, 8 | /** Styles applied to the icon when an `openIcon` is provided and if `open={true}`. */ 9 | iconWithOpenIconOpen?: string, 10 | /** Styles applied to the `openIcon` if provided. */ 11 | openIcon?: string, 12 | /** Styles applied to the `openIcon` if provided and if `open={true}`. */ 13 | openIconOpen?: string, 14 | } 15 | 16 | type props = { 17 | ...CommonProps.t, 18 | /** 19 | * Override or extend the styles applied to the component. 20 | */ 21 | classes?: classes, 22 | /** 23 | * The icon to display. 24 | */ 25 | icon?: React.element, 26 | /** 27 | * The icon to display in the SpeedDial Floating Action Button when the SpeedDial is open. 28 | */ 29 | openIcon?: React.element, 30 | /** 31 | * The system prop that allows defining system overrides as well as additional CSS styles. 32 | */ 33 | sx?: Sx.props, 34 | } 35 | 36 | @module("@mui/material/SpeedDialIcon") 37 | external make: React.component = "default" 38 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/Stack.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/Step.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/StepButton.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/StepButton.res: -------------------------------------------------------------------------------- 1 | type classes = { 2 | /** Styles applied to the root element. */ 3 | root?: string, 4 | /** Styles applied to the root element if `orientation="horizontal"`. */ 5 | horizontal?: string, 6 | /** Styles applied to the root element if `orientation="vertical"`. */ 7 | vertical?: string, 8 | /** Styles applied to the `ButtonBase` touch-ripple. */ 9 | touchRipple?: string, 10 | } 11 | 12 | type props = { 13 | ...ButtonBase.publicPropsWithOnClick, 14 | /** 15 | * Override or extend the styles applied to the component. 16 | */ 17 | classes?: classes, 18 | /** 19 | * The icon displayed by the step label. 20 | */ 21 | icon?: React.element, 22 | /** 23 | * The optional node to display. 24 | */ 25 | optional?: React.element, 26 | /** 27 | * The system prop that allows defining system overrides as well as additional CSS styles. 28 | */ 29 | sx?: Sx.props, 30 | } 31 | 32 | @module("@mui/material/StepButton") 33 | external make: React.component = "default" 34 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/StepConnector.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/StepConnector.res: -------------------------------------------------------------------------------- 1 | type classes = { 2 | /** Styles applied to the root element. */ 3 | root?: string, 4 | /** Styles applied to the root element if `orientation="horizontal"`. */ 5 | horizontal?: string, 6 | /** Styles applied to the root element if `orientation="vertical"`. */ 7 | vertical?: string, 8 | /** Styles applied to the root element if `alternativeLabel={true}`. */ 9 | alternativeLabel?: string, 10 | /** State class applied to the root element if `active={true}`. */ 11 | active?: string, 12 | /** State class applied to the root element if `completed={true}`. */ 13 | completed?: string, 14 | /** State class applied to the root element if `disabled={true}`. */ 15 | disabled?: string, 16 | /** Styles applied to the line element. */ 17 | line?: string, 18 | /** Styles applied to the root element if `orientation="horizontal"`. */ 19 | lineHorizontal?: string, 20 | /** Styles applied to the root element if `orientation="vertical"`. */ 21 | lineVertical?: string, 22 | } 23 | 24 | type props = { 25 | ...CommonProps.t, 26 | /** 27 | * Override or extend the styles applied to the component. 28 | */ 29 | classes?: classes, 30 | /** 31 | * The system prop that allows defining system overrides as well as additional CSS styles. 32 | */ 33 | sx?: Sx.props, 34 | } 35 | 36 | @module("@mui/material/StepConnector") 37 | external make: React.component = "default" 38 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/StepContent.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/StepIcon.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/StepIcon.res: -------------------------------------------------------------------------------- 1 | type classes = { 2 | /** Styles applied to the root element. */ 3 | root?: string, 4 | /** Styles applied to the SVG text element. */ 5 | text?: string, 6 | /** State class applied to the root element if `active={true}`. */ 7 | active?: string, 8 | /** State class applied to the root element if `completed={true}`. */ 9 | completed?: string, 10 | /** State class applied to the root element if `error={true}`. */ 11 | error?: string, 12 | } 13 | 14 | type props = { 15 | ...CommonProps.t, 16 | /** 17 | * Whether this step is active. 18 | * @default false 19 | */ 20 | active?: bool, 21 | /** 22 | * Override or extend the styles applied to the component. 23 | */ 24 | classes?: classes, 25 | /** 26 | * Mark the step as completed. Is passed to child components. 27 | * @default false 28 | */ 29 | completed?: bool, 30 | /** 31 | * If `true`, the step is marked as failed. 32 | * @default false 33 | */ 34 | error?: bool, 35 | /** 36 | * The label displayed in the step icon. 37 | */ 38 | icon: React.element, 39 | /** 40 | * The system prop that allows defining system overrides as well as additional CSS styles. 41 | */ 42 | sx?: Sx.props, 43 | } 44 | 45 | @module("@mui/material/StepIcon") 46 | external make: React.component = "default" 47 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/StepLabel.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/Stepper.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/StyledEngineProvider.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/StyledEngineProvider.res: -------------------------------------------------------------------------------- 1 | type props = { 2 | /** 3 | * Your component tree. 4 | */ 5 | children: React.element, 6 | /** 7 | * By default, the styles are injected last in the element of the page. 8 | * As a result, they gain more specificity than any other style sheet. 9 | * If you want to override MUI's styles, set this prop. 10 | */ 11 | injectFirst: bool, 12 | } 13 | 14 | @module("@mui/material/styles") 15 | external make: React.component = "StyledEngineProvider" 16 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/SvgIcon.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/SwipeableDrawer.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/Switch.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/Tab.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/TabScrollButton.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/Table.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/Table.res: -------------------------------------------------------------------------------- 1 | type classes = { 2 | /** Styles applied to the root element. */ 3 | root?: string, 4 | /** Styles applied to the root element if `stickyHeader={true}`. */ 5 | stickyHeader?: string, 6 | } 7 | 8 | @unboxed 9 | type size = 10 | | @as("small") Small 11 | | @as("medium") Medium 12 | | String(string) 13 | 14 | type padding = 15 | | @as("normal") Normal 16 | | @as("checkbox") Checkbox 17 | | @as("none") None 18 | 19 | type props = { 20 | ...CommonProps.t, 21 | /** 22 | * The content of the table, normally `TableHead` and `TableBody`. 23 | */ 24 | children?: React.element, 25 | /** 26 | * Override or extend the styles applied to the component. 27 | */ 28 | classes?: classes, 29 | /** 30 | * The component used for the root node. Either a string to use a HTML element or a component. 31 | */ 32 | component?: OverridableComponent.t, 33 | /** 34 | * Allows TableCells to inherit padding of the Table. 35 | * @default 'normal' 36 | */ 37 | padding?: padding, 38 | /** 39 | * Allows TableCells to inherit size of the Table. 40 | * @default 'medium' 41 | */ 42 | size?: size, 43 | /** 44 | * Set the header sticky. 45 | * 46 | * ⚠️ It doesn't work with IE11. 47 | * @default false 48 | */ 49 | stickyHeader?: bool, 50 | /** 51 | * The system prop that allows defining system overrides as well as additional CSS styles. 52 | */ 53 | sx?: Sx.props, 54 | } 55 | 56 | @module("@mui/material/Table") 57 | external make: React.component = "default" 58 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/TableBody.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/TableBody.res: -------------------------------------------------------------------------------- 1 | type classes = { 2 | /** Styles applied to the root element. */ 3 | root?: string, 4 | } 5 | 6 | type props = { 7 | ...CommonProps.t, 8 | /** 9 | * The content of the component, normally `TableRow`. 10 | */ 11 | children?: React.element, 12 | /** 13 | * Override or extend the styles applied to the component. 14 | */ 15 | classes?: classes, 16 | /** 17 | * The component used for the root node. Either a string to use a HTML element or a component. 18 | */ 19 | component?: OverridableComponent.t, 20 | /** 21 | * The system prop that allows defining system overrides as well as additional CSS styles. 22 | */ 23 | sx?: Sx.props, 24 | } 25 | 26 | @module("@mui/material/TableBody") 27 | external make: React.component = "default" 28 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/TableCell.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/TableContainer.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/TableContainer.res: -------------------------------------------------------------------------------- 1 | type classes = { 2 | /** Styles applied to the root element. */ 3 | root?: string, 4 | } 5 | 6 | type props = { 7 | ...CommonProps.t, 8 | /** 9 | * The content of the component, normally `Table`. 10 | */ 11 | children?: React.element, 12 | /** 13 | * Override or extend the styles applied to the component. 14 | */ 15 | classes?: classes, 16 | /** 17 | * The component used for the root node. Either a string to use a HTML element or a component. 18 | */ 19 | component?: OverridableComponent.t, 20 | /** 21 | * The system prop that allows defining system overrides as well as additional CSS styles. 22 | */ 23 | sx?: Sx.props, 24 | } 25 | 26 | @module("@mui/material/TableContainer") 27 | external make: React.component = "default" 28 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/TableFooter.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/TableFooter.res: -------------------------------------------------------------------------------- 1 | type classes = { 2 | /** Styles applied to the root element. */ 3 | root?: string, 4 | } 5 | 6 | type props = { 7 | ...CommonProps.t, 8 | /** 9 | * The content of the component, normally `TableRow`. 10 | */ 11 | children?: React.element, 12 | /** 13 | * Override or extend the styles applied to the component. 14 | */ 15 | classes?: classes, 16 | /** 17 | * The component used for the root node. Either a string to use a HTML element or a component. 18 | */ 19 | component?: OverridableComponent.t, 20 | /** 21 | * The system prop that allows defining system overrides as well as additional CSS styles. 22 | */ 23 | sx?: Sx.props, 24 | } 25 | 26 | @module("@mui/material/TableFooter") 27 | external make: React.component = "default" 28 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/TableHead.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/TableHead.res: -------------------------------------------------------------------------------- 1 | type classes = { 2 | /** Styles applied to the root element. */ 3 | root?: string, 4 | } 5 | 6 | type props = { 7 | ...CommonProps.t, 8 | /** 9 | * The content of the component, normally `TableRow`. 10 | */ 11 | children?: React.element, 12 | /** 13 | * Override or extend the styles applied to the component. 14 | */ 15 | classes?: classes, 16 | /** 17 | * The component used for the root node. Either a string to use a HTML element or a component. 18 | */ 19 | component?: OverridableComponent.t, 20 | /** 21 | * The system prop that allows defining system overrides as well as additional CSS styles. 22 | */ 23 | sx?: Sx.props, 24 | } 25 | 26 | @module("@mui/material/TableHead") 27 | external make: React.component = "default" 28 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/TablePagination.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/TableRow.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/TableRow.res: -------------------------------------------------------------------------------- 1 | type classes = { 2 | /** Styles applied to the root element. */ 3 | root?: string, 4 | /** State class applied to the root element if `selected={true}`. */ 5 | selected?: string, 6 | /** State class applied to the root element if `hover={true}`. */ 7 | hover?: string, 8 | /** Styles applied to the root element if table variant="head". */ 9 | head?: string, 10 | /** Styles applied to the root element if table variant="footer". */ 11 | footer?: string, 12 | } 13 | 14 | type props = { 15 | ...Mui.CommonProps.t, 16 | ...CommonProps.clickablePropsWithOnClick, 17 | /** 18 | * Should be valid children such as `TableCell`. 19 | */ 20 | children?: React.element, 21 | /** 22 | * Override or extend the styles applied to the component. 23 | */ 24 | classes?: classes, 25 | /** 26 | * The component used for the root node. Either a string to use a HTML element or a component. 27 | */ 28 | component?: OverridableComponent.t, 29 | /** 30 | * If `true`, the table row will shade on hover. 31 | * @default false 32 | */ 33 | hover?: bool, 34 | /** 35 | * If `true`, the table row will have the selected shading. 36 | * @default false 37 | */ 38 | selected?: bool, 39 | /** 40 | * The system prop that allows defining system overrides as well as additional CSS styles. 41 | */ 42 | sx?: Sx.props, 43 | } 44 | 45 | @module("@mui/material/TableRow") 46 | external make: React.component = "default" 47 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/TableSortLabel.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/TableSortLabel.res: -------------------------------------------------------------------------------- 1 | type classes = { 2 | /** Styles applied to the root element. */ 3 | root?: string, 4 | /** State class applied to the root element if `active={true}`. */ 5 | active?: string, 6 | /** Styles applied to the icon component. */ 7 | icon?: string, 8 | /** Styles applied to the icon component if `direction="desc"`. */ 9 | iconDirectionDesc?: string, 10 | /** Styles applied to the icon component if `direction="asc"`. */ 11 | iconDirectionAsc?: string, 12 | } 13 | 14 | type direction = 15 | | @as("asc") Asc 16 | | @as("desc") Desc 17 | 18 | type props = { 19 | ...ButtonBase.publicPropsWithOnClick, 20 | /** 21 | * If `true`, the label will have the active styling (should be true for the sorted column). 22 | * @default false 23 | */ 24 | active?: bool, 25 | /** 26 | * Override or extend the styles applied to the component. 27 | */ 28 | classes?: classes, 29 | /** 30 | * The current sort direction. 31 | * @default 'asc' 32 | */ 33 | direction?: direction, 34 | /** 35 | * If `true`, the component is disabled. 36 | * @default false 37 | */ 38 | disabled?: bool, 39 | /** 40 | * Hide sort icon when active is false. 41 | * @default false 42 | */ 43 | hideSortIcon?: bool, 44 | /** 45 | * Sort icon to use. 46 | * @default ArrowDownwardIcon 47 | */ 48 | @as("IconComponent") 49 | iconComponent?: React.component, 50 | /** 51 | * The system prop that allows defining system overrides as well as additional CSS styles. 52 | */ 53 | sx?: Sx.props, 54 | } 55 | 56 | @module("@mui/material/TableSortLabel") 57 | external make: React.component = "default" 58 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/Tabs.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/TextField.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/Theme.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/ThemeHelpers.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | 3 | import * as ReactDOMStyle from "@rescript/react/src/ReactDOMStyle.bs.js"; 4 | 5 | function addBreakpoint(sourceStyle, theme, breakpoint, style) { 6 | var mediaQuery = theme.breakpoints.up(breakpoint); 7 | return ReactDOMStyle.unsafeAddProp(sourceStyle, mediaQuery, style); 8 | } 9 | 10 | function addBreakpointDown(sourceStyle, theme, breakpoint, style) { 11 | var mediaQuery = theme.breakpoints.down(breakpoint); 12 | return ReactDOMStyle.unsafeAddProp(sourceStyle, mediaQuery, style); 13 | } 14 | 15 | export { 16 | addBreakpoint , 17 | addBreakpointDown , 18 | } 19 | /* No side effect */ 20 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/ThemeHelpers.res: -------------------------------------------------------------------------------- 1 | open Theme 2 | 3 | external styleToString: ReactDOM.Style.t => string = "%identity" 4 | 5 | /* see https://mui.com/material-ui/customization/breakpoints for details */ 6 | let addBreakpoint = (sourceStyle, ~theme, ~breakpoint, ~style) => { 7 | let mediaQuery = theme.breakpoints.up(breakpoint) 8 | 9 | ReactDOM.Style.unsafeAddProp(sourceStyle, mediaQuery, styleToString(style)) 10 | } 11 | 12 | let addBreakpointDown = (sourceStyle, ~theme, ~breakpoint, ~style) => { 13 | let mediaQuery = theme.breakpoints.down(breakpoint) 14 | 15 | ReactDOM.Style.unsafeAddProp(sourceStyle, mediaQuery, styleToString(style)) 16 | } 17 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/ThemeOptions.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/ThemeProvider.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/ThemeProvider.res: -------------------------------------------------------------------------------- 1 | @unboxed 2 | type themeOrThemeFunc = 3 | | Theme(Theme.t) 4 | | Func(ThemeOptions.t => Theme.t) 5 | 6 | type props = { 7 | children: React.element, 8 | theme: themeOrThemeFunc, 9 | } 10 | 11 | @module("@mui/material/styles") 12 | external make: React.component = "ThemeProvider" 13 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/ToggleButton.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/ToggleButtonGroup.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/Toolbar.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/Toolbar.res: -------------------------------------------------------------------------------- 1 | type classes = { 2 | /** Styles applied to the root element. */ 3 | root?: string, 4 | /** Styles applied to the root element unless `disableGutters={true}`. */ 5 | gutters?: string, 6 | /** Styles applied to the root element if `variant="regular"`. */ 7 | regular?: string, 8 | /** Styles applied to the root element if `variant="dense"`. */ 9 | dense?: string, 10 | } 11 | 12 | @unboxed 13 | type variant = 14 | | @as("regular") Regular 15 | | @as("dense") Dense 16 | | String(string) 17 | 18 | type props = { 19 | ...CommonProps.t, 20 | /** 21 | * The Toolbar children, usually a mixture of `IconButton`, `Button` and `Typography`. 22 | * The Toolbar is a flex container, allowing flex item properties to be used to lay out the children. 23 | */ 24 | children?: React.element, 25 | /** 26 | * Override or extend the styles applied to the component. 27 | */ 28 | classes?: classes, 29 | /** 30 | * The component used for the root node. Either a string to use a HTML element or a component. 31 | */ 32 | component?: OverridableComponent.t, 33 | /** 34 | * If `true`, disables gutter padding. 35 | * @default false 36 | */ 37 | disableGutters?: bool, 38 | /** 39 | * The system prop that allows defining system overrides as well as additional CSS styles. 40 | */ 41 | sx?: Sx.props, 42 | /** 43 | * The variant to use. 44 | * @default 'regular' 45 | */ 46 | variant?: variant, 47 | } 48 | 49 | @module("@mui/material/Toolbar") 50 | external make: React.component = "default" 51 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/Tooltip.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/Typography.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/Zoom.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/components/Zoom.res: -------------------------------------------------------------------------------- 1 | type props = { 2 | ...Transition.publicProps, 3 | /** 4 | * Perform the enter transition when it first mounts if `in` is also `true`. 5 | * Set this to `false` to disable this behavior. 6 | * @default true 7 | */ 8 | appear?: bool, 9 | /** 10 | * A single child content element. 11 | */ 12 | children: React.element, 13 | /** 14 | * The transition timing function. 15 | * You may specify a single easing or a object containing enter and exit values. 16 | */ 17 | easing?: Transition.easing, 18 | /** 19 | * If `true`, the component will transition in. 20 | */ 21 | @as("in") 22 | in_?: bool, 23 | /** 24 | * The duration for the transition, in milliseconds. 25 | * You may specify a single timeout for all transitions, or individually with an object. 26 | * @default { 27 | * enter: theme.transitions.duration.enteringScreen, 28 | * exit: theme.transitions.duration.leavingScreen, 29 | * } 30 | */ 31 | timeout?: Transition.duration, 32 | } 33 | 34 | @module("@mui/material/Zoom") 35 | external make: React.component = "default" 36 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/types/Breakpoint.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/types/Breakpoint.res: -------------------------------------------------------------------------------- 1 | type t = 2 | | @as("xs") Xs 3 | | @as("sm") Sm 4 | | @as("md") Md 5 | | @as("lg") Lg 6 | | @as("xl") Xl 7 | | String(string) 8 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/types/CommonProps.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/types/OverridableComponent.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/types/OverridableComponent.res: -------------------------------------------------------------------------------- 1 | type t<'props> 2 | 3 | external string: string => t<'props> = "%identity" 4 | external component: React.component<'props> => t<'props> = "%identity" 5 | external componentWithUnknownProps: React.component<'props> => t = "%identity" 6 | 7 | type component<'classKey> = { 8 | defaultProps?: 'classKey, 9 | styleOverrides?: 'classKey, 10 | } 11 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/types/Overrides.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/types/Sx.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | 3 | 4 | var $$Array = {}; 5 | 6 | export { 7 | $$Array , 8 | } 9 | /* No side effect */ 10 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/types/Sx.res: -------------------------------------------------------------------------------- 1 | module Array = { 2 | type t 3 | type cb<'theme> = 'theme => t 4 | 5 | external bool: bool => t = "%identity" 6 | external func: cb<'theme> => t = "%identity" 7 | external obj: System.props => t = "%identity" 8 | external dict: Js.Dict.t => t = "%identity" 9 | } 10 | 11 | type props 12 | 13 | /** Example: 14 | ```rescript 15 | let render = () => 16 | 20 | Sx.Array.obj({ 21 | color: theme.primaryColor, 22 | }) 23 | ), 24 | ])}> 25 | {React.string("I am in a paper!")} 26 | 27 | ``` 28 | */ 29 | external array: array => props = "%identity" 30 | 31 | external func: 'theme => props = "%identity" 32 | 33 | external obj: System.props => props = "%identity" 34 | 35 | external dict: Js.Dict.t => props = "%identity" 36 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/types/System.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | 3 | 4 | var Breakpoint = {}; 5 | 6 | var Value = {}; 7 | 8 | export { 9 | Breakpoint , 10 | Value , 11 | } 12 | /* No side effect */ 13 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/types/Transition.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/types/Transition.res: -------------------------------------------------------------------------------- 1 | // https://reactcommunity.org/react-transition-group/transition#Transition-props 2 | type publicProps = { 3 | ...CommonProps.t, 4 | addEndListener?: ReactEvent.Synthetic.t => unit, 5 | enter?: bool, 6 | exit?: bool, 7 | mountOnEnter?: bool, 8 | onEnter?: ReactEvent.Synthetic.t => unit, 9 | onEntered?: ReactEvent.Synthetic.t => unit, 10 | onEntering?: ReactEvent.Synthetic.t => unit, 11 | onExit?: ReactEvent.Synthetic.t => unit, 12 | onExited?: ReactEvent.Synthetic.t => unit, 13 | onExiting?: ReactEvent.Synthetic.t => unit, 14 | unmountOnExit?: bool, 15 | } 16 | 17 | type props = { 18 | ...publicProps, 19 | appear?: bool, 20 | } 21 | 22 | type durationObject = { 23 | appear?: int, 24 | enter?: int, 25 | exit?: int, 26 | } 27 | 28 | @unboxed 29 | type duration = 30 | | Time(int) 31 | | Object(durationObject) 32 | 33 | @unboxed 34 | type durationWithAuto = 35 | | @as("auto") Auto 36 | | Duration(int) 37 | | Object(durationObject) 38 | 39 | type easingObject = { 40 | enter?: string, 41 | exit?: string, 42 | } 43 | 44 | @unboxed 45 | type easing = 46 | | Easing(string) 47 | | Object(easingObject) 48 | 49 | type delay // TODO 50 | 51 | external propsFromObject: {..} => props = "%identity" 52 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/types/UsePagination.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-material/src/types/UsePagination.res: -------------------------------------------------------------------------------- 1 | type props = { 2 | /** 3 | * Number of always visible pages at the beginning and end. 4 | * @default 1 5 | */ 6 | boundaryCount?: int, 7 | /** 8 | * The name of the component where this hook is used. 9 | */ 10 | componentName?: string, 11 | /** 12 | * The total number of pages. 13 | * @default 1 14 | */ 15 | count?: int, 16 | /** 17 | * The page selected by default when the component is uncontrolled. 18 | * @default 1 19 | */ 20 | defaultPage?: int, 21 | /** 22 | * If `true`, the component is disabled. 23 | * @default false 24 | */ 25 | disabled?: bool, 26 | /** 27 | * If `true`, hide the next-page button. 28 | * @default false 29 | */ 30 | hideNextButton?: bool, 31 | /** 32 | * If `true`, hide the previous-page button. 33 | * @default false 34 | */ 35 | hidePrevButton?: bool, 36 | /** 37 | * Callback fired when the page is changed. 38 | * 39 | * @param {React.ChangeEvent} event The event source of the callback. 40 | * @param {number} page The page selected. 41 | */ 42 | onChange?: (ReactEvent.Synthetic.t, int) => unit, 43 | /** 44 | * The current page. 45 | */ 46 | page?: int, 47 | /** 48 | * If `true`, show the first-page button. 49 | * @default false 50 | */ 51 | showFirstButton?: bool, 52 | /** 53 | * If `true`, show the last-page button. 54 | * @default false 55 | */ 56 | showLastButton?: bool, 57 | /** 58 | * Number of always visible pages before and after the current page. 59 | * @default 1 60 | */ 61 | siblingCount?: int, 62 | } 63 | -------------------------------------------------------------------------------- /packages/rescript-mui-system/README.md: -------------------------------------------------------------------------------- 1 | # ReScript Bindings for MUI-System (UNRELEASED!) 2 | 3 | This library provides [ReScript](https://rescript-lang.org/) bindings for the system part of [MUI](https://mui.com/). 4 | 5 | ## Installation 6 | 7 | 1. Install all necessary packages according to the official MUI-System installation guide: https://mui.com/system/getting-started/installation/. 8 | 2. Install `@rescript-mui/material` and `@rescript-mui/system` 9 | 10 | ```sh 11 | npm install @rescript-mui/material @rescript-mui/system 12 | ``` 13 | 14 | 3. Add them to the `dependencies` in your `rescript.json`: 15 | 16 | ```json 17 | { 18 | "bs-dependencies": ["@rescript-mui/material, @rescript-mui/material"] 19 | } 20 | ``` 21 | -------------------------------------------------------------------------------- /packages/rescript-mui-system/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@rescript-mui/system", 3 | "version": "5.0.0-alpha.1", 4 | "description": "This library provides ReScript bindings for MUI System.", 5 | "keywords": [ 6 | "rescript", 7 | "bindings", 8 | "material-ui", 9 | "mui", 10 | "system" 11 | ], 12 | "repository": "https://github.com/cca-io/rescript-mui", 13 | "bugs": "https://github.com/cca-io/rescript-mui/issues", 14 | "author": "Florian Hammerschmidt ", 15 | "contributors": [ 16 | "Lukas Deco", 17 | "Christoph Knittel " 18 | ], 19 | "license": "MIT", 20 | "files": [ 21 | "/src", 22 | "/rescript.json" 23 | ], 24 | "peerDependencies": { 25 | "@mui/material": "^5.14.1", 26 | "@mui/system": "^5.13.5", 27 | "@rescript/react": "^0.12.0-alpha.2", 28 | "react": "^18.0.0", 29 | "react-dom": "^18.0.0", 30 | "rescript": "^11.0.0-beta.4" 31 | } 32 | } 33 | -------------------------------------------------------------------------------- /packages/rescript-mui-system/rescript.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@rescript-mui/system", 3 | "namespace": "MuiSystem", 4 | "sources": [ 5 | { 6 | "dir": "src", 7 | "subdirs": true 8 | } 9 | ], 10 | "package-specs": { 11 | "module": "es6", 12 | "in-source": true 13 | }, 14 | "bs-dependencies": ["@rescript/react", "@rescript-mui/material"], 15 | "warnings": { 16 | "number": "-103" 17 | }, 18 | "jsx": { 19 | "version": 4, 20 | "mode": "automatic" 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /packages/rescript-mui-system/src/System.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-system/src/System.res: -------------------------------------------------------------------------------- 1 | @module("@mui/system") 2 | external styledElement: string => {..} => React.component = "styled" 3 | 4 | @module("@mui/system") 5 | external styledElementWithTheme: string => (Mui.Theme.t => {..}) => React.component< 6 | JsxDOM.domProps, 7 | > = "styled" 8 | 9 | @module("@mui/system") 10 | external styledComponent: React.component<'a> => {..} => React.component<'a> = "styled" 11 | 12 | @module("@mui/system") 13 | external styledComponentWithTheme: React.component<'a> => (Mui.Theme.t => {..}) => React.component< 14 | 'a, 15 | > = "styled" 16 | -------------------------------------------------------------------------------- /packages/rescript-mui-x-date-pickers/README.md: -------------------------------------------------------------------------------- 1 | # ReScript bindings for @mui/x-date-pickers 2 | 3 | This library provides ReScript bindings for the date and time pickers of [MUI-X](https://mui.com/x/react-date-pickers/). 4 | 5 | ## Installation 6 | 7 | 1. Install all necessary packages according to the official MUI-X Date Pickers installation guide: https://mui.com/x/react-date-pickers/getting-started/. 8 | 2. Install both `@rescript-mui/material` and `@rescript-mui/x-date-pickers` 9 | 10 | ```sh 11 | npm install @rescript-mui/material @rescript-mui/x-date-pickers 12 | ``` 13 | 14 | 3. Add them to `dependencies` in your `rescript.json`: 15 | 16 | ```json 17 | { 18 | "bs-dependencies": ["@rescript-mui/material", "@rescript-mui/x-date-pickers"] 19 | } 20 | ``` 21 | 22 | ## Progress 23 | 24 | ### MUI-X Date Pickers 25 | 26 | - [x] AdapterDateFns 27 | - [x] AdapterDateFnsJalali 28 | - [x] AdapterDayjs 29 | - [x] AdapterLuxon 30 | - [x] AdapterMoment 31 | - [x] AdapterMomentHijri 32 | - [x] AdapterMomentJalaali 33 | - [x] DateCalendar 34 | - [ ] DateField 35 | - [ ] DatePicker 36 | - [ ] DateTimeField 37 | - [ ] DateTimePicker 38 | - [ ] DayCalendarSkeleton 39 | - [ ] DesktopDatePicker 40 | - [ ] DesktopDateTimePicker 41 | - [ ] DesktopTimePicker 42 | - [ ] DigitalClock 43 | - [x] LocalizationProvider 44 | - [ ] MobileDatePicker 45 | - [ ] MobileDateTimePicker 46 | - [ ] MobileTimePicker 47 | - [x] MonthCalendar 48 | - [ ] MultiSectionDigitalClock 49 | - [ ] PickersActionBar 50 | - [ ] PickersDay 51 | - [ ] PickersLayout 52 | - [ ] PickersShortcuts 53 | - [ ] StaticDatePicker 54 | - [ ] StaticDateTimePicker 55 | - [ ] StaticTimePicker 56 | - [ ] TimeClock 57 | - [ ] TimeField 58 | - [ ] TimePicker 59 | - [x] YearCalendar 60 | -------------------------------------------------------------------------------- /packages/rescript-mui-x-date-pickers/bsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@rescript-mui/x-date-pickers", 3 | "namespace": "mui-x-date-pickers", 4 | "sources": [ 5 | { 6 | "dir": "src", 7 | "subdirs": true 8 | } 9 | ], 10 | "package-specs": { 11 | "module": "es6", 12 | "in-source": true 13 | }, 14 | "bs-dependencies": ["@rescript/react", "@rescript-mui/material"], 15 | "warnings": { 16 | "number": "-103" 17 | }, 18 | "jsx": { 19 | "version": 4, 20 | "mode": "automatic" 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /packages/rescript-mui-x-date-pickers/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@rescript-mui/x-date-pickers", 3 | "version": "6.0.0-alpha.1", 4 | "description": "This library provides ReScript bindings for the MUI-X date and time pickers.", 5 | "keywords": [ 6 | "rescript", 7 | "bindings", 8 | "material-ui", 9 | "mui", 10 | "date-picker", 11 | "time-picker" 12 | ], 13 | "homepage": "https://rescript-material-ui.cca.io/", 14 | "repository": "https://github.com/cca-io/rescript-material-ui", 15 | "bugs": "https://github.com/cca-io/rescript-material-ui/issues", 16 | "author": "Florian Hammerschmidt ", 17 | "contributors": [ 18 | "Christoph Knittel " 19 | ], 20 | "license": "MIT", 21 | "files": [ 22 | "/src", 23 | "/rescript.json" 24 | ], 25 | "peerDependencies": { 26 | "@mui/material": "^5.14.1", 27 | "@mui/x-date-pickers": "^6.6.0", 28 | "@rescript-mui/material": "^5.0.0", 29 | "@rescript/react": "^0.12.0-alpha.2", 30 | "react": "^18.0.0", 31 | "react-dom": "^18.0.0", 32 | "rescript": "^11.0.0-beta.4" 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /packages/rescript-mui-x-date-pickers/src/AdapterDateFns.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-x-date-pickers/src/AdapterDateFns.res: -------------------------------------------------------------------------------- 1 | @module("@mui/x-date-pickers/AdapterDateFns") 2 | external make: LocalizationProvider.dateAdapter = "AdapterDateFns" 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-x-date-pickers/src/AdapterDateFnsJalali.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-x-date-pickers/src/AdapterDateFnsJalali.res: -------------------------------------------------------------------------------- 1 | @module("@mui/x-date-pickers/AdapterDateFnsJalali") 2 | external make: LocalizationProvider.dateAdapter = "AdapterDateFnsJalali" 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-x-date-pickers/src/AdapterDayjs.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-x-date-pickers/src/AdapterDayjs.res: -------------------------------------------------------------------------------- 1 | @module("@mui/x-date-pickers/AdapterDayjs") 2 | external make: LocalizationProvider.dateAdapter = "AdapterDayjs" 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-x-date-pickers/src/AdapterLuxon.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-x-date-pickers/src/AdapterLuxon.res: -------------------------------------------------------------------------------- 1 | @module("@mui/x-date-pickers/AdapterLuxon") 2 | external make: LocalizationProvider.dateAdapter = "AdapterLuxon" 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-x-date-pickers/src/AdapterMoment.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-x-date-pickers/src/AdapterMoment.res: -------------------------------------------------------------------------------- 1 | @module("@mui/x-date-pickers/AdapterMoment") 2 | external make: LocalizationProvider.dateAdapter = "AdapterMoment" 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-x-date-pickers/src/AdapterMomentHijri.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-x-date-pickers/src/AdapterMomentHijri.res: -------------------------------------------------------------------------------- 1 | @module("@mui/x-date-pickers/AdapterMomentHijri") 2 | external make: LocalizationProvider.dateAdapter = "AdapterMomentHijri" 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-x-date-pickers/src/AdapterMomentJalaali.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-x-date-pickers/src/AdapterMomentJalaali.res: -------------------------------------------------------------------------------- 1 | @module("@mui/x-date-pickers/AdapterMomentJalaali") 2 | external make: LocalizationProvider.dateAdapter = "AdapterMomentJalaali" 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-x-date-pickers/src/DateCalendar.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-x-date-pickers/src/DateField.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-x-date-pickers/src/DatePicker.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-x-date-pickers/src/DatePicker.res: -------------------------------------------------------------------------------- 1 | // TODO 2 | type classes 3 | 4 | type props 5 | 6 | @module("@mui/x-date-pickers") 7 | external make: React.component = "DatePicker" 8 | -------------------------------------------------------------------------------- /packages/rescript-mui-x-date-pickers/src/DateTimeField.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-x-date-pickers/src/DateTimeField.res: -------------------------------------------------------------------------------- 1 | // TODO 2 | type classes 3 | 4 | type props 5 | 6 | @module("@mui/x-date-pickers") 7 | external make: React.component = "DateTimeField" 8 | -------------------------------------------------------------------------------- /packages/rescript-mui-x-date-pickers/src/DateTimePicker.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-x-date-pickers/src/DateTimePicker.res: -------------------------------------------------------------------------------- 1 | // TODO 2 | type classes 3 | 4 | type props 5 | 6 | @module("@mui/x-date-pickers") 7 | external make: React.component = "DateTimePicker" 8 | -------------------------------------------------------------------------------- /packages/rescript-mui-x-date-pickers/src/DayCalendarSkeleton.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-x-date-pickers/src/DayCalendarSkeleton.res: -------------------------------------------------------------------------------- 1 | type classes = { 2 | /** Styles applied to the root element. */ 3 | root?: string, 4 | /** Styles applied to the week element. */ 5 | week?: string, 6 | /** Styles applied to the day element. */ 7 | daySkeleton?: string, 8 | } 9 | 10 | type props = { 11 | /** 12 | * Override or extend the styles applied to the component. 13 | */ 14 | classes?: classes, 15 | /** 16 | * The system prop that allows defining system overrides as well as additional CSS styles. 17 | */ 18 | sx?: Mui.Sx.props, 19 | ref?: ReactDOM.domRef, 20 | } 21 | 22 | @module("@mui/x-date-pickers") 23 | external make: React.component = "DayCalendarSkeleton" 24 | -------------------------------------------------------------------------------- /packages/rescript-mui-x-date-pickers/src/DesktopDatePicker.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-x-date-pickers/src/DesktopDatePicker.res: -------------------------------------------------------------------------------- 1 | // TODO 2 | type classes 3 | 4 | type props 5 | 6 | @module("@mui/x-date-pickers") 7 | external make: React.component = "DesktopDatePicker" 8 | -------------------------------------------------------------------------------- /packages/rescript-mui-x-date-pickers/src/DesktopDateTimePicker.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-x-date-pickers/src/DesktopDateTimePicker.res: -------------------------------------------------------------------------------- 1 | // TODO 2 | type classes 3 | 4 | type props 5 | 6 | @module("@mui/x-date-pickers") 7 | external make: React.component = "DesktopDateTimePicker" 8 | -------------------------------------------------------------------------------- /packages/rescript-mui-x-date-pickers/src/DesktopTimePicker.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-x-date-pickers/src/DesktopTimePicker.res: -------------------------------------------------------------------------------- 1 | // TODO 2 | type classes 3 | 4 | type props 5 | 6 | @module("@mui/x-date-pickers") 7 | external make: React.component = "DesktopTimePicker" 8 | -------------------------------------------------------------------------------- /packages/rescript-mui-x-date-pickers/src/DigitalClock.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-x-date-pickers/src/DigitalClock.res: -------------------------------------------------------------------------------- 1 | // TODO 2 | type classes 3 | 4 | type props 5 | 6 | @module("@mui/x-date-pickers") 7 | external make: React.component = "DigitalClock" 8 | -------------------------------------------------------------------------------- /packages/rescript-mui-x-date-pickers/src/LocalizationProvider.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-x-date-pickers/src/MobileDatePicker.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-x-date-pickers/src/MobileDatePicker.res: -------------------------------------------------------------------------------- 1 | // TODO 2 | type classes 3 | 4 | type props 5 | 6 | @module("@mui/x-date-pickers") 7 | external make: React.component = "MobileDatePicker" 8 | -------------------------------------------------------------------------------- /packages/rescript-mui-x-date-pickers/src/MobileDateTimePicker.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-x-date-pickers/src/MobileDateTimePicker.res: -------------------------------------------------------------------------------- 1 | // TODO 2 | type classes 3 | 4 | type props 5 | 6 | @module("@mui/x-date-pickers") 7 | external make: React.component = "MobileDateTimePicker" 8 | -------------------------------------------------------------------------------- /packages/rescript-mui-x-date-pickers/src/MobileTimePicker.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-x-date-pickers/src/MobileTimePicker.res: -------------------------------------------------------------------------------- 1 | // TODO 2 | type classes 3 | 4 | type props 5 | 6 | @module("@mui/x-date-pickers") 7 | external make: React.component = "MobileTimePicker" 8 | -------------------------------------------------------------------------------- /packages/rescript-mui-x-date-pickers/src/MonthCalendar.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-x-date-pickers/src/MultiSectionDigitalClock.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-x-date-pickers/src/MultiSectionDigitalClock.res: -------------------------------------------------------------------------------- 1 | // TODO 2 | type classes 3 | 4 | type props 5 | 6 | @module("@mui/x-date-pickers") 7 | external make: React.component = "MultiSectionDigitalClock" 8 | -------------------------------------------------------------------------------- /packages/rescript-mui-x-date-pickers/src/PickersActionBar.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-x-date-pickers/src/PickersActionBar.res: -------------------------------------------------------------------------------- 1 | // TODO 2 | type classes 3 | 4 | type props 5 | 6 | @module("@mui/x-date-pickers") 7 | external make: React.component = "PickersActionBar" 8 | -------------------------------------------------------------------------------- /packages/rescript-mui-x-date-pickers/src/PickersDay.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-x-date-pickers/src/PickersDay.res: -------------------------------------------------------------------------------- 1 | // TODO 2 | type classes 3 | 4 | type props 5 | 6 | @module("@mui/x-date-pickers") 7 | external make: React.component = "PickersDay" 8 | -------------------------------------------------------------------------------- /packages/rescript-mui-x-date-pickers/src/PickersLayout.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-x-date-pickers/src/PickersLayout.res: -------------------------------------------------------------------------------- 1 | // TODO 2 | type classes 3 | 4 | type props 5 | 6 | @module("@mui/x-date-pickers") 7 | external make: React.component = "PickersLayout" 8 | -------------------------------------------------------------------------------- /packages/rescript-mui-x-date-pickers/src/PickersShortcuts.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-x-date-pickers/src/PickersShortcuts.res: -------------------------------------------------------------------------------- 1 | // TODO 2 | type classes 3 | 4 | type props 5 | 6 | @module("@mui/x-date-pickers") 7 | external make: React.component = "PickersShortcuts" 8 | -------------------------------------------------------------------------------- /packages/rescript-mui-x-date-pickers/src/StaticDatePicker.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-x-date-pickers/src/StaticDatePicker.res: -------------------------------------------------------------------------------- 1 | // TODO 2 | type classes 3 | 4 | type props 5 | 6 | @module("@mui/x-date-pickers") 7 | external make: React.component = "StaticDatePicker" 8 | -------------------------------------------------------------------------------- /packages/rescript-mui-x-date-pickers/src/StaticDateTimePicker.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-x-date-pickers/src/StaticDateTimePicker.res: -------------------------------------------------------------------------------- 1 | // TODO 2 | type classes 3 | 4 | type props 5 | 6 | @module("@mui/x-date-pickers") 7 | external make: React.component = "StaticDateTimePicker" 8 | -------------------------------------------------------------------------------- /packages/rescript-mui-x-date-pickers/src/StaticTimePicker.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-x-date-pickers/src/StaticTimePicker.res: -------------------------------------------------------------------------------- 1 | // TODO 2 | type classes 3 | 4 | type props 5 | 6 | @module("@mui/x-date-pickers") 7 | external make: React.component = "StaticTimePicker" 8 | -------------------------------------------------------------------------------- /packages/rescript-mui-x-date-pickers/src/TimeClock.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-x-date-pickers/src/TimeClock.res: -------------------------------------------------------------------------------- 1 | // TODO 2 | type classes 3 | 4 | type props 5 | 6 | @module("@mui/x-date-pickers") 7 | external make: React.component = "TimeClock" 8 | -------------------------------------------------------------------------------- /packages/rescript-mui-x-date-pickers/src/TimeField.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-x-date-pickers/src/TimeField.res: -------------------------------------------------------------------------------- 1 | // TODO 2 | type classes 3 | 4 | type props 5 | 6 | @module("@mui/x-date-pickers") 7 | external make: React.component = "TimeField" 8 | -------------------------------------------------------------------------------- /packages/rescript-mui-x-date-pickers/src/TimePicker.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-x-date-pickers/src/TimePicker.res: -------------------------------------------------------------------------------- 1 | // TODO 2 | type classes 3 | 4 | type props 5 | 6 | @module("@mui/x-date-pickers") 7 | external make: React.component = "TimePicker" 8 | -------------------------------------------------------------------------------- /packages/rescript-mui-x-date-pickers/src/YearCalendar.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-x-date-pickers/src/types/Adapters.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-x-date-pickers/src/types/Common.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /packages/rescript-mui-x-date-pickers/src/types/Fields.bs.js: -------------------------------------------------------------------------------- 1 | // Generated by ReScript, PLEASE EDIT WITH CARE 2 | /* This output is empty. Its source's type definitions, externals and/or unused code got optimized away. */ 3 | -------------------------------------------------------------------------------- /rescript.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "rescript-mui-monorepo", 3 | "sources": [], 4 | "package-specs": [ 5 | { 6 | "module": "es6", 7 | "in-source": true 8 | } 9 | ], 10 | "bs-dev-dependencies": [ 11 | "@rescript/react" 12 | ], 13 | "bs-dependencies": [ 14 | "@rescript-mui/lab", 15 | "@rescript-mui/material", 16 | "@rescript-mui/system", 17 | "@rescript-mui/x-date-pickers", 18 | "helpers", 19 | "rescript-material-ui-examples" 20 | ], 21 | "pinned-dependencies": [ 22 | "@rescript-mui/lab", 23 | "@rescript-mui/material", 24 | "@rescript-mui/system", 25 | "@rescript-mui/x-date-pickers", 26 | "helpers", 27 | "rescript-material-ui-examples" 28 | ], 29 | "suffix": ".bs.js", 30 | "jsx": { 31 | "version": 4, 32 | "mode": "automatic" 33 | } 34 | } --------------------------------------------------------------------------------