UNPKG

@red-code-mp/mp-builder

Version:

* [Structure](#Structure) * [Route](#Route) * [Endpoints](#Endpoints) * [Table](#Table) * [Lang](#Lang) * [Menu](#Menu) * [Toast](#Toast)

277 lines (227 loc) 4.97 MB
/******/ (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 = "./webpack/vendors/global.js"); /******/ }) /************************************************************************/ /******/ ({ /***/ "../src/assets/js/vendors/bootstrap-datepicker.init.js": /*!*************************************************************!*\ !*** ../src/assets/js/vendors/bootstrap-datepicker.init.js ***! \*************************************************************/ /*! no static exports found */ /***/ (function(module, exports, __webpack_require__) { "use strict"; eval("\r\n$.fn.datepicker.defaults.zIndexOffset = 10;\n\n//# sourceURL=webpack:///../src/assets/js/vendors/bootstrap-datepicker.init.js?"); /***/ }), /***/ "../src/assets/js/vendors/bootstrap-markdown.init.js": /*!***********************************************************!*\ !*** ../src/assets/js/vendors/bootstrap-markdown.init.js ***! \***********************************************************/ /*! no static exports found */ /***/ (function(module, exports, __webpack_require__) { "use strict"; eval("\r\n$.fn.markdown.defaults.iconlibrary = 'fa';\r\n$.fn.markdown.defaults.buttons[0][0]['data'][2]['icon']['fa'] = 'fa fa-heading';\r\n$.fn.markdown.defaults.buttons[0][1]['data'][1]['icon']['fa'] = 'fa fa-image';\r\n$.fn.markdown.defaults.buttons[0][2]['data'][1]['icon']['fa'] = 'fa fa-list-ol';\r\n\n\n//# sourceURL=webpack:///../src/assets/js/vendors/bootstrap-markdown.init.js?"); /***/ }), /***/ "../src/assets/js/vendors/bootstrap-notify.init.js": /*!*********************************************************!*\ !*** ../src/assets/js/vendors/bootstrap-notify.init.js ***! \*********************************************************/ /*! no static exports found */ /***/ (function(module, exports) { eval("//== Set defaults\r\n\r\n$.notifyDefaults({\r\n\ttemplate: '' +\r\n\t'<div data-notify=\"container\" class=\"alert alert-{0} m-alert\" role=\"alert\">' +\r\n\t'<button type=\"button\" aria-hidden=\"true\" class=\"close\" data-notify=\"dismiss\"></button>' +\r\n\t'<span data-notify=\"icon\"></span>' +\r\n\t'<span data-notify=\"title\">{1}</span>' +\r\n\t'<span data-notify=\"message\">{2}</span>' +\r\n\t'<div class=\"progress\" data-notify=\"progressbar\">' +\r\n\t'<div class=\"progress-bar progress-bar-animated bg-{0}\" role=\"progressbar\" aria-valuenow=\"0\" aria-valuemin=\"0\" aria-valuemax=\"100\" style=\"width: 0%;\"></div>' +\r\n\t'</div>' +\r\n\t'<a href=\"{3}\" target=\"{4}\" data-notify=\"url\"></a>' +\r\n\t'</div>'\r\n});\n\n//# sourceURL=webpack:///../src/assets/js/vendors/bootstrap-notify.init.js?"); /***/ }), /***/ "../src/assets/js/vendors/bootstrap-switch.init.js": /*!*********************************************************!*\ !*** ../src/assets/js/vendors/bootstrap-switch.init.js ***! \*********************************************************/ /*! no static exports found */ /***/ (function(module, exports) { eval("//$.fn.bootstrapSwitch.defaults.size = 'large';\r\n//$.fn.bootstrapSwitch.defaults.onColor = 'success';\n\n//# sourceURL=webpack:///../src/assets/js/vendors/bootstrap-switch.init.js?"); /***/ }), /***/ "../src/assets/js/vendors/bootstrap-timepicker.init.js": /*!*************************************************************!*\ !*** ../src/assets/js/vendors/bootstrap-timepicker.init.js ***! \*************************************************************/ /*! no static exports found */ /***/ (function(module, exports, __webpack_require__) { "use strict"; eval("\r\n$.fn.timepicker.defaults = $.extend(true, {}, $.fn.timepicker.defaults, {\r\n icons: {\r\n up: 'la la-angle-up',\r\n down: 'la la-angle-down' \r\n }\r\n});\n\n//# sourceURL=webpack:///../src/assets/js/vendors/bootstrap-timepicker.init.js?"); /***/ }), /***/ "../src/assets/js/vendors/dropzone.init.js": /*!*************************************************!*\ !*** ../src/assets/js/vendors/dropzone.init.js ***! \*************************************************/ /*! no static exports found */ /***/ (function(module, exports) { eval("Dropzone.autoDiscover = false;\r\n\n\n//# sourceURL=webpack:///../src/assets/js/vendors/dropzone.init.js?"); /***/ }), /***/ "../src/assets/js/vendors/jquery-validation.init.js": /*!**********************************************************!*\ !*** ../src/assets/js/vendors/jquery-validation.init.js ***! \**********************************************************/ /*! no static exports found */ /***/ (function(module, exports, __webpack_require__) { "use strict"; eval("\r\nvar valGetParentContainer = function(element) {\r\n var element = $(element);\r\n\r\n if ($(element).closest('.form-group-sub').length > 0) {\r\n return $(element).closest('.form-group-sub')\r\n } else if ($(element).closest('.bootstrap-select').length > 0) {\r\n return $(element).closest('.bootstrap-select')\r\n } else {\r\n return $(element).closest('.form-group');\r\n }\r\n}\r\n\r\njQuery.validator.setDefaults({\r\n errorElement: 'div', //default input error message container\r\n focusInvalid: false, // do not focus the last invalid input\r\n ignore: \"\", // validate all fields including form hidden input\r\n\r\n errorPlacement: function(error, element) { // render error placement for each input type\r\n var element = $(element);\r\n\r\n var group = valGetParentContainer(element);\r\n var help = group.find('.form-text');\r\n\r\n if (group.find('.valid-feedback, .invalid-feedback').length !== 0) {\r\n return;\r\n }\r\n\r\n element.addClass('is-invalid');\r\n error.addClass('invalid-feedback');\r\n\r\n if (help.length > 0) {\r\n help.before(error);\r\n } else {\r\n if (element.closest('.bootstrap-select').length > 0) { //Bootstrap select\r\n element.closest('.bootstrap-select').find('.bs-placeholder').after(error);\r\n } else if (element.closest('.input-group').length > 0) { //Bootstrap group\r\n element.after(error);\r\n } else { //Checkbox & radios\r\n if (element.is(':checkbox')) {\r\n element.closest('.kt-checkbox').find('> span').after(error);\r\n } else {\r\n element.after(error);\r\n } \r\n } \r\n }\r\n },\r\n\r\n highlight: function(element) { // hightlight error inputs\r\n var group = valGetParentContainer(element);\r\n group.addClass('validate');\r\n group.addClass('is-invalid');\r\n $(element).removeClass('is-valid');\r\n },\r\n\r\n unhighlight: function(element) { // revert the change done by hightlight\r\n var group = valGetParentContainer(element);\r\n group.removeClass('validate'); \r\n group.removeClass('is-invalid'); \r\n $(element).removeClass('is-invalid');\r\n },\r\n\r\n success: function(label, element) {\r\n var group = valGetParentContainer(element);\r\n group.removeClass('validate');\r\n group.find('.invalid-feedback').remove();\r\n }\r\n});\r\n\r\njQuery.validator.addMethod(\"email\", function(value, element) {\r\n if (/^([a-zA-Z0-9_\\.\\-])+\\@(([a-zA-Z0-9\\-])+\\.)+([a-zA-Z0-9]{2,4})+$/.test(value)) {\r\n return true;\r\n } else {\r\n return false;\r\n }\r\n}, \"Please enter a valid Email.\");\n\n//# sourceURL=webpack:///../src/assets/js/vendors/jquery-validation.init.js?"); /***/ }), /***/ "../src/assets/js/vendors/sweetalert2.init.js": /*!****************************************************!*\ !*** ../src/assets/js/vendors/sweetalert2.init.js ***! \****************************************************/ /*! no static exports found */ /***/ (function(module, exports, __webpack_require__) { "use strict"; eval("\r\n// Set defaults\r\nswal.mixin({\r\n\twidth: 400,\r\n\theightAuto: false,\r\n\tpadding: '2.5rem',\r\n\tbuttonsStyling: false,\r\n\tconfirmButtonClass: 'btn btn-success',\r\n\tconfirmButtonColor: null,\r\n\tcancelButtonClass: 'btn btn-secondary',\r\n\tcancelButtonColor: null\r\n});\n\n//# sourceURL=webpack:///../src/assets/js/vendors/sweetalert2.init.js?"); /***/ }), /***/ "../src/assets/vendors/bootstrap-multiselectsplitter/bootstrap-multiselectsplitter.min.js": /*!************************************************************************************************!*\ !*** ../src/assets/vendors/bootstrap-multiselectsplitter/bootstrap-multiselectsplitter.min.js ***! \************************************************************************************************/ /*! no static exports found */ /***/ (function(module, exports) { eval("+function(a){\"use strict\";function c(c){return this.each(function(){var d=a(this),e=d.data(\"multiselectsplitter\"),f=\"object\"==typeof c&&c;(e||\"destroy\"!=c)&&(e||d.data(\"multiselectsplitter\",e=new b(this,f)),\"string\"==typeof c&&e[c]())})}var b=function(a,b){this.init(\"multiselectsplitter\",a,b)};b.DEFAULTS={selectSize:null,maxSelectSize:null,clearOnFirstChange:!1,onlySameGroup:!1,groupCounter:!1,maximumSelected:null,afterInitialize:null,maximumAlert:function(a){alert(\"Only \"+a+\" values can be selected\")},createFirstSelect:function(a,b){return\"<option>\"+a+\"</option>\"},createSecondSelect:function(a,b){return\"<option>\"+a+\"</option>\"},template:'<div class=\"row\" data-multiselectsplitter-wrapper-selector><div class=\"col-xs-6 col-sm-6\"><select class=\"form-control\" data-multiselectsplitter-firstselect-selector></select></div> <!-- Add the extra clearfix for only the required viewport --><div class=\"col-xs-6 col-sm-6\"><select class=\"form-control\" data-multiselectsplitter-secondselect-selector></select></div></div>'},b.prototype.init=function(c,d,e){var f=this;f.type=c,f.last$ElementSelected=[],f.initialized=!1,f.$element=a(d),f.$element.hide(),f.options=a.extend({},b.DEFAULTS,e),f.$element.after(f.options.template),f.$wrapper=f.$element.next(\"div[data-multiselectsplitter-wrapper-selector]\"),f.$firstSelect=a(\"select[data-multiselectsplitter-firstselect-selector]\",f.$wrapper),f.$secondSelect=a(\"select[data-multiselectsplitter-secondselect-selector]\",f.$wrapper);var g=0,h=0;if(0!=f.$element.find(\"optgroup\").length){f.$element.find(\"optgroup\").each(function(){var b=a(this).attr(\"label\"),c=a(f.options.createFirstSelect(b,f.$element));c.val(b),c.attr(\"data-current-label\",c.text()),f.$firstSelect.append(c);var d=a(this).find(\"option\").length;d>h&&(h=d),g++});var i=Math.max(g,h);i=Math.min(i,10),f.options.selectSize?i=f.options.selectSize:f.options.maxSelectSize&&(i=Math.min(i,f.options.maxSelectSize)),f.$firstSelect.attr(\"size\",i),f.$secondSelect.attr(\"size\",i),f.$element.attr(\"multiple\")&&f.$secondSelect.attr(\"multiple\",\"multiple\"),f.$element.is(\":disabled\")&&f.disable(),f.$firstSelect.on(\"change\",a.proxy(f.updateParentCategory,f)),f.$secondSelect.on(\"click change\",a.proxy(f.updateChildCategory,f)),f.update=function(){if(!(f.$element.find(\"option\").length<1)){var b,a=f.$element.find(\"option:selected:first\");b=a.length?a.parent().attr(\"label\"):f.$element.find(\"option:first\").parent().attr(\"label\"),f.$firstSelect.find('option[value=\"'+b+'\"]').prop(\"selected\",!0),f.$firstSelect.trigger(\"change\")}},f.update(),f.initialized=!0,f.options.afterInitialize&&f.options.afterInitialize(f.$firstSelect,f.$secondSelect)}},b.prototype.disable=function(){this.$secondSelect.prop(\"disabled\",!0),this.$firstSelect.prop(\"disabled\",!0)},b.prototype.enable=function(){this.$secondSelect.prop(\"disabled\",!1),this.$firstSelect.prop(\"disabled\",!1)},b.prototype.createSecondSelect=function(){var b=this;b.$secondSelect.empty(),a.each(b.$element.find('optgroup[label=\"'+b.$firstSelect.val()+'\"] option'),function(c,d){var e=a(this).val(),f=a(this).text(),g=a(b.options.createSecondSelect(f,b.$firstSelect));g.val(e),a.each(b.$element.find(\"option:selected\"),function(b,c){a(c).val()==e&&g.prop(\"selected\",!0)}),b.$secondSelect.append(g)})},b.prototype.updateParentCategory=function(){var a=this;a.last$ElementSelected=a.$element.find(\"option:selected\"),a.options.clearOnFirstChange&&a.initialized&&a.$element.find(\"option:selected\").prop(\"selected\",!1),a.createSecondSelect(),a.checkSelected(),a.updateCounter()},b.prototype.updateCounter=function(){var b=this;b.$element.attr(\"multiple\")&&b.options.groupCounter&&a.each(b.$firstSelect.find(\"option\"),function(c,d){var e=a(d).val(),f=a(d).data(\"currentLabel\"),g=b.$element.find('optgroup[label=\"'+e+'\"] option:selected').length;g>0&&(f+=\" (\"+g+\")\"),a(d).html(f)})},b.prototype.checkSelected=function(){var b=this;if(b.$element.attr(\"multiple\")&&b.options.maximumSelected){var c=0;if(c=\"function\"==typeof b.options.maximumSelected?b.options.maximumSelected(b.$firstSelect,b.$secondSelect):b.options.maximumSelected,!(c<1)){var d=b.$element.find(\"option:selected\");if(d.length>c){b.$firstSelect.find(\"option:selected\").prop(\"selected\",!1),b.$secondSelect.find(\"option:selected\").prop(\"selected\",!1),b.initialized?(b.$element.find(\"option:selected\").prop(\"selected\",!1),b.last$ElementSelected.prop(\"selected\",!0)):a.each(b.$element.find(\"option:selected\"),function(b,d){b>c-1&&a(d).prop(\"selected\",!1)});var e=b.last$ElementSelected.first().parent().attr(\"label\");b.$firstSelect.find('option[value=\"'+e+'\"]').prop(\"selected\",!0),b.createSecondSelect(),b.options.maximumAlert(c)}}}},b.prototype.basicUpdateChildCategory=function(b,c){var d=this;d.last$ElementSelected=d.$element.find(\"option:selected\");var e=d.$secondSelect.val();a.isArray(e)||(e=[e]);var f=d.$firstSelect.val(),g=!1;d.$element.attr(\"multiple\")?d.options.onlySameGroup?a.each(d.$element.find(\"option:selected\"),function(b,c){if(a(c).parent().attr(\"label\")!=f)return g=!0,!1}):c||(g=!0):g=!0,g?d.$element.find(\"option:selected\").prop(\"selected\",!1):a.each(d.$element.find(\"option:selected\"),function(b,c){f==a(c).parent().attr(\"label\")&&a.inArray(a(c).val(),e)==-1&&a(c).prop(\"selected\",!1)}),a.each(e,function(a,b){d.$element.find('option[value=\"'+b+'\"]').prop(\"selected\",!0)}),d.checkSelected(),d.updateCounter(),d.$element.trigger(\"change\")},b.prototype.updateChildCategory=function(b){\"change\"==b.type?this.timeOut=setTimeout(a.proxy(function(){this.basicUpdateChildCategory(b,b.ctrlKey)},this),10):\"click\"==b.type&&(clearTimeout(this.timeOut),this.basicUpdateChildCategory(b,b.ctrlKey))},b.prototype.destroy=function(){this.$wrapper.remove(),this.$element.removeData(this.type),this.$element.show()},a.fn.multiselectsplitter=c,a.fn.multiselectsplitter.Constructor=b,a.fn.multiselectsplitter.VERSION=\"1.0.1\"}(jQuery);\n\n//# sourceURL=webpack:///../src/assets/vendors/bootstrap-multiselectsplitter/bootstrap-multiselectsplitter.min.js?"); /***/ }), /***/ "../src/assets/vendors/bootstrap-session-timeout/dist/bootstrap-session-timeout.js": /*!*****************************************************************************************!*\ !*** ../src/assets/vendors/bootstrap-session-timeout/dist/bootstrap-session-timeout.js ***! \*****************************************************************************************/ /*! no static exports found */ /***/ (function(module, exports) { eval("/*\r\n * bootstrap-session-timeout\r\n * www.orangehilldev.com\r\n *\r\n * Copyright (c) 2014 Vedran Opacic\r\n * Licensed under the MIT license.\r\n */\r\n\r\n(function($) {\r\n /*jshint multistr: true */\r\n 'use strict';\r\n $.sessionTimeout = function(options) {\r\n var defaults = {\r\n title: 'Your Session is About to Expire!',\r\n message: 'Your session is about to expire.',\r\n logoutButton: 'Logout',\r\n keepAliveButton: 'Stay Connected',\r\n keepAliveUrl: '/keep-alive',\r\n ajaxType: 'POST',\r\n ajaxData: '',\r\n redirUrl: '/timed-out',\r\n logoutUrl: '/log-out',\r\n warnAfter: 900000, // 15 minutes\r\n redirAfter: 1200000, // 20 minutes\r\n keepAliveInterval: 5000,\r\n keepAlive: true,\r\n ignoreUserActivity: false,\r\n onStart: false,\r\n onWarn: false,\r\n onRedir: false,\r\n countdownMessage: false,\r\n countdownBar: false,\r\n countdownSmart: false\r\n };\r\n\r\n var opt = defaults,\r\n timer,\r\n countdown = {};\r\n\r\n // Extend user-set options over defaults\r\n if (options) {\r\n opt = $.extend(defaults, options);\r\n }\r\n\r\n // Some error handling if options are miss-configured\r\n if (opt.warnAfter >= opt.redirAfter) {\r\n console.error('Bootstrap-session-timeout plugin is miss-configured. Option \"redirAfter\" must be equal or greater than \"warnAfter\".');\r\n return false;\r\n }\r\n\r\n // Unless user set his own callback function, prepare bootstrap modal elements and events\r\n if (typeof opt.onWarn !== 'function') {\r\n // If opt.countdownMessage is defined add a coundown timer message to the modal dialog\r\n var countdownMessage = opt.countdownMessage ?\r\n '<p>' + opt.countdownMessage.replace(/{timer}/g, '<span class=\"countdown-holder\"></span>') + '</p>' : '';\r\n var coundownBarHtml = opt.countdownBar ?\r\n '<div class=\"progress\"> \\\r\n <div class=\"progress-bar progress-bar-striped countdown-bar active\" role=\"progressbar\" style=\"min-width: 15px; width: 100%;\"> \\\r\n <span class=\"countdown-holder\"></span> \\\r\n </div> \\\r\n </div>' : '';\r\n\r\n // Create timeout warning dialog\r\n $('body').append('<div class=\"modal fade\" id=\"session-timeout-dialog\"> \\\r\n <div class=\"modal-dialog\"> \\\r\n <div class=\"modal-content\"> \\\r\n <div class=\"modal-header\"> \\\r\n <button type=\"button\" class=\"close\" data-dismiss=\"modal\" aria-hidden=\"true\">&times;</button> \\\r\n <h4 class=\"modal-title\">' + opt.title + '</h4> \\\r\n </div> \\\r\n <div class=\"modal-body\"> \\\r\n <p>' + opt.message + '</p> \\\r\n ' + countdownMessage + ' \\\r\n ' + coundownBarHtml + ' \\\r\n </div> \\\r\n <div class=\"modal-footer\"> \\\r\n <button id=\"session-timeout-dialog-logout\" type=\"button\" class=\"btn btn-default\">' + opt.logoutButton + '</button> \\\r\n <button id=\"session-timeout-dialog-keepalive\" type=\"button\" class=\"btn btn-primary\" data-dismiss=\"modal\">' + opt.keepAliveButton + '</button> \\\r\n </div> \\\r\n </div> \\\r\n </div> \\\r\n </div>');\r\n\r\n // \"Logout\" button click\r\n $('#session-timeout-dialog-logout').on('click', function() {\r\n window.location = opt.logoutUrl;\r\n });\r\n // \"Stay Connected\" button click\r\n $('#session-timeout-dialog').on('hide.bs.modal', function() {\r\n // Restart session timer\r\n startSessionTimer();\r\n });\r\n }\r\n\r\n // Reset timer on any of these events\r\n if (!opt.ignoreUserActivity) {\r\n var mousePosition = [-1, -1];\r\n $(document).on('keyup mouseup mousemove touchend touchmove', function(e) {\r\n if (e.type === 'mousemove') {\r\n // Solves mousemove even when mouse not moving issue on Chrome:\r\n // https://code.google.com/p/chromium/issues/detail?id=241476\r\n if (e.clientX === mousePosition[0] && e.clientY === mousePosition[1]) {\r\n return;\r\n }\r\n mousePosition[0] = e.clientX;\r\n mousePosition[1] = e.clientY;\r\n }\r\n startSessionTimer();\r\n\r\n // If they moved the mouse not only reset the counter\r\n // but remove the modal too!\r\n if ($('#session-timeout-dialog').length > 0 &&\r\n $('#session-timeout-dialog').data('bs.modal') &&\r\n $('#session-timeout-dialog').data('bs.modal').isShown) {\r\n // http://stackoverflow.com/questions/11519660/twitter-bootstrap-modal-backdrop-doesnt-disappear\r\n $('#session-timeout-dialog').modal('hide');\r\n $('body').removeClass('modal-open');\r\n $('div.modal-backdrop').remove();\r\n\r\n }\r\n });\r\n }\r\n\r\n // Keeps the server side connection live, by pingin url set in keepAliveUrl option.\r\n // KeepAlivePinged is a helper var to ensure the functionality of the keepAliveInterval option\r\n var keepAlivePinged = false;\r\n\r\n function keepAlive() {\r\n if (!keepAlivePinged) {\r\n // Ping keepalive URL using (if provided) data and type from options\r\n $.ajax({\r\n type: opt.ajaxType,\r\n url: opt.keepAliveUrl,\r\n data: opt.ajaxData\r\n });\r\n keepAlivePinged = true;\r\n setTimeout(function() {\r\n keepAlivePinged = false;\r\n }, opt.keepAliveInterval);\r\n }\r\n }\r\n\r\n function startSessionTimer() {\r\n // Clear session timer\r\n clearTimeout(timer);\r\n if (opt.countdownMessage || opt.countdownBar) {\r\n startCountdownTimer('session', true);\r\n }\r\n\r\n if (typeof opt.onStart === 'function') {\r\n opt.onStart(opt);\r\n }\r\n\r\n // If keepAlive option is set to \"true\", ping the \"keepAliveUrl\" url\r\n if (opt.keepAlive) {\r\n keepAlive();\r\n }\r\n\r\n // Set session timer\r\n timer = setTimeout(function() {\r\n // Check for onWarn callback function and if there is none, launch dialog\r\n if (typeof opt.onWarn !== 'function') {\r\n $('#session-timeout-dialog').modal('show');\r\n } else {\r\n opt.onWarn(opt);\r\n }\r\n // Start dialog timer\r\n startDialogTimer();\r\n }, opt.warnAfter);\r\n }\r\n\r\n function startDialogTimer() {\r\n // Clear session timer\r\n clearTimeout(timer);\r\n if (!$('#session-timeout-dialog').hasClass('in') && (opt.countdownMessage || opt.countdownBar)) {\r\n // If warning dialog is not already open and either opt.countdownMessage\r\n // or opt.countdownBar are set start countdown\r\n startCountdownTimer('dialog', true);\r\n }\r\n // Set dialog timer\r\n timer = setTimeout(function() {\r\n // Check for onRedir callback function and if there is none, launch redirect\r\n if (typeof opt.onRedir !== 'function') {\r\n window.location = opt.redirUrl;\r\n } else {\r\n opt.onRedir(opt);\r\n }\r\n }, (opt.redirAfter - opt.warnAfter));\r\n }\r\n\r\n function startCountdownTimer(type, reset) {\r\n // Clear countdown timer\r\n clearTimeout(countdown.timer);\r\n\r\n if (type === 'dialog' && reset) {\r\n // If triggered by startDialogTimer start warning countdown\r\n countdown.timeLeft = Math.floor((opt.redirAfter - opt.warnAfter) / 1000);\r\n } else if (type === 'session' && reset) {\r\n // If triggered by startSessionTimer start full countdown\r\n // (this is needed if user doesn't close the warning dialog)\r\n countdown.timeLeft = Math.floor(opt.redirAfter / 1000);\r\n }\r\n // If opt.countdownBar is true, calculate remaining time percentage\r\n if (opt.countdownBar && type === 'dialog') {\r\n countdown.percentLeft = Math.floor(countdown.timeLeft / ((opt.redirAfter - opt.warnAfter) / 1000) * 100);\r\n } else if (opt.countdownBar && type === 'session') {\r\n countdown.percentLeft = Math.floor(countdown.timeLeft / (opt.redirAfter / 1000) * 100);\r\n }\r\n // Set countdown message time value\r\n var countdownEl = $('.countdown-holder');\r\n var secondsLeft = countdown.timeLeft >= 0 ? countdown.timeLeft : 0;\r\n if (opt.countdownSmart) {\r\n var minLeft = Math.floor(secondsLeft / 60);\r\n var secRemain = secondsLeft % 60;\r\n var countTxt = minLeft > 0 ? minLeft + 'm' : '';\r\n if (countTxt.length > 0) {\r\n countTxt += ' ';\r\n }\r\n countTxt += secRemain + 's';\r\n countdownEl.text(countTxt);\r\n } else {\r\n countdownEl.text(secondsLeft + \"s\");\r\n }\r\n\r\n // Set countdown message time value\r\n if (opt.countdownBar) {\r\n $('.countdown-bar').css('width', countdown.percentLeft + '%');\r\n }\r\n\r\n // Countdown by one second\r\n countdown.timeLeft = countdown.timeLeft - 1;\r\n countdown.timer = setTimeout(function() {\r\n // Call self after one second\r\n startCountdownTimer(type);\r\n }, 1000);\r\n }\r\n\r\n // Start session timer\r\n startSessionTimer();\r\n\r\n };\r\n})(jQuery);\r\n\n\n//# sourceURL=webpack:///../src/assets/vendors/bootstrap-session-timeout/dist/bootstrap-session-timeout.js?"); /***/ }), /***/ "../src/assets/vendors/flaticon/flaticon.css": /*!***************************************************!*\ !*** ../src/assets/vendors/flaticon/flaticon.css ***! \***************************************************/ /*! no static exports found */ /***/ (function(module, exports, __webpack_require__) { eval("// extracted by mini-css-extract-plugin\n\n//# sourceURL=webpack:///../src/assets/vendors/flaticon/flaticon.css?"); /***/ }), /***/ "../src/assets/vendors/flaticon2/flaticon.css": /*!****************************************************!*\ !*** ../src/assets/vendors/flaticon2/flaticon.css ***! \****************************************************/ /*! no static exports found */ /***/ (function(module, exports, __webpack_require__) { eval("// extracted by mini-css-extract-plugin\n\n//# sourceURL=webpack:///../src/assets/vendors/flaticon2/flaticon.css?"); /***/ }), /***/ "../src/assets/vendors/jquery-idletimer/idle-timer.js": /*!************************************************************!*\ !*** ../src/assets/vendors/jquery-idletimer/idle-timer.js ***! \************************************************************/ /*! no static exports found */ /***/ (function(module, exports) { eval("/*! Idle Timer - v1.1.0 - 2016-03-21\r\n* https://github.com/thorst/jquery-idletimer\r\n* Copyright (c) 2016 Paul Irish; Licensed MIT */\r\n/*\r\n\tmousewheel (deprecated) -> IE6.0, Chrome, Opera, Safari\r\n\tDOMMouseScroll (deprecated) -> Firefox 1.0\r\n\twheel (standard) -> Chrome 31, Firefox 17, IE9, Firefox Mobile 17.0\r\n\r\n\t//No need to use, use DOMMouseScroll\r\n\tMozMousePixelScroll -> Firefox 3.5, Firefox Mobile 1.0\r\n\r\n\t//Events\r\n\tWheelEvent -> see wheel\r\n\tMouseWheelEvent -> see mousewheel\r\n\tMouseScrollEvent -> Firefox 3.5, Firefox Mobile 1.0\r\n*/\r\n(function ($) {\r\n\r\n $.idleTimer = function (firstParam, elem) {\r\n var opts;\r\n if ( typeof firstParam === \"object\" ) {\r\n opts = firstParam;\r\n firstParam = null;\r\n } else if (typeof firstParam === \"number\") {\r\n opts = { timeout: firstParam };\r\n firstParam = null;\r\n }\r\n\r\n // element to watch\r\n elem = elem || document;\r\n\r\n // defaults that are to be stored as instance props on the elem\r\n opts = $.extend({\r\n idle: false, // indicates if the user is idle\r\n timeout: 30000, // the amount of time (ms) before the user is considered idle\r\n events: \"mousemove keydown wheel DOMMouseScroll mousewheel mousedown touchstart touchmove MSPointerDown MSPointerMove\" // define active events\r\n }, opts);\r\n\r\n var jqElem = $(elem),\r\n obj = jqElem.data(\"idleTimerObj\") || {},\r\n\r\n /* (intentionally not documented)\r\n * Toggles the idle state and fires an appropriate event.\r\n * @return {void}\r\n */\r\n toggleIdleState = function (e) {\r\n var obj = $.data(elem, \"idleTimerObj\") || {};\r\n\r\n // toggle the state\r\n obj.idle = !obj.idle;\r\n\r\n // store toggle state date time\r\n obj.olddate = +new Date();\r\n\r\n // create a custom event, with state and name space\r\n var event = $.Event((obj.idle ? \"idle\" : \"active\") + \".idleTimer\");\r\n\r\n // trigger event on object with elem and copy of obj\r\n $(elem).trigger(event, [elem, $.extend({}, obj), e]);\r\n },\r\n /**\r\n * Handle event triggers\r\n * @return {void}\r\n * @method event\r\n * @static\r\n */\r\n handleEvent = function (e) {\r\n var obj = $.data(elem, \"idleTimerObj\") || {};\r\n\r\n if (e.type === \"storage\" && e.originalEvent.key !== obj.timerSyncId) {\r\n return;\r\n }\r\n\r\n // this is already paused, ignore events for now\r\n if (obj.remaining != null) { return; }\r\n\r\n /*\r\n mousemove is kinda buggy, it can be triggered when it should be idle.\r\n Typically is happening between 115 - 150 milliseconds after idle triggered.\r\n @psyafter & @kaellis report \"always triggered if using modal (jQuery ui, with overlay)\"\r\n @thorst has similar issues on ios7 \"after $.scrollTop() on text area\"\r\n */\r\n if (e.type === \"mousemove\") {\r\n // if coord are same, it didn't move\r\n if (e.pageX === obj.pageX && e.pageY === obj.pageY) {\r\n return;\r\n }\r\n // if coord don't exist how could it move\r\n if (typeof e.pageX === \"undefined\" && typeof e.pageY === \"undefined\") {\r\n return;\r\n }\r\n // under 200 ms is hard to do, and you would have to stop, as continuous activity will bypass this\r\n var elapsed = (+new Date()) - obj.olddate;\r\n if (elapsed < 200) {\r\n return;\r\n }\r\n }\r\n\r\n // clear any existing timeout\r\n clearTimeout(obj.tId);\r\n\r\n // if the idle timer is enabled, flip\r\n if (obj.idle) {\r\n toggleIdleState(e);\r\n }\r\n\r\n // store when user was last active\r\n obj.lastActive = +new Date();\r\n\r\n // update mouse coord\r\n obj.pageX = e.pageX;\r\n obj.pageY = e.pageY;\r\n\r\n // sync lastActive\r\n if (e.type !== \"storage\" && obj.timerSyncId) {\r\n if (typeof(localStorage) !== \"undefined\") {\r\n localStorage.setItem(obj.timerSyncId, obj.lastActive);\r\n }\r\n }\r\n\r\n // set a new timeout\r\n obj.tId = setTimeout(toggleIdleState, obj.timeout);\r\n },\r\n /**\r\n * Restore initial settings and restart timer\r\n * @return {void}\r\n * @method reset\r\n * @static\r\n */\r\n reset = function () {\r\n\r\n var obj = $.data(elem, \"idleTimerObj\") || {};\r\n\r\n // reset settings\r\n obj.idle = obj.idleBackup;\r\n obj.olddate = +new Date();\r\n obj.lastActive = obj.olddate;\r\n obj.remaining = null;\r\n\r\n // reset Timers\r\n clearTimeout(obj.tId);\r\n if (!obj.idle) {\r\n obj.tId = setTimeout(toggleIdleState, obj.timeout);\r\n }\r\n\r\n },\r\n /**\r\n * Store remaining time, stop timer\r\n * You can pause from an idle OR active state\r\n * @return {void}\r\n * @method pause\r\n * @static\r\n */\r\n pause = function () {\r\n\r\n var obj = $.data(elem, \"idleTimerObj\") || {};\r\n\r\n // this is already paused\r\n if ( obj.remaining != null ) { return; }\r\n\r\n // define how much is left on the timer\r\n obj.remaining = obj.timeout - ((+new Date()) - obj.olddate);\r\n\r\n // clear any existing timeout\r\n clearTimeout(obj.tId);\r\n },\r\n /**\r\n * Start timer with remaining value\r\n * @return {void}\r\n * @method resume\r\n * @static\r\n */\r\n resume = function () {\r\n\r\n var obj = $.data(elem, \"idleTimerObj\") || {};\r\n\r\n // this isn't paused yet\r\n if ( obj.remaining == null ) { return; }\r\n\r\n // start timer\r\n if ( !obj.idle ) {\r\n obj.tId = setTimeout(toggleIdleState, obj.remaining);\r\n }\r\n\r\n // clear remaining\r\n obj.remaining = null;\r\n },\r\n /**\r\n * Stops the idle timer. This removes appropriate event handlers\r\n * and cancels any pending timeouts.\r\n * @return {void}\r\n * @method destroy\r\n * @static\r\n */\r\n destroy = function () {\r\n\r\n var obj = $.data(elem, \"idleTimerObj\") || {};\r\n\r\n //clear any pending timeouts\r\n clearTimeout(obj.tId);\r\n\r\n //Remove data\r\n jqElem.removeData(\"idleTimerObj\");\r\n\r\n //detach the event handlers\r\n jqElem.off(\"._idleTimer\");\r\n },\r\n /**\r\n * Returns the time until becoming idle\r\n * @return {number}\r\n * @method remainingtime\r\n * @static\r\n */\r\n remainingtime = function () {\r\n\r\n var obj = $.data(elem, \"idleTimerObj\") || {};\r\n\r\n //If idle there is no time remaining\r\n if ( obj.idle ) { return 0; }\r\n\r\n //If its paused just return that\r\n if ( obj.remaining != null ) { return obj.remaining; }\r\n\r\n //Determine remaining, if negative idle didn't finish flipping, just return 0\r\n var remaining = obj.timeout - ((+new Date()) - obj.lastActive);\r\n if (remaining < 0) { remaining = 0; }\r\n\r\n //If this is paused return that number, else return current remaining\r\n return remaining;\r\n };\r\n\r\n\r\n // determine which function to call\r\n if (firstParam === null && typeof obj.idle !== \"undefined\") {\r\n // they think they want to init, but it already is, just reset\r\n reset();\r\n return jqElem;\r\n } else if (firstParam === null) {\r\n // they want to init\r\n } else if (firstParam !== null && typeof obj.idle === \"undefined\") {\r\n // they want to do something, but it isnt init\r\n // not sure the best way to handle this\r\n return false;\r\n } else if (firstParam === \"destroy\") {\r\n destroy();\r\n return jqElem;\r\n } else if (firstParam === \"pause\") {\r\n pause();\r\n return jqElem;\r\n } else if (firstParam === \"resume\") {\r\n resume();\r\n return jqElem;\r\n } else if (firstParam === \"reset\") {\r\n reset();\r\n return jqElem;\r\n } else if (firstParam === \"getRemainingTime\") {\r\n return remainingtime();\r\n } else if (firstParam === \"getElapsedTime\") {\r\n return (+new Date()) - obj.olddate;\r\n } else if (firstParam === \"getLastActiveTime\") {\r\n return obj.lastActive;\r\n } else if (firstParam === \"isIdle\") {\r\n return obj.idle;\r\n }\r\n\r\n /* (intentionally not documented)\r\n * Handles a user event indicating that the user isn't idle. namespaced with internal idleTimer\r\n * @param {Event} event A DOM2-normalized event object.\r\n * @return {void}\r\n */\r\n jqElem.on($.trim((opts.events + \" \").split(\" \").join(\"._idleTimer \")), function (e) {\r\n handleEvent(e);\r\n });\r\n\r\n if (opts.timerSyncId) {\r\n $(window).bind(\"storage\", handleEvent);\r\n }\r\n\r\n // Internal Object Properties, This isn't all necessary, but we\r\n // explicitly define all keys here so we know what we are working with\r\n obj = $.extend({}, {\r\n olddate : +new Date(), // the last time state changed\r\n lastActive: +new Date(), // the last time timer was active\r\n idle : opts.idle, // current state\r\n idleBackup : opts.idle, // backup of idle parameter since it gets modified\r\n timeout : opts.timeout, // the interval to change state\r\n remaining : null, // how long until state changes\r\n timerSyncId : opts.timerSyncId, // localStorage key to use for syncing this timer\r\n tId : null, // the idle timer setTimeout\r\n pageX : null, // used to store the mouse coord\r\n pageY : null\r\n });\r\n\r\n // set a timeout to toggle state. May wish to omit this in some situations\r\n if (!obj.idle) {\r\n obj.tId = setTimeout(toggleIdleState, obj.timeout);\r\n }\r\n\r\n // store our instance on the object\r\n $.data(elem, \"idleTimerObj\", obj);\r\n\r\n return jqElem;\r\n };\r\n\r\n // This allows binding to element\r\n $.fn.idleTimer = function (firstParam) {\r\n if (this[0]) {\r\n return $.idleTimer(firstParam, this[0]);\r\n }\r\n\r\n return this;\r\n };\r\n\r\n})(jQuery);\r\n\n\n//# sourceURL=webpack:///../src/assets/vendors/jquery-idletimer/idle-timer.js?"); /***/ }), /***/ "../src/assets/vendors/line-awesome/css/line-awesome.css": /*!***************************************************************!*\ !*** ../src/assets/vendors/line-awesome/css/line-awesome.css ***! \***************************************************************/ /*! no static exports found */ /***/ (function(module, exports, __webpack_require__) { eval("// extracted by mini-css-extract-plugin\n\n//# sourceURL=webpack:///../src/assets/vendors/line-awesome/css/line-awesome.css?"); /***/ }), /***/ "./node_modules/@fortawesome/fontawesome-free/css/all.min.css": /*!********************************************************************!*\ !*** ./node_modules/@fortawesome/fontawesome-free/css/all.min.css ***! \********************************************************************/ /*! no static exports found */ /***/ (function(module, exports, __webpack_require__) { eval("// extracted by mini-css-extract-plugin\n\n//# sourceURL=webpack:///./node_modules/@fortawesome/fontawesome-free/css/all.min.css?"); /***/ }), /***/ "./node_modules/@yaireo/tagify/dist/tagify.css": /*!*****************************************************!*\ !*** ./node_modules/@yaireo/tagify/dist/tagify.css ***! \*****************************************************/ /*! no static exports found */ /***/ (function(module, exports, __webpack_require__) { eval("// extracted by mini-css-extract-plugin\n\n//# sourceURL=webpack:///./node_modules/@yaireo/tagify/dist/tagify.css?"); /***/ }), /***/ "./node_modules/@yaireo/tagify/dist/tagify.js": /*!****************************************************!*\ !*** ./node_modules/@yaireo/tagify/dist/tagify.js ***! \****************************************************/ /*! no static exports found */ /***/ (function(module, exports, __webpack_require__) { eval("var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;/**\n * Tagify (v 2.31.6)- tags input component\n * By Yair Even-Or\n * Don't sell this code. (c)\n * https://github.com/yairEO/tagify\n */\n;(function(root, factory) {\n if (true) {\n !(__WEBPACK_AMD_DEFINE_ARRAY__ = [], __WEBPACK_AMD_DEFINE_FACTORY__ = (factory),\n\t\t\t\t__WEBPACK_AMD_DEFINE_RESULT__ = (typeof __WEBPACK_AMD_DEFINE_FACTORY__ === 'function' ?\n\t\t\t\t(__WEBPACK_AMD_DEFINE_FACTORY__.apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__)) : __WEBPACK_AMD_DEFINE_FACTORY__),\n\t\t\t\t__WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));\n } else {}\n}(this, function() {\n\"use strict\";\n\nfunction _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _nonIterableSpread(); }\n\nfunction _nonIterableSpread() { throw new TypeError(\"Invalid attempt to spread non-iterable instance\"); }\n\nfunction _iterableToArray(iter) { if (Symbol.iterator in Object(iter) || Object.prototype.toString.call(iter) === \"[object Arguments]\") return Array.from(iter); }\n\nfunction _arrayWithoutHoles(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = new Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } }\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(source, true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(source).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nfunction Tagify(input, settings) {\n // protection\n if (!input) {\n console.warn('Tagify: ', 'invalid input element ', input);\n return this;\n }\n\n this.applySettings(input, settings);\n this.state = {};\n this.value = []; // tags' data\n // events' callbacks references will be stores here, so events could be unbinded\n\n this.listeners = {};\n this.DOM = {}; // Store all relevant DOM elements in an Object\n\n this.extend(this, new this.EventDispatcher(this));\n this.build(input);\n this.loadOriginalValues();\n this.events.customBinding.call(this);\n this.events.binding.call(this);\n input.autofocus && this.DOM.input.focus();\n}\n\nTagify.prototype = {\n isIE: window.document.documentMode,\n // https://developer.mozilla.org/en-US/docs/Web/API/Document/compatMode#Browser_compatibility\n TEXTS: {\n empty: \"empty\",\n exceed: \"number of tags exceeded\",\n pattern: \"pattern mismatch\",\n duplicate: \"already exists\",\n notAllowed: \"not allowed\"\n },\n DEFAULTS: {\n delimiters: \",\",\n // [RegEx] split tags by any of these delimiters (\"null\" to cancel) Example: \",| |.\"\n pattern: null,\n // RegEx pattern to validate input by. Ex: /[1-9]/\n maxTags: Infinity,\n // Maximum number of tags\n callbacks: {},\n // Exposed callbacks object to be triggered on certain events\n addTagOnBlur: true,\n // Flag - automatically adds the text which was inputed as a tag when blur event happens\n duplicates: false,\n // Flag - allow tuplicate tags\n whitelist: [],\n // Array of tags to suggest as the user types (can be used along with \"enforceWhitelist\" setting)\n blacklist: [],\n // A list of non-allowed tags\n enforceWhitelist: false,\n // Flag - Only allow tags allowed in whitelist\n keepInvalidTags: false,\n // Flag - if true, do not remove tags which did not pass validation\n autoComplete: true,\n // Flag - tries to autocomplete the input's value while typing\n