text: /******/ (function(modules) { // webpackBootstrap
  /******/ 	// The module cache
  /******/ 	var installedModules = {};
  /******/
  /******/ 	// The require function
  /******/ 	function __webpack_require__(moduleId) {
  /******/
  /******/ 		// Check if module is in cache
  /******/ 		if(installedModules[moduleId]) {
  /******/ 			return installedModules[moduleId].exports;
  /******/ 		}
  /******/ 		// Create a new module (and put it into the cache)
  /******/ 		var module = installedModules[moduleId] = {
  /******/ 			i: moduleId,
  /******/ 			l: false,
  /******/ 			exports: {}
  /******/ 		};
  /******/
  /******/ 		// Execute the module function
  /******/ 		modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
  /******/
  /******/ 		// Flag the module as loaded
  /******/ 		module.l = true;
  /******/
  /******/ 		// Return the exports of the module
  /******/ 		return module.exports;
  /******/ 	}
  /******/
  /******/
  /******/ 	// expose the modules object (__webpack_modules__)
  /******/ 	__webpack_require__.m = modules;
  /******/
  /******/ 	// expose the module cache
  /******/ 	__webpack_require__.c = installedModules;
  /******/
  /******/ 	// define getter function for harmony exports
  /******/ 	__webpack_require__.d = function(exports, name, getter) {
  /******/ 		if(!__webpack_require__.o(exports, name)) {
  /******/ 			Object.defineProperty(exports, name, { enumerable: true, get: getter });
  /******/ 		}
  /******/ 	};
  /******/
  /******/ 	// define __esModule on exports
  /******/ 	__webpack_require__.r = function(exports) {
  /******/ 		if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
  /******/ 			Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
  /******/ 		}
  /******/ 		Object.defineProperty(exports, '__esModule', { value: true });
  /******/ 	};
  /******/
  /******/ 	// create a fake namespace object
  /******/ 	// mode & 1: value is a module id, require it
  /******/ 	// mode & 2: merge all properties of value into the ns
  /******/ 	// mode & 4: return value when already ns object
  /******/ 	// mode & 8|1: behave like require
  /******/ 	__webpack_require__.t = function(value, mode) {
  /******/ 		if(mode & 1) value = __webpack_require__(value);
  /******/ 		if(mode & 8) return value;
  /******/ 		if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;
  /******/ 		var ns = Object.create(null);
  /******/ 		__webpack_require__.r(ns);
  /******/ 		Object.defineProperty(ns, 'default', { enumerable: true, value: value });
  /******/ 		if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));
  /******/ 		return ns;
  /******/ 	};
  /******/
  /******/ 	// getDefaultExport function for compatibility with non-harmony modules
  /******/ 	__webpack_require__.n = function(module) {
  /******/ 		var getter = module && module.__esModule ?
  /******/ 			function getDefault() { return module['default']; } :
  /******/ 			function getModuleExports() { return module; };
  /******/ 		__webpack_require__.d(getter, 'a', getter);
  /******/ 		return getter;
  /******/ 	};
  /******/
  /******/ 	// Object.prototype.hasOwnProperty.call
  /******/ 	__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
  /******/
  /******/ 	// __webpack_public_path__
  /******/ 	__webpack_require__.p = "";
  /******/
  /******/
  /******/ 	// Load entry module and return exports
  /******/ 	return __webpack_require__(__webpack_require__.s = "../demo4/src/js/pages/custom/login/login-4.js");
  /******/ })
  /************************************************************************/
  /******/ ({
  
  /***/ "../demo4/src/js/pages/custom/login/login-4.js":
  /*!*****************************************************!*\
    !*** ../demo4/src/js/pages/custom/login/login-4.js ***!
    \*****************************************************/
  /*! no static exports found */
  /***/ (function(module, exports, __webpack_require__) {
  
  "use strict";
  
  
  // Class Definition
  var KTLogin = function() {
  	var _buttonSpinnerClasses = 'spinner spinner-right spinner-white pr-15';
  
  	var _handleFormSignin = function() {
  		var form = KTUtil.getById('kt_login_singin_form');
  		var formSubmitUrl = KTUtil.attr(form, 'action');
  		var formSubmitButton = KTUtil.getById('kt_login_singin_form_submit_button');
  
  		if (!form) {
  			return;
  		}
  
  		FormValidation
  		    .formValidation(
  		        form,
  		        {
  		            fields: {
  						username: {
  							validators: {
  								notEmpty: {
  									message: 'Username is required'
  								}
  							}
  						},
  						password: {
  							validators: {
  								notEmpty: {
  									message: 'Password is required'
  								}
  							}
  						}
  		            },
  		            plugins: {
  						trigger: new FormValidation.plugins.Trigger(),
  						submitButton: new FormValidation.plugins.SubmitButton(),
  	            		//defaultSubmit: new FormValidation.plugins.DefaultSubmit(), // Uncomment this line to enable normal button submit after form validation
  						bootstrap: new FormValidation.plugins.Bootstrap({
  						//	eleInvalidClass: '', // Repace with uncomment to hide bootstrap validation icons
  						//	eleValidClass: '',   // Repace with uncomment to hide bootstrap validation icons
  						})
  		            }
  		        }
  		    )
  		    .on('core.form.valid', function() {
  				// Show loading state on button
  				KTUtil.btnWait(formSubmitButton, _buttonSpinnerClasses, "Please wait");
  
  				// Simulate Ajax request
  				setTimeout(function() {
  					KTUtil.btnRelease(formSubmitButton);
  				}, 2000);
  
  				// Form Validation & Ajax Submission: https://formvalidation.io/guide/examples/using-ajax-to-submit-the-form
  				/**
  		        FormValidation.utils.fetch(formSubmitUrl, {
  		            method: 'POST',
  					dataType: 'json',
  		            params: {
  		                name: form.querySelector('[name="username"]').value,
  		                email: form.querySelector('[name="password"]').value,
  		            },
  		        }).then(function(response) { // Return valid JSON
  					// Release button
  					KTUtil.btnRelease(formSubmitButton);
  
  					if (response && typeof response === 'object' && response.status && response.status == 'success') {
  						Swal.fire({
  			                text: "All is cool! Now you submit this form",
  			                icon: "success",
  			                buttonsStyling: false,
  							confirmButtonText: "Ok, got it!",
  							customClass: {
  								confirmButton: "btn font-weight-bold btn-light-primary"
  							}
  			            }).then(function() {
  							KTUtil.scrollTop();
  						});
  					} else {
  						Swal.fire({
  			                text: "Sorry, something went wrong, please try again.",
  			                icon: "error",
  			                buttonsStyling: false,
  							confirmButtonText: "Ok, got it!",
  							customClass: {
  								confirmButton: "btn font-weight-bold btn-light-primary"
  							}
  			            }).then(function() {
  							KTUtil.scrollTop();
  						});
  					}
  		        });
  				**/
  		    })
  			.on('core.form.invalid', function() {
  				Swal.fire({
  					text: "Sorry, looks like there are some errors detected, please try again.",
  					icon: "error",
  					buttonsStyling: false,
  					confirmButtonText: "Ok, got it!",
  					customClass: {
  						confirmButton: "btn font-weight-bold btn-light-primary"
  					}
  				}).then(function() {
  					KTUtil.scrollTop();
  				});
  		    });
      }
  
  	var _handleFormForgot = function() {
  		var form = KTUtil.getById('kt_login_forgot_form');
  		var formSubmitUrl = KTUtil.attr(form, 'action');
  		var formSubmitButton = KTUtil.getById('kt_login_forgot_form_submit_button');
  
  		if (!form) {
  			return;
  		}
  
  		FormValidation
  		    .formValidation(
  		        form,
  		        {
  		            fields: {
  						email: {
  							validators: {
  								notEmpty: {
  									message: 'Email is required'
  								},
  								emailAddress: {
  									message: 'The value is not a valid email address'
  								}
  							}
  						}
  		            },
  		            plugins: {
  						trigger: new FormValidation.plugins.Trigger(),
  						submitButton: new FormValidation.plugins.SubmitButton(),
  	            		//defaultSubmit: new FormValidation.plugins.DefaultSubmit(), // Uncomment this line to enable normal button submit after form validation
  						bootstrap: new FormValidation.plugins.Bootstrap({
  						//	eleInvalidClass: '', // Repace with uncomment to hide bootstrap validation icons
  						//	eleValidClass: '',   // Repace with uncomment to hide bootstrap validation icons
  						})
  		            }
  		        }
  		    )
  		    .on('core.form.valid', function() {
  				// Show loading state on button
  				KTUtil.btnWait(formSubmitButton, _buttonSpinnerClasses, "Please wait");
  
  				// Simulate Ajax request
  				setTimeout(function() {
  					KTUtil.btnRelease(formSubmitButton);
  				}, 2000);
  		    })
  			.on('core.form.invalid', function() {
  				Swal.fire({
  					text: "Sorry, looks like there are some errors detected, please try again.",
  					icon: "error",
  					buttonsStyling: false,
  					confirmButtonText: "Ok, got it!",
  					customClass: {
  						confirmButton: "btn font-weight-bold btn-light-primary"
  					}
  				}).then(function() {
  					KTUtil.scrollTop();
  				});
  		    });
      }
  
  	var _handleFormSignup = function() {
  		// Base elements
  		var wizardEl = KTUtil.getById('kt_login');
  		var form = KTUtil.getById('kt_login_signup_form');
  		var wizardObj;
  		var validations = [];
  
  		if (!form) {
  			return;
  		}
  
  		// Init form validation rules. For more info check the FormValidation plugin's official documentation:https://formvalidation.io/
  		// Step 1
  		validations.push(FormValidation.formValidation(
  			form,
  			{
  				fields: {
  					fname: {
  						validators: {
  							notEmpty: {
  								message: 'First name is required'
  							}
  						}
  					},
  					lname: {
  						validators: {
  							notEmpty: {
  								message: 'Last Name is required'
  							}
  						}
  					},
  					phone: {
  						validators: {
  							notEmpty: {
  								message: 'Phone is required'
  							}
  						}
  					},
  					email: {
  						validators: {
  							notEmpty: {
  								message: 'Email is required'
  							},
  							emailAddress: {
  								message: 'The value is not a valid email address'
  							}
  						}
  					}
  				},
  				plugins: {
  					trigger: new FormValidation.plugins.Trigger(),
  					bootstrap: new FormValidation.plugins.Bootstrap()
  				}
  			}
  		));
  
  		// Step 2
  		validations.push(FormValidation.formValidation(
  			form,
  			{
  				fields: {
  					address1: {
  						validators: {
  							notEmpty: {
  								message: 'Address is required'
  							}
  						}
  					},
  					postcode: {
  						validators: {
  							notEmpty: {
  								message: 'Postcode is required'
  							}
  						}
  					},
  					city: {
  						validators: {
  							notEmpty: {
  								message: 'City is required'
  							}
  						}
  					},
  					state: {
  						validators: {
  							notEmpty: {
  								message: 'State is required'
  							}
  						}
  					},
  					country: {
  						validators: {
  							notEmpty: {
  								message: 'Country is required'
  							}
  						}
  					}
  				},
  				plugins: {
  					trigger: new FormValidation.plugins.Trigger(),
  					bootstrap: new FormValidation.plugins.Bootstrap()
  				}
  			}
  		));
  
  		 
  		// Initialize form wizard
  		wizardObj = new KTWizard(wizardEl, {
  			startStep: 1, // initial active step number
  			clickableSteps: false // to make steps clickable this set value true and add data-wizard-clickable="true" in HTML for class="wizard" element
  		});
  
  		// Validation before going to next page
  		wizardObj.on('beforeNext', function (wizard) {
  			validations[wizard.getStep() - 1].validate().then(function (status) {
  				if (status == 'Valid') {
  					wizardObj.goNext();
  					KTUtil.scrollTop();
  				} else {
  					Swal.fire({
  						text: "Sorry, looks like there are some errors detected, please try again.",
  						icon: "error",
  						buttonsStyling: false,
  						confirmButtonText: "Ok, got it!",
  						customClass: {
  							confirmButton: "btn font-weight-bold btn-light-primary"
  						}
  					}).then(function () {
  						KTUtil.scrollTop();
  					});
  				}
  			});
  
  			wizardObj.stop();  // Don't go to the next step
  		});
  
  		// Change event
  		wizardObj.on('change', function (wizard) {
  			KTUtil.scrollTop();
  		});
      }
  
      // Public Functions
      return {
          init: function() {
              _handleFormSignin();
  			_handleFormForgot();
  			_handleFormSignup();
          }
      };
  }();
  
  // Class Initialization
  jQuery(document).ready(function() {
      KTLogin.init();
  });
  
  
  /***/ })
  
  /******/ });
  //# sourceMappingURL=login-4.js.map