├── .babelrc
├── .eslintignore
├── .eslintrc.js
├── .gitignore
├── LICENSE.md
├── README.md
├── bower.json
├── deploy.js
├── package.json
├── public
├── apple-icon.png
├── favicon.ico
├── googlee35aa2f2fd7b0c5b.html
├── index.html
├── manifest.json
└── sitemap.xml
├── src
├── assets
│ ├── css
│ │ └── material-kit-react.css
│ ├── img
│ │ ├── apple-icon.png
│ │ ├── bg.jpg
│ │ ├── bg2.jpg
│ │ ├── bg3.jpg
│ │ ├── bg4.jpg
│ │ ├── bg7.jpg
│ │ ├── examples
│ │ │ ├── clem-onojegaw.jpg
│ │ │ ├── clem-onojeghuo.jpg
│ │ │ ├── cynthia-del-rio.jpg
│ │ │ ├── mariya-georgieva.jpg
│ │ │ ├── olu-eletu.jpg
│ │ │ ├── studio-1.jpg
│ │ │ ├── studio-2.jpg
│ │ │ ├── studio-3.jpg
│ │ │ ├── studio-4.jpg
│ │ │ └── studio-5.jpg
│ │ ├── faces
│ │ │ ├── avatar.jpg
│ │ │ ├── camp.jpg
│ │ │ ├── card-profile1-square.jpg
│ │ │ ├── card-profile2-square.jpg
│ │ │ ├── card-profile4-square.jpg
│ │ │ ├── card-profile5-square.jpg
│ │ │ ├── card-profile6-square.jpg
│ │ │ ├── christian.jpg
│ │ │ ├── kendall.jpg
│ │ │ └── marc.jpg
│ │ ├── favicon.png
│ │ ├── landing-bg.jpg
│ │ ├── landing.jpg
│ │ ├── profile-bg.jpg
│ │ ├── profile.jpg
│ │ └── sign.jpg
│ ├── jss
│ │ ├── material-kit-react.jsx
│ │ └── material-kit-react
│ │ │ ├── components
│ │ │ ├── badgeStyle.jsx
│ │ │ ├── buttonStyle.jsx
│ │ │ ├── cardBodyStyle.jsx
│ │ │ ├── cardFooterStyle.jsx
│ │ │ ├── cardHeaderStyle.jsx
│ │ │ ├── cardStyle.jsx
│ │ │ ├── customDropdownStyle.jsx
│ │ │ ├── customInputStyle.jsx
│ │ │ ├── customLinearProgressStyle.jsx
│ │ │ ├── customTabsStyle.jsx
│ │ │ ├── footerStyle.jsx
│ │ │ ├── headerLinksStyle.jsx
│ │ │ ├── headerStyle.jsx
│ │ │ ├── infoStyle.jsx
│ │ │ ├── navPillsStyle.jsx
│ │ │ ├── paginationStyle.jsx
│ │ │ ├── parallaxStyle.jsx
│ │ │ ├── snackbarContentStyle.jsx
│ │ │ └── typographyStyle.jsx
│ │ │ ├── customCheckboxRadioSwitch.jsx
│ │ │ ├── imagesStyles.jsx
│ │ │ ├── modalStyle.jsx
│ │ │ ├── popoverStyles.jsx
│ │ │ ├── tooltipsStyle.jsx
│ │ │ └── views
│ │ │ ├── components.jsx
│ │ │ ├── componentsSections
│ │ │ ├── basicsStyle.jsx
│ │ │ ├── carouselStyle.jsx
│ │ │ ├── completedStyle.jsx
│ │ │ ├── downloadStyle.jsx
│ │ │ ├── exampleStyle.jsx
│ │ │ ├── javascriptStyles.jsx
│ │ │ ├── loginStyle.jsx
│ │ │ ├── navbarsStyle.jsx
│ │ │ ├── notificationsStyles.jsx
│ │ │ ├── pillsStyle.jsx
│ │ │ ├── tabsStyle.jsx
│ │ │ └── typographyStyle.jsx
│ │ │ ├── landingPage.jsx
│ │ │ ├── landingPageSections
│ │ │ ├── productStyle.jsx
│ │ │ ├── teamStyle.jsx
│ │ │ └── workStyle.jsx
│ │ │ ├── loginPage.jsx
│ │ │ └── profilePage.jsx
│ └── scss
│ │ ├── core
│ │ ├── _misc.scss
│ │ ├── _mixins.scss
│ │ ├── _variables.scss
│ │ ├── mixins
│ │ │ └── _colored-shadows.scss
│ │ └── variables
│ │ │ ├── _bootstrap-material-design-base.scss
│ │ │ ├── _bootstrap-material-design.scss
│ │ │ ├── _brand.scss
│ │ │ ├── _colors-map.scss
│ │ │ ├── _colors.scss
│ │ │ ├── _functions.scss
│ │ │ ├── _shadow.scss
│ │ │ └── _variables.scss
│ │ ├── material-kit-react.scss
│ │ └── plugins
│ │ ├── _plugin-nouislider.scss
│ │ ├── _plugin-react-datetime.scss
│ │ └── _plugin-react-slick.scss
├── components
│ ├── Badge
│ │ └── Badge.jsx
│ ├── Card
│ │ ├── Card.jsx
│ │ ├── CardBody.jsx
│ │ ├── CardFooter.jsx
│ │ └── CardHeader.jsx
│ ├── Clearfix
│ │ └── Clearfix.jsx
│ ├── CustomButtons
│ │ └── Button.jsx
│ ├── CustomDropdown
│ │ └── CustomDropdown.jsx
│ ├── CustomInput
│ │ └── CustomInput.jsx
│ ├── CustomLinearProgress
│ │ └── CustomLinearProgress.jsx
│ ├── CustomTabs
│ │ └── CustomTabs.jsx
│ ├── Footer
│ │ └── Footer.jsx
│ ├── Grid
│ │ ├── GridContainer.jsx
│ │ └── GridItem.jsx
│ ├── Header
│ │ ├── Header.jsx
│ │ └── HeaderLinks.jsx
│ ├── InfoArea
│ │ └── InfoArea.jsx
│ ├── NavPills
│ │ └── NavPills.jsx
│ ├── Pagination
│ │ └── Pagination.jsx
│ ├── Parallax
│ │ └── Parallax.jsx
│ ├── Snackbar
│ │ └── SnackbarContent.jsx
│ └── Typography
│ │ ├── Danger.jsx
│ │ ├── Info.jsx
│ │ ├── Muted.jsx
│ │ ├── Primary.jsx
│ │ ├── Quote.jsx
│ │ ├── Small.jsx
│ │ ├── Success.jsx
│ │ └── Warning.jsx
├── index.js
├── logo.svg
├── store
│ ├── actions
│ │ └── index.js
│ ├── index.js
│ ├── preloadedState.js
│ └── reducers
│ │ └── index.js
├── utils
│ └── Cookies.js
└── views
│ ├── Components
│ ├── Components.jsx
│ └── Sections
│ │ ├── SectionBasics.jsx
│ │ ├── SectionCarousel.jsx
│ │ ├── SectionCompletedExamples.jsx
│ │ ├── SectionDownload.jsx
│ │ ├── SectionExamples.jsx
│ │ ├── SectionJavascript.jsx
│ │ ├── SectionLogin.jsx
│ │ ├── SectionNavbars.jsx
│ │ ├── SectionNotifications.jsx
│ │ ├── SectionPills.jsx
│ │ ├── SectionTabs.jsx
│ │ └── SectionTypography.jsx
│ ├── LandingPage
│ ├── LandingPage.jsx
│ └── Sections
│ │ ├── ProductSection.jsx
│ │ ├── TeamSection.jsx
│ │ └── WorkSection.jsx
│ ├── LoginPage
│ └── LoginPage.jsx
│ └── ProfilePage
│ └── ProfilePage.jsx
└── yarn.lock
/.babelrc:
--------------------------------------------------------------------------------
1 | {
2 | "presets": [
3 | "@babel/env",
4 | "@babel/react"
5 | ],
6 | "plugins": [
7 | "@babel/plugin-proposal-class-properties"
8 | ]
9 | }
10 |
--------------------------------------------------------------------------------
/.eslintignore:
--------------------------------------------------------------------------------
1 | !.eslintrc.js
2 | documentation/
3 | build/
4 |
--------------------------------------------------------------------------------
/.eslintrc.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | parser: "babel-eslint",
3 | env: {
4 | es6: true,
5 | node: true,
6 | browser: true
7 | },
8 | parserOptions: {
9 | ecmaVersion: 6,
10 | sourceType: "module",
11 | ecmaFeatures: {
12 | jsx: true
13 | }
14 | },
15 | plugins: ["react"],
16 | extends: [
17 | "eslint:recommended",
18 | "plugin:react/recommended",
19 | "plugin:prettier/recommended"
20 | ]
21 | };
22 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | .DS_Store
2 | bower_components
3 | node_modules
4 | npm-debug.log
5 | build
6 | .sass-cache
--------------------------------------------------------------------------------
/LICENSE.md:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) 2018 Creative Tim
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 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # [React Material Kit](https://appseed.us/apps/material-kit)
2 |
3 | Full-Stack app with **Material Design** coded in **React**
4 |
5 |
6 |
7 | 
8 |
9 |
10 |
11 | ## Requirements
12 | - [Node.js](https://nodejs.org/) >= 6.x
13 |
14 |
15 |
16 | ## Setting up for development
17 | - clone the project: `https://github.com/app-generator/material-kit-react.git`
18 | - change directory to this project: `cd material-kit-react`
19 | - Default backend URL `http://127.0.0.1:3000`. This can be overwritten by updating the file: `src/views/LoginPage/LoginPage.jsx`
20 |
21 |
22 |
23 | ## Scripts
24 |
25 | **Install Dependencies**
26 | ```bash
27 | $ yarn
28 | ```
29 |
30 | **Start app for development**
31 | * **Linux/MacOs**:
32 | ```yarn start```
33 |
34 | * Visit [localhost:8080](http://localhost:8080) in your browser. The `default port 8080` can be overwritten by updating the `package.json`, `scripts \ start` attribute.
35 |
36 | **Production Build**
37 | * **Linux/MacOs**:
38 | `yarn build` - build the app in `build` directory
39 |
40 |
41 |
42 | ## Support
43 |
44 | For issues and features request, use **Github** or access the [support page](https://appseed.us/support) provided by **AppSeed**
45 |
46 |
47 |
48 | ---
49 | [React Material Kit](https://appseed.us/apps/material-kit) provided by **AppSeed**
50 |
--------------------------------------------------------------------------------
/bower.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "material-kit-react",
3 | "homepage": "https://github.com/creativetimofficial/material-kit-react",
4 | "authors": [
5 | "creative-tim"
6 | ],
7 | "description": "A Badass Material-UI Kit based on Material Design",
8 | "main": "dist/index.js",
9 | "keywords": [
10 | "material",
11 | "design",
12 | "material-ui",
13 | "google",
14 | "twitter"
15 | ],
16 | "license": "Creative TIM License",
17 | "ignore": [
18 | "**/.*",
19 | "node_modules",
20 | "bower_components",
21 | "test",
22 | "tests"
23 | ],
24 | "private": true
25 | }
26 |
--------------------------------------------------------------------------------
/deploy.js:
--------------------------------------------------------------------------------
1 | var FtpDeploy = require('ftp-deploy');
2 | var ftpDeploy = new FtpDeploy();
3 |
4 | var config = {
5 | user: "FTP_USER",
6 | password: "FTP_PASS",
7 | host: "FTP_HOSt",
8 | port: 21,
9 | localRoot: __dirname + '/build',
10 | remoteRoot: '/',
11 | include: ['*', '**/*'], // this would upload everything except dot files
12 | //include: ['*.php', 'dist/*'],
13 | exclude: ['dist/**/*.map'], // e.g. exclude sourcemaps - ** exclude: [] if nothing to exclude **
14 | deleteRemote: false, // delete ALL existing files at destination before uploading, if true
15 | forcePasv: false // Passive mode is forced (EPSV command is not sent)
16 | }
17 |
18 | // use with promises
19 | ftpDeploy.deploy(config)
20 | .then(res => console.log('finished:', res))
21 | .catch(err => console.log(err))
22 |
23 | // use with callback
24 | //ftpDeploy.deploy(config, function(err, res) {
25 | // if (err) console.log(err)
26 | // else console.log('finished:', res);
27 | //});
28 |
29 | ftpDeploy.on('uploading', function(data) {
30 | data.totalFilesCount; // total file count being transferred
31 | data.transferredFileCount; // number of files transferred
32 | data.filename; // partial path with filename being uploaded
33 | });
34 |
35 | ftpDeploy.on('uploaded', function(data) {
36 | console.log(data); // same data as uploading event
37 | });
38 |
39 | ftpDeploy.on('log', function(data) {
40 | console.log(data); // same data as uploading event
41 | });
42 |
43 | ftpDeploy.on('upload-error', function (data) {
44 | console.log(data.err); // data will also include filename, relativePath, and other goodies
45 | });
46 |
--------------------------------------------------------------------------------
/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "material-kit-react",
3 | "version": "1.4.0",
4 | "description": "Material Kit React. Coded by Creative Tim",
5 | "private": true,
6 | "main": "dist/index.js",
7 | "dependencies": {
8 | "@material-ui/core": "3.9.2",
9 | "@material-ui/icons": "3.0.2",
10 | "classnames": "2.2.6",
11 | "ftp-deploy": "^2.3.3",
12 | "history": "4.7.2",
13 | "jwt-decode": "^2.2.0",
14 | "moment": "2.24.0",
15 | "node-sass": "4.11.0",
16 | "nouislider": "13.1.0",
17 | "prop-types": "15.7.1",
18 | "react": "16.8.1",
19 | "react-datetime": "2.16.3",
20 | "react-dom": "16.8.1",
21 | "react-redux": "^6.0.0",
22 | "react-router-dom": "4.3.1",
23 | "react-scripts": "^2.1.8",
24 | "react-slick": "0.23.2",
25 | "react-swipeable-views": "0.13.1",
26 | "redux": "^4.0.1",
27 | "redux-devtools-extension": "^2.13.8"
28 | },
29 | "devDependencies": {
30 | "@babel/cli": "7.2.3",
31 | "@babel/plugin-proposal-class-properties": "7.3.0",
32 | "@babel/preset-env": "7.3.1",
33 | "@babel/preset-react": "7.0.0"
34 | },
35 | "optionalDependencies": {
36 | "eslint-config-prettier": "4.0.0",
37 | "eslint-plugin-prettier": "3.0.1"
38 | },
39 | "scripts": {
40 | "start": "PORT=8080 NODE_PATH=./src react-scripts start",
41 | "start_win": "react-scripts start",
42 | "build": "NODE_PATH=./src react-scripts build",
43 | "build_win": "react-scripts build",
44 | "deploy": "node deploy",
45 | "test": "react-scripts test --env=jsdom",
46 | "eject": "react-scripts eject",
47 | "lint:check": "eslint . --ext=js,jsx; exit 0",
48 | "lint:fix": "eslint . --ext=js,jsx --fix; exit 0",
49 | "install:clean": "rm -rf node_modules/ && rm -rf package-lock.json && npm install && npm start",
50 | "build-package-css": "node-sass src/assets/scss/material-kit-react.scss dist/material-kit-react.css",
51 | "build-package": "npm run build-package-css && babel src --out-dir dist",
52 | "compile-sass": "node-sass src/assets/scss/material-kit-react.scss src/assets/css/material-kit-react.css",
53 | "minify-sass": "node-sass src/assets/scss/material-kit-react.scss src/assets/css/material-kit-react.min.css --output-style compressed",
54 | "map-sass": "node-sass src/assets/scss/material-kit-react.scss src/assets/css/material-kit-react.css --source-map true"
55 | },
56 | "browserslist": [
57 | ">0.2%",
58 | "not dead",
59 | "not ie <= 11",
60 | "not op_mini all"
61 | ]
62 | }
63 |
--------------------------------------------------------------------------------
/public/apple-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/app-generator/material-kit-react/7720ea99a9dc618c7728c1bff68ce2cad85d6b31/public/apple-icon.png
--------------------------------------------------------------------------------
/public/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/app-generator/material-kit-react/7720ea99a9dc618c7728c1bff68ce2cad85d6b31/public/favicon.ico
--------------------------------------------------------------------------------
/public/googlee35aa2f2fd7b0c5b.html:
--------------------------------------------------------------------------------
1 | google-site-verification: googlee35aa2f2fd7b0c5b.html
--------------------------------------------------------------------------------
/public/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
9 |
10 |
14 |
15 |
16 |
21 |
22 |
27 |
31 |
40 |
41 | Material Kit coded in React and Express by @AppSeed.us
42 |
43 |
44 |
45 |
46 | You need to enable JavaScript to run this app.
47 |
48 |
58 |
59 |
60 |
--------------------------------------------------------------------------------
/public/manifest.json:
--------------------------------------------------------------------------------
1 | {
2 | "short_name": "React App",
3 | "name": "Create React App Sample",
4 | "icons": [
5 | {
6 | "src": "favicon.ico",
7 | "sizes": "64x64 32x32 24x24 16x16",
8 | "type": "image/x-icon"
9 | }
10 | ],
11 | "start_url": "./index.html",
12 | "display": "standalone",
13 | "theme_color": "#000000",
14 | "background_color": "#ffffff"
15 | }
16 |
--------------------------------------------------------------------------------
/public/sitemap.xml:
--------------------------------------------------------------------------------
1 |
2 |
7 |
8 |
9 |
10 | https://material-kit-react.appseed.us
11 | 1
12 | monthly
13 |
14 |
15 |
16 |
17 |
--------------------------------------------------------------------------------
/src/assets/img/apple-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/app-generator/material-kit-react/7720ea99a9dc618c7728c1bff68ce2cad85d6b31/src/assets/img/apple-icon.png
--------------------------------------------------------------------------------
/src/assets/img/bg.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/app-generator/material-kit-react/7720ea99a9dc618c7728c1bff68ce2cad85d6b31/src/assets/img/bg.jpg
--------------------------------------------------------------------------------
/src/assets/img/bg2.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/app-generator/material-kit-react/7720ea99a9dc618c7728c1bff68ce2cad85d6b31/src/assets/img/bg2.jpg
--------------------------------------------------------------------------------
/src/assets/img/bg3.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/app-generator/material-kit-react/7720ea99a9dc618c7728c1bff68ce2cad85d6b31/src/assets/img/bg3.jpg
--------------------------------------------------------------------------------
/src/assets/img/bg4.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/app-generator/material-kit-react/7720ea99a9dc618c7728c1bff68ce2cad85d6b31/src/assets/img/bg4.jpg
--------------------------------------------------------------------------------
/src/assets/img/bg7.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/app-generator/material-kit-react/7720ea99a9dc618c7728c1bff68ce2cad85d6b31/src/assets/img/bg7.jpg
--------------------------------------------------------------------------------
/src/assets/img/examples/clem-onojegaw.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/app-generator/material-kit-react/7720ea99a9dc618c7728c1bff68ce2cad85d6b31/src/assets/img/examples/clem-onojegaw.jpg
--------------------------------------------------------------------------------
/src/assets/img/examples/clem-onojeghuo.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/app-generator/material-kit-react/7720ea99a9dc618c7728c1bff68ce2cad85d6b31/src/assets/img/examples/clem-onojeghuo.jpg
--------------------------------------------------------------------------------
/src/assets/img/examples/cynthia-del-rio.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/app-generator/material-kit-react/7720ea99a9dc618c7728c1bff68ce2cad85d6b31/src/assets/img/examples/cynthia-del-rio.jpg
--------------------------------------------------------------------------------
/src/assets/img/examples/mariya-georgieva.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/app-generator/material-kit-react/7720ea99a9dc618c7728c1bff68ce2cad85d6b31/src/assets/img/examples/mariya-georgieva.jpg
--------------------------------------------------------------------------------
/src/assets/img/examples/olu-eletu.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/app-generator/material-kit-react/7720ea99a9dc618c7728c1bff68ce2cad85d6b31/src/assets/img/examples/olu-eletu.jpg
--------------------------------------------------------------------------------
/src/assets/img/examples/studio-1.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/app-generator/material-kit-react/7720ea99a9dc618c7728c1bff68ce2cad85d6b31/src/assets/img/examples/studio-1.jpg
--------------------------------------------------------------------------------
/src/assets/img/examples/studio-2.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/app-generator/material-kit-react/7720ea99a9dc618c7728c1bff68ce2cad85d6b31/src/assets/img/examples/studio-2.jpg
--------------------------------------------------------------------------------
/src/assets/img/examples/studio-3.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/app-generator/material-kit-react/7720ea99a9dc618c7728c1bff68ce2cad85d6b31/src/assets/img/examples/studio-3.jpg
--------------------------------------------------------------------------------
/src/assets/img/examples/studio-4.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/app-generator/material-kit-react/7720ea99a9dc618c7728c1bff68ce2cad85d6b31/src/assets/img/examples/studio-4.jpg
--------------------------------------------------------------------------------
/src/assets/img/examples/studio-5.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/app-generator/material-kit-react/7720ea99a9dc618c7728c1bff68ce2cad85d6b31/src/assets/img/examples/studio-5.jpg
--------------------------------------------------------------------------------
/src/assets/img/faces/avatar.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/app-generator/material-kit-react/7720ea99a9dc618c7728c1bff68ce2cad85d6b31/src/assets/img/faces/avatar.jpg
--------------------------------------------------------------------------------
/src/assets/img/faces/camp.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/app-generator/material-kit-react/7720ea99a9dc618c7728c1bff68ce2cad85d6b31/src/assets/img/faces/camp.jpg
--------------------------------------------------------------------------------
/src/assets/img/faces/card-profile1-square.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/app-generator/material-kit-react/7720ea99a9dc618c7728c1bff68ce2cad85d6b31/src/assets/img/faces/card-profile1-square.jpg
--------------------------------------------------------------------------------
/src/assets/img/faces/card-profile2-square.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/app-generator/material-kit-react/7720ea99a9dc618c7728c1bff68ce2cad85d6b31/src/assets/img/faces/card-profile2-square.jpg
--------------------------------------------------------------------------------
/src/assets/img/faces/card-profile4-square.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/app-generator/material-kit-react/7720ea99a9dc618c7728c1bff68ce2cad85d6b31/src/assets/img/faces/card-profile4-square.jpg
--------------------------------------------------------------------------------
/src/assets/img/faces/card-profile5-square.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/app-generator/material-kit-react/7720ea99a9dc618c7728c1bff68ce2cad85d6b31/src/assets/img/faces/card-profile5-square.jpg
--------------------------------------------------------------------------------
/src/assets/img/faces/card-profile6-square.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/app-generator/material-kit-react/7720ea99a9dc618c7728c1bff68ce2cad85d6b31/src/assets/img/faces/card-profile6-square.jpg
--------------------------------------------------------------------------------
/src/assets/img/faces/christian.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/app-generator/material-kit-react/7720ea99a9dc618c7728c1bff68ce2cad85d6b31/src/assets/img/faces/christian.jpg
--------------------------------------------------------------------------------
/src/assets/img/faces/kendall.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/app-generator/material-kit-react/7720ea99a9dc618c7728c1bff68ce2cad85d6b31/src/assets/img/faces/kendall.jpg
--------------------------------------------------------------------------------
/src/assets/img/faces/marc.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/app-generator/material-kit-react/7720ea99a9dc618c7728c1bff68ce2cad85d6b31/src/assets/img/faces/marc.jpg
--------------------------------------------------------------------------------
/src/assets/img/favicon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/app-generator/material-kit-react/7720ea99a9dc618c7728c1bff68ce2cad85d6b31/src/assets/img/favicon.png
--------------------------------------------------------------------------------
/src/assets/img/landing-bg.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/app-generator/material-kit-react/7720ea99a9dc618c7728c1bff68ce2cad85d6b31/src/assets/img/landing-bg.jpg
--------------------------------------------------------------------------------
/src/assets/img/landing.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/app-generator/material-kit-react/7720ea99a9dc618c7728c1bff68ce2cad85d6b31/src/assets/img/landing.jpg
--------------------------------------------------------------------------------
/src/assets/img/profile-bg.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/app-generator/material-kit-react/7720ea99a9dc618c7728c1bff68ce2cad85d6b31/src/assets/img/profile-bg.jpg
--------------------------------------------------------------------------------
/src/assets/img/profile.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/app-generator/material-kit-react/7720ea99a9dc618c7728c1bff68ce2cad85d6b31/src/assets/img/profile.jpg
--------------------------------------------------------------------------------
/src/assets/img/sign.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/app-generator/material-kit-react/7720ea99a9dc618c7728c1bff68ce2cad85d6b31/src/assets/img/sign.jpg
--------------------------------------------------------------------------------
/src/assets/jss/material-kit-react.jsx:
--------------------------------------------------------------------------------
1 | /*!
2 |
3 | =========================================================
4 | * Material Kit React - v1.4.0 based on Material Kit - v2.0.2
5 | =========================================================
6 |
7 | * Product Page: https://www.creative-tim.com/product/material-kit-react
8 | * Copyright 2018 Creative Tim (https://www.creative-tim.com)
9 | * Licensed under MIT (https://github.com/creativetimofficial/material-kit-react/blob/master/LICENSE.md)
10 |
11 | =========================================================
12 |
13 | * The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
14 |
15 | */
16 |
17 | // ##############################
18 | // // // Variables - Styles that are used on more than one component
19 | // #############################
20 |
21 | const drawerWidth = 260;
22 |
23 | const transition = {
24 | transition: "all 0.33s cubic-bezier(0.685, 0.0473, 0.346, 1)"
25 | };
26 |
27 | const conatinerFluid = {
28 | paddingRight: "15px",
29 | paddingLeft: "15px",
30 | marginRight: "auto",
31 | marginLeft: "auto",
32 | width: "100%"
33 | };
34 | const container = {
35 | ...conatinerFluid,
36 | "@media (min-width: 576px)": {
37 | maxWidth: "540px"
38 | },
39 | "@media (min-width: 768px)": {
40 | maxWidth: "720px"
41 | },
42 | "@media (min-width: 992px)": {
43 | maxWidth: "960px"
44 | },
45 | "@media (min-width: 1200px)": {
46 | maxWidth: "1140px"
47 | }
48 | };
49 |
50 | const boxShadow = {
51 | boxShadow:
52 | "0 10px 30px -12px rgba(0, 0, 0, 0.42), 0 4px 25px 0px rgba(0, 0, 0, 0.12), 0 8px 10px -5px rgba(0, 0, 0, 0.2)"
53 | };
54 |
55 | const card = {
56 | display: "inline-block",
57 | position: "relative",
58 | width: "100%",
59 | margin: "25px 0",
60 | boxShadow: "0 1px 4px 0 rgba(0, 0, 0, 0.14)",
61 | borderRadius: "3px",
62 | color: "rgba(0, 0, 0, 0.87)",
63 | background: "#fff"
64 | };
65 |
66 | const defaultFont = {
67 | fontFamily: '"Roboto", "Helvetica", "Arial", sans-serif',
68 | fontWeight: "300",
69 | lineHeight: "1.5em"
70 | };
71 |
72 | const primaryColor = "#9c27b0";
73 | const warningColor = "#ff9800";
74 | const dangerColor = "#f44336";
75 | const successColor = "#4caf50";
76 | const infoColor = "#00acc1";
77 | const roseColor = "#e91e63";
78 | const grayColor = "#999999";
79 |
80 | const primaryBoxShadow = {
81 | boxShadow:
82 | "0 12px 20px -10px rgba(156, 39, 176, 0.28), 0 4px 20px 0px rgba(0, 0, 0, 0.12), 0 7px 8px -5px rgba(156, 39, 176, 0.2)"
83 | };
84 | const infoBoxShadow = {
85 | boxShadow:
86 | "0 12px 20px -10px rgba(0, 188, 212, 0.28), 0 4px 20px 0px rgba(0, 0, 0, 0.12), 0 7px 8px -5px rgba(0, 188, 212, 0.2)"
87 | };
88 | const successBoxShadow = {
89 | boxShadow:
90 | "0 12px 20px -10px rgba(76, 175, 80, 0.28), 0 4px 20px 0px rgba(0, 0, 0, 0.12), 0 7px 8px -5px rgba(76, 175, 80, 0.2)"
91 | };
92 | const warningBoxShadow = {
93 | boxShadow:
94 | "0 12px 20px -10px rgba(255, 152, 0, 0.28), 0 4px 20px 0px rgba(0, 0, 0, 0.12), 0 7px 8px -5px rgba(255, 152, 0, 0.2)"
95 | };
96 | const dangerBoxShadow = {
97 | boxShadow:
98 | "0 12px 20px -10px rgba(244, 67, 54, 0.28), 0 4px 20px 0px rgba(0, 0, 0, 0.12), 0 7px 8px -5px rgba(244, 67, 54, 0.2)"
99 | };
100 | const roseBoxShadow = {
101 | boxShadow:
102 | "0 4px 20px 0px rgba(0, 0, 0, 0.14), 0 7px 10px -5px rgba(233, 30, 99, 0.4)"
103 | };
104 |
105 | const warningCardHeader = {
106 | color: "#fff",
107 | background: "linear-gradient(60deg, #ffa726, #fb8c00)",
108 | ...warningBoxShadow
109 | };
110 | const successCardHeader = {
111 | color: "#fff",
112 | background: "linear-gradient(60deg, #66bb6a, #43a047)",
113 | ...successBoxShadow
114 | };
115 | const dangerCardHeader = {
116 | color: "#fff",
117 | background: "linear-gradient(60deg, #ef5350, #e53935)",
118 | ...dangerBoxShadow
119 | };
120 | const infoCardHeader = {
121 | color: "#fff",
122 | background: "linear-gradient(60deg, #26c6da, #00acc1)",
123 | ...infoBoxShadow
124 | };
125 | const primaryCardHeader = {
126 | color: "#fff",
127 | background: "linear-gradient(60deg, #ab47bc, #8e24aa)",
128 | ...primaryBoxShadow
129 | };
130 | const roseCardHeader = {
131 | color: "#fff",
132 | background: "linear-gradient(60deg, #ec407a, #d81b60)",
133 | ...roseBoxShadow
134 | };
135 | const cardActions = {
136 | margin: "0 20px 10px",
137 | paddingTop: "10px",
138 | borderTop: "1px solid #eeeeee",
139 | height: "auto",
140 | ...defaultFont
141 | };
142 |
143 | const cardHeader = {
144 | margin: "-30px 15px 0",
145 | borderRadius: "3px",
146 | padding: "15px"
147 | };
148 |
149 | const defaultBoxShadow = {
150 | border: "0",
151 | borderRadius: "3px",
152 | boxShadow:
153 | "0 10px 20px -12px rgba(0, 0, 0, 0.42), 0 3px 20px 0px rgba(0, 0, 0, 0.12), 0 8px 10px -5px rgba(0, 0, 0, 0.2)",
154 | padding: "10px 0",
155 | transition: "all 150ms ease 0s"
156 | };
157 |
158 | const title = {
159 | color: "#3C4858",
160 | margin: "1.75rem 0 0.875rem",
161 | textDecoration: "none",
162 | fontWeight: "700",
163 | fontFamily: `"Roboto Slab", "Times New Roman", serif`
164 | };
165 |
166 | const cardTitle = {
167 | ...title,
168 | marginTop: ".625rem"
169 | };
170 |
171 | const cardLink = {
172 | "& + $cardLink": {
173 | marginLeft: "1.25rem"
174 | }
175 | };
176 |
177 | const cardSubtitle = {
178 | marginBottom: "0",
179 | marginTop: "-.375rem"
180 | };
181 |
182 | export {
183 | //variables
184 | drawerWidth,
185 | transition,
186 | container,
187 | conatinerFluid,
188 | boxShadow,
189 | card,
190 | defaultFont,
191 | primaryColor,
192 | warningColor,
193 | dangerColor,
194 | successColor,
195 | infoColor,
196 | roseColor,
197 | grayColor,
198 | primaryBoxShadow,
199 | infoBoxShadow,
200 | successBoxShadow,
201 | warningBoxShadow,
202 | dangerBoxShadow,
203 | roseBoxShadow,
204 | warningCardHeader,
205 | successCardHeader,
206 | dangerCardHeader,
207 | infoCardHeader,
208 | primaryCardHeader,
209 | roseCardHeader,
210 | cardActions,
211 | cardHeader,
212 | defaultBoxShadow,
213 | title,
214 | cardTitle,
215 | cardLink,
216 | cardSubtitle
217 | };
218 |
--------------------------------------------------------------------------------
/src/assets/jss/material-kit-react/components/badgeStyle.jsx:
--------------------------------------------------------------------------------
1 | import {
2 | primaryColor,
3 | warningColor,
4 | dangerColor,
5 | successColor,
6 | infoColor,
7 | roseColor
8 | } from "assets/jss/material-kit-react.jsx";
9 |
10 | const badgeStyle = {
11 | badge: {
12 | marginRight: "3px",
13 | borderRadius: "12px",
14 | padding: "5px 12px",
15 | textTransform: "uppercase",
16 | fontSize: "10px",
17 | fontWeight: "500",
18 | lineHeight: "1",
19 | color: "#fff",
20 | textAlign: "center",
21 | whiteSpace: "nowrap",
22 | verticalAlign: "baseline",
23 | display: "inline-block"
24 | },
25 | primary: {
26 | backgroundColor: primaryColor
27 | },
28 | warning: {
29 | backgroundColor: warningColor
30 | },
31 | danger: {
32 | backgroundColor: dangerColor
33 | },
34 | success: {
35 | backgroundColor: successColor
36 | },
37 | info: {
38 | backgroundColor: infoColor
39 | },
40 | rose: {
41 | backgroundColor: roseColor
42 | },
43 | gray: {
44 | backgroundColor: "#6c757d"
45 | }
46 | };
47 |
48 | export default badgeStyle;
49 |
--------------------------------------------------------------------------------
/src/assets/jss/material-kit-react/components/cardBodyStyle.jsx:
--------------------------------------------------------------------------------
1 | const cardBodyStyle = {
2 | cardBody: {
3 | padding: "0.9375rem 1.875rem",
4 | flex: "1 1 auto"
5 | }
6 | };
7 |
8 | export default cardBodyStyle;
9 |
--------------------------------------------------------------------------------
/src/assets/jss/material-kit-react/components/cardFooterStyle.jsx:
--------------------------------------------------------------------------------
1 | const cardFooterStyle = {
2 | cardFooter: {
3 | display: "flex",
4 | alignItems: "center",
5 | backgroundColor: "transparent",
6 | padding: "0.9375rem 1.875rem"
7 | }
8 | };
9 |
10 | export default cardFooterStyle;
11 |
--------------------------------------------------------------------------------
/src/assets/jss/material-kit-react/components/cardHeaderStyle.jsx:
--------------------------------------------------------------------------------
1 | import {
2 | warningCardHeader,
3 | successCardHeader,
4 | dangerCardHeader,
5 | infoCardHeader,
6 | primaryCardHeader
7 | } from "assets/jss/material-kit-react.jsx";
8 | const cardHeaderStyle = {
9 | cardHeader: {
10 | borderRadius: "3px",
11 | padding: "1rem 15px",
12 | marginLeft: "15px",
13 | marginRight: "15px",
14 | marginTop: "-30px",
15 | border: "0",
16 | marginBottom: "0"
17 | },
18 | cardHeaderPlain: {
19 | marginLeft: "0px",
20 | marginRight: "0px"
21 | },
22 | warningCardHeader,
23 | successCardHeader,
24 | dangerCardHeader,
25 | infoCardHeader,
26 | primaryCardHeader
27 | };
28 |
29 | export default cardHeaderStyle;
30 |
--------------------------------------------------------------------------------
/src/assets/jss/material-kit-react/components/cardStyle.jsx:
--------------------------------------------------------------------------------
1 | const cardStyle = {
2 | card: {
3 | border: "0",
4 | marginBottom: "30px",
5 | marginTop: "30px",
6 | borderRadius: "6px",
7 | color: "rgba(0, 0, 0, 0.87)",
8 | background: "#fff",
9 | width: "100%",
10 | boxShadow:
11 | "0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 3px 1px -2px rgba(0, 0, 0, 0.2), 0 1px 5px 0 rgba(0, 0, 0, 0.12)",
12 | position: "relative",
13 | display: "flex",
14 | flexDirection: "column",
15 | minWidth: "0",
16 | wordWrap: "break-word",
17 | fontSize: ".875rem",
18 | transition: "all 300ms linear"
19 | },
20 | cardPlain: {
21 | background: "transparent",
22 | boxShadow: "none"
23 | },
24 | cardCarousel: {
25 | overflow: "hidden"
26 | }
27 | };
28 |
29 | export default cardStyle;
30 |
--------------------------------------------------------------------------------
/src/assets/jss/material-kit-react/components/customDropdownStyle.jsx:
--------------------------------------------------------------------------------
1 | import {
2 | defaultFont,
3 | primaryColor,
4 | primaryBoxShadow,
5 | infoColor,
6 | infoBoxShadow,
7 | successColor,
8 | successBoxShadow,
9 | warningColor,
10 | warningBoxShadow,
11 | dangerColor,
12 | dangerBoxShadow,
13 | roseColor,
14 | roseBoxShadow
15 | } from "assets/jss/material-kit-react.jsx";
16 |
17 | const customDropdownStyle = theme => ({
18 | popperClose: {
19 | pointerEvents: "none"
20 | },
21 | dropdown: {
22 | borderRadius: "3px",
23 | border: "0",
24 | boxShadow: "0 2px 5px 0 rgba(0, 0, 0, 0.26)",
25 | top: "100%",
26 | zIndex: "1000",
27 | minWidth: "160px",
28 | padding: "5px 0",
29 | margin: "2px 0 0",
30 | fontSize: "14px",
31 | textAlign: "left",
32 | listStyle: "none",
33 | backgroundColor: "#fff",
34 | backgroundClip: "padding-box"
35 | },
36 | menuList: {
37 | padding: "0"
38 | },
39 | popperResponsive: {
40 | zIndex: "1200",
41 | [theme.breakpoints.down("sm")]: {
42 | zIndex: "1640",
43 | position: "static",
44 | float: "none",
45 | width: "auto",
46 | marginTop: "0",
47 | backgroundColor: "transparent",
48 | border: "0",
49 | boxShadow: "none",
50 | color: "black"
51 | }
52 | },
53 | dropdownItem: {
54 | ...defaultFont,
55 | fontSize: "13px",
56 | padding: "10px 20px",
57 | margin: "0 5px",
58 | borderRadius: "2px",
59 | position: "relative",
60 | transition: "all 150ms linear",
61 | display: "block",
62 | clear: "both",
63 | fontWeight: "400",
64 | height: "fit-content",
65 | color: "#333",
66 | whiteSpace: "nowrap"
67 | },
68 | blackHover: {
69 | "&:hover": {
70 | boxShadow:
71 | "0 4px 20px 0px rgba(0, 0, 0, 0.14), 0 7px 10px -5px rgba(33, 33, 33, 0.4)",
72 | backgroundColor: "#212121",
73 | color: "#fff"
74 | }
75 | },
76 | primaryHover: {
77 | "&:hover": {
78 | backgroundColor: primaryColor,
79 | color: "#FFFFFF",
80 | ...primaryBoxShadow
81 | }
82 | },
83 | infoHover: {
84 | "&:hover": {
85 | backgroundColor: infoColor,
86 | color: "#FFFFFF",
87 | ...infoBoxShadow
88 | }
89 | },
90 | successHover: {
91 | "&:hover": {
92 | backgroundColor: successColor,
93 | color: "#FFFFFF",
94 | ...successBoxShadow
95 | }
96 | },
97 | warningHover: {
98 | "&:hover": {
99 | backgroundColor: warningColor,
100 | color: "#FFFFFF",
101 | ...warningBoxShadow
102 | }
103 | },
104 | dangerHover: {
105 | "&:hover": {
106 | backgroundColor: dangerColor,
107 | color: "#FFFFFF",
108 | ...dangerBoxShadow
109 | }
110 | },
111 | roseHover: {
112 | "&:hover": {
113 | backgroundColor: roseColor,
114 | color: "#FFFFFF",
115 | ...roseBoxShadow
116 | }
117 | },
118 | dropdownItemRTL: {
119 | textAlign: "right"
120 | },
121 | dropdownDividerItem: {
122 | margin: "5px 0",
123 | backgroundColor: "rgba(0, 0, 0, 0.12)",
124 | height: "1px",
125 | overflow: "hidden"
126 | },
127 | buttonIcon: {
128 | width: "20px",
129 | height: "20px"
130 | },
131 | caret: {
132 | transition: "all 150ms ease-in",
133 | display: "inline-block",
134 | width: "0",
135 | height: "0",
136 | marginLeft: "4px",
137 | verticalAlign: "middle",
138 | borderTop: "4px solid",
139 | borderRight: "4px solid transparent",
140 | borderLeft: "4px solid transparent"
141 | },
142 | caretActive: {
143 | transform: "rotate(180deg)"
144 | },
145 | caretRTL: {
146 | marginRight: "4px"
147 | },
148 | dropdownHeader: {
149 | display: "block",
150 | padding: "0.1875rem 1.25rem",
151 | fontSize: "0.75rem",
152 | lineHeight: "1.428571",
153 | color: "#777",
154 | whiteSpace: "nowrap",
155 | fontWeight: "inherit",
156 | marginTop: "10px",
157 | "&:hover,&:focus": {
158 | backgroundColor: "transparent",
159 | cursor: "auto"
160 | }
161 | },
162 | noLiPadding: {
163 | padding: "0"
164 | }
165 | });
166 |
167 | export default customDropdownStyle;
168 |
--------------------------------------------------------------------------------
/src/assets/jss/material-kit-react/components/customInputStyle.jsx:
--------------------------------------------------------------------------------
1 | import {
2 | primaryColor,
3 | dangerColor,
4 | successColor,
5 | defaultFont
6 | } from "assets/jss/material-kit-react.jsx";
7 |
8 | const customInputStyle = {
9 | disabled: {
10 | "&:before": {
11 | borderColor: "transparent !important"
12 | }
13 | },
14 | underline: {
15 | "&:hover:not($disabled):before,&:before": {
16 | borderColor: "#D2D2D2 !important",
17 | borderWidth: "1px !important"
18 | },
19 | "&:after": {
20 | borderColor: primaryColor
21 | }
22 | },
23 | underlineError: {
24 | "&:after": {
25 | borderColor: dangerColor
26 | }
27 | },
28 | underlineSuccess: {
29 | "&:after": {
30 | borderColor: successColor
31 | }
32 | },
33 | whiteUnderline: {
34 | "&:hover:not($disabled):before,&:before": {
35 | borderColor: "#FFFFFF"
36 | },
37 | "&:after": {
38 | borderColor: "#FFFFFF"
39 | }
40 | },
41 | labelRoot: {
42 | ...defaultFont,
43 | color: "#AAAAAA !important",
44 | fontWeight: "400",
45 | fontSize: "14px",
46 | lineHeight: "1.42857",
47 | top: "10px",
48 | "& + $underline": {
49 | marginTop: "0px"
50 | }
51 | },
52 | labelRootError: {
53 | color: dangerColor + " !important"
54 | },
55 | labelRootSuccess: {
56 | color: successColor + " !important"
57 | },
58 | formControl: {
59 | margin: "0 0 17px 0",
60 | paddingTop: "27px",
61 | position: "relative",
62 | "& svg,& .fab,& .far,& .fal,& .fas,& .material-icons": {
63 | color: "#495057"
64 | }
65 | },
66 | input: {
67 | color: "#495057",
68 | "&,&::placeholder": {
69 | fontSize: "14px",
70 | fontFamily: '"Roboto", "Helvetica", "Arial", sans-serif',
71 | fontWeight: "400",
72 | lineHeight: "1.42857",
73 | opacity: "1"
74 | },
75 | "&::placeholder": {
76 | color: "#AAAAAA"
77 | }
78 | },
79 | whiteInput: {
80 | "&,&::placeholder": {
81 | color: "#FFFFFF",
82 | opacity: "1"
83 | }
84 | }
85 | };
86 |
87 | export default customInputStyle;
88 |
--------------------------------------------------------------------------------
/src/assets/jss/material-kit-react/components/customLinearProgressStyle.jsx:
--------------------------------------------------------------------------------
1 | import {
2 | primaryColor,
3 | warningColor,
4 | dangerColor,
5 | successColor,
6 | infoColor,
7 | roseColor,
8 | grayColor
9 | } from "assets/jss/material-kit-react.jsx";
10 |
11 | const customLinearProgressStyle = {
12 | root: {
13 | height: "4px",
14 | marginBottom: "20px",
15 | overflow: "hidden"
16 | },
17 | bar: {
18 | height: "4px"
19 | },
20 | primary: {
21 | backgroundColor: primaryColor
22 | },
23 | warning: {
24 | backgroundColor: warningColor
25 | },
26 | danger: {
27 | backgroundColor: dangerColor
28 | },
29 | success: {
30 | backgroundColor: successColor
31 | },
32 | info: {
33 | backgroundColor: infoColor
34 | },
35 | rose: {
36 | backgroundColor: roseColor
37 | },
38 | gray: {
39 | backgroundColor: grayColor
40 | },
41 | primaryBackground: {
42 | background: "rgba(156, 39, 176, 0.2)"
43 | },
44 | warningBackground: {
45 | background: "rgba(255, 152, 0, 0.2)"
46 | },
47 | dangerBackground: {
48 | background: "rgba(244, 67, 54, 0.2)"
49 | },
50 | successBackground: {
51 | background: "rgba(76, 175, 80, 0.2)"
52 | },
53 | infoBackground: {
54 | background: "rgba(0, 188, 212, 0.2)"
55 | },
56 | roseBackground: {
57 | background: "rgba(233, 30, 99, 0.2)"
58 | },
59 | grayBackground: {
60 | background: "rgba(221, 221, 221, 0.2)"
61 | }
62 | };
63 |
64 | export default customLinearProgressStyle;
65 |
--------------------------------------------------------------------------------
/src/assets/jss/material-kit-react/components/customTabsStyle.jsx:
--------------------------------------------------------------------------------
1 | const customTabsStyle = {
2 | cardTitle: {
3 | float: "left",
4 | padding: "10px 10px 10px 0px",
5 | lineHeight: "24px"
6 | },
7 | cardTitleRTL: {
8 | float: "right",
9 | padding: "10px 0px 10px 10px !important"
10 | },
11 | displayNone: {
12 | display: "none !important"
13 | },
14 | tabsRoot: {
15 | minHeight: "unset !important"
16 | },
17 | tabRootButton: {
18 | minHeight: "unset !important",
19 | minWidth: "unset !important",
20 | width: "unset !important",
21 | height: "unset !important",
22 | maxWidth: "unset !important",
23 | maxHeight: "unset !important",
24 | padding: "10px 15px",
25 | borderRadius: "3px",
26 | lineHeight: "24px",
27 | border: "0 !important",
28 | color: "#fff !important",
29 | marginLeft: "4px",
30 | "&:last-child": {
31 | marginLeft: "0px"
32 | }
33 | },
34 | tabLabelContainer: {
35 | padding: "0px"
36 | },
37 | tabLabel: {
38 | fontWeight: "500",
39 | fontSize: "12px"
40 | },
41 | tabSelected: {
42 | backgroundColor: "rgba(255, 255, 255, 0.2)",
43 | transition: "0.2s background-color 0.1s"
44 | },
45 | tabWrapper: {
46 | display: "inline-block",
47 | minHeight: "unset !important",
48 | minWidth: "unset !important",
49 | width: "unset !important",
50 | height: "unset !important",
51 | maxWidth: "unset !important",
52 | maxHeight: "unset !important",
53 | "& > svg": {
54 | verticalAlign: "middle",
55 | margin: "-1px 5px 0 0"
56 | }
57 | }
58 | };
59 |
60 | export default customTabsStyle;
61 |
--------------------------------------------------------------------------------
/src/assets/jss/material-kit-react/components/footerStyle.jsx:
--------------------------------------------------------------------------------
1 | import { container, primaryColor } from "assets/jss/material-kit-react.jsx";
2 |
3 | const footerStyle = {
4 | block: {
5 | color: "inherit",
6 | padding: "0.9375rem",
7 | fontWeight: "500",
8 | fontSize: "12px",
9 | textTransform: "uppercase",
10 | borderRadius: "3px",
11 | textDecoration: "none",
12 | position: "relative",
13 | display: "block"
14 | },
15 | left: {
16 | float: "left!important",
17 | display: "block"
18 | },
19 | right: {
20 | padding: "15px 0",
21 | margin: "0",
22 | float: "right!important"
23 | },
24 | footer: {
25 | padding: "0.9375rem 0",
26 | textAlign: "center",
27 | display: "flex",
28 | zIndex: "2",
29 | position: "relative"
30 | },
31 | a: {
32 | color: primaryColor,
33 | textDecoration: "none",
34 | backgroundColor: "transparent"
35 | },
36 | footerWhiteFont: {
37 | "&,&:hover,&:focus": {
38 | color: "#FFFFFF"
39 | }
40 | },
41 | container,
42 | list: {
43 | marginBottom: "0",
44 | padding: "0",
45 | marginTop: "0"
46 | },
47 | inlineBlock: {
48 | display: "inline-block",
49 | padding: "0px",
50 | width: "auto"
51 | },
52 | icon: {
53 | width: "18px",
54 | height: "18px",
55 | position: "relative",
56 | top: "3px"
57 | }
58 | };
59 | export default footerStyle;
60 |
--------------------------------------------------------------------------------
/src/assets/jss/material-kit-react/components/headerLinksStyle.jsx:
--------------------------------------------------------------------------------
1 | import { defaultFont } from "assets/jss/material-kit-react.jsx";
2 |
3 | import tooltip from "assets/jss/material-kit-react/tooltipsStyle.jsx";
4 |
5 | const headerLinksStyle = theme => ({
6 | list: {
7 | ...defaultFont,
8 | fontSize: "14px",
9 | margin: 0,
10 | paddingLeft: "0",
11 | listStyle: "none",
12 | paddingTop: "0",
13 | paddingBottom: "0",
14 | color: "inherit"
15 | },
16 | listItem: {
17 | float: "left",
18 | color: "inherit",
19 | position: "relative",
20 | display: "block",
21 | width: "auto",
22 | margin: "0",
23 | padding: "0",
24 | [theme.breakpoints.down("sm")]: {
25 | width: "100%",
26 | "&:after": {
27 | width: "calc(100% - 30px)",
28 | content: '""',
29 | display: "block",
30 | height: "1px",
31 | marginLeft: "15px",
32 | backgroundColor: "#e5e5e5"
33 | }
34 | }
35 | },
36 | listItemText: {
37 | padding: "0 !important"
38 | },
39 | navLink: {
40 | color: "inherit",
41 | position: "relative",
42 | padding: "0.9375rem",
43 | fontWeight: "400",
44 | fontSize: "12px",
45 | textTransform: "uppercase",
46 | borderRadius: "3px",
47 | lineHeight: "20px",
48 | textDecoration: "none",
49 | margin: "0px",
50 | display: "inline-flex",
51 | "&:hover,&:focus": {
52 | color: "inherit",
53 | background: "rgba(200, 200, 200, 0.2)"
54 | },
55 | [theme.breakpoints.down("sm")]: {
56 | width: "calc(100% - 30px)",
57 | marginLeft: "15px",
58 | marginBottom: "8px",
59 | marginTop: "8px",
60 | textAlign: "left",
61 | "& > span:first-child": {
62 | justifyContent: "flex-start"
63 | }
64 | }
65 | },
66 | notificationNavLink: {
67 | color: "inherit",
68 | padding: "0.9375rem",
69 | fontWeight: "400",
70 | fontSize: "12px",
71 | textTransform: "uppercase",
72 | lineHeight: "20px",
73 | textDecoration: "none",
74 | margin: "0px",
75 | display: "inline-flex",
76 | top: "4px"
77 | },
78 | registerNavLink: {
79 | top: "3px",
80 | position: "relative",
81 | fontWeight: "400",
82 | fontSize: "12px",
83 | textTransform: "uppercase",
84 | lineHeight: "20px",
85 | textDecoration: "none",
86 | margin: "0px",
87 | display: "inline-flex"
88 | },
89 | navLinkActive: {
90 | color: "inherit",
91 | backgroundColor: "rgba(255, 255, 255, 0.1)"
92 | },
93 | icons: {
94 | width: "20px",
95 | height: "20px",
96 | marginRight: "3px"
97 | },
98 | socialIcons: {
99 | position: "relative",
100 | fontSize: "20px !important",
101 | marginRight: "4px"
102 | },
103 | dropdownLink: {
104 | "&,&:hover,&:focus": {
105 | color: "inherit",
106 | textDecoration: "none",
107 | display: "block",
108 | padding: "10px 20px"
109 | }
110 | },
111 | ...tooltip,
112 | marginRight5: {
113 | marginRight: "5px"
114 | }
115 | });
116 |
117 | export default headerLinksStyle;
118 |
--------------------------------------------------------------------------------
/src/assets/jss/material-kit-react/components/headerStyle.jsx:
--------------------------------------------------------------------------------
1 | import {
2 | container,
3 | defaultFont,
4 | primaryColor,
5 | infoColor,
6 | successColor,
7 | warningColor,
8 | dangerColor,
9 | roseColor,
10 | transition,
11 | boxShadow,
12 | drawerWidth
13 | } from "assets/jss/material-kit-react.jsx";
14 |
15 | const headerStyle = {
16 | appBar: {
17 | display: "flex",
18 | border: "0",
19 | borderRadius: "3px",
20 | padding: "0.625rem 0",
21 | marginBottom: "20px",
22 | color: "#555",
23 | width: "100%",
24 | backgroundColor: "#fff",
25 | boxShadow:
26 | "0 4px 18px 0px rgba(0, 0, 0, 0.12), 0 7px 10px -5px rgba(0, 0, 0, 0.15)",
27 | transition: "all 150ms ease 0s",
28 | alignItems: "center",
29 | flexFlow: "row nowrap",
30 | justifyContent: "flex-start",
31 | position: "relative",
32 | zIndex: "unset"
33 | },
34 | absolute: {
35 | position: "absolute",
36 | zIndex: "1100"
37 | },
38 | fixed: {
39 | position: "fixed",
40 | zIndex: "1100"
41 | },
42 | container: {
43 | ...container,
44 | minHeight: "50px",
45 | flex: "1",
46 | alignItems: "center",
47 | justifyContent: "space-between",
48 | display: "flex",
49 | flexWrap: "nowrap"
50 | },
51 | flex: {
52 | flex: 1
53 | },
54 | title: {
55 | ...defaultFont,
56 | lineHeight: "30px",
57 | fontSize: "18px",
58 | borderRadius: "3px",
59 | textTransform: "none",
60 | color: "inherit",
61 | padding: "8px 16px",
62 | "&:hover,&:focus": {
63 | color: "inherit",
64 | background: "transparent"
65 | }
66 | },
67 | appResponsive: {
68 | margin: "20px 10px"
69 | },
70 | primary: {
71 | backgroundColor: primaryColor,
72 | color: "#FFFFFF",
73 | boxShadow:
74 | "0 4px 20px 0px rgba(0, 0, 0, 0.14), 0 7px 12px -5px rgba(156, 39, 176, 0.46)"
75 | },
76 | info: {
77 | backgroundColor: infoColor,
78 | color: "#FFFFFF",
79 | boxShadow:
80 | "0 4px 20px 0px rgba(0, 0, 0, 0.14), 0 7px 12px -5px rgba(0, 188, 212, 0.46)"
81 | },
82 | success: {
83 | backgroundColor: successColor,
84 | color: "#FFFFFF",
85 | boxShadow:
86 | "0 4px 20px 0px rgba(0, 0, 0, 0.14), 0 7px 12px -5px rgba(76, 175, 80, 0.46)"
87 | },
88 | warning: {
89 | backgroundColor: warningColor,
90 | color: "#FFFFFF",
91 | boxShadow:
92 | "0 4px 20px 0px rgba(0, 0, 0, 0.14), 0 7px 12px -5px rgba(255, 152, 0, 0.46)"
93 | },
94 | danger: {
95 | backgroundColor: dangerColor,
96 | color: "#FFFFFF",
97 | boxShadow:
98 | "0 4px 20px 0px rgba(0, 0, 0, 0.14), 0 7px 12px -5px rgba(244, 67, 54, 0.46)"
99 | },
100 | rose: {
101 | backgroundColor: roseColor,
102 | color: "#FFFFFF",
103 | boxShadow:
104 | "0 4px 20px 0px rgba(0, 0, 0, 0.14), 0 7px 12px -5px rgba(233, 30, 99, 0.46)"
105 | },
106 | transparent: {
107 | backgroundColor: "transparent !important",
108 | boxShadow: "none",
109 | paddingTop: "25px",
110 | color: "#FFFFFF"
111 | },
112 | dark: {
113 | color: "#FFFFFF",
114 | backgroundColor: "#212121 !important",
115 | boxShadow:
116 | "0 4px 20px 0px rgba(0, 0, 0, 0.14), 0 7px 12px -5px rgba(33, 33, 33, 0.46)"
117 | },
118 | white: {
119 | border: "0",
120 | padding: "0.625rem 0",
121 | marginBottom: "20px",
122 | color: "#555",
123 | backgroundColor: "#fff !important",
124 | boxShadow:
125 | "0 4px 18px 0px rgba(0, 0, 0, 0.12), 0 7px 10px -5px rgba(0, 0, 0, 0.15)"
126 | },
127 | drawerPaper: {
128 | border: "none",
129 | bottom: "0",
130 | transitionProperty: "top, bottom, width",
131 | transitionDuration: ".2s, .2s, .35s",
132 | transitionTimingFunction: "linear, linear, ease",
133 | width: drawerWidth,
134 | ...boxShadow,
135 | position: "fixed",
136 | display: "block",
137 | top: "0",
138 | height: "100vh",
139 | right: "0",
140 | left: "auto",
141 | visibility: "visible",
142 | overflowY: "visible",
143 | borderTop: "none",
144 | textAlign: "left",
145 | paddingRight: "0px",
146 | paddingLeft: "0",
147 | ...transition
148 | }
149 | };
150 |
151 | export default headerStyle;
152 |
--------------------------------------------------------------------------------
/src/assets/jss/material-kit-react/components/infoStyle.jsx:
--------------------------------------------------------------------------------
1 | import {
2 | primaryColor,
3 | warningColor,
4 | dangerColor,
5 | successColor,
6 | infoColor,
7 | roseColor,
8 | grayColor,
9 | title
10 | } from "assets/jss/material-kit-react.jsx";
11 |
12 | const infoStyle = {
13 | infoArea: {
14 | maxWidth: "360px",
15 | margin: "0 auto",
16 | padding: "0px"
17 | },
18 | iconWrapper: {
19 | float: "left",
20 | marginTop: "24px",
21 | marginRight: "10px"
22 | },
23 | primary: {
24 | color: primaryColor
25 | },
26 | warning: {
27 | color: warningColor
28 | },
29 | danger: {
30 | color: dangerColor
31 | },
32 | success: {
33 | color: successColor
34 | },
35 | info: {
36 | color: infoColor
37 | },
38 | rose: {
39 | color: roseColor
40 | },
41 | gray: {
42 | color: grayColor
43 | },
44 | icon: {
45 | width: "36px",
46 | height: "36px"
47 | },
48 | descriptionWrapper: {
49 | color: grayColor,
50 | overflow: "hidden"
51 | },
52 | title,
53 | description: {
54 | color: grayColor,
55 | overflow: "hidden",
56 | marginTop: "0px",
57 | fontSize: "14px"
58 | },
59 | iconWrapperVertical: {
60 | float: "none"
61 | },
62 | iconVertical: {
63 | width: "61px",
64 | height: "61px"
65 | }
66 | };
67 |
68 | export default infoStyle;
69 |
--------------------------------------------------------------------------------
/src/assets/jss/material-kit-react/components/navPillsStyle.jsx:
--------------------------------------------------------------------------------
1 | import {
2 | roseColor,
3 | primaryColor,
4 | infoColor,
5 | successColor,
6 | warningColor,
7 | dangerColor
8 | } from "assets/jss/material-kit-react.jsx";
9 |
10 | const navPillsStyle = theme => ({
11 | root: {
12 | marginTop: "20px",
13 | paddingLeft: "0",
14 | marginBottom: "0",
15 | overflow: "visible !important"
16 | },
17 | flexContainer: {
18 | [theme.breakpoints.down("xs")]: {
19 | display: "flex",
20 | flexWrap: "wrap"
21 | }
22 | },
23 | displayNone: {
24 | display: "none !important"
25 | },
26 | fixed: {
27 | overflowX: "visible"
28 | },
29 | horizontalDisplay: {
30 | display: "block"
31 | },
32 | pills: {
33 | float: "left",
34 | position: "relative",
35 | display: "block",
36 | borderRadius: "30px",
37 | minWidth: "100px",
38 | textAlign: "center",
39 | transition: "all .3s",
40 | padding: "10px 15px",
41 | color: "#555555",
42 | height: "auto",
43 | opacity: "1",
44 | maxWidth: "100%",
45 | margin: "0 5px"
46 | },
47 | pillsWithIcons: {
48 | borderRadius: "4px"
49 | },
50 | tabIcon: {
51 | width: "30px",
52 | height: "30px",
53 | display: "block",
54 | margin: "15px 0"
55 | },
56 | horizontalPills: {
57 | width: "100%",
58 | float: "none !important",
59 | "& + button": {
60 | margin: "10px 0"
61 | }
62 | },
63 | labelContainer: {
64 | padding: "0!important",
65 | color: "inherit"
66 | },
67 | label: {
68 | lineHeight: "24px",
69 | textTransform: "uppercase",
70 | fontSize: "12px",
71 | fontWeight: "500",
72 | position: "relative",
73 | display: "block",
74 | color: "inherit"
75 | },
76 | contentWrapper: {
77 | marginTop: "20px"
78 | },
79 | primary: {
80 | "&,&:hover": {
81 | color: "#FFFFFF",
82 | backgroundColor: primaryColor,
83 | boxShadow:
84 | "0 4px 20px 0px rgba(0, 0, 0, 0.14), 0 7px 10px -5px rgba(156, 39, 176, 0.4)"
85 | }
86 | },
87 | info: {
88 | "&,&:hover": {
89 | color: "#FFFFFF",
90 | backgroundColor: infoColor,
91 | boxShadow:
92 | "0 4px 20px 0px rgba(0, 0, 0, 0.14), 0 7px 10px -5px rgba(76, 175, 80, 0.4)"
93 | }
94 | },
95 | success: {
96 | "&,&:hover": {
97 | color: "#FFFFFF",
98 | backgroundColor: successColor,
99 | boxShadow:
100 | "0 2px 2px 0 rgba(76, 175, 80, 0.14), 0 3px 1px -2px rgba(76, 175, 80, 0.2), 0 1px 5px 0 rgba(76, 175, 80, 0.12)"
101 | }
102 | },
103 | warning: {
104 | "&,&:hover": {
105 | color: "#FFFFFF",
106 | backgroundColor: warningColor,
107 | boxShadow:
108 | "0 4px 20px 0px rgba(0, 0, 0, 0.14), 0 7px 10px -5px rgba(255, 152, 0, 0.4)"
109 | }
110 | },
111 | danger: {
112 | "&,&:hover": {
113 | color: "#FFFFFF",
114 | backgroundColor: dangerColor,
115 | boxShadow:
116 | "0 4px 20px 0px rgba(0, 0, 0, 0.14), 0 7px 10px -5px rgba(255, 152, 0, 0.4)"
117 | }
118 | },
119 | rose: {
120 | "&,&:hover": {
121 | color: "#FFFFFF",
122 | backgroundColor: roseColor,
123 | boxShadow:
124 | "0 4px 20px 0px rgba(0, 0, 0, 0.14), 0 7px 10px -5px rgba(233, 30, 99, 0.4)"
125 | }
126 | },
127 | alignCenter: {
128 | alignItems: "center",
129 | justifyContent: "center"
130 | }
131 | });
132 |
133 | export default navPillsStyle;
134 |
--------------------------------------------------------------------------------
/src/assets/jss/material-kit-react/components/paginationStyle.jsx:
--------------------------------------------------------------------------------
1 | import {
2 | grayColor,
3 | primaryColor,
4 | infoColor,
5 | successColor,
6 | warningColor,
7 | dangerColor
8 | } from "assets/jss/material-kit-react.jsx";
9 |
10 | const paginationStyle = {
11 | pagination: {
12 | display: "inline-block",
13 | paddingLeft: "0",
14 | margin: "0 0 20px 0",
15 | borderRadius: "4px"
16 | },
17 | paginationItem: {
18 | display: "inline"
19 | },
20 | paginationLink: {
21 | ":first-of-type": {
22 | marginleft: "0"
23 | },
24 | border: "0",
25 | borderRadius: "30px !important",
26 | transition: "all .3s",
27 | padding: "0px 11px",
28 | margin: "0 3px",
29 | minWidth: "30px",
30 | height: "30px",
31 | minHeight: "auto",
32 | lineHeight: "30px",
33 | fontWeight: "400",
34 | fontSize: "12px",
35 | textTransform: "uppercase",
36 | background: "transparent",
37 | position: "relative",
38 | float: "left",
39 | textDecoration: "none",
40 | boxSizing: "border-box",
41 | "&,&:hover,&:focus": {
42 | color: grayColor
43 | },
44 | "&:hover,&:focus": {
45 | zIndex: "3",
46 | backgroundColor: "#eee",
47 | borderColor: "#ddd"
48 | },
49 | "&:hover": {
50 | cursor: "pointer"
51 | }
52 | },
53 | primary: {
54 | "&,&:hover,&:focus": {
55 | backgroundColor: primaryColor,
56 | borderColor: primaryColor,
57 | color: "#FFFFFF",
58 | boxShadow:
59 | "0 4px 5px 0 rgba(156, 39, 176, 0.14), 0 1px 10px 0 rgba(156, 39, 176, 0.12), 0 2px 4px -1px rgba(156, 39, 176, 0.2)"
60 | },
61 | "&:hover,&:focus": {
62 | zIndex: "2",
63 | cursor: "default"
64 | }
65 | },
66 | info: {
67 | "&,&:hover,&:focus": {
68 | backgroundColor: infoColor,
69 | borderColor: infoColor,
70 | color: "#FFFFFF",
71 | boxShadow:
72 | "0 4px 5px 0 rgba(0, 188, 212, 0.14), 0 1px 10px 0 rgba(0, 188, 212, 0.12), 0 2px 4px -1px rgba(0, 188, 212, 0.2)"
73 | },
74 | "&:hover,&:focus": {
75 | zIndex: "2",
76 | cursor: "default"
77 | }
78 | },
79 | success: {
80 | "&,&:hover,&:focus": {
81 | backgroundColor: successColor,
82 | borderColor: successColor,
83 | color: "#FFFFFF",
84 | boxShadow:
85 | "0 4px 5px 0 rgba(76, 175, 80, 0.14), 0 1px 10px 0 rgba(76, 175, 80, 0.12), 0 2px 4px -1px rgba(76, 175, 80, 0.2)"
86 | },
87 | "&:hover,&:focus": {
88 | zIndex: "2",
89 | cursor: "default"
90 | }
91 | },
92 | warning: {
93 | "&,&:hover,&:focus": {
94 | backgroundColor: warningColor,
95 | borderColor: warningColor,
96 | color: "#FFFFFF",
97 | boxShadow:
98 | "0 4px 5px 0 rgba(255, 152, 0, 0.14), 0 1px 10px 0 rgba(255, 152, 0, 0.12), 0 2px 4px -1px rgba(255, 152, 0, 0.2)"
99 | },
100 | "&:hover,&:focus": {
101 | zIndex: "2",
102 | cursor: "default"
103 | }
104 | },
105 | danger: {
106 | "&,&:hover,&:focus": {
107 | backgroundColor: dangerColor,
108 | borderColor: dangerColor,
109 | color: "#FFFFFF",
110 | boxShadow:
111 | "0 4px 5px 0 rgba(244, 67, 54, 0.14), 0 1px 10px 0 rgba(244, 67, 54, 0.12), 0 2px 4px -1px rgba(244, 67, 54, 0.2)"
112 | },
113 | "&:hover,&:focus": {
114 | zIndex: "2",
115 | cursor: "default"
116 | }
117 | },
118 | disabled: {
119 | "&,&:hover,&:focus": {
120 | color: "#777",
121 | cursor: "not-allowed",
122 | backgroundColor: "#fff",
123 | borderColor: "#ddd"
124 | }
125 | }
126 | };
127 |
128 | export default paginationStyle;
129 |
--------------------------------------------------------------------------------
/src/assets/jss/material-kit-react/components/parallaxStyle.jsx:
--------------------------------------------------------------------------------
1 | const parallaxStyle = {
2 | parallax: {
3 | height: "90vh",
4 | maxHeight: "1000px",
5 | overflow: "hidden",
6 | position: "relative",
7 | backgroundPosition: "center center",
8 | backgroundSize: "cover",
9 | margin: "0",
10 | padding: "0",
11 | border: "0",
12 | display: "flex",
13 | alignItems: "center"
14 | },
15 | filter: {
16 | "&:before": {
17 | background: "rgba(0, 0, 0, 0.5)"
18 | },
19 | "&:after,&:before": {
20 | position: "absolute",
21 | zIndex: "1",
22 | width: "100%",
23 | height: "100%",
24 | display: "block",
25 | left: "0",
26 | top: "0",
27 | content: "''"
28 | }
29 | },
30 | small: {
31 | height: "380px"
32 | }
33 | };
34 |
35 | export default parallaxStyle;
36 |
--------------------------------------------------------------------------------
/src/assets/jss/material-kit-react/components/snackbarContentStyle.jsx:
--------------------------------------------------------------------------------
1 | import {
2 | defaultFont,
3 | primaryBoxShadow,
4 | infoBoxShadow,
5 | successBoxShadow,
6 | warningBoxShadow,
7 | dangerBoxShadow,
8 | container
9 | } from "assets/jss/material-kit-react.jsx";
10 |
11 | const snackbarContentStyle = {
12 | root: {
13 | ...defaultFont,
14 | position: "relative",
15 | padding: "20px 15px",
16 | lineHeight: "20px",
17 | marginBottom: "20px",
18 | fontSize: "14px",
19 | backgroundColor: "white",
20 | color: "#555555",
21 | borderRadius: "0px",
22 | maxWidth: "100%",
23 | minWidth: "auto",
24 | boxShadow:
25 | "0 12px 20px -10px rgba(255, 255, 255, 0.28), 0 4px 20px 0px rgba(0, 0, 0, 0.12), 0 7px 8px -5px rgba(255, 255, 255, 0.2)"
26 | },
27 | info: {
28 | backgroundColor: "#00d3ee",
29 | color: "#ffffff",
30 | ...infoBoxShadow
31 | },
32 | success: {
33 | backgroundColor: "#5cb860",
34 | color: "#ffffff",
35 | ...successBoxShadow
36 | },
37 | warning: {
38 | backgroundColor: "#ffa21a",
39 | color: "#ffffff",
40 | ...warningBoxShadow
41 | },
42 | danger: {
43 | backgroundColor: "#f55a4e",
44 | color: "#ffffff",
45 | ...dangerBoxShadow
46 | },
47 | primary: {
48 | backgroundColor: "#af2cc5",
49 | color: "#ffffff",
50 | ...primaryBoxShadow
51 | },
52 | message: {
53 | padding: "0",
54 | display: "block",
55 | maxWidth: "89%"
56 | },
57 | close: {
58 | width: "14px",
59 | height: "14px"
60 | },
61 | iconButton: {
62 | width: "24px",
63 | height: "24px",
64 | float: "right",
65 | fontSize: "1.5rem",
66 | fontWeight: "500",
67 | lineHeight: "1",
68 | position: "absolute",
69 | right: "-4px",
70 | top: "0",
71 | padding: "0"
72 | },
73 | icon: {
74 | display: "block",
75 | float: "left",
76 | marginRight: "1.071rem"
77 | },
78 | container: {
79 | ...container,
80 | position: "relative"
81 | }
82 | };
83 |
84 | export default snackbarContentStyle;
85 |
--------------------------------------------------------------------------------
/src/assets/jss/material-kit-react/components/typographyStyle.jsx:
--------------------------------------------------------------------------------
1 | import {
2 | defaultFont,
3 | primaryColor,
4 | infoColor,
5 | successColor,
6 | warningColor,
7 | dangerColor
8 | } from "assets/jss/material-kit-react.jsx";
9 |
10 | const typographyStyle = {
11 | defaultFontStyle: {
12 | ...defaultFont,
13 | fontSize: "14px"
14 | },
15 | defaultHeaderMargins: {
16 | marginTop: "20px",
17 | marginBottom: "10px"
18 | },
19 | quote: {
20 | padding: "10px 20px",
21 | margin: "0 0 20px",
22 | fontSize: "17.5px",
23 | borderLeft: "5px solid #eee"
24 | },
25 | quoteText: {
26 | margin: "0 0 10px",
27 | fontStyle: "italic"
28 | },
29 | quoteAuthor: {
30 | display: "block",
31 | fontSize: "80%",
32 | lineHeight: "1.42857143",
33 | color: "#777"
34 | },
35 | mutedText: {
36 | color: "#777"
37 | },
38 | primaryText: {
39 | color: primaryColor
40 | },
41 | infoText: {
42 | color: infoColor
43 | },
44 | successText: {
45 | color: successColor
46 | },
47 | warningText: {
48 | color: warningColor
49 | },
50 | dangerText: {
51 | color: dangerColor
52 | },
53 | smallText: {
54 | fontSize: "65%",
55 | fontWeight: "400",
56 | lineHeight: "1",
57 | color: "#777"
58 | }
59 | };
60 |
61 | export default typographyStyle;
62 |
--------------------------------------------------------------------------------
/src/assets/jss/material-kit-react/customCheckboxRadioSwitch.jsx:
--------------------------------------------------------------------------------
1 | import {
2 | primaryColor,
3 | dangerColor,
4 | roseColor,
5 | grayColor
6 | } from "assets/jss/material-kit-react.jsx";
7 |
8 | const customCheckboxRadioSwitch = {
9 | checkRoot: {
10 | padding: "14px"
11 | },
12 | radioRoot: {
13 | padding: "16px"
14 | },
15 | checkboxAndRadio: {
16 | position: "relative",
17 | display: "block",
18 | marginTop: "10px",
19 | marginBottom: "10px"
20 | },
21 | checkboxAndRadioHorizontal: {
22 | position: "relative",
23 | display: "block",
24 | "&:first-child": {
25 | marginTop: "10px"
26 | },
27 | "&:not(:first-child)": {
28 | marginTop: "-14px"
29 | },
30 | marginTop: "0",
31 | marginBottom: "0"
32 | },
33 | checked: {
34 | color: primaryColor + "!important"
35 | },
36 | checkedIcon: {
37 | width: "20px",
38 | height: "20px",
39 | border: "1px solid rgba(0, 0, 0, .54)",
40 | borderRadius: "3px"
41 | },
42 | uncheckedIcon: {
43 | width: "0px",
44 | height: "0px",
45 | padding: "9px",
46 | border: "1px solid rgba(0, 0, 0, .54)",
47 | borderRadius: "3px"
48 | },
49 | disabledCheckboxAndRadio: {
50 | opacity: "0.45"
51 | },
52 | label: {
53 | cursor: "pointer",
54 | paddingLeft: "0",
55 | color: "rgba(0, 0, 0, 0.26)",
56 | fontSize: "14px",
57 | lineHeight: "1.428571429",
58 | fontWeight: "400",
59 | display: "inline-flex",
60 | transition: "0.3s ease all"
61 | },
62 | labelHorizontal: {
63 | color: "rgba(0, 0, 0, 0.26)",
64 | cursor: "pointer",
65 | display: "inline-flex",
66 | fontSize: "14px",
67 | lineHeight: "1.428571429",
68 | fontWeight: "400",
69 | paddingTop: "39px",
70 | marginRight: "0",
71 | "@media (min-width: 992px)": {
72 | float: "right"
73 | }
74 | },
75 | labelHorizontalRadioCheckbox: {
76 | paddingTop: "22px"
77 | },
78 | labelLeftHorizontal: {
79 | color: "rgba(0, 0, 0, 0.26)",
80 | cursor: "pointer",
81 | display: "inline-flex",
82 | fontSize: "14px",
83 | lineHeight: "1.428571429",
84 | fontWeight: "400",
85 | paddingTop: "22px",
86 | marginRight: "0"
87 | },
88 | labelError: {
89 | color: dangerColor
90 | },
91 | radio: {
92 | color: primaryColor + "!important"
93 | },
94 | radioChecked: {
95 | width: "16px",
96 | height: "16px",
97 | border: "1px solid " + primaryColor,
98 | borderRadius: "50%"
99 | },
100 | radioUnchecked: {
101 | width: "0px",
102 | height: "0px",
103 | padding: "7px",
104 | border: "1px solid rgba(0, 0, 0, .54)",
105 | borderRadius: "50%"
106 | },
107 | inlineChecks: {
108 | marginTop: "8px"
109 | },
110 | iconCheckbox: {
111 | height: "116px",
112 | width: "116px",
113 | color: grayColor,
114 | "& > span:first-child": {
115 | borderWidth: "4px",
116 | borderStyle: "solid",
117 | borderColor: "#CCCCCC",
118 | textAlign: "center",
119 | verticalAlign: "middle",
120 | borderRadius: "50%",
121 | color: "inherit",
122 | margin: "0 auto 20px",
123 | transition: "all 0.2s"
124 | },
125 | "&:hover": {
126 | color: roseColor,
127 | "& > span:first-child": {
128 | borderColor: roseColor
129 | }
130 | }
131 | },
132 | iconCheckboxChecked: {
133 | color: roseColor,
134 | "& > span:first-child": {
135 | borderColor: roseColor
136 | }
137 | },
138 | iconCheckboxIcon: {
139 | fontSize: "40px",
140 | lineHeight: "111px"
141 | },
142 | switchBase: {
143 | color: primaryColor + "!important"
144 | },
145 | switchIcon: {
146 | boxShadow: "0 1px 3px 1px rgba(0, 0, 0, 0.4)",
147 | color: "#FFFFFF !important",
148 | border: "1px solid rgba(0, 0, 0, .54)",
149 | transform: "translateX(-4px)!important"
150 | },
151 | switchIconChecked: {
152 | borderColor: "#9c27b0",
153 | transform: "translateX(0px)!important"
154 | },
155 | switchBar: {
156 | width: "30px",
157 | height: "15px",
158 | backgroundColor: "rgb(80, 80, 80)",
159 | borderRadius: "15px",
160 | opacity: "0.7!important"
161 | },
162 | switchChecked: {
163 | "& + $switchBar": {
164 | backgroundColor: "rgba(156, 39, 176, 1) !important"
165 | }
166 | }
167 | };
168 |
169 | export default customCheckboxRadioSwitch;
170 |
--------------------------------------------------------------------------------
/src/assets/jss/material-kit-react/imagesStyles.jsx:
--------------------------------------------------------------------------------
1 | const imagesStyles = {
2 | imgFluid: {
3 | maxWidth: "100%",
4 | height: "auto"
5 | },
6 | imgRounded: {
7 | borderRadius: "6px !important"
8 | },
9 | imgRoundedCircle: {
10 | borderRadius: "50% !important"
11 | },
12 | imgRaised: {
13 | boxShadow:
14 | "0 5px 15px -8px rgba(0, 0, 0, 0.24), 0 8px 10px -5px rgba(0, 0, 0, 0.2)"
15 | },
16 | imgGallery: {
17 | width: "100%",
18 | marginBottom: "2.142rem"
19 | },
20 | imgCardTop: {
21 | width: "100%",
22 | borderTopLeftRadius: "calc(.25rem - 1px)",
23 | borderTopRightRadius: "calc(.25rem - 1px)"
24 | },
25 | imgCardBottom: {
26 | width: "100%",
27 | borderBottomLeftRadius: "calc(.25rem - 1px)",
28 | borderBottomRightRadius: "calc(.25rem - 1px)"
29 | },
30 | imgCard: {
31 | width: "100%",
32 | borderRadius: "calc(.25rem - 1px)"
33 | },
34 | imgCardOverlay: {
35 | position: "absolute",
36 | top: "0",
37 | right: "0",
38 | bottom: "0",
39 | left: "0",
40 | padding: "1.25rem"
41 | }
42 | };
43 |
44 | export default imagesStyles;
45 |
--------------------------------------------------------------------------------
/src/assets/jss/material-kit-react/modalStyle.jsx:
--------------------------------------------------------------------------------
1 | const modalStyle = {
2 | modal: {
3 | borderRadius: "6px"
4 | },
5 | modalHeader: {
6 | borderBottom: "none",
7 | paddingTop: "24px",
8 | paddingRight: "24px",
9 | paddingBottom: "0",
10 | paddingLeft: "24px",
11 | minHeight: "16.43px"
12 | },
13 | modalTitle: {
14 | margin: "0",
15 | lineHeight: "1.42857143"
16 | },
17 | modalCloseButton: {
18 | color: "#999999",
19 | marginTop: "-12px",
20 | WebkitAppearance: "none",
21 | padding: "0",
22 | cursor: "pointer",
23 | background: "0 0",
24 | border: "0",
25 | fontSize: "inherit",
26 | opacity: ".9",
27 | textShadow: "none",
28 | fontWeight: "700",
29 | lineHeight: "1",
30 | float: "right"
31 | },
32 | modalClose: {
33 | width: "16px",
34 | height: "16px"
35 | },
36 | modalBody: {
37 | paddingTop: "24px",
38 | paddingRight: "24px",
39 | paddingBottom: "16px",
40 | paddingLeft: "24px",
41 | position: "relative"
42 | },
43 | modalFooter: {
44 | padding: "15px",
45 | textAlign: "right",
46 | paddingTop: "0",
47 | margin: "0"
48 | },
49 | modalFooterCenter: {
50 | marginLeft: "auto",
51 | marginRight: "auto"
52 | }
53 | };
54 |
55 | export default modalStyle;
56 |
--------------------------------------------------------------------------------
/src/assets/jss/material-kit-react/popoverStyles.jsx:
--------------------------------------------------------------------------------
1 | const popoverStyles = {
2 | popover: {
3 | padding: "0",
4 | boxShadow:
5 | "0 16px 24px 2px rgba(0, 0, 0, 0.14), 0 6px 30px 5px rgba(0, 0, 0, 0.12), 0 8px 10px -5px rgba(0, 0, 0, 0.2)",
6 | lineHeight: "1.5em",
7 | background: "#fff",
8 | border: "none",
9 | borderRadius: "3px",
10 | display: "block",
11 | maxWidth: "276px",
12 | fontFamily: '"Roboto", "Helvetica", "Arial", sans-serif',
13 | fontStyle: "normal",
14 | fontWeight: "400",
15 | textAlign: "start",
16 | textDecoration: "none",
17 | textShadow: "none",
18 | textTransform: "none",
19 | letterSpacing: "normal",
20 | wordBreak: "normal",
21 | wordSpacing: "normal",
22 | whiteSpace: "normal",
23 | lineBreak: "auto",
24 | fontSize: "0.875rem",
25 | wordWrap: "break-word"
26 | },
27 | popoverBottom: {
28 | marginTop: "5px"
29 | },
30 | popoverHeader: {
31 | backgroundColor: "#fff",
32 | border: "none",
33 | padding: "15px 15px 5px",
34 | fontSize: "1.125rem",
35 | margin: "0",
36 | color: "#555",
37 | borderTopLeftRadius: "calc(0.3rem - 1px)",
38 | borderTopRightRadius: "calc(0.3rem - 1px)"
39 | },
40 | popoverBody: {
41 | padding: "10px 15px 15px",
42 | lineHeight: "1.4",
43 | color: "#555"
44 | }
45 | };
46 |
47 | export default popoverStyles;
48 |
--------------------------------------------------------------------------------
/src/assets/jss/material-kit-react/tooltipsStyle.jsx:
--------------------------------------------------------------------------------
1 | const tooltipsStyle = {
2 | tooltip: {
3 | padding: "10px 15px",
4 | minWidth: "130px",
5 | color: "#555555",
6 | lineHeight: "1.7em",
7 | background: "#FFFFFF",
8 | border: "none",
9 | borderRadius: "3px",
10 | boxShadow:
11 | "0 8px 10px 1px rgba(0, 0, 0, 0.14), 0 3px 14px 2px rgba(0, 0, 0, 0.12), 0 5px 5px -3px rgba(0, 0, 0, 0.2)",
12 | maxWidth: "200px",
13 | textAlign: "center",
14 | fontFamily: '"Helvetica Neue",Helvetica,Arial,sans-serif',
15 | fontSize: "0.875em",
16 | fontStyle: "normal",
17 | fontWeight: "400",
18 | textShadow: "none",
19 | textTransform: "none",
20 | letterSpacing: "normal",
21 | wordBreak: "normal",
22 | wordSpacing: "normal",
23 | wordWrap: "normal",
24 | whiteSpace: "normal",
25 | lineBreak: "auto"
26 | }
27 | };
28 |
29 | export default tooltipsStyle;
30 |
--------------------------------------------------------------------------------
/src/assets/jss/material-kit-react/views/components.jsx:
--------------------------------------------------------------------------------
1 | import { container } from "assets/jss/material-kit-react.jsx";
2 |
3 | const componentsStyle = {
4 | container,
5 | brand: {
6 | color: "#FFFFFF",
7 | textAlign: "left"
8 | },
9 | title: {
10 | fontSize: "4.2rem",
11 | fontWeight: "600",
12 | display: "inline-block",
13 | position: "relative"
14 | },
15 | subtitle: {
16 | fontSize: "1.313rem",
17 | maxWidth: "500px",
18 | margin: "10px 0 0"
19 | },
20 | main: {
21 | background: "#FFFFFF",
22 | position: "relative",
23 | zIndex: "3"
24 | },
25 | mainRaised: {
26 | margin: "-60px 30px 0px",
27 | borderRadius: "6px",
28 | boxShadow:
29 | "0 16px 24px 2px rgba(0, 0, 0, 0.14), 0 6px 30px 5px rgba(0, 0, 0, 0.12), 0 8px 10px -5px rgba(0, 0, 0, 0.2)"
30 | },
31 | link: {
32 | textDecoration: "none"
33 | },
34 | textCenter: {
35 | textAlign: "center"
36 | }
37 | };
38 |
39 | export default componentsStyle;
40 |
--------------------------------------------------------------------------------
/src/assets/jss/material-kit-react/views/componentsSections/basicsStyle.jsx:
--------------------------------------------------------------------------------
1 | import { container, title } from "assets/jss/material-kit-react.jsx";
2 | import customCheckboxRadioSwitch from "assets/jss/material-kit-react/customCheckboxRadioSwitch.jsx";
3 |
4 | const basicsStyle = {
5 | sections: {
6 | padding: "70px 0"
7 | },
8 | container,
9 | title: {
10 | ...title,
11 | marginTop: "30px",
12 | minHeight: "32px",
13 | textDecoration: "none"
14 | },
15 | space50: {
16 | height: "50px",
17 | display: "block"
18 | },
19 | space70: {
20 | height: "70px",
21 | display: "block"
22 | },
23 | icons: {
24 | width: "17px",
25 | height: "17px",
26 | color: "#FFFFFF"
27 | },
28 | ...customCheckboxRadioSwitch
29 | };
30 |
31 | export default basicsStyle;
32 |
--------------------------------------------------------------------------------
/src/assets/jss/material-kit-react/views/componentsSections/carouselStyle.jsx:
--------------------------------------------------------------------------------
1 | import { container } from "assets/jss/material-kit-react.jsx";
2 |
3 | const carouselStyle = {
4 | section: {
5 | padding: "70px 0"
6 | },
7 | container,
8 | marginAuto: {
9 | marginLeft: "auto !important",
10 | marginRight: "auto !important"
11 | }
12 | };
13 |
14 | export default carouselStyle;
15 |
--------------------------------------------------------------------------------
/src/assets/jss/material-kit-react/views/componentsSections/completedStyle.jsx:
--------------------------------------------------------------------------------
1 | import { container } from "assets/jss/material-kit-react";
2 |
3 | const completedStyle = {
4 | section: {
5 | padding: "70px 0"
6 | },
7 | container: {
8 | ...container,
9 | textAlign: "center !important"
10 | }
11 | };
12 |
13 | export default completedStyle;
14 |
--------------------------------------------------------------------------------
/src/assets/jss/material-kit-react/views/componentsSections/downloadStyle.jsx:
--------------------------------------------------------------------------------
1 | import { container } from "assets/jss/material-kit-react.jsx";
2 |
3 | const downloadStyle = {
4 | section: {
5 | padding: "70px 0"
6 | },
7 | container,
8 | textCenter: {
9 | textAlign: "center"
10 | },
11 | sharingArea: {
12 | marginTop: "80px"
13 | },
14 | socials: {
15 | maxWidth: "24px",
16 | marginTop: "0",
17 | width: "100%",
18 | transform: "none",
19 | left: "0",
20 | top: "0",
21 | height: "100%",
22 | fontSize: "20px",
23 | marginRight: "4px"
24 | }
25 | };
26 |
27 | export default downloadStyle;
28 |
--------------------------------------------------------------------------------
/src/assets/jss/material-kit-react/views/componentsSections/exampleStyle.jsx:
--------------------------------------------------------------------------------
1 | import { conatinerFluid } from "assets/jss/material-kit-react.jsx";
2 |
3 | import imagesStyle from "assets/jss/material-kit-react/imagesStyles.jsx";
4 |
5 | const exampleStyle = {
6 | section: {
7 | padding: "70px 0"
8 | },
9 | container: {
10 | ...conatinerFluid,
11 | textAlign: "center !important"
12 | },
13 | ...imagesStyle,
14 | link: {
15 | textDecoration: "none"
16 | }
17 | };
18 |
19 | export default exampleStyle;
20 |
--------------------------------------------------------------------------------
/src/assets/jss/material-kit-react/views/componentsSections/javascriptStyles.jsx:
--------------------------------------------------------------------------------
1 | import { container, title } from "assets/jss/material-kit-react.jsx";
2 |
3 | import modalStyle from "assets/jss/material-kit-react/modalStyle.jsx";
4 | import tooltipsStyle from "assets/jss/material-kit-react/tooltipsStyle.jsx";
5 | import popoverStyles from "assets/jss/material-kit-react/popoverStyles.jsx";
6 |
7 | const javascriptStyles = {
8 | section: {
9 | padding: "70px 0 0"
10 | },
11 | container,
12 | title: {
13 | ...title,
14 | marginTop: "30px",
15 | minHeight: "32px",
16 | textDecoration: "none"
17 | },
18 | icon: {
19 | width: "17px",
20 | height: "17px",
21 | marginRight: "4px"
22 | },
23 | ...modalStyle,
24 | label: {
25 | color: "rgba(0, 0, 0, 0.26)",
26 | cursor: "pointer",
27 | display: "inline-flex",
28 | fontSize: "14px",
29 | transition: "0.3s ease all",
30 | lineHeight: "1.428571429",
31 | fontWeight: "400",
32 | paddingLeft: "0"
33 | },
34 | ...tooltipsStyle,
35 | ...popoverStyles
36 | };
37 |
38 | export default javascriptStyles;
39 |
--------------------------------------------------------------------------------
/src/assets/jss/material-kit-react/views/componentsSections/loginStyle.jsx:
--------------------------------------------------------------------------------
1 | import { container } from "assets/jss/material-kit-react.jsx";
2 |
3 | import image from "assets/img/sign.jpg";
4 |
5 | const loginStyle = {
6 | section: {
7 | minHeight: "110vh",
8 | maxHeight: "1600px",
9 | overflow: "hidden",
10 | padding: "70px 0",
11 | backgroundPosition: "top center",
12 | backgroundSize: "cover",
13 | margin: "0",
14 | border: "0",
15 | display: "flex",
16 | alignItems: "center",
17 | backgroundImage: "url(" + image + ")"
18 | },
19 | container,
20 | form: {
21 | margin: "0"
22 | },
23 | cardHeader: {
24 | width: "auto",
25 | textAlign: "center",
26 | marginLeft: "20px",
27 | marginRight: "20px",
28 | marginTop: "-40px",
29 | padding: "20px 0",
30 | marginBottom: "15px"
31 | },
32 | socialIcons: {
33 | maxWidth: "24px",
34 | marginTop: "0",
35 | width: "100%",
36 | transform: "none",
37 | left: "0",
38 | top: "0",
39 | height: "100%",
40 | lineHeight: "41px",
41 | fontSize: "20px"
42 | },
43 | divider: {
44 | marginTop: "30px",
45 | marginBottom: "0px",
46 | textAlign: "center"
47 | },
48 | cardFooter: {
49 | paddingTop: "0rem",
50 | border: "0",
51 | borderRadius: "6px",
52 | justifyContent: "center !important"
53 | },
54 | socialLine: {
55 | marginTop: "1rem",
56 | textAlign: "center",
57 | padding: "0"
58 | },
59 | inputIconsColor: {
60 | color: "#495057"
61 | }
62 | };
63 |
64 | export default loginStyle;
65 |
--------------------------------------------------------------------------------
/src/assets/jss/material-kit-react/views/componentsSections/navbarsStyle.jsx:
--------------------------------------------------------------------------------
1 | import { container, title } from "assets/jss/material-kit-react.jsx";
2 | import headerLinksStyle from "assets/jss/material-kit-react/components/headerLinksStyle.jsx";
3 |
4 | const navbarsStyle = theme => ({
5 | section: {
6 | padding: "70px 0",
7 | paddingTop: "0"
8 | },
9 | container,
10 | title: {
11 | ...title,
12 | marginTop: "30px",
13 | minHeight: "32px",
14 | textDecoration: "none"
15 | },
16 | navbar: {
17 | marginBottom: "-20px",
18 | zIndex: "100",
19 | position: "relative",
20 | overflow: "hidden",
21 | "& header": {
22 | borderRadius: "0"
23 | }
24 | },
25 | navigation: {
26 | backgroundPosition: "center center",
27 | backgroundSize: "cover",
28 | marginTop: "0",
29 | minHeight: "740px"
30 | },
31 | formControl: {
32 | margin: "0 !important",
33 | paddingTop: "0"
34 | },
35 | inputRootCustomClasses: {
36 | margin: "0!important"
37 | },
38 | searchIcon: {
39 | width: "20px",
40 | height: "20px",
41 | color: "inherit"
42 | },
43 | ...headerLinksStyle(theme),
44 | img: {
45 | width: "40px",
46 | height: "40px",
47 | borderRadius: "50%"
48 | },
49 | imageDropdownButton: {
50 | padding: "0px",
51 | top: "4px",
52 | borderRadius: "50%",
53 | marginLeft: "5px"
54 | }
55 | });
56 |
57 | export default navbarsStyle;
58 |
--------------------------------------------------------------------------------
/src/assets/jss/material-kit-react/views/componentsSections/notificationsStyles.jsx:
--------------------------------------------------------------------------------
1 | import { container, title } from "assets/jss/material-kit-react.jsx";
2 |
3 | const notificationsStyles = {
4 | section: {
5 | backgroundColor: "#FFFFFF",
6 | display: "block",
7 | width: "100%",
8 | position: "relative",
9 | padding: "0"
10 | },
11 | title: {
12 | ...title,
13 | marginTop: "30px",
14 | minHeight: "32px",
15 | textDecoration: "none"
16 | },
17 | container
18 | };
19 |
20 | export default notificationsStyles;
21 |
--------------------------------------------------------------------------------
/src/assets/jss/material-kit-react/views/componentsSections/pillsStyle.jsx:
--------------------------------------------------------------------------------
1 | import { container, title } from "assets/jss/material-kit-react.jsx";
2 |
3 | const pillsStyle = {
4 | section: {
5 | padding: "70px 0"
6 | },
7 | container,
8 | title: {
9 | ...title,
10 | marginTop: "30px",
11 | minHeight: "32px",
12 | textDecoration: "none"
13 | }
14 | };
15 |
16 | export default pillsStyle;
17 |
--------------------------------------------------------------------------------
/src/assets/jss/material-kit-react/views/componentsSections/tabsStyle.jsx:
--------------------------------------------------------------------------------
1 | import { container } from "assets/jss/material-kit-react.jsx";
2 |
3 | const tabsStyle = {
4 | section: {
5 | background: "#EEEEEE",
6 | padding: "70px 0"
7 | },
8 | container,
9 | textCenter: {
10 | textAlign: "center"
11 | }
12 | };
13 |
14 | export default tabsStyle;
15 |
--------------------------------------------------------------------------------
/src/assets/jss/material-kit-react/views/componentsSections/typographyStyle.jsx:
--------------------------------------------------------------------------------
1 | import { container, title } from "assets/jss/material-kit-react.jsx";
2 |
3 | import imagesStyles from "assets/jss/material-kit-react/imagesStyles.jsx";
4 |
5 | const typographyStyle = {
6 | section: {
7 | padding: "70px 0"
8 | },
9 | container,
10 | space50: {
11 | height: "50px",
12 | display: "block"
13 | },
14 | title: {
15 | ...title,
16 | marginTop: "30px",
17 | minHeight: "32px",
18 | textDecoration: "none"
19 | },
20 | typo: {
21 | paddingLeft: "25%",
22 | marginBottom: "40px",
23 | position: "relative",
24 | width: "100%"
25 | },
26 | note: {
27 | fontFamily: '"Roboto", "Helvetica", "Arial", sans-serif',
28 | bottom: "10px",
29 | color: "#c0c1c2",
30 | display: "block",
31 | fontWeight: "400",
32 | fontSize: "13px",
33 | lineHeight: "13px",
34 | left: "0",
35 | marginLeft: "20px",
36 | position: "absolute",
37 | width: "260px"
38 | },
39 | marginLeft: {
40 | marginLeft: "auto !important"
41 | },
42 | ...imagesStyles
43 | };
44 |
45 | export default typographyStyle;
46 |
--------------------------------------------------------------------------------
/src/assets/jss/material-kit-react/views/landingPage.jsx:
--------------------------------------------------------------------------------
1 | import { container, title } from "assets/jss/material-kit-react.jsx";
2 |
3 | const landingPageStyle = {
4 | container: {
5 | zIndex: "12",
6 | color: "#FFFFFF",
7 | ...container
8 | },
9 | title: {
10 | ...title,
11 | display: "inline-block",
12 | position: "relative",
13 | marginTop: "30px",
14 | minHeight: "32px",
15 | color: "#FFFFFF",
16 | textDecoration: "none"
17 | },
18 | subtitle: {
19 | fontSize: "1.313rem",
20 | maxWidth: "500px",
21 | margin: "10px auto 0"
22 | },
23 | main: {
24 | background: "#FFFFFF",
25 | position: "relative",
26 | zIndex: "3"
27 | },
28 | mainRaised: {
29 | margin: "-60px 30px 0px",
30 | borderRadius: "6px",
31 | boxShadow:
32 | "0 16px 24px 2px rgba(0, 0, 0, 0.14), 0 6px 30px 5px rgba(0, 0, 0, 0.12), 0 8px 10px -5px rgba(0, 0, 0, 0.2)"
33 | }
34 | };
35 |
36 | export default landingPageStyle;
37 |
--------------------------------------------------------------------------------
/src/assets/jss/material-kit-react/views/landingPageSections/productStyle.jsx:
--------------------------------------------------------------------------------
1 | import { title } from "assets/jss/material-kit-react.jsx";
2 |
3 | const productStyle = {
4 | section: {
5 | padding: "70px 0",
6 | textAlign: "center"
7 | },
8 | title: {
9 | ...title,
10 | marginBottom: "1rem",
11 | marginTop: "30px",
12 | minHeight: "32px",
13 | textDecoration: "none"
14 | },
15 | description: {
16 | color: "#999"
17 | }
18 | };
19 |
20 | export default productStyle;
21 |
--------------------------------------------------------------------------------
/src/assets/jss/material-kit-react/views/landingPageSections/teamStyle.jsx:
--------------------------------------------------------------------------------
1 | import { cardTitle, title } from "assets/jss/material-kit-react.jsx";
2 | import imagesStyle from "assets/jss/material-kit-react/imagesStyles.jsx";
3 |
4 | const teamStyle = {
5 | section: {
6 | padding: "70px 0",
7 | textAlign: "center"
8 | },
9 | title: {
10 | ...title,
11 | marginBottom: "1rem",
12 | marginTop: "30px",
13 | minHeight: "32px",
14 | textDecoration: "none"
15 | },
16 | ...imagesStyle,
17 | itemGrid: {
18 | marginLeft: "auto",
19 | marginRight: "auto"
20 | },
21 | cardTitle,
22 | smallTitle: {
23 | color: "#6c757d"
24 | },
25 | description: {
26 | color: "#999"
27 | },
28 | justifyCenter: {
29 | justifyContent: "center !important"
30 | },
31 | socials: {
32 | marginTop: "0",
33 | width: "100%",
34 | transform: "none",
35 | left: "0",
36 | top: "0",
37 | height: "100%",
38 | lineHeight: "41px",
39 | fontSize: "20px",
40 | color: "#999"
41 | },
42 | margin5: {
43 | margin: "5px"
44 | }
45 | };
46 |
47 | export default teamStyle;
48 |
--------------------------------------------------------------------------------
/src/assets/jss/material-kit-react/views/landingPageSections/workStyle.jsx:
--------------------------------------------------------------------------------
1 | import { title } from "assets/jss/material-kit-react.jsx";
2 |
3 | const workStyle = {
4 | section: {
5 | padding: "70px 0"
6 | },
7 | title: {
8 | ...title,
9 | marginBottom: "50px",
10 | marginTop: "30px",
11 | minHeight: "32px",
12 | textDecoration: "none",
13 | textAlign: "center"
14 | },
15 | description: {
16 | color: "#999",
17 | textAlign: "center"
18 | },
19 | textCenter: {
20 | textAlign: "center"
21 | },
22 | textArea: {
23 | marginRight: "15px",
24 | marginLeft: "15px"
25 | }
26 | };
27 |
28 | export default workStyle;
29 |
--------------------------------------------------------------------------------
/src/assets/jss/material-kit-react/views/loginPage.jsx:
--------------------------------------------------------------------------------
1 | import { container } from "assets/jss/material-kit-react.jsx";
2 |
3 | const signupPageStyle = {
4 | container: {
5 | ...container,
6 | zIndex: "2",
7 | position: "relative",
8 | paddingTop: "20vh",
9 | color: "#FFFFFF"
10 | },
11 | cardHidden: {
12 | opacity: "0",
13 | transform: "translate3d(0, -60px, 0)"
14 | },
15 | pageHeader: {
16 | minHeight: "100vh",
17 | height: "auto",
18 | display: "inherit",
19 | position: "relative",
20 | margin: "0",
21 | padding: "0",
22 | border: "0",
23 | alignItems: "center",
24 | "&:before": {
25 | background: "rgba(0, 0, 0, 0.5)"
26 | },
27 | "&:before,&:after": {
28 | position: "absolute",
29 | zIndex: "1",
30 | width: "100%",
31 | height: "100%",
32 | display: "block",
33 | left: "0",
34 | top: "0",
35 | content: '""'
36 | },
37 | "& footer li a,& footer li a:hover,& footer li a:active": {
38 | color: "#FFFFFF"
39 | },
40 | "& footer": {
41 | position: "absolute",
42 | bottom: "0",
43 | width: "100%"
44 | }
45 | },
46 | form: {
47 | margin: "0"
48 | },
49 | cardHeader: {
50 | width: "auto",
51 | textAlign: "center",
52 | marginLeft: "20px",
53 | marginRight: "20px",
54 | marginTop: "-40px",
55 | padding: "20px 0",
56 | marginBottom: "15px"
57 | },
58 | socialIcons: {
59 | maxWidth: "24px",
60 | marginTop: "0",
61 | width: "100%",
62 | transform: "none",
63 | left: "0",
64 | top: "0",
65 | height: "100%",
66 | lineHeight: "41px",
67 | fontSize: "20px"
68 | },
69 | divider: {
70 | marginTop: "30px",
71 | marginBottom: "0px",
72 | textAlign: "center"
73 | },
74 | cardFooter: {
75 | paddingTop: "0rem",
76 | border: "0",
77 | borderRadius: "6px",
78 | justifyContent: "center !important"
79 | },
80 | socialLine: {
81 | marginTop: "1rem",
82 | textAlign: "center",
83 | padding: "0"
84 | },
85 | inputIconsColor: {
86 | color: "#495057"
87 | }
88 | };
89 |
90 | export default signupPageStyle;
91 |
--------------------------------------------------------------------------------
/src/assets/jss/material-kit-react/views/profilePage.jsx:
--------------------------------------------------------------------------------
1 | import { container, title } from "assets/jss/material-kit-react.jsx";
2 |
3 | import imagesStyle from "assets/jss/material-kit-react/imagesStyles.jsx";
4 |
5 | const profilePageStyle = {
6 | container,
7 | profile: {
8 | textAlign: "center",
9 | "& img": {
10 | maxWidth: "160px",
11 | width: "100%",
12 | margin: "0 auto",
13 | transform: "translate3d(0, -50%, 0)"
14 | }
15 | },
16 | description: {
17 | margin: "1.071rem auto 0",
18 | maxWidth: "600px",
19 | color: "#999",
20 | textAlign: "center !important"
21 | },
22 | name: {
23 | marginTop: "-80px"
24 | },
25 | ...imagesStyle,
26 | main: {
27 | background: "#FFFFFF",
28 | position: "relative",
29 | zIndex: "3"
30 | },
31 | mainRaised: {
32 | margin: "-60px 30px 0px",
33 | borderRadius: "6px",
34 | boxShadow:
35 | "0 16px 24px 2px rgba(0, 0, 0, 0.14), 0 6px 30px 5px rgba(0, 0, 0, 0.12), 0 8px 10px -5px rgba(0, 0, 0, 0.2)"
36 | },
37 | title: {
38 | ...title,
39 | display: "inline-block",
40 | position: "relative",
41 | marginTop: "30px",
42 | minHeight: "32px",
43 | textDecoration: "none"
44 | },
45 | socials: {
46 | marginTop: "0",
47 | width: "100%",
48 | transform: "none",
49 | left: "0",
50 | top: "0",
51 | height: "100%",
52 | lineHeight: "41px",
53 | fontSize: "20px",
54 | color: "#999"
55 | },
56 | navWrapper: {
57 | margin: "20px auto 50px auto",
58 | textAlign: "center"
59 | }
60 | };
61 |
62 | export default profilePageStyle;
63 |
--------------------------------------------------------------------------------
/src/assets/scss/core/_misc.scss:
--------------------------------------------------------------------------------
1 | html * {
2 | -webkit-font-smoothing: antialiased;
3 | -moz-osx-font-smoothing: grayscale;
4 | }
5 | body {
6 | font-size: 1rem;
7 | }
8 | body,
9 | h1,
10 | h2,
11 | h3,
12 | h4,
13 | h5,
14 | h6 {
15 | font-family: "Roboto", "Helvetica", "Arial", sans-serif;
16 | font-weight: 300;
17 | line-height: 1.5em;
18 | }
19 | h1,
20 | h2,
21 | h3,
22 | h4,
23 | h5,
24 | h6 {
25 | color: inherit;
26 | }
27 | h1,
28 | h2,
29 | h3 {
30 | margin-top: 20px;
31 | margin-bottom: 10px;
32 | }
33 | h4,
34 | h5,
35 | h6 {
36 | margin-top: 10px;
37 | margin-bottom: 10px;
38 | }
39 | h1 {
40 | font-size: 3.3125rem;
41 | line-height: 1.15em;
42 | }
43 | h2 {
44 | font-size: 2.25rem;
45 | line-height: 1.5em;
46 | }
47 | h3 {
48 | font-size: 1.5625rem;
49 | line-height: 1.4em;
50 | }
51 | h4 {
52 | font-size: 1.125rem;
53 | line-height: 1.5em;
54 | }
55 | h5 {
56 | font-size: 1.0625rem;
57 | line-height: 1.55em;
58 | }
59 | h6 {
60 | font-size: 0.75rem;
61 | text-transform: uppercase;
62 | font-weight: 500;
63 | }
64 | p {
65 | font-size: 14px;
66 | margin: 0 0 10px;
67 | }
68 | html {
69 | font-family: sans-serif;
70 | line-height: 1.15;
71 | -webkit-text-size-adjust: 100%;
72 | -ms-text-size-adjust: 100%;
73 | -ms-overflow-style: scrollbar;
74 | -webkit-tap-highlight-color: transparent;
75 | }
76 | body {
77 | background-color: #e5e5e5;
78 | color: $black-color;
79 | margin: 0;
80 | font-size: 1rem;
81 | text-align: left;
82 | }
83 |
84 | legend {
85 | border-bottom: 0;
86 | }
87 |
88 | // Prevent highlight on mobile
89 | * {
90 | -webkit-tap-highlight-color: rgba(255, 255, 255, 0);
91 | -webkit-tap-highlight-color: transparent;
92 | box-sizing: border-box;
93 | &:focus {
94 | outline: 0;
95 | }
96 | }
97 |
98 | a {
99 | color: $link-color;
100 | text-decoration: none;
101 | background-color: transparent;
102 | &:hover,
103 | &:focus {
104 | color: darken($link-color, 5%);
105 | text-decoration: none;
106 | }
107 | }
108 |
109 | label {
110 | font-size: 14px;
111 | line-height: 1.42857;
112 | color: $checkboxes-text-color;
113 | font-weight: 400;
114 | }
115 | small {
116 | font-size: 75%;
117 | color: #777;
118 | font-weight: 400;
119 | }
120 | img {
121 | vertical-align: middle;
122 | border-style: none;
123 | }
124 | form {
125 | margin-bottom: 1.125rem;
126 | }
127 |
--------------------------------------------------------------------------------
/src/assets/scss/core/_mixins.scss:
--------------------------------------------------------------------------------
1 | @import "mixins/colored-shadows";
2 |
--------------------------------------------------------------------------------
/src/assets/scss/core/_variables.scss:
--------------------------------------------------------------------------------
1 | @import "variables/colors";
2 | @import "variables/shadow";
3 |
4 | @import "variables/bootstrap-material-design-base";
5 |
6 | // Customized BS variables
7 | @import "variables/brand";
8 |
9 | // import their vars after customization for use below
10 | $enable-flex: true; // fully adopt flexbox layouts
11 | $enable-shadows: true; // enable shadows, set to false to turn off shadows
12 |
13 | // // Core Bootstrap Variables
14 | @import "variables/functions";
15 | @import "variables/variables";
16 |
17 | @import "variables/bootstrap-material-design";
18 |
--------------------------------------------------------------------------------
/src/assets/scss/core/mixins/_colored-shadows.scss:
--------------------------------------------------------------------------------
1 | @mixin shadow-big() {
2 | box-shadow: 0 16px 38px -12px rgba(0, 0, 0, $bmd-shadow-penumbra-opacity * 4),
3 | 0 4px 25px 0px rgba(0, 0, 0, $bmd-shadow-ambient-opacity),
4 | 0 8px 10px -5px rgba(0, 0, 0, $bmd-shadow-umbra-opacity);
5 | }
6 |
7 | @mixin shadow-big-image() {
8 | // new box shadow optimized for Tables and Phones
9 | box-shadow: 0 5px 15px -8px rgba(0, 0, 0, $bmd-shadow-ambient-opacity * 2),
10 | 0 8px 10px -5px rgba(0, 0, 0, $bmd-shadow-umbra-opacity);
11 | }
12 |
13 | @mixin shadow-big-navbar() {
14 | box-shadow: 0 10px 20px -12px rgba(0, 0, 0, $bmd-shadow-penumbra-opacity * 3),
15 | 0 3px 20px 0px rgba(0, 0, 0, $bmd-shadow-ambient-opacity),
16 | 0 8px 10px -5px rgba(0, 0, 0, $bmd-shadow-umbra-opacity);
17 | }
18 |
19 | @mixin shadow-big-color($color) {
20 | // new box shadow optimized for Tables and Phones
21 | box-shadow: 0 5px 20px 0px rgba(0, 0, 0, 0.2),
22 | 0 13px 24px -11px rgba($color, 0.6);
23 | }
24 |
25 | @mixin shadow-small-color($color) {
26 | // new box shadow optimized for Tablets and Phones
27 | box-shadow: 0 4px 20px 0px rgba(0, 0, 0, 0.14),
28 | 0 7px 10px -5px rgba($color, 0.4);
29 | }
30 |
31 | @mixin shadow-navbar-color($color) {
32 | // new box shadow optimized for Tablets and Phones
33 |
34 | @if ($color == $white-color) {
35 | box-shadow: 0 4px 18px 0px rgba(0, 0, 0, 0.12),
36 | 0 7px 10px -5px rgba(0, 0, 0, 0.15);
37 | } @else {
38 | box-shadow: 0 4px 20px 0px rgba(0, 0, 0, 0.14),
39 | 0 7px 12px -5px rgba($color, 0.46);
40 | }
41 | }
42 |
43 | @mixin shadow-2dp() {
44 | box-shadow: 0 2px 2px 0 rgba(0, 0, 0, $bmd-shadow-penumbra-opacity),
45 | 0 3px 1px -2px rgba(0, 0, 0, $bmd-shadow-ambient-opacity),
46 | 0 1px 5px 0 rgba(0, 0, 0, $bmd-shadow-umbra-opacity);
47 | }
48 |
49 | @mixin shadow-4dp() {
50 | box-shadow: 0 4px 5px 0 rgba(0, 0, 0, $bmd-shadow-penumbra-opacity),
51 | 0 1px 10px 0 rgba(0, 0, 0, $bmd-shadow-ambient-opacity),
52 | 0 2px 4px -1px rgba(0, 0, 0, $bmd-shadow-umbra-opacity);
53 | }
54 |
55 | @mixin shadow-6dp() {
56 | box-shadow: 0 6px 10px 0 rgba(0, 0, 0, $bmd-shadow-penumbra-opacity),
57 | 0 1px 18px 0 rgba(0, 0, 0, $bmd-shadow-ambient-opacity),
58 | 0 3px 5px -1px rgba(0, 0, 0, $bmd-shadow-umbra-opacity);
59 | }
60 |
61 | @mixin shadow-8dp() {
62 | box-shadow: 0 8px 10px 1px rgba(0, 0, 0, $bmd-shadow-penumbra-opacity),
63 | 0 3px 14px 2px rgba(0, 0, 0, $bmd-shadow-ambient-opacity),
64 | 0 5px 5px -3px rgba(0, 0, 0, $bmd-shadow-umbra-opacity);
65 | }
66 |
67 | @mixin shadow-16dp() {
68 | box-shadow: 0 16px 24px 2px rgba(0, 0, 0, $bmd-shadow-penumbra-opacity),
69 | 0 6px 30px 5px rgba(0, 0, 0, $bmd-shadow-ambient-opacity),
70 | 0 8px 10px -5px rgba(0, 0, 0, $bmd-shadow-umbra-opacity);
71 | }
72 |
73 | @mixin shadow-2dp-color($color) {
74 | box-shadow: 0 2px 2px 0 rgba($color, $bmd-shadow-penumbra-opacity),
75 | 0 3px 1px -2px rgba($color, $bmd-shadow-umbra-opacity),
76 | 0 1px 5px 0 rgba($color, $bmd-shadow-ambient-opacity);
77 | }
78 |
79 | @mixin shadow-4dp-color($color) {
80 | box-shadow: 0 4px 5px 0 rgba($color, $bmd-shadow-penumbra-opacity),
81 | 0 1px 10px 0 rgba($color, $bmd-shadow-ambient-opacity),
82 | 0 2px 4px -1px rgba($color, $bmd-shadow-umbra-opacity);
83 | }
84 |
85 | @mixin shadow-8dp-color($color) {
86 | box-shadow: 0 8px 10px 1px rgba($color, $bmd-shadow-penumbra-opacity),
87 | 0 3px 14px 2px rgba(0, 0, 0, $bmd-shadow-ambient-opacity),
88 | 0 5px 5px -3px rgba($color, $bmd-shadow-umbra-opacity);
89 | }
90 |
91 | @mixin shadow-16dp-color($color) {
92 | box-shadow: 0 16px 24px 2px rgba($color, $bmd-shadow-penumbra-opacity),
93 | 0 6px 30px 5px rgba(0, 0, 0, $bmd-shadow-ambient-opacity),
94 | 0 8px 10px -5px rgba($color, $bmd-shadow-umbra-opacity);
95 | }
96 |
97 | @mixin button-shadow-color($color) {
98 | box-shadow: 0 14px 26px -12px rgba($color, $bmd-shadow-penumbra-opacity * 3),
99 | 0 4px 23px 0px rgba(0, 0, 0, $bmd-shadow-ambient-opacity),
100 | 0 8px 10px -5px rgba($color, $bmd-shadow-umbra-opacity);
101 | }
102 |
103 | @mixin shadow-z-1() {
104 | box-shadow: 0 1px 6px 0 rgba(0, 0, 0, 0.12), 0 1px 6px 0 rgba(0, 0, 0, 0.12);
105 | }
106 |
107 | @mixin shadow-z-1-hover() {
108 | box-shadow: 0 5px 11px 0 rgba(0, 0, 0, 0.18), 0 4px 15px 0 rgba(0, 0, 0, 0.15);
109 | }
110 |
111 | @mixin shadow-z-2() {
112 | box-shadow: 0 8px 17px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
113 | }
114 |
115 | @mixin shadow-z-3() {
116 | box-shadow: 0 12px 15px 0 rgba(0, 0, 0, 0.24),
117 | 0 17px 50px 0 rgba(0, 0, 0, 0.19);
118 | }
119 |
120 | @mixin shadow-z-4() {
121 | box-shadow: 0 16px 28px 0 rgba(0, 0, 0, 0.22),
122 | 0 25px 55px 0 rgba(0, 0, 0, 0.21);
123 | }
124 |
125 | @mixin shadow-z-5() {
126 | box-shadow: 0 27px 24px 0 rgba(0, 0, 0, 0.2),
127 | 0 40px 77px 0 rgba(0, 0, 0, 0.22);
128 | }
129 |
--------------------------------------------------------------------------------
/src/assets/scss/core/variables/_bootstrap-material-design-base.scss:
--------------------------------------------------------------------------------
1 | $gray-lighter: rgba($black, 0.12) !default;
2 | $gray-light: #999 !default;
3 | $gray-alpha: 0.54 !default;
4 | $gray: #555 !default; // spec color
5 | $gray-dark: rgba(
6 | $black,
7 | 0.87
8 | ) !default; // used for text color - others use grey-600 which is considerably lighter
9 |
10 | $bmd-font-weight-base: 400;
11 |
12 | // wondering if any of these could still be refactored out, but are definitely in use.
13 | $bmd-inverse: rgba($white, 1) !default;
14 | $bmd-inverse-light: rgba($white, 0.84) !default;
15 | $bmd-inverse-lighter: rgba($white, 0.54) !default;
16 |
17 | $bmd-label-color: $gray-color !default;
18 | $bmd-label-color-inner-focus: $gray !default; // e.g. radio label or text-muted not a control-label which is primary
19 |
20 | $border-radius-base: 3px !default;
21 | $border-radius-small: 2px !default;
22 | $border-radius-large: 6px !default;
23 | $border-radius-huge: 10px !default;
24 | $border-radius-label: 12px !default;
25 | $border-radius-extreme: 30px !default;
26 |
27 | // Typography elements
28 | $mdb-font-family: "Roboto", "Helvetica", "Arial", sans-serif !default;
29 | $mdb-text-color-light: $white !default;
30 | $mdb-text-color-light-hex: $white !default; // for contrast function in inverse
31 | $mdb-text-color-primary: unquote("rgba(#{$rgb-black}, 0.87)") !default;
32 | $mdb-text-color-primary-hex: $black !default; // for contrast function in inverse
33 | $icon-color: rgba(0, 0, 0, 0.5) !default;
34 |
35 | $mdb-label-color: unquote("rgba(#{$rgb-black}, 0.26)") !default;
36 | $mdb-label-color-toggle-focus: unquote("rgba(#{$rgb-black}, .54)") !default;
37 |
--------------------------------------------------------------------------------
/src/assets/scss/core/variables/_brand.scss:
--------------------------------------------------------------------------------
1 | // Bootstrap brand color customization
2 | $brand-primary: $purple !default;
3 | $brand-success: $green !default;
4 | $brand-danger: $red !default;
5 | $brand-warning: $orange !default;
6 | $brand-info: $cyan !default;
7 | $brand-rose: $pink !default;
8 |
--------------------------------------------------------------------------------
/src/assets/scss/core/variables/_functions.scss:
--------------------------------------------------------------------------------
1 | // Bootstrap functions
2 | //
3 | // Utility mixins and functions for evalutating source code across our variables, maps, and mixins.
4 |
5 | // Ascending
6 | // Used to evaluate Sass maps like our grid breakpoints.
7 | @mixin _assert-ascending($map, $map-name) {
8 | $prev-key: null;
9 | $prev-num: null;
10 | @each $key, $num in $map {
11 | @if $prev-num == null {
12 | // Do nothing
13 | } @else if not comparable($prev-num, $num) {
14 | @warn "Potentially invalid value for #{$map-name}: This map must be in ascending order, but key '#{$key}' has value #{$num} whose unit makes it incomparable to #{$prev-num}, the value of the previous key '#{$prev-key}' !";
15 | } @else if $prev-num >= $num {
16 | @warn "Invalid value for #{$map-name}: This map must be in ascending order, but key '#{$key}' has value #{$num} which isn't greater than #{$prev-num}, the value of the previous key '#{$prev-key}' !";
17 | }
18 | $prev-key: $key;
19 | $prev-num: $num;
20 | }
21 | }
22 |
23 | // Starts at zero
24 | // Another grid mixin that ensures the min-width of the lowest breakpoint starts at 0.
25 | @mixin _assert-starts-at-zero($map) {
26 | $values: map-values($map);
27 | $first-value: nth($values, 1);
28 | @if $first-value != 0 {
29 | @warn "First breakpoint in `$grid-breakpoints` must start at 0, but starts at #{$first-value}.";
30 | }
31 | }
32 |
33 | // Replace `$search` with `$replace` in `$string`
34 | // Used on our SVG icon backgrounds for custom forms.
35 | //
36 | // @author Hugo Giraudel
37 | // @param {String} $string - Initial string
38 | // @param {String} $search - Substring to replace
39 | // @param {String} $replace ('') - New value
40 | // @return {String} - Updated string
41 | @function str-replace($string, $search, $replace: "") {
42 | $index: str-index($string, $search);
43 |
44 | @if $index {
45 | @return str-slice($string, 1, $index - 1) + $replace +
46 | str-replace(
47 | str-slice($string, $index + str-length($search)),
48 | $search,
49 | $replace
50 | );
51 | }
52 |
53 | @return $string;
54 | }
55 |
56 | // Color contrast
57 | @function color-yiq($color) {
58 | $r: red($color);
59 | $g: green($color);
60 | $b: blue($color);
61 |
62 | $yiq: (($r * 299) + ($g * 587) + ($b * 114)) / 1000;
63 |
64 | @if ($yiq >= $yiq-contrasted-threshold) {
65 | @return $yiq-text-dark;
66 | } @else {
67 | @return $yiq-text-light;
68 | }
69 | }
70 |
71 | // Retrieve color Sass maps
72 | @function color($key: "blue") {
73 | @return map-get($colors, $key);
74 | }
75 |
76 | @function theme-color($key: "primary") {
77 | @return map-get($theme-colors, $key);
78 | }
79 |
80 | @function gray($key: "100") {
81 | @return map-get($grays, $key);
82 | }
83 |
84 | // Request a theme color level
85 | @function theme-color-level($color-name: "primary", $level: 0) {
86 | $color: theme-color($color-name);
87 | $color-base: if($level > 0, #000, #fff);
88 | $level: abs($level);
89 |
90 | @return mix($color-base, $color, $level * $theme-color-interval);
91 | }
92 |
--------------------------------------------------------------------------------
/src/assets/scss/core/variables/_shadow.scss:
--------------------------------------------------------------------------------
1 | // Shadows (originally from mdl http://www.getmdl.io/)
2 | $bmd-shadow-umbra-opacity: 0.2 !default;
3 | $bmd-shadow-penumbra-opacity: 0.14 !default;
4 | $bmd-shadow-ambient-opacity: 0.12 !default;
5 |
6 | // Declare the following for reuse with both mixins and the bootstrap variables
7 | $bmd-shadow-focus: 0 0 8px rgba($black, 0.18), 0 8px 16px rgba($black, 0.36);
8 |
9 | $bmd-shadow-2dp: 0 2px 2px 0 rgba($black, $bmd-shadow-penumbra-opacity),
10 | 0 3px 1px -2px rgba($black, $bmd-shadow-umbra-opacity),
11 | 0 1px 5px 0 rgba($black, $bmd-shadow-ambient-opacity);
12 |
13 | $bmd-shadow-3dp: 0 3px 4px 0 rgba($black, $bmd-shadow-penumbra-opacity),
14 | 0 3px 3px -2px rgba($black, $bmd-shadow-umbra-opacity),
15 | 0 1px 8px 0 rgba($black, $bmd-shadow-ambient-opacity);
16 |
17 | $bmd-shadow-4dp: 0 4px 5px 0 rgba($black, $bmd-shadow-penumbra-opacity),
18 | 0 1px 10px 0 rgba($black, $bmd-shadow-ambient-opacity),
19 | 0 2px 4px -1px rgba($black, $bmd-shadow-umbra-opacity);
20 |
21 | $bmd-shadow-6dp: 0 6px 10px 0 rgba($black, $bmd-shadow-penumbra-opacity),
22 | 0 1px 18px 0 rgba($black, $bmd-shadow-ambient-opacity),
23 | 0 3px 5px -1px rgba($black, $bmd-shadow-umbra-opacity);
24 |
25 | $bmd-shadow-8dp: 0 8px 10px 1px rgba($black, $bmd-shadow-penumbra-opacity),
26 | 0 3px 14px 2px rgba($black, $bmd-shadow-ambient-opacity),
27 | 0 5px 5px -3px rgba($black, $bmd-shadow-umbra-opacity);
28 |
29 | $bmd-shadow-16dp: 0 16px 24px 2px rgba($black, $bmd-shadow-penumbra-opacity),
30 | 0 6px 30px 5px rgba($black, $bmd-shadow-ambient-opacity),
31 | 0 8px 10px -5px rgba($black, $bmd-shadow-umbra-opacity);
32 |
33 | $bmd-shadow-24dp: 0 9px 46px 8px rgba($black, $bmd-shadow-penumbra-opacity),
34 | 0 11px 15px -7px rgba($black, $bmd-shadow-ambient-opacity),
35 | 0 24px 38px 3px rgba($black, $bmd-shadow-umbra-opacity);
36 |
--------------------------------------------------------------------------------
/src/assets/scss/material-kit-react.scss:
--------------------------------------------------------------------------------
1 | /*! =========================================================
2 | *
3 | * Material Kit React v1.4.0 based on Material Kit Free - v2.0.2 (Bootstrap 4.0.0 Final Edition)
4 | *
5 | * =========================================================
6 | *
7 | * Product Page: https://www.creative-tim.com/product/material-kit-pro
8 | * Available with purchase of license from https://www.creative-tim.com/product/material-kit-pro
9 | * Copyright 2018 Creative Tim (https://www.creative-tim.com)
10 | * License Creative Tim (https://www.creative-tim.com/license)
11 | *
12 | * ========================================================= */
13 |
14 | @import "core/variables";
15 | @import "core/mixins";
16 |
17 | // Core Components
18 | @import "core/misc";
19 |
20 | // Core Plugins
21 |
22 | // @import "plugins/plugin-datetime-picker";
23 | @import "plugins/plugin-nouislider";
24 | @import "plugins/plugin-react-datetime";
25 | @import "plugins/plugin-react-slick";
26 |
--------------------------------------------------------------------------------
/src/assets/scss/plugins/_plugin-react-slick.scss:
--------------------------------------------------------------------------------
1 | /* Slider */
2 | .slick-slider {
3 | position: relative;
4 |
5 | display: block;
6 | box-sizing: border-box;
7 |
8 | -webkit-user-select: none;
9 | -moz-user-select: none;
10 | -ms-user-select: none;
11 | user-select: none;
12 |
13 | -webkit-touch-callout: none;
14 | -khtml-user-select: none;
15 | -ms-touch-action: pan-y;
16 | touch-action: pan-y;
17 | -webkit-tap-highlight-color: transparent;
18 |
19 | @media (min-width: 768px) {
20 | .slick-caption {
21 | display: block !important;
22 | }
23 | }
24 |
25 | .slick-caption {
26 | padding-bottom: 45px;
27 | position: absolute;
28 | right: 15%;
29 | bottom: 20px;
30 | left: 15%;
31 | z-index: 10;
32 | padding-top: 20px;
33 | color: #ffffff;
34 | text-align: center;
35 | z-index: 3;
36 | display: none;
37 | }
38 | .slick-slide {
39 | > div:first-child {
40 | position: relative;
41 | }
42 | }
43 | .slick-icons {
44 | position: relative;
45 | top: 5px;
46 | }
47 | .slick-image {
48 | width: 100% !important;
49 | display: inline-flex !important;
50 | }
51 | }
52 |
53 | .slick-list {
54 | position: relative;
55 |
56 | display: block;
57 | overflow: hidden;
58 |
59 | margin: 0;
60 | padding: 0;
61 | }
62 | .slick-list:focus {
63 | outline: none;
64 | }
65 | .slick-list.dragging {
66 | cursor: pointer;
67 | cursor: hand;
68 | }
69 |
70 | .slick-slider .slick-track,
71 | .slick-slider .slick-list {
72 | -webkit-transform: translate3d(0, 0, 0);
73 | -moz-transform: translate3d(0, 0, 0);
74 | -ms-transform: translate3d(0, 0, 0);
75 | -o-transform: translate3d(0, 0, 0);
76 | transform: translate3d(0, 0, 0);
77 | }
78 |
79 | .slick-track {
80 | position: relative;
81 | top: 0;
82 | left: 0;
83 |
84 | display: block;
85 | margin-left: auto;
86 | margin-right: auto;
87 | }
88 | .slick-track:before,
89 | .slick-track:after {
90 | display: table;
91 |
92 | content: "";
93 | }
94 | .slick-track:after {
95 | clear: both;
96 | }
97 | .slick-loading .slick-track {
98 | visibility: hidden;
99 | }
100 |
101 | .slick-slide {
102 | display: none;
103 | float: left;
104 |
105 | height: 100%;
106 | min-height: 1px;
107 | }
108 | [dir="rtl"] .slick-slide {
109 | float: right;
110 | }
111 | .slick-slide img {
112 | display: block;
113 | }
114 | .slick-slide.slick-loading img {
115 | display: none;
116 | }
117 | .slick-slide.dragging img {
118 | pointer-events: none;
119 | }
120 | .slick-initialized .slick-slide {
121 | display: block;
122 | }
123 | .slick-loading .slick-slide {
124 | visibility: hidden;
125 | }
126 | .slick-vertical .slick-slide {
127 | display: block;
128 |
129 | height: auto;
130 |
131 | border: 1px solid transparent;
132 | }
133 | .slick-arrow.slick-hidden {
134 | display: none;
135 | }
136 | button.slick-arrow.slick-prev,
137 | button.slick-arrow.slick-next {
138 | font-size: 0;
139 | line-height: 0;
140 | position: absolute;
141 | top: 50%;
142 | display: block;
143 | // width: 20px;
144 | height: 100%;
145 | padding: 0;
146 | -ms-transform: translateY(-50%);
147 | transform: translateY(-50%);
148 | cursor: pointer;
149 | border: none;
150 | color: transparent;
151 | outline: none;
152 | background: transparent;
153 | width: 15%;
154 | z-index: 2;
155 | opacity: 0.5;
156 | }
157 | .slick-prev {
158 | left: 0;
159 | &::before {
160 | content: "\f053";
161 | font-weight: 600;
162 | font-family: Font Awesome\ 5 Free;
163 | -moz-osx-font-smoothing: grayscale;
164 | -webkit-font-smoothing: antialiased;
165 | display: inline-block;
166 | font-style: normal;
167 | font-variant: normal;
168 | text-rendering: auto;
169 | line-height: 1;
170 | color: white;
171 | font-size: 30px;
172 | width: 100%;
173 | }
174 | }
175 | .slick-next {
176 | right: 0;
177 | &::before {
178 | content: "\f054";
179 | font-weight: 600;
180 | font-family: Font Awesome\ 5 Free;
181 | -moz-osx-font-smoothing: grayscale;
182 | -webkit-font-smoothing: antialiased;
183 | display: inline-block;
184 | font-style: normal;
185 | font-variant: normal;
186 | text-rendering: auto;
187 | line-height: 1;
188 | color: #fff;
189 | font-size: 30px;
190 | width: 100%;
191 | }
192 | }
193 | .slick-list {
194 | z-index: 1;
195 | }
196 | .slick-dots {
197 | margin-top: 0;
198 | margin-bottom: 1rem;
199 | position: absolute;
200 | bottom: 5px;
201 | // margin-right: 15%;
202 | // margin-left: 15%;
203 | width: 100%;
204 | padding: 0;
205 | list-style: none;
206 | text-align: center;
207 | z-index: 3;
208 | }
209 | .slick-dots li,
210 | .slick-dots li button {
211 | width: 20px;
212 | height: 20px;
213 | cursor: pointer;
214 | }
215 | .slick-dots li {
216 | position: relative;
217 | display: inline-block;
218 | margin: 0 5px;
219 | padding: 0;
220 | }
221 | .slick-dots li button {
222 | font-size: 0;
223 | line-height: 0;
224 | display: block;
225 | padding: 5px;
226 | color: transparent;
227 | border: 0;
228 | outline: none;
229 | background: transparent;
230 | &::before {
231 | position: absolute;
232 | top: 0;
233 | left: 0;
234 | width: 10px;
235 | height: 10px;
236 | content: "\2022";
237 | text-align: center;
238 | opacity: 1;
239 | background-color: #fff;
240 | -webkit-font-smoothing: antialiased;
241 | -moz-osx-font-smoothing: grayscale;
242 | box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14),
243 | 0 3px 1px -2px rgba(0, 0, 0, 0.12), 0 1px 5px 0 rgba(0, 0, 0, 0.2);
244 | border-radius: 2px;
245 | transition: all 300ms linear;
246 | }
247 | }
248 | .slick-dots li.slick-active button:before {
249 | width: 15px;
250 | height: 15px;
251 | box-shadow: 0 4px 5px 0 rgba(0, 0, 0, 0.14), 0 1px 10px 0 rgba(0, 0, 0, 0.12),
252 | 0 2px 4px -1px rgba(0, 0, 0, 0.2);
253 | top: -3px;
254 | }
255 |
--------------------------------------------------------------------------------
/src/components/Badge/Badge.jsx:
--------------------------------------------------------------------------------
1 | import React from "react";
2 | // nodejs library to set properties for components
3 | import PropTypes from "prop-types";
4 |
5 | // @material-ui/core components
6 | import withStyles from "@material-ui/core/styles/withStyles";
7 |
8 | import badgeStyle from "assets/jss/material-kit-react/components/badgeStyle.jsx";
9 |
10 | function Badge({ ...props }) {
11 | const { classes, color, children } = props;
12 | return (
13 | {children}
14 | );
15 | }
16 |
17 | Badge.defaultProps = {
18 | color: "gray"
19 | };
20 |
21 | Badge.propTypes = {
22 | classes: PropTypes.object.isRequired,
23 | color: PropTypes.oneOf([
24 | "primary",
25 | "warning",
26 | "danger",
27 | "success",
28 | "info",
29 | "rose",
30 | "gray"
31 | ])
32 | };
33 |
34 | export default withStyles(badgeStyle)(Badge);
35 |
--------------------------------------------------------------------------------
/src/components/Card/Card.jsx:
--------------------------------------------------------------------------------
1 | import React from "react";
2 | // nodejs library that concatenates classes
3 | import classNames from "classnames";
4 | // nodejs library to set properties for components
5 | import PropTypes from "prop-types";
6 | // @material-ui/core components
7 | import withStyles from "@material-ui/core/styles/withStyles";
8 | // @material-ui/icons
9 |
10 | // core components
11 | import cardStyle from "assets/jss/material-kit-react/components/cardStyle.jsx";
12 |
13 | function Card({ ...props }) {
14 | const { classes, className, children, plain, carousel, ...rest } = props;
15 | const cardClasses = classNames({
16 | [classes.card]: true,
17 | [classes.cardPlain]: plain,
18 | [classes.cardCarousel]: carousel,
19 | [className]: className !== undefined
20 | });
21 | return (
22 |
23 | {children}
24 |
25 | );
26 | }
27 |
28 | Card.propTypes = {
29 | classes: PropTypes.object.isRequired,
30 | className: PropTypes.string,
31 | plain: PropTypes.bool,
32 | carousel: PropTypes.bool
33 | };
34 |
35 | export default withStyles(cardStyle)(Card);
36 |
--------------------------------------------------------------------------------
/src/components/Card/CardBody.jsx:
--------------------------------------------------------------------------------
1 | import React from "react";
2 | // nodejs library that concatenates classes
3 | import classNames from "classnames";
4 | // nodejs library to set properties for components
5 | import PropTypes from "prop-types";
6 | // @material-ui/core components
7 | import withStyles from "@material-ui/core/styles/withStyles";
8 | // @material-ui/icons
9 |
10 | // core components
11 | import cardBodyStyle from "assets/jss/material-kit-react/components/cardBodyStyle.jsx";
12 |
13 | function CardBody({ ...props }) {
14 | const { classes, className, children, ...rest } = props;
15 | const cardBodyClasses = classNames({
16 | [classes.cardBody]: true,
17 | [className]: className !== undefined
18 | });
19 | return (
20 |
21 | {children}
22 |
23 | );
24 | }
25 |
26 | CardBody.propTypes = {
27 | classes: PropTypes.object.isRequired,
28 | className: PropTypes.string
29 | };
30 |
31 | export default withStyles(cardBodyStyle)(CardBody);
32 |
--------------------------------------------------------------------------------
/src/components/Card/CardFooter.jsx:
--------------------------------------------------------------------------------
1 | import React from "react";
2 | // nodejs library that concatenates classes
3 | import classNames from "classnames";
4 | // nodejs library to set properties for components
5 | import PropTypes from "prop-types";
6 | // @material-ui/core components
7 | import withStyles from "@material-ui/core/styles/withStyles";
8 | // @material-ui/icons
9 |
10 | // core components
11 | import cardFooterStyle from "assets/jss/material-kit-react/components/cardFooterStyle.jsx";
12 |
13 | function CardFooter({ ...props }) {
14 | const { classes, className, children, ...rest } = props;
15 | const cardFooterClasses = classNames({
16 | [classes.cardFooter]: true,
17 | [className]: className !== undefined
18 | });
19 | return (
20 |
21 | {children}
22 |
23 | );
24 | }
25 |
26 | CardFooter.propTypes = {
27 | classes: PropTypes.object.isRequired,
28 | className: PropTypes.string
29 | };
30 |
31 | export default withStyles(cardFooterStyle)(CardFooter);
32 |
--------------------------------------------------------------------------------
/src/components/Card/CardHeader.jsx:
--------------------------------------------------------------------------------
1 | import React from "react";
2 | // nodejs library that concatenates classes
3 | import classNames from "classnames";
4 | // nodejs library to set properties for components
5 | import PropTypes from "prop-types";
6 | // @material-ui/core components
7 | import withStyles from "@material-ui/core/styles/withStyles";
8 | // @material-ui/icons
9 |
10 | // core components
11 | import cardHeaderStyle from "assets/jss/material-kit-react/components/cardHeaderStyle.jsx";
12 |
13 | function CardHeader({ ...props }) {
14 | const { classes, className, children, color, plain, ...rest } = props;
15 | const cardHeaderClasses = classNames({
16 | [classes.cardHeader]: true,
17 | [classes[color + "CardHeader"]]: color,
18 | [classes.cardHeaderPlain]: plain,
19 | [className]: className !== undefined
20 | });
21 | return (
22 |
23 | {children}
24 |
25 | );
26 | }
27 |
28 | CardHeader.propTypes = {
29 | classes: PropTypes.object.isRequired,
30 | className: PropTypes.string,
31 | color: PropTypes.oneOf(["warning", "success", "danger", "info", "primary"]),
32 | plain: PropTypes.bool
33 | };
34 |
35 | export default withStyles(cardHeaderStyle)(CardHeader);
36 |
--------------------------------------------------------------------------------
/src/components/Clearfix/Clearfix.jsx:
--------------------------------------------------------------------------------
1 | import React from "react";
2 | // nodejs library to set properties for components
3 | import PropTypes from "prop-types";
4 |
5 | // mterial-ui components
6 | import withStyles from "@material-ui/core/styles/withStyles";
7 |
8 | const style = {
9 | clearfix: {
10 | "&:after,&:before": {
11 | display: "table",
12 | content: '" "'
13 | },
14 | "&:after": {
15 | clear: "both"
16 | }
17 | }
18 | };
19 |
20 | function Clearfix({ ...props }) {
21 | const { classes } = props;
22 | return
;
23 | }
24 |
25 | Clearfix.propTypes = {
26 | classes: PropTypes.object.isRequired
27 | };
28 |
29 | export default withStyles(style)(Clearfix);
30 |
--------------------------------------------------------------------------------
/src/components/CustomButtons/Button.jsx:
--------------------------------------------------------------------------------
1 | import React from "react";
2 | // nodejs library to set properties for components
3 | import PropTypes from "prop-types";
4 | // nodejs library that concatenates classes
5 | import classNames from "classnames";
6 |
7 | // @material-ui/core components
8 | import withStyles from "@material-ui/core/styles/withStyles";
9 | import Button from "@material-ui/core/Button";
10 |
11 | // core components
12 |
13 | import buttonStyle from "assets/jss/material-kit-react/components/buttonStyle.jsx";
14 |
15 | function RegularButton({ ...props }) {
16 | const {
17 | classes,
18 | color,
19 | round,
20 | children,
21 | fullWidth,
22 | disabled,
23 | simple,
24 | size,
25 | block,
26 | link,
27 | justIcon,
28 | className,
29 | ...rest
30 | } = props;
31 | const btnClasses = classNames({
32 | [classes.button]: true,
33 | [classes[size]]: size,
34 | [classes[color]]: color,
35 | [classes.round]: round,
36 | [classes.fullWidth]: fullWidth,
37 | [classes.disabled]: disabled,
38 | [classes.simple]: simple,
39 | [classes.block]: block,
40 | [classes.link]: link,
41 | [classes.justIcon]: justIcon,
42 | [className]: className
43 | });
44 | return (
45 |
46 | {children}
47 |
48 | );
49 | }
50 |
51 | RegularButton.propTypes = {
52 | classes: PropTypes.object.isRequired,
53 | color: PropTypes.oneOf([
54 | "primary",
55 | "info",
56 | "success",
57 | "warning",
58 | "danger",
59 | "rose",
60 | "white",
61 | "facebook",
62 | "twitter",
63 | "google",
64 | "github",
65 | "transparent"
66 | ]),
67 | size: PropTypes.oneOf(["sm", "lg"]),
68 | simple: PropTypes.bool,
69 | round: PropTypes.bool,
70 | fullWidth: PropTypes.bool,
71 | disabled: PropTypes.bool,
72 | block: PropTypes.bool,
73 | link: PropTypes.bool,
74 | justIcon: PropTypes.bool
75 | };
76 |
77 | export default withStyles(buttonStyle)(RegularButton);
78 |
--------------------------------------------------------------------------------
/src/components/CustomDropdown/CustomDropdown.jsx:
--------------------------------------------------------------------------------
1 | import React from "react";
2 | // nodejs library that concatenates classes
3 | import classNames from "classnames";
4 | // nodejs library to set properties for components
5 | import PropTypes from "prop-types";
6 |
7 | // @material-ui/core components
8 | import withStyles from "@material-ui/core/styles/withStyles";
9 | import MenuItem from "@material-ui/core/MenuItem";
10 | import MenuList from "@material-ui/core/MenuList";
11 | import ClickAwayListener from "@material-ui/core/ClickAwayListener";
12 | import Paper from "@material-ui/core/Paper";
13 | import Grow from "@material-ui/core/Grow";
14 | import Divider from "@material-ui/core/Divider";
15 | import Icon from "@material-ui/core/Icon";
16 | import Popper from "@material-ui/core/Popper";
17 |
18 | // core components
19 | import Button from "components/CustomButtons/Button.jsx";
20 |
21 | import customDropdownStyle from "assets/jss/material-kit-react/components/customDropdownStyle.jsx";
22 |
23 | class CustomDropdown extends React.Component {
24 | constructor(props) {
25 | super(props);
26 | this.state = {
27 | open: false
28 | };
29 | }
30 | handleClick = () => {
31 | this.setState(state => ({ open: !state.open }));
32 | };
33 | handleClose = param => {
34 | this.setState({ open: false });
35 | if (this.props && this.props.onClick) {
36 | this.props.onClick(param);
37 | }
38 | };
39 | handleCloseAway = event => {
40 | if (this.anchorEl.contains(event.target)) {
41 | return;
42 | }
43 | this.setState({ open: false });
44 | };
45 | render() {
46 | const { open } = this.state;
47 | const {
48 | classes,
49 | buttonText,
50 | buttonIcon,
51 | dropdownList,
52 | buttonProps,
53 | dropup,
54 | dropdownHeader,
55 | caret,
56 | hoverColor,
57 | left,
58 | rtlActive,
59 | noLiPadding
60 | } = this.props;
61 | const caretClasses = classNames({
62 | [classes.caret]: true,
63 | [classes.caretActive]: open,
64 | [classes.caretRTL]: rtlActive
65 | });
66 | const dropdownItem = classNames({
67 | [classes.dropdownItem]: true,
68 | [classes[hoverColor + "Hover"]]: true,
69 | [classes.noLiPadding]: noLiPadding,
70 | [classes.dropdownItemRTL]: rtlActive
71 | });
72 | let icon = null;
73 | switch (typeof buttonIcon) {
74 | case "function":
75 | icon = ;
76 | break;
77 | case "string":
78 | icon = (
79 | {this.props.buttonIcon}
80 | );
81 | break;
82 | default:
83 | icon = null;
84 | break;
85 | }
86 | return (
87 |
88 |
89 | {
95 | this.anchorEl = node;
96 | }}
97 | onClick={this.handleClick}
98 | >
99 | {icon}
100 | {buttonText !== undefined ? buttonText : null}
101 | {caret ? : null}
102 |
103 |
104 |
123 | {({ TransitionProps, placement }) => (
124 |
168 | )}
169 |
170 |
171 | );
172 | }
173 | }
174 |
175 | CustomDropdown.defaultProps = {
176 | caret: true,
177 | hoverColor: "primary"
178 | };
179 |
180 | CustomDropdown.propTypes = {
181 | classes: PropTypes.object.isRequired,
182 | hoverColor: PropTypes.oneOf([
183 | "black",
184 | "primary",
185 | "info",
186 | "success",
187 | "warning",
188 | "danger",
189 | "rose"
190 | ]),
191 | buttonText: PropTypes.node,
192 | buttonIcon: PropTypes.oneOfType([PropTypes.func, PropTypes.string]),
193 | dropdownList: PropTypes.array,
194 | buttonProps: PropTypes.object,
195 | dropup: PropTypes.bool,
196 | dropdownHeader: PropTypes.node,
197 | rtlActive: PropTypes.bool,
198 | caret: PropTypes.bool,
199 | left: PropTypes.bool,
200 | noLiPadding: PropTypes.bool,
201 | // function that retuns the selected item
202 | onClick: PropTypes.func
203 | };
204 |
205 | export default withStyles(customDropdownStyle)(CustomDropdown);
206 |
--------------------------------------------------------------------------------
/src/components/CustomInput/CustomInput.jsx:
--------------------------------------------------------------------------------
1 | import React from "react";
2 | // nodejs library to set properties for components
3 | import PropTypes from "prop-types";
4 | // nodejs library that concatenates classes
5 | import classNames from "classnames";
6 | // @material-ui/core components
7 | import withStyles from "@material-ui/core/styles/withStyles";
8 | import FormControl from "@material-ui/core/FormControl";
9 | import InputLabel from "@material-ui/core/InputLabel";
10 | import Input from "@material-ui/core/Input";
11 |
12 | import customInputStyle from "assets/jss/material-kit-react/components/customInputStyle.jsx";
13 |
14 | function CustomInput({ ...props }) {
15 | const {
16 | classes,
17 | formControlProps,
18 | labelText,
19 | id,
20 | labelProps,
21 | inputProps,
22 | error,
23 | white,
24 | inputRootCustomClasses,
25 | success,
26 | errors,
27 | onChange,
28 | value,
29 | name
30 | } = props;
31 |
32 | const labelClasses = classNames({
33 | [" " + classes.labelRootError]: error,
34 | [" " + classes.labelRootSuccess]: success && !error
35 | });
36 | const underlineClasses = classNames({
37 | [classes.underlineError]: error,
38 | [classes.underlineSuccess]: success && !error,
39 | [classes.underline]: true,
40 | [classes.whiteUnderline]: white
41 | });
42 | const marginTop = classNames({
43 | [inputRootCustomClasses]: inputRootCustomClasses !== undefined
44 | });
45 | const inputClasses = classNames({
46 | [classes.input]: true,
47 | [classes.whiteInput]: white
48 | });
49 | var formControlClasses;
50 | if (formControlProps !== undefined) {
51 | formControlClasses = classNames(
52 | formControlProps.className,
53 | classes.formControl
54 | );
55 | } else {
56 | formControlClasses = classes.formControl;
57 | }
58 | return (
59 |
60 | {labelText !== undefined ? (
61 |
66 | {labelText}
67 |
68 | ) : null}
69 |
82 |
83 | { errors && errors.map(message => (
84 |
85 | {message}
86 |
87 | ))}
88 |
89 |
90 | );
91 | }
92 |
93 | CustomInput.propTypes = {
94 | classes: PropTypes.object.isRequired,
95 | labelText: PropTypes.node,
96 | labelProps: PropTypes.object,
97 | id: PropTypes.string,
98 | inputProps: PropTypes.object,
99 | formControlProps: PropTypes.object,
100 | inputRootCustomClasses: PropTypes.string,
101 | error: PropTypes.bool,
102 | success: PropTypes.bool,
103 | white: PropTypes.bool
104 | };
105 |
106 | export default withStyles(customInputStyle)(CustomInput);
107 |
--------------------------------------------------------------------------------
/src/components/CustomLinearProgress/CustomLinearProgress.jsx:
--------------------------------------------------------------------------------
1 | import React from "react";
2 | // nodejs library to set properties for components
3 | import PropTypes from "prop-types";
4 |
5 | // @material-ui/core components
6 | import withStyles from "@material-ui/core/styles/withStyles";
7 | import LinearProgress from "@material-ui/core/LinearProgress";
8 | // core components
9 | import customLinearProgressStyle from "assets/jss/material-kit-react/components/customLinearProgressStyle.jsx";
10 |
11 | function CustomLinearProgress({ ...props }) {
12 | const { classes, color, ...rest } = props;
13 | return (
14 |
21 | );
22 | }
23 |
24 | CustomLinearProgress.defaultProps = {
25 | color: "gray"
26 | };
27 |
28 | CustomLinearProgress.propTypes = {
29 | classes: PropTypes.object.isRequired,
30 | color: PropTypes.oneOf([
31 | "primary",
32 | "warning",
33 | "danger",
34 | "success",
35 | "info",
36 | "rose",
37 | "gray"
38 | ])
39 | };
40 |
41 | export default withStyles(customLinearProgressStyle)(CustomLinearProgress);
42 |
--------------------------------------------------------------------------------
/src/components/CustomTabs/CustomTabs.jsx:
--------------------------------------------------------------------------------
1 | import React from "react";
2 | // nodejs library that concatenates classes
3 | import classNames from "classnames";
4 | // nodejs library to set properties for components
5 | import PropTypes from "prop-types";
6 |
7 | // material-ui components
8 | import withStyles from "@material-ui/core/styles/withStyles";
9 | import Tabs from "@material-ui/core/Tabs";
10 | import Tab from "@material-ui/core/Tab";
11 | import Icon from "@material-ui/core/Icon";
12 | // core components
13 | import Card from "components/Card/Card.jsx";
14 | import CardBody from "components/Card/CardBody.jsx";
15 | import CardHeader from "components/Card/CardHeader.jsx";
16 |
17 | import customTabsStyle from "assets/jss/material-kit-react/components/customTabsStyle.jsx";
18 |
19 | class CustomTabs extends React.Component {
20 | state = {
21 | value: 0
22 | };
23 |
24 | handleChange = (event, value) => {
25 | this.setState({ value });
26 | };
27 |
28 | render() {
29 | const {
30 | classes,
31 | headerColor,
32 | plainTabs,
33 | tabs,
34 | title,
35 | rtlActive
36 | } = this.props;
37 | const cardTitle = classNames({
38 | [classes.cardTitle]: true,
39 | [classes.cardTitleRTL]: rtlActive
40 | });
41 | return (
42 |
43 |
44 | {title !== undefined ? (
45 | {title}
46 | ) : null}
47 |
55 | {tabs.map((prop, key) => {
56 | var icon = {};
57 | if (prop.tabIcon) {
58 | icon = {
59 | icon:
60 | typeof prop.tabIcon === "string" ? (
61 | {prop.tabIcon}
62 | ) : (
63 |
64 | )
65 | };
66 | }
67 | return (
68 |
80 | );
81 | })}
82 |
83 |
84 |
85 | {tabs.map((prop, key) => {
86 | if (key === this.state.value) {
87 | return {prop.tabContent}
;
88 | }
89 | return null;
90 | })}
91 |
92 |
93 | );
94 | }
95 | }
96 |
97 | CustomTabs.propTypes = {
98 | classes: PropTypes.object.isRequired,
99 | headerColor: PropTypes.oneOf([
100 | "warning",
101 | "success",
102 | "danger",
103 | "info",
104 | "primary",
105 | "rose"
106 | ]),
107 | title: PropTypes.string,
108 | tabs: PropTypes.arrayOf(
109 | PropTypes.shape({
110 | tabName: PropTypes.string.isRequired,
111 | tabIcon: PropTypes.func,
112 | tabContent: PropTypes.node.isRequired
113 | })
114 | ),
115 | rtlActive: PropTypes.bool,
116 | plainTabs: PropTypes.bool
117 | };
118 |
119 | export default withStyles(customTabsStyle)(CustomTabs);
120 |
--------------------------------------------------------------------------------
/src/components/Footer/Footer.jsx:
--------------------------------------------------------------------------------
1 | /*eslint-disable*/
2 | import React from "react";
3 | // nodejs library to set properties for components
4 | import PropTypes from "prop-types";
5 | // nodejs library that concatenates classes
6 | import classNames from "classnames";
7 | import { List, ListItem, withStyles } from "@material-ui/core";
8 |
9 | // @material-ui/icons
10 | import Favorite from "@material-ui/icons/Favorite";
11 |
12 | import footerStyle from "assets/jss/material-kit-react/components/footerStyle.jsx";
13 |
14 | function Footer({ ...props }) {
15 | const { classes, whiteFont } = props;
16 | const footerClasses = classNames({
17 | [classes.footer]: true,
18 | [classes.footerWhiteFont]: whiteFont
19 | });
20 | const aClasses = classNames({
21 | [classes.a]: true,
22 | [classes.footerWhiteFont]: whiteFont
23 | });
24 | return (
25 |
62 | );
63 | }
64 |
65 | Footer.propTypes = {
66 | classes: PropTypes.object.isRequired,
67 | whiteFont: PropTypes.bool
68 | };
69 |
70 | export default withStyles(footerStyle)(Footer);
71 |
--------------------------------------------------------------------------------
/src/components/Grid/GridContainer.jsx:
--------------------------------------------------------------------------------
1 | import React from "react";
2 | // nodejs library to set properties for components
3 | import PropTypes from "prop-types";
4 |
5 | // @material-ui/core components
6 | import withStyles from "@material-ui/core/styles/withStyles";
7 | import Grid from "@material-ui/core/Grid";
8 |
9 | const style = {
10 | grid: {
11 | marginRight: "-15px",
12 | marginLeft: "-15px",
13 | width: "auto"
14 | }
15 | };
16 |
17 | function GridContainer({ ...props }) {
18 | const { classes, children, className, ...rest } = props;
19 | return (
20 |
21 | {children}
22 |
23 | );
24 | }
25 |
26 | GridContainer.defaultProps = {
27 | className: ""
28 | };
29 |
30 | GridContainer.propTypes = {
31 | classes: PropTypes.object.isRequired,
32 | children: PropTypes.node,
33 | className: PropTypes.string
34 | };
35 |
36 | export default withStyles(style)(GridContainer);
37 |
--------------------------------------------------------------------------------
/src/components/Grid/GridItem.jsx:
--------------------------------------------------------------------------------
1 | import React from "react";
2 | // @material-ui/core components
3 | import withStyles from "@material-ui/core/styles/withStyles";
4 | import Grid from "@material-ui/core/Grid";
5 |
6 | const style = {
7 | grid: {
8 | position: "relative",
9 | width: "100%",
10 | minHeight: "1px",
11 | paddingRight: "15px",
12 | paddingLeft: "15px",
13 | flexBasis: "auto"
14 | }
15 | };
16 |
17 | function GridItem({ ...props }) {
18 | const { classes, children, className, ...rest } = props;
19 | return (
20 |
21 | {children}
22 |
23 | );
24 | }
25 |
26 | export default withStyles(style)(GridItem);
27 |
--------------------------------------------------------------------------------
/src/components/Header/Header.jsx:
--------------------------------------------------------------------------------
1 | import React from "react";
2 | // nodejs library that concatenates classes
3 | import classNames from "classnames";
4 | // nodejs library to set properties for components
5 | import PropTypes from "prop-types";
6 | // @material-ui/core components
7 | import withStyles from "@material-ui/core/styles/withStyles";
8 | import AppBar from "@material-ui/core/AppBar";
9 | import Toolbar from "@material-ui/core/Toolbar";
10 | import IconButton from "@material-ui/core/IconButton";
11 | import Button from "@material-ui/core/Button";
12 | import Hidden from "@material-ui/core/Hidden";
13 | import Drawer from "@material-ui/core/Drawer";
14 | // @material-ui/icons
15 | import Menu from "@material-ui/icons/Menu";
16 | // core components
17 | import headerStyle from "assets/jss/material-kit-react/components/headerStyle.jsx";
18 |
19 | class Header extends React.Component {
20 | constructor(props) {
21 | super(props);
22 | this.state = {
23 | mobileOpen: false
24 | };
25 | this.handleDrawerToggle = this.handleDrawerToggle.bind(this);
26 | this.headerColorChange = this.headerColorChange.bind(this);
27 | }
28 | handleDrawerToggle() {
29 | this.setState({ mobileOpen: !this.state.mobileOpen });
30 | }
31 | componentDidMount() {
32 | if (this.props.changeColorOnScroll) {
33 | window.addEventListener("scroll", this.headerColorChange);
34 | }
35 | }
36 | headerColorChange() {
37 | const { classes, color, changeColorOnScroll } = this.props;
38 | const windowsScrollTop = window.pageYOffset;
39 | if (windowsScrollTop > changeColorOnScroll.height) {
40 | document.body
41 | .getElementsByTagName("header")[0]
42 | .classList.remove(classes[color]);
43 | document.body
44 | .getElementsByTagName("header")[0]
45 | .classList.add(classes[changeColorOnScroll.color]);
46 | } else {
47 | document.body
48 | .getElementsByTagName("header")[0]
49 | .classList.add(classes[color]);
50 | document.body
51 | .getElementsByTagName("header")[0]
52 | .classList.remove(classes[changeColorOnScroll.color]);
53 | }
54 | }
55 | componentWillUnmount() {
56 | if (this.props.changeColorOnScroll) {
57 | window.removeEventListener("scroll", this.headerColorChange);
58 | }
59 | }
60 | render() {
61 | const {
62 | classes,
63 | color,
64 | rightLinks,
65 | leftLinks,
66 | brand,
67 | fixed,
68 | absolute
69 | } = this.props;
70 | const appBarClasses = classNames({
71 | [classes.appBar]: true,
72 | [classes[color]]: color,
73 | [classes.absolute]: absolute,
74 | [classes.fixed]: fixed
75 | });
76 | const brandComponent = {brand} ;
77 | return (
78 |
79 |
80 | {leftLinks !== undefined ? brandComponent : null}
81 |
82 | {leftLinks !== undefined ? (
83 |
84 | {leftLinks}
85 |
86 | ) : (
87 | brandComponent
88 | )}
89 |
90 |
91 | {rightLinks}
92 |
93 |
94 |
99 |
100 |
101 |
102 |
103 |
104 |
113 |
114 | {leftLinks}
115 | {rightLinks}
116 |
117 |
118 |
119 |
120 | );
121 | }
122 | }
123 |
124 | Header.defaultProp = {
125 | color: "white"
126 | };
127 |
128 | Header.propTypes = {
129 | classes: PropTypes.object.isRequired,
130 | color: PropTypes.oneOf([
131 | "primary",
132 | "info",
133 | "success",
134 | "warning",
135 | "danger",
136 | "transparent",
137 | "white",
138 | "rose",
139 | "dark"
140 | ]),
141 | rightLinks: PropTypes.node,
142 | leftLinks: PropTypes.node,
143 | brand: PropTypes.string,
144 | fixed: PropTypes.bool,
145 | absolute: PropTypes.bool,
146 | // this will cause the sidebar to change the color from
147 | // this.props.color (see above) to changeColorOnScroll.color
148 | // when the window.pageYOffset is heigher or equal to
149 | // changeColorOnScroll.height and then when it is smaller than
150 | // changeColorOnScroll.height change it back to
151 | // this.props.color (see above)
152 | changeColorOnScroll: PropTypes.shape({
153 | height: PropTypes.number.isRequired,
154 | color: PropTypes.oneOf([
155 | "primary",
156 | "info",
157 | "success",
158 | "warning",
159 | "danger",
160 | "transparent",
161 | "white",
162 | "rose",
163 | "dark"
164 | ]).isRequired
165 | })
166 | };
167 |
168 | export default withStyles(headerStyle)(Header);
169 |
--------------------------------------------------------------------------------
/src/components/Header/HeaderLinks.jsx:
--------------------------------------------------------------------------------
1 | /*eslint-disable*/
2 | import React from "react";
3 | // react components for routing our app without refresh
4 | import { Link } from "react-router-dom";
5 | import { connect } from "react-redux";
6 | import { logout } from "../../store/actions";
7 | // @material-ui/core components
8 | import withStyles from "@material-ui/core/styles/withStyles";
9 | import List from "@material-ui/core/List";
10 | import ListItem from "@material-ui/core/ListItem";
11 |
12 | // @material-ui/icons
13 | import { Apps, CloudDownload } from "@material-ui/icons";
14 |
15 | // core components
16 | import CustomDropdown from "components/CustomDropdown/CustomDropdown.jsx";
17 | import Button from "components/CustomButtons/Button.jsx";
18 | import headerLinksStyle from "assets/jss/material-kit-react/components/headerLinksStyle.jsx";
19 |
20 | const RegisterButton = props => (
21 |
22 |
23 | Register
29 |
30 |
31 | )
32 |
33 | // the logout component emits a logout signal to redux
34 | const Logout = connect(dispatch => ({ dispatch }))(props => (
35 |
36 | props.dispatch(logout())}
42 | className={props.classes.navLink}>Logout
43 |
44 | ))
45 |
46 |
47 |
48 | function HeaderLinks({ ...props }) {
49 | const { classes } = props;
50 | return (
51 |
52 |
53 |
63 | Landing Page
64 | ,
65 |
66 | Profile Page
67 | ,
68 |
69 | Components
70 |
71 | ]}
72 | />
73 |
74 |
75 |
76 |
77 | {props.state.user ? `${props.state.user.name} ${props.state.user.surname}` : `Login`}
83 |
84 |
85 | {
86 | props.state.user ? :
87 | }
88 |
89 | );
90 | }
91 |
92 | const HeaderLinksContainer = connect(state => ({ state }))(HeaderLinks);
93 |
94 | export default withStyles(headerLinksStyle)(HeaderLinksContainer);
95 |
--------------------------------------------------------------------------------
/src/components/InfoArea/InfoArea.jsx:
--------------------------------------------------------------------------------
1 | import React from "react";
2 | // nodejs library to set properties for components
3 | import PropTypes from "prop-types";
4 | // nodejs library that concatenates classes
5 | import classNames from "classnames";
6 | // @material-ui/core components
7 | import withStyles from "@material-ui/core/styles/withStyles";
8 |
9 | import infoStyle from "assets/jss/material-kit-react/components/infoStyle.jsx";
10 |
11 | function InfoArea({ ...props }) {
12 | const { classes, title, description, iconColor, vertical } = props;
13 | const iconWrapper = classNames({
14 | [classes.iconWrapper]: true,
15 | [classes[iconColor]]: true,
16 | [classes.iconWrapperVertical]: vertical
17 | });
18 | const iconClasses = classNames({
19 | [classes.icon]: true,
20 | [classes.iconVertical]: vertical
21 | });
22 | return (
23 |
24 |
27 |
28 |
{title}
29 |
{description}
30 |
31 |
32 | );
33 | }
34 |
35 | InfoArea.defaultProps = {
36 | iconColor: "gray"
37 | };
38 |
39 | InfoArea.propTypes = {
40 | classes: PropTypes.object.isRequired,
41 | icon: PropTypes.func.isRequired,
42 | title: PropTypes.string.isRequired,
43 | description: PropTypes.string.isRequired,
44 | iconColor: PropTypes.oneOf([
45 | "primary",
46 | "warning",
47 | "danger",
48 | "success",
49 | "info",
50 | "rose",
51 | "gray"
52 | ]),
53 | vertical: PropTypes.bool
54 | };
55 |
56 | export default withStyles(infoStyle)(InfoArea);
57 |
--------------------------------------------------------------------------------
/src/components/NavPills/NavPills.jsx:
--------------------------------------------------------------------------------
1 | import React from "react";
2 | // nodejs library that concatenates classes
3 | import classNames from "classnames";
4 | // nodejs library to set properties for components
5 | import PropTypes from "prop-types";
6 | import SwipeableViews from "react-swipeable-views";
7 |
8 | // @material-ui/core components
9 | import withStyles from "@material-ui/core/styles/withStyles";
10 | import Tabs from "@material-ui/core/Tabs";
11 | import Tab from "@material-ui/core/Tab";
12 |
13 | // core components
14 | import GridContainer from "components/Grid/GridContainer.jsx";
15 | import GridItem from "components/Grid/GridItem.jsx";
16 |
17 | import navPillsStyle from "assets/jss/material-kit-react/components/navPillsStyle.jsx";
18 |
19 | class NavPills extends React.Component {
20 | constructor(props) {
21 | super(props);
22 | this.state = {
23 | active: props.active
24 | };
25 | }
26 | handleChange = (event, active) => {
27 | this.setState({ active });
28 | };
29 | handleChangeIndex = index => {
30 | this.setState({ active: index });
31 | };
32 | render() {
33 | const {
34 | classes,
35 | tabs,
36 | direction,
37 | color,
38 | horizontal,
39 | alignCenter
40 | } = this.props;
41 | const flexContainerClasses = classNames({
42 | [classes.flexContainer]: true,
43 | [classes.horizontalDisplay]: horizontal !== undefined
44 | });
45 | const tabButtons = (
46 |
57 | {tabs.map((prop, key) => {
58 | var icon = {};
59 | if (prop.tabIcon !== undefined) {
60 | icon["icon"] = ;
61 | }
62 | const pillsClasses = classNames({
63 | [classes.pills]: true,
64 | [classes.horizontalPills]: horizontal !== undefined,
65 | [classes.pillsWithIcons]: prop.tabIcon !== undefined
66 | });
67 | return (
68 |
79 | );
80 | })}
81 |
82 | );
83 | const tabContent = (
84 |
85 |
90 | {tabs.map((prop, key) => {
91 | return (
92 |
93 | {prop.tabContent}
94 |
95 | );
96 | })}
97 |
98 |
99 | );
100 | return horizontal !== undefined ? (
101 |
102 | {tabButtons}
103 | {tabContent}
104 |
105 | ) : (
106 |
107 | {tabButtons}
108 | {tabContent}
109 |
110 | );
111 | }
112 | }
113 |
114 | NavPills.defaultProps = {
115 | active: 0,
116 | color: "primary"
117 | };
118 |
119 | NavPills.propTypes = {
120 | classes: PropTypes.object.isRequired,
121 | // index of the default active pill
122 | active: PropTypes.number,
123 | tabs: PropTypes.arrayOf(
124 | PropTypes.shape({
125 | tabButton: PropTypes.string,
126 | tabIcon: PropTypes.func,
127 | tabContent: PropTypes.node
128 | })
129 | ).isRequired,
130 | color: PropTypes.oneOf([
131 | "primary",
132 | "warning",
133 | "danger",
134 | "success",
135 | "info",
136 | "rose"
137 | ]),
138 | direction: PropTypes.string,
139 | horizontal: PropTypes.shape({
140 | tabsGrid: PropTypes.object,
141 | contentGrid: PropTypes.object
142 | }),
143 | alignCenter: PropTypes.bool
144 | };
145 |
146 | export default withStyles(navPillsStyle)(NavPills);
147 |
--------------------------------------------------------------------------------
/src/components/Pagination/Pagination.jsx:
--------------------------------------------------------------------------------
1 | import React from "react";
2 | // nodejs library to set properties for components
3 | import PropTypes from "prop-types";
4 | // nodejs library that concatenates classes
5 | import classNames from "classnames";
6 |
7 | // @material-ui/core components
8 | import withStyles from "@material-ui/core/styles/withStyles";
9 | import Button from "@material-ui/core/Button";
10 |
11 | import paginationStyle from "assets/jss/material-kit-react/components/paginationStyle.jsx";
12 |
13 | function Pagination({ ...props }) {
14 | const { classes, pages, color } = props;
15 | return (
16 |
17 | {pages.map((prop, key) => {
18 | const paginationLink = classNames({
19 | [classes.paginationLink]: true,
20 | [classes[color]]: prop.active,
21 | [classes.disabled]: prop.disabled
22 | });
23 | return (
24 |
25 | {prop.onClick !== undefined ? (
26 |
27 | {prop.text}
28 |
29 | ) : (
30 | console.log("you've clicked " + prop.text)}
32 | className={paginationLink}
33 | >
34 | {prop.text}
35 |
36 | )}
37 |
38 | );
39 | })}
40 |
41 | );
42 | }
43 |
44 | Pagination.defaultProps = {
45 | color: "primary"
46 | };
47 |
48 | Pagination.propTypes = {
49 | classes: PropTypes.object.isRequired,
50 | pages: PropTypes.arrayOf(
51 | PropTypes.shape({
52 | active: PropTypes.bool,
53 | disabled: PropTypes.bool,
54 | text: PropTypes.oneOfType([
55 | PropTypes.number,
56 | PropTypes.oneOf(["PREV", "NEXT", "..."])
57 | ]).isRequired,
58 | onClick: PropTypes.func
59 | })
60 | ).isRequired,
61 | color: PropTypes.oneOf(["primary", "info", "success", "warning", "danger"])
62 | };
63 |
64 | export default withStyles(paginationStyle)(Pagination);
65 |
--------------------------------------------------------------------------------
/src/components/Parallax/Parallax.jsx:
--------------------------------------------------------------------------------
1 | import React from "react";
2 | // nodejs library that concatenates classes
3 | import classNames from "classnames";
4 | // nodejs library to set properties for components
5 | import PropTypes from "prop-types";
6 | // @material-ui/core components
7 | import withStyles from "@material-ui/core/styles/withStyles";
8 |
9 | // core components
10 | import parallaxStyle from "assets/jss/material-kit-react/components/parallaxStyle.jsx";
11 |
12 | class Parallax extends React.Component {
13 | constructor(props) {
14 | super(props);
15 | var windowScrollTop = window.pageYOffset / 3;
16 | this.state = {
17 | transform: "translate3d(0," + windowScrollTop + "px,0)"
18 | };
19 | this.resetTransform = this.resetTransform.bind(this);
20 | }
21 | componentDidMount() {
22 | var windowScrollTop = window.pageYOffset / 3;
23 | this.setState({
24 | transform: "translate3d(0," + windowScrollTop + "px,0)"
25 | });
26 | window.addEventListener("scroll", this.resetTransform);
27 | }
28 | componentWillUnmount() {
29 | window.removeEventListener("scroll", this.resetTransform);
30 | }
31 | resetTransform() {
32 | var windowScrollTop = window.pageYOffset / 3;
33 | this.setState({
34 | transform: "translate3d(0," + windowScrollTop + "px,0)"
35 | });
36 | }
37 | render() {
38 | const {
39 | classes,
40 | filter,
41 | className,
42 | children,
43 | style,
44 | image,
45 | small
46 | } = this.props;
47 | const parallaxClasses = classNames({
48 | [classes.parallax]: true,
49 | [classes.filter]: filter,
50 | [classes.small]: small,
51 | [className]: className !== undefined
52 | });
53 | return (
54 |
63 | {children}
64 |
65 | );
66 | }
67 | }
68 |
69 | Parallax.propTypes = {
70 | classes: PropTypes.object.isRequired,
71 | className: PropTypes.string,
72 | filter: PropTypes.bool,
73 | children: PropTypes.node,
74 | style: PropTypes.string,
75 | image: PropTypes.string
76 | };
77 |
78 | export default withStyles(parallaxStyle)(Parallax);
79 |
--------------------------------------------------------------------------------
/src/components/Snackbar/SnackbarContent.jsx:
--------------------------------------------------------------------------------
1 | import React from "react";
2 | // nodejs library to set properties for components
3 | import PropTypes from "prop-types";
4 | // @material-ui/core components
5 | import withStyles from "@material-ui/core/styles/withStyles";
6 | import Snack from "@material-ui/core/SnackbarContent";
7 | import IconButton from "@material-ui/core/IconButton";
8 | import Icon from "@material-ui/core/Icon";
9 | // @material-ui/icons
10 | import Close from "@material-ui/icons/Close";
11 |
12 | import snackbarContentStyle from "assets/jss/material-kit-react/components/snackbarContentStyle.jsx";
13 |
14 | class SnackbarContent extends React.Component {
15 | constructor(props) {
16 | super(props);
17 | this.closeAlert = this.closeAlert.bind(this);
18 | const { classes, message, color, close, icon } = props;
19 | var action = [];
20 | if (close !== undefined) {
21 | action = [
22 |
29 |
30 |
31 | ];
32 | }
33 |
34 | let snackIcon = null;
35 | switch (typeof icon) {
36 | case "function":
37 | snackIcon = ;
38 | break;
39 | case "string":
40 | snackIcon = {props.icon} ;
41 | break;
42 | default:
43 | snackIcon = null;
44 | break;
45 | }
46 |
47 | this.state = {
48 | alert: (
49 |
52 | {snackIcon}
53 | {message}
54 | {close !== undefined ? action : null}
55 |
56 | }
57 | classes={{
58 | root: classes.root + " " + classes[color],
59 | message: classes.message + " " + classes.container
60 | }}
61 | />
62 | )
63 | };
64 | }
65 | closeAlert() {
66 | this.setState({ alert: null });
67 | }
68 | render() {
69 | return this.state.alert;
70 | }
71 | }
72 |
73 | SnackbarContent.propTypes = {
74 | classes: PropTypes.object.isRequired,
75 | message: PropTypes.node.isRequired,
76 | color: PropTypes.oneOf(["info", "success", "warning", "danger", "primary"]),
77 | close: PropTypes.bool,
78 | icon: PropTypes.oneOfType([PropTypes.func, PropTypes.string])
79 | };
80 |
81 | export default withStyles(snackbarContentStyle)(SnackbarContent);
82 |
--------------------------------------------------------------------------------
/src/components/Typography/Danger.jsx:
--------------------------------------------------------------------------------
1 | import React from "react";
2 | // nodejs library to set properties for components
3 | import PropTypes from "prop-types";
4 | // @material-ui/core components
5 | import withStyles from "@material-ui/core/styles/withStyles";
6 | // core components
7 | import typographyStyle from "assets/jss/material-kit-react/components/typographyStyle.jsx";
8 |
9 | function Danger({ ...props }) {
10 | const { classes, children } = props;
11 | return (
12 |
13 | {children}
14 |
15 | );
16 | }
17 |
18 | Danger.propTypes = {
19 | classes: PropTypes.object.isRequired
20 | };
21 |
22 | export default withStyles(typographyStyle)(Danger);
23 |
--------------------------------------------------------------------------------
/src/components/Typography/Info.jsx:
--------------------------------------------------------------------------------
1 | import React from "react";
2 | // nodejs library to set properties for components
3 | import PropTypes from "prop-types";
4 | // @material-ui/core components
5 | import withStyles from "@material-ui/core/styles/withStyles";
6 | // core components
7 | import typographyStyle from "assets/jss/material-kit-react/components/typographyStyle.jsx";
8 |
9 | function Info({ ...props }) {
10 | const { classes, children } = props;
11 | return (
12 |
13 | {children}
14 |
15 | );
16 | }
17 |
18 | Info.propTypes = {
19 | classes: PropTypes.object.isRequired
20 | };
21 |
22 | export default withStyles(typographyStyle)(Info);
23 |
--------------------------------------------------------------------------------
/src/components/Typography/Muted.jsx:
--------------------------------------------------------------------------------
1 | import React from "react";
2 | // nodejs library to set properties for components
3 | import PropTypes from "prop-types";
4 | // @material-ui/core components
5 | import withStyles from "@material-ui/core/styles/withStyles";
6 | // core components
7 | import typographyStyle from "assets/jss/material-kit-react/components/typographyStyle.jsx";
8 |
9 | function Muted({ ...props }) {
10 | const { classes, children } = props;
11 | return (
12 |
13 | {children}
14 |
15 | );
16 | }
17 |
18 | Muted.propTypes = {
19 | classes: PropTypes.object.isRequired
20 | };
21 |
22 | export default withStyles(typographyStyle)(Muted);
23 |
--------------------------------------------------------------------------------
/src/components/Typography/Primary.jsx:
--------------------------------------------------------------------------------
1 | import React from "react";
2 | // nodejs library to set properties for components
3 | import PropTypes from "prop-types";
4 | // @material-ui/core components
5 | import withStyles from "@material-ui/core/styles/withStyles";
6 | // core components
7 | import typographyStyle from "assets/jss/material-kit-react/components/typographyStyle.jsx";
8 |
9 | function Primary({ ...props }) {
10 | const { classes, children } = props;
11 | return (
12 |
13 | {children}
14 |
15 | );
16 | }
17 |
18 | Primary.propTypes = {
19 | classes: PropTypes.object.isRequired
20 | };
21 |
22 | export default withStyles(typographyStyle)(Primary);
23 |
--------------------------------------------------------------------------------
/src/components/Typography/Quote.jsx:
--------------------------------------------------------------------------------
1 | import React from "react";
2 | // nodejs library to set properties for components
3 | import PropTypes from "prop-types";
4 | // @material-ui/core components
5 | import withStyles from "@material-ui/core/styles/withStyles";
6 | // core components
7 | import typographyStyle from "assets/jss/material-kit-react/components/typographyStyle.jsx";
8 |
9 | function Quote({ ...props }) {
10 | const { classes, text, author } = props;
11 | return (
12 |
13 | {text}
14 | {author}
15 |
16 | );
17 | }
18 |
19 | Quote.propTypes = {
20 | classes: PropTypes.object.isRequired,
21 | text: PropTypes.node,
22 | author: PropTypes.node
23 | };
24 |
25 | export default withStyles(typographyStyle)(Quote);
26 |
--------------------------------------------------------------------------------
/src/components/Typography/Small.jsx:
--------------------------------------------------------------------------------
1 | import React from "react";
2 | // nodejs library to set properties for components
3 | import PropTypes from "prop-types";
4 | // @material-ui/core components
5 | import withStyles from "@material-ui/core/styles/withStyles";
6 | // core components
7 | import typographyStyle from "assets/jss/material-kit-react/components/typographyStyle.jsx";
8 |
9 | function Small({ ...props }) {
10 | const { classes, children } = props;
11 | return (
12 |
13 | {children}
14 |
15 | );
16 | }
17 |
18 | Small.propTypes = {
19 | classes: PropTypes.object.isRequired
20 | };
21 |
22 | export default withStyles(typographyStyle)(Small);
23 |
--------------------------------------------------------------------------------
/src/components/Typography/Success.jsx:
--------------------------------------------------------------------------------
1 | import React from "react";
2 | // nodejs library to set properties for components
3 | import PropTypes from "prop-types";
4 | // @material-ui/core components
5 | import withStyles from "@material-ui/core/styles/withStyles";
6 | // core components
7 | import typographyStyle from "assets/jss/material-kit-react/components/typographyStyle.jsx";
8 |
9 | function Success({ ...props }) {
10 | const { classes, children } = props;
11 | return (
12 |
13 | {children}
14 |
15 | );
16 | }
17 |
18 | Success.propTypes = {
19 | classes: PropTypes.object.isRequired
20 | };
21 |
22 | export default withStyles(typographyStyle)(Success);
23 |
--------------------------------------------------------------------------------
/src/components/Typography/Warning.jsx:
--------------------------------------------------------------------------------
1 | import React from "react";
2 | // nodejs library to set properties for components
3 | import PropTypes from "prop-types";
4 | // @material-ui/core components
5 | import withStyles from "@material-ui/core/styles/withStyles";
6 | // core components
7 | import typographyStyle from "assets/jss/material-kit-react/components/typographyStyle.jsx";
8 |
9 | function Warning({ ...props }) {
10 | const { classes, children } = props;
11 | return (
12 |
13 | {children}
14 |
15 | );
16 | }
17 |
18 | Warning.propTypes = {
19 | classes: PropTypes.object.isRequired
20 | };
21 |
22 | export default withStyles(typographyStyle)(Warning);
23 |
--------------------------------------------------------------------------------
/src/index.js:
--------------------------------------------------------------------------------
1 | import React from "react";
2 | import ReactDOM from "react-dom";
3 | import { createBrowserHistory } from "history";
4 | import { Router, Route, Switch } from "react-router-dom";
5 | import jwtDecode from "jwt-decode";
6 | import { Provider } from "react-redux";
7 | import store from "./store";
8 | import { login } from "./store/actions";
9 | import Cookies from "./utils/Cookies";
10 |
11 | import "./assets/scss/material-kit-react.scss?v=1.4.0";
12 |
13 | // pages for this product
14 | import Components from "views/Components/Components.jsx";
15 | import LandingPage from "views/LandingPage/LandingPage.jsx";
16 | import ProfilePage from "views/ProfilePage/ProfilePage.jsx";
17 | import LoginPage from "views/LoginPage/LoginPage.jsx";
18 |
19 | var hist = createBrowserHistory();
20 |
21 | const token = Cookies.read("token");
22 |
23 | if (token) {
24 | const user = jwtDecode(token);
25 |
26 | store.dispatch(login(user));
27 | }
28 |
29 | ReactDOM.render(
30 |
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 | ,
41 | document.getElementById("root")
42 | );
43 |
--------------------------------------------------------------------------------
/src/logo.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/store/actions/index.js:
--------------------------------------------------------------------------------
1 | /*
2 | * action types
3 | */
4 |
5 | export const LOGIN = "LOGIN";
6 | export const LOGOUT = "LOGOUT";
7 |
8 | /*
9 | * action creators
10 | */
11 |
12 | export function login(user) {
13 | return { type: LOGIN, user };
14 | }
15 |
16 | export function logout() {
17 | return { type: LOGOUT };
18 | }
--------------------------------------------------------------------------------
/src/store/index.js:
--------------------------------------------------------------------------------
1 | import { createStore } from "redux";
2 | import { composeWithDevTools } from "redux-devtools-extension";
3 | import reducers from "./reducers";
4 | import preloadedState from "./preloadedState";
5 |
6 | export default createStore(reducers, preloadedState, composeWithDevTools());
7 |
--------------------------------------------------------------------------------
/src/store/preloadedState.js:
--------------------------------------------------------------------------------
1 | export default {};
2 |
--------------------------------------------------------------------------------
/src/store/reducers/index.js:
--------------------------------------------------------------------------------
1 | import { combineReducers } from "redux";
2 | import {
3 | LOGIN,
4 | LOGOUT,
5 | } from "../actions";
6 |
7 | // the user function itself represents the user key of the store
8 | const user = (state = null, action) => {
9 | switch (action.type) {
10 | case LOGIN:
11 | return {
12 | ...state,
13 | ...action.user
14 | };
15 | case LOGOUT:
16 | return null
17 |
18 | default:
19 | return state;
20 | }
21 | };
22 |
23 | const reducers = combineReducers({
24 | user
25 | });
26 |
27 | export default reducers;
28 |
--------------------------------------------------------------------------------
/src/utils/Cookies.js:
--------------------------------------------------------------------------------
1 | export default {
2 | create(name,value,seconds){
3 | let expires = "";
4 |
5 | if(seconds) {
6 | let date = new Date();
7 | date.setTime(date.getTime() + seconds);
8 | expires = `; expires=${date.toUTCString()}`
9 | }
10 |
11 | document.cookie = `${name}=${value}${expires}; path=/`
12 |
13 | return true;
14 | },
15 |
16 | read(name){
17 | const cookies = document.cookie.split(';').map( cookie => cookie.trim() ).map(cookie => cookie.split('=') )
18 | const cookie = cookies.filter(cookie => cookie.includes(name))[0];
19 |
20 | if(cookie && cookie.length){
21 | const value = cookie[1]
22 |
23 | return value;
24 | }
25 |
26 | return false;
27 | },
28 |
29 | remove(name){
30 | return this.create(name,"",-1);
31 | }
32 | }
33 |
--------------------------------------------------------------------------------
/src/views/Components/Components.jsx:
--------------------------------------------------------------------------------
1 | import React from "react";
2 | // nodejs library that concatenates classes
3 | import classNames from "classnames";
4 | // react components for routing our app without refresh
5 | import { Link } from "react-router-dom";
6 | // @material-ui/core components
7 | import withStyles from "@material-ui/core/styles/withStyles";
8 | // @material-ui/icons
9 | // core components
10 | import Header from "components/Header/Header.jsx";
11 | import Footer from "components/Footer/Footer.jsx";
12 | import GridContainer from "components/Grid/GridContainer.jsx";
13 | import GridItem from "components/Grid/GridItem.jsx";
14 | import Button from "components/CustomButtons/Button.jsx";
15 | import Parallax from "components/Parallax/Parallax.jsx";
16 | // sections for this page
17 | import HeaderLinks from "components/Header/HeaderLinks.jsx";
18 | import SectionBasics from "./Sections/SectionBasics.jsx";
19 | import SectionNavbars from "./Sections/SectionNavbars.jsx";
20 | import SectionTabs from "./Sections/SectionTabs.jsx";
21 | import SectionPills from "./Sections/SectionPills.jsx";
22 | import SectionNotifications from "./Sections/SectionNotifications.jsx";
23 | import SectionTypography from "./Sections/SectionTypography.jsx";
24 | import SectionJavascript from "./Sections/SectionJavascript.jsx";
25 | import SectionCarousel from "./Sections/SectionCarousel.jsx";
26 | import SectionCompletedExamples from "./Sections/SectionCompletedExamples.jsx";
27 | import SectionLogin from "./Sections/SectionLogin.jsx";
28 | import SectionExamples from "./Sections/SectionExamples.jsx";
29 | import SectionDownload from "./Sections/SectionDownload.jsx";
30 |
31 | import componentsStyle from "assets/jss/material-kit-react/views/components.jsx";
32 |
33 | class Components extends React.Component {
34 | render() {
35 | const { classes, ...rest } = this.props;
36 | return (
37 |
38 |
}
41 | fixed
42 | color="transparent"
43 | changeColorOnScroll={{
44 | height: 400,
45 | color: "white"
46 | }}
47 | {...rest}
48 | />
49 |
50 |
51 |
52 |
53 |
54 |
Material Kit React.
55 |
56 | A Badass Material-UI Kit based on Material Design.
57 |
58 |
59 |
60 |
61 |
62 |
63 |
64 |
65 |
66 |
67 |
68 |
69 |
70 |
71 |
72 |
73 |
74 |
75 |
76 |
77 |
78 | View Login Page
79 |
80 |
81 |
82 |
83 |
84 |
85 |
86 |
87 | );
88 | }
89 | }
90 |
91 | export default withStyles(componentsStyle)(Components);
92 |
--------------------------------------------------------------------------------
/src/views/Components/Sections/SectionCarousel.jsx:
--------------------------------------------------------------------------------
1 | import React from "react";
2 | // react component for creating beautiful carousel
3 | import Carousel from "react-slick";
4 | // @material-ui/core components
5 | import withStyles from "@material-ui/core/styles/withStyles";
6 | // @material-ui/icons
7 | import LocationOn from "@material-ui/icons/LocationOn";
8 | // core components
9 | import GridContainer from "components/Grid/GridContainer.jsx";
10 | import GridItem from "components/Grid/GridItem.jsx";
11 | import Card from "components/Card/Card.jsx";
12 | import carouselStyle from "assets/jss/material-kit-react/views/componentsSections/carouselStyle.jsx";
13 | import image1 from "assets/img/bg.jpg";
14 | import image2 from "assets/img/bg2.jpg";
15 | import image3 from "assets/img/bg3.jpg";
16 |
17 | class SectionCarousel extends React.Component {
18 | render() {
19 | const { classes } = this.props;
20 | const settings = {
21 | dots: true,
22 | infinite: true,
23 | speed: 500,
24 | slidesToShow: 1,
25 | slidesToScroll: 1,
26 | autoplay: false
27 | };
28 | return (
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
41 |
42 |
43 |
44 | Yellowstone National Park, United States
45 |
46 |
47 |
48 |
49 |
54 |
55 |
56 |
57 | Somewhere Beyond, United States
58 |
59 |
60 |
61 |
62 |
67 |
68 |
69 |
70 | Yellowstone National Park, United States
71 |
72 |
73 |
74 |
75 |
76 |
77 |
78 |
79 |
80 | );
81 | }
82 | }
83 |
84 | export default withStyles(carouselStyle)(SectionCarousel);
85 |
--------------------------------------------------------------------------------
/src/views/Components/Sections/SectionCompletedExamples.jsx:
--------------------------------------------------------------------------------
1 | import React from "react";
2 | // @material-ui/core components
3 | import withStyles from "@material-ui/core/styles/withStyles";
4 | // @material-ui/icons
5 |
6 | // core components
7 | import GridContainer from "components/Grid/GridContainer.jsx";
8 | import GridItem from "components/Grid/GridItem.jsx";
9 |
10 | import completedStyle from "assets/jss/material-kit-react/views/componentsSections/completedStyle.jsx";
11 |
12 | class SectionCompletedExamples extends React.Component {
13 | render() {
14 | const { classes } = this.props;
15 | return (
16 |
17 |
18 |
19 |
20 | Completed with examples
21 |
22 | The kit comes with three pre-built pages to help you get started
23 | faster. You can change the text and images and you're good to
24 | go. More importantly, looking at them will give you a picture of
25 | what you can build with this powerful kit.
26 |
27 |
28 |
29 |
30 |
31 | );
32 | }
33 | }
34 |
35 | export default withStyles(completedStyle)(SectionCompletedExamples);
36 |
--------------------------------------------------------------------------------
/src/views/Components/Sections/SectionDownload.jsx:
--------------------------------------------------------------------------------
1 | /*eslint-disable*/
2 | import React from "react";
3 |
4 | // @material-ui/core components
5 | import withStyles from "@material-ui/core/styles/withStyles";
6 | // @material-ui/icons
7 | import GridContainer from "components/Grid/GridContainer.jsx";
8 | import GridItem from "components/Grid/GridItem.jsx";
9 | import Button from "components/CustomButtons/Button.jsx";
10 | // core components
11 | import downloadStyle from "assets/jss/material-kit-react/views/componentsSections/downloadStyle.jsx";
12 |
13 | class SectionDownload extends React.Component {
14 | render() {
15 | const { classes } = this.props;
16 | return (
17 |
18 |
19 |
20 |
21 | Do you love this UI Kit?
22 |
23 | Cause if you do, it can be yours for FREE. Hit the buttons below
24 | to navigate to our website where you can find the kit. We also
25 | have the Bootstrap 4 version on plain HTML. Start a new project
26 | or give an old Bootstrap project a new look!
27 |
28 |
29 |
30 |
36 | Free React Download
37 |
38 |
44 | Free HTML Downoad
45 |
46 |
47 |
48 |
49 |
50 |
51 |
52 | Want more?
53 |
54 | We've launched{" "}
55 |
59 | Material Kit PRO React{" "}
60 |
61 | .It has a huge number of components, sections and example pages.
62 | Start Your Development With A Badass Material-UI nspired by
63 | Material Design.
64 |
65 |
66 |
67 |
73 | Material Kit PRO
74 |
75 |
81 | Material Dashboard PRO
82 |
83 |
84 |
85 |
86 |
87 | Thank you for supporting us!
88 |
89 |
90 | Tweet
91 |
92 |
93 | {" "}
94 | Share
95 |
96 |
97 |
98 | Share
99 |
100 |
101 | Star
102 |
103 |
104 |
105 |
106 | );
107 | }
108 | }
109 |
110 | export default withStyles(downloadStyle)(SectionDownload);
111 |
--------------------------------------------------------------------------------
/src/views/Components/Sections/SectionExamples.jsx:
--------------------------------------------------------------------------------
1 | import React from "react";
2 | // react components for routing our app without refresh
3 | import { Link } from "react-router-dom";
4 | // @material-ui/core components
5 | import withStyles from "@material-ui/core/styles/withStyles";
6 | // @material-ui/icons
7 |
8 | // core components
9 | import GridContainer from "components/Grid/GridContainer.jsx";
10 | import GridItem from "components/Grid/GridItem.jsx";
11 | import Button from "components/CustomButtons/Button.jsx";
12 | import exampleStyle from "assets/jss/material-kit-react/views/componentsSections/exampleStyle.jsx";
13 |
14 | import landing from "assets/img/landing.jpg";
15 | import profile from "assets/img/profile.jpg";
16 |
17 | class SectionExamples extends React.Component {
18 | render() {
19 | const { classes } = this.props;
20 | return (
21 |
22 |
23 |
24 |
25 |
26 |
37 |
38 | View landing page
39 |
40 |
41 |
42 |
43 |
44 |
55 |
56 | View profile page
57 |
58 |
59 |
60 |
61 |
62 |
63 | );
64 | }
65 | }
66 |
67 | export default withStyles(exampleStyle)(SectionExamples);
68 |
--------------------------------------------------------------------------------
/src/views/Components/Sections/SectionLogin.jsx:
--------------------------------------------------------------------------------
1 | import React from "react";
2 | // @material-ui/core components
3 | import withStyles from "@material-ui/core/styles/withStyles";
4 | import InputAdornment from "@material-ui/core/InputAdornment";
5 | import Icon from "@material-ui/core/Icon";
6 | // @material-ui/icons
7 | import People from "@material-ui/icons/People";
8 | import Email from "@material-ui/icons/Email";
9 | // core components
10 | import GridContainer from "components/Grid/GridContainer.jsx";
11 | import GridItem from "components/Grid/GridItem.jsx";
12 | import Card from "components/Card/Card.jsx";
13 | import CardHeader from "components/Card/CardHeader.jsx";
14 | import CardBody from "components/Card/CardBody.jsx";
15 | import CardFooter from "components/Card/CardFooter.jsx";
16 | import Button from "components/CustomButtons/Button.jsx";
17 | import CustomInput from "components/CustomInput/CustomInput.jsx";
18 |
19 | import loginStyle from "assets/jss/material-kit-react/views/componentsSections/loginStyle.jsx";
20 |
21 | class SectionLogin extends React.Component {
22 | render() {
23 | const { classes } = this.props;
24 | return (
25 |
26 |
27 |
28 |
29 |
30 |
127 |
128 |
129 |
130 |
131 |
132 | );
133 | }
134 | }
135 |
136 | export default withStyles(loginStyle)(SectionLogin);
137 |
--------------------------------------------------------------------------------
/src/views/Components/Sections/SectionNotifications.jsx:
--------------------------------------------------------------------------------
1 | import React from "react";
2 |
3 | // @material-ui/core components
4 | import withStyles from "@material-ui/core/styles/withStyles";
5 | // @material-ui/icons
6 | import Check from "@material-ui/icons/Check";
7 | import Warning from "@material-ui/icons/Warning";
8 | // core components
9 | import SnackbarContent from "components/Snackbar/SnackbarContent.jsx";
10 | import Clearfix from "components/Clearfix/Clearfix.jsx";
11 | import notificationsStyles from "assets/jss/material-kit-react/views/componentsSections/notificationsStyles.jsx";
12 |
13 | class SectionNotifications extends React.Component {
14 | render() {
15 | const { classes } = this.props;
16 | return (
17 |
18 |
19 |
20 |
Notifications
21 |
22 |
23 |
26 | INFO ALERT: You've got some friends nearby, stop looking at
27 | your phone and find them...
28 |
29 | }
30 | close
31 | color="info"
32 | icon="info_outline"
33 | />
34 |
37 | SUCCESS ALERT: You've got some friends nearby, stop looking
38 | at your phone and find them...
39 |
40 | }
41 | close
42 | color="success"
43 | icon={Check}
44 | />
45 |
48 | WARNING ALERT: You've got some friends nearby, stop looking
49 | at your phone and find them...
50 |
51 | }
52 | close
53 | color="warning"
54 | icon={Warning}
55 | />
56 |
59 | DANGER ALERT: You've got some friends nearby, stop looking
60 | at your phone and find them...
61 |
62 | }
63 | close
64 | color="danger"
65 | icon="info_outline"
66 | />
67 |
68 |
69 | );
70 | }
71 | }
72 |
73 | export default withStyles(notificationsStyles)(SectionNotifications);
74 |
--------------------------------------------------------------------------------
/src/views/LandingPage/LandingPage.jsx:
--------------------------------------------------------------------------------
1 | import React from "react";
2 | // nodejs library that concatenates classes
3 | import classNames from "classnames";
4 | // @material-ui/core components
5 | import withStyles from "@material-ui/core/styles/withStyles";
6 |
7 | // @material-ui/icons
8 |
9 | // core components
10 | import Header from "components/Header/Header.jsx";
11 | import Footer from "components/Footer/Footer.jsx";
12 | import GridContainer from "components/Grid/GridContainer.jsx";
13 | import GridItem from "components/Grid/GridItem.jsx";
14 | import Button from "components/CustomButtons/Button.jsx";
15 | import HeaderLinks from "components/Header/HeaderLinks.jsx";
16 | import Parallax from "components/Parallax/Parallax.jsx";
17 |
18 | import landingPageStyle from "assets/jss/material-kit-react/views/landingPage.jsx";
19 |
20 | // Sections for this page
21 | import ProductSection from "./Sections/ProductSection.jsx";
22 | import TeamSection from "./Sections/TeamSection.jsx";
23 | import WorkSection from "./Sections/WorkSection.jsx";
24 |
25 | const dashboardRoutes = [];
26 |
27 | class LandingPage extends React.Component {
28 | render() {
29 | const { classes, ...rest } = this.props;
30 | return (
31 |
32 |
}
37 | fixed
38 | changeColorOnScroll={{
39 | height: 400,
40 | color: "white"
41 | }}
42 | {...rest}
43 | />
44 |
45 |
46 |
47 |
48 | Material Kit React
49 |
50 | Crafted by Creative-Tim, enhanced by AppSeed.
51 |
52 | Web App released under MIT License.
53 |
54 |
55 |
62 | Get Code
63 |
64 |
65 |
66 |
67 |
68 |
75 |
76 |
77 | );
78 | }
79 | }
80 |
81 | export default withStyles(landingPageStyle)(LandingPage);
82 |
--------------------------------------------------------------------------------
/src/views/LandingPage/Sections/ProductSection.jsx:
--------------------------------------------------------------------------------
1 | import React from "react";
2 | // @material-ui/core components
3 | import withStyles from "@material-ui/core/styles/withStyles";
4 |
5 | // @material-ui/icons
6 | import Chat from "@material-ui/icons/Chat";
7 | import VerifiedUser from "@material-ui/icons/VerifiedUser";
8 | import Fingerprint from "@material-ui/icons/Fingerprint";
9 | // core components
10 | import GridContainer from "components/Grid/GridContainer.jsx";
11 | import GridItem from "components/Grid/GridItem.jsx";
12 | import InfoArea from "components/InfoArea/InfoArea.jsx";
13 |
14 | import productStyle from "assets/jss/material-kit-react/views/landingPageSections/productStyle.jsx";
15 |
16 | class ProductSection extends React.Component {
17 | render() {
18 | const { classes } = this.props;
19 | return (
20 |
21 |
22 |
23 | Let's talk product
24 |
25 | This is the paragraph where you can write more details about your
26 | product. Keep you user engaged by providing meaningful
27 | information. Remember that by this time, the user is curious,
28 | otherwise he wouldn't scroll to get here. Add a button if you want
29 | the user to see more.
30 |
31 |
32 |
33 |
34 |
35 |
36 |
43 |
44 |
45 |
52 |
53 |
54 |
61 |
62 |
63 |
64 |
65 | );
66 | }
67 | }
68 |
69 | export default withStyles(productStyle)(ProductSection);
70 |
--------------------------------------------------------------------------------
/src/views/LandingPage/Sections/TeamSection.jsx:
--------------------------------------------------------------------------------
1 | import React from "react";
2 | // nodejs library that concatenates classes
3 | import classNames from "classnames";
4 | // @material-ui/core components
5 | import withStyles from "@material-ui/core/styles/withStyles";
6 |
7 | // @material-ui/icons
8 |
9 | // core components
10 | import GridContainer from "components/Grid/GridContainer.jsx";
11 | import GridItem from "components/Grid/GridItem.jsx";
12 | import Button from "components/CustomButtons/Button.jsx";
13 | import Card from "components/Card/Card.jsx";
14 | import CardBody from "components/Card/CardBody.jsx";
15 | import CardFooter from "components/Card/CardFooter.jsx";
16 |
17 | import teamStyle from "assets/jss/material-kit-react/views/landingPageSections/teamStyle.jsx";
18 |
19 | import team1 from "assets/img/faces/avatar.jpg";
20 | import team2 from "assets/img/faces/christian.jpg";
21 | import team3 from "assets/img/faces/kendall.jpg";
22 |
23 | class TeamSection extends React.Component {
24 | render() {
25 | const { classes } = this.props;
26 | const imageClasses = classNames(
27 | classes.imgRaised,
28 | classes.imgRoundedCircle,
29 | classes.imgFluid
30 | );
31 | return (
32 |
33 |
Here is our team
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 | Gigi Hadid
43 |
44 | Model
45 |
46 |
47 |
48 | You can write here details about one of your team members.
49 | You can give more details about what they do. Feel free to
50 | add some links for people to be able to
51 | follow them outside the site.
52 |
53 |
54 |
55 |
60 |
61 |
62 |
67 |
68 |
69 |
74 |
75 |
76 |
77 |
78 |
79 |
80 |
81 |
82 |
83 |
84 |
85 | Christian Louboutin
86 |
87 | Designer
88 |
89 |
90 |
91 | You can write here details about one of your team members.
92 | You can give more details about what they do. Feel free to
93 | add some links for people to be able to
94 | follow them outside the site.
95 |
96 |
97 |
98 |
103 |
104 |
105 |
110 |
111 |
112 |
113 |
114 |
115 |
116 |
117 |
118 |
119 |
120 |
121 | Kendall Jenner
122 |
123 | Model
124 |
125 |
126 |
127 | You can write here details about one of your team members.
128 | You can give more details about what they do. Feel free to
129 | add some links for people to be able to
130 | follow them outside the site.
131 |
132 |
133 |
134 |
139 |
140 |
141 |
146 |
147 |
148 |
153 |
154 |
155 |
156 |
157 |
158 |
159 |
160 |
161 | );
162 | }
163 | }
164 |
165 | export default withStyles(teamStyle)(TeamSection);
166 |
--------------------------------------------------------------------------------
/src/views/LandingPage/Sections/WorkSection.jsx:
--------------------------------------------------------------------------------
1 | import React from "react";
2 | // @material-ui/core components
3 | import withStyles from "@material-ui/core/styles/withStyles";
4 |
5 | // @material-ui/icons
6 |
7 | // core components
8 | import GridContainer from "components/Grid/GridContainer.jsx";
9 | import GridItem from "components/Grid/GridItem.jsx";
10 | import CustomInput from "components/CustomInput/CustomInput.jsx";
11 | import Button from "components/CustomButtons/Button.jsx";
12 |
13 | import workStyle from "assets/jss/material-kit-react/views/landingPageSections/workStyle.jsx";
14 |
15 | class WorkSection extends React.Component {
16 | render() {
17 | const { classes } = this.props;
18 | return (
19 |
20 |
21 |
22 | Work with us
23 |
24 | Divide details about your product or agency work into parts. Write
25 | a few lines about each one and contact us about any further
26 | collaboration. We will responde get back to you in a couple of
27 | hours.
28 |
29 |
73 |
74 |
75 |
76 | );
77 | }
78 | }
79 |
80 | export default withStyles(workStyle)(WorkSection);
81 |
--------------------------------------------------------------------------------