- Our Admin Panel isn’t just a mix of third-party components. It’s{' '}
-
- the only open-source React dashboard built on a professional, enterprise-grade UI
- Components Library
-
- . This component is part of this library, and we present only the basic usage of it here. To
- explore extended examples, detailed API documentation, and customization options, refer to
- our docs.
-
- CoreUI Icons package is delivered with more than 1500 icons in multiple formats SVG, PNG,
- and Webfonts. CoreUI Icons are beautifully crafted symbols for common actions and items. You
- can use them in your digital products for web or mobile app. For more information please
- visit our documentation.
-
+
+ React Accordion} />
+
+
Click the accordions below to expand/collapse the accordion content.
-
+
-
-
- Accordion Item #1
-
- This is the first item's accordion body. It is hidden by
- default, until the collapse plugin adds the appropriate classes that we use to
- style each element. These classes control the overall appearance, as well as the
- showing and hiding via CSS transitions. You can modify any of this with custom
- CSS or overriding our default variables. It's also worth noting that just
- about any HTML can go within the .accordion-body, though the
- transition does limit overflow.
-
-
-
- Accordion Item #2
-
- This is the second item's accordion body. It is hidden by
+
+ }>
+ Accordion Item #1
+
+
+
+ This is the first item's accordion body. It is hidden by
default, until the collapse plugin adds the appropriate classes that we use to
- style each element. These classes control the overall appearance, as well as the
- showing and hiding via CSS transitions. You can modify any of this with custom
- CSS or overriding our default variables. It's also worth noting that just
- about any HTML can go within the .accordion-body, though the
- transition does limit overflow.
-
-
-
- Accordion Item #3
-
- This is the second item's accordion body. It is hidden by
- default, until the collapse plugin adds the appropriate classes that we use to
- style each element. These classes control the overall appearance, as well as the
- showing and hiding via CSS transitions. You can modify any of this with custom
- CSS or overriding our default variables. It's also worth noting that just
- about any HTML can go within the .accordion-body, though the
- transition does limit overflow.
-
-
-
+ style each element.
+
+
+
+
+ }>
+ Accordion Item #2
+
+
+
+ This is the second item's accordion body. It is hidden by
+ default, until the collapse plugin adds the appropriate classes.
+
+
+
+
+ }>
+ Accordion Item #3
+
+
+
+ This is the third item's accordion body. It is hidden by
+ default, until the collapse plugin adds the appropriate classes.
+
+
+
-
-
-
-
- React Accordion Flush
-
-
-
- Add flush to remove the default background-color, some
- borders, and some rounded corners to render accordions edge-to-edge with their parent
- container.
-
+
+
+
+
+
+ React Accordion{' '}
+
+ Flush
+
+
+ }
+ />
+
+
+ Use disableGutters and square props to remove padding and
+ rounded corners.
+
-
-
- Accordion Item #1
-
- This is the first item's accordion body. It is hidden by
- default, until the collapse plugin adds the appropriate classes that we use to
- style each element. These classes control the overall appearance, as well as the
- showing and hiding via CSS transitions. You can modify any of this with custom
- CSS or overriding our default variables. It's also worth noting that just
- about any HTML can go within the .accordion-body, though the
- transition does limit overflow.
-
-
-
- Accordion Item #2
-
- This is the second item's accordion body. It is hidden by
- default, until the collapse plugin adds the appropriate classes that we use to
- style each element. These classes control the overall appearance, as well as the
- showing and hiding via CSS transitions. You can modify any of this with custom
- CSS or overriding our default variables. It's also worth noting that just
- about any HTML can go within the .accordion-body, though the
- transition does limit overflow.
-
-
-
- Accordion Item #3
-
- This is the second item's accordion body. It is hidden by
- default, until the collapse plugin adds the appropriate classes that we use to
- style each element. These classes control the overall appearance, as well as the
- showing and hiding via CSS transitions. You can modify any of this with custom
- CSS or overriding our default variables. It's also worth noting that just
- about any HTML can go within the .accordion-body, though the
- transition does limit overflow.
-
-
-
+
+ }>
+ Accordion Item #1
+
+
+
+ This is the first item's accordion body.
+
+
+
+
+ }>
+ Accordion Item #2
+
+
+
+ This is the second item's accordion body.
+
+
+
+
+ }>
+ Accordion Item #3
+
+
+
+ This is the third item's accordion body.
+
+
+
-
-
-
-
- React Accordion Always open
-
-
-
- Add alwaysOpen property to make accordion items stay open when another
- item is opened.
-
+
+
+
+
+
+ React Accordion{' '}
+
+ Always open
+
+
+ }
+ />
+
+
+ Control each accordion independently to allow multiple panels to stay open.
+
-
-
- Accordion Item #1
-
- This is the first item's accordion body. It is hidden by
- default, until the collapse plugin adds the appropriate classes that we use to
- style each element. These classes control the overall appearance, as well as the
- showing and hiding via CSS transitions. You can modify any of this with custom
- CSS or overriding our default variables. It's also worth noting that just
- about any HTML can go within the .accordion-body, though the
- transition does limit overflow.
-
-
-
- Accordion Item #2
-
- This is the second item's accordion body. It is hidden by
- default, until the collapse plugin adds the appropriate classes that we use to
- style each element. These classes control the overall appearance, as well as the
- showing and hiding via CSS transitions. You can modify any of this with custom
- CSS or overriding our default variables. It's also worth noting that just
- about any HTML can go within the .accordion-body, though the
- transition does limit overflow.
-
-
-
- Accordion Item #3
-
- This is the second item's accordion body. It is hidden by
- default, until the collapse plugin adds the appropriate classes that we use to
- style each element. These classes control the overall appearance, as well as the
- showing and hiding via CSS transitions. You can modify any of this with custom
- CSS or overriding our default variables. It's also worth noting that just
- about any HTML can go within the .accordion-body, though the
- transition does limit overflow.
-
-
-
+
+ }>
+ Accordion Item #1
+
+
+
+ This is the first item's accordion body.
+
+
+
+
+ }>
+ Accordion Item #2
+
+
+
+ This is the second item's accordion body.
+
+
+
+
+ }>
+ Accordion Item #3
+
+
+
+ This is the third item's accordion body.
+
+
+
-
-
-
-
+
+
+
+
)
}
diff --git a/src/views/base/breadcrumbs/Breadcrumbs.js b/src/views/base/breadcrumbs/Breadcrumbs.js
index 3e1df44754..dbf1c456e1 100644
--- a/src/views/base/breadcrumbs/Breadcrumbs.js
+++ b/src/views/base/breadcrumbs/Breadcrumbs.js
@@ -1,74 +1,89 @@
import React from 'react'
import {
- CBreadcrumb,
- CBreadcrumbItem,
- CCard,
- CCardBody,
- CCardHeader,
- CCol,
- CRow,
- CLink,
-} from '@coreui/react'
+ Breadcrumbs as MuiBreadcrumbs,
+ Card,
+ CardContent,
+ CardHeader,
+ Typography,
+ Grid,
+ Link,
+} from '@mui/material'
+import NavigateNextIcon from '@mui/icons-material/NavigateNext'
import { DocsComponents, DocsExample } from 'src/components'
const Breadcrumbs = () => {
return (
-
-
-
-
-
- React Breadcrumb
-
-
-
- The breadcrumb navigation provides links back to each previous page the user navigated
- through and shows the current location in a website or an application. You don’t have
- to add separators, because they automatically added in CSS through{' '}
-
- {' '}
- ::before
- {' '}
- and{' '}
-
- {' '}
- content
-
- .
-
- Cards are built with as little markup and styles as possible but still manage to
- deliver a bunch of control and customization. Built with flexbox, they offer easy
- alignment and mix well with other CoreUI components. Cards have no top, left, and
- right margins by default, so use{' '}
- spacing utilities as needed.
- They have no fixed width to start, so they'll fill the full width of its parent.
-
-
- Below is an example of a basic card with mixed content and a fixed width. Cards have
- no fixed width to start, so they'll naturally fill the full width of its parent
- element.
-
-
-
-
-
- Card title
-
- Some quick example text to build on the card title and make up the bulk of the
- card's content.
-
-
- Go somewhere
-
-
-
-
-
-
-
-
-
-
- Card Body
-
-
-
- The main block of a card is the <CCardBody>. Use it whenever you
- need a padded section within a card.
-
-
-
- This is some text within a card body.
-
-
-
-
-
-
-
-
- Card Titles, text, and links
-
-
-
- Card titles are managed by <CCardTitle> component. Identically,
- links are attached and collected next to each other by <CCardLink>{' '}
- component.
-
-
- Subtitles are managed by <CCardSubtitle> component. If the{' '}
- <CCardTitle> also, the <CCardSubtitle> items are
- stored in a <CCardBody> item, the card title, and subtitle are
- arranged rightly.
-
-
-
-
- Card title
- Card subtitle
-
- Some quick example text to build on the card title and make up the bulk of the
- card's content.
-
- Card link
- Another link
-
-
-
-
-
-
-
-
-
- Card Images
-
-
-
- .card-img-top places a picture to the top of the card. With{' '}
- .card-text, text can be added to the card. Text within{' '}
- .card-text can additionally be styled with the regular HTML tags.
-
-
-
-
-
-
- Some quick example text to build on the card title and make up the bulk of the
- card's content.
-
-
-
-
-
-
-
-
-
-
- Card List groups
-
-
-
- Create lists of content in a card with a flush list group.
-
-
-
-
-
-
- Cras justo odio
- Dapibus ac facilisis in
- Vestibulum at eros
-
-
-
-
-
- Header
-
- Cras justo odio
- Dapibus ac facilisis in
- Vestibulum at eros
-
-
-
-
-
-
- Cras justo odio
- Dapibus ac facilisis in
- Vestibulum at eros
-
- Footer
-
-
-
-
-
-
-
-
-
-
- Card Kitchen sink
-
-
-
- Combine and match many content types to build the card you need, or throw everything
- in there. Shown below are image styles, blocks, text styles, and a list group—all
- wrapped in a fixed-width card.
-
-
-
-
-
- Card title
-
- Some quick example text to build on the card title and make up the bulk of the
- card's content.
-
-
-
- Cras justo odio
- Dapibus ac facilisis in
- Vestibulum at eros
-
-
- Card link
- Another link
-
-
-
-
-
-
-
-
-
- Card Header and footer
-
-
-
- Add an optional header and/or footer within a card.
-
-
-
- Header
-
- Special title treatment
-
- With supporting text below as a natural lead-in to additional content.
-
-
- Go somewhere
-
-
-
-
-
- Card headers can be styled by adding ex. as="h5".
-
-
-
- Header
-
- Special title treatment
-
- With supporting text below as a natural lead-in to additional content.
-
-
- Go somewhere
-
-
-
-
-
-
- Quote
-
-
-
- Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer posuere erat
- a ante.
-
-
-
-
-
-
-
-
- Header
-
- Special title treatment
-
- With supporting text below as a natural lead-in to additional content.
-
-
- Go somewhere
-
-
- 2 days ago
-
-
-
-
-
-
-
-
- Card Body
-
-
-
- Cards assume no specific width to start, so they'll be 100% wide
- unless otherwise stated. You can adjust this as required with custom CSS, grid
- classes, grid Sass mixins, or services.
-
-
Using grid markup
-
- Using the grid, wrap cards in columns and rows as needed.
-
-
-
-
-
-
- Special title treatment
-
- With supporting text below as a natural lead-in to additional content.
-
-
- Go somewhere
-
-
-
-
-
-
-
- Special title treatment
-
- With supporting text below as a natural lead-in to additional content.
-
-
- Go somewhere
-
-
-
-
-
-
-
-
-
-
- Card title
-
- With supporting text below as a natural lead-in to additional content.
-
-
- Go somewhere
-
-
-
-
-
- Card title
-
- With supporting text below as a natural lead-in to additional content.
-
-
- Go somewhere
-
-
-
-
- Using custom CSS
-
- Use custom CSS in your stylesheets or as inline styles to set a width.
-
-
-
-
- Special title treatment
-
- With supporting text below as a natural lead-in to additional content.
-
-
- Go somewhere
-
-
-
-
-
-
-
-
-
-
- Card Text alignment
-
-
-
- You can instantly change the text arrangement of any card—in its whole or specific
- parts—with{' '}
- text align classes
- .
-
-
-
-
- Special title treatment
-
- With supporting text below as a natural lead-in to additional content.
-
-
- Go somewhere
-
-
-
-
-
- Special title treatment
-
- With supporting text below as a natural lead-in to additional content.
-
-
- Go somewhere
-
-
-
-
-
- Special title treatment
-
- With supporting text below as a natural lead-in to additional content.
-
-
- Go somewhere
-
-
-
-
-
-
-
-
-
-
- Card Navigation
-
-
-
- Add some navigation to a <CCardHeader> with our{' '}
- <CNav> component.
-
-
-
-
-
-
-
- Active
-
-
-
- Link
-
-
-
- Disabled
-
-
-
-
-
- Special title treatment
-
- With supporting text below as a natural lead-in to additional content.
-
-
- Go somewhere
-
-
-
-
-
-
-
-
-
-
- Active
-
-
-
- Link
-
-
-
- Disabled
-
-
-
-
-
- Special title treatment
-
- With supporting text below as a natural lead-in to additional content.
-
-
- Go somewhere
-
-
-
-
-
-
-
-
-
-
- Card Image caps
-
-
-
- Similar to headers and footers, cards can include top and bottom "image
- caps"—images at the top or bottom of a card.
-
-
-
-
-
-
-
- Card title
-
- This is a wider card with supporting text below as a natural lead-in to
- additional content. This content is a little bit longer.
-
-
- Last updated 3 mins ago
-
-
-
-
-
-
-
- Card title
-
- This is a wider card with supporting text below as a natural lead-in to
- additional content. This content is a little bit longer.
-
-
- Last updated 3 mins ago
-
-
-
-
-
-
-
-
-
-
-
-
-
- Card Card styles
-
-
-
- Cards include various options for customizing their backgrounds, borders, and color.
-
-
Background and color
-
- Use color property to change the appearance of a card.
-
-
-
- {[
- { color: 'primary', textColor: 'white' },
- { color: 'secondary', textColor: 'white' },
- { color: 'success', textColor: 'white' },
- { color: 'danger', textColor: 'white' },
- { color: 'warning' },
- { color: 'info', textColor: 'white' },
- { color: 'light' },
- { color: 'dark', textColor: 'white' },
- ].map((item, index) => (
-
-
- Header
-
- {item.color} card title
-
- Some quick example text to build on the card title and make up the bulk of
- the card's content.
-
-
-
-
- ))}
-
-
-
Border
-
- Use border utilities to change
- just the border-color of a card. Note that you can set{' '}
- textColor property on the <CCard> or a subset of the
- card's contents as shown below.
-
-
-
- {[
- { color: 'primary', textColor: 'primary' },
- { color: 'secondary', textColor: 'secondary' },
- { color: 'success', textColor: 'success' },
- { color: 'danger', textColor: 'danger' },
- { color: 'warning', textColor: 'warning' },
- { color: 'info', textColor: 'info' },
- { color: 'light' },
- { color: 'dark' },
- ].map((item, index) => (
-
-
- Header
-
- {item.color} card title
-
- Some quick example text to build on the card title and make up the bulk of
- the card's content.
-
-
-
-
- ))}
-
-
-
Top border
-
- Use border utilities to change
- just the border-color of a card. Note that you can set{' '}
- textColor property on the <CCard> or a subset of the
- card's contents as shown below.
-
-
-
- {[
- { color: 'primary', textColor: 'primary' },
- { color: 'secondary', textColor: 'secondary' },
- { color: 'success', textColor: 'success' },
- { color: 'danger', textColor: 'danger' },
- { color: 'warning', textColor: 'warning' },
- { color: 'info', textColor: 'info' },
- { color: 'light' },
- { color: 'dark' },
- ].map((item, index) => (
-
-
- Header
-
- {item.color} card title
-
- Some quick example text to build on the card title and make up the bulk of
- the card's content.
-
-
-
-
- ))}
-
-
-
-
-
-
-
-
- Card Card groups
-
-
-
- Use card groups to render cards as a single, attached element with equal width and
- height columns. Card groups start off stacked and use display: flex; to
- become attached with uniform dimensions starting at the sm breakpoint.
-
-
-
-
-
-
- Card title
-
- This is a wider card with supporting text below as a natural lead-in to
- additional content. This content is a little bit longer.
-
-
- Last updated 3 mins ago
-
-
-
-
-
-
- Card title
-
- This card has supporting text below as a natural lead-in to additional
- content.
-
-
- Last updated 3 mins ago
-
-
-
-
-
-
- Card title
-
- This is a wider card with supporting text below as a natural lead-in to
- additional content. This card has even longer content than the first to show
- that equal height action.
-
-
- Last updated 3 mins ago
-
-
-
-
-
-
- When using card groups with footers, their content will automatically line up.
-
-
-
-
-
-
- Card title
-
- This is a wider card with supporting text below as a natural lead-in to
- additional content. This content is a little bit longer.
-
-
-
- Last updated 3 mins ago
-
-
-
-
-
- Card title
-
- This card has supporting text below as a natural lead-in to additional
- content.
-
-
-
- Last updated 3 mins ago
-
-
-
-
-
- Card title
-
- This is a wider card with supporting text below as a natural lead-in to
- additional content. This card has even longer content than the first to show
- that equal height action.
-
-
-
- Last updated 3 mins ago
-
-
-
-
-
-
-
-
-
-
- Card Grid cards
-
-
-
- Use the CRow component and set{' '}
- {xs|sm|md|lg|xl|xxl}={{ cols: * }} property
- to control how many grid columns (wrapped around your cards) you show per row. For
- example, here's xs={{cols: 1}} laying out the
- cards on one column, and md={{cols: 1}} splitting
- four cards to equal width across multiple rows, from the medium breakpoint up.
-
-
-
-
-
-
-
- Card title
-
- This is a wider card with supporting text below as a natural lead-in to
- additional content. This content is a little bit longer.
-
-
-
- Last updated 3 mins ago
-
-
-
-
-
-
-
- Card title
-
- This is a wider card with supporting text below as a natural lead-in to
- additional content. This content is a little bit longer.
-
-
-
- Last updated 3 mins ago
-
-
-
-
-
-
-
- Card title
-
- This is a wider card with supporting text below as a natural lead-in to
- additional content. This content is a little bit longer.
-
-
-
- Last updated 3 mins ago
-
-
-
-
-
-
-
- Card title
-
- This is a wider card with supporting text below as a natural lead-in to
- additional content. This content is a little bit longer.
-
-
-
- Last updated 3 mins ago
-
-
-
-
-
-
- Change it to md={{ cols: 3}} and you'll see the
- fourth card wrap.
-
-
-
-
-
-
-
- Card title
-
- This is a wider card with supporting text below as a natural lead-in to
- additional content. This content is a little bit longer.
-
-
-
- Last updated 3 mins ago
-
-
-
-
-
-
-
- Card title
-
- This is a wider card with supporting text below as a natural lead-in to
- additional content. This content is a little bit longer.
-
-
-
- Last updated 3 mins ago
-
-
-
-
-
-
-
- Card title
-
- This is a wider card with supporting text below as a natural lead-in to
- additional content. This content is a little bit longer.
-
-
-
- Last updated 3 mins ago
-
-
-
-
-
-
-
- Card title
-
- This is a wider card with supporting text below as a natural lead-in to
- additional content. This content is a little bit longer.
-
-
-
- Last updated 3 mins ago
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+ Card title
+
+
+ Some quick example text to build on the card title and make up the bulk of the
+ card's content.
+
+
+
+
+
+
+
+
+
+
+
+
+ Card title
+
+
+ Card subtitle
+
+
+ Some quick example text to build on the card title and make up the bulk of the
+ card's content.
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Some quick example text to build on the card title and make up the bulk of the
+ card's content.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Card Variants} />
+
+
+
+
+
+
+
+
+ Some quick example text to build on the card title.
+
+
+
+
+
+
+
+
+
+ Some quick example text to build on the card title.
+
+
+
+
+
+
+
+
+
+ Some quick example text to build on the card title.
+
+
+
+
+
+
+
+
+
+ Some quick example text to build on the card title.
+
+
+
+
+
+
+
+
+
+ Some quick example text to build on the card title.
+
+
+
+
+
+
+
+
+
+ Some quick example text to build on the card title.
+
+
+
+
+
+
+
+
+
+
+
+
+ Outlined Cards} />
+
+
+
+
+
+
+
+
+ Some quick example text to build on the card title.
+
+
+
+
+
+
+
+
+
+ Some quick example text to build on the card title.
+
+
+
+
+
+
+
+
+
+ Some quick example text to build on the card title.
+
+
+
+
+
+
+
+
+
+ Some quick example text to build on the card title.
+
+
+
+
+
+
+
+
+
+
)
}
diff --git a/src/views/base/carousels/Carousels.js b/src/views/base/carousels/Carousels.js
index 6d8763902d..2f0fef8657 100644
--- a/src/views/base/carousels/Carousels.js
+++ b/src/views/base/carousels/Carousels.js
@@ -1,212 +1,163 @@
-import React from 'react'
+import React, { useState } from 'react'
import {
- CCard,
- CCardBody,
- CCardHeader,
- CCarousel,
- CCarouselCaption,
- CCarouselItem,
- CCol,
- CRow,
-} from '@coreui/react'
+ Card,
+ CardContent,
+ CardHeader,
+ Typography,
+ Grid,
+ Box,
+ IconButton,
+ MobileStepper,
+ Button,
+} from '@mui/material'
+import KeyboardArrowLeft from '@mui/icons-material/KeyboardArrowLeft'
+import KeyboardArrowRight from '@mui/icons-material/KeyboardArrowRight'
import { DocsComponents, DocsExample } from 'src/components'
-import AngularImg from 'src/assets/images/angular.jpg'
-import ReactImg from 'src/assets/images/react.jpg'
-import VueImg from 'src/assets/images/vue.jpg'
-
-const slidesLight = [
- 'data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%22800%22%20height%3D%22400%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20800%20400%22%20preserveAspectRatio%3D%22none%22%3E%3Cdefs%3E%3Cstyle%20type%3D%22text%2Fcss%22%3E%23holder_1607923e7e2%20text%20%7B%20fill%3A%23AAA%3Bfont-weight%3Anormal%3Bfont-family%3AHelvetica%2C%20monospace%3Bfont-size%3A40pt%20%7D%20%3C%2Fstyle%3E%3C%2Fdefs%3E%3Cg%20id%3D%22holder_1607923e7e2%22%3E%3Crect%20width%3D%22800%22%20height%3D%22400%22%20fill%3D%22%23F5F5F5%22%3E%3C%2Frect%3E%3Cg%3E%3Ctext%20x%3D%22285.9296875%22%20y%3D%22217.75625%22%3EFirst%20slide%3C%2Ftext%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E',
- 'data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%22800%22%20height%3D%22400%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20800%20400%22%20preserveAspectRatio%3D%22none%22%3E%3Cdefs%3E%3Cstyle%20type%3D%22text%2Fcss%22%3E%23holder_15ba800aa20%20text%20%7B%20fill%3A%23BBB%3Bfont-weight%3Anormal%3Bfont-family%3AHelvetica%2C%20monospace%3Bfont-size%3A40pt%20%7D%20%3C%2Fstyle%3E%3C%2Fdefs%3E%3Cg%20id%3D%22holder_15ba800aa20%22%3E%3Crect%20width%3D%22800%22%20height%3D%22400%22%20fill%3D%22%23EEE%22%3E%3C%2Frect%3E%3Cg%3E%3Ctext%20x%3D%22247.3203125%22%20y%3D%22218.3%22%3ESecond%20slide%3C%2Ftext%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E',
- 'data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%22800%22%20height%3D%22400%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20800%20400%22%20preserveAspectRatio%3D%22none%22%3E%3Cdefs%3E%3Cstyle%20type%3D%22text%2Fcss%22%3E%23holder_15ba800aa21%20text%20%7B%20fill%3A%23999%3Bfont-weight%3Anormal%3Bfont-family%3AHelvetica%2C%20monospace%3Bfont-size%3A40pt%20%7D%20%3C%2Fstyle%3E%3C%2Fdefs%3E%3Cg%20id%3D%22holder_15ba800aa21%22%3E%3Crect%20width%3D%22800%22%20height%3D%22400%22%20fill%3D%22%23E5E5E5%22%3E%3C%2Frect%3E%3Cg%3E%3Ctext%20x%3D%22277%22%20y%3D%22218.3%22%3EThird%20slide%3C%2Ftext%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E',
+const images = [
+ { label: 'First slide', imgPath: 'https://picsum.photos/800/400?random=1' },
+ { label: 'Second slide', imgPath: 'https://picsum.photos/800/400?random=2' },
+ { label: 'Third slide', imgPath: 'https://picsum.photos/800/400?random=3' },
]
const Carousels = () => {
+ const [activeStep, setActiveStep] = useState(0)
+ const maxSteps = images.length
+
+ const handleNext = () => {
+ setActiveStep((prevActiveStep) => prevActiveStep + 1)
+ }
+
+ const handleBack = () => {
+ setActiveStep((prevActiveStep) => prevActiveStep - 1)
+ }
+
return (
-
-
+
+
-
-
- Carousel Slide only
-
-
-
Here’s a carousel with slides
+
+ Carousel} />
+
+
+ A slideshow component for cycling through elements—images or slides of text.
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Carousel With controls
-
-
-
- Adding in the previous and next controls by controls property.
-
- You can add captions to slides with the <CCarouselCaption> element
- within any <CCarouselItem>. They can be immediately hidden on
- smaller viewports, as shown below, with optional{' '}
- display utilities. We hide them
- with .d-none and draw them back on medium-sized devices with{' '}
- .d-md-block.
-
-
-
-
-
-
-
First slide label
-
Some representative placeholder content for the first slide.
-
-
-
-
-
-
Second slide label
-
Some representative placeholder content for the first slide.
-
-
-
-
-
-
Third slide label
-
Some representative placeholder content for the first slide.
-
-
-
-
-
-
-
-
-
-
- Carousel Crossfade
-
-
-
- Add transition="crossfade" to your carousel to animate slides
- with a fade transition instead of a slide.
-
- Add dark property to the CCarousel for darker controls,
- indicators, and captions. Controls have been inverted from their default white fill
- with the filter CSS property. Captions and controls have additional Sass
- variables that customize the color and background-color.
-
-
-
-
-
-
-
First slide label
-
Some representative placeholder content for the first slide.
-
-
-
-
-
-
Second slide label
-
Some representative placeholder content for the first slide.
-
-
-
-
-
-
Third slide label
-
Some representative placeholder content for the first slide.
+
+ Collapse} />
+
+
+ Toggle the visibility of content with a collapse transition.
+
- {
- e.preventDefault()
- setVisible(!visible)
- }}
- >
- Link
-
- setVisible(!visible)}>
- Button
-
-
-
-
- Anim pariatur cliche reprehenderit, enim eiusmod high life accusamus terry
- richardson ad squid. Nihil anim keffiyeh helvetica, craft beer labore wes
- anderson cred nesciunt sapiente ea proident.
-
-
-
+
+
+
+
+
+ Some placeholder content for the collapse component. This panel is hidden by
+ default but revealed when the user activates the relevant trigger.
+
+
+
+
-
-
-
-
-
-
- React Collapse Horizontal
-
-
-
-
-
-
- This is some placeholder content for a horizontal collapse. It's hidden by
- default and shown when triggered.
-
-
-
-
+
+
+
+
+
+
+ This is some placeholder content for a horizontal collapse.
+
+
+
+
+
-
-
-
-
-
-
- React Collapse multi target
-
-
-
- A <CButton> can show and hide multiple elements.
-
+
+
+
+
+
+ Collapse{' '}
+
+ Multiple targets
+
+
+ }
+ />
+
- setVisibleA(!visibleA)}>
- Toggle first element
-
- setVisibleB(!visibleB)}>
- Toggle second element
-
- {
- setVisibleA(!visibleA)
- setVisibleB(!visibleB)
- }}
- >
- Toggle both elements
-
-
-
-
-
-
- Anim pariatur cliche reprehenderit, enim eiusmod high life accusamus terry
- richardson ad squid. Nihil anim keffiyeh helvetica, craft beer labore wes
- anderson cred nesciunt sapiente ea proident.
-
-
-
-
-
-
-
-
- Anim pariatur cliche reprehenderit, enim eiusmod high life accusamus terry
- richardson ad squid. Nihil anim keffiyeh helvetica, craft beer labore wes
- anderson cred nesciunt sapiente ea proident.
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+ Some placeholder content for the first collapse component.
+
+
+
+
+
+
+
+
+
+
+ Some placeholder content for the second collapse component.
+
+
+
+
+
+
-
-
-
-
+
+
+
+
)
}
diff --git a/src/views/base/index.js b/src/views/base/index.js
index 2b7656c825..a597bacdc9 100644
--- a/src/views/base/index.js
+++ b/src/views/base/index.js
@@ -1,31 +1,33 @@
-import Breadcrumbs from './Breadcrumbs'
-import Cards from './Cards'
-import Carousels from './Carousels'
-import Collapses from './Collapses'
-import Dropdowns from './Dropdowns'
-import Jumbotrons from './Jumbotrons'
-import ListGroups from './ListGroups'
-import Navbars from './Navbars'
-import Navs from './Navs'
-import Paginations from './Paginations'
-import Popovers from './Popovers'
-import ProgressBar from './ProgressBar'
-import Tabs from './Tabs'
-import Tooltips from './Tooltips'
+import Accordion from './accordion/Accordion'
+import Breadcrumbs from './breadcrumbs/Breadcrumbs'
+import Cards from './cards/Cards'
+import Carousels from './carousels/Carousels'
+import Collapses from './collapses/Collapses'
+import ListGroups from './list-groups/ListGroups'
+import Navs from './navs/Navs'
+import Paginations from './paginations/Paginations'
+import Placeholders from './placeholders/Placeholders'
+import Popovers from './popovers/Popovers'
+import Progress from './progress/Progress'
+import Spinners from './spinners/Spinners'
+import Tables from './tables/Tables'
+import Tabs from './tabs/Tabs'
+import Tooltips from './tooltips/Tooltips'
export {
+ Accordion,
Breadcrumbs,
Cards,
Carousels,
Collapses,
- Dropdowns,
- Jumbotrons,
ListGroups,
- Navbars,
Navs,
+ Paginations,
+ Placeholders,
Popovers,
- ProgressBar,
+ Progress,
+ Spinners,
+ Tables,
Tabs,
Tooltips,
- Paginations,
}
diff --git a/src/views/base/list-groups/ListGroups.js b/src/views/base/list-groups/ListGroups.js
index a25e8bd6ef..84455dc1c8 100644
--- a/src/views/base/list-groups/ListGroups.js
+++ b/src/views/base/list-groups/ListGroups.js
@@ -1,346 +1,186 @@
import React from 'react'
import {
- CBadge,
- CCard,
- CCardBody,
- CCardHeader,
- CCol,
- CFormCheck,
- CListGroup,
- CListGroupItem,
- CRow,
-} from '@coreui/react'
+ Card,
+ CardContent,
+ CardHeader,
+ Typography,
+ Grid,
+ List,
+ ListItem,
+ ListItemText,
+ ListItemButton,
+ ListItemIcon,
+ Divider,
+ Badge,
+ Chip,
+} from '@mui/material'
+import InboxIcon from '@mui/icons-material/Inbox'
+import DraftsIcon from '@mui/icons-material/Drafts'
import { DocsComponents, DocsExample } from 'src/components'
const ListGroups = () => {
return (
-
-
-
-
-
- React List Group Basic example
-
-
-
- The default list group is an unordered list with items and the proper CSS classes.
- Build upon it with the options that follow, or with your CSS as required.
-
-
-
- Cras justo odio
- Dapibus ac facilisis in
- Morbi leo risus
- Porta ac consectetur ac
- Vestibulum at eros
-
+
+
+
+
+ List Group} />
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
- React List Group Active items
-
-
-
- Add active boolean property to a <CListGroupItem> to
- show the current active selection.
-
-
-
- Cras justo odio
- Dapibus ac facilisis in
- Morbi leo risus
- Porta ac consectetur ac
- Vestibulum at eros
-
-
-
-
-
-
-
-
- React List Group Disabled items
-
-
-
- Add disabled boolean property to a <CListGroupItem> to
- make it appear disabled.
-
-
-
- Cras justo odio
- Dapibus ac facilisis in
- Morbi leo risus
- Porta ac consectetur ac
- Vestibulum at eros
-
-
-
-
-
-
-
-
- React List Group Links and buttons
-
-
-
- Use <a>s or <button>s to create{' '}
- actionable list group items with hover, disabled, and active states by adding{' '}
- as="a|button". We separate these pseudo-classes to ensure list
- groups made of non-interactive elements (like <li>s or{' '}
- <div>
- s) don'tprovide a click or tap affordance.
-
-
-
-
- Cras justo odio
-
-
- Dapibus ac facilisis in
-
-
- Morbi leo risus
-
-
- Porta ac consectetur ac
-
-
- Vestibulum at eros
-
-
-
-
-
-
-
-
-
- React List Group Flush
-
-
-
- Add flush boolean property to remove some borders and rounded corners to
- render list group items edge-to-edge in a parent container (e.g., cards).
-
-
-
- Cras justo odio
- Dapibus ac facilisis in
- Morbi leo risus
- Porta ac consectetur ac
- Vestibulum at eros
-
-
-
-
-
-
-
-
- React List Group Horizontal
-
-
-
- Add layout="horizontal" to change the layout of list group items
- from vertical to horizontal across all breakpoints. Alternatively, choose a responsive
- variant .layout="horizontal-{sm | md | lg | xl | xxl}"{' '}
- to make a list group horizontal starting at that breakpoint's{' '}
- min-width. Currently{' '}
- horizontal list groups cannot be combined with flush list groups.
-
-
- {['', '-sm', '-md', '-lg', '-xl', '-xxl'].map((breakpoint, index) => (
-
- Cras justo odio
- Dapibus ac facilisis in
- Morbi leo risus
-
- ))}
-
-
-
-
-
-
-
- React List Group Contextual classes
-
-
-
- Use contextual classes to style list items with a stateful background and color.
-
-
-
- Dapibus ac facilisis in
- {[
- 'primary',
- 'secondary',
- 'success',
- 'danger',
- 'warning',
- 'info',
- 'light',
- 'dark',
- ].map((color, index) => (
-
- A simple {color} list group item
-
- ))}
-
-
-
- Contextual classes also work with <a>s or{' '}
- <button>s. Note the addition of the hover styles here not present
- in the previous example. Also supported is the active state; apply it to
- indicate an active selection on a contextual list group item.
-
-
-
-
- Dapibus ac facilisis in
-
- {[
- 'primary',
- 'secondary',
- 'success',
- 'danger',
- 'warning',
- 'info',
- 'light',
- 'dark',
- ].map((color, index) => (
-
- A simple {color} list group item
-
- ))}
-
-
-
-
-
-
-
-
- React List Group With badges
-
-
-
- Add badges to any list group item to show unread counts, activity, and more.
-
- The base .nav component is built with flexbox and provide a strong
- foundation for building all types of navigation components. It includes some style
- overrides (for working with lists), some link padding for larger hit areas, and basic
- disabled styling.
-
-
-
-
-
- Active
-
-
-
- Link
-
-
- Link
-
-
-
- Disabled
-
-
-
-
-
- Classes are used throughout, so your markup can be super flexible. Use{' '}
- <ul>s like above, <ol> if the order of your
- items is important, or roll your own with a <nav> element. Because
- the .nav uses display: flex, the nav links behave the same as nav items would, but
- without the extra markup.
-
-
-
-
- Active
-
- Link
- Link
-
- Disabled
-
-
-
-
-
-
-
-
-
- React Navs Horizontal alignment
-
-
-
- Change the horizontal alignment of your nav with{' '}
-
- flexbox utilities
-
- . By default, navs are left-aligned, but you can easily change them to center or right
- aligned.
-
-
- Centered with .justify-content-center:
-
-
-
-
-
- Active
-
-
-
- Link
-
-
- Link
-
-
-
- Disabled
-
-
-
-
-
- Stack your navigation by changing the flex item direction with the{' '}
- .flex-column utility. Need to stack them on some viewports but not
- others? Use the responsive versions (e.g., .flex-sm-column).
-
- Take that same HTML, but use variant="pills" instead:
-
-
-
-
-
- Active
-
-
-
- Link
-
-
- Link
-
-
-
- Disabled
-
-
-
-
-
-
-
-
-
-
- React Navs Fill and justify
-
-
-
- Force your .nav's contents to extend the full available width one of
- two modifier classes. To proportionately fill all available space with your{' '}
- .nav-items, use layout="fill". Notice that all
- horizontal space is occupied, but not every nav item has the same width.
-
-
-
-
-
- Active
-
-
-
- Link
-
-
- Link
-
-
-
- Disabled
-
-
-
-
-
- For equal-width elements, use layout="justified". All horizontal
- space will be occupied by nav links, but unlike the .nav-fill above, every nav item
- will be the same width.
-
-
-
-
-
- Active
-
-
-
- Link
-
-
- Link
-
-
-
- Disabled
-
-
-
-
-
-
-
-
-
-
- React Navs Working with flex utilities
-
-
-
- If you need responsive nav variations, consider using a series of{' '}
- flexbox utilities. While more
- verbose, these utilities offer greater customization across responsive breakpoints. In
- the example below, our nav will be stacked on the lowest breakpoint, then adapt to a
- horizontal layout that fills the available width starting from the small breakpoint.
-
- We use a large block of connected links for our pagination, making links hard to miss
- and easily scalable—all while providing large hit areas. Pagination is built with list
- HTML elements so screen readers can announce the number of available links. Use a
- wrapping <nav> element to identify it as a navigation section to
- screen readers and other assistive technologies.
-
-
- In addition, as pages likely have more than one such navigation section, it's
- advisable to provide a descriptive aria-label for the{' '}
- <nav> to reflect its purpose. For example, if the pagination
- component is used to navigate between a set of search results, an appropriate label
- could be aria-label="Search results pages".
-
- Looking to use an icon or symbol in place of text for some pagination links? Be sure
- to provide proper screen reader support with aria attributes.
-
- Pagination links are customizable for different circumstances. Use{' '}
- disabled for links that appear un-clickable and .active to
- indicate the current page.
-
-
- While the disabled prop uses pointer-events: none to{' '}
- try to disable the link functionality of <a>s, that CSS
- property is not yet standardized and doesn'taccount for keyboard navigation. As
- such, we always add tabindex="-1" on disabled links and use
- custom JavaScript to fully disable their functionality.
-
- In the example below, we take a typical card component and recreate it with
- placeholders applied to create a "loading card". Size and proportions are the
- same between the two.
-
-
-
-
-
-
- Card title
-
- Some quick example text to build on the card title and make up the bulk of the
- card's content.
-
-
- Go somewhere
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- React Placeholder
-
-
-
- Create placeholders with the <CPlaceholder> component and a grid
- column propx (e.g., xs={6}) to set the width. They can
- replace the text inside an element or be added as a modifier class to an existing
- component.
-
- Progress components are built with two HTML elements, some CSS to set the width, and a
- few attributes. We don'tuse{' '}
-
- the HTML5 <progress> element
-
- , ensuring you can stack progress bars, animate them, and place text labels over them.
-
- The striped gradient can also be animated. Add animated property to{' '}
- <CProgressBar> to animate the stripes right to left via CSS3
- animations.
-
- If you don'tfancy a border spinner, switch to the grow spinner. While it
- doesn't technically spin, it does repeatedly grow!
-
-
-
-
-
- Once again, this spinner is built with currentColor, so you can easily
- change its appearance. Here it is in blue, along with the supported variants.
-
- Use spinners within buttons to indicate an action is currently processing or taking
- place. You may also swap the text out of the spinner element and utilize button text
- as needed.
-
- Table cells of <CTableHead> are always vertical aligned to the
- bottom. Table cells in <CTableBody> inherit their alignment from{' '}
- <CTable> and are aligned to the the top by default. Use the align
- property to re-align where needed.
-
-
-
-
-
-
- Heading 1
-
-
- Heading 2
-
-
- Heading 3
-
-
- Heading 4
-
-
-
-
-
-
- This cell inherits vertical-align: middle; from the table
-
-
- This cell inherits vertical-align: middle; from the table
-
-
- This cell inherits vertical-align: middle; from the table
-
-
- This here is some placeholder text, intended to take up quite a bit of
- vertical space, to demonsCTableRowate how the vertical alignment works in the
- preceding cells.
-
-
-
-
- This cell inherits vertical-align: bottom; from the table row
-
-
- This cell inherits vertical-align: bottom; from the table row
-
-
- This cell inherits vertical-align: bottom; from the table row
-
-
- This here is some placeholder text, intended to take up quite a bit of
- vertical space, to demonsCTableRowate how the vertical alignment works in the
- preceding cells.
-
-
-
-
- This cell inherits vertical-align: middle; from the table
-
-
- This cell inherits vertical-align: middle; from the table
-
- This cell is aligned to the top.
-
- This here is some placeholder text, intended to take up quite a bit of
- vertical space, to demonsCTableRowate how the vertical alignment works in the
- preceding cells.
-
-
-
-
-
-
-
-
-
-
-
- React Table Nesting
-
-
-
- Border styles, active styles, and table variants are not inherited by nested tables.
-
-
-
-
-
- #
- Class
- Heading
- Heading
-
-
-
-
- 1
- Mark
- Otto
- @mdo
-
-
-
-
-
-
- Header
- Header
- Header
-
-
-
-
- A
- First
- Last
-
-
- B
- First
- Last
-
-
- C
- First
- Last
-
-
-
-
-
-
- 3
- Larry the Bird
- @twitter
-
-
-
-
-
-
-
-
-
-
- React Table Table head
-
-
-
- Similar to tables and dark tables, use the modifier prop{' '}
- color="light" or color="dark" to make{' '}
- <CTableHead>s appear light or dark gray.
-
- A <CTableCaption> functions like a heading for a table. It helps
- users with screen readers to find a table and understand what it's about and
- decide if they want to read it.
-
-
-
- List of users
-
-
- #
- Class
- Heading
- Heading
-
-
-
-
- 1
- Mark
- Otto
- @mdo
-
-
- 2
- Jacob
- Thornton
- @fat
-
-
- 3
- Larry
- the Bird
- @twitter
-
-
-
-
-
- You can also put the <CTableCaption> on the top of the table with{' '}
- caption="top".
-
-
-
- List of users
-
-
- #
- Class
- Heading
- Heading
-
-
-
-
- 1
- Mark
- Otto
- @mdo
-
-
- 2
- Jacob
- Thornton
- @fat
-
-
- 3
- Larry
- the Bird
- @twitter
-
-
-
-
-
-
-
-
+
+
+
+ Tooltips} />
+
+
+ Tooltips display informative text when users hover over, focus on, or tap an element.
+
-
- Tight pants next level keffiyeh
-
- you probably
-
- haven'theard of them. Photo booth beard raw denim letterpress vegan messenger
- bag stumptown. Farm-to-table seitan, mcsweeney's fixie sustainable quinoa 8-bit
- american apparel
-
- have a
-
- terry richardson vinyl chambray. Beard stumptown, cardigans banh mi lomo
- thundercats. Tofu biodiesel williamsburg marfa, four loko mcsweeney''s
- cleanse vegan chambray. A really ironic artisan
-
- whatever keytar
-
- scenester farm-to-table banksy Austin
-
- twitter handle
-
- freegan cred raw denim single-origin coffee viral.
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
- Hover over the buttons below to see the four tooltips directions: top, right, bottom,
- and left. Directions are mirrored when using CoreUI in RTL.
-
- Join sets of button groups into button toolbars for more complicated components. Use
- utility classes as needed to space out groups, buttons, and more.
-
- Feel free to combine input groups with button groups in your toolbars. Similar to the
- example above, you’ll likely need some utilities through to space items correctly.
-
- Alternatively, of implementing button sizing classes to each button in a group, set{' '}
- size property to all <CButtonGroup>'s, including
- each one when nesting multiple groups.
-
-
-
-
- Left
-
-
- Middle
-
-
- Right
-
-
-
-
-
- Left
-
-
- Middle
-
-
- Right
-
-
-
-
-
- Left
-
-
- Middle
-
-
- Right
-
-
-
-
-
-
-
-
-
- React Button GroupNesting
-
-
-
- Put a <CButtonGroup> inside another{' '}
- <CButtonGroup> when you need dropdown menus combined with a series
- of buttons.
-
- CoreUI includes a bunch of predefined buttons components, each serving its own
- semantic purpose. Buttons show what action will happen when the user clicks or touches
- it. CoreUI buttons are used to initialize operations, both in the background or
- foreground of an experience.
-
- The <CButton> component are designed for{' '}
- <button> , <a> or <input>{' '}
- elements (though some browsers may apply a slightly different rendering).
-
-
- If you're using <CButton> component as <a>{' '}
- elements that are used to trigger functionality ex. collapsing content, these links
- should be given a role="button" to adequately communicate their
- meaning to assistive technologies such as screen readers.
-
- Add the disabled boolean prop to any <CButton>{' '}
- component to make buttons look inactive. Disabled button has{' '}
- pointer-events: none applied to, disabling hover and active states from
- triggering.
-
-
-
- Primary button
-
-
- Button
-
-
-
- Disabled buttons using the <a> component act a little different:
-
-
- <a>s don'tsupport the disabled attribute, so
- CoreUI has to add .disabled className to make buttons look inactive.
- CoreUI also has to add to the disabled button component{' '}
- aria-disabled="true" attribute to show the state of the component
- to assistive technologies.
-
- Here we create a responsive variation, starting with vertically stacked buttons until
- the md breakpoint, where .d-md-block replaces the{' '}
- .d-grid class, thus nullifying the gap-2 utility. Resize
- your browser to see them change.
-
- You can adjust the width of your block buttons with grid column width classes. For
- example, for a half-width "block button", use .col-6. Center it
- horizontally with .mx-auto, too.
-
- Additional utilities can be used to adjust the alignment of buttons when horizontal.
- Here we've taken our previous responsive example and added some flex utilities and
- a margin utility on the button to right align the buttons when they're no longer
- stacked.
-
- Similarly, create split button dropdowns with virtually the same markup as single
- button dropdowns, but with the addition of boolean prop split for proper
- spacing around the dropdown caret.
-
-
- We use this extra class to reduce the horizontal padding on either side
- of the caret by 25% and remove the margin-left that's attached for
- normal button dropdowns. Those additional changes hold the caret centered in the split
- button and implement a more properly sized hit area next to the main button.
-
- Add the disabled attribute and the associated <label>s
- are automatically styled to match with a lighter color to help indicate the
- input's state.
-
-
-
-
-
-
-
-
-
-
-
- React Radio
-
-
-
- Add the disabled attribute and the associated <label>s
- are automatically styled to match with a lighter color to help indicate the
- input's state.
-
- A switch has the markup of a custom checkbox but uses the switch boolean
- properly to render a toggle switch. Switches also support the disabled{' '}
- attribute.
-
- Create button-like checkboxes and radio buttons by using button boolean
- property on the <CFormCheck> component. These toggle buttons can
- further be grouped in a button group if needed.
-
- Wrap a pair of <CFormInput> and <CFormLabel>{' '}
- elements in CFormFloating to enable floating labels with textual form
- fields. A placeholder is required on each <CFormInput>{' '}
- as our method of CSS-only floating labels uses the :placeholder-shown{' '}
- pseudo-element. Also note that the <CFormInput> must come first so
- we can utilize a sibling selector (e.g., ~).
-
- By default, <CFormTextarea>s will be the same height as{' '}
- <CFormInput>s.
-
-
-
-
- Comments
-
-
-
- To set a custom height on your <CFormTextarea;>, do not use the{' '}
- rows attribute. Instead, set an explicit height (either
- inline or via custom CSS).
-
- Other than <CFormInput>, floating labels are only available on{' '}
- <CFormSelect>s. They work in the same way, but unlike{' '}
- <CFormInput>s, they'll always show the{' '}
- <CFormLabel> in its floated state.{' '}
-
- Selects with size and multiple are not supported.
-
-
- Add the disabled boolean attribute on an input to give it a grayed out
- appearance and remove pointer events.
-
-
-
-
-
-
-
-
-
-
-
-
-
- React Form Control Readonly
-
-
-
- Add the readOnly boolean attribute on an input to prevent modification of
- the input's value. Read-only inputs appear lighter (just like disabled inputs),
- but retain the standard cursor.
-
-
-
+
+
+
+
+ Form Controls} />
+
+
+
+
+
+
+
-
-
-
-
-
-
- React Form Control Readonly plain text
-
-
-
- If you want to have <input readonly> elements in your form styled
- as plain text, use the plainText boolean property to remove the default
- form field styling and preserve the correct margin and padding.
-
+
+
+
+
+
+ Form Controls{' '}
+
+ Disabled & Readonly
+
+
+ }
+ />
+
+
+
+
+
+
-
-
-
-
-
-
- React Form Control Color
-
-
-
- Color picker
-
+
+
+
+
+
+ Form Controls{' '}
+
+ Variants
+
+
+ }
+ />
+
+
+
+
+
+
+
-
-
-
-
+
+
+
+
)
}
diff --git a/src/views/forms/index.js b/src/views/forms/index.js
new file mode 100644
index 0000000000..94bd07d3d9
--- /dev/null
+++ b/src/views/forms/index.js
@@ -0,0 +1,10 @@
+import FormControl from './form-control/FormControl'
+import Select from './select/Select'
+import ChecksRadios from './checks-radios/ChecksRadios'
+import Range from './range/Range'
+import InputGroup from './input-group/InputGroup'
+import FloatingLabels from './floating-labels/FloatingLabels'
+import Layout from './layout/Layout'
+import Validation from './validation/Validation'
+
+export { FormControl, Select, ChecksRadios, Range, InputGroup, FloatingLabels, Layout, Validation }
diff --git a/src/views/forms/input-group/InputGroup.js b/src/views/forms/input-group/InputGroup.js
index 73ccac2629..26b4455578 100644
--- a/src/views/forms/input-group/InputGroup.js
+++ b/src/views/forms/input-group/InputGroup.js
@@ -1,503 +1,151 @@
import React from 'react'
import {
- CButton,
- CCard,
- CCardBody,
- CCardHeader,
- CCol,
- CDropdown,
- CDropdownDivider,
- CDropdownItem,
- CDropdownMenu,
- CDropdownToggle,
- CFormCheck,
- CFormInput,
- CFormLabel,
- CFormSelect,
- CFormTextarea,
- CInputGroup,
- CInputGroupText,
- CRow,
-} from '@coreui/react'
+ Card,
+ CardContent,
+ CardHeader,
+ Typography,
+ Grid,
+ TextField,
+ InputAdornment,
+ Box,
+} from '@mui/material'
+import PersonIcon from '@mui/icons-material/Person'
+import EmailIcon from '@mui/icons-material/Email'
+import AttachMoneyIcon from '@mui/icons-material/AttachMoney'
import { DocsComponents, DocsExample } from 'src/components'
const InputGroup = () => {
return (
-
-
-
-
-
- React Input group Basic example
-
-
-
- Place one add-on or button on either side of an input. You may also place one on both
- sides of an input. Remember to place <CFormLabel>s outside the
- input group.
-
- Input groups wrap by default via flex-wrap: wrap in order to accommodate
- custom form field validation within an input group. You may disable this with{' '}
- .flex-nowrap.
-
- Add the relative form sizing classes to the <CInputGroup> itself
- and contents within will automatically resize—no need for repeating the form control
- size classes on each element.
-
-
- Sizing on the individual input group elements isn'tsupported.
-
-
-
- Small
-
-
-
- Default
- https://,
+ },
+ }}
/>
-
-
- Large
-
-
-
-
-
-
-
-
-
- React Input group Checkboxes and radios
-
-
-
- Place any checkbox or radio option within an input group's addon instead of text.
-
- More complex forms can be built using our grid classes. Use these for form layouts
- that require multiple columns, varied widths, and additional alignment options.
-
- Create horizontal forms with the grid by adding the .row class to form
- groups and using the .col-*-* classes to specify the width of your labels
- and controls. Be sure to add .col-form-label to your{' '}
- <CFormLabel>s as well so they're vertically centered with their
- associated form controls.
-
-
- At times, you maybe need to use margin or padding utilities to create that perfect
- alignment you need. For example, we've removed the padding-top on our
- stacked radio inputs label to better align the text baseline.
-
- Be sure to use .col-form-label-sm or .col-form-label-lg to
- your <CFormLabel>s or <legend>s to correctly
- follow the size of .form-control-lg and .form-control-sm.
-
- As shown in the previous examples, our grid system allows you to place any number of{' '}
- <CCol>s within a <CRow>. They'll split the
- available width equally between them. You may also pick a subset of your columns to
- take up more or less space, while the remaining <CCol>s equally
- split the rest, with specific column classes like{' '}
- <CCol sm="7">.
-
- The example below uses a flexbox utility to vertically center the contents and changes{' '}
- <CCol> to <CCol xs="auto"> so that your
- columns only take up as much space as needed. Put another way, the column sizes itself
- based on the contents.
-
- Use the <CCol xs="auto"> class to create horizontal
- layouts. By adding{' '}
- gutter modifier classes, we will
- have gutters in horizontal and vertical directions. The{' '}
- .align-items-center aligns the form elements to the middle, making the{' '}
- <CFormCheck> align properly.
-
- Add the disabled boolean attribute on an input to give it a grayed out
- appearance and remove pointer events.
-
-
- Disabled range
-
+
+
+
+
+
+ Slider{' '}
+
+ Min and max
+
+
+ }
+ />
+
+
+
+ Temperature (0-100)
+
+
-
-
-
-
-
-
- React Range Min and max
-
-
-
- Range inputs have implicit values for min and max—
- 0 and 100, respectively. You may specify new values for
- those using the min and max attributes.
-
- By default, range inputs "snap" to integer values. To change this, you can
- specify a step value. In the example below, we double the number of steps
- by using step="0.5".
-
- For custom CoreUI form validation messages, you'll need to add the{' '}
- noValidate boolean property to your <CForm>. This
- disables the browser default feedback tooltips, but still provides access to the form
- validation APIs in JavaScript. Try to submit the form below; our JavaScript will
- intercept the submit button and relay feedback to you. When attempting to submit,
- you'll see the :invalid and :valid styles applied to
- your form controls.
-
-
- Custom feedback styles apply custom colors, borders, focus styles, and background
- icons to better communicate feedback.{' '}
-
- Not interested in custom validation feedback messages or writing JavaScript to change
- form behaviors? All good, you can use the browser defaults. Try submitting the form
- below. Depending on your browser and OS, you'll see a slightly different style of
- feedback.
-
-
- While these feedback styles cannot be styled with CSS, you can still customize the
- feedback text through JavaScript.
-
- {BrowserDefaults()}
-
-
-
-
-
-
- Validation Server side
-
-
-
- We recommend using client-side validation, but in case you require server-side
- validation, you can indicate invalid and valid form fields with invalid{' '}
- and valid boolean properties.
-
-
- For invalid fields, ensure that the invalid feedback/error message is associated with
- the relevant form field using aria-describedby (noting that this
- attribute allows more than one id to be referenced, in case the field
- already points to additional form text).
-
-
-
-
- Email
-
- Looks good!
-
-
- Email
-
- Looks good!
-
-
- Username
-
- @
-
+
+
+
+ Form Validation} />
+
+
+ Provide valuable, actionable feedback to your users with form validation.
+
+
+
+
+ Form submitted successfully!
+
+
+
+
+
+
- Please choose a username.
-
-
-
- City
-
- Please provide a valid city.
-
-
- City
-
-
-
-
- Please provide a valid city.
-
-
- City
-
- Please provide a valid zip.
-
-
-
- You must agree before submitting.
-
-
-
- Submit form
-
-
-
-
-
-
-
-
-
-
- Validation Supported elements
-
-
-
- Validation styles are available for the following form controls and components:
-
-
-
- <CFormInput>s
-
-
- <CFormSelect>s
-
-
- <CFormCheck>s
-
-
-
-
-
-
- Textarea
-
-
- Please enter a message in the textarea.
-
-
- Example invalid feedback text
-
-
-
-
- More example invalid feedback text
-
-
- If your form layout allows it, you can swap the text for the tooltip to display
- validation feedback in a styled tooltip. Be sure to have a parent with{' '}
- position: relative on it for tooltip positioning. In the example below,
- our column classes have this already, but your project may require an alternative
- setup.
-
- {Tooltips()}
-
-
-
-
+
+
+
+
)
}
diff --git a/src/views/icons/brands/Brands.js b/src/views/icons/brands/Brands.js
index e46ce6fedb..b32b220515 100644
--- a/src/views/icons/brands/Brands.js
+++ b/src/views/icons/brands/Brands.js
@@ -1,34 +1,76 @@
import React from 'react'
-import { CCard, CCardBody, CCardHeader, CCol, CRow } from '@coreui/react'
-import CIcon from '@coreui/icons-react'
-import { brandSet } from '@coreui/icons'
-import { DocsIcons } from 'src/components'
+import { Card, CardContent, CardHeader, Typography, Grid, Paper } from '@mui/material'
+import FacebookIcon from '@mui/icons-material/Facebook'
+import TwitterIcon from '@mui/icons-material/Twitter'
+import InstagramIcon from '@mui/icons-material/Instagram'
+import LinkedInIcon from '@mui/icons-material/LinkedIn'
+import YouTubeIcon from '@mui/icons-material/YouTube'
+import GitHubIcon from '@mui/icons-material/GitHub'
+import RedditIcon from '@mui/icons-material/Reddit'
+import PinterestIcon from '@mui/icons-material/Pinterest'
+import WhatsAppIcon from '@mui/icons-material/WhatsApp'
+import TelegramIcon from '@mui/icons-material/Telegram'
+import AppleIcon from '@mui/icons-material/Apple'
+import AndroidIcon from '@mui/icons-material/Android'
+import WindowsIcon from '@mui/icons-material/Window'
+import GoogleIcon from '@mui/icons-material/Google'
+import AmazonIcon from '@mui/icons-material/Shop'
-const toKebabCase = (str) => {
- return str.replace(/([a-z0-9]|(?=[A-Z]))([A-Z])/g, '$1-$2').toLowerCase()
-}
-
-export const getIconsView = (iconset) => {
- return Object.entries(iconset).map(([name, value]) => (
-
-
-
- React Alert is prepared for any length of text, as well as an optional close button.
- For a styling, use one of the required contextual color{' '}
- props (e.g., primary). For inline dismissal, use the{' '}
- dismissing prop
- .
-
+
+ Alerts} />
+
- A simple primary alert—check it out!
- A simple secondary alert—check it out!
- A simple success alert—check it out!
- A simple danger alert—check it out!
- A simple warning alert—check it out!
- A simple info alert—check it out!
- A simple light alert—check it out!
- A simple dark alert—check it out!
+
+ This is a success alert!
+ This is an info alert!
+ This is a warning alert!
+ This is an error alert!
+
-
-
-
-
-
-
- React Alert Link color
-
-
-
- Use the <CAlertLink> component to immediately give matching colored
- links inside any alert.
-
-
-
- A simple primary alert with an example link. Give
- it a click if you like.
-
-
- A simple secondary alert with an example link.
- Give it a click if you like.
-
-
- A simple success alert with an example link. Give
- it a click if you like.
-
-
- A simple danger alert with an example link. Give
- it a click if you like.
-
-
- A simple warning alert with an example link. Give
- it a click if you like.
-
-
- A simple info alert with an example link. Give it
- a click if you like.
-
-
- A simple light alert with an example link. Give it
- a click if you like.
-
-
- A simple dark alert with an example link. Give it
- a click if you like.
-
+
+
+
+
+
+ Alerts{' '}
+
+ With title
+
+
+ }
+ />
+
+
+
+
+ Success
+ This is a success alert with a title.
+
+
+ Info
+ This is an info alert with a title.
+
+
+ Warning
+ This is a warning alert with a title.
+
+
+ Error
+ This is an error alert with a title.
+
+
-
-
-
-
-
-
- React Alert Additional content
-
-
-
- Alert can also incorporate supplementary components & elements like heading,
- paragraph, and divider.
-
-
-
- Well done!
-
- Aww yeah, you successfully read this important alert message. This example text is
- going to run a bit longer so that you can see how spacing within an alert works
- with this kind of content.
-
-
-
- Whenever you need to, be sure to use margin utilities to keep things nice and
- tidy.
-
-
+
+
+
+
+
+ Alerts{' '}
+
+ Outlined
+
+
+ }
+ />
+
+
+
+
+ This is an outlined success alert!
+
+
+ This is an outlined info alert!
+
+
+ This is an outlined warning alert!
+
+
+ This is an outlined error alert!
+
+
-
-
-
-
-
-
- React Alert Dismissing
-
-
-
- Alerts can also be easily dismissed. Just add the dismissible prop.
-
- Cras mattis consectetur purus sit amet fermentum. Cras justo odio, dapibus ac facilisis
- in, egestas eget quam. Morbi leo risus, porta ac consectetur ac, vestibulum at eros.
-
-
- Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Vivamus sagittis
- lacus vel augue laoreet rutrum faucibus dolor auctor.
-
-
- Aenean lacinia bibendum nulla sed consectetur. Praesent commodo cursus magna, vel
- scelerisque nisl consectetur et. Donec sed odio dui. Donec ullamcorper nulla non metus
- auctor fringilla.
-
-
- Cras mattis consectetur purus sit amet fermentum. Cras justo odio, dapibus ac facilisis
- in, egestas eget quam. Morbi leo risus, porta ac consectetur ac, vestibulum at eros.
-
-
- Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Vivamus sagittis
- lacus vel augue laoreet rutrum faucibus dolor auctor.
-
-
- Aenean lacinia bibendum nulla sed consectetur. Praesent commodo cursus magna, vel
- scelerisque nisl consectetur et. Donec sed odio dui. Donec ullamcorper nulla non metus
- auctor fringilla.
-
-
- Cras mattis consectetur purus sit amet fermentum. Cras justo odio, dapibus ac facilisis
- in, egestas eget quam. Morbi leo risus, porta ac consectetur ac, vestibulum at eros.
-
-
- Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Vivamus sagittis
- lacus vel augue laoreet rutrum faucibus dolor auctor.
-
-
- Aenean lacinia bibendum nulla sed consectetur. Praesent commodo cursus magna, vel
- scelerisque nisl consectetur et. Donec sed odio dui. Donec ullamcorper nulla non metus
- auctor fringilla.
-
-
- Cras mattis consectetur purus sit amet fermentum. Cras justo odio, dapibus ac facilisis
- in, egestas eget quam. Morbi leo risus, porta ac consectetur ac, vestibulum at eros.
-
-
- Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Vivamus sagittis
- lacus vel augue laoreet rutrum faucibus dolor auctor.
-
-
- Aenean lacinia bibendum nulla sed consectetur. Praesent commodo cursus magna, vel
- scelerisque nisl consectetur et. Donec sed odio dui. Donec ullamcorper nulla non metus
- auctor fringilla.
-
-
- Cras mattis consectetur purus sit amet fermentum. Cras justo odio, dapibus ac facilisis
- in, egestas eget quam. Morbi leo risus, porta ac consectetur ac, vestibulum at eros.
-
-
- Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Vivamus sagittis
- lacus vel augue laoreet rutrum faucibus dolor auctor.
-
-
- Aenean lacinia bibendum nulla sed consectetur. Praesent commodo cursus magna, vel
- scelerisque nisl consectetur et. Donec sed odio dui. Donec ullamcorper nulla non metus
- auctor fringilla.
-
-
- Cras mattis consectetur purus sit amet fermentum. Cras justo odio, dapibus ac facilisis
- in, egestas eget quam. Morbi leo risus, porta ac consectetur ac, vestibulum at eros.
-
-
- Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Vivamus sagittis
- lacus vel augue laoreet rutrum faucibus dolor auctor.
-
-
- Aenean lacinia bibendum nulla sed consectetur. Praesent commodo cursus magna, vel
- scelerisque nisl consectetur et. Donec sed odio dui. Donec ullamcorper nulla non metus
- auctor fringilla.
-
- Cras mattis consectetur purus sit amet fermentum. Cras justo odio, dapibus ac facilisis
- in, egestas eget quam. Morbi leo risus, porta ac consectetur ac, vestibulum at eros.
-
-
- Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Vivamus sagittis
- lacus vel augue laoreet rutrum faucibus dolor auctor.
-
-
- Aenean lacinia bibendum nulla sed consectetur. Praesent commodo cursus magna, vel
- scelerisque nisl consectetur et. Donec sed odio dui. Donec ullamcorper nulla non metus
- auctor fringilla.
-
-
- Cras mattis consectetur purus sit amet fermentum. Cras justo odio, dapibus ac facilisis
- in, egestas eget quam. Morbi leo risus, porta ac consectetur ac, vestibulum at eros.
-
-
- Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Vivamus sagittis
- lacus vel augue laoreet rutrum faucibus dolor auctor.
-
-
- Aenean lacinia bibendum nulla sed consectetur. Praesent commodo cursus magna, vel
- scelerisque nisl consectetur et. Donec sed odio dui. Donec ullamcorper nulla non metus
- auctor fringilla.
-
-
- Cras mattis consectetur purus sit amet fermentum. Cras justo odio, dapibus ac facilisis
- in, egestas eget quam. Morbi leo risus, porta ac consectetur ac, vestibulum at eros.
-
-
- Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Vivamus sagittis
- lacus vel augue laoreet rutrum faucibus dolor auctor.
-
-
- Aenean lacinia bibendum nulla sed consectetur. Praesent commodo cursus magna, vel
- scelerisque nisl consectetur et. Donec sed odio dui. Donec ullamcorper nulla non metus
- auctor fringilla.
-
-
- Cras mattis consectetur purus sit amet fermentum. Cras justo odio, dapibus ac facilisis
- in, egestas eget quam. Morbi leo risus, porta ac consectetur ac, vestibulum at eros.
-
-
- Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Vivamus sagittis
- lacus vel augue laoreet rutrum faucibus dolor auctor.
-
-
- Aenean lacinia bibendum nulla sed consectetur. Praesent commodo cursus magna, vel
- scelerisque nisl consectetur et. Donec sed odio dui. Donec ullamcorper nulla non metus
- auctor fringilla.
-
-
- Cras mattis consectetur purus sit amet fermentum. Cras justo odio, dapibus ac facilisis
- in, egestas eget quam. Morbi leo risus, porta ac consectetur ac, vestibulum at eros.
-
-
- Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Vivamus sagittis
- lacus vel augue laoreet rutrum faucibus dolor auctor.
-
-
- Aenean lacinia bibendum nulla sed consectetur. Praesent commodo cursus magna, vel
- scelerisque nisl consectetur et. Donec sed odio dui. Donec ullamcorper nulla non metus
- auctor fringilla.
-
-
- Cras mattis consectetur purus sit amet fermentum. Cras justo odio, dapibus ac facilisis
- in, egestas eget quam. Morbi leo risus, porta ac consectetur ac, vestibulum at eros.
-
-
- Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Vivamus sagittis
- lacus vel augue laoreet rutrum faucibus dolor auctor.
-
-
- Aenean lacinia bibendum nulla sed consectetur. Praesent commodo cursus magna, vel
- scelerisque nisl consectetur et. Donec sed odio dui. Donec ullamcorper nulla non metus
- auctor fringilla.
-
-
-
- setVisible(false)}>
- Close
-
- Save changes
-
-
- >
- )
-}
-
-const VerticallyCentered = () => {
- const [visible, setVisible] = useState(false)
- return (
- <>
- setVisible(!visible)}>
- Vertically centered modal
-
- setVisible(false)}>
-
- Modal title
-
-
- Cras mattis consectetur purus sit amet fermentum. Cras justo odio, dapibus ac facilisis
- in, egestas eget quam. Morbi leo risus, porta ac consectetur ac, vestibulum at eros.
-
-
- setVisible(false)}>
- Close
-
- Save changes
-
-
- >
- )
-}
-
-const VerticallyCentered2 = () => {
- const [visible, setVisible] = useState(false)
- return (
- <>
- setVisible(!visible)}>
- Vertically centered scrollable modal
-
- setVisible(false)}>
-
- Modal title
-
-
-
- Cras mattis consectetur purus sit amet fermentum. Cras justo odio, dapibus ac facilisis
- in, egestas eget quam. Morbi leo risus, porta ac consectetur ac, vestibulum at eros.
-
-
- Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Vivamus sagittis
- lacus vel augue laoreet rutrum faucibus dolor auctor.
-
-
- Aenean lacinia bibendum nulla sed consectetur. Praesent commodo cursus magna, vel
- scelerisque nisl consectetur et. Donec sed odio dui. Donec ullamcorper nulla non metus
- auctor fringilla.
-
-
- Cras mattis consectetur purus sit amet fermentum. Cras justo odio, dapibus ac facilisis
- in, egestas eget quam. Morbi leo risus, porta ac consectetur ac, vestibulum at eros.
-
-
- Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Vivamus sagittis
- lacus vel augue laoreet rutrum faucibus dolor auctor.
-
- Below is a static modal example (meaning its position and{' '}
- display have been overridden). Included are the modal header, modal body
- (required for padding), and modal footer (optional). We ask that you
- include modal headers with dismiss actions whenever possible, or provide another
- explicit dismiss action.
-
- If you don’t provide an onDimsiss handler to the Modal component, your
- modal will behave as though the backdrop is static, meaning it will not close when
- clicking outside it. Click the button below to try it.
-
- If you don’t provide an onDimsiss handler to the Modal component, your
- modal will behave as though the backdrop is static, meaning it will not close when
- clicking outside it. Click the button below to try it.
-
-
- {ScrollingLongContent()}
-
-
- You can also create a scrollable modal that allows scroll the modal body by adding{' '}
- scrollable prop.
-
- <CTooltips> and <CPopovers> can be placed within
- modals as needed. When modals are closed, any tooltips and popovers within are also
- automatically dismissed.
-
-
- {TooltipsPopovers()}
+ Small modal
+
+ This is a small modal.
+
+
+ setSizeOpen({ ...sizeOpen, sm: false })}>Close
+
+
+
+
-
-
-
-
-
-
- React Modal Optional sizes
-
-
-
- Modals have three optional sizes, available via modifier classes to be placed on a{' '}
- <CModal>. These sizes kick in at certain breakpoints to avoid
- horizontal scrollbars on narrower viewports.
-
- Toasts are as flexible as you need and have very little required markup. At a minimum,
- we require a single element to contain your “toasted” content and strongly encourage a
- dismiss button.
-
-
-
-
-
- CoreUI for React.js
- 7 min ago
-
- Hello, world! This is a toast message.
-
-
- {ExampleToast()}
-
-
-
-
-
-
- React Toast Translucent
-
-
-
- Toasts are slightly translucent to blend in with what's below them.
-
-
-
-
-
- CoreUI for React.js
- 7 min ago
-
- Hello, world! This is a toast message.
-
-
-
-
-
-
-
-
- React Toast Stacking
-
-
-
- You can stack toasts by wrapping them in a toast container, which will vertically add
- some spacing.
-
-
-
-
-
-
- CoreUI for React.js
- 7 min ago
-
- Hello, world! This is a toast message.
-
-
-
-
- CoreUI for React.js
- 7 min ago
-
- Hello, world! This is a toast message.
-
-
-
-
-
-
-
-
-
- React Toast Custom content
-
-
-
- Customize your toasts by removing sub-components, tweaking them with{' '}
- utilities, or by adding your own
- markup. Here we've created a simpler toast by removing the default{' '}
- <CToastHeader>, adding a custom hide icon from{' '}
- CoreUI Icons, and using some{' '}
- flexbox utilities to adjust the
- layout.
-
-
-
-
- Hello, world! This is a toast message.
-
-
-
+
+
+
+
+ Toasts / Snackbar} />
+
+
+ Push notifications to your visitors with a toast, a lightweight and easily
+ customizable alert message.
+
+
+
+ handleClick('success')}>
+ Success Toast
+
+ handleClick('info')}>
+ Info Toast
+
+ handleClick('warning')}>
+ Warning Toast
+
+ handleClick('error')}>
+ Error Toast
+
+
+
+
+ This is a {severity} message!
+
+
-
- Alternatively, you can also add additional controls and components to toasts.
-
-
-
-
- Hello, world! This is a toast message.
-
-
- Take action
-
-
- Close
-
-
-
-
+
+
+
+
+
+ Toasts{' '}
+
+ Positions
+
+
+ }
+ />
+
+
+ Snackbars can be positioned in different corners of the screen.
+
+
+
+
+ Top Left
+
+
+ Top Center
+
+
+ Top Right
+
+
+ Bottom Left
+
+
+ Bottom Center
+
+
+ Bottom Right
+
+
-
-
-
-
-
-
- React Toast Custom content
-
-
-
- Building on the above example, you can create different toast color schemes with our{' '}
- color and{' '}
- background utilities. Here
- we've set color="primary" and added .text-white{' '}
- class to the <Ctoast>, and then set white property to
- our close button. For a crisp edge, we remove the default border with{' '}
- .border-0.
-
-
-
-
- Hello, world! This is a toast message.
-
-
-
+
+
+
+
+
+ Toasts{' '}
+
+ Auto hide
+
+
+ }
+ />
+
+
+ Snackbars can automatically hide after a specified duration using the{' '}
+ autoHideDuration prop.
+
+
+ handleClick('info')}>
+ Auto-hide Toast (6 seconds)
+
-
-
-
-
+
+
+
+
)
}
diff --git a/src/views/pages/index.js b/src/views/pages/index.js
new file mode 100644
index 0000000000..a6f84e7079
--- /dev/null
+++ b/src/views/pages/index.js
@@ -0,0 +1,6 @@
+import Login from './login/Login'
+import Register from './register/Register'
+import Page404 from './page404/Page404'
+import Page500 from './page500/Page500'
+
+export { Login, Register, Page404, Page500 }
diff --git a/src/views/pages/login/Login.js b/src/views/pages/login/Login.js
index 1b2ee0baa2..eb01ae1c59 100644
--- a/src/views/pages/login/Login.js
+++ b/src/views/pages/login/Login.js
@@ -1,85 +1,112 @@
-import React from 'react'
+import React, { useState } from 'react'
import { Link } from 'react-router-dom'
import {
- CButton,
- CCard,
- CCardBody,
- CCardGroup,
- CCol,
- CContainer,
- CForm,
- CFormInput,
- CInputGroup,
- CInputGroupText,
- CRow,
-} from '@coreui/react'
-import CIcon from '@coreui/icons-react'
-import { cilLockLocked, cilUser } from '@coreui/icons'
+ Box,
+ Button,
+ Card,
+ CardContent,
+ Container,
+ Divider,
+ IconButton,
+ InputAdornment,
+ TextField,
+ Typography,
+} from '@mui/material'
+import PersonIcon from '@mui/icons-material/Person'
+import LockIcon from '@mui/icons-material/Lock'
+import Visibility from '@mui/icons-material/Visibility'
+import VisibilityOff from '@mui/icons-material/VisibilityOff'
const Login = () => {
+ const [showPassword, setShowPassword] = useState(false)
+
return (
-
- Documentation and examples for Bootstrap typography, including global settings,
- headings, body text, lists, and more.
-
-
-
-
-
Heading
-
Example
-
-
-
-
-
-
- <h1></h1>
-
-
-
- h1. Bootstrap heading
-
-
-
-
-
- <h2></h2>
-
-
-
- h2. Bootstrap heading
-
-
-
-
-
- <h3></h3>
-
-
-
- h3. Bootstrap heading
-
-
-
-
-
- <h4></h4>
-
-
-
- h4. Bootstrap heading
-
-
-
-
-
- <h5></h5>
-
-
-
- h5. Bootstrap heading
-
-
-
-
-
- <h6></h6>
-
-
-
- h6. Bootstrap heading
-
-
-
-
-
-
-
- Headings
-
-
- .h1 through
- .h6
- classes are also available, for when you want to match the font styling of a heading but
- cannot use the associated HTML element.
-
-
-
h1. Bootstrap heading
-
h2. Bootstrap heading
-
h3. Bootstrap heading
-
h4. Bootstrap heading
-
h5. Bootstrap heading
-
h6. Bootstrap heading
-
-
-
-
-
Display headings
-
-
- Traditional heading elements are designed to work best in the meat of your page content.
- When you need a heading to stand out, consider using a display heading
- —a larger, slightly more opinionated heading style.
-
-
-
-
-
-
- Display 1
-
-
-
-
- Display 2
-
-
-
-
- Display 3
-
-
-
-
- Display 4
-
-
-
-
-
-
-
-
- Inline text elements
-
-
- Traditional heading elements are designed to work best in the meat of your page content.
- When you need a heading to stand out, consider using a display heading
- —a larger, slightly more opinionated heading style.
-
-
-
- You can use the mark tag to highlight text.
-
-
- This line of text is meant to be treated as deleted text.
-
-
- This line of text is meant to be treated as no longer accurate.
-
-
- This line of text is meant to be treated as an addition to the document.
-
-
- This line of text will render as underlined
-
-
- This line of text is meant to be treated as fine print.
-
-
- This line rendered as bold text.
-
-
- This line rendered as italicized text.
-
-
-
-
-
- Description list alignment
-
-
- Align terms and descriptions horizontally by using our grid system’s predefined classes
- (or semantic mixins). For longer terms, you can optionally add a{' '}
- .text-truncate class to truncate the text
- with an ellipsis.
-