├── src ├── style │ ├── icons │ │ ├── weather-icons │ │ │ ├── less │ │ │ │ ├── css │ │ │ │ │ ├── variables-day.css │ │ │ │ │ ├── variables-misc.css │ │ │ │ │ ├── variables-moon.css │ │ │ │ │ ├── variables-night.css │ │ │ │ │ ├── variables-time.css │ │ │ │ │ ├── variables-beaufort.css │ │ │ │ │ ├── variables-direction.css │ │ │ │ │ ├── variables-neutral.css │ │ │ │ │ └── variables-wind-names.css │ │ │ │ ├── weather-icons-wind.less │ │ │ │ ├── weather-icons-wind.min.less │ │ │ │ ├── icon-variables │ │ │ │ │ ├── variables-direction.less │ │ │ │ │ ├── variables-time.less │ │ │ │ │ ├── variables-beaufort.less │ │ │ │ │ ├── variables-misc.less │ │ │ │ │ ├── variables-wind-names.less │ │ │ │ │ ├── variables-day.less │ │ │ │ │ ├── variables-neutral.less │ │ │ │ │ └── variables-night.less │ │ │ │ ├── icon-classes │ │ │ │ │ ├── classes-wind.less │ │ │ │ │ ├── classes-direction.less │ │ │ │ │ ├── classes-time.less │ │ │ │ │ ├── classes-beaufort.less │ │ │ │ │ ├── classes-misc.less │ │ │ │ │ └── classes-day.less │ │ │ │ ├── weather-icons-variables.less │ │ │ │ ├── weather-icons-classes.less │ │ │ │ ├── mappings │ │ │ │ │ └── wi-forecast-io.less │ │ │ │ ├── weather-icons.less │ │ │ │ └── weather-icons.min.less │ │ │ ├── css │ │ │ │ └── weather-icons-variables.css │ │ │ ├── font │ │ │ │ ├── weathericons-regular-webfont.eot │ │ │ │ ├── weathericons-regular-webfont.ttf │ │ │ │ ├── weathericons-regular-webfont.woff │ │ │ │ └── weathericons-regular-webfont.woff2 │ │ │ └── sass │ │ │ │ ├── weather-icons-wind.scss │ │ │ │ ├── weather-icons-wind.min.scss │ │ │ │ ├── icon-variables │ │ │ │ ├── variables-direction.scss │ │ │ │ ├── variables-time.scss │ │ │ │ ├── variables-beaufort.scss │ │ │ │ ├── variables-misc.scss │ │ │ │ ├── variables-wind-names.scss │ │ │ │ ├── variables-day.scss │ │ │ │ ├── variables-neutral.scss │ │ │ │ └── variables-night.scss │ │ │ │ ├── weather-icons-variables.scss │ │ │ │ ├── icon-classes │ │ │ │ ├── classes-wind.scss │ │ │ │ ├── classes-direction.scss │ │ │ │ ├── classes-time.scss │ │ │ │ ├── classes-beaufort.scss │ │ │ │ ├── classes-misc.scss │ │ │ │ └── classes-day.scss │ │ │ │ ├── weather-icons-classes.scss │ │ │ │ ├── mappings │ │ │ │ └── wi-forecast-io.scss │ │ │ │ ├── weather-icons.scss │ │ │ │ └── weather-icons.min.scss │ │ ├── font-awesome │ │ │ ├── less │ │ │ │ ├── extras.less │ │ │ │ ├── fixed-width.less │ │ │ │ ├── larger.less │ │ │ │ ├── list.less │ │ │ │ ├── core.less │ │ │ │ ├── font-awesome.less │ │ │ │ ├── stacked.less │ │ │ │ ├── bordered-pulled.less │ │ │ │ ├── rotated-flipped.less │ │ │ │ ├── spinning.less │ │ │ │ ├── animated.less │ │ │ │ ├── path.less │ │ │ │ └── mixins.less │ │ │ ├── fonts │ │ │ │ ├── FontAwesome.otf │ │ │ │ ├── fontawesome-webfont.eot │ │ │ │ ├── fontawesome-webfont.ttf │ │ │ │ ├── fontawesome-webfont.woff │ │ │ │ ├── fontawesome-webfont.woff2 │ │ │ │ └── fontawesome-webfont-old.ttf │ │ │ ├── scss │ │ │ │ ├── _fixed-width.scss │ │ │ │ ├── _larger.scss │ │ │ │ ├── _list.scss │ │ │ │ ├── font-awesome.scss │ │ │ │ ├── _core.scss │ │ │ │ ├── _stacked.scss │ │ │ │ ├── _bordered-pulled.scss │ │ │ │ ├── _spinning.scss │ │ │ │ ├── _rotated-flipped.scss │ │ │ │ ├── _path.scss │ │ │ │ ├── _animated.scss │ │ │ │ ├── _mixins.scss │ │ │ │ └── _extras.scss │ │ │ ├── HELP-US-OUT.txt │ │ │ ├── .gitignore │ │ │ ├── bower.json │ │ │ ├── .npmignore │ │ │ └── .bower.json │ │ ├── themify-icons │ │ │ └── fonts │ │ │ │ ├── themify.eot │ │ │ │ ├── themify.ttf │ │ │ │ └── themify.woff │ │ ├── linea-icons │ │ │ └── fonts │ │ │ │ ├── linea-arrows-10.eot │ │ │ │ ├── linea-arrows-10.ttf │ │ │ │ ├── linea-basic-10.eot │ │ │ │ ├── linea-basic-10.ttf │ │ │ │ ├── linea-basic-10.woff │ │ │ │ ├── linea-music-10.eot │ │ │ │ ├── linea-music-10.ttf │ │ │ │ ├── linea-music-10.woff │ │ │ │ ├── linea-arrows-10.woff │ │ │ │ ├── linea-ecommerce-10.eot │ │ │ │ ├── linea-ecommerce-10.ttf │ │ │ │ ├── linea-software-10.eot │ │ │ │ ├── linea-software-10.ttf │ │ │ │ ├── linea-software-10.woff │ │ │ │ ├── linea-weather-10.eot │ │ │ │ ├── linea-weather-10.ttf │ │ │ │ ├── linea-weather-10.woff │ │ │ │ ├── linea-ecommerce-10.woff │ │ │ │ ├── linea-basic-elaboration-10.eot │ │ │ │ ├── linea-basic-elaboration-10.ttf │ │ │ │ └── linea-basic-elaboration-10.woff │ │ └── simple-line-icons │ │ │ └── fonts │ │ │ ├── Simple-Line-Icons.eot │ │ │ ├── Simple-Line-Icons.ttf │ │ │ ├── Simple-Line-Icons.woff │ │ │ └── Simple-Line-Icons.woff2 │ ├── less │ │ └── icons │ │ │ ├── weather-icons │ │ │ ├── less │ │ │ │ ├── css │ │ │ │ │ ├── variables-day.css │ │ │ │ │ ├── variables-misc.css │ │ │ │ │ ├── variables-moon.css │ │ │ │ │ ├── variables-night.css │ │ │ │ │ ├── variables-time.css │ │ │ │ │ ├── variables-beaufort.css │ │ │ │ │ ├── variables-direction.css │ │ │ │ │ ├── variables-neutral.css │ │ │ │ │ └── variables-wind-names.css │ │ │ │ ├── weather-icons-wind.less │ │ │ │ ├── weather-icons-wind.min.less │ │ │ │ ├── icon-variables │ │ │ │ │ ├── variables-direction.less │ │ │ │ │ ├── variables-time.less │ │ │ │ │ ├── variables-beaufort.less │ │ │ │ │ ├── variables-misc.less │ │ │ │ │ ├── variables-wind-names.less │ │ │ │ │ ├── variables-day.less │ │ │ │ │ ├── variables-neutral.less │ │ │ │ │ └── variables-night.less │ │ │ │ ├── icon-classes │ │ │ │ │ ├── classes-wind.less │ │ │ │ │ ├── classes-direction.less │ │ │ │ │ ├── classes-time.less │ │ │ │ │ ├── classes-beaufort.less │ │ │ │ │ ├── classes-misc.less │ │ │ │ │ └── classes-day.less │ │ │ │ ├── weather-icons-variables.less │ │ │ │ ├── weather-icons-classes.less │ │ │ │ ├── mappings │ │ │ │ │ └── wi-forecast-io.less │ │ │ │ ├── weather-icons.less │ │ │ │ └── weather-icons.min.less │ │ │ ├── css │ │ │ │ └── weather-icons-variables.css │ │ │ ├── font │ │ │ │ ├── weathericons-regular-webfont.eot │ │ │ │ ├── weathericons-regular-webfont.ttf │ │ │ │ ├── weathericons-regular-webfont.woff │ │ │ │ └── weathericons-regular-webfont.woff2 │ │ │ └── sass │ │ │ │ ├── weather-icons-wind.scss │ │ │ │ ├── weather-icons-wind.min.scss │ │ │ │ ├── icon-variables │ │ │ │ ├── variables-direction.scss │ │ │ │ ├── variables-time.scss │ │ │ │ ├── variables-beaufort.scss │ │ │ │ ├── variables-misc.scss │ │ │ │ ├── variables-wind-names.scss │ │ │ │ ├── variables-day.scss │ │ │ │ ├── variables-neutral.scss │ │ │ │ └── variables-night.scss │ │ │ │ ├── icon-classes │ │ │ │ ├── classes-wind.scss │ │ │ │ ├── classes-direction.scss │ │ │ │ ├── classes-time.scss │ │ │ │ ├── classes-beaufort.scss │ │ │ │ ├── classes-misc.scss │ │ │ │ └── classes-day.scss │ │ │ │ ├── weather-icons-variables.scss │ │ │ │ ├── weather-icons-classes.scss │ │ │ │ ├── mappings │ │ │ │ └── wi-forecast-io.scss │ │ │ │ ├── weather-icons.scss │ │ │ │ └── weather-icons.min.scss │ │ │ ├── font-awesome │ │ │ ├── less │ │ │ │ ├── extras.less │ │ │ │ ├── fixed-width.less │ │ │ │ ├── larger.less │ │ │ │ ├── list.less │ │ │ │ ├── core.less │ │ │ │ ├── font-awesome.less │ │ │ │ ├── stacked.less │ │ │ │ ├── bordered-pulled.less │ │ │ │ ├── rotated-flipped.less │ │ │ │ ├── spinning.less │ │ │ │ ├── animated.less │ │ │ │ ├── path.less │ │ │ │ └── mixins.less │ │ │ ├── fonts │ │ │ │ ├── FontAwesome.otf │ │ │ │ ├── fontawesome-webfont.eot │ │ │ │ ├── fontawesome-webfont.ttf │ │ │ │ ├── fontawesome-webfont.woff │ │ │ │ ├── fontawesome-webfont.woff2 │ │ │ │ └── fontawesome-webfont-old.ttf │ │ │ ├── scss │ │ │ │ ├── _fixed-width.scss │ │ │ │ ├── _larger.scss │ │ │ │ ├── _list.scss │ │ │ │ ├── font-awesome.scss │ │ │ │ ├── _core.scss │ │ │ │ ├── _stacked.scss │ │ │ │ ├── _bordered-pulled.scss │ │ │ │ ├── _spinning.scss │ │ │ │ ├── _rotated-flipped.scss │ │ │ │ ├── _path.scss │ │ │ │ ├── _animated.scss │ │ │ │ ├── _mixins.scss │ │ │ │ └── _extras.scss │ │ │ ├── HELP-US-OUT.txt │ │ │ ├── .gitignore │ │ │ ├── bower.json │ │ │ ├── .npmignore │ │ │ └── .bower.json │ │ │ ├── themify-icons │ │ │ └── fonts │ │ │ │ ├── themify.eot │ │ │ │ ├── themify.ttf │ │ │ │ └── themify.woff │ │ │ ├── linea-icons │ │ │ └── fonts │ │ │ │ ├── linea-arrows-10.eot │ │ │ │ ├── linea-arrows-10.ttf │ │ │ │ ├── linea-basic-10.eot │ │ │ │ ├── linea-basic-10.ttf │ │ │ │ ├── linea-basic-10.woff │ │ │ │ ├── linea-music-10.eot │ │ │ │ ├── linea-music-10.ttf │ │ │ │ ├── linea-music-10.woff │ │ │ │ ├── linea-arrows-10.woff │ │ │ │ ├── linea-ecommerce-10.eot │ │ │ │ ├── linea-ecommerce-10.ttf │ │ │ │ ├── linea-software-10.eot │ │ │ │ ├── linea-software-10.ttf │ │ │ │ ├── linea-software-10.woff │ │ │ │ ├── linea-weather-10.eot │ │ │ │ ├── linea-weather-10.ttf │ │ │ │ ├── linea-weather-10.woff │ │ │ │ ├── linea-ecommerce-10.woff │ │ │ │ ├── linea-basic-elaboration-10.eot │ │ │ │ ├── linea-basic-elaboration-10.ttf │ │ │ │ └── linea-basic-elaboration-10.woff │ │ │ └── simple-line-icons │ │ │ └── fonts │ │ │ ├── Simple-Line-Icons.eot │ │ │ ├── Simple-Line-Icons.ttf │ │ │ ├── Simple-Line-Icons.woff │ │ │ └── Simple-Line-Icons.woff2 │ ├── fonts │ │ ├── dropify.eot │ │ ├── dropify.ttf │ │ ├── dropify.woff │ │ ├── glyphicons-halflings-regular.eot │ │ ├── glyphicons-halflings-regular.ttf │ │ ├── glyphicons-halflings-regular.woff │ │ └── glyphicons-halflings-regular.woff2 │ ├── images │ │ ├── avater.png │ │ ├── favicon.png │ │ ├── switch.png │ │ ├── IMG_0055.jpg │ │ ├── lvdi_logo.png │ │ ├── pixel │ │ │ └── busy.gif │ │ ├── login-register.jpg │ │ └── lvdi_logo_text.png │ ├── node │ │ ├── morris.css │ │ └── wizard.css │ └── pixel │ │ ├── spinners.css │ │ └── variables.css ├── components │ ├── demo │ │ ├── simple │ │ │ ├── index.js │ │ │ └── view.js │ │ ├── wizard │ │ │ ├── index.js │ │ │ ├── validate.js │ │ │ ├── view.js │ │ │ ├── WizardFormFirstPage.js │ │ │ ├── WizardForm.js │ │ │ └── WizardFormSecondPage.js │ │ ├── fieldArrays │ │ │ ├── index.js │ │ │ ├── view.js │ │ │ ├── renderHobbies.js │ │ │ ├── renderMembers.js │ │ │ └── FieldArraysForm.js │ │ ├── normalizing │ │ │ ├── index.js │ │ │ ├── normalizePhone.js │ │ │ └── view.js │ │ ├── remoteSubmit │ │ │ ├── index.js │ │ │ ├── RemoteSubmitButton.js │ │ │ ├── submit.js │ │ │ ├── RemoteSubmitForm.js │ │ │ └── view.js │ │ ├── syncValidation │ │ │ ├── index.js │ │ │ ├── warnDesc.js │ │ │ ├── validDesc.js │ │ │ └── view.js │ │ ├── asyncValidation │ │ │ ├── index.js │ │ │ ├── validate.js │ │ │ ├── asyncValidate.js │ │ │ ├── view.js │ │ │ └── AsyncValidationForm.js │ │ ├── submitValidation │ │ │ ├── index.js │ │ │ ├── submit.js │ │ │ ├── view.js │ │ │ └── SubmitValidationForm.js │ │ ├── fieldLevelValidation │ │ │ ├── index.js │ │ │ ├── warnDesc.js │ │ │ ├── validDesc.js │ │ │ └── view.js │ │ ├── initializeFromState │ │ │ ├── index.js │ │ │ ├── checkArray.js │ │ │ ├── account.js │ │ │ └── view.js │ │ └── selectingFormValues │ │ │ ├── index.js │ │ │ └── view.js │ ├── common │ │ └── content │ │ │ ├── projectContent │ │ │ ├── actionTypes.js │ │ │ ├── action.js │ │ │ ├── reducer.js │ │ │ └── ProjectContent.js │ │ │ ├── Footer.js │ │ │ └── RouteRoot.js │ └── utils │ │ ├── validation │ │ ├── textareaField.js │ │ ├── selectField.js │ │ ├── inputField.js │ │ └── radioField.js │ │ ├── MyDropify.js │ │ └── MyDropzone.js ├── plugins │ └── images │ │ ├── error-bg.jpg │ │ ├── login-register.jpg │ │ └── tooltip │ │ ├── tooltip2.svg │ │ ├── tooltip3.svg │ │ ├── tooltip1.svg │ │ ├── shape3.svg │ │ └── shape1.svg ├── store │ ├── configureStore.js │ ├── configureStore.prod.js │ └── configureStore.dev.js ├── router │ ├── history.js │ ├── RouteWithSubRoutes.js │ ├── Routes.js │ └── MainRouter.js ├── index.js └── reducers │ └── rootReducer.js ├── public ├── favicon.ico └── manifest.json ├── .gitignore ├── config ├── jest │ ├── fileTransform.js │ └── cssTransform.js └── polyfills.js ├── .editorconfig ├── scripts └── test.js └── LICENSE /src/style/icons/weather-icons/less/css/variables-day.css: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/style/icons/weather-icons/less/css/variables-misc.css: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/style/icons/weather-icons/less/css/variables-moon.css: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/style/icons/weather-icons/less/css/variables-night.css: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/style/icons/weather-icons/less/css/variables-time.css: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/style/icons/weather-icons/css/weather-icons-variables.css: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/style/icons/weather-icons/less/css/variables-beaufort.css: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/style/icons/weather-icons/less/css/variables-direction.css: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/style/icons/weather-icons/less/css/variables-neutral.css: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/style/icons/weather-icons/less/css/variables-wind-names.css: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/style/less/icons/weather-icons/less/css/variables-day.css: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/style/less/icons/weather-icons/less/css/variables-misc.css: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/style/less/icons/weather-icons/less/css/variables-moon.css: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/style/less/icons/weather-icons/less/css/variables-night.css: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/style/less/icons/weather-icons/less/css/variables-time.css: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/style/less/icons/weather-icons/css/weather-icons-variables.css: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/style/less/icons/weather-icons/less/css/variables-beaufort.css: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/style/less/icons/weather-icons/less/css/variables-direction.css: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/style/less/icons/weather-icons/less/css/variables-neutral.css: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/style/less/icons/weather-icons/less/css/variables-wind-names.css: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/style/icons/font-awesome/less/extras.less: -------------------------------------------------------------------------------- 1 | // Extras 2 | // -------------------------- 3 | -------------------------------------------------------------------------------- /src/components/demo/simple/index.js: -------------------------------------------------------------------------------- 1 | import Simple from './view'; 2 | 3 | export {Simple}; 4 | -------------------------------------------------------------------------------- /src/components/demo/wizard/index.js: -------------------------------------------------------------------------------- 1 | import Wizard from './view'; 2 | 3 | export { Wizard } 4 | -------------------------------------------------------------------------------- /src/style/less/icons/font-awesome/less/extras.less: -------------------------------------------------------------------------------- 1 | // Extras 2 | // -------------------------- 3 | -------------------------------------------------------------------------------- /public/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tedyuen/react-redux-form-v6-example/HEAD/public/favicon.ico -------------------------------------------------------------------------------- /src/components/demo/fieldArrays/index.js: -------------------------------------------------------------------------------- 1 | import FieldArray from './view'; 2 | 3 | export { FieldArray } 4 | -------------------------------------------------------------------------------- /src/components/demo/normalizing/index.js: -------------------------------------------------------------------------------- 1 | import Normalizing from './view'; 2 | 3 | export { Normalizing } 4 | -------------------------------------------------------------------------------- /src/components/demo/remoteSubmit/index.js: -------------------------------------------------------------------------------- 1 | import RemoteSubmit from './view'; 2 | 3 | export { RemoteSubmit } 4 | -------------------------------------------------------------------------------- /src/components/demo/syncValidation/index.js: -------------------------------------------------------------------------------- 1 | import SyncValidation from './view'; 2 | 3 | export {SyncValidation}; 4 | -------------------------------------------------------------------------------- /src/components/demo/asyncValidation/index.js: -------------------------------------------------------------------------------- 1 | import AsyncValidation from './view'; 2 | 3 | export {AsyncValidation} 4 | -------------------------------------------------------------------------------- /src/components/demo/submitValidation/index.js: -------------------------------------------------------------------------------- 1 | import SubmitValidation from './view'; 2 | 3 | export {SubmitValidation} 4 | -------------------------------------------------------------------------------- /src/style/fonts/dropify.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tedyuen/react-redux-form-v6-example/HEAD/src/style/fonts/dropify.eot -------------------------------------------------------------------------------- /src/style/fonts/dropify.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tedyuen/react-redux-form-v6-example/HEAD/src/style/fonts/dropify.ttf -------------------------------------------------------------------------------- /src/style/fonts/dropify.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tedyuen/react-redux-form-v6-example/HEAD/src/style/fonts/dropify.woff -------------------------------------------------------------------------------- /src/style/images/avater.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tedyuen/react-redux-form-v6-example/HEAD/src/style/images/avater.png -------------------------------------------------------------------------------- /src/style/images/favicon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tedyuen/react-redux-form-v6-example/HEAD/src/style/images/favicon.png -------------------------------------------------------------------------------- /src/style/images/switch.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tedyuen/react-redux-form-v6-example/HEAD/src/style/images/switch.png -------------------------------------------------------------------------------- /src/plugins/images/error-bg.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tedyuen/react-redux-form-v6-example/HEAD/src/plugins/images/error-bg.jpg -------------------------------------------------------------------------------- /src/style/images/IMG_0055.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tedyuen/react-redux-form-v6-example/HEAD/src/style/images/IMG_0055.jpg -------------------------------------------------------------------------------- /src/style/images/lvdi_logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tedyuen/react-redux-form-v6-example/HEAD/src/style/images/lvdi_logo.png -------------------------------------------------------------------------------- /src/style/images/pixel/busy.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tedyuen/react-redux-form-v6-example/HEAD/src/style/images/pixel/busy.gif -------------------------------------------------------------------------------- /src/components/demo/fieldLevelValidation/index.js: -------------------------------------------------------------------------------- 1 | import FieldLevelValidation from './view'; 2 | 3 | export {FieldLevelValidation} 4 | -------------------------------------------------------------------------------- /src/components/demo/initializeFromState/index.js: -------------------------------------------------------------------------------- 1 | import InitializeFromState from './view'; 2 | 3 | export { InitializeFromState }; 4 | -------------------------------------------------------------------------------- /src/components/demo/selectingFormValues/index.js: -------------------------------------------------------------------------------- 1 | import SelectingFormValues from './view'; 2 | 3 | export { SelectingFormValues }; 4 | -------------------------------------------------------------------------------- /src/style/images/login-register.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tedyuen/react-redux-form-v6-example/HEAD/src/style/images/login-register.jpg -------------------------------------------------------------------------------- /src/style/images/lvdi_logo_text.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tedyuen/react-redux-form-v6-example/HEAD/src/style/images/lvdi_logo_text.png -------------------------------------------------------------------------------- /src/plugins/images/login-register.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tedyuen/react-redux-form-v6-example/HEAD/src/plugins/images/login-register.jpg -------------------------------------------------------------------------------- /src/components/common/content/projectContent/actionTypes.js: -------------------------------------------------------------------------------- 1 | export const LOADING_BLOCK = 'LOADING/BLOCK'; 2 | export const LOADING_NONE = 'LOADING/NONE'; 3 | -------------------------------------------------------------------------------- /src/components/demo/fieldLevelValidation/warnDesc.js: -------------------------------------------------------------------------------- 1 | export const tooOld = value => 2 | value && value > 65 ? 'You might be too old for this' : undefined 3 | -------------------------------------------------------------------------------- /src/style/fonts/glyphicons-halflings-regular.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tedyuen/react-redux-form-v6-example/HEAD/src/style/fonts/glyphicons-halflings-regular.eot -------------------------------------------------------------------------------- /src/style/fonts/glyphicons-halflings-regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tedyuen/react-redux-form-v6-example/HEAD/src/style/fonts/glyphicons-halflings-regular.ttf -------------------------------------------------------------------------------- /src/style/icons/themify-icons/fonts/themify.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tedyuen/react-redux-form-v6-example/HEAD/src/style/icons/themify-icons/fonts/themify.eot -------------------------------------------------------------------------------- /src/style/icons/themify-icons/fonts/themify.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tedyuen/react-redux-form-v6-example/HEAD/src/style/icons/themify-icons/fonts/themify.ttf -------------------------------------------------------------------------------- /src/style/icons/themify-icons/fonts/themify.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tedyuen/react-redux-form-v6-example/HEAD/src/style/icons/themify-icons/fonts/themify.woff -------------------------------------------------------------------------------- /src/style/fonts/glyphicons-halflings-regular.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tedyuen/react-redux-form-v6-example/HEAD/src/style/fonts/glyphicons-halflings-regular.woff -------------------------------------------------------------------------------- /src/style/fonts/glyphicons-halflings-regular.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tedyuen/react-redux-form-v6-example/HEAD/src/style/fonts/glyphicons-halflings-regular.woff2 -------------------------------------------------------------------------------- /src/style/icons/font-awesome/fonts/FontAwesome.otf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tedyuen/react-redux-form-v6-example/HEAD/src/style/icons/font-awesome/fonts/FontAwesome.otf -------------------------------------------------------------------------------- /src/style/icons/linea-icons/fonts/linea-arrows-10.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tedyuen/react-redux-form-v6-example/HEAD/src/style/icons/linea-icons/fonts/linea-arrows-10.eot -------------------------------------------------------------------------------- /src/style/icons/linea-icons/fonts/linea-arrows-10.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tedyuen/react-redux-form-v6-example/HEAD/src/style/icons/linea-icons/fonts/linea-arrows-10.ttf -------------------------------------------------------------------------------- /src/style/icons/linea-icons/fonts/linea-basic-10.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tedyuen/react-redux-form-v6-example/HEAD/src/style/icons/linea-icons/fonts/linea-basic-10.eot -------------------------------------------------------------------------------- /src/style/icons/linea-icons/fonts/linea-basic-10.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tedyuen/react-redux-form-v6-example/HEAD/src/style/icons/linea-icons/fonts/linea-basic-10.ttf -------------------------------------------------------------------------------- /src/style/icons/linea-icons/fonts/linea-basic-10.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tedyuen/react-redux-form-v6-example/HEAD/src/style/icons/linea-icons/fonts/linea-basic-10.woff -------------------------------------------------------------------------------- /src/style/icons/linea-icons/fonts/linea-music-10.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tedyuen/react-redux-form-v6-example/HEAD/src/style/icons/linea-icons/fonts/linea-music-10.eot -------------------------------------------------------------------------------- /src/style/icons/linea-icons/fonts/linea-music-10.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tedyuen/react-redux-form-v6-example/HEAD/src/style/icons/linea-icons/fonts/linea-music-10.ttf -------------------------------------------------------------------------------- /src/style/icons/linea-icons/fonts/linea-music-10.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tedyuen/react-redux-form-v6-example/HEAD/src/style/icons/linea-icons/fonts/linea-music-10.woff -------------------------------------------------------------------------------- /src/style/less/icons/themify-icons/fonts/themify.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tedyuen/react-redux-form-v6-example/HEAD/src/style/less/icons/themify-icons/fonts/themify.eot -------------------------------------------------------------------------------- /src/style/less/icons/themify-icons/fonts/themify.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tedyuen/react-redux-form-v6-example/HEAD/src/style/less/icons/themify-icons/fonts/themify.ttf -------------------------------------------------------------------------------- /src/style/less/icons/themify-icons/fonts/themify.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tedyuen/react-redux-form-v6-example/HEAD/src/style/less/icons/themify-icons/fonts/themify.woff -------------------------------------------------------------------------------- /src/style/icons/linea-icons/fonts/linea-arrows-10.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tedyuen/react-redux-form-v6-example/HEAD/src/style/icons/linea-icons/fonts/linea-arrows-10.woff -------------------------------------------------------------------------------- /src/style/icons/linea-icons/fonts/linea-ecommerce-10.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tedyuen/react-redux-form-v6-example/HEAD/src/style/icons/linea-icons/fonts/linea-ecommerce-10.eot -------------------------------------------------------------------------------- /src/style/icons/linea-icons/fonts/linea-ecommerce-10.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tedyuen/react-redux-form-v6-example/HEAD/src/style/icons/linea-icons/fonts/linea-ecommerce-10.ttf -------------------------------------------------------------------------------- /src/style/icons/linea-icons/fonts/linea-software-10.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tedyuen/react-redux-form-v6-example/HEAD/src/style/icons/linea-icons/fonts/linea-software-10.eot -------------------------------------------------------------------------------- /src/style/icons/linea-icons/fonts/linea-software-10.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tedyuen/react-redux-form-v6-example/HEAD/src/style/icons/linea-icons/fonts/linea-software-10.ttf -------------------------------------------------------------------------------- /src/style/icons/linea-icons/fonts/linea-software-10.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tedyuen/react-redux-form-v6-example/HEAD/src/style/icons/linea-icons/fonts/linea-software-10.woff -------------------------------------------------------------------------------- /src/style/icons/linea-icons/fonts/linea-weather-10.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tedyuen/react-redux-form-v6-example/HEAD/src/style/icons/linea-icons/fonts/linea-weather-10.eot -------------------------------------------------------------------------------- /src/style/icons/linea-icons/fonts/linea-weather-10.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tedyuen/react-redux-form-v6-example/HEAD/src/style/icons/linea-icons/fonts/linea-weather-10.ttf -------------------------------------------------------------------------------- /src/style/icons/linea-icons/fonts/linea-weather-10.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tedyuen/react-redux-form-v6-example/HEAD/src/style/icons/linea-icons/fonts/linea-weather-10.woff -------------------------------------------------------------------------------- /src/style/less/icons/font-awesome/fonts/FontAwesome.otf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tedyuen/react-redux-form-v6-example/HEAD/src/style/less/icons/font-awesome/fonts/FontAwesome.otf -------------------------------------------------------------------------------- /src/style/icons/font-awesome/fonts/fontawesome-webfont.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tedyuen/react-redux-form-v6-example/HEAD/src/style/icons/font-awesome/fonts/fontawesome-webfont.eot -------------------------------------------------------------------------------- /src/style/icons/font-awesome/fonts/fontawesome-webfont.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tedyuen/react-redux-form-v6-example/HEAD/src/style/icons/font-awesome/fonts/fontawesome-webfont.ttf -------------------------------------------------------------------------------- /src/style/icons/linea-icons/fonts/linea-ecommerce-10.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tedyuen/react-redux-form-v6-example/HEAD/src/style/icons/linea-icons/fonts/linea-ecommerce-10.woff -------------------------------------------------------------------------------- /src/style/less/icons/linea-icons/fonts/linea-arrows-10.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tedyuen/react-redux-form-v6-example/HEAD/src/style/less/icons/linea-icons/fonts/linea-arrows-10.eot -------------------------------------------------------------------------------- /src/style/less/icons/linea-icons/fonts/linea-arrows-10.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tedyuen/react-redux-form-v6-example/HEAD/src/style/less/icons/linea-icons/fonts/linea-arrows-10.ttf -------------------------------------------------------------------------------- /src/style/less/icons/linea-icons/fonts/linea-basic-10.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tedyuen/react-redux-form-v6-example/HEAD/src/style/less/icons/linea-icons/fonts/linea-basic-10.eot -------------------------------------------------------------------------------- /src/style/less/icons/linea-icons/fonts/linea-basic-10.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tedyuen/react-redux-form-v6-example/HEAD/src/style/less/icons/linea-icons/fonts/linea-basic-10.ttf -------------------------------------------------------------------------------- /src/style/less/icons/linea-icons/fonts/linea-basic-10.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tedyuen/react-redux-form-v6-example/HEAD/src/style/less/icons/linea-icons/fonts/linea-basic-10.woff -------------------------------------------------------------------------------- /src/style/less/icons/linea-icons/fonts/linea-music-10.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tedyuen/react-redux-form-v6-example/HEAD/src/style/less/icons/linea-icons/fonts/linea-music-10.eot -------------------------------------------------------------------------------- /src/style/less/icons/linea-icons/fonts/linea-music-10.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tedyuen/react-redux-form-v6-example/HEAD/src/style/less/icons/linea-icons/fonts/linea-music-10.ttf -------------------------------------------------------------------------------- /src/style/less/icons/linea-icons/fonts/linea-music-10.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tedyuen/react-redux-form-v6-example/HEAD/src/style/less/icons/linea-icons/fonts/linea-music-10.woff -------------------------------------------------------------------------------- /src/style/icons/font-awesome/fonts/fontawesome-webfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tedyuen/react-redux-form-v6-example/HEAD/src/style/icons/font-awesome/fonts/fontawesome-webfont.woff -------------------------------------------------------------------------------- /src/style/icons/font-awesome/fonts/fontawesome-webfont.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tedyuen/react-redux-form-v6-example/HEAD/src/style/icons/font-awesome/fonts/fontawesome-webfont.woff2 -------------------------------------------------------------------------------- /src/style/icons/font-awesome/less/fixed-width.less: -------------------------------------------------------------------------------- 1 | // Fixed Width Icons 2 | // ------------------------- 3 | .@{fa-css-prefix}-fw { 4 | width: (18em / 14); 5 | text-align: center; 6 | } 7 | -------------------------------------------------------------------------------- /src/style/icons/simple-line-icons/fonts/Simple-Line-Icons.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tedyuen/react-redux-form-v6-example/HEAD/src/style/icons/simple-line-icons/fonts/Simple-Line-Icons.eot -------------------------------------------------------------------------------- /src/style/icons/simple-line-icons/fonts/Simple-Line-Icons.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tedyuen/react-redux-form-v6-example/HEAD/src/style/icons/simple-line-icons/fonts/Simple-Line-Icons.ttf -------------------------------------------------------------------------------- /src/style/less/icons/linea-icons/fonts/linea-arrows-10.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tedyuen/react-redux-form-v6-example/HEAD/src/style/less/icons/linea-icons/fonts/linea-arrows-10.woff -------------------------------------------------------------------------------- /src/style/less/icons/linea-icons/fonts/linea-ecommerce-10.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tedyuen/react-redux-form-v6-example/HEAD/src/style/less/icons/linea-icons/fonts/linea-ecommerce-10.eot -------------------------------------------------------------------------------- /src/style/less/icons/linea-icons/fonts/linea-ecommerce-10.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tedyuen/react-redux-form-v6-example/HEAD/src/style/less/icons/linea-icons/fonts/linea-ecommerce-10.ttf -------------------------------------------------------------------------------- /src/style/less/icons/linea-icons/fonts/linea-software-10.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tedyuen/react-redux-form-v6-example/HEAD/src/style/less/icons/linea-icons/fonts/linea-software-10.eot -------------------------------------------------------------------------------- /src/style/less/icons/linea-icons/fonts/linea-software-10.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tedyuen/react-redux-form-v6-example/HEAD/src/style/less/icons/linea-icons/fonts/linea-software-10.ttf -------------------------------------------------------------------------------- /src/style/less/icons/linea-icons/fonts/linea-software-10.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tedyuen/react-redux-form-v6-example/HEAD/src/style/less/icons/linea-icons/fonts/linea-software-10.woff -------------------------------------------------------------------------------- /src/style/less/icons/linea-icons/fonts/linea-weather-10.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tedyuen/react-redux-form-v6-example/HEAD/src/style/less/icons/linea-icons/fonts/linea-weather-10.eot -------------------------------------------------------------------------------- /src/style/less/icons/linea-icons/fonts/linea-weather-10.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tedyuen/react-redux-form-v6-example/HEAD/src/style/less/icons/linea-icons/fonts/linea-weather-10.ttf -------------------------------------------------------------------------------- /src/style/less/icons/linea-icons/fonts/linea-weather-10.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tedyuen/react-redux-form-v6-example/HEAD/src/style/less/icons/linea-icons/fonts/linea-weather-10.woff -------------------------------------------------------------------------------- /src/style/icons/font-awesome/fonts/fontawesome-webfont-old.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tedyuen/react-redux-form-v6-example/HEAD/src/style/icons/font-awesome/fonts/fontawesome-webfont-old.ttf -------------------------------------------------------------------------------- /src/style/icons/font-awesome/scss/_fixed-width.scss: -------------------------------------------------------------------------------- 1 | // Fixed Width Icons 2 | // ------------------------- 3 | .#{$fa-css-prefix}-fw { 4 | width: (18em / 14); 5 | text-align: center; 6 | } 7 | -------------------------------------------------------------------------------- /src/style/icons/simple-line-icons/fonts/Simple-Line-Icons.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tedyuen/react-redux-form-v6-example/HEAD/src/style/icons/simple-line-icons/fonts/Simple-Line-Icons.woff -------------------------------------------------------------------------------- /src/style/icons/simple-line-icons/fonts/Simple-Line-Icons.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tedyuen/react-redux-form-v6-example/HEAD/src/style/icons/simple-line-icons/fonts/Simple-Line-Icons.woff2 -------------------------------------------------------------------------------- /src/style/less/icons/font-awesome/fonts/fontawesome-webfont.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tedyuen/react-redux-form-v6-example/HEAD/src/style/less/icons/font-awesome/fonts/fontawesome-webfont.eot -------------------------------------------------------------------------------- /src/style/less/icons/font-awesome/fonts/fontawesome-webfont.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tedyuen/react-redux-form-v6-example/HEAD/src/style/less/icons/font-awesome/fonts/fontawesome-webfont.ttf -------------------------------------------------------------------------------- /src/style/less/icons/font-awesome/less/fixed-width.less: -------------------------------------------------------------------------------- 1 | // Fixed Width Icons 2 | // ------------------------- 3 | .@{fa-css-prefix}-fw { 4 | width: (18em / 14); 5 | text-align: center; 6 | } 7 | -------------------------------------------------------------------------------- /src/style/less/icons/linea-icons/fonts/linea-ecommerce-10.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tedyuen/react-redux-form-v6-example/HEAD/src/style/less/icons/linea-icons/fonts/linea-ecommerce-10.woff -------------------------------------------------------------------------------- /src/style/icons/linea-icons/fonts/linea-basic-elaboration-10.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tedyuen/react-redux-form-v6-example/HEAD/src/style/icons/linea-icons/fonts/linea-basic-elaboration-10.eot -------------------------------------------------------------------------------- /src/style/icons/linea-icons/fonts/linea-basic-elaboration-10.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tedyuen/react-redux-form-v6-example/HEAD/src/style/icons/linea-icons/fonts/linea-basic-elaboration-10.ttf -------------------------------------------------------------------------------- /src/style/icons/linea-icons/fonts/linea-basic-elaboration-10.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tedyuen/react-redux-form-v6-example/HEAD/src/style/icons/linea-icons/fonts/linea-basic-elaboration-10.woff -------------------------------------------------------------------------------- /src/style/less/icons/font-awesome/fonts/fontawesome-webfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tedyuen/react-redux-form-v6-example/HEAD/src/style/less/icons/font-awesome/fonts/fontawesome-webfont.woff -------------------------------------------------------------------------------- /src/style/less/icons/font-awesome/fonts/fontawesome-webfont.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tedyuen/react-redux-form-v6-example/HEAD/src/style/less/icons/font-awesome/fonts/fontawesome-webfont.woff2 -------------------------------------------------------------------------------- /src/style/less/icons/font-awesome/scss/_fixed-width.scss: -------------------------------------------------------------------------------- 1 | // Fixed Width Icons 2 | // ------------------------- 3 | .#{$fa-css-prefix}-fw { 4 | width: (18em / 14); 5 | text-align: center; 6 | } 7 | -------------------------------------------------------------------------------- /src/style/less/icons/simple-line-icons/fonts/Simple-Line-Icons.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tedyuen/react-redux-form-v6-example/HEAD/src/style/less/icons/simple-line-icons/fonts/Simple-Line-Icons.eot -------------------------------------------------------------------------------- /src/style/less/icons/simple-line-icons/fonts/Simple-Line-Icons.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tedyuen/react-redux-form-v6-example/HEAD/src/style/less/icons/simple-line-icons/fonts/Simple-Line-Icons.ttf -------------------------------------------------------------------------------- /src/store/configureStore.js: -------------------------------------------------------------------------------- 1 | if (process.env.NODE_ENV === 'production') { 2 | module.exports = require('./configureStore.prod') 3 | } else { 4 | module.exports = require('./configureStore.dev') 5 | } 6 | -------------------------------------------------------------------------------- /src/style/icons/weather-icons/font/weathericons-regular-webfont.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tedyuen/react-redux-form-v6-example/HEAD/src/style/icons/weather-icons/font/weathericons-regular-webfont.eot -------------------------------------------------------------------------------- /src/style/icons/weather-icons/font/weathericons-regular-webfont.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tedyuen/react-redux-form-v6-example/HEAD/src/style/icons/weather-icons/font/weathericons-regular-webfont.ttf -------------------------------------------------------------------------------- /src/style/icons/weather-icons/font/weathericons-regular-webfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tedyuen/react-redux-form-v6-example/HEAD/src/style/icons/weather-icons/font/weathericons-regular-webfont.woff -------------------------------------------------------------------------------- /src/style/less/icons/font-awesome/fonts/fontawesome-webfont-old.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tedyuen/react-redux-form-v6-example/HEAD/src/style/less/icons/font-awesome/fonts/fontawesome-webfont-old.ttf -------------------------------------------------------------------------------- /src/style/less/icons/simple-line-icons/fonts/Simple-Line-Icons.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tedyuen/react-redux-form-v6-example/HEAD/src/style/less/icons/simple-line-icons/fonts/Simple-Line-Icons.woff -------------------------------------------------------------------------------- /src/style/less/icons/simple-line-icons/fonts/Simple-Line-Icons.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tedyuen/react-redux-form-v6-example/HEAD/src/style/less/icons/simple-line-icons/fonts/Simple-Line-Icons.woff2 -------------------------------------------------------------------------------- /src/style/icons/weather-icons/font/weathericons-regular-webfont.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tedyuen/react-redux-form-v6-example/HEAD/src/style/icons/weather-icons/font/weathericons-regular-webfont.woff2 -------------------------------------------------------------------------------- /src/style/less/icons/linea-icons/fonts/linea-basic-elaboration-10.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tedyuen/react-redux-form-v6-example/HEAD/src/style/less/icons/linea-icons/fonts/linea-basic-elaboration-10.eot -------------------------------------------------------------------------------- /src/style/less/icons/linea-icons/fonts/linea-basic-elaboration-10.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tedyuen/react-redux-form-v6-example/HEAD/src/style/less/icons/linea-icons/fonts/linea-basic-elaboration-10.ttf -------------------------------------------------------------------------------- /src/style/less/icons/linea-icons/fonts/linea-basic-elaboration-10.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tedyuen/react-redux-form-v6-example/HEAD/src/style/less/icons/linea-icons/fonts/linea-basic-elaboration-10.woff -------------------------------------------------------------------------------- /src/style/less/icons/weather-icons/font/weathericons-regular-webfont.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tedyuen/react-redux-form-v6-example/HEAD/src/style/less/icons/weather-icons/font/weathericons-regular-webfont.eot -------------------------------------------------------------------------------- /src/style/less/icons/weather-icons/font/weathericons-regular-webfont.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tedyuen/react-redux-form-v6-example/HEAD/src/style/less/icons/weather-icons/font/weathericons-regular-webfont.ttf -------------------------------------------------------------------------------- /src/style/less/icons/weather-icons/font/weathericons-regular-webfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tedyuen/react-redux-form-v6-example/HEAD/src/style/less/icons/weather-icons/font/weathericons-regular-webfont.woff -------------------------------------------------------------------------------- /src/style/less/icons/weather-icons/font/weathericons-regular-webfont.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tedyuen/react-redux-form-v6-example/HEAD/src/style/less/icons/weather-icons/font/weathericons-regular-webfont.woff2 -------------------------------------------------------------------------------- /src/components/demo/syncValidation/warnDesc.js: -------------------------------------------------------------------------------- 1 | export const warn = values => { 2 | const warnings = {} 3 | if (values.age < 30) { 4 | warnings.age = 'Hmm, you seem a bit young...' 5 | } 6 | return warnings 7 | } 8 | -------------------------------------------------------------------------------- /src/router/history.js: -------------------------------------------------------------------------------- 1 | import createHistory from 'history/createHashHistory'; 2 | // import createHistory from 'history/createBrowserHistory'; 3 | 4 | // Create a history of your choosing (we're using a browser history in this case) 5 | export const history = createHistory(); 6 | -------------------------------------------------------------------------------- /src/style/icons/weather-icons/sass/weather-icons-wind.scss: -------------------------------------------------------------------------------- 1 | @import "weather-icons-core"; 2 | @import "icon-variables/variables-wind-names"; 3 | @import "icon-classes/classes-wind"; 4 | @import "icon-classes/classes-wind-degrees"; 5 | @import "icon-classes/classes-wind-aliases"; 6 | -------------------------------------------------------------------------------- /src/components/common/content/projectContent/action.js: -------------------------------------------------------------------------------- 1 | import { LOADING_BLOCK, LOADING_NONE} from './actionTypes'; 2 | 3 | export const loadingBlock = () => ({ 4 | type: LOADING_BLOCK, 5 | }) 6 | 7 | export const loadingNone = () => ({ 8 | type: LOADING_NONE, 9 | }) 10 | -------------------------------------------------------------------------------- /src/style/icons/weather-icons/sass/weather-icons-wind.min.scss: -------------------------------------------------------------------------------- 1 | @import "weather-icons-core"; 2 | @import "icon-variables/variables-wind-names"; 3 | @import "icon-classes/classes-wind"; 4 | @import "icon-classes/classes-wind-degrees"; 5 | @import "icon-classes/classes-wind-aliases"; 6 | -------------------------------------------------------------------------------- /src/index.js: -------------------------------------------------------------------------------- 1 | import React from 'react'; 2 | import ReactDOM from 'react-dom'; 3 | import registerServiceWorker from './registerServiceWorker'; 4 | import Routes from './router/Routes.js'; 5 | 6 | ReactDOM.render(, document.getElementById('root')); 7 | registerServiceWorker(); 8 | -------------------------------------------------------------------------------- /src/style/icons/weather-icons/less/weather-icons-wind.less: -------------------------------------------------------------------------------- 1 | @import "weather-icons-core.less"; 2 | @import "icon-variables/variables-wind-names.less"; 3 | @import "icon-classes/classes-wind.less"; 4 | @import "icon-classes/classes-wind-degrees.less"; 5 | @import "icon-classes/classes-wind-aliases.less"; -------------------------------------------------------------------------------- /src/style/icons/weather-icons/less/weather-icons-wind.min.less: -------------------------------------------------------------------------------- 1 | @import "weather-icons-core.less"; 2 | @import "icon-variables/variables-wind-names.less"; 3 | @import "icon-classes/classes-wind.less"; 4 | @import "icon-classes/classes-wind-degrees.less"; 5 | @import "icon-classes/classes-wind-aliases.less"; -------------------------------------------------------------------------------- /src/style/less/icons/weather-icons/less/weather-icons-wind.less: -------------------------------------------------------------------------------- 1 | @import "weather-icons-core.less"; 2 | @import "icon-variables/variables-wind-names.less"; 3 | @import "icon-classes/classes-wind.less"; 4 | @import "icon-classes/classes-wind-degrees.less"; 5 | @import "icon-classes/classes-wind-aliases.less"; -------------------------------------------------------------------------------- /src/style/less/icons/weather-icons/sass/weather-icons-wind.scss: -------------------------------------------------------------------------------- 1 | @import "weather-icons-core.scss"; 2 | @import "icon-variables/variables-wind-names.scss"; 3 | @import "icon-classes/classes-wind.scss"; 4 | @import "icon-classes/classes-wind-degrees.scss"; 5 | @import "icon-classes/classes-wind-aliases.scss"; -------------------------------------------------------------------------------- /src/components/common/content/Footer.js: -------------------------------------------------------------------------------- 1 | import React from 'react' 2 | 3 | class Footer extends React.Component { 4 | 5 | render(){ 6 | return ( 7 | 8 | ) 9 | } 10 | } 11 | 12 | export { Footer } 13 | -------------------------------------------------------------------------------- /src/style/less/icons/weather-icons/less/weather-icons-wind.min.less: -------------------------------------------------------------------------------- 1 | @import "weather-icons-core.less"; 2 | @import "icon-variables/variables-wind-names.less"; 3 | @import "icon-classes/classes-wind.less"; 4 | @import "icon-classes/classes-wind-degrees.less"; 5 | @import "icon-classes/classes-wind-aliases.less"; -------------------------------------------------------------------------------- /src/style/less/icons/weather-icons/sass/weather-icons-wind.min.scss: -------------------------------------------------------------------------------- 1 | @import "weather-icons-core.scss"; 2 | @import "icon-variables/variables-wind-names.scss"; 3 | @import "icon-classes/classes-wind.scss"; 4 | @import "icon-classes/classes-wind-degrees.scss"; 5 | @import "icon-classes/classes-wind-aliases.scss"; -------------------------------------------------------------------------------- /src/components/demo/asyncValidation/validate.js: -------------------------------------------------------------------------------- 1 | const validate = values => { 2 | const errors = {} 3 | if (!values.username) { 4 | errors.username = 'Required' 5 | } 6 | if (!values.password) { 7 | errors.password = 'Required' 8 | } 9 | return errors 10 | } 11 | 12 | export default validate 13 | -------------------------------------------------------------------------------- /src/style/icons/weather-icons/less/icon-variables/variables-direction.less: -------------------------------------------------------------------------------- 1 | @direction-up: "\f058"; 2 | @direction-up-right: "\f057"; 3 | @direction-right: "\f04d"; 4 | @direction-down-right: "\f088"; 5 | @direction-down: "\f044"; 6 | @direction-down-left: "\f043"; 7 | @direction-left: "\f048"; 8 | @direction-up-left: "\f087"; -------------------------------------------------------------------------------- /src/style/icons/weather-icons/sass/icon-variables/variables-direction.scss: -------------------------------------------------------------------------------- 1 | $direction-up: "\f058"; 2 | $direction-up-right: "\f057"; 3 | $direction-right: "\f04d"; 4 | $direction-down-right: "\f088"; 5 | $direction-down: "\f044"; 6 | $direction-down-left: "\f043"; 7 | $direction-left: "\f048"; 8 | $direction-up-left: "\f087"; -------------------------------------------------------------------------------- /src/style/less/icons/weather-icons/less/icon-variables/variables-direction.less: -------------------------------------------------------------------------------- 1 | @direction-up: "\f058"; 2 | @direction-up-right: "\f057"; 3 | @direction-right: "\f04d"; 4 | @direction-down-right: "\f088"; 5 | @direction-down: "\f044"; 6 | @direction-down-left: "\f043"; 7 | @direction-left: "\f048"; 8 | @direction-up-left: "\f087"; -------------------------------------------------------------------------------- /src/style/less/icons/weather-icons/sass/icon-variables/variables-direction.scss: -------------------------------------------------------------------------------- 1 | $direction-up: "\f058"; 2 | $direction-up-right: "\f057"; 3 | $direction-right: "\f04d"; 4 | $direction-down-right: "\f088"; 5 | $direction-down: "\f044"; 6 | $direction-down-left: "\f043"; 7 | $direction-left: "\f048"; 8 | $direction-up-left: "\f087"; -------------------------------------------------------------------------------- /src/style/icons/weather-icons/less/icon-variables/variables-time.less: -------------------------------------------------------------------------------- 1 | @time-1: "\f08a"; 2 | @time-2: "\f08b"; 3 | @time-3: "\f08c"; 4 | @time-4: "\f08d"; 5 | @time-5: "\f08e"; 6 | @time-6: "\f08f"; 7 | @time-7: "\f090"; 8 | @time-8: "\f091"; 9 | @time-9: "\f092"; 10 | @time-10: "\f093"; 11 | @time-11: "\f094"; 12 | @time-12: "\f089"; -------------------------------------------------------------------------------- /src/style/icons/weather-icons/sass/icon-variables/variables-time.scss: -------------------------------------------------------------------------------- 1 | $time-1: "\f08a"; 2 | $time-2: "\f08b"; 3 | $time-3: "\f08c"; 4 | $time-4: "\f08d"; 5 | $time-5: "\f08e"; 6 | $time-6: "\f08f"; 7 | $time-7: "\f090"; 8 | $time-8: "\f091"; 9 | $time-9: "\f092"; 10 | $time-10: "\f093"; 11 | $time-11: "\f094"; 12 | $time-12: "\f089"; -------------------------------------------------------------------------------- /src/style/less/icons/weather-icons/less/icon-variables/variables-time.less: -------------------------------------------------------------------------------- 1 | @time-1: "\f08a"; 2 | @time-2: "\f08b"; 3 | @time-3: "\f08c"; 4 | @time-4: "\f08d"; 5 | @time-5: "\f08e"; 6 | @time-6: "\f08f"; 7 | @time-7: "\f090"; 8 | @time-8: "\f091"; 9 | @time-9: "\f092"; 10 | @time-10: "\f093"; 11 | @time-11: "\f094"; 12 | @time-12: "\f089"; -------------------------------------------------------------------------------- /src/style/less/icons/weather-icons/sass/icon-variables/variables-time.scss: -------------------------------------------------------------------------------- 1 | $time-1: "\f08a"; 2 | $time-2: "\f08b"; 3 | $time-3: "\f08c"; 4 | $time-4: "\f08d"; 5 | $time-5: "\f08e"; 6 | $time-6: "\f08f"; 7 | $time-7: "\f090"; 8 | $time-8: "\f091"; 9 | $time-9: "\f092"; 10 | $time-10: "\f093"; 11 | $time-11: "\f094"; 12 | $time-12: "\f089"; -------------------------------------------------------------------------------- /src/router/RouteWithSubRoutes.js: -------------------------------------------------------------------------------- 1 | import React from 'react'; 2 | import {Route} from 'react-router-dom' 3 | 4 | const RouteWithSubRoutes = (route) => ( 5 | ( 6 | // pass the sub-routes down to keep nesting 7 | 8 | )}/> 9 | ); 10 | 11 | export default RouteWithSubRoutes 12 | -------------------------------------------------------------------------------- /src/style/icons/font-awesome/HELP-US-OUT.txt: -------------------------------------------------------------------------------- 1 | I hope you love Font Awesome. If you've found it useful, please do me a favor and check out my latest project, 2 | Fonticons (https://fonticons.com). It makes it easy to put the perfect icons on your website. Choose from our awesome, 3 | comprehensive icon sets or copy and paste your own. 4 | 5 | Please. Check it out. 6 | 7 | -Dave Gandy 8 | -------------------------------------------------------------------------------- /public/manifest.json: -------------------------------------------------------------------------------- 1 | { 2 | "short_name": "React App", 3 | "name": "Create React App Sample", 4 | "icons": [ 5 | { 6 | "src": "favicon.ico", 7 | "sizes": "192x192", 8 | "type": "image/png" 9 | } 10 | ], 11 | "start_url": "./index.html", 12 | "display": "standalone", 13 | "theme_color": "#000000", 14 | "background_color": "#ffffff" 15 | } 16 | -------------------------------------------------------------------------------- /src/style/less/icons/font-awesome/HELP-US-OUT.txt: -------------------------------------------------------------------------------- 1 | I hope you love Font Awesome. If you've found it useful, please do me a favor and check out my latest project, 2 | Fonticons (https://fonticons.com). It makes it easy to put the perfect icons on your website. Choose from our awesome, 3 | comprehensive icon sets or copy and paste your own. 4 | 5 | Please. Check it out. 6 | 7 | -Dave Gandy 8 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # See https://help.github.com/ignore-files/ for more about ignoring files. 2 | 3 | # dependencies 4 | /node_modules 5 | 6 | # testing 7 | /coverage 8 | 9 | # production 10 | /build 11 | 12 | # misc 13 | .DS_Store 14 | .env.local 15 | .env.development.local 16 | .env.test.local 17 | .env.production.local 18 | 19 | npm-debug.log* 20 | yarn-debug.log* 21 | yarn-error.log* 22 | -------------------------------------------------------------------------------- /config/jest/fileTransform.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | const path = require('path'); 4 | 5 | // This is a custom Jest transformer turning file imports into filenames. 6 | // http://facebook.github.io/jest/docs/tutorial-webpack.html 7 | 8 | module.exports = { 9 | process(src, filename) { 10 | return `module.exports = ${JSON.stringify(path.basename(filename))};`; 11 | }, 12 | }; 13 | -------------------------------------------------------------------------------- /config/jest/cssTransform.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | // This is a custom Jest transformer turning style imports into empty objects. 4 | // http://facebook.github.io/jest/docs/tutorial-webpack.html 5 | 6 | module.exports = { 7 | process() { 8 | return 'module.exports = {};'; 9 | }, 10 | getCacheKey() { 11 | // The output is always the same. 12 | return 'cssTransform'; 13 | }, 14 | }; 15 | -------------------------------------------------------------------------------- /src/reducers/rootReducer.js: -------------------------------------------------------------------------------- 1 | import { routerReducer } from 'react-router-redux'; 2 | import { combineReducers } from 'redux'; 3 | import { reducer as formReducer } from 'redux-form'; 4 | import account from '../components/demo/initializeFromState/account'; 5 | 6 | const rootReducer = combineReducers({ 7 | routerReducer, 8 | account, 9 | form:formReducer, 10 | }); 11 | 12 | export default rootReducer; 13 | -------------------------------------------------------------------------------- /src/components/demo/initializeFromState/checkArray.js: -------------------------------------------------------------------------------- 1 | import React, { Component } from 'react'; 2 | 3 | const renderFields = (fields) => ( 4 |
5 | {fields.cbArray.map((cb,index) => 6 |
7 | 8 |
9 | )} 10 |
11 | 12 | ) 13 | 14 | export default renderFields; -------------------------------------------------------------------------------- /src/components/demo/asyncValidation/asyncValidate.js: -------------------------------------------------------------------------------- 1 | const sleep = ms => new Promise(resolve => setTimeout(resolve, ms)) 2 | 3 | function asyncValidate(values) { 4 | return sleep(1000).then(() => { 5 | // simulate server latency 6 | if (['john', 'paul', 'george', 'ringo'].includes(values.username)) { 7 | throw { username: 'That username is taken' } 8 | } 9 | }) 10 | } 11 | 12 | export default asyncValidate 13 | -------------------------------------------------------------------------------- /src/style/icons/weather-icons/sass/weather-icons-variables.scss: -------------------------------------------------------------------------------- 1 | @import 'icon-variables/variables-beaufort'; 2 | @import 'icon-variables/variables-time'; 3 | @import 'icon-variables/variables-moon'; 4 | @import 'icon-variables/variables-direction'; 5 | @import 'icon-variables/variables-day'; 6 | @import 'icon-variables/variables-night'; 7 | @import 'icon-variables/variables-neutral'; 8 | @import 'icon-variables/variables-misc'; 9 | 10 | -------------------------------------------------------------------------------- /src/style/icons/weather-icons/sass/icon-classes/classes-wind.scss: -------------------------------------------------------------------------------- 1 | // Wind Variables 2.0 2 | 3 | $wind: "\f0b1"; 4 | 5 | .#{$wi-css-prefix}-wind:before { content: $wind; } 6 | 7 | @mixin wind-rotate( $val: 0deg ) { 8 | -webkit-transform: rotate($val); 9 | -moz-transform: rotate($val); 10 | -ms-transform: rotate($val); 11 | -o-transform: rotate($val); 12 | transform: rotate($val); 13 | } 14 | 15 | @import "classes-wind-degrees"; 16 | -------------------------------------------------------------------------------- /src/style/icons/weather-icons/less/icon-classes/classes-wind.less: -------------------------------------------------------------------------------- 1 | // Wind Variables 2.0 2 | 3 | @wind: "\f0b1"; 4 | 5 | .@{wi-css-prefix}-wind:before { content: @wind; } 6 | .wind-rotate(@degrees) { 7 | -webkit-transform: rotate(@degrees); 8 | -moz-transform: rotate(@degrees); 9 | -ms-transform: rotate(@degrees); 10 | -o-transform: rotate(@degrees); 11 | transform: rotate(@degrees); 12 | } 13 | 14 | @import "classes-wind-degrees.less"; -------------------------------------------------------------------------------- /src/style/icons/weather-icons/sass/weather-icons-classes.scss: -------------------------------------------------------------------------------- 1 | @import "icon-classes/classes-day"; 2 | @import "icon-classes/classes-night"; 3 | @import "icon-classes/classes-neutral"; 4 | @import "icon-classes/classes-misc"; 5 | @import "icon-classes/classes-moon"; 6 | @import "icon-classes/classes-moon-aliases"; 7 | @import "icon-classes/classes-time"; 8 | @import "icon-classes/classes-direction"; 9 | @import "icon-classes/classes-beaufort"; 10 | -------------------------------------------------------------------------------- /src/style/less/icons/weather-icons/sass/icon-classes/classes-wind.scss: -------------------------------------------------------------------------------- 1 | // Wind Variables 2.0 2 | 3 | $wind: "\f0b1"; 4 | 5 | .#{$wi-css-prefix}-wind:before { content: $wind; } 6 | 7 | @mixin wind-rotate( $val: 0deg ) { 8 | -webkit-transform: rotate($val); 9 | -moz-transform: rotate($val); 10 | -ms-transform: rotate($val); 11 | -o-transform: rotate($val); 12 | transform: rotate($val); 13 | } 14 | 15 | @import "classes-wind-degrees.scss"; -------------------------------------------------------------------------------- /src/components/common/content/RouteRoot.js: -------------------------------------------------------------------------------- 1 | import React,{Component} from 'react'; 2 | import { connect } from 'react-redux'; 3 | 4 | class RouteRoot extends Component { 5 | componentDidMount(){ 6 | const { history } = this.props; 7 | history.push({ 8 | pathname:'/project/simple', 9 | }); 10 | } 11 | render(){ 12 | return( 13 |
14 | ) 15 | } 16 | } 17 | 18 | export default connect()(RouteRoot); 19 | -------------------------------------------------------------------------------- /src/style/less/icons/weather-icons/less/icon-classes/classes-wind.less: -------------------------------------------------------------------------------- 1 | // Wind Variables 2.0 2 | 3 | @wind: "\f0b1"; 4 | 5 | .@{wi-css-prefix}-wind:before { content: @wind; } 6 | .wind-rotate(@degrees) { 7 | -webkit-transform: rotate(@degrees); 8 | -moz-transform: rotate(@degrees); 9 | -ms-transform: rotate(@degrees); 10 | -o-transform: rotate(@degrees); 11 | transform: rotate(@degrees); 12 | } 13 | 14 | @import "classes-wind-degrees.less"; -------------------------------------------------------------------------------- /src/style/icons/font-awesome/less/larger.less: -------------------------------------------------------------------------------- 1 | // Icon Sizes 2 | // ------------------------- 3 | 4 | /* makes the font 33% larger relative to the icon container */ 5 | .@{fa-css-prefix}-lg { 6 | font-size: (4em / 3); 7 | line-height: (3em / 4); 8 | vertical-align: -15%; 9 | } 10 | .@{fa-css-prefix}-2x { font-size: 2em; } 11 | .@{fa-css-prefix}-3x { font-size: 3em; } 12 | .@{fa-css-prefix}-4x { font-size: 4em; } 13 | .@{fa-css-prefix}-5x { font-size: 5em; } 14 | -------------------------------------------------------------------------------- /src/style/icons/font-awesome/scss/_larger.scss: -------------------------------------------------------------------------------- 1 | // Icon Sizes 2 | // ------------------------- 3 | 4 | /* makes the font 33% larger relative to the icon container */ 5 | .#{$fa-css-prefix}-lg { 6 | font-size: (4em / 3); 7 | line-height: (3em / 4); 8 | vertical-align: -15%; 9 | } 10 | .#{$fa-css-prefix}-2x { font-size: 2em; } 11 | .#{$fa-css-prefix}-3x { font-size: 3em; } 12 | .#{$fa-css-prefix}-4x { font-size: 4em; } 13 | .#{$fa-css-prefix}-5x { font-size: 5em; } 14 | -------------------------------------------------------------------------------- /src/style/icons/weather-icons/less/icon-variables/variables-beaufort.less: -------------------------------------------------------------------------------- 1 | @wind-beaufort-0: "\f0b7"; 2 | @wind-beaufort-1: "\f0b8"; 3 | @wind-beaufort-2: "\f0b9"; 4 | @wind-beaufort-3: "\f0ba"; 5 | @wind-beaufort-4: "\f0bb"; 6 | @wind-beaufort-5: "\f0bc"; 7 | @wind-beaufort-6: "\f0bd"; 8 | @wind-beaufort-7: "\f0be"; 9 | @wind-beaufort-8: "\f0bf"; 10 | @wind-beaufort-9: "\f0c0"; 11 | @wind-beaufort-10: "\f0c1"; 12 | @wind-beaufort-11: "\f0c2"; 13 | @wind-beaufort-12: "\f0c3"; -------------------------------------------------------------------------------- /src/style/icons/weather-icons/sass/icon-variables/variables-beaufort.scss: -------------------------------------------------------------------------------- 1 | $wind-beaufort-0: "\f0b7"; 2 | $wind-beaufort-1: "\f0b8"; 3 | $wind-beaufort-2: "\f0b9"; 4 | $wind-beaufort-3: "\f0ba"; 5 | $wind-beaufort-4: "\f0bb"; 6 | $wind-beaufort-5: "\f0bc"; 7 | $wind-beaufort-6: "\f0bd"; 8 | $wind-beaufort-7: "\f0be"; 9 | $wind-beaufort-8: "\f0bf"; 10 | $wind-beaufort-9: "\f0c0"; 11 | $wind-beaufort-10: "\f0c1"; 12 | $wind-beaufort-11: "\f0c2"; 13 | $wind-beaufort-12: "\f0c3"; -------------------------------------------------------------------------------- /src/style/less/icons/font-awesome/less/larger.less: -------------------------------------------------------------------------------- 1 | // Icon Sizes 2 | // ------------------------- 3 | 4 | /* makes the font 33% larger relative to the icon container */ 5 | .@{fa-css-prefix}-lg { 6 | font-size: (4em / 3); 7 | line-height: (3em / 4); 8 | vertical-align: -15%; 9 | } 10 | .@{fa-css-prefix}-2x { font-size: 2em; } 11 | .@{fa-css-prefix}-3x { font-size: 3em; } 12 | .@{fa-css-prefix}-4x { font-size: 4em; } 13 | .@{fa-css-prefix}-5x { font-size: 5em; } 14 | -------------------------------------------------------------------------------- /src/style/icons/font-awesome/.gitignore: -------------------------------------------------------------------------------- 1 | *.pyc 2 | *.egg-info 3 | *.db 4 | *.db.old 5 | *.swp 6 | *.db-journal 7 | 8 | .coverage 9 | .DS_Store 10 | .installed.cfg 11 | _gh_pages/* 12 | 13 | .idea/* 14 | .svn/* 15 | src/website/static/* 16 | src/website/media/* 17 | 18 | bin 19 | cfcache 20 | develop-eggs 21 | dist 22 | downloads 23 | eggs 24 | parts 25 | tmp 26 | .sass-cache 27 | node_modules 28 | 29 | src/website/settingslocal.py 30 | stunnel.log 31 | 32 | .ruby-version 33 | -------------------------------------------------------------------------------- /src/style/icons/weather-icons/less/weather-icons-variables.less: -------------------------------------------------------------------------------- 1 | @import "icon-variables/variables-beaufort.less"; 2 | @import "icon-variables/variables-time.less"; 3 | @import "icon-variables/variables-moon.less"; 4 | @import "icon-variables/variables-direction.less"; 5 | @import "icon-variables/variables-day.less"; 6 | @import "icon-variables/variables-night.less"; 7 | @import "icon-variables/variables-neutral.less"; 8 | @import "icon-variables/variables-misc.less"; 9 | 10 | -------------------------------------------------------------------------------- /src/style/less/icons/font-awesome/scss/_larger.scss: -------------------------------------------------------------------------------- 1 | // Icon Sizes 2 | // ------------------------- 3 | 4 | /* makes the font 33% larger relative to the icon container */ 5 | .#{$fa-css-prefix}-lg { 6 | font-size: (4em / 3); 7 | line-height: (3em / 4); 8 | vertical-align: -15%; 9 | } 10 | .#{$fa-css-prefix}-2x { font-size: 2em; } 11 | .#{$fa-css-prefix}-3x { font-size: 3em; } 12 | .#{$fa-css-prefix}-4x { font-size: 4em; } 13 | .#{$fa-css-prefix}-5x { font-size: 5em; } 14 | -------------------------------------------------------------------------------- /src/style/less/icons/weather-icons/less/icon-variables/variables-beaufort.less: -------------------------------------------------------------------------------- 1 | @wind-beaufort-0: "\f0b7"; 2 | @wind-beaufort-1: "\f0b8"; 3 | @wind-beaufort-2: "\f0b9"; 4 | @wind-beaufort-3: "\f0ba"; 5 | @wind-beaufort-4: "\f0bb"; 6 | @wind-beaufort-5: "\f0bc"; 7 | @wind-beaufort-6: "\f0bd"; 8 | @wind-beaufort-7: "\f0be"; 9 | @wind-beaufort-8: "\f0bf"; 10 | @wind-beaufort-9: "\f0c0"; 11 | @wind-beaufort-10: "\f0c1"; 12 | @wind-beaufort-11: "\f0c2"; 13 | @wind-beaufort-12: "\f0c3"; -------------------------------------------------------------------------------- /src/style/less/icons/weather-icons/sass/icon-variables/variables-beaufort.scss: -------------------------------------------------------------------------------- 1 | $wind-beaufort-0: "\f0b7"; 2 | $wind-beaufort-1: "\f0b8"; 3 | $wind-beaufort-2: "\f0b9"; 4 | $wind-beaufort-3: "\f0ba"; 5 | $wind-beaufort-4: "\f0bb"; 6 | $wind-beaufort-5: "\f0bc"; 7 | $wind-beaufort-6: "\f0bd"; 8 | $wind-beaufort-7: "\f0be"; 9 | $wind-beaufort-8: "\f0bf"; 10 | $wind-beaufort-9: "\f0c0"; 11 | $wind-beaufort-10: "\f0c1"; 12 | $wind-beaufort-11: "\f0c2"; 13 | $wind-beaufort-12: "\f0c3"; -------------------------------------------------------------------------------- /src/style/less/icons/font-awesome/.gitignore: -------------------------------------------------------------------------------- 1 | *.pyc 2 | *.egg-info 3 | *.db 4 | *.db.old 5 | *.swp 6 | *.db-journal 7 | 8 | .coverage 9 | .DS_Store 10 | .installed.cfg 11 | _gh_pages/* 12 | 13 | .idea/* 14 | .svn/* 15 | src/website/static/* 16 | src/website/media/* 17 | 18 | bin 19 | cfcache 20 | develop-eggs 21 | dist 22 | downloads 23 | eggs 24 | parts 25 | tmp 26 | .sass-cache 27 | node_modules 28 | 29 | src/website/settingslocal.py 30 | stunnel.log 31 | 32 | .ruby-version 33 | -------------------------------------------------------------------------------- /src/style/less/icons/weather-icons/less/weather-icons-variables.less: -------------------------------------------------------------------------------- 1 | @import "icon-variables/variables-beaufort.less"; 2 | @import "icon-variables/variables-time.less"; 3 | @import "icon-variables/variables-moon.less"; 4 | @import "icon-variables/variables-direction.less"; 5 | @import "icon-variables/variables-day.less"; 6 | @import "icon-variables/variables-night.less"; 7 | @import "icon-variables/variables-neutral.less"; 8 | @import "icon-variables/variables-misc.less"; 9 | 10 | -------------------------------------------------------------------------------- /src/style/less/icons/weather-icons/sass/weather-icons-variables.scss: -------------------------------------------------------------------------------- 1 | @import 'icon-variables/variables-beaufort.scss'; 2 | @import 'icon-variables/variables-time.scss'; 3 | @import 'icon-variables/variables-moon.scss'; 4 | @import 'icon-variables/variables-direction.scss'; 5 | @import 'icon-variables/variables-day.scss'; 6 | @import 'icon-variables/variables-night.scss'; 7 | @import 'icon-variables/variables-neutral.scss'; 8 | @import 'icon-variables/variables-misc.scss'; 9 | 10 | -------------------------------------------------------------------------------- /src/style/icons/weather-icons/less/weather-icons-classes.less: -------------------------------------------------------------------------------- 1 | @import "icon-classes/classes-day.less"; 2 | @import "icon-classes/classes-night.less"; 3 | @import "icon-classes/classes-neutral.less"; 4 | @import "icon-classes/classes-misc.less"; 5 | @import "icon-classes/classes-moon.less"; 6 | @import "icon-classes/classes-moon-aliases.less"; 7 | @import "icon-classes/classes-time.less"; 8 | @import "icon-classes/classes-direction.less"; 9 | @import "icon-classes/classes-beaufort.less"; 10 | -------------------------------------------------------------------------------- /src/components/demo/normalizing/normalizePhone.js: -------------------------------------------------------------------------------- 1 | const normalizePhone = value => { 2 | if (!value) { 3 | return value 4 | } 5 | 6 | const onlyNums = value.replace(/[^\d]/g, '') 7 | if (onlyNums.length <= 3) { 8 | return onlyNums 9 | } 10 | if (onlyNums.length <= 7) { 11 | return `${onlyNums.slice(0, 3)}-${onlyNums.slice(3)}` 12 | } 13 | return `${onlyNums.slice(0, 3)}-${onlyNums.slice(3, 6)}-${onlyNums.slice(6, 10)}` 14 | } 15 | 16 | export default normalizePhone 17 | -------------------------------------------------------------------------------- /src/style/less/icons/weather-icons/less/weather-icons-classes.less: -------------------------------------------------------------------------------- 1 | @import "icon-classes/classes-day.less"; 2 | @import "icon-classes/classes-night.less"; 3 | @import "icon-classes/classes-neutral.less"; 4 | @import "icon-classes/classes-misc.less"; 5 | @import "icon-classes/classes-moon.less"; 6 | @import "icon-classes/classes-moon-aliases.less"; 7 | @import "icon-classes/classes-time.less"; 8 | @import "icon-classes/classes-direction.less"; 9 | @import "icon-classes/classes-beaufort.less"; 10 | -------------------------------------------------------------------------------- /src/style/less/icons/weather-icons/sass/weather-icons-classes.scss: -------------------------------------------------------------------------------- 1 | @import "icon-classes/classes-day.scss"; 2 | @import "icon-classes/classes-night.scss"; 3 | @import "icon-classes/classes-neutral.scss"; 4 | @import "icon-classes/classes-misc.scss"; 5 | @import "icon-classes/classes-moon.scss"; 6 | @import "icon-classes/classes-moon-aliases.scss"; 7 | @import "icon-classes/classes-time.scss"; 8 | @import "icon-classes/classes-direction.scss"; 9 | @import "icon-classes/classes-beaufort.scss"; 10 | -------------------------------------------------------------------------------- /src/style/icons/font-awesome/less/list.less: -------------------------------------------------------------------------------- 1 | // List Icons 2 | // ------------------------- 3 | 4 | .@{fa-css-prefix}-ul { 5 | padding-left: 0; 6 | margin-left: @fa-li-width; 7 | list-style-type: none; 8 | > li { position: relative; } 9 | } 10 | .@{fa-css-prefix}-li { 11 | position: absolute; 12 | left: -@fa-li-width; 13 | width: @fa-li-width; 14 | top: (2em / 14); 15 | text-align: center; 16 | &.@{fa-css-prefix}-lg { 17 | left: (-@fa-li-width + (4em / 14)); 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /src/style/icons/font-awesome/scss/_list.scss: -------------------------------------------------------------------------------- 1 | // List Icons 2 | // ------------------------- 3 | 4 | .#{$fa-css-prefix}-ul { 5 | padding-left: 0; 6 | margin-left: $fa-li-width; 7 | list-style-type: none; 8 | > li { position: relative; } 9 | } 10 | .#{$fa-css-prefix}-li { 11 | position: absolute; 12 | left: -$fa-li-width; 13 | width: $fa-li-width; 14 | top: (2em / 14); 15 | text-align: center; 16 | &.#{$fa-css-prefix}-lg { 17 | left: -$fa-li-width + (4em / 14); 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /src/style/less/icons/font-awesome/less/list.less: -------------------------------------------------------------------------------- 1 | // List Icons 2 | // ------------------------- 3 | 4 | .@{fa-css-prefix}-ul { 5 | padding-left: 0; 6 | margin-left: @fa-li-width; 7 | list-style-type: none; 8 | > li { position: relative; } 9 | } 10 | .@{fa-css-prefix}-li { 11 | position: absolute; 12 | left: -@fa-li-width; 13 | width: @fa-li-width; 14 | top: (2em / 14); 15 | text-align: center; 16 | &.@{fa-css-prefix}-lg { 17 | left: (-@fa-li-width + (4em / 14)); 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /src/style/less/icons/font-awesome/scss/_list.scss: -------------------------------------------------------------------------------- 1 | // List Icons 2 | // ------------------------- 3 | 4 | .#{$fa-css-prefix}-ul { 5 | padding-left: 0; 6 | margin-left: $fa-li-width; 7 | list-style-type: none; 8 | > li { position: relative; } 9 | } 10 | .#{$fa-css-prefix}-li { 11 | position: absolute; 12 | left: -$fa-li-width; 13 | width: $fa-li-width; 14 | top: (2em / 14); 15 | text-align: center; 16 | &.#{$fa-css-prefix}-lg { 17 | left: -$fa-li-width + (4em / 14); 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /src/components/common/content/projectContent/reducer.js: -------------------------------------------------------------------------------- 1 | import { LOADING_BLOCK, LOADING_NONE} from './actionTypes'; 2 | 3 | export default function (state={ 4 | isFetching:false 5 | },action) { 6 | switch(action.type) { 7 | case LOADING_BLOCK: 8 | return { 9 | ...state, 10 | isFetching:true 11 | }; 12 | case LOADING_NONE: 13 | return { 14 | ...state, 15 | isFetching:false, 16 | }; 17 | 18 | default: 19 | return state 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /src/style/icons/font-awesome/scss/font-awesome.scss: -------------------------------------------------------------------------------- 1 | /*! 2 | * Font Awesome 4.5.0 by @davegandy - http://fontawesome.io - @fontawesome 3 | * License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License) 4 | */ 5 | 6 | @import "variables"; 7 | @import "mixins"; 8 | @import "path"; 9 | @import "core"; 10 | @import "larger"; 11 | @import "fixed-width"; 12 | @import "list"; 13 | @import "bordered-pulled"; 14 | @import "animated"; 15 | @import "rotated-flipped"; 16 | @import "stacked"; 17 | @import "icons"; 18 | -------------------------------------------------------------------------------- /src/style/less/icons/font-awesome/scss/font-awesome.scss: -------------------------------------------------------------------------------- 1 | /*! 2 | * Font Awesome 4.5.0 by @davegandy - http://fontawesome.io - @fontawesome 3 | * License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License) 4 | */ 5 | 6 | @import "variables"; 7 | @import "mixins"; 8 | @import "path"; 9 | @import "core"; 10 | @import "larger"; 11 | @import "fixed-width"; 12 | @import "list"; 13 | @import "bordered-pulled"; 14 | @import "animated"; 15 | @import "rotated-flipped"; 16 | @import "stacked"; 17 | @import "icons"; 18 | -------------------------------------------------------------------------------- /src/plugins/images/tooltip/tooltip2.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | 7 | -------------------------------------------------------------------------------- /src/style/icons/font-awesome/less/core.less: -------------------------------------------------------------------------------- 1 | // Base Class Definition 2 | // ------------------------- 3 | 4 | .@{fa-css-prefix} { 5 | display: inline-block; 6 | font: normal normal normal @fa-font-size-base/@fa-line-height-base FontAwesome; // shortening font declaration 7 | font-size: inherit; // can't have font-size inherit on line above, so need to override 8 | text-rendering: auto; // optimizelegibility throws things off #1094 9 | -webkit-font-smoothing: antialiased; 10 | -moz-osx-font-smoothing: grayscale; 11 | 12 | } 13 | -------------------------------------------------------------------------------- /src/style/icons/weather-icons/less/icon-classes/classes-direction.less: -------------------------------------------------------------------------------- 1 | .wi-direction-up:before {content: @direction-up;} 2 | .wi-direction-up-right:before {content: @direction-up-right;} 3 | .wi-direction-right:before {content: @direction-right;} 4 | .wi-direction-down-right:before {content: @direction-down-right;} 5 | .wi-direction-down:before {content: @direction-down;} 6 | .wi-direction-down-left:before {content: @direction-down-left;} 7 | .wi-direction-left:before {content: @direction-left;} 8 | .wi-direction-up-left:before {content: @direction-up-left;} -------------------------------------------------------------------------------- /src/style/icons/weather-icons/sass/icon-classes/classes-direction.scss: -------------------------------------------------------------------------------- 1 | .wi-direction-up:before {content: $direction-up;} 2 | .wi-direction-up-right:before {content: $direction-up-right;} 3 | .wi-direction-right:before {content: $direction-right;} 4 | .wi-direction-down-right:before {content: $direction-down-right;} 5 | .wi-direction-down:before {content: $direction-down;} 6 | .wi-direction-down-left:before {content: $direction-down-left;} 7 | .wi-direction-left:before {content: $direction-left;} 8 | .wi-direction-up-left:before {content: $direction-up-left;} -------------------------------------------------------------------------------- /src/style/less/icons/font-awesome/less/core.less: -------------------------------------------------------------------------------- 1 | // Base Class Definition 2 | // ------------------------- 3 | 4 | .@{fa-css-prefix} { 5 | display: inline-block; 6 | font: normal normal normal @fa-font-size-base/@fa-line-height-base FontAwesome; // shortening font declaration 7 | font-size: inherit; // can't have font-size inherit on line above, so need to override 8 | text-rendering: auto; // optimizelegibility throws things off #1094 9 | -webkit-font-smoothing: antialiased; 10 | -moz-osx-font-smoothing: grayscale; 11 | 12 | } 13 | -------------------------------------------------------------------------------- /src/plugins/images/tooltip/tooltip3.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | 7 | -------------------------------------------------------------------------------- /src/style/icons/font-awesome/bower.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "font-awesome", 3 | "description": "Font Awesome", 4 | "version": "4.2.0", 5 | "keywords": [], 6 | "homepage": "http://fontawesome.io", 7 | "dependencies": {}, 8 | "devDependencies": {}, 9 | "license": ["OFL-1.1", "MIT", "CC-BY-3.0"], 10 | "main": [ 11 | "./css/font-awesome.css", 12 | "./fonts/*" 13 | ], 14 | "ignore": [ 15 | "*/.*", 16 | "*.json", 17 | "src", 18 | "*.yml", 19 | "Gemfile", 20 | "Gemfile.lock", 21 | "*.md" 22 | ] 23 | } 24 | -------------------------------------------------------------------------------- /src/style/icons/font-awesome/scss/_core.scss: -------------------------------------------------------------------------------- 1 | // Base Class Definition 2 | // ------------------------- 3 | 4 | .#{$fa-css-prefix} { 5 | display: inline-block; 6 | font: normal normal normal #{$fa-font-size-base}/#{$fa-line-height-base} FontAwesome; // shortening font declaration 7 | font-size: inherit; // can't have font-size inherit on line above, so need to override 8 | text-rendering: auto; // optimizelegibility throws things off #1094 9 | -webkit-font-smoothing: antialiased; 10 | -moz-osx-font-smoothing: grayscale; 11 | 12 | } 13 | -------------------------------------------------------------------------------- /src/style/less/icons/weather-icons/less/icon-classes/classes-direction.less: -------------------------------------------------------------------------------- 1 | .wi-direction-up:before {content: @direction-up;} 2 | .wi-direction-up-right:before {content: @direction-up-right;} 3 | .wi-direction-right:before {content: @direction-right;} 4 | .wi-direction-down-right:before {content: @direction-down-right;} 5 | .wi-direction-down:before {content: @direction-down;} 6 | .wi-direction-down-left:before {content: @direction-down-left;} 7 | .wi-direction-left:before {content: @direction-left;} 8 | .wi-direction-up-left:before {content: @direction-up-left;} -------------------------------------------------------------------------------- /src/style/less/icons/weather-icons/sass/icon-classes/classes-direction.scss: -------------------------------------------------------------------------------- 1 | .wi-direction-up:before {content: $direction-up;} 2 | .wi-direction-up-right:before {content: $direction-up-right;} 3 | .wi-direction-right:before {content: $direction-right;} 4 | .wi-direction-down-right:before {content: $direction-down-right;} 5 | .wi-direction-down:before {content: $direction-down;} 6 | .wi-direction-down-left:before {content: $direction-down-left;} 7 | .wi-direction-left:before {content: $direction-left;} 8 | .wi-direction-up-left:before {content: $direction-up-left;} -------------------------------------------------------------------------------- /src/style/less/icons/font-awesome/bower.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "font-awesome", 3 | "description": "Font Awesome", 4 | "version": "4.2.0", 5 | "keywords": [], 6 | "homepage": "http://fontawesome.io", 7 | "dependencies": {}, 8 | "devDependencies": {}, 9 | "license": ["OFL-1.1", "MIT", "CC-BY-3.0"], 10 | "main": [ 11 | "./css/font-awesome.css", 12 | "./fonts/*" 13 | ], 14 | "ignore": [ 15 | "*/.*", 16 | "*.json", 17 | "src", 18 | "*.yml", 19 | "Gemfile", 20 | "Gemfile.lock", 21 | "*.md" 22 | ] 23 | } 24 | -------------------------------------------------------------------------------- /src/style/less/icons/font-awesome/scss/_core.scss: -------------------------------------------------------------------------------- 1 | // Base Class Definition 2 | // ------------------------- 3 | 4 | .#{$fa-css-prefix} { 5 | display: inline-block; 6 | font: normal normal normal #{$fa-font-size-base}/#{$fa-line-height-base} FontAwesome; // shortening font declaration 7 | font-size: inherit; // can't have font-size inherit on line above, so need to override 8 | text-rendering: auto; // optimizelegibility throws things off #1094 9 | -webkit-font-smoothing: antialiased; 10 | -moz-osx-font-smoothing: grayscale; 11 | 12 | } 13 | -------------------------------------------------------------------------------- /src/plugins/images/tooltip/tooltip1.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /src/style/icons/weather-icons/less/icon-classes/classes-time.less: -------------------------------------------------------------------------------- 1 | .wi-time-1:before {content: @time-1;} 2 | .wi-time-2:before {content: @time-2;} 3 | .wi-time-3:before {content: @time-3;} 4 | .wi-time-4:before {content: @time-4;} 5 | .wi-time-5:before {content: @time-5;} 6 | .wi-time-6:before {content: @time-6;} 7 | .wi-time-7:before {content: @time-7;} 8 | .wi-time-8:before {content: @time-8;} 9 | .wi-time-9:before {content: @time-9;} 10 | .wi-time-10:before {content: @time-10;} 11 | .wi-time-11:before {content: @time-11;} 12 | .wi-time-12:before {content: @time-12;} -------------------------------------------------------------------------------- /src/style/icons/weather-icons/sass/icon-classes/classes-time.scss: -------------------------------------------------------------------------------- 1 | .wi-time-1:before {content: $time-1;} 2 | .wi-time-2:before {content: $time-2;} 3 | .wi-time-3:before {content: $time-3;} 4 | .wi-time-4:before {content: $time-4;} 5 | .wi-time-5:before {content: $time-5;} 6 | .wi-time-6:before {content: $time-6;} 7 | .wi-time-7:before {content: $time-7;} 8 | .wi-time-8:before {content: $time-8;} 9 | .wi-time-9:before {content: $time-9;} 10 | .wi-time-10:before {content: $time-10;} 11 | .wi-time-11:before {content: $time-11;} 12 | .wi-time-12:before {content: $time-12;} -------------------------------------------------------------------------------- /src/components/demo/initializeFromState/account.js: -------------------------------------------------------------------------------- 1 | // Quack! This is a duck. https://github.com/erikras/ducks-modular-redux 2 | const LOAD = 'redux-form-examples/account/LOAD' 3 | 4 | const reducer = (state = {}, action) => { 5 | switch (action.type) { 6 | case LOAD: 7 | return { 8 | data: action.data 9 | } 10 | default: 11 | return state 12 | } 13 | } 14 | 15 | /** 16 | * Simulates data loaded into this reducer from somewhere 17 | */ 18 | export const load = data => ({ type: LOAD, data }) 19 | 20 | export default reducer 21 | -------------------------------------------------------------------------------- /src/style/less/icons/weather-icons/less/icon-classes/classes-time.less: -------------------------------------------------------------------------------- 1 | .wi-time-1:before {content: @time-1;} 2 | .wi-time-2:before {content: @time-2;} 3 | .wi-time-3:before {content: @time-3;} 4 | .wi-time-4:before {content: @time-4;} 5 | .wi-time-5:before {content: @time-5;} 6 | .wi-time-6:before {content: @time-6;} 7 | .wi-time-7:before {content: @time-7;} 8 | .wi-time-8:before {content: @time-8;} 9 | .wi-time-9:before {content: @time-9;} 10 | .wi-time-10:before {content: @time-10;} 11 | .wi-time-11:before {content: @time-11;} 12 | .wi-time-12:before {content: @time-12;} -------------------------------------------------------------------------------- /src/style/less/icons/weather-icons/sass/icon-classes/classes-time.scss: -------------------------------------------------------------------------------- 1 | .wi-time-1:before {content: $time-1;} 2 | .wi-time-2:before {content: $time-2;} 3 | .wi-time-3:before {content: $time-3;} 4 | .wi-time-4:before {content: $time-4;} 5 | .wi-time-5:before {content: $time-5;} 6 | .wi-time-6:before {content: $time-6;} 7 | .wi-time-7:before {content: $time-7;} 8 | .wi-time-8:before {content: $time-8;} 9 | .wi-time-9:before {content: $time-9;} 10 | .wi-time-10:before {content: $time-10;} 11 | .wi-time-11:before {content: $time-11;} 12 | .wi-time-12:before {content: $time-12;} -------------------------------------------------------------------------------- /src/plugins/images/tooltip/shape3.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /src/style/icons/font-awesome/less/font-awesome.less: -------------------------------------------------------------------------------- 1 | /*! 2 | * Font Awesome 4.5.0 by @davegandy - http://fontawesome.io - @fontawesome 3 | * License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License) 4 | */ 5 | 6 | @import "variables.less"; 7 | @import "mixins.less"; 8 | @import "path.less"; 9 | @import "core.less"; 10 | @import "larger.less"; 11 | @import "fixed-width.less"; 12 | @import "list.less"; 13 | @import "bordered-pulled.less"; 14 | @import "animated.less"; 15 | @import "rotated-flipped.less"; 16 | @import "stacked.less"; 17 | @import "icons.less"; 18 | -------------------------------------------------------------------------------- /src/style/less/icons/font-awesome/less/font-awesome.less: -------------------------------------------------------------------------------- 1 | /*! 2 | * Font Awesome 4.5.0 by @davegandy - http://fontawesome.io - @fontawesome 3 | * License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License) 4 | */ 5 | 6 | @import "variables.less"; 7 | @import "mixins.less"; 8 | @import "path.less"; 9 | @import "core.less"; 10 | @import "larger.less"; 11 | @import "fixed-width.less"; 12 | @import "list.less"; 13 | @import "bordered-pulled.less"; 14 | @import "animated.less"; 15 | @import "rotated-flipped.less"; 16 | @import "stacked.less"; 17 | @import "icons.less"; 18 | -------------------------------------------------------------------------------- /.editorconfig: -------------------------------------------------------------------------------- 1 | # EditorConfig helps developers define and maintain consistent 2 | # coding styles between different editors and IDEs 3 | # editorconfig.org 4 | 5 | root = true 6 | 7 | 8 | [*] 9 | 10 | # change these settings to your own preference 11 | indent_style = space 12 | indent_size = 2 13 | 14 | # we recommend you to keep these unchanged 15 | end_of_line = lf 16 | charset = utf-8 17 | trim_trailing_whitespace = true 18 | insert_final_newline = true 19 | 20 | [*.md] 21 | trim_trailing_whitespace = false 22 | 23 | [{package,bower}.json] 24 | indent_style = space 25 | indent_size = 2 26 | -------------------------------------------------------------------------------- /src/style/icons/font-awesome/less/stacked.less: -------------------------------------------------------------------------------- 1 | // Stacked Icons 2 | // ------------------------- 3 | 4 | .@{fa-css-prefix}-stack { 5 | position: relative; 6 | display: inline-block; 7 | width: 2em; 8 | height: 2em; 9 | line-height: 2em; 10 | vertical-align: middle; 11 | } 12 | .@{fa-css-prefix}-stack-1x, .@{fa-css-prefix}-stack-2x { 13 | position: absolute; 14 | left: 0; 15 | width: 100%; 16 | text-align: center; 17 | } 18 | .@{fa-css-prefix}-stack-1x { line-height: inherit; } 19 | .@{fa-css-prefix}-stack-2x { font-size: 2em; } 20 | .@{fa-css-prefix}-inverse { color: @fa-inverse; } 21 | -------------------------------------------------------------------------------- /src/style/less/icons/font-awesome/less/stacked.less: -------------------------------------------------------------------------------- 1 | // Stacked Icons 2 | // ------------------------- 3 | 4 | .@{fa-css-prefix}-stack { 5 | position: relative; 6 | display: inline-block; 7 | width: 2em; 8 | height: 2em; 9 | line-height: 2em; 10 | vertical-align: middle; 11 | } 12 | .@{fa-css-prefix}-stack-1x, .@{fa-css-prefix}-stack-2x { 13 | position: absolute; 14 | left: 0; 15 | width: 100%; 16 | text-align: center; 17 | } 18 | .@{fa-css-prefix}-stack-1x { line-height: inherit; } 19 | .@{fa-css-prefix}-stack-2x { font-size: 2em; } 20 | .@{fa-css-prefix}-inverse { color: @fa-inverse; } 21 | -------------------------------------------------------------------------------- /src/style/icons/font-awesome/scss/_stacked.scss: -------------------------------------------------------------------------------- 1 | // Stacked Icons 2 | // ------------------------- 3 | 4 | .#{$fa-css-prefix}-stack { 5 | position: relative; 6 | display: inline-block; 7 | width: 2em; 8 | height: 2em; 9 | line-height: 2em; 10 | vertical-align: middle; 11 | } 12 | .#{$fa-css-prefix}-stack-1x, .#{$fa-css-prefix}-stack-2x { 13 | position: absolute; 14 | left: 0; 15 | width: 100%; 16 | text-align: center; 17 | } 18 | .#{$fa-css-prefix}-stack-1x { line-height: inherit; } 19 | .#{$fa-css-prefix}-stack-2x { font-size: 2em; } 20 | .#{$fa-css-prefix}-inverse { color: $fa-inverse; } 21 | -------------------------------------------------------------------------------- /src/style/less/icons/font-awesome/scss/_stacked.scss: -------------------------------------------------------------------------------- 1 | // Stacked Icons 2 | // ------------------------- 3 | 4 | .#{$fa-css-prefix}-stack { 5 | position: relative; 6 | display: inline-block; 7 | width: 2em; 8 | height: 2em; 9 | line-height: 2em; 10 | vertical-align: middle; 11 | } 12 | .#{$fa-css-prefix}-stack-1x, .#{$fa-css-prefix}-stack-2x { 13 | position: absolute; 14 | left: 0; 15 | width: 100%; 16 | text-align: center; 17 | } 18 | .#{$fa-css-prefix}-stack-1x { line-height: inherit; } 19 | .#{$fa-css-prefix}-stack-2x { font-size: 2em; } 20 | .#{$fa-css-prefix}-inverse { color: $fa-inverse; } 21 | -------------------------------------------------------------------------------- /src/router/Routes.js: -------------------------------------------------------------------------------- 1 | import React from 'react'; 2 | import { Provider } from 'react-redux'; 3 | import { ConnectedRouter } from 'react-router-redux'; 4 | 5 | import configureStore from '../store/configureStore'; 6 | import { history } from '../router/history'; 7 | import { MainRouter } from './MainRouter'; 8 | 9 | 10 | const store = configureStore(); 11 | 12 | const Routes = () => ( 13 | 14 |
15 | 16 | 17 | 18 |
19 |
20 | ); 21 | 22 | export default Routes; 23 | -------------------------------------------------------------------------------- /src/style/node/morris.css: -------------------------------------------------------------------------------- 1 | .morris-hover { 2 | position:absolute; 3 | z-index:1; 4 | } 5 | 6 | .morris-hover.morris-default-style .morris-hover-row-label { 7 | font-weight:bold; 8 | margin:0.25em 0 9 | } 10 | .morris-hover.morris-default-style .morris-hover-point { 11 | white-space:nowrap; 12 | margin:0.1em 0 13 | } 14 | .morris-hover.morris-default-style { 15 | border-radius: 2px; 16 | padding: 10px 12px; 17 | color: #666; 18 | background:rgba(0, 0, 0, 0.7); 19 | border: none; 20 | color: #fff!important ; 21 | } 22 | .morris-hover-point { 23 | color: rgba(257, 257, 257, 0.8)!important ; 24 | } 25 | -------------------------------------------------------------------------------- /src/style/icons/weather-icons/less/icon-variables/variables-misc.less: -------------------------------------------------------------------------------- 1 | @alien: "\f075"; 2 | @celsius: "\f03c"; 3 | @fahrenheit: "\f045"; 4 | @degrees: "\f042"; 5 | @thermometer: "\f055"; 6 | @thermometer-exterior: "\f053"; 7 | @thermometer-internal: "\f054"; 8 | @cloud-down: "\f03d"; 9 | @cloud-up: "\f040"; 10 | @cloud-refresh: "\f03e"; 11 | @horizon: "\f047"; 12 | @horizon-alt: "\f046"; 13 | @sunrise: "\f051"; 14 | @sunset: "\f052"; 15 | @moonrise: "\f0c9"; 16 | @moonset: "\f0ca"; 17 | @refresh: "\f04c"; 18 | @refresh-alt: "\f04b"; 19 | @umbrella: "\f084"; 20 | @barometer: "\f079"; 21 | @humidity: "\f07a"; 22 | @na: "\f07b"; 23 | @train: "\f0cb"; -------------------------------------------------------------------------------- /src/style/icons/weather-icons/sass/icon-variables/variables-misc.scss: -------------------------------------------------------------------------------- 1 | $alien: "\f075"; 2 | $celsius: "\f03c"; 3 | $fahrenheit: "\f045"; 4 | $degrees: "\f042"; 5 | $thermometer: "\f055"; 6 | $thermometer-exterior: "\f053"; 7 | $thermometer-internal: "\f054"; 8 | $cloud-down: "\f03d"; 9 | $cloud-up: "\f040"; 10 | $cloud-refresh: "\f03e"; 11 | $horizon: "\f047"; 12 | $horizon-alt: "\f046"; 13 | $sunrise: "\f051"; 14 | $sunset: "\f052"; 15 | $moonrise: "\f0c9"; 16 | $moonset: "\f0ca"; 17 | $refresh: "\f04c"; 18 | $refresh-alt: "\f04b"; 19 | $umbrella: "\f084"; 20 | $barometer: "\f079"; 21 | $humidity: "\f07a"; 22 | $na: "\f07b"; 23 | $train: "\f0cb"; -------------------------------------------------------------------------------- /src/style/less/icons/weather-icons/less/icon-variables/variables-misc.less: -------------------------------------------------------------------------------- 1 | @alien: "\f075"; 2 | @celsius: "\f03c"; 3 | @fahrenheit: "\f045"; 4 | @degrees: "\f042"; 5 | @thermometer: "\f055"; 6 | @thermometer-exterior: "\f053"; 7 | @thermometer-internal: "\f054"; 8 | @cloud-down: "\f03d"; 9 | @cloud-up: "\f040"; 10 | @cloud-refresh: "\f03e"; 11 | @horizon: "\f047"; 12 | @horizon-alt: "\f046"; 13 | @sunrise: "\f051"; 14 | @sunset: "\f052"; 15 | @moonrise: "\f0c9"; 16 | @moonset: "\f0ca"; 17 | @refresh: "\f04c"; 18 | @refresh-alt: "\f04b"; 19 | @umbrella: "\f084"; 20 | @barometer: "\f079"; 21 | @humidity: "\f07a"; 22 | @na: "\f07b"; 23 | @train: "\f0cb"; -------------------------------------------------------------------------------- /src/style/less/icons/weather-icons/sass/icon-variables/variables-misc.scss: -------------------------------------------------------------------------------- 1 | $alien: "\f075"; 2 | $celsius: "\f03c"; 3 | $fahrenheit: "\f045"; 4 | $degrees: "\f042"; 5 | $thermometer: "\f055"; 6 | $thermometer-exterior: "\f053"; 7 | $thermometer-internal: "\f054"; 8 | $cloud-down: "\f03d"; 9 | $cloud-up: "\f040"; 10 | $cloud-refresh: "\f03e"; 11 | $horizon: "\f047"; 12 | $horizon-alt: "\f046"; 13 | $sunrise: "\f051"; 14 | $sunset: "\f052"; 15 | $moonrise: "\f0c9"; 16 | $moonset: "\f0ca"; 17 | $refresh: "\f04c"; 18 | $refresh-alt: "\f04b"; 19 | $umbrella: "\f084"; 20 | $barometer: "\f079"; 21 | $humidity: "\f07a"; 22 | $na: "\f07b"; 23 | $train: "\f0cb"; -------------------------------------------------------------------------------- /src/style/icons/font-awesome/.npmignore: -------------------------------------------------------------------------------- 1 | *.pyc 2 | *.egg-info 3 | *.db 4 | *.db.old 5 | *.swp 6 | *.db-journal 7 | 8 | .coverage 9 | .DS_Store 10 | .installed.cfg 11 | _gh_pages/* 12 | 13 | .idea/* 14 | .svn/* 15 | src/website/static/* 16 | src/website/media/* 17 | 18 | bin 19 | cfcache 20 | develop-eggs 21 | dist 22 | downloads 23 | eggs 24 | parts 25 | tmp 26 | .sass-cache 27 | node_modules 28 | 29 | src/website/settingslocal.py 30 | stunnel.log 31 | 32 | .ruby-version 33 | 34 | # don't need these in the npm package. 35 | src/ 36 | _config.yml 37 | bower.json 38 | component.json 39 | composer.json 40 | CONTRIBUTING.md 41 | Gemfile 42 | Gemfile.lock 43 | -------------------------------------------------------------------------------- /src/components/demo/remoteSubmit/RemoteSubmitButton.js: -------------------------------------------------------------------------------- 1 | import React from 'react' 2 | import { connect } from 'react-redux' 3 | import { submit } from 'redux-form' 4 | 5 | const style = { 6 | padding: '10px 20px', 7 | width: 140, 8 | display: 'block', 9 | margin: '20px auto', 10 | fontSize: '16px' 11 | } 12 | 13 | const RemoteSubmitButton = ({ dispatch }) => ( 14 | 21 | ) 22 | // ^^^^^^^^^^^^ name of the form 23 | 24 | export default connect()(RemoteSubmitButton) 25 | -------------------------------------------------------------------------------- /src/components/demo/wizard/validate.js: -------------------------------------------------------------------------------- 1 | const validate = values => { 2 | const errors = {} 3 | if (!values.firstName) { 4 | errors.firstName = 'Required' 5 | } 6 | if (!values.lastName) { 7 | errors.lastName = 'Required' 8 | } 9 | if (!values.email) { 10 | errors.email = 'Required' 11 | } else if (!/^[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,4}$/i.test(values.email)) { 12 | errors.email = 'Invalid email address' 13 | } 14 | if (!values.sex) { 15 | errors.sex = 'Required' 16 | } 17 | if (!values.favoriteColor) { 18 | errors.favoriteColor = 'Required' 19 | } 20 | return errors 21 | } 22 | 23 | export default validate 24 | -------------------------------------------------------------------------------- /src/style/less/icons/font-awesome/.npmignore: -------------------------------------------------------------------------------- 1 | *.pyc 2 | *.egg-info 3 | *.db 4 | *.db.old 5 | *.swp 6 | *.db-journal 7 | 8 | .coverage 9 | .DS_Store 10 | .installed.cfg 11 | _gh_pages/* 12 | 13 | .idea/* 14 | .svn/* 15 | src/website/static/* 16 | src/website/media/* 17 | 18 | bin 19 | cfcache 20 | develop-eggs 21 | dist 22 | downloads 23 | eggs 24 | parts 25 | tmp 26 | .sass-cache 27 | node_modules 28 | 29 | src/website/settingslocal.py 30 | stunnel.log 31 | 32 | .ruby-version 33 | 34 | # don't need these in the npm package. 35 | src/ 36 | _config.yml 37 | bower.json 38 | component.json 39 | composer.json 40 | CONTRIBUTING.md 41 | Gemfile 42 | Gemfile.lock 43 | -------------------------------------------------------------------------------- /src/components/utils/validation/textareaField.js: -------------------------------------------------------------------------------- 1 | import React from 'react'; 2 | 3 | const textareaField = ({ 4 | input, 5 | label, 6 | type, 7 | cols, 8 | rows, 9 | meta: { touched, error, warning } 10 | }) => ( 11 |
12 | 13 | 14 | {touched && 15 | ((error &&
{error}
) || 16 | (warning &&
{warning}
))} 17 |
18 | ) 19 | 20 | export default textareaField; 21 | -------------------------------------------------------------------------------- /src/style/icons/weather-icons/less/icon-variables/variables-wind-names.less: -------------------------------------------------------------------------------- 1 | @n: "\f0b1"; 2 | @nne: "\f0b1"; 3 | @ne: "\f0b1"; 4 | @ene: "\f0b1"; 5 | @e: "\f0b1"; 6 | @ese: "\f0b1"; 7 | @se: "\f0b1"; 8 | @sse: "\f0b1"; 9 | @s: "\f0b1"; 10 | @ssw: "\f0b1"; 11 | @sw: "\f0b1"; 12 | @wsw: "\f0b1"; 13 | @w: "\f0b1"; 14 | @wnw: "\f0b1"; 15 | @nw: "\f0b1"; 16 | @nnw: "\f0b1"; 17 | @n: "\f0b1"; 18 | @nne: "\f0b1"; 19 | @ne: "\f0b1"; 20 | @ene: "\f0b1"; 21 | @e: "\f0b1"; 22 | @ese: "\f0b1"; 23 | @se: "\f0b1"; 24 | @sse: "\f0b1"; 25 | @s: "\f0b1"; 26 | @ssw: "\f0b1"; 27 | @sw: "\f0b1"; 28 | @wsw: "\f0b1"; 29 | @w: "\f0b1"; 30 | @wnw: "\f0b1"; 31 | @nw: "\f0b1"; 32 | @nnw: "\f0b1"; -------------------------------------------------------------------------------- /src/style/icons/weather-icons/sass/icon-variables/variables-wind-names.scss: -------------------------------------------------------------------------------- 1 | $n: "\f0b1"; 2 | $nne: "\f0b1"; 3 | $ne: "\f0b1"; 4 | $ene: "\f0b1"; 5 | $e: "\f0b1"; 6 | $ese: "\f0b1"; 7 | $se: "\f0b1"; 8 | $sse: "\f0b1"; 9 | $s: "\f0b1"; 10 | $ssw: "\f0b1"; 11 | $sw: "\f0b1"; 12 | $wsw: "\f0b1"; 13 | $w: "\f0b1"; 14 | $wnw: "\f0b1"; 15 | $nw: "\f0b1"; 16 | $nnw: "\f0b1"; 17 | $n: "\f0b1"; 18 | $nne: "\f0b1"; 19 | $ne: "\f0b1"; 20 | $ene: "\f0b1"; 21 | $e: "\f0b1"; 22 | $ese: "\f0b1"; 23 | $se: "\f0b1"; 24 | $sse: "\f0b1"; 25 | $s: "\f0b1"; 26 | $ssw: "\f0b1"; 27 | $sw: "\f0b1"; 28 | $wsw: "\f0b1"; 29 | $w: "\f0b1"; 30 | $wnw: "\f0b1"; 31 | $nw: "\f0b1"; 32 | $nnw: "\f0b1"; -------------------------------------------------------------------------------- /src/style/less/icons/weather-icons/less/icon-variables/variables-wind-names.less: -------------------------------------------------------------------------------- 1 | @n: "\f0b1"; 2 | @nne: "\f0b1"; 3 | @ne: "\f0b1"; 4 | @ene: "\f0b1"; 5 | @e: "\f0b1"; 6 | @ese: "\f0b1"; 7 | @se: "\f0b1"; 8 | @sse: "\f0b1"; 9 | @s: "\f0b1"; 10 | @ssw: "\f0b1"; 11 | @sw: "\f0b1"; 12 | @wsw: "\f0b1"; 13 | @w: "\f0b1"; 14 | @wnw: "\f0b1"; 15 | @nw: "\f0b1"; 16 | @nnw: "\f0b1"; 17 | @n: "\f0b1"; 18 | @nne: "\f0b1"; 19 | @ne: "\f0b1"; 20 | @ene: "\f0b1"; 21 | @e: "\f0b1"; 22 | @ese: "\f0b1"; 23 | @se: "\f0b1"; 24 | @sse: "\f0b1"; 25 | @s: "\f0b1"; 26 | @ssw: "\f0b1"; 27 | @sw: "\f0b1"; 28 | @wsw: "\f0b1"; 29 | @w: "\f0b1"; 30 | @wnw: "\f0b1"; 31 | @nw: "\f0b1"; 32 | @nnw: "\f0b1"; -------------------------------------------------------------------------------- /src/style/less/icons/weather-icons/sass/icon-variables/variables-wind-names.scss: -------------------------------------------------------------------------------- 1 | $n: "\f0b1"; 2 | $nne: "\f0b1"; 3 | $ne: "\f0b1"; 4 | $ene: "\f0b1"; 5 | $e: "\f0b1"; 6 | $ese: "\f0b1"; 7 | $se: "\f0b1"; 8 | $sse: "\f0b1"; 9 | $s: "\f0b1"; 10 | $ssw: "\f0b1"; 11 | $sw: "\f0b1"; 12 | $wsw: "\f0b1"; 13 | $w: "\f0b1"; 14 | $wnw: "\f0b1"; 15 | $nw: "\f0b1"; 16 | $nnw: "\f0b1"; 17 | $n: "\f0b1"; 18 | $nne: "\f0b1"; 19 | $ne: "\f0b1"; 20 | $ene: "\f0b1"; 21 | $e: "\f0b1"; 22 | $ese: "\f0b1"; 23 | $se: "\f0b1"; 24 | $sse: "\f0b1"; 25 | $s: "\f0b1"; 26 | $ssw: "\f0b1"; 27 | $sw: "\f0b1"; 28 | $wsw: "\f0b1"; 29 | $w: "\f0b1"; 30 | $wnw: "\f0b1"; 31 | $nw: "\f0b1"; 32 | $nnw: "\f0b1"; -------------------------------------------------------------------------------- /config/polyfills.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | if (typeof Promise === 'undefined') { 4 | // Rejection tracking prevents a common issue where React gets into an 5 | // inconsistent state due to an error, but it gets swallowed by a Promise, 6 | // and the user has no idea what causes React's erratic future behavior. 7 | require('promise/lib/rejection-tracking').enable(); 8 | window.Promise = require('promise/lib/es6-extensions.js'); 9 | } 10 | 11 | // fetch() polyfill for making API calls. 12 | require('whatwg-fetch'); 13 | 14 | // Object.assign() is commonly used with React. 15 | // It will use the native implementation if it's present and isn't buggy. 16 | Object.assign = require('object-assign'); 17 | -------------------------------------------------------------------------------- /src/style/icons/font-awesome/less/bordered-pulled.less: -------------------------------------------------------------------------------- 1 | // Bordered & Pulled 2 | // ------------------------- 3 | 4 | .@{fa-css-prefix}-border { 5 | padding: .2em .25em .15em; 6 | border: solid .08em @fa-border-color; 7 | border-radius: .1em; 8 | } 9 | 10 | .@{fa-css-prefix}-pull-left { float: left; } 11 | .@{fa-css-prefix}-pull-right { float: right; } 12 | 13 | .@{fa-css-prefix} { 14 | &.@{fa-css-prefix}-pull-left { margin-right: .3em; } 15 | &.@{fa-css-prefix}-pull-right { margin-left: .3em; } 16 | } 17 | 18 | /* Deprecated as of 4.4.0 */ 19 | .pull-right { float: right; } 20 | .pull-left { float: left; } 21 | 22 | .@{fa-css-prefix} { 23 | &.pull-left { margin-right: .3em; } 24 | &.pull-right { margin-left: .3em; } 25 | } 26 | -------------------------------------------------------------------------------- /src/style/icons/font-awesome/scss/_bordered-pulled.scss: -------------------------------------------------------------------------------- 1 | // Bordered & Pulled 2 | // ------------------------- 3 | 4 | .#{$fa-css-prefix}-border { 5 | padding: .2em .25em .15em; 6 | border: solid .08em $fa-border-color; 7 | border-radius: .1em; 8 | } 9 | 10 | .#{$fa-css-prefix}-pull-left { float: left; } 11 | .#{$fa-css-prefix}-pull-right { float: right; } 12 | 13 | .#{$fa-css-prefix} { 14 | &.#{$fa-css-prefix}-pull-left { margin-right: .3em; } 15 | &.#{$fa-css-prefix}-pull-right { margin-left: .3em; } 16 | } 17 | 18 | /* Deprecated as of 4.4.0 */ 19 | .pull-right { float: right; } 20 | .pull-left { float: left; } 21 | 22 | .#{$fa-css-prefix} { 23 | &.pull-left { margin-right: .3em; } 24 | &.pull-right { margin-left: .3em; } 25 | } 26 | -------------------------------------------------------------------------------- /src/style/less/icons/font-awesome/less/bordered-pulled.less: -------------------------------------------------------------------------------- 1 | // Bordered & Pulled 2 | // ------------------------- 3 | 4 | .@{fa-css-prefix}-border { 5 | padding: .2em .25em .15em; 6 | border: solid .08em @fa-border-color; 7 | border-radius: .1em; 8 | } 9 | 10 | .@{fa-css-prefix}-pull-left { float: left; } 11 | .@{fa-css-prefix}-pull-right { float: right; } 12 | 13 | .@{fa-css-prefix} { 14 | &.@{fa-css-prefix}-pull-left { margin-right: .3em; } 15 | &.@{fa-css-prefix}-pull-right { margin-left: .3em; } 16 | } 17 | 18 | /* Deprecated as of 4.4.0 */ 19 | .pull-right { float: right; } 20 | .pull-left { float: left; } 21 | 22 | .@{fa-css-prefix} { 23 | &.pull-left { margin-right: .3em; } 24 | &.pull-right { margin-left: .3em; } 25 | } 26 | -------------------------------------------------------------------------------- /src/style/icons/font-awesome/less/rotated-flipped.less: -------------------------------------------------------------------------------- 1 | // Rotated & Flipped Icons 2 | // ------------------------- 3 | 4 | .@{fa-css-prefix}-rotate-90 { .fa-icon-rotate(90deg, 1); } 5 | .@{fa-css-prefix}-rotate-180 { .fa-icon-rotate(180deg, 2); } 6 | .@{fa-css-prefix}-rotate-270 { .fa-icon-rotate(270deg, 3); } 7 | 8 | .@{fa-css-prefix}-flip-horizontal { .fa-icon-flip(-1, 1, 0); } 9 | .@{fa-css-prefix}-flip-vertical { .fa-icon-flip(1, -1, 2); } 10 | 11 | // Hook for IE8-9 12 | // ------------------------- 13 | 14 | :root .@{fa-css-prefix}-rotate-90, 15 | :root .@{fa-css-prefix}-rotate-180, 16 | :root .@{fa-css-prefix}-rotate-270, 17 | :root .@{fa-css-prefix}-flip-horizontal, 18 | :root .@{fa-css-prefix}-flip-vertical { 19 | filter: none; 20 | } 21 | -------------------------------------------------------------------------------- /src/style/icons/font-awesome/less/spinning.less: -------------------------------------------------------------------------------- 1 | // Spinning Icons 2 | // -------------------------- 3 | 4 | .@{fa-css-prefix}-spin { 5 | -webkit-animation: fa-spin 2s infinite linear; 6 | animation: fa-spin 2s infinite linear; 7 | } 8 | 9 | @-webkit-keyframes fa-spin { 10 | 0% { 11 | -webkit-transform: rotate(0deg); 12 | transform: rotate(0deg); 13 | } 14 | 100% { 15 | -webkit-transform: rotate(359deg); 16 | transform: rotate(359deg); 17 | } 18 | } 19 | 20 | @keyframes fa-spin { 21 | 0% { 22 | -webkit-transform: rotate(0deg); 23 | transform: rotate(0deg); 24 | } 25 | 100% { 26 | -webkit-transform: rotate(359deg); 27 | transform: rotate(359deg); 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /src/style/icons/font-awesome/scss/_spinning.scss: -------------------------------------------------------------------------------- 1 | // Spinning Icons 2 | // -------------------------- 3 | 4 | .#{$fa-css-prefix}-spin { 5 | -webkit-animation: fa-spin 2s infinite linear; 6 | animation: fa-spin 2s infinite linear; 7 | } 8 | 9 | @-webkit-keyframes fa-spin { 10 | 0% { 11 | -webkit-transform: rotate(0deg); 12 | transform: rotate(0deg); 13 | } 14 | 100% { 15 | -webkit-transform: rotate(359deg); 16 | transform: rotate(359deg); 17 | } 18 | } 19 | 20 | @keyframes fa-spin { 21 | 0% { 22 | -webkit-transform: rotate(0deg); 23 | transform: rotate(0deg); 24 | } 25 | 100% { 26 | -webkit-transform: rotate(359deg); 27 | transform: rotate(359deg); 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /src/style/less/icons/font-awesome/scss/_bordered-pulled.scss: -------------------------------------------------------------------------------- 1 | // Bordered & Pulled 2 | // ------------------------- 3 | 4 | .#{$fa-css-prefix}-border { 5 | padding: .2em .25em .15em; 6 | border: solid .08em $fa-border-color; 7 | border-radius: .1em; 8 | } 9 | 10 | .#{$fa-css-prefix}-pull-left { float: left; } 11 | .#{$fa-css-prefix}-pull-right { float: right; } 12 | 13 | .#{$fa-css-prefix} { 14 | &.#{$fa-css-prefix}-pull-left { margin-right: .3em; } 15 | &.#{$fa-css-prefix}-pull-right { margin-left: .3em; } 16 | } 17 | 18 | /* Deprecated as of 4.4.0 */ 19 | .pull-right { float: right; } 20 | .pull-left { float: left; } 21 | 22 | .#{$fa-css-prefix} { 23 | &.pull-left { margin-right: .3em; } 24 | &.pull-right { margin-left: .3em; } 25 | } 26 | -------------------------------------------------------------------------------- /src/style/less/icons/font-awesome/less/rotated-flipped.less: -------------------------------------------------------------------------------- 1 | // Rotated & Flipped Icons 2 | // ------------------------- 3 | 4 | .@{fa-css-prefix}-rotate-90 { .fa-icon-rotate(90deg, 1); } 5 | .@{fa-css-prefix}-rotate-180 { .fa-icon-rotate(180deg, 2); } 6 | .@{fa-css-prefix}-rotate-270 { .fa-icon-rotate(270deg, 3); } 7 | 8 | .@{fa-css-prefix}-flip-horizontal { .fa-icon-flip(-1, 1, 0); } 9 | .@{fa-css-prefix}-flip-vertical { .fa-icon-flip(1, -1, 2); } 10 | 11 | // Hook for IE8-9 12 | // ------------------------- 13 | 14 | :root .@{fa-css-prefix}-rotate-90, 15 | :root .@{fa-css-prefix}-rotate-180, 16 | :root .@{fa-css-prefix}-rotate-270, 17 | :root .@{fa-css-prefix}-flip-horizontal, 18 | :root .@{fa-css-prefix}-flip-vertical { 19 | filter: none; 20 | } 21 | -------------------------------------------------------------------------------- /src/style/less/icons/font-awesome/less/spinning.less: -------------------------------------------------------------------------------- 1 | // Spinning Icons 2 | // -------------------------- 3 | 4 | .@{fa-css-prefix}-spin { 5 | -webkit-animation: fa-spin 2s infinite linear; 6 | animation: fa-spin 2s infinite linear; 7 | } 8 | 9 | @-webkit-keyframes fa-spin { 10 | 0% { 11 | -webkit-transform: rotate(0deg); 12 | transform: rotate(0deg); 13 | } 14 | 100% { 15 | -webkit-transform: rotate(359deg); 16 | transform: rotate(359deg); 17 | } 18 | } 19 | 20 | @keyframes fa-spin { 21 | 0% { 22 | -webkit-transform: rotate(0deg); 23 | transform: rotate(0deg); 24 | } 25 | 100% { 26 | -webkit-transform: rotate(359deg); 27 | transform: rotate(359deg); 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /src/style/less/icons/font-awesome/scss/_spinning.scss: -------------------------------------------------------------------------------- 1 | // Spinning Icons 2 | // -------------------------- 3 | 4 | .#{$fa-css-prefix}-spin { 5 | -webkit-animation: fa-spin 2s infinite linear; 6 | animation: fa-spin 2s infinite linear; 7 | } 8 | 9 | @-webkit-keyframes fa-spin { 10 | 0% { 11 | -webkit-transform: rotate(0deg); 12 | transform: rotate(0deg); 13 | } 14 | 100% { 15 | -webkit-transform: rotate(359deg); 16 | transform: rotate(359deg); 17 | } 18 | } 19 | 20 | @keyframes fa-spin { 21 | 0% { 22 | -webkit-transform: rotate(0deg); 23 | transform: rotate(0deg); 24 | } 25 | 100% { 26 | -webkit-transform: rotate(359deg); 27 | transform: rotate(359deg); 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /src/components/common/content/projectContent/ProjectContent.js: -------------------------------------------------------------------------------- 1 | import React,{ Component } from 'react' 2 | import {Switch} from 'react-router-dom' 3 | import RouteWithSubRoutes from '../../../../router/RouteWithSubRoutes' 4 | import { SideBar } from '../SideBar' 5 | import { Footer } from '../Footer' 6 | 7 | class ProjectContent extends Component { 8 | render() { 9 | const { routes } = this.props; 10 | return ( 11 |
12 | 13 | 14 | {routes.map((route, i) => ( 15 | 16 | ))} 17 | 18 |
19 |
20 | ) 21 | } 22 | } 23 | 24 | 25 | export default ProjectContent; 26 | -------------------------------------------------------------------------------- /src/plugins/images/tooltip/shape1.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 8 | 9 | -------------------------------------------------------------------------------- /src/style/icons/weather-icons/less/icon-variables/variables-day.less: -------------------------------------------------------------------------------- 1 | @day-sunny: "\f00d"; 2 | @day-cloudy: "\f002"; 3 | @day-cloudy-gusts: "\f000"; 4 | @day-cloudy-windy: "\f001"; 5 | @day-fog: "\f003"; 6 | @day-hail: "\f004"; 7 | @day-haze: "\f0b6"; 8 | @day-lightning: "\f005"; 9 | @day-rain: "\f008"; 10 | @day-rain-mix: "\f006"; 11 | @day-rain-wind: "\f007"; 12 | @day-showers: "\f009"; 13 | @day-sleet: "\f0b2"; 14 | @day-sleet-storm: "\f068"; 15 | @day-snow: "\f00a"; 16 | @day-snow-thunderstorm: "\f06b"; 17 | @day-snow-wind: "\f065"; 18 | @day-sprinkle: "\f00b"; 19 | @day-storm-showers: "\f00e"; 20 | @day-sunny-overcast: "\f00c"; 21 | @day-thunderstorm: "\f010"; 22 | @day-windy: "\f085"; 23 | @solar-eclipse: "\f06e"; 24 | @hot: "\f072"; 25 | @day-cloudy-high: "\f07d"; 26 | @day-light-wind: "\f0c4"; -------------------------------------------------------------------------------- /src/style/icons/weather-icons/sass/icon-variables/variables-day.scss: -------------------------------------------------------------------------------- 1 | $day-sunny: "\f00d"; 2 | $day-cloudy: "\f002"; 3 | $day-cloudy-gusts: "\f000"; 4 | $day-cloudy-windy: "\f001"; 5 | $day-fog: "\f003"; 6 | $day-hail: "\f004"; 7 | $day-haze: "\f0b6"; 8 | $day-lightning: "\f005"; 9 | $day-rain: "\f008"; 10 | $day-rain-mix: "\f006"; 11 | $day-rain-wind: "\f007"; 12 | $day-showers: "\f009"; 13 | $day-sleet: "\f0b2"; 14 | $day-sleet-storm: "\f068"; 15 | $day-snow: "\f00a"; 16 | $day-snow-thunderstorm: "\f06b"; 17 | $day-snow-wind: "\f065"; 18 | $day-sprinkle: "\f00b"; 19 | $day-storm-showers: "\f00e"; 20 | $day-sunny-overcast: "\f00c"; 21 | $day-thunderstorm: "\f010"; 22 | $day-windy: "\f085"; 23 | $solar-eclipse: "\f06e"; 24 | $hot: "\f072"; 25 | $day-cloudy-high: "\f07d"; 26 | $day-light-wind: "\f0c4"; -------------------------------------------------------------------------------- /src/components/utils/MyDropify.js: -------------------------------------------------------------------------------- 1 | import React, { Component } from 'react'; 2 | const $ = window.$; 3 | require('dropify'); 4 | 5 | class MyDropify extends Component { 6 | componentDidMount(){ 7 | $('.dropify').dropify(); 8 | } 9 | render() { 10 | const { input,dataAllowedFileExtensions } = this.props 11 | const onAttachmentChange = (e) => { 12 | e.preventDefault(); 13 | const files = [...e.target.files]; 14 | input.onChange(files); 15 | }; 16 | return ( 17 |
18 | 22 |
23 | ) 24 | } 25 | } 26 | 27 | export default MyDropify; 28 | -------------------------------------------------------------------------------- /src/style/icons/font-awesome/scss/_rotated-flipped.scss: -------------------------------------------------------------------------------- 1 | // Rotated & Flipped Icons 2 | // ------------------------- 3 | 4 | .#{$fa-css-prefix}-rotate-90 { @include fa-icon-rotate(90deg, 1); } 5 | .#{$fa-css-prefix}-rotate-180 { @include fa-icon-rotate(180deg, 2); } 6 | .#{$fa-css-prefix}-rotate-270 { @include fa-icon-rotate(270deg, 3); } 7 | 8 | .#{$fa-css-prefix}-flip-horizontal { @include fa-icon-flip(-1, 1, 0); } 9 | .#{$fa-css-prefix}-flip-vertical { @include fa-icon-flip(1, -1, 2); } 10 | 11 | // Hook for IE8-9 12 | // ------------------------- 13 | 14 | :root .#{$fa-css-prefix}-rotate-90, 15 | :root .#{$fa-css-prefix}-rotate-180, 16 | :root .#{$fa-css-prefix}-rotate-270, 17 | :root .#{$fa-css-prefix}-flip-horizontal, 18 | :root .#{$fa-css-prefix}-flip-vertical { 19 | filter: none; 20 | } 21 | -------------------------------------------------------------------------------- /src/style/less/icons/weather-icons/less/icon-variables/variables-day.less: -------------------------------------------------------------------------------- 1 | @day-sunny: "\f00d"; 2 | @day-cloudy: "\f002"; 3 | @day-cloudy-gusts: "\f000"; 4 | @day-cloudy-windy: "\f001"; 5 | @day-fog: "\f003"; 6 | @day-hail: "\f004"; 7 | @day-haze: "\f0b6"; 8 | @day-lightning: "\f005"; 9 | @day-rain: "\f008"; 10 | @day-rain-mix: "\f006"; 11 | @day-rain-wind: "\f007"; 12 | @day-showers: "\f009"; 13 | @day-sleet: "\f0b2"; 14 | @day-sleet-storm: "\f068"; 15 | @day-snow: "\f00a"; 16 | @day-snow-thunderstorm: "\f06b"; 17 | @day-snow-wind: "\f065"; 18 | @day-sprinkle: "\f00b"; 19 | @day-storm-showers: "\f00e"; 20 | @day-sunny-overcast: "\f00c"; 21 | @day-thunderstorm: "\f010"; 22 | @day-windy: "\f085"; 23 | @solar-eclipse: "\f06e"; 24 | @hot: "\f072"; 25 | @day-cloudy-high: "\f07d"; 26 | @day-light-wind: "\f0c4"; -------------------------------------------------------------------------------- /src/style/less/icons/weather-icons/sass/icon-variables/variables-day.scss: -------------------------------------------------------------------------------- 1 | $day-sunny: "\f00d"; 2 | $day-cloudy: "\f002"; 3 | $day-cloudy-gusts: "\f000"; 4 | $day-cloudy-windy: "\f001"; 5 | $day-fog: "\f003"; 6 | $day-hail: "\f004"; 7 | $day-haze: "\f0b6"; 8 | $day-lightning: "\f005"; 9 | $day-rain: "\f008"; 10 | $day-rain-mix: "\f006"; 11 | $day-rain-wind: "\f007"; 12 | $day-showers: "\f009"; 13 | $day-sleet: "\f0b2"; 14 | $day-sleet-storm: "\f068"; 15 | $day-snow: "\f00a"; 16 | $day-snow-thunderstorm: "\f06b"; 17 | $day-snow-wind: "\f065"; 18 | $day-sprinkle: "\f00b"; 19 | $day-storm-showers: "\f00e"; 20 | $day-sunny-overcast: "\f00c"; 21 | $day-thunderstorm: "\f010"; 22 | $day-windy: "\f085"; 23 | $solar-eclipse: "\f06e"; 24 | $hot: "\f072"; 25 | $day-cloudy-high: "\f07d"; 26 | $day-light-wind: "\f0c4"; -------------------------------------------------------------------------------- /src/style/less/icons/font-awesome/scss/_rotated-flipped.scss: -------------------------------------------------------------------------------- 1 | // Rotated & Flipped Icons 2 | // ------------------------- 3 | 4 | .#{$fa-css-prefix}-rotate-90 { @include fa-icon-rotate(90deg, 1); } 5 | .#{$fa-css-prefix}-rotate-180 { @include fa-icon-rotate(180deg, 2); } 6 | .#{$fa-css-prefix}-rotate-270 { @include fa-icon-rotate(270deg, 3); } 7 | 8 | .#{$fa-css-prefix}-flip-horizontal { @include fa-icon-flip(-1, 1, 0); } 9 | .#{$fa-css-prefix}-flip-vertical { @include fa-icon-flip(1, -1, 2); } 10 | 11 | // Hook for IE8-9 12 | // ------------------------- 13 | 14 | :root .#{$fa-css-prefix}-rotate-90, 15 | :root .#{$fa-css-prefix}-rotate-180, 16 | :root .#{$fa-css-prefix}-rotate-270, 17 | :root .#{$fa-css-prefix}-flip-horizontal, 18 | :root .#{$fa-css-prefix}-flip-vertical { 19 | filter: none; 20 | } 21 | -------------------------------------------------------------------------------- /src/components/demo/remoteSubmit/submit.js: -------------------------------------------------------------------------------- 1 | import { SubmissionError } from 'redux-form' 2 | 3 | const sleep = ms => new Promise(resolve => setTimeout(resolve, ms)) 4 | 5 | function submit(values) { 6 | return sleep(1000).then(() => { 7 | // simulate server latency 8 | if (!['john', 'paul', 'george', 'ringo'].includes(values.username)) { 9 | throw new SubmissionError({ 10 | username: 'User does not exist', 11 | _error: 'Login failed!' 12 | }) 13 | } else if (values.password !== 'redux-form') { 14 | throw new SubmissionError({ 15 | password: 'Wrong password', 16 | _error: 'Login failed!' 17 | }) 18 | } else { 19 | window.alert(`You submitted:\n\n${JSON.stringify(values, null, 2)}`) 20 | } 21 | }) 22 | } 23 | 24 | export default submit 25 | -------------------------------------------------------------------------------- /src/components/demo/submitValidation/submit.js: -------------------------------------------------------------------------------- 1 | import { SubmissionError } from 'redux-form' 2 | 3 | const sleep = ms => new Promise(resolve => setTimeout(resolve, ms)) 4 | 5 | function submit(values) { 6 | return sleep(1000).then(() => { 7 | // simulate server latency 8 | if (!['john', 'paul', 'george', 'ringo'].includes(values.username)) { 9 | throw new SubmissionError({ 10 | username: 'User does not exist', 11 | _error: 'Login failed!' 12 | }) 13 | } else if (values.password !== 'redux-form') { 14 | throw new SubmissionError({ 15 | password: 'Wrong password', 16 | _error: 'Login failed!' 17 | }) 18 | } else { 19 | window.alert(`You submitted:\n\n${JSON.stringify(values, null, 2)}`) 20 | } 21 | }) 22 | } 23 | 24 | export default submit 25 | -------------------------------------------------------------------------------- /src/style/icons/weather-icons/less/icon-classes/classes-beaufort.less: -------------------------------------------------------------------------------- 1 | .wi-wind-beaufort-0:before {content: @wind-beaufort-0;} 2 | .wi-wind-beaufort-1:before {content: @wind-beaufort-1;} 3 | .wi-wind-beaufort-2:before {content: @wind-beaufort-2;} 4 | .wi-wind-beaufort-3:before {content: @wind-beaufort-3;} 5 | .wi-wind-beaufort-4:before {content: @wind-beaufort-4;} 6 | .wi-wind-beaufort-5:before {content: @wind-beaufort-5;} 7 | .wi-wind-beaufort-6:before {content: @wind-beaufort-6;} 8 | .wi-wind-beaufort-7:before {content: @wind-beaufort-7;} 9 | .wi-wind-beaufort-8:before {content: @wind-beaufort-8;} 10 | .wi-wind-beaufort-9:before {content: @wind-beaufort-9;} 11 | .wi-wind-beaufort-10:before {content: @wind-beaufort-10;} 12 | .wi-wind-beaufort-11:before {content: @wind-beaufort-11;} 13 | .wi-wind-beaufort-12:before {content: @wind-beaufort-12;} -------------------------------------------------------------------------------- /src/style/icons/weather-icons/sass/icon-classes/classes-beaufort.scss: -------------------------------------------------------------------------------- 1 | .wi-wind-beaufort-0:before {content: $wind-beaufort-0;} 2 | .wi-wind-beaufort-1:before {content: $wind-beaufort-1;} 3 | .wi-wind-beaufort-2:before {content: $wind-beaufort-2;} 4 | .wi-wind-beaufort-3:before {content: $wind-beaufort-3;} 5 | .wi-wind-beaufort-4:before {content: $wind-beaufort-4;} 6 | .wi-wind-beaufort-5:before {content: $wind-beaufort-5;} 7 | .wi-wind-beaufort-6:before {content: $wind-beaufort-6;} 8 | .wi-wind-beaufort-7:before {content: $wind-beaufort-7;} 9 | .wi-wind-beaufort-8:before {content: $wind-beaufort-8;} 10 | .wi-wind-beaufort-9:before {content: $wind-beaufort-9;} 11 | .wi-wind-beaufort-10:before {content: $wind-beaufort-10;} 12 | .wi-wind-beaufort-11:before {content: $wind-beaufort-11;} 13 | .wi-wind-beaufort-12:before {content: $wind-beaufort-12;} -------------------------------------------------------------------------------- /src/style/less/icons/weather-icons/less/icon-classes/classes-beaufort.less: -------------------------------------------------------------------------------- 1 | .wi-wind-beaufort-0:before {content: @wind-beaufort-0;} 2 | .wi-wind-beaufort-1:before {content: @wind-beaufort-1;} 3 | .wi-wind-beaufort-2:before {content: @wind-beaufort-2;} 4 | .wi-wind-beaufort-3:before {content: @wind-beaufort-3;} 5 | .wi-wind-beaufort-4:before {content: @wind-beaufort-4;} 6 | .wi-wind-beaufort-5:before {content: @wind-beaufort-5;} 7 | .wi-wind-beaufort-6:before {content: @wind-beaufort-6;} 8 | .wi-wind-beaufort-7:before {content: @wind-beaufort-7;} 9 | .wi-wind-beaufort-8:before {content: @wind-beaufort-8;} 10 | .wi-wind-beaufort-9:before {content: @wind-beaufort-9;} 11 | .wi-wind-beaufort-10:before {content: @wind-beaufort-10;} 12 | .wi-wind-beaufort-11:before {content: @wind-beaufort-11;} 13 | .wi-wind-beaufort-12:before {content: @wind-beaufort-12;} -------------------------------------------------------------------------------- /src/style/less/icons/weather-icons/sass/icon-classes/classes-beaufort.scss: -------------------------------------------------------------------------------- 1 | .wi-wind-beaufort-0:before {content: $wind-beaufort-0;} 2 | .wi-wind-beaufort-1:before {content: $wind-beaufort-1;} 3 | .wi-wind-beaufort-2:before {content: $wind-beaufort-2;} 4 | .wi-wind-beaufort-3:before {content: $wind-beaufort-3;} 5 | .wi-wind-beaufort-4:before {content: $wind-beaufort-4;} 6 | .wi-wind-beaufort-5:before {content: $wind-beaufort-5;} 7 | .wi-wind-beaufort-6:before {content: $wind-beaufort-6;} 8 | .wi-wind-beaufort-7:before {content: $wind-beaufort-7;} 9 | .wi-wind-beaufort-8:before {content: $wind-beaufort-8;} 10 | .wi-wind-beaufort-9:before {content: $wind-beaufort-9;} 11 | .wi-wind-beaufort-10:before {content: $wind-beaufort-10;} 12 | .wi-wind-beaufort-11:before {content: $wind-beaufort-11;} 13 | .wi-wind-beaufort-12:before {content: $wind-beaufort-12;} -------------------------------------------------------------------------------- /scripts/test.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | // Do this as the first thing so that any code reading it knows the right env. 4 | process.env.BABEL_ENV = 'test'; 5 | process.env.NODE_ENV = 'test'; 6 | process.env.PUBLIC_URL = ''; 7 | 8 | // Makes the script crash on unhandled rejections instead of silently 9 | // ignoring them. In the future, promise rejections that are not handled will 10 | // terminate the Node.js process with a non-zero exit code. 11 | process.on('unhandledRejection', err => { 12 | throw err; 13 | }); 14 | 15 | // Ensure environment variables are read. 16 | require('../config/env'); 17 | 18 | const jest = require('jest'); 19 | const argv = process.argv.slice(2); 20 | 21 | // Watch unless on CI or in coverage mode 22 | if (!process.env.CI && argv.indexOf('--coverage') < 0) { 23 | argv.push('--watch'); 24 | } 25 | 26 | 27 | jest.run(argv); 28 | -------------------------------------------------------------------------------- /src/components/utils/validation/selectField.js: -------------------------------------------------------------------------------- 1 | import React from 'react'; 2 | const selectField = ({ 3 | input, 4 | label, 5 | selects, 6 | meta: { touched, error, warning } 7 | }) => ( 8 |
9 |
10 | {label} 11 | 18 |
19 | {touched && 20 | ((error &&
{error}
) || 21 | (warning &&
{warning}
))} 22 |
23 | ) 24 | 25 | export default selectField; 26 | -------------------------------------------------------------------------------- /src/style/icons/font-awesome/scss/_path.scss: -------------------------------------------------------------------------------- 1 | /* FONT PATH 2 | * -------------------------- */ 3 | 4 | @font-face { 5 | font-family: 'FontAwesome'; 6 | src: url('#{$fa-font-path}/fontawesome-webfont.eot?v=#{$fa-version}'); 7 | src: url('#{$fa-font-path}/fontawesome-webfont.eot?#iefix&v=#{$fa-version}') format('embedded-opentype'), 8 | url('#{$fa-font-path}/fontawesome-webfont.woff2?v=#{$fa-version}') format('woff2'), 9 | url('#{$fa-font-path}/fontawesome-webfont.woff?v=#{$fa-version}') format('woff'), 10 | url('#{$fa-font-path}/fontawesome-webfont.ttf?v=#{$fa-version}') format('truetype'), 11 | url('#{$fa-font-path}/fontawesome-webfont.svg?v=#{$fa-version}#fontawesomeregular') format('svg'); 12 | // src: url('#{$fa-font-path}/FontAwesome.otf') format('opentype'); // used when developing fonts 13 | font-weight: normal; 14 | font-style: normal; 15 | } 16 | -------------------------------------------------------------------------------- /src/components/utils/validation/inputField.js: -------------------------------------------------------------------------------- 1 | import React from 'react'; 2 | 3 | const inputField = ({ 4 | input, 5 | label, 6 | type, 7 | meta: { touched, error, warning,asyncValidating } 8 | }) => ( 9 |
10 |
11 | {label} 12 | 13 | {asyncValidating && 14 | 15 | 16 | } 17 |
18 | {touched && 19 | ((error &&
{error}
) || 20 | (warning &&
{warning}
))} 21 |
22 | ) 23 | 24 | export default inputField; 25 | -------------------------------------------------------------------------------- /src/style/less/icons/font-awesome/scss/_path.scss: -------------------------------------------------------------------------------- 1 | /* FONT PATH 2 | * -------------------------- */ 3 | 4 | @font-face { 5 | font-family: 'FontAwesome'; 6 | src: url('#{$fa-font-path}/fontawesome-webfont.eot?v=#{$fa-version}'); 7 | src: url('#{$fa-font-path}/fontawesome-webfont.eot?#iefix&v=#{$fa-version}') format('embedded-opentype'), 8 | url('#{$fa-font-path}/fontawesome-webfont.woff2?v=#{$fa-version}') format('woff2'), 9 | url('#{$fa-font-path}/fontawesome-webfont.woff?v=#{$fa-version}') format('woff'), 10 | url('#{$fa-font-path}/fontawesome-webfont.ttf?v=#{$fa-version}') format('truetype'), 11 | url('#{$fa-font-path}/fontawesome-webfont.svg?v=#{$fa-version}#fontawesomeregular') format('svg'); 12 | // src: url('#{$fa-font-path}/FontAwesome.otf') format('opentype'); // used when developing fonts 13 | font-weight: normal; 14 | font-style: normal; 15 | } 16 | -------------------------------------------------------------------------------- /src/store/configureStore.prod.js: -------------------------------------------------------------------------------- 1 | import {applyMiddleware, createStore, compose} from 'redux'; 2 | import {routerMiddleware} from 'react-router-redux'; 3 | import {history} from '../router/history'; 4 | 5 | import thunk from 'redux-thunk'; 6 | 7 | import rootReducer from '../reducers/rootReducer'; 8 | // Create a history of your choosing (we're using a browser history in this case) 9 | // Build the middleware for intercepting and dispatching navigation actions 10 | const historyMiddleware = routerMiddleware(history); 11 | 12 | 13 | const middlewares = [ 14 | thunk, 15 | historyMiddleware, 16 | ]; 17 | 18 | const storeEnhancers = compose( 19 | applyMiddleware(...middlewares), 20 | ); 21 | 22 | const configureStore = preloadedState => { 23 | const store = createStore(rootReducer, preloadedState, storeEnhancers); 24 | return store; 25 | } 26 | export default configureStore; 27 | -------------------------------------------------------------------------------- /src/style/icons/font-awesome/.bower.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "font-awesome", 3 | "description": "Font Awesome", 4 | "version": "4.2.0", 5 | "keywords": [], 6 | "homepage": "http://fontawesome.io", 7 | "dependencies": {}, 8 | "devDependencies": {}, 9 | "license": [ 10 | "OFL-1.1", 11 | "MIT", 12 | "CC-BY-3.0" 13 | ], 14 | "main": [ 15 | "./css/font-awesome.css", 16 | "./fonts/*" 17 | ], 18 | "ignore": [ 19 | "*/.*", 20 | "*.json", 21 | "src", 22 | "*.yml", 23 | "Gemfile", 24 | "Gemfile.lock", 25 | "*.md" 26 | ], 27 | "_release": "4.2.0", 28 | "_resolution": { 29 | "type": "version", 30 | "tag": "v4.2.0", 31 | "commit": "0b924144a95a54fa738d0450ff66c1dabd11ae74" 32 | }, 33 | "_source": "git://github.com/FortAwesome/Font-Awesome.git", 34 | "_target": "~4.2.0", 35 | "_originalSource": "font-awesome" 36 | } -------------------------------------------------------------------------------- /src/style/less/icons/font-awesome/.bower.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "font-awesome", 3 | "description": "Font Awesome", 4 | "version": "4.2.0", 5 | "keywords": [], 6 | "homepage": "http://fontawesome.io", 7 | "dependencies": {}, 8 | "devDependencies": {}, 9 | "license": [ 10 | "OFL-1.1", 11 | "MIT", 12 | "CC-BY-3.0" 13 | ], 14 | "main": [ 15 | "./css/font-awesome.css", 16 | "./fonts/*" 17 | ], 18 | "ignore": [ 19 | "*/.*", 20 | "*.json", 21 | "src", 22 | "*.yml", 23 | "Gemfile", 24 | "Gemfile.lock", 25 | "*.md" 26 | ], 27 | "_release": "4.2.0", 28 | "_resolution": { 29 | "type": "version", 30 | "tag": "v4.2.0", 31 | "commit": "0b924144a95a54fa738d0450ff66c1dabd11ae74" 32 | }, 33 | "_source": "git://github.com/FortAwesome/Font-Awesome.git", 34 | "_target": "~4.2.0", 35 | "_originalSource": "font-awesome" 36 | } -------------------------------------------------------------------------------- /src/style/icons/font-awesome/less/animated.less: -------------------------------------------------------------------------------- 1 | // Animated Icons 2 | // -------------------------- 3 | 4 | .@{fa-css-prefix}-spin { 5 | -webkit-animation: fa-spin 2s infinite linear; 6 | animation: fa-spin 2s infinite linear; 7 | } 8 | 9 | .@{fa-css-prefix}-pulse { 10 | -webkit-animation: fa-spin 1s infinite steps(8); 11 | animation: fa-spin 1s infinite steps(8); 12 | } 13 | 14 | @-webkit-keyframes fa-spin { 15 | 0% { 16 | -webkit-transform: rotate(0deg); 17 | transform: rotate(0deg); 18 | } 19 | 100% { 20 | -webkit-transform: rotate(359deg); 21 | transform: rotate(359deg); 22 | } 23 | } 24 | 25 | @keyframes fa-spin { 26 | 0% { 27 | -webkit-transform: rotate(0deg); 28 | transform: rotate(0deg); 29 | } 30 | 100% { 31 | -webkit-transform: rotate(359deg); 32 | transform: rotate(359deg); 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /src/style/icons/font-awesome/scss/_animated.scss: -------------------------------------------------------------------------------- 1 | // Spinning Icons 2 | // -------------------------- 3 | 4 | .#{$fa-css-prefix}-spin { 5 | -webkit-animation: fa-spin 2s infinite linear; 6 | animation: fa-spin 2s infinite linear; 7 | } 8 | 9 | .#{$fa-css-prefix}-pulse { 10 | -webkit-animation: fa-spin 1s infinite steps(8); 11 | animation: fa-spin 1s infinite steps(8); 12 | } 13 | 14 | @-webkit-keyframes fa-spin { 15 | 0% { 16 | -webkit-transform: rotate(0deg); 17 | transform: rotate(0deg); 18 | } 19 | 100% { 20 | -webkit-transform: rotate(359deg); 21 | transform: rotate(359deg); 22 | } 23 | } 24 | 25 | @keyframes fa-spin { 26 | 0% { 27 | -webkit-transform: rotate(0deg); 28 | transform: rotate(0deg); 29 | } 30 | 100% { 31 | -webkit-transform: rotate(359deg); 32 | transform: rotate(359deg); 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /src/style/less/icons/font-awesome/less/animated.less: -------------------------------------------------------------------------------- 1 | // Animated Icons 2 | // -------------------------- 3 | 4 | .@{fa-css-prefix}-spin { 5 | -webkit-animation: fa-spin 2s infinite linear; 6 | animation: fa-spin 2s infinite linear; 7 | } 8 | 9 | .@{fa-css-prefix}-pulse { 10 | -webkit-animation: fa-spin 1s infinite steps(8); 11 | animation: fa-spin 1s infinite steps(8); 12 | } 13 | 14 | @-webkit-keyframes fa-spin { 15 | 0% { 16 | -webkit-transform: rotate(0deg); 17 | transform: rotate(0deg); 18 | } 19 | 100% { 20 | -webkit-transform: rotate(359deg); 21 | transform: rotate(359deg); 22 | } 23 | } 24 | 25 | @keyframes fa-spin { 26 | 0% { 27 | -webkit-transform: rotate(0deg); 28 | transform: rotate(0deg); 29 | } 30 | 100% { 31 | -webkit-transform: rotate(359deg); 32 | transform: rotate(359deg); 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /src/style/less/icons/font-awesome/scss/_animated.scss: -------------------------------------------------------------------------------- 1 | // Spinning Icons 2 | // -------------------------- 3 | 4 | .#{$fa-css-prefix}-spin { 5 | -webkit-animation: fa-spin 2s infinite linear; 6 | animation: fa-spin 2s infinite linear; 7 | } 8 | 9 | .#{$fa-css-prefix}-pulse { 10 | -webkit-animation: fa-spin 1s infinite steps(8); 11 | animation: fa-spin 1s infinite steps(8); 12 | } 13 | 14 | @-webkit-keyframes fa-spin { 15 | 0% { 16 | -webkit-transform: rotate(0deg); 17 | transform: rotate(0deg); 18 | } 19 | 100% { 20 | -webkit-transform: rotate(359deg); 21 | transform: rotate(359deg); 22 | } 23 | } 24 | 25 | @keyframes fa-spin { 26 | 0% { 27 | -webkit-transform: rotate(0deg); 28 | transform: rotate(0deg); 29 | } 30 | 100% { 31 | -webkit-transform: rotate(359deg); 32 | transform: rotate(359deg); 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /src/components/utils/MyDropzone.js: -------------------------------------------------------------------------------- 1 | import React, { Component } from 'react'; 2 | import Dropzone from 'react-dropzone'; 3 | class MyDropzone extends Component { 4 | render() { 5 | const { input,desc,accept } = this.props 6 | const onDrop = (files) => { 7 | input.onChange(files); 8 | }; 9 | return ( 10 | 11 | {({ isDragActive, isDragReject, acceptedFiles, rejectedFiles }) => { 12 | if (isDragActive) { 13 | return "This file is authorized"; 14 | } 15 | if (isDragReject) { 16 | return "This file is not authorized"; 17 | } 18 | return acceptedFiles.length || rejectedFiles.length 19 | ? `Accepted ${acceptedFiles.length}, rejected ${rejectedFiles.length} files` 20 | : desc; 21 | }} 22 | 23 | ) 24 | } 25 | } 26 | 27 | export default MyDropzone; 28 | -------------------------------------------------------------------------------- /src/style/icons/font-awesome/less/path.less: -------------------------------------------------------------------------------- 1 | /* FONT PATH 2 | * -------------------------- */ 3 | 4 | @font-face { 5 | font-family: 'FontAwesome'; 6 | src: url('../less/icons/font-awesome/fonts/fontawesome-webfont.eot?v=@{fa-version}'); 7 | src: url('../less/icons/font-awesome/fonts/fontawesome-webfont.eot?#iefix&v=@{fa-version}') format('embedded-opentype'), 8 | url('../less/icons/font-awesome/fonts/fontawesome-webfont.woff2?v=@{fa-version}') format('woff2'), 9 | url('../less/icons/font-awesome/fonts/fontawesome-webfont.woff?v=@{fa-version}') format('woff'), 10 | url('../less/icons/font-awesome/fonts/fontawesome-webfont.ttf?v=@{fa-version}') format('truetype'), 11 | url('../less/icons/font-awesome/fonts/fontawesome-webfont.svg?v=@{fa-version}#fontawesomeregular') format('svg'); 12 | // src: url('../less/icons/font-awesome/fonts/FontAwesome.otf') format('opentype'); // used when developing fonts 13 | font-weight: normal; 14 | font-style: normal; 15 | } 16 | -------------------------------------------------------------------------------- /src/style/less/icons/font-awesome/less/path.less: -------------------------------------------------------------------------------- 1 | /* FONT PATH 2 | * -------------------------- */ 3 | 4 | @font-face { 5 | font-family: 'FontAwesome'; 6 | src: url('../less/icons/font-awesome/fonts/fontawesome-webfont.eot?v=@{fa-version}'); 7 | src: url('../less/icons/font-awesome/fonts/fontawesome-webfont.eot?#iefix&v=@{fa-version}') format('embedded-opentype'), 8 | url('../less/icons/font-awesome/fonts/fontawesome-webfont.woff2?v=@{fa-version}') format('woff2'), 9 | url('../less/icons/font-awesome/fonts/fontawesome-webfont.woff?v=@{fa-version}') format('woff'), 10 | url('../less/icons/font-awesome/fonts/fontawesome-webfont.ttf?v=@{fa-version}') format('truetype'), 11 | url('../less/icons/font-awesome/fonts/fontawesome-webfont.svg?v=@{fa-version}#fontawesomeregular') format('svg'); 12 | // src: url('../less/icons/font-awesome/fonts/FontAwesome.otf') format('opentype'); // used when developing fonts 13 | font-weight: normal; 14 | font-style: normal; 15 | } 16 | -------------------------------------------------------------------------------- /src/components/demo/remoteSubmit/RemoteSubmitForm.js: -------------------------------------------------------------------------------- 1 | import React from 'react'; 2 | import { Field, reduxForm } from 'redux-form'; 3 | import inputField from '../../utils/validation/inputField'; 4 | import submit from './submit' 5 | 6 | const RemoteSubmitForm = props => { 7 | const { handleSubmit,error } = props; 8 | return( 9 |
10 | 11 | 12 | {error && {error}} 13 |
14 | No submit button in the form. The submit button below is a separate 15 | unlinked component. 16 |
17 |
18 | ) 19 | } 20 | 21 | export default reduxForm({ 22 | form: 'remoteSubmit', // a unique identifier for this form 23 | onSubmit: submit 24 | })(RemoteSubmitForm) 25 | -------------------------------------------------------------------------------- /src/components/demo/fieldLevelValidation/validDesc.js: -------------------------------------------------------------------------------- 1 | export const required = value => (value ? undefined : 'Required'); 2 | 3 | const nullValue = init => value => (value===init ? 'Required':undefined) 4 | export const nullValue1 = nullValue('-1'); 5 | 6 | const maxLength = max => value => 7 | value && value.length > max ? `Must be ${max} characters or less` : undefined; 8 | export const maxLength15 = maxLength(15); 9 | 10 | const minLength = min => value => 11 | value && value.length < min ? `Must be ${min} characters or more` : undefined 12 | export const minLength2 = minLength(2) 13 | 14 | export const number = value => 15 | value && isNaN(Number(value)) ? 'Must be a number' : undefined 16 | 17 | const minValue = min => value => 18 | value && value < min ? `Must be at least ${min}` : undefined 19 | export const minValue18 = minValue(18) 20 | 21 | export const email = value => 22 | value && !/^[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,4}$/i.test(value) 23 | ? 'Invalid email address' 24 | : undefined 25 | -------------------------------------------------------------------------------- /src/style/icons/weather-icons/less/icon-variables/variables-neutral.less: -------------------------------------------------------------------------------- 1 | @cloud: "\f041"; 2 | @cloudy: "\f013"; 3 | @cloudy-gusts: "\f011"; 4 | @cloudy-windy: "\f012"; 5 | @fog: "\f014"; 6 | @hail: "\f015"; 7 | @rain: "\f019"; 8 | @rain-mix: "\f017"; 9 | @rain-wind: "\f018"; 10 | @showers: "\f01a"; 11 | @sleet: "\f0b5"; 12 | @snow: "\f01b"; 13 | @sprinkle: "\f01c"; 14 | @storm-showers: "\f01d"; 15 | @thunderstorm: "\f01e"; 16 | @snow-wind: "\f064"; 17 | @snow: "\f01b"; 18 | @smog: "\f074"; 19 | @smoke: "\f062"; 20 | @lightning: "\f016"; 21 | @raindrops: "\f04e"; 22 | @raindrop: "\f078"; 23 | @dust: "\f063"; 24 | @snowflake-cold: "\f076"; 25 | @windy: "\f021"; 26 | @strong-wind: "\f050"; 27 | @sandstorm: "\f082"; 28 | @earthquake: "\f0c6"; 29 | @fire: "\f0c7"; 30 | @flood: "\f07c"; 31 | @meteor: "\f071"; 32 | @tsunami: "\f0c5"; 33 | @volcano: "\f0c8"; 34 | @hurricane: "\f073"; 35 | @tornado: "\f056"; 36 | @small-craft-advisory: "\f0cc"; 37 | @gale-warning: "\f0cd"; 38 | @storm-warning: "\f0ce"; 39 | @hurricane-warning: "\f0cf"; 40 | @wind-direction: "\f0b1"; -------------------------------------------------------------------------------- /src/style/icons/weather-icons/sass/icon-variables/variables-neutral.scss: -------------------------------------------------------------------------------- 1 | $cloud: "\f041"; 2 | $cloudy: "\f013"; 3 | $cloudy-gusts: "\f011"; 4 | $cloudy-windy: "\f012"; 5 | $fog: "\f014"; 6 | $hail: "\f015"; 7 | $rain: "\f019"; 8 | $rain-mix: "\f017"; 9 | $rain-wind: "\f018"; 10 | $showers: "\f01a"; 11 | $sleet: "\f0b5"; 12 | $snow: "\f01b"; 13 | $sprinkle: "\f01c"; 14 | $storm-showers: "\f01d"; 15 | $thunderstorm: "\f01e"; 16 | $snow-wind: "\f064"; 17 | $snow: "\f01b"; 18 | $smog: "\f074"; 19 | $smoke: "\f062"; 20 | $lightning: "\f016"; 21 | $raindrops: "\f04e"; 22 | $raindrop: "\f078"; 23 | $dust: "\f063"; 24 | $snowflake-cold: "\f076"; 25 | $windy: "\f021"; 26 | $strong-wind: "\f050"; 27 | $sandstorm: "\f082"; 28 | $earthquake: "\f0c6"; 29 | $fire: "\f0c7"; 30 | $flood: "\f07c"; 31 | $meteor: "\f071"; 32 | $tsunami: "\f0c5"; 33 | $volcano: "\f0c8"; 34 | $hurricane: "\f073"; 35 | $tornado: "\f056"; 36 | $small-craft-advisory: "\f0cc"; 37 | $gale-warning: "\f0cd"; 38 | $storm-warning: "\f0ce"; 39 | $hurricane-warning: "\f0cf"; 40 | $wind-direction: "\f0b1"; -------------------------------------------------------------------------------- /src/components/demo/syncValidation/validDesc.js: -------------------------------------------------------------------------------- 1 | export const validate = values => { 2 | const errors = {} 3 | if (!values.username) { 4 | errors.username = 'Required' 5 | } else if (values.username.length > 15) { 6 | errors.username = 'Must be 15 characters or less' 7 | } 8 | 9 | if (!values.email) { 10 | errors.email = 'Required' 11 | } else if (!/^[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,4}$/i.test(values.email)) { 12 | errors.email = 'Invalid email address' 13 | } 14 | 15 | if (!values.age) { 16 | errors.age = 'Required' 17 | } else if (isNaN(Number(values.age))) { 18 | errors.age = 'Must be a number' 19 | } else if (Number(values.age) < 18) { 20 | errors.age = 'Sorry, you must be at least 18 years old' 21 | } 22 | 23 | if (!values.sex) { 24 | errors.sex = 'Required' 25 | } 26 | 27 | if (!values.notes) { 28 | errors.notes = 'Required' 29 | } 30 | 31 | if (!values.favoriteColor || values.favoriteColor==='-1') { 32 | errors.favoriteColor = 'Required' 33 | } 34 | return errors 35 | } 36 | -------------------------------------------------------------------------------- /src/components/demo/wizard/view.js: -------------------------------------------------------------------------------- 1 | import React, { Component } from 'react'; 2 | import WizardForm from './WizardForm'; 3 | import {Values} from 'redux-form-website-template' 4 | 5 | class Wizard extends Component { 6 | onSubmit = (value) => { 7 | console.log("Wizard onSubmit: "+JSON.stringify(value)); 8 | } 9 | render(){ 10 | return ( 11 |
12 |
13 |
14 |
15 |
16 |

Wizard Form

17 | 18 |
19 |
20 |
21 |
22 | 23 |
24 |
25 |
26 |
27 |
28 | ) 29 | } 30 | } 31 | 32 | export default Wizard; 33 | -------------------------------------------------------------------------------- /src/style/less/icons/weather-icons/less/icon-variables/variables-neutral.less: -------------------------------------------------------------------------------- 1 | @cloud: "\f041"; 2 | @cloudy: "\f013"; 3 | @cloudy-gusts: "\f011"; 4 | @cloudy-windy: "\f012"; 5 | @fog: "\f014"; 6 | @hail: "\f015"; 7 | @rain: "\f019"; 8 | @rain-mix: "\f017"; 9 | @rain-wind: "\f018"; 10 | @showers: "\f01a"; 11 | @sleet: "\f0b5"; 12 | @snow: "\f01b"; 13 | @sprinkle: "\f01c"; 14 | @storm-showers: "\f01d"; 15 | @thunderstorm: "\f01e"; 16 | @snow-wind: "\f064"; 17 | @snow: "\f01b"; 18 | @smog: "\f074"; 19 | @smoke: "\f062"; 20 | @lightning: "\f016"; 21 | @raindrops: "\f04e"; 22 | @raindrop: "\f078"; 23 | @dust: "\f063"; 24 | @snowflake-cold: "\f076"; 25 | @windy: "\f021"; 26 | @strong-wind: "\f050"; 27 | @sandstorm: "\f082"; 28 | @earthquake: "\f0c6"; 29 | @fire: "\f0c7"; 30 | @flood: "\f07c"; 31 | @meteor: "\f071"; 32 | @tsunami: "\f0c5"; 33 | @volcano: "\f0c8"; 34 | @hurricane: "\f073"; 35 | @tornado: "\f056"; 36 | @small-craft-advisory: "\f0cc"; 37 | @gale-warning: "\f0cd"; 38 | @storm-warning: "\f0ce"; 39 | @hurricane-warning: "\f0cf"; 40 | @wind-direction: "\f0b1"; -------------------------------------------------------------------------------- /src/style/less/icons/weather-icons/sass/icon-variables/variables-neutral.scss: -------------------------------------------------------------------------------- 1 | $cloud: "\f041"; 2 | $cloudy: "\f013"; 3 | $cloudy-gusts: "\f011"; 4 | $cloudy-windy: "\f012"; 5 | $fog: "\f014"; 6 | $hail: "\f015"; 7 | $rain: "\f019"; 8 | $rain-mix: "\f017"; 9 | $rain-wind: "\f018"; 10 | $showers: "\f01a"; 11 | $sleet: "\f0b5"; 12 | $snow: "\f01b"; 13 | $sprinkle: "\f01c"; 14 | $storm-showers: "\f01d"; 15 | $thunderstorm: "\f01e"; 16 | $snow-wind: "\f064"; 17 | $snow: "\f01b"; 18 | $smog: "\f074"; 19 | $smoke: "\f062"; 20 | $lightning: "\f016"; 21 | $raindrops: "\f04e"; 22 | $raindrop: "\f078"; 23 | $dust: "\f063"; 24 | $snowflake-cold: "\f076"; 25 | $windy: "\f021"; 26 | $strong-wind: "\f050"; 27 | $sandstorm: "\f082"; 28 | $earthquake: "\f0c6"; 29 | $fire: "\f0c7"; 30 | $flood: "\f07c"; 31 | $meteor: "\f071"; 32 | $tsunami: "\f0c5"; 33 | $volcano: "\f0c8"; 34 | $hurricane: "\f073"; 35 | $tornado: "\f056"; 36 | $small-craft-advisory: "\f0cc"; 37 | $gale-warning: "\f0cd"; 38 | $storm-warning: "\f0ce"; 39 | $hurricane-warning: "\f0cf"; 40 | $wind-direction: "\f0b1"; -------------------------------------------------------------------------------- /src/components/utils/validation/radioField.js: -------------------------------------------------------------------------------- 1 | import React, { Component } from 'react'; 2 | 3 | class radioField extends Component { 4 | 5 | render(){ 6 | const { 7 | input, 8 | type, 9 | label, 10 | meta: { touched, error, warning } 11 | } = this.props; 12 | return( 13 |
14 | 15 | { 16 | this.props.radios.map((item, i) => ( 17 | 23 | )) 24 | } 25 | 30 |
31 | ) 32 | } 33 | } 34 | 35 | export default radioField; 36 | -------------------------------------------------------------------------------- /src/style/icons/font-awesome/less/mixins.less: -------------------------------------------------------------------------------- 1 | // Mixins 2 | // -------------------------- 3 | 4 | .fa-icon() { 5 | display: inline-block; 6 | font: normal normal normal @fa-font-size-base/@fa-line-height-base FontAwesome; // shortening font declaration 7 | font-size: inherit; // can't have font-size inherit on line above, so need to override 8 | text-rendering: auto; // optimizelegibility throws things off #1094 9 | -webkit-font-smoothing: antialiased; 10 | -moz-osx-font-smoothing: grayscale; 11 | 12 | } 13 | 14 | .fa-icon-rotate(@degrees, @rotation) { 15 | filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=@rotation); 16 | -webkit-transform: rotate(@degrees); 17 | -ms-transform: rotate(@degrees); 18 | transform: rotate(@degrees); 19 | } 20 | 21 | .fa-icon-flip(@horiz, @vert, @rotation) { 22 | filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=@rotation, mirror=1); 23 | -webkit-transform: scale(@horiz, @vert); 24 | -ms-transform: scale(@horiz, @vert); 25 | transform: scale(@horiz, @vert); 26 | } 27 | -------------------------------------------------------------------------------- /src/style/less/icons/font-awesome/less/mixins.less: -------------------------------------------------------------------------------- 1 | // Mixins 2 | // -------------------------- 3 | 4 | .fa-icon() { 5 | display: inline-block; 6 | font: normal normal normal @fa-font-size-base/@fa-line-height-base FontAwesome; // shortening font declaration 7 | font-size: inherit; // can't have font-size inherit on line above, so need to override 8 | text-rendering: auto; // optimizelegibility throws things off #1094 9 | -webkit-font-smoothing: antialiased; 10 | -moz-osx-font-smoothing: grayscale; 11 | 12 | } 13 | 14 | .fa-icon-rotate(@degrees, @rotation) { 15 | filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=@rotation); 16 | -webkit-transform: rotate(@degrees); 17 | -ms-transform: rotate(@degrees); 18 | transform: rotate(@degrees); 19 | } 20 | 21 | .fa-icon-flip(@horiz, @vert, @rotation) { 22 | filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=@rotation, mirror=1); 23 | -webkit-transform: scale(@horiz, @vert); 24 | -ms-transform: scale(@horiz, @vert); 25 | transform: scale(@horiz, @vert); 26 | } 27 | -------------------------------------------------------------------------------- /src/style/icons/font-awesome/scss/_mixins.scss: -------------------------------------------------------------------------------- 1 | // Mixins 2 | // -------------------------- 3 | 4 | @mixin fa-icon() { 5 | display: inline-block; 6 | font: normal normal normal #{$fa-font-size-base}/#{$fa-line-height-base} FontAwesome; // shortening font declaration 7 | font-size: inherit; // can't have font-size inherit on line above, so need to override 8 | text-rendering: auto; // optimizelegibility throws things off #1094 9 | -webkit-font-smoothing: antialiased; 10 | -moz-osx-font-smoothing: grayscale; 11 | 12 | } 13 | 14 | @mixin fa-icon-rotate($degrees, $rotation) { 15 | filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=#{$rotation}); 16 | -webkit-transform: rotate($degrees); 17 | -ms-transform: rotate($degrees); 18 | transform: rotate($degrees); 19 | } 20 | 21 | @mixin fa-icon-flip($horiz, $vert, $rotation) { 22 | filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=#{$rotation}); 23 | -webkit-transform: scale($horiz, $vert); 24 | -ms-transform: scale($horiz, $vert); 25 | transform: scale($horiz, $vert); 26 | } 27 | -------------------------------------------------------------------------------- /src/style/less/icons/font-awesome/scss/_mixins.scss: -------------------------------------------------------------------------------- 1 | // Mixins 2 | // -------------------------- 3 | 4 | @mixin fa-icon() { 5 | display: inline-block; 6 | font: normal normal normal #{$fa-font-size-base}/#{$fa-line-height-base} FontAwesome; // shortening font declaration 7 | font-size: inherit; // can't have font-size inherit on line above, so need to override 8 | text-rendering: auto; // optimizelegibility throws things off #1094 9 | -webkit-font-smoothing: antialiased; 10 | -moz-osx-font-smoothing: grayscale; 11 | 12 | } 13 | 14 | @mixin fa-icon-rotate($degrees, $rotation) { 15 | filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=#{$rotation}); 16 | -webkit-transform: rotate($degrees); 17 | -ms-transform: rotate($degrees); 18 | transform: rotate($degrees); 19 | } 20 | 21 | @mixin fa-icon-flip($horiz, $vert, $rotation) { 22 | filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=#{$rotation}); 23 | -webkit-transform: scale($horiz, $vert); 24 | -ms-transform: scale($horiz, $vert); 25 | transform: scale($horiz, $vert); 26 | } 27 | -------------------------------------------------------------------------------- /src/components/demo/fieldArrays/view.js: -------------------------------------------------------------------------------- 1 | import React, { Component } from 'react'; 2 | import FieldArraysForm from './FieldArraysForm'; 3 | import {Values} from 'redux-form-website-template' 4 | 5 | class FieldArray extends Component { 6 | onSubmit = (value) => { 7 | console.log("FieldArraysForm onSubmit: "+JSON.stringify(value)); 8 | } 9 | render(){ 10 | return ( 11 |
12 |
13 |
14 |
15 |
16 |

Field Arrays Form

17 | 18 |
19 |
20 |
21 |
22 | 23 |
24 |
25 |
26 |
27 |
28 | ) 29 | } 30 | } 31 | 32 | export default FieldArray; 33 | -------------------------------------------------------------------------------- /src/components/demo/remoteSubmit/view.js: -------------------------------------------------------------------------------- 1 | import React, { Component } from 'react'; 2 | import RemoteSubmitForm from './RemoteSubmitForm'; 3 | import RemoteSubmitButton from './RemoteSubmitButton'; 4 | import {Values} from 'redux-form-website-template' 5 | 6 | class RemoteSubmit extends Component { 7 | 8 | render(){ 9 | return ( 10 |
11 |
12 |
13 |
14 |
15 |

Remote Validation Form

16 | 17 | 18 |
19 |
20 |
21 |
22 | 23 |
24 |
25 |
26 |
27 |
28 | ) 29 | } 30 | } 31 | 32 | export default RemoteSubmit; 33 | -------------------------------------------------------------------------------- /src/components/demo/wizard/WizardFormFirstPage.js: -------------------------------------------------------------------------------- 1 | import React from 'react' 2 | import { Field, reduxForm } from 'redux-form' 3 | import validate from './validate' 4 | import inputField from '../../utils/validation/inputField' 5 | 6 | const WizardFormFirstPage = props => { 7 | const { handleSubmit } = props 8 | return ( 9 |
10 | 16 | 22 |
23 | 24 |
25 | 26 | ) 27 | } 28 | 29 | export default reduxForm({ 30 | form: 'wizard', // <------ same form name 31 | destroyOnUnmount: false, // <------ preserve form data 32 | forceUnregisterOnUnmount: true, // <------ unregister fields on unmount 33 | validate 34 | })(WizardFormFirstPage) 35 | -------------------------------------------------------------------------------- /src/components/demo/normalizing/view.js: -------------------------------------------------------------------------------- 1 | import React, { Component } from 'react'; 2 | import FieldNormalizingForm from './FieldNormalizingForm'; 3 | import {Values} from 'redux-form-website-template' 4 | 5 | class Normalizing extends Component { 6 | onSubmit = (value) => { 7 | console.log("Async onSubmit: "+JSON.stringify(value)); 8 | } 9 | render(){ 10 | return ( 11 |
12 |
13 |
14 |
15 |
16 |

Normalizing Form

17 | 18 |
19 |
20 |
21 |
22 | 23 |
24 |
25 |
26 |
27 |
28 | ) 29 | } 30 | } 31 | 32 | export default Normalizing; 33 | -------------------------------------------------------------------------------- /src/components/demo/asyncValidation/view.js: -------------------------------------------------------------------------------- 1 | import React, { Component } from 'react'; 2 | import AsyncValidationForm from './AsyncValidationForm'; 3 | import {Values} from 'redux-form-website-template' 4 | 5 | class AsyncValidation extends Component { 6 | onSubmit = (value) => { 7 | console.log("Async onSubmit: "+JSON.stringify(value)); 8 | } 9 | render(){ 10 | return ( 11 |
12 |
13 |
14 |
15 |
16 |

Async Validation Form

17 | 18 |
19 |
20 |
21 |
22 | 23 |
24 |
25 |
26 |
27 |
28 | ) 29 | } 30 | } 31 | 32 | export default AsyncValidation; 33 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2017 Ted Yuen 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 | -------------------------------------------------------------------------------- /src/style/icons/weather-icons/less/icon-classes/classes-misc.less: -------------------------------------------------------------------------------- 1 | .wi-alien:before {content: @alien;} 2 | .wi-celsius:before {content: @celsius;} 3 | .wi-fahrenheit:before {content: @fahrenheit;} 4 | .wi-degrees:before {content: @degrees;} 5 | .wi-thermometer:before {content: @thermometer;} 6 | .wi-thermometer-exterior:before {content: @thermometer-exterior;} 7 | .wi-thermometer-internal:before {content: @thermometer-internal;} 8 | .wi-cloud-down:before {content: @cloud-down;} 9 | .wi-cloud-up:before {content: @cloud-up;} 10 | .wi-cloud-refresh:before {content: @cloud-refresh;} 11 | .wi-horizon:before {content: @horizon;} 12 | .wi-horizon-alt:before {content: @horizon-alt;} 13 | .wi-sunrise:before {content: @sunrise;} 14 | .wi-sunset:before {content: @sunset;} 15 | .wi-moonrise:before {content: @moonrise;} 16 | .wi-moonset:before {content: @moonset;} 17 | .wi-refresh:before {content: @refresh;} 18 | .wi-refresh-alt:before {content: @refresh-alt;} 19 | .wi-umbrella:before {content: @umbrella;} 20 | .wi-barometer:before {content: @barometer;} 21 | .wi-humidity:before {content: @humidity;} 22 | .wi-na:before {content: @na;} 23 | .wi-train:before {content: @train;} -------------------------------------------------------------------------------- /src/style/icons/weather-icons/sass/icon-classes/classes-misc.scss: -------------------------------------------------------------------------------- 1 | .wi-alien:before {content: $alien;} 2 | .wi-celsius:before {content: $celsius;} 3 | .wi-fahrenheit:before {content: $fahrenheit;} 4 | .wi-degrees:before {content: $degrees;} 5 | .wi-thermometer:before {content: $thermometer;} 6 | .wi-thermometer-exterior:before {content: $thermometer-exterior;} 7 | .wi-thermometer-internal:before {content: $thermometer-internal;} 8 | .wi-cloud-down:before {content: $cloud-down;} 9 | .wi-cloud-up:before {content: $cloud-up;} 10 | .wi-cloud-refresh:before {content: $cloud-refresh;} 11 | .wi-horizon:before {content: $horizon;} 12 | .wi-horizon-alt:before {content: $horizon-alt;} 13 | .wi-sunrise:before {content: $sunrise;} 14 | .wi-sunset:before {content: $sunset;} 15 | .wi-moonrise:before {content: $moonrise;} 16 | .wi-moonset:before {content: $moonset;} 17 | .wi-refresh:before {content: $refresh;} 18 | .wi-refresh-alt:before {content: $refresh-alt;} 19 | .wi-umbrella:before {content: $umbrella;} 20 | .wi-barometer:before {content: $barometer;} 21 | .wi-humidity:before {content: $humidity;} 22 | .wi-na:before {content: $na;} 23 | .wi-train:before {content: $train;} -------------------------------------------------------------------------------- /src/components/demo/syncValidation/view.js: -------------------------------------------------------------------------------- 1 | import React, { Component } from 'react'; 2 | import SyncValidationForm from './SyncValidationForm'; 3 | import {Values} from 'redux-form-website-template' 4 | 5 | class SyncValidation extends Component { 6 | onSubmit = (value) => { 7 | console.log("Simple onSubmit: "+JSON.stringify(value)); 8 | } 9 | render(){ 10 | return ( 11 |
12 |
13 |
14 |
15 |
16 |

Sync Validation Form

17 | 18 |
19 |
20 |
21 |
22 | 23 |
24 |
25 |
26 |
27 |
28 | ) 29 | } 30 | } 31 | 32 | export default SyncValidation; 33 | -------------------------------------------------------------------------------- /src/style/less/icons/weather-icons/less/icon-classes/classes-misc.less: -------------------------------------------------------------------------------- 1 | .wi-alien:before {content: @alien;} 2 | .wi-celsius:before {content: @celsius;} 3 | .wi-fahrenheit:before {content: @fahrenheit;} 4 | .wi-degrees:before {content: @degrees;} 5 | .wi-thermometer:before {content: @thermometer;} 6 | .wi-thermometer-exterior:before {content: @thermometer-exterior;} 7 | .wi-thermometer-internal:before {content: @thermometer-internal;} 8 | .wi-cloud-down:before {content: @cloud-down;} 9 | .wi-cloud-up:before {content: @cloud-up;} 10 | .wi-cloud-refresh:before {content: @cloud-refresh;} 11 | .wi-horizon:before {content: @horizon;} 12 | .wi-horizon-alt:before {content: @horizon-alt;} 13 | .wi-sunrise:before {content: @sunrise;} 14 | .wi-sunset:before {content: @sunset;} 15 | .wi-moonrise:before {content: @moonrise;} 16 | .wi-moonset:before {content: @moonset;} 17 | .wi-refresh:before {content: @refresh;} 18 | .wi-refresh-alt:before {content: @refresh-alt;} 19 | .wi-umbrella:before {content: @umbrella;} 20 | .wi-barometer:before {content: @barometer;} 21 | .wi-humidity:before {content: @humidity;} 22 | .wi-na:before {content: @na;} 23 | .wi-train:before {content: @train;} -------------------------------------------------------------------------------- /src/style/less/icons/weather-icons/sass/icon-classes/classes-misc.scss: -------------------------------------------------------------------------------- 1 | .wi-alien:before {content: $alien;} 2 | .wi-celsius:before {content: $celsius;} 3 | .wi-fahrenheit:before {content: $fahrenheit;} 4 | .wi-degrees:before {content: $degrees;} 5 | .wi-thermometer:before {content: $thermometer;} 6 | .wi-thermometer-exterior:before {content: $thermometer-exterior;} 7 | .wi-thermometer-internal:before {content: $thermometer-internal;} 8 | .wi-cloud-down:before {content: $cloud-down;} 9 | .wi-cloud-up:before {content: $cloud-up;} 10 | .wi-cloud-refresh:before {content: $cloud-refresh;} 11 | .wi-horizon:before {content: $horizon;} 12 | .wi-horizon-alt:before {content: $horizon-alt;} 13 | .wi-sunrise:before {content: $sunrise;} 14 | .wi-sunset:before {content: $sunset;} 15 | .wi-moonrise:before {content: $moonrise;} 16 | .wi-moonset:before {content: $moonset;} 17 | .wi-refresh:before {content: $refresh;} 18 | .wi-refresh-alt:before {content: $refresh-alt;} 19 | .wi-umbrella:before {content: $umbrella;} 20 | .wi-barometer:before {content: $barometer;} 21 | .wi-humidity:before {content: $humidity;} 22 | .wi-na:before {content: $na;} 23 | .wi-train:before {content: $train;} -------------------------------------------------------------------------------- /src/components/demo/fieldArrays/renderHobbies.js: -------------------------------------------------------------------------------- 1 | import React from 'react'; 2 | import { Field } from 'redux-form' 3 | import inputField from '../../utils/validation/inputField'; 4 | 5 | const renderHobbies = ({ fields, meta: { error } }) => ( 6 |
    7 |
  • 8 | 9 |
  • 10 | {fields.map((hobby, index) => ( 11 |
  • 12 |
    13 | Member #{index + 1} 14 | 17 |
    18 | 24 |
  • 25 | ))} 26 | {error &&
  • {error}
  • } 27 |
28 | ) 29 | 30 | export default renderHobbies; 31 | -------------------------------------------------------------------------------- /src/components/demo/submitValidation/view.js: -------------------------------------------------------------------------------- 1 | import React, { Component } from 'react'; 2 | import SubmitValidationForm from './SubmitValidationForm'; 3 | import {Values} from 'redux-form-website-template' 4 | 5 | class SubmitValidation extends Component { 6 | onSubmit = (value) => { 7 | console.log("Submit onSubmit: "+JSON.stringify(value)); 8 | } 9 | render(){ 10 | return ( 11 |
12 |
13 |
14 |
15 |
16 |

Submit Validation Form

17 | 18 |
19 |
20 |
21 |
22 | 23 |
24 |
25 |
26 |
27 |
28 | ) 29 | } 30 | } 31 | 32 | export default SubmitValidation; 33 | -------------------------------------------------------------------------------- /src/router/MainRouter.js: -------------------------------------------------------------------------------- 1 | import React from 'react' 2 | import {Route} from 'react-router-dom' 3 | 4 | import '../style/node/bootstrap.min.css' 5 | import '../style/node/jquery.toast.min.css' 6 | import '../style/node/metisMenu.min.css' 7 | import '../style/pixel/animate.css' 8 | import '../style/pixel/style.css' 9 | import '../style/pixel/colors/purple.css' 10 | import '../style/node/bootstrap-datepicker.min.css' 11 | import '../style/node/dropify.min.css' 12 | import '../style/node/morris.css' 13 | import '../style/node/wizard.css' 14 | import '../style/node/dropzone.css' 15 | import '../style/node/magnific-popup.css' 16 | import '../style/node/multi-select.css' 17 | 18 | import RouteWithSubRoutes from './RouteWithSubRoutes'; 19 | import routes from './routeConfig'; 20 | import RouteRoot from '../components/common/content/RouteRoot'; 21 | 22 | class MainRouter extends React.Component { 23 | 24 | render() { 25 | return( 26 |
27 | 28 | {routes.map((route, i) => ( 29 | 30 | ))} 31 |
32 | ) 33 | } 34 | } 35 | 36 | export { MainRouter }; 37 | -------------------------------------------------------------------------------- /src/components/demo/initializeFromState/view.js: -------------------------------------------------------------------------------- 1 | import React, { Component } from 'react'; 2 | import InitializeFromStateForm from './InitializeFromStateForm'; 3 | import {Values} from 'redux-form-website-template' 4 | 5 | class InitializeFromState extends Component { 6 | onSubmit = (value) => { 7 | console.log("Async onSubmit: "+JSON.stringify(value)); 8 | } 9 | render(){ 10 | return ( 11 |
12 |
13 |
14 |
15 |
16 |

Initialize From State Form

17 | 18 |
19 |
20 |
21 |
22 | 23 |
24 |
25 |
26 |
27 |
28 | ) 29 | } 30 | } 31 | 32 | export default InitializeFromState; 33 | -------------------------------------------------------------------------------- /src/components/demo/selectingFormValues/view.js: -------------------------------------------------------------------------------- 1 | import React, { Component } from 'react'; 2 | import SelectingFormValuesForm from './SelectingFormValuesForm'; 3 | import {Values} from 'redux-form-website-template' 4 | 5 | class SelectingFormValues extends Component { 6 | onSubmit = (value) => { 7 | console.log("Async onSubmit: "+JSON.stringify(value)); 8 | } 9 | render(){ 10 | return ( 11 |
12 |
13 |
14 |
15 |
16 |

Selecting Form Values Form

17 | 18 |
19 |
20 |
21 |
22 | 23 |
24 |
25 |
26 |
27 |
28 | ) 29 | } 30 | } 31 | 32 | export default SelectingFormValues; 33 | -------------------------------------------------------------------------------- /src/components/demo/fieldLevelValidation/view.js: -------------------------------------------------------------------------------- 1 | import React, { Component } from 'react'; 2 | import FieldLevelValidationForm from './FieldLevelValidationForm'; 3 | import {Values} from 'redux-form-website-template' 4 | 5 | class FieldLevelValidation extends Component { 6 | onSubmit = (value) => { 7 | console.log("Field Level onSubmit: "+JSON.stringify(value)); 8 | } 9 | render(){ 10 | return ( 11 |
12 |
13 |
14 |
15 |
16 |

Field-Level Validation Form

17 | 18 |
19 |
20 |
21 |
22 | 23 |
24 |
25 |
26 |
27 |
28 | ) 29 | } 30 | } 31 | 32 | export default FieldLevelValidation; 33 | -------------------------------------------------------------------------------- /src/style/icons/weather-icons/less/mappings/wi-forecast-io.less: -------------------------------------------------------------------------------- 1 | .@{wi-css-prefix}-forecast-io-clear-day:before { content: @day-sunny ; } 2 | .@{wi-css-prefix}-forecast-io-clear-night:before { content: @night-clear ; } 3 | .@{wi-css-prefix}-forecast-io-rain:before { content: @rain ; } 4 | .@{wi-css-prefix}-forecast-io-snow:before { content: @snow ; } 5 | .@{wi-css-prefix}-forecast-io-sleet:before { content: @sleet ; } 6 | .@{wi-css-prefix}-forecast-io-wind:before { content: @strong-wind ; } 7 | .@{wi-css-prefix}-forecast-io-fog:before { content: @fog ; } 8 | .@{wi-css-prefix}-forecast-io-cloudy:before { content: @cloudy ; } 9 | .@{wi-css-prefix}-forecast-io-partly-cloudy-day:before { content: @day-cloudy ; } 10 | .@{wi-css-prefix}-forecast-io-partly-cloudy-night:before { content: @night-cloudy ; } 11 | .@{wi-css-prefix}-forecast-io-hail:before { content: @hail ; } 12 | .@{wi-css-prefix}-forecast-io-thunderstorm:before { content: @thunderstorm ; } 13 | .@{wi-css-prefix}-forecast-io-tornado:before { content: @tornado ; } -------------------------------------------------------------------------------- /src/style/less/icons/weather-icons/less/mappings/wi-forecast-io.less: -------------------------------------------------------------------------------- 1 | .@{wi-css-prefix}-forecast-io-clear-day:before { content: @day-sunny ; } 2 | .@{wi-css-prefix}-forecast-io-clear-night:before { content: @night-clear ; } 3 | .@{wi-css-prefix}-forecast-io-rain:before { content: @rain ; } 4 | .@{wi-css-prefix}-forecast-io-snow:before { content: @snow ; } 5 | .@{wi-css-prefix}-forecast-io-sleet:before { content: @sleet ; } 6 | .@{wi-css-prefix}-forecast-io-wind:before { content: @strong-wind ; } 7 | .@{wi-css-prefix}-forecast-io-fog:before { content: @fog ; } 8 | .@{wi-css-prefix}-forecast-io-cloudy:before { content: @cloudy ; } 9 | .@{wi-css-prefix}-forecast-io-partly-cloudy-day:before { content: @day-cloudy ; } 10 | .@{wi-css-prefix}-forecast-io-partly-cloudy-night:before { content: @night-cloudy ; } 11 | .@{wi-css-prefix}-forecast-io-hail:before { content: @hail ; } 12 | .@{wi-css-prefix}-forecast-io-thunderstorm:before { content: @thunderstorm ; } 13 | .@{wi-css-prefix}-forecast-io-tornado:before { content: @tornado ; } -------------------------------------------------------------------------------- /src/style/icons/weather-icons/sass/mappings/wi-forecast-io.scss: -------------------------------------------------------------------------------- 1 | .#{$wi-css-prefix}-forecast-io-clear-day:before { content: $day-sunny ; } 2 | .#{$wi-css-prefix}-forecast-io-clear-night:before { content: $night-clear ; } 3 | .#{$wi-css-prefix}-forecast-io-rain:before { content: $rain ; } 4 | .#{$wi-css-prefix}-forecast-io-snow:before { content: $snow ; } 5 | .#{$wi-css-prefix}-forecast-io-sleet:before { content: $sleet ; } 6 | .#{$wi-css-prefix}-forecast-io-wind:before { content: $strong-wind ; } 7 | .#{$wi-css-prefix}-forecast-io-fog:before { content: $fog ; } 8 | .#{$wi-css-prefix}-forecast-io-cloudy:before { content: $cloudy ; } 9 | .#{$wi-css-prefix}-forecast-io-partly-cloudy-day:before { content: $day-cloudy ; } 10 | .#{$wi-css-prefix}-forecast-io-partly-cloudy-night:before { content: $night-cloudy ; } 11 | .#{$wi-css-prefix}-forecast-io-hail:before { content: $hail ; } 12 | .#{$wi-css-prefix}-forecast-io-thunderstorm:before { content: $thunderstorm ; } 13 | .#{$wi-css-prefix}-forecast-io-tornado:before { content: $tornado ; } -------------------------------------------------------------------------------- /src/components/demo/submitValidation/SubmitValidationForm.js: -------------------------------------------------------------------------------- 1 | import React from 'react'; 2 | import { Field, reduxForm } from 'redux-form'; 3 | import inputField from '../../utils/validation/inputField'; 4 | import submit from './submit'; 5 | 6 | const SubmitValidationForm = props => { 7 | const { handleSubmit, pristine, reset, submitting,error } = props; 8 | return( 9 |
10 | 11 | 12 | {error && {error}} 13 |
14 | 15 | 18 |
19 |
20 | ) 21 | } 22 | 23 | export default reduxForm({ 24 | form: 'submitValidationForm', // a unique identifier for this form 25 | })(SubmitValidationForm) 26 | -------------------------------------------------------------------------------- /src/style/less/icons/weather-icons/sass/mappings/wi-forecast-io.scss: -------------------------------------------------------------------------------- 1 | .#{$wi-css-prefix}-forecast-io-clear-day:before { content: $day-sunny ; } 2 | .#{$wi-css-prefix}-forecast-io-clear-night:before { content: $night-clear ; } 3 | .#{$wi-css-prefix}-forecast-io-rain:before { content: $rain ; } 4 | .#{$wi-css-prefix}-forecast-io-snow:before { content: $snow ; } 5 | .#{$wi-css-prefix}-forecast-io-sleet:before { content: $sleet ; } 6 | .#{$wi-css-prefix}-forecast-io-wind:before { content: $strong-wind ; } 7 | .#{$wi-css-prefix}-forecast-io-fog:before { content: $fog ; } 8 | .#{$wi-css-prefix}-forecast-io-cloudy:before { content: $cloudy ; } 9 | .#{$wi-css-prefix}-forecast-io-partly-cloudy-day:before { content: $day-cloudy ; } 10 | .#{$wi-css-prefix}-forecast-io-partly-cloudy-night:before { content: $night-cloudy ; } 11 | .#{$wi-css-prefix}-forecast-io-hail:before { content: $hail ; } 12 | .#{$wi-css-prefix}-forecast-io-thunderstorm:before { content: $thunderstorm ; } 13 | .#{$wi-css-prefix}-forecast-io-tornado:before { content: $tornado ; } -------------------------------------------------------------------------------- /src/style/pixel/spinners.css: -------------------------------------------------------------------------------- 1 | .preloader { 2 | width: 100%; 3 | height: 31px; 4 | text-align: center; 5 | } 6 | 7 | .cssload-speeding-wheel { 8 | width: 31px; 9 | height: 31px; 10 | margin: 0 auto; 11 | border: 2px solid rgba(97,100,193,0.98); 12 | border-radius: 50%; 13 | border-left-color: transparent; 14 | border-right-color: transparent; 15 | animation: cssload-spin 425ms infinite linear; 16 | -o-animation: cssload-spin 425ms infinite linear; 17 | -ms-animation: cssload-spin 425ms infinite linear; 18 | -webkit-animation: cssload-spin 425ms infinite linear; 19 | -moz-animation: cssload-spin 425ms infinite linear; 20 | } 21 | 22 | 23 | 24 | @keyframes cssload-spin { 25 | 100%{ transform: rotate(360deg); transform: rotate(360deg); } 26 | } 27 | 28 | @-o-keyframes cssload-spin { 29 | 100%{ -o-transform: rotate(360deg); transform: rotate(360deg); } 30 | } 31 | 32 | @-ms-keyframes cssload-spin { 33 | 100%{ -ms-transform: rotate(360deg); transform: rotate(360deg); } 34 | } 35 | 36 | @-webkit-keyframes cssload-spin { 37 | 100%{ -webkit-transform: rotate(360deg); transform: rotate(360deg); } 38 | } 39 | 40 | @-moz-keyframes cssload-spin { 41 | 100%{ -moz-transform: rotate(360deg); transform: rotate(360deg); } 42 | } 43 | -------------------------------------------------------------------------------- /src/style/icons/weather-icons/sass/weather-icons.scss: -------------------------------------------------------------------------------- 1 | /*! 2 | * Weather Icons 2.0 3 | * Updated August 1, 2015 4 | * Weather themed icons for Bootstrap 5 | * Author - Erik Flowers - erik@helloerik.com 6 | * Email: erik@helloerik.com 7 | * Twitter: http://twitter.com/Erik_UX 8 | * ------------------------------------------------------------------------------ 9 | * Maintained at http://erikflowers.github.io/weather-icons 10 | * 11 | * License 12 | * ------------------------------------------------------------------------------ 13 | * - Font licensed under SIL OFL 1.1 - 14 | * http://scripts.sil.org/OFL 15 | * - CSS, LESS and SCSS are licensed under MIT License - 16 | * http://opensource.org/licenses/mit-license.html 17 | * - Documentation licensed under CC BY 3.0 - 18 | * http://creativecommons.org/licenses/by/3.0/ 19 | * - Inspired by and works great as a companion with Font Awesome 20 | * "Font Awesome by Dave Gandy - http://fontawesome.io" 21 | */ 22 | 23 | @import 'weather-icons-core'; 24 | @import 'weather-icons-variables'; 25 | @import 'weather-icons-classes'; 26 | // Mappings to various APIs 27 | @import "mappings/wi-yahoo"; 28 | @import "mappings/wi-forecast-io"; 29 | @import "mappings/wi-wmo4680"; 30 | @import "mappings/wi-owm"; 31 | -------------------------------------------------------------------------------- /src/style/icons/weather-icons/sass/weather-icons.min.scss: -------------------------------------------------------------------------------- 1 | /*! 2 | * Weather Icons 2.0 3 | * Updated August 1, 2015 4 | * Weather themed icons for Bootstrap 5 | * Author - Erik Flowers - erik@helloerik.com 6 | * Email: erik@helloerik.com 7 | * Twitter: http://twitter.com/Erik_UX 8 | * ------------------------------------------------------------------------------ 9 | * Maintained at http://erikflowers.github.io/weather-icons 10 | * 11 | * License 12 | * ------------------------------------------------------------------------------ 13 | * - Font licensed under SIL OFL 1.1 - 14 | * http://scripts.sil.org/OFL 15 | * - CSS, SCSS and LESS are licensed under MIT License - 16 | * http://opensource.org/licenses/mit-license.html 17 | * - Documentation licensed under CC BY 3.0 - 18 | * http://creativecommons.org/licenses/by/3.0/ 19 | * - Inspired by and works great as a companion with Font Awesome 20 | * "Font Awesome by Dave Gandy - http://fontawesome.io" 21 | */ 22 | 23 | @import 'weather-icons-core'; 24 | @import 'weather-icons-variables'; 25 | @import 'weather-icons-classes'; 26 | // Mappings to various APIs 27 | @import "mappings/wi-yahoo"; 28 | @import "mappings/wi-forecast-io"; 29 | @import "mappings/wi-wmo4680"; 30 | @import "mappings/wi-owm"; 31 | -------------------------------------------------------------------------------- /src/style/icons/weather-icons/less/weather-icons.less: -------------------------------------------------------------------------------- 1 | /*! 2 | * Weather Icons 2.0 3 | * Updated August 1, 2015 4 | * Weather themed icons for Bootstrap 5 | * Author - Erik Flowers - erik@helloerik.com 6 | * Email: erik@helloerik.com 7 | * Twitter: http://twitter.com/Erik_UX 8 | * ------------------------------------------------------------------------------ 9 | * Maintained at http://erikflowers.github.io/weather-icons 10 | * 11 | * License 12 | * ------------------------------------------------------------------------------ 13 | * - Font licensed under SIL OFL 1.1 - 14 | * http://scripts.sil.org/OFL 15 | * - CSS, SCSS and LESS are licensed under MIT License - 16 | * http://opensource.org/licenses/mit-license.html 17 | * - Documentation licensed under CC BY 3.0 - 18 | * http://creativecommons.org/licenses/by/3.0/ 19 | * - Inspired by and works great as a companion with Font Awesome 20 | * "Font Awesome by Dave Gandy - http://fontawesome.io" 21 | */ 22 | 23 | @import "weather-icons-core.less"; 24 | @import "weather-icons-variables.less"; 25 | @import "weather-icons-classes.less"; 26 | // Mappings to various APIs 27 | @import "mappings/wi-yahoo.less"; 28 | @import "mappings/wi-forecast-io.less"; 29 | @import "mappings/wi-wmo4680.less"; 30 | @import "mappings/wi-owm.less"; 31 | -------------------------------------------------------------------------------- /src/style/icons/weather-icons/less/weather-icons.min.less: -------------------------------------------------------------------------------- 1 | /*! 2 | * Weather Icons 2.0 3 | * Updated August 1, 2015 4 | * Weather themed icons for Bootstrap 5 | * Author - Erik Flowers - erik@helloerik.com 6 | * Email: erik@helloerik.com 7 | * Twitter: http://twitter.com/Erik_UX 8 | * ------------------------------------------------------------------------------ 9 | * Maintained at http://erikflowers.github.io/weather-icons 10 | * 11 | * License 12 | * ------------------------------------------------------------------------------ 13 | * - Font licensed under SIL OFL 1.1 - 14 | * http://scripts.sil.org/OFL 15 | * - CSS, SCSS and LESS are licensed under MIT License - 16 | * http://opensource.org/licenses/mit-license.html 17 | * - Documentation licensed under CC BY 3.0 - 18 | * http://creativecommons.org/licenses/by/3.0/ 19 | * - Inspired by and works great as a companion with Font Awesome 20 | * "Font Awesome by Dave Gandy - http://fontawesome.io" 21 | */ 22 | 23 | @import "weather-icons-core.less"; 24 | @import "weather-icons-variables.less"; 25 | @import "weather-icons-classes.less"; 26 | // Mappings to various APIs 27 | @import "mappings/wi-yahoo.less"; 28 | @import "mappings/wi-forecast-io.less"; 29 | @import "mappings/wi-wmo4680.less"; 30 | @import "mappings/wi-owm.less"; -------------------------------------------------------------------------------- /src/style/less/icons/weather-icons/sass/weather-icons.scss: -------------------------------------------------------------------------------- 1 | /*! 2 | * Weather Icons 2.0 3 | * Updated August 1, 2015 4 | * Weather themed icons for Bootstrap 5 | * Author - Erik Flowers - erik@helloerik.com 6 | * Email: erik@helloerik.com 7 | * Twitter: http://twitter.com/Erik_UX 8 | * ------------------------------------------------------------------------------ 9 | * Maintained at http://erikflowers.github.io/weather-icons 10 | * 11 | * License 12 | * ------------------------------------------------------------------------------ 13 | * - Font licensed under SIL OFL 1.1 - 14 | * http://scripts.sil.org/OFL 15 | * - CSS, LESS and SCSS are licensed under MIT License - 16 | * http://opensource.org/licenses/mit-license.html 17 | * - Documentation licensed under CC BY 3.0 - 18 | * http://creativecommons.org/licenses/by/3.0/ 19 | * - Inspired by and works great as a companion with Font Awesome 20 | * "Font Awesome by Dave Gandy - http://fontawesome.io" 21 | */ 22 | 23 | @import 'weather-icons-core.scss'; 24 | @import 'weather-icons-variables.scss'; 25 | @import 'weather-icons-classes.scss'; 26 | // Mappings to various APIs 27 | @import "mappings/wi-yahoo.scss"; 28 | @import "mappings/wi-forecast-io.scss"; 29 | @import "mappings/wi-wmo4680.scss"; 30 | @import "mappings/wi-owm.scss"; -------------------------------------------------------------------------------- /src/style/less/icons/weather-icons/less/weather-icons.less: -------------------------------------------------------------------------------- 1 | /*! 2 | * Weather Icons 2.0 3 | * Updated August 1, 2015 4 | * Weather themed icons for Bootstrap 5 | * Author - Erik Flowers - erik@helloerik.com 6 | * Email: erik@helloerik.com 7 | * Twitter: http://twitter.com/Erik_UX 8 | * ------------------------------------------------------------------------------ 9 | * Maintained at http://erikflowers.github.io/weather-icons 10 | * 11 | * License 12 | * ------------------------------------------------------------------------------ 13 | * - Font licensed under SIL OFL 1.1 - 14 | * http://scripts.sil.org/OFL 15 | * - CSS, SCSS and LESS are licensed under MIT License - 16 | * http://opensource.org/licenses/mit-license.html 17 | * - Documentation licensed under CC BY 3.0 - 18 | * http://creativecommons.org/licenses/by/3.0/ 19 | * - Inspired by and works great as a companion with Font Awesome 20 | * "Font Awesome by Dave Gandy - http://fontawesome.io" 21 | */ 22 | 23 | @import "weather-icons-core.less"; 24 | @import "weather-icons-variables.less"; 25 | @import "weather-icons-classes.less"; 26 | // Mappings to various APIs 27 | @import "mappings/wi-yahoo.less"; 28 | @import "mappings/wi-forecast-io.less"; 29 | @import "mappings/wi-wmo4680.less"; 30 | @import "mappings/wi-owm.less"; 31 | -------------------------------------------------------------------------------- /src/style/less/icons/weather-icons/less/weather-icons.min.less: -------------------------------------------------------------------------------- 1 | /*! 2 | * Weather Icons 2.0 3 | * Updated August 1, 2015 4 | * Weather themed icons for Bootstrap 5 | * Author - Erik Flowers - erik@helloerik.com 6 | * Email: erik@helloerik.com 7 | * Twitter: http://twitter.com/Erik_UX 8 | * ------------------------------------------------------------------------------ 9 | * Maintained at http://erikflowers.github.io/weather-icons 10 | * 11 | * License 12 | * ------------------------------------------------------------------------------ 13 | * - Font licensed under SIL OFL 1.1 - 14 | * http://scripts.sil.org/OFL 15 | * - CSS, SCSS and LESS are licensed under MIT License - 16 | * http://opensource.org/licenses/mit-license.html 17 | * - Documentation licensed under CC BY 3.0 - 18 | * http://creativecommons.org/licenses/by/3.0/ 19 | * - Inspired by and works great as a companion with Font Awesome 20 | * "Font Awesome by Dave Gandy - http://fontawesome.io" 21 | */ 22 | 23 | @import "weather-icons-core.less"; 24 | @import "weather-icons-variables.less"; 25 | @import "weather-icons-classes.less"; 26 | // Mappings to various APIs 27 | @import "mappings/wi-yahoo.less"; 28 | @import "mappings/wi-forecast-io.less"; 29 | @import "mappings/wi-wmo4680.less"; 30 | @import "mappings/wi-owm.less"; -------------------------------------------------------------------------------- /src/style/less/icons/weather-icons/sass/weather-icons.min.scss: -------------------------------------------------------------------------------- 1 | /*! 2 | * Weather Icons 2.0 3 | * Updated August 1, 2015 4 | * Weather themed icons for Bootstrap 5 | * Author - Erik Flowers - erik@helloerik.com 6 | * Email: erik@helloerik.com 7 | * Twitter: http://twitter.com/Erik_UX 8 | * ------------------------------------------------------------------------------ 9 | * Maintained at http://erikflowers.github.io/weather-icons 10 | * 11 | * License 12 | * ------------------------------------------------------------------------------ 13 | * - Font licensed under SIL OFL 1.1 - 14 | * http://scripts.sil.org/OFL 15 | * - CSS, SCSS and LESS are licensed under MIT License - 16 | * http://opensource.org/licenses/mit-license.html 17 | * - Documentation licensed under CC BY 3.0 - 18 | * http://creativecommons.org/licenses/by/3.0/ 19 | * - Inspired by and works great as a companion with Font Awesome 20 | * "Font Awesome by Dave Gandy - http://fontawesome.io" 21 | */ 22 | 23 | @import 'weather-icons-core.scss'; 24 | @import 'weather-icons-variables.scss'; 25 | @import 'weather-icons-classes.scss'; 26 | // Mappings to various APIs 27 | @import "mappings/wi-yahoo.scss"; 28 | @import "mappings/wi-forecast-io.scss"; 29 | @import "mappings/wi-wmo4680.scss"; 30 | @import "mappings/wi-owm.scss"; -------------------------------------------------------------------------------- /src/style/pixel/variables.css: -------------------------------------------------------------------------------- 1 | /*@import 'https://fonts.googleapis.com/css?family=Rubik:300,400,500,700,900';*/ 2 | 3 | .preloader { 4 | width: 100%; 5 | height: 100%; 6 | top: 0; 7 | position: fixed; 8 | z-index: 99999; 9 | background: #fff 10 | } 11 | 12 | .preloader .cssload-speeding-wheel { 13 | position: absolute; 14 | top: calc(50% - 3.5px); 15 | left: calc(50% - 3.5px) 16 | } 17 | 18 | @font-face { 19 | font-family:'Poppins';font-style:normal;font-weight:400;src:url(https://fonts.gstatic.com/s/poppins/v1/2fCJtbhSlhNNa6S2xlh9GyEAvth_LlrfE80CYdSH47w.woff2) format('woff2');unicode-range:U+02BC,U+0900-097F,U+1CD0-1CF6,U+1CF8-1CF9,U+200B-200D,U+20A8,U+20B9,U+25CC,U+A830-A839,U+A8E0-A8FB 20 | } 21 | 22 | @font-face { 23 | font-family:'Poppins';font-style:normal;font-weight:400;src:url(https://fonts.gstatic.com/s/poppins/v1/UGh2YG8gx86rRGiAZYIbVyEAvth_LlrfE80CYdSH47w.woff2) format('woff2');unicode-range:U+0100-024F,U+1E00-1EFF,U+20A0-20AB,U+20AD-20CF,U+2C60-2C7F,U+A720-A7FF 24 | } 25 | 26 | @font-face { 27 | font-family:'Poppins';font-style:normal;font-weight:400;src:url(https://fonts.gstatic.com/s/poppins/v1/yQWaOD4iNU5NTY0apN-qj_k_vArhqVIZ0nv9q090hN8.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2212,U+2215,U+E0FF,U+EFFD,U+F000 28 | } 29 | -------------------------------------------------------------------------------- /src/components/demo/asyncValidation/AsyncValidationForm.js: -------------------------------------------------------------------------------- 1 | import React from 'react'; 2 | import { Field, reduxForm } from 'redux-form'; 3 | import inputField from '../../utils/validation/inputField'; 4 | import asyncValidate from './asyncValidate'; 5 | import validate from './validate' 6 | 7 | const AsyncValidationForm = props => { 8 | const { handleSubmit, pristine, reset, submitting,error } = props; 9 | return( 10 |
11 | 12 | 13 | {error && {error}} 14 |
15 | 16 | 19 |
20 |
21 | ) 22 | } 23 | 24 | export default reduxForm({ 25 | form: 'asyncValidationForm', // a unique identifier for this form 26 | validate, 27 | asyncValidate, 28 | asyncBlurFields: ['username'] 29 | })(AsyncValidationForm) 30 | -------------------------------------------------------------------------------- /src/style/node/wizard.css: -------------------------------------------------------------------------------- 1 | .hide { 2 | display: none; 3 | } 4 | .wizard-pane { 5 | position: absolute; 6 | opacity: 0; 7 | top: 0; 8 | visibility: hidden; 9 | transition: opacity 0.2s ease; 10 | } 11 | .wizard-pane.active { 12 | position: relative; 13 | visibility: visible; 14 | opacity: 1; 15 | } 16 | .wizard-pane.activing { 17 | visibility: visible; 18 | } 19 | .wizard-content { 20 | position: relative; 21 | padding: 0; 22 | transition: height 0.2s ease; 23 | } 24 | .current { 25 | color: blue !important; 26 | } 27 | .error { 28 | color: red !important; 29 | } 30 | .done { 31 | color: green !important; 32 | } 33 | .disabled { 34 | cursor: not-allowed !important; 35 | } 36 | .wizard-pane { 37 | padding: 10px; 38 | } 39 | .wizard-content { 40 | border: 1px solid #aaa; 41 | } 42 | .wizard-steps { 43 | padding: 0; 44 | margin: 0; 45 | list-style: none; 46 | } 47 | .wizard-steps > li { 48 | display: inline-block; 49 | padding: 5px 10px; 50 | cursor: pointer; 51 | color: #666; 52 | } 53 | .wizard-steps > li:hover { 54 | color: #333; 55 | } 56 | .wizard-buttons { 57 | margin-top: 10px; 58 | } 59 | .wizard-buttons > a { 60 | margin-right: 5px; 61 | padding: 5px 10px; 62 | border: 1px solid #aaa; 63 | border-radius: 20px; 64 | } 65 | .wizard-buttons > a.disabled { 66 | color: #aaa; 67 | border-color: #aaa; 68 | } 69 | -------------------------------------------------------------------------------- /src/components/demo/simple/view.js: -------------------------------------------------------------------------------- 1 | import React, {Component} from 'react'; 2 | import SimpleForm from './SimpleForm'; 3 | import {Values} from 'redux-form-website-template' 4 | 5 | class Simple extends Component { 6 | onSubmit = (value) => { 7 | if(value.inputfile1 !== undefined){ 8 | console.log("inputfile1"); 9 | console.log(value.inputfile1); 10 | } 11 | if(value.inputfile2 !== undefined){ 12 | console.log("inputfile2"); 13 | console.log("-------------"); 14 | for (let file of value.inputfile2) { 15 | console.log(file); 16 | } 17 | console.log("-------------"); 18 | } 19 | console.log("Simple onSubmit: "+JSON.stringify(value)); 20 | } 21 | render(){ 22 | return ( 23 |
24 |
25 |
26 |
27 |
28 |

Simple Form

29 | 30 |
31 |
32 |
33 |
34 | 35 |
36 |
37 |
38 |
39 |
40 | ) 41 | } 42 | } 43 | 44 | export default Simple; 45 | -------------------------------------------------------------------------------- /src/components/demo/wizard/WizardForm.js: -------------------------------------------------------------------------------- 1 | import React, { Component } from 'react' 2 | import PropTypes from 'prop-types' 3 | import WizardFormFirstPage from './WizardFormFirstPage' 4 | import WizardFormSecondPage from './WizardFormSecondPage' 5 | import WizardFormThirdPage from './WizardFormThirdPage' 6 | 7 | class WizardForm extends Component { 8 | constructor(props) { 9 | super(props) 10 | this.nextPage = this.nextPage.bind(this) 11 | this.previousPage = this.previousPage.bind(this) 12 | this.state = { 13 | page: 1 14 | } 15 | } 16 | nextPage() { 17 | this.setState({ page: this.state.page + 1 }) 18 | } 19 | 20 | previousPage() { 21 | this.setState({ page: this.state.page - 1 }) 22 | } 23 | 24 | render() { 25 | const { onSubmit } = this.props 26 | const { page } = this.state 27 | return ( 28 |
29 | {page === 1 && } 30 | {page === 2 && 31 | } 35 | {page === 3 && 36 | } 40 |
41 | ) 42 | } 43 | } 44 | 45 | WizardForm.propTypes = { 46 | onSubmit: PropTypes.func.isRequired 47 | } 48 | 49 | export default WizardForm 50 | -------------------------------------------------------------------------------- /src/style/icons/weather-icons/less/icon-classes/classes-day.less: -------------------------------------------------------------------------------- 1 | .wi-day-sunny:before {content: @day-sunny;} 2 | .wi-day-cloudy:before {content: @day-cloudy;} 3 | .wi-day-cloudy-gusts:before {content: @day-cloudy-gusts;} 4 | .wi-day-cloudy-windy:before {content: @day-cloudy-windy;} 5 | .wi-day-fog:before {content: @day-fog;} 6 | .wi-day-hail:before {content: @day-hail;} 7 | .wi-day-haze:before {content: @day-haze;} 8 | .wi-day-lightning:before {content: @day-lightning;} 9 | .wi-day-rain:before {content: @day-rain;} 10 | .wi-day-rain-mix:before {content: @day-rain-mix;} 11 | .wi-day-rain-wind:before {content: @day-rain-wind;} 12 | .wi-day-showers:before {content: @day-showers;} 13 | .wi-day-sleet:before {content: @day-sleet;} 14 | .wi-day-sleet-storm:before {content: @day-sleet-storm;} 15 | .wi-day-snow:before {content: @day-snow;} 16 | .wi-day-snow-thunderstorm:before {content: @day-snow-thunderstorm;} 17 | .wi-day-snow-wind:before {content: @day-snow-wind;} 18 | .wi-day-sprinkle:before {content: @day-sprinkle;} 19 | .wi-day-storm-showers:before {content: @day-storm-showers;} 20 | .wi-day-sunny-overcast:before {content: @day-sunny-overcast;} 21 | .wi-day-thunderstorm:before {content: @day-thunderstorm;} 22 | .wi-day-windy:before {content: @day-windy;} 23 | .wi-solar-eclipse:before {content: @solar-eclipse;} 24 | .wi-hot:before {content: @hot;} 25 | .wi-day-cloudy-high:before {content: @day-cloudy-high;} 26 | .wi-day-light-wind:before {content: @day-light-wind;} -------------------------------------------------------------------------------- /src/style/icons/weather-icons/sass/icon-classes/classes-day.scss: -------------------------------------------------------------------------------- 1 | .wi-day-sunny:before {content: $day-sunny;} 2 | .wi-day-cloudy:before {content: $day-cloudy;} 3 | .wi-day-cloudy-gusts:before {content: $day-cloudy-gusts;} 4 | .wi-day-cloudy-windy:before {content: $day-cloudy-windy;} 5 | .wi-day-fog:before {content: $day-fog;} 6 | .wi-day-hail:before {content: $day-hail;} 7 | .wi-day-haze:before {content: $day-haze;} 8 | .wi-day-lightning:before {content: $day-lightning;} 9 | .wi-day-rain:before {content: $day-rain;} 10 | .wi-day-rain-mix:before {content: $day-rain-mix;} 11 | .wi-day-rain-wind:before {content: $day-rain-wind;} 12 | .wi-day-showers:before {content: $day-showers;} 13 | .wi-day-sleet:before {content: $day-sleet;} 14 | .wi-day-sleet-storm:before {content: $day-sleet-storm;} 15 | .wi-day-snow:before {content: $day-snow;} 16 | .wi-day-snow-thunderstorm:before {content: $day-snow-thunderstorm;} 17 | .wi-day-snow-wind:before {content: $day-snow-wind;} 18 | .wi-day-sprinkle:before {content: $day-sprinkle;} 19 | .wi-day-storm-showers:before {content: $day-storm-showers;} 20 | .wi-day-sunny-overcast:before {content: $day-sunny-overcast;} 21 | .wi-day-thunderstorm:before {content: $day-thunderstorm;} 22 | .wi-day-windy:before {content: $day-windy;} 23 | .wi-solar-eclipse:before {content: $solar-eclipse;} 24 | .wi-hot:before {content: $hot;} 25 | .wi-day-cloudy-high:before {content: $day-cloudy-high;} 26 | .wi-day-light-wind:before {content: $day-light-wind;} -------------------------------------------------------------------------------- /src/style/less/icons/weather-icons/less/icon-classes/classes-day.less: -------------------------------------------------------------------------------- 1 | .wi-day-sunny:before {content: @day-sunny;} 2 | .wi-day-cloudy:before {content: @day-cloudy;} 3 | .wi-day-cloudy-gusts:before {content: @day-cloudy-gusts;} 4 | .wi-day-cloudy-windy:before {content: @day-cloudy-windy;} 5 | .wi-day-fog:before {content: @day-fog;} 6 | .wi-day-hail:before {content: @day-hail;} 7 | .wi-day-haze:before {content: @day-haze;} 8 | .wi-day-lightning:before {content: @day-lightning;} 9 | .wi-day-rain:before {content: @day-rain;} 10 | .wi-day-rain-mix:before {content: @day-rain-mix;} 11 | .wi-day-rain-wind:before {content: @day-rain-wind;} 12 | .wi-day-showers:before {content: @day-showers;} 13 | .wi-day-sleet:before {content: @day-sleet;} 14 | .wi-day-sleet-storm:before {content: @day-sleet-storm;} 15 | .wi-day-snow:before {content: @day-snow;} 16 | .wi-day-snow-thunderstorm:before {content: @day-snow-thunderstorm;} 17 | .wi-day-snow-wind:before {content: @day-snow-wind;} 18 | .wi-day-sprinkle:before {content: @day-sprinkle;} 19 | .wi-day-storm-showers:before {content: @day-storm-showers;} 20 | .wi-day-sunny-overcast:before {content: @day-sunny-overcast;} 21 | .wi-day-thunderstorm:before {content: @day-thunderstorm;} 22 | .wi-day-windy:before {content: @day-windy;} 23 | .wi-solar-eclipse:before {content: @solar-eclipse;} 24 | .wi-hot:before {content: @hot;} 25 | .wi-day-cloudy-high:before {content: @day-cloudy-high;} 26 | .wi-day-light-wind:before {content: @day-light-wind;} -------------------------------------------------------------------------------- /src/style/less/icons/weather-icons/sass/icon-classes/classes-day.scss: -------------------------------------------------------------------------------- 1 | .wi-day-sunny:before {content: $day-sunny;} 2 | .wi-day-cloudy:before {content: $day-cloudy;} 3 | .wi-day-cloudy-gusts:before {content: $day-cloudy-gusts;} 4 | .wi-day-cloudy-windy:before {content: $day-cloudy-windy;} 5 | .wi-day-fog:before {content: $day-fog;} 6 | .wi-day-hail:before {content: $day-hail;} 7 | .wi-day-haze:before {content: $day-haze;} 8 | .wi-day-lightning:before {content: $day-lightning;} 9 | .wi-day-rain:before {content: $day-rain;} 10 | .wi-day-rain-mix:before {content: $day-rain-mix;} 11 | .wi-day-rain-wind:before {content: $day-rain-wind;} 12 | .wi-day-showers:before {content: $day-showers;} 13 | .wi-day-sleet:before {content: $day-sleet;} 14 | .wi-day-sleet-storm:before {content: $day-sleet-storm;} 15 | .wi-day-snow:before {content: $day-snow;} 16 | .wi-day-snow-thunderstorm:before {content: $day-snow-thunderstorm;} 17 | .wi-day-snow-wind:before {content: $day-snow-wind;} 18 | .wi-day-sprinkle:before {content: $day-sprinkle;} 19 | .wi-day-storm-showers:before {content: $day-storm-showers;} 20 | .wi-day-sunny-overcast:before {content: $day-sunny-overcast;} 21 | .wi-day-thunderstorm:before {content: $day-thunderstorm;} 22 | .wi-day-windy:before {content: $day-windy;} 23 | .wi-solar-eclipse:before {content: $solar-eclipse;} 24 | .wi-hot:before {content: $hot;} 25 | .wi-day-cloudy-high:before {content: $day-cloudy-high;} 26 | .wi-day-light-wind:before {content: $day-light-wind;} -------------------------------------------------------------------------------- /src/style/icons/font-awesome/scss/_extras.scss: -------------------------------------------------------------------------------- 1 | /* EXTRAS 2 | * -------------------------- */ 3 | 4 | /* Stacked and layered icon */ 5 | 6 | /* Animated rotating icon */ 7 | .#{$fa-css-prefix}-spin { 8 | -webkit-animation: spin 2s infinite linear; 9 | -moz-animation: spin 2s infinite linear; 10 | -o-animation: spin 2s infinite linear; 11 | animation: spin 2s infinite linear; 12 | } 13 | 14 | @-moz-keyframes spin { 15 | 0% { -moz-transform: rotate(0deg); } 16 | 100% { -moz-transform: rotate(359deg); } 17 | } 18 | @-webkit-keyframes spin { 19 | 0% { -webkit-transform: rotate(0deg); } 20 | 100% { -webkit-transform: rotate(359deg); } 21 | } 22 | @-o-keyframes spin { 23 | 0% { -o-transform: rotate(0deg); } 24 | 100% { -o-transform: rotate(359deg); } 25 | } 26 | @-ms-keyframes spin { 27 | 0% { -ms-transform: rotate(0deg); } 28 | 100% { -ms-transform: rotate(359deg); } 29 | } 30 | @keyframes spin { 31 | 0% { transform: rotate(0deg); } 32 | 100% { transform: rotate(359deg); } 33 | } 34 | 35 | 36 | // Icon rotations & flipping 37 | // ------------------------- 38 | 39 | .#{$fa-css-prefix}-rotate-90 { @include fa-icon-rotate(90deg, 1); } 40 | .#{$fa-css-prefix}-rotate-180 { @include fa-icon-rotate(180deg, 2); } 41 | .#{$fa-css-prefix}-rotate-270 { @include fa-icon-rotate(270deg, 3); } 42 | 43 | .#{$fa-css-prefix}-flip-horizontal { @include fa-icon-flip(-1, 1, 0); } 44 | .#{$fa-css-prefix}-flip-vertical { @include fa-icon-flip(1, -1, 2); } 45 | -------------------------------------------------------------------------------- /src/style/less/icons/font-awesome/scss/_extras.scss: -------------------------------------------------------------------------------- 1 | /* EXTRAS 2 | * -------------------------- */ 3 | 4 | /* Stacked and layered icon */ 5 | 6 | /* Animated rotating icon */ 7 | .#{$fa-css-prefix}-spin { 8 | -webkit-animation: spin 2s infinite linear; 9 | -moz-animation: spin 2s infinite linear; 10 | -o-animation: spin 2s infinite linear; 11 | animation: spin 2s infinite linear; 12 | } 13 | 14 | @-moz-keyframes spin { 15 | 0% { -moz-transform: rotate(0deg); } 16 | 100% { -moz-transform: rotate(359deg); } 17 | } 18 | @-webkit-keyframes spin { 19 | 0% { -webkit-transform: rotate(0deg); } 20 | 100% { -webkit-transform: rotate(359deg); } 21 | } 22 | @-o-keyframes spin { 23 | 0% { -o-transform: rotate(0deg); } 24 | 100% { -o-transform: rotate(359deg); } 25 | } 26 | @-ms-keyframes spin { 27 | 0% { -ms-transform: rotate(0deg); } 28 | 100% { -ms-transform: rotate(359deg); } 29 | } 30 | @keyframes spin { 31 | 0% { transform: rotate(0deg); } 32 | 100% { transform: rotate(359deg); } 33 | } 34 | 35 | 36 | // Icon rotations & flipping 37 | // ------------------------- 38 | 39 | .#{$fa-css-prefix}-rotate-90 { @include fa-icon-rotate(90deg, 1); } 40 | .#{$fa-css-prefix}-rotate-180 { @include fa-icon-rotate(180deg, 2); } 41 | .#{$fa-css-prefix}-rotate-270 { @include fa-icon-rotate(270deg, 3); } 42 | 43 | .#{$fa-css-prefix}-flip-horizontal { @include fa-icon-flip(-1, 1, 0); } 44 | .#{$fa-css-prefix}-flip-vertical { @include fa-icon-flip(1, -1, 2); } 45 | -------------------------------------------------------------------------------- /src/components/demo/wizard/WizardFormSecondPage.js: -------------------------------------------------------------------------------- 1 | import React from 'react' 2 | import { Field, reduxForm } from 'redux-form' 3 | import validate from './validate' 4 | import inputField from '../../utils/validation/inputField' 5 | 6 | const WizardFormSecondPage = props => { 7 | const { handleSubmit, previousPage } = props 8 | return ( 9 |
10 | 11 |
12 | 13 | 17 | 21 |
22 |
23 | 26 | 27 |
28 | 29 | ) 30 | } 31 | 32 | export default reduxForm({ 33 | form: 'wizard', //Form name is same 34 | destroyOnUnmount: false, 35 | forceUnregisterOnUnmount: true, // <------ unregister fields on unmount 36 | validate 37 | })(WizardFormSecondPage) 38 | -------------------------------------------------------------------------------- /src/style/icons/weather-icons/less/icon-variables/variables-night.less: -------------------------------------------------------------------------------- 1 | @night-clear: "\f02e"; 2 | @night-alt-cloudy: "\f086"; 3 | @night-alt-cloudy-gusts: "\f022"; 4 | @night-alt-cloudy-windy: "\f023"; 5 | @night-alt-hail: "\f024"; 6 | @night-alt-lightning: "\f025"; 7 | @night-alt-rain: "\f028"; 8 | @night-alt-rain-mix: "\f026"; 9 | @night-alt-rain-wind: "\f027"; 10 | @night-alt-showers: "\f029"; 11 | @night-alt-sleet: "\f0b4"; 12 | @night-alt-sleet-storm: "\f06a"; 13 | @night-alt-snow: "\f02a"; 14 | @night-alt-snow-thunderstorm: "\f06d"; 15 | @night-alt-snow-wind: "\f067"; 16 | @night-alt-sprinkle: "\f02b"; 17 | @night-alt-storm-showers: "\f02c"; 18 | @night-alt-thunderstorm: "\f02d"; 19 | @night-cloudy: "\f031"; 20 | @night-cloudy-gusts: "\f02f"; 21 | @night-cloudy-windy: "\f030"; 22 | @night-fog: "\f04a"; 23 | @night-hail: "\f032"; 24 | @night-lightning: "\f033"; 25 | @night-partly-cloudy: "\f083"; 26 | @night-rain: "\f036"; 27 | @night-rain-mix: "\f034"; 28 | @night-rain-wind: "\f035"; 29 | @night-showers: "\f037"; 30 | @night-sleet: "\f0b3"; 31 | @night-sleet-storm: "\f069"; 32 | @night-snow: "\f038"; 33 | @night-snow-thunderstorm: "\f06c"; 34 | @night-snow-wind: "\f066"; 35 | @night-sprinkle: "\f039"; 36 | @night-storm-showers: "\f03a"; 37 | @night-thunderstorm: "\f03b"; 38 | @lunar-eclipse: "\f070"; 39 | @stars: "\f077"; 40 | @storm-showers: "\f01d"; 41 | @thunderstorm: "\f01e"; 42 | @night-alt-cloudy-high: "\f07e"; 43 | @night-cloudy-high: "\f080"; 44 | @night-alt-partly-cloudy: "\f081"; -------------------------------------------------------------------------------- /src/style/icons/weather-icons/sass/icon-variables/variables-night.scss: -------------------------------------------------------------------------------- 1 | $night-clear: "\f02e"; 2 | $night-alt-cloudy: "\f086"; 3 | $night-alt-cloudy-gusts: "\f022"; 4 | $night-alt-cloudy-windy: "\f023"; 5 | $night-alt-hail: "\f024"; 6 | $night-alt-lightning: "\f025"; 7 | $night-alt-rain: "\f028"; 8 | $night-alt-rain-mix: "\f026"; 9 | $night-alt-rain-wind: "\f027"; 10 | $night-alt-showers: "\f029"; 11 | $night-alt-sleet: "\f0b4"; 12 | $night-alt-sleet-storm: "\f06a"; 13 | $night-alt-snow: "\f02a"; 14 | $night-alt-snow-thunderstorm: "\f06d"; 15 | $night-alt-snow-wind: "\f067"; 16 | $night-alt-sprinkle: "\f02b"; 17 | $night-alt-storm-showers: "\f02c"; 18 | $night-alt-thunderstorm: "\f02d"; 19 | $night-cloudy: "\f031"; 20 | $night-cloudy-gusts: "\f02f"; 21 | $night-cloudy-windy: "\f030"; 22 | $night-fog: "\f04a"; 23 | $night-hail: "\f032"; 24 | $night-lightning: "\f033"; 25 | $night-partly-cloudy: "\f083"; 26 | $night-rain: "\f036"; 27 | $night-rain-mix: "\f034"; 28 | $night-rain-wind: "\f035"; 29 | $night-showers: "\f037"; 30 | $night-sleet: "\f0b3"; 31 | $night-sleet-storm: "\f069"; 32 | $night-snow: "\f038"; 33 | $night-snow-thunderstorm: "\f06c"; 34 | $night-snow-wind: "\f066"; 35 | $night-sprinkle: "\f039"; 36 | $night-storm-showers: "\f03a"; 37 | $night-thunderstorm: "\f03b"; 38 | $lunar-eclipse: "\f070"; 39 | $stars: "\f077"; 40 | $storm-showers: "\f01d"; 41 | $thunderstorm: "\f01e"; 42 | $night-alt-cloudy-high: "\f07e"; 43 | $night-cloudy-high: "\f080"; 44 | $night-alt-partly-cloudy: "\f081"; -------------------------------------------------------------------------------- /src/style/less/icons/weather-icons/less/icon-variables/variables-night.less: -------------------------------------------------------------------------------- 1 | @night-clear: "\f02e"; 2 | @night-alt-cloudy: "\f086"; 3 | @night-alt-cloudy-gusts: "\f022"; 4 | @night-alt-cloudy-windy: "\f023"; 5 | @night-alt-hail: "\f024"; 6 | @night-alt-lightning: "\f025"; 7 | @night-alt-rain: "\f028"; 8 | @night-alt-rain-mix: "\f026"; 9 | @night-alt-rain-wind: "\f027"; 10 | @night-alt-showers: "\f029"; 11 | @night-alt-sleet: "\f0b4"; 12 | @night-alt-sleet-storm: "\f06a"; 13 | @night-alt-snow: "\f02a"; 14 | @night-alt-snow-thunderstorm: "\f06d"; 15 | @night-alt-snow-wind: "\f067"; 16 | @night-alt-sprinkle: "\f02b"; 17 | @night-alt-storm-showers: "\f02c"; 18 | @night-alt-thunderstorm: "\f02d"; 19 | @night-cloudy: "\f031"; 20 | @night-cloudy-gusts: "\f02f"; 21 | @night-cloudy-windy: "\f030"; 22 | @night-fog: "\f04a"; 23 | @night-hail: "\f032"; 24 | @night-lightning: "\f033"; 25 | @night-partly-cloudy: "\f083"; 26 | @night-rain: "\f036"; 27 | @night-rain-mix: "\f034"; 28 | @night-rain-wind: "\f035"; 29 | @night-showers: "\f037"; 30 | @night-sleet: "\f0b3"; 31 | @night-sleet-storm: "\f069"; 32 | @night-snow: "\f038"; 33 | @night-snow-thunderstorm: "\f06c"; 34 | @night-snow-wind: "\f066"; 35 | @night-sprinkle: "\f039"; 36 | @night-storm-showers: "\f03a"; 37 | @night-thunderstorm: "\f03b"; 38 | @lunar-eclipse: "\f070"; 39 | @stars: "\f077"; 40 | @storm-showers: "\f01d"; 41 | @thunderstorm: "\f01e"; 42 | @night-alt-cloudy-high: "\f07e"; 43 | @night-cloudy-high: "\f080"; 44 | @night-alt-partly-cloudy: "\f081"; -------------------------------------------------------------------------------- /src/style/less/icons/weather-icons/sass/icon-variables/variables-night.scss: -------------------------------------------------------------------------------- 1 | $night-clear: "\f02e"; 2 | $night-alt-cloudy: "\f086"; 3 | $night-alt-cloudy-gusts: "\f022"; 4 | $night-alt-cloudy-windy: "\f023"; 5 | $night-alt-hail: "\f024"; 6 | $night-alt-lightning: "\f025"; 7 | $night-alt-rain: "\f028"; 8 | $night-alt-rain-mix: "\f026"; 9 | $night-alt-rain-wind: "\f027"; 10 | $night-alt-showers: "\f029"; 11 | $night-alt-sleet: "\f0b4"; 12 | $night-alt-sleet-storm: "\f06a"; 13 | $night-alt-snow: "\f02a"; 14 | $night-alt-snow-thunderstorm: "\f06d"; 15 | $night-alt-snow-wind: "\f067"; 16 | $night-alt-sprinkle: "\f02b"; 17 | $night-alt-storm-showers: "\f02c"; 18 | $night-alt-thunderstorm: "\f02d"; 19 | $night-cloudy: "\f031"; 20 | $night-cloudy-gusts: "\f02f"; 21 | $night-cloudy-windy: "\f030"; 22 | $night-fog: "\f04a"; 23 | $night-hail: "\f032"; 24 | $night-lightning: "\f033"; 25 | $night-partly-cloudy: "\f083"; 26 | $night-rain: "\f036"; 27 | $night-rain-mix: "\f034"; 28 | $night-rain-wind: "\f035"; 29 | $night-showers: "\f037"; 30 | $night-sleet: "\f0b3"; 31 | $night-sleet-storm: "\f069"; 32 | $night-snow: "\f038"; 33 | $night-snow-thunderstorm: "\f06c"; 34 | $night-snow-wind: "\f066"; 35 | $night-sprinkle: "\f039"; 36 | $night-storm-showers: "\f03a"; 37 | $night-thunderstorm: "\f03b"; 38 | $lunar-eclipse: "\f070"; 39 | $stars: "\f077"; 40 | $storm-showers: "\f01d"; 41 | $thunderstorm: "\f01e"; 42 | $night-alt-cloudy-high: "\f07e"; 43 | $night-cloudy-high: "\f080"; 44 | $night-alt-partly-cloudy: "\f081"; -------------------------------------------------------------------------------- /src/components/demo/fieldArrays/renderMembers.js: -------------------------------------------------------------------------------- 1 | import React from 'react'; 2 | import { Field,FieldArray } from 'redux-form' 3 | import inputField from '../../utils/validation/inputField'; 4 | import renderHobbies from './renderHobbies'; 5 | 6 | const renderMembers = ({ fields, meta: { error, submitFailed } }) => ( 7 |
    8 |
  • 9 | 10 | {submitFailed && error && {error}} 11 |
  • 12 | {fields.map((member, index) => ( 13 |
  • 14 |
    15 | Member #{index + 1} 16 | 19 |
    20 | 26 | 32 | 33 |
  • 34 | ))} 35 |
36 | ) 37 | 38 | export default renderMembers; 39 | -------------------------------------------------------------------------------- /src/components/demo/fieldArrays/FieldArraysForm.js: -------------------------------------------------------------------------------- 1 | import React from 'react'; 2 | import { Field, FieldArray, reduxForm } from 'redux-form' 3 | import { connect } from 'react-redux' 4 | import inputField from '../../utils/validation/inputField'; 5 | import renderMembers from './renderMembers'; 6 | import validate from './validate'; 7 | 8 | let FieldArraysForm = props => { 9 | const { handleSubmit, pristine, reset, submitting } = props 10 | return ( 11 |
12 | 18 | 19 |
20 | 21 | 24 |
25 | 26 | ) 27 | } 28 | 29 | FieldArraysForm = reduxForm({ 30 | form: 'fieldArrays', // a unique identifier for this form 31 | validate 32 | })(FieldArraysForm) 33 | 34 | FieldArraysForm = connect( 35 | state => ({ 36 | initialValues: { 37 | members:[ 38 | { 39 | firstName:'abc', 40 | lastName:'123' 41 | } 42 | ] 43 | } 44 | }), 45 | )(FieldArraysForm) 46 | 47 | export default FieldArraysForm -------------------------------------------------------------------------------- /src/store/configureStore.dev.js: -------------------------------------------------------------------------------- 1 | import {applyMiddleware, createStore, compose} from 'redux'; 2 | import {routerMiddleware} from 'react-router-redux'; 3 | import {history} from '../router/history'; 4 | 5 | import { createLogger } from 'redux-logger'; 6 | import thunk from 'redux-thunk'; 7 | // import promise from 'redux-promise'; 8 | 9 | import Perf from 'react-addons-perf' 10 | 11 | import rootReducer from '../reducers/rootReducer'; 12 | 13 | // Create a history of your choosing (we're using a browser history in this case) 14 | // Build the middleware for intercepting and dispatching navigation actions 15 | const historyMiddleware = routerMiddleware(history); 16 | 17 | const logger = createLogger({ 18 | // ...options 19 | options:{ 20 | timestamp:true 21 | } 22 | }); 23 | 24 | // Be sure to ONLY add this middleware in development! 25 | // const middlewares = process.env.NODE_ENV !== 'production' ? 26 | // [require('redux-immutable-state-invariant').default(), thunk,historyMiddleware,logger] : 27 | // [thunk,historyMiddleware,logger]; 28 | const middlewares = [ 29 | // require('redux-immutable-state-invariant').default(), 30 | thunk, 31 | historyMiddleware, 32 | logger 33 | ]; 34 | 35 | const win = window; 36 | win.Perf = Perf 37 | const storeEnhancers = compose( 38 | applyMiddleware(...middlewares), 39 | (win && win.devToolsExtension) ? win.devToolsExtension() : (f) => f, 40 | ); 41 | 42 | const configureStore = preloadedState => { 43 | const store = createStore(rootReducer, preloadedState, storeEnhancers); 44 | return store; 45 | } 46 | export default configureStore; 47 | --------------------------------------------------------------------------------