hoodcms 6.0.7 → 6.0.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/js/admin.js +2 -2
- package/dist/js/app.js +2 -2
- package/dist/js/app.property.js +2 -2
- package/dist/js/core/Media.js +1 -1
- package/dist/js/core/Validator.d.ts +2 -2
- package/dist/js/core/Validator.js +18 -19
- package/dist/js/extensions/jqueryExtensions.d.ts +3 -3
- package/dist/js/login.js +1 -1
- package/package.json +17 -17
- package/src/js/admin.js +20 -21
- package/src/js/admin.js.map +1 -1
- package/src/js/app.js +19 -20
- package/src/js/app.js.map +1 -1
- package/src/js/app.property.js +19 -20
- package/src/js/app.property.js.map +1 -1
- package/src/js/login.js +1 -1
- package/src/ts/core/Media.ts +1 -1
- package/src/ts/core/Validator.ts +108 -109
- package/src/ts/extensions/jqueryExtensions.ts +3 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"app.property.js","sources":["../../../node_modules/tslib/tslib.es6.js","../../../node_modules/jquery-toast-plugin/dist/jquery.toast.min.js","../../../../src/ts/core/Alerts.ts","../../../../src/ts/core/Inline.ts","../../../../src/ts/core/DataList.ts","../../../../src/ts/core/Validator.ts","../../../../src/ts/core/Handlers.ts","../../../../src/ts/core/Uploader.ts","../../../../src/ts/core/HoodApi.ts","../../../../src/ts/core/Loader.ts","../../../../src/ts/extensions/jqueryExtensions.ts","../../../../src/ts/extensions/numberExtensions.ts","../../../../src/ts/extensions/stringExtensions.ts","../../../../src/ts/app/PropertyService.ts","../../../../src/ts/app.property.ts"],"sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __createBinding(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, privateMap) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to get private field on non-instance\");\r\n }\r\n return privateMap.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, privateMap, value) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to set private field on non-instance\");\r\n }\r\n privateMap.set(receiver, value);\r\n return value;\r\n}\r\n","\"function\"!=typeof Object.create&&(Object.create=function(t){function o(){}return o.prototype=t,new o}),function(t,o,i,s){\"use strict\";var n={_positionClasses:[\"bottom-left\",\"bottom-right\",\"top-right\",\"top-left\",\"bottom-center\",\"top-center\",\"mid-center\"],_defaultIcons:[\"success\",\"error\",\"info\",\"warning\"],init:function(o,i){this.prepareOptions(o,t.toast.options),this.process()},prepareOptions:function(o,i){var s={};\"string\"==typeof o||o instanceof Array?s.text=o:s=o,this.options=t.extend({},i,s)},process:function(){this.setup(),this.addToDom(),this.position(),this.bindToast(),this.animate()},setup:function(){var o=\"\";if(this._toastEl=this._toastEl||t(\"<div></div>\",{\"class\":\"jq-toast-single\"}),o+='<span class=\"jq-toast-loader\"></span>',this.options.allowToastClose&&(o+='<span class=\"close-jq-toast-single\">×</span>'),this.options.text instanceof Array){this.options.heading&&(o+='<h2 class=\"jq-toast-heading\">'+this.options.heading+\"</h2>\"),o+='<ul class=\"jq-toast-ul\">';for(var i=0;i<this.options.text.length;i++)o+='<li class=\"jq-toast-li\" id=\"jq-toast-item-'+i+'\">'+this.options.text[i]+\"</li>\";o+=\"</ul>\"}else this.options.heading&&(o+='<h2 class=\"jq-toast-heading\">'+this.options.heading+\"</h2>\"),o+=this.options.text;this._toastEl.html(o),this.options.bgColor!==!1&&this._toastEl.css(\"background-color\",this.options.bgColor),this.options.textColor!==!1&&this._toastEl.css(\"color\",this.options.textColor),this.options.textAlign&&this._toastEl.css(\"text-align\",this.options.textAlign),this.options.icon!==!1&&(this._toastEl.addClass(\"jq-has-icon\"),-1!==t.inArray(this.options.icon,this._defaultIcons)&&this._toastEl.addClass(\"jq-icon-\"+this.options.icon)),this.options[\"class\"]!==!1&&this._toastEl.addClass(this.options[\"class\"])},position:function(){\"string\"==typeof this.options.position&&-1!==t.inArray(this.options.position,this._positionClasses)?\"bottom-center\"===this.options.position?this._container.css({left:t(o).outerWidth()/2-this._container.outerWidth()/2,bottom:20}):\"top-center\"===this.options.position?this._container.css({left:t(o).outerWidth()/2-this._container.outerWidth()/2,top:20}):\"mid-center\"===this.options.position?this._container.css({left:t(o).outerWidth()/2-this._container.outerWidth()/2,top:t(o).outerHeight()/2-this._container.outerHeight()/2}):this._container.addClass(this.options.position):\"object\"==typeof this.options.position?this._container.css({top:this.options.position.top?this.options.position.top:\"auto\",bottom:this.options.position.bottom?this.options.position.bottom:\"auto\",left:this.options.position.left?this.options.position.left:\"auto\",right:this.options.position.right?this.options.position.right:\"auto\"}):this._container.addClass(\"bottom-left\")},bindToast:function(){var t=this;this._toastEl.on(\"afterShown\",function(){t.processLoader()}),this._toastEl.find(\".close-jq-toast-single\").on(\"click\",function(o){o.preventDefault(),\"fade\"===t.options.showHideTransition?(t._toastEl.trigger(\"beforeHide\"),t._toastEl.fadeOut(function(){t._toastEl.trigger(\"afterHidden\")})):\"slide\"===t.options.showHideTransition?(t._toastEl.trigger(\"beforeHide\"),t._toastEl.slideUp(function(){t._toastEl.trigger(\"afterHidden\")})):(t._toastEl.trigger(\"beforeHide\"),t._toastEl.hide(function(){t._toastEl.trigger(\"afterHidden\")}))}),\"function\"==typeof this.options.beforeShow&&this._toastEl.on(\"beforeShow\",function(){t.options.beforeShow()}),\"function\"==typeof this.options.afterShown&&this._toastEl.on(\"afterShown\",function(){t.options.afterShown()}),\"function\"==typeof this.options.beforeHide&&this._toastEl.on(\"beforeHide\",function(){t.options.beforeHide()}),\"function\"==typeof this.options.afterHidden&&this._toastEl.on(\"afterHidden\",function(){t.options.afterHidden()})},addToDom:function(){var o=t(\".jq-toast-wrap\");if(0===o.length?(o=t(\"<div></div>\",{\"class\":\"jq-toast-wrap\"}),t(\"body\").append(o)):(!this.options.stack||isNaN(parseInt(this.options.stack,10)))&&o.empty(),o.find(\".jq-toast-single:hidden\").remove(),o.append(this._toastEl),this.options.stack&&!isNaN(parseInt(this.options.stack),10)){var i=o.find(\".jq-toast-single\").length,s=i-this.options.stack;s>0&&t(\".jq-toast-wrap\").find(\".jq-toast-single\").slice(0,s).remove()}this._container=o},canAutoHide:function(){return this.options.hideAfter!==!1&&!isNaN(parseInt(this.options.hideAfter,10))},processLoader:function(){if(!this.canAutoHide()||this.options.loader===!1)return!1;var t=this._toastEl.find(\".jq-toast-loader\"),o=(this.options.hideAfter-400)/1e3+\"s\",i=this.options.loaderBg,s=t.attr(\"style\")||\"\";s=s.substring(0,s.indexOf(\"-webkit-transition\")),s+=\"-webkit-transition: width \"+o+\" ease-in; -o-transition: width \"+o+\" ease-in; transition: width \"+o+\" ease-in; background-color: \"+i+\";\",t.attr(\"style\",s).addClass(\"jq-toast-loaded\")},animate:function(){var t=this;if(this._toastEl.hide(),this._toastEl.trigger(\"beforeShow\"),\"fade\"===this.options.showHideTransition.toLowerCase()?this._toastEl.fadeIn(function(){t._toastEl.trigger(\"afterShown\")}):\"slide\"===this.options.showHideTransition.toLowerCase()?this._toastEl.slideDown(function(){t._toastEl.trigger(\"afterShown\")}):this._toastEl.show(function(){t._toastEl.trigger(\"afterShown\")}),this.canAutoHide()){var t=this;o.setTimeout(function(){\"fade\"===t.options.showHideTransition.toLowerCase()?(t._toastEl.trigger(\"beforeHide\"),t._toastEl.fadeOut(function(){t._toastEl.trigger(\"afterHidden\")})):\"slide\"===t.options.showHideTransition.toLowerCase()?(t._toastEl.trigger(\"beforeHide\"),t._toastEl.slideUp(function(){t._toastEl.trigger(\"afterHidden\")})):(t._toastEl.trigger(\"beforeHide\"),t._toastEl.hide(function(){t._toastEl.trigger(\"afterHidden\")}))},this.options.hideAfter)}},reset:function(o){\"all\"===o?t(\".jq-toast-wrap\").remove():this._toastEl.remove()},update:function(t){this.prepareOptions(t,this.options),this.setup(),this.bindToast()}};t.toast=function(t){var o=Object.create(n);return o.init(t,this),{reset:function(t){o.reset(t)},update:function(t){o.update(t)}}},t.toast.options={text:\"\",heading:\"\",showHideTransition:\"fade\",allowToastClose:!0,hideAfter:3e3,loader:!0,loaderBg:\"#9EC600\",stack:5,position:\"bottom-left\",bgColor:!1,textColor:!1,textAlign:\"left\",icon:!1,beforeShow:function(){},afterShown:function(){},beforeHide:function(){},afterHidden:function(){}}}(jQuery,window,document);","import Swal, { SweetAlertOptions, SweetAlertResult } from 'sweetalert2';\r\nimport 'jquery-toast-plugin';\r\n\r\nconst BootstrapSwal = Swal.mixin({\r\n customClass: {\r\n confirmButton: 'btn btn-success m-1 px-3',\r\n cancelButton: 'btn btn-danger m-1 px-3'\r\n },\r\n buttonsStyling: false\r\n});\r\n\r\nexport class Alerts {\r\n\r\n static log(message: any, type: 'message' | 'error' | 'warning' | 'info' = 'message') {\r\n if (!document.body.classList.contains('dev-mode')) {\r\n return;\r\n }\r\n switch (type) {\r\n case 'error':\r\n console.error(message);\r\n break;\r\n case 'message':\r\n console.log(message);\r\n break;\r\n case 'warning':\r\n console.warn(message);\r\n break;\r\n case 'info':\r\n console.info(message);\r\n break;\r\n }\r\n }\r\n\r\n static error(message: string, title: string = null, hideAfter: number = null) {\r\n \r\n $.toast({\r\n heading: title,\r\n text: message,\r\n icon: 'error',\r\n position: 'bottom-left',\r\n loader: false,\r\n bgColor: '#d0100b',\r\n textColor: 'white', \r\n hideAfter: hideAfter\r\n });\r\n\r\n }\r\n\r\n static warning(message: string, title: string = null, hideAfter: number = null) {\r\n \r\n $.toast({\r\n heading: title,\r\n text: message,\r\n icon: 'error',\r\n position: 'bottom-left',\r\n loader: false,\r\n bgColor: '#ef9007',\r\n textColor: 'white',\r\n hideAfter: hideAfter\r\n });\r\n\r\n } \r\n\r\n static message(message: string, title: string = null, hideAfter: number = null) {\r\n \r\n $.toast({\r\n heading: title,\r\n text: message,\r\n icon: 'error',\r\n position: 'bottom-left',\r\n loader: false,\r\n bgColor: '#222222',\r\n textColor: 'white',\r\n hideAfter: hideAfter\r\n });\r\n\r\n } \r\n\r\n static success(message: string, title: string = null, hideAfter: number = null) {\r\n \r\n $.toast({\r\n heading: title,\r\n text: message,\r\n icon: 'error',\r\n position: 'bottom-left',\r\n loader: false,\r\n bgColor: '#28a745',\r\n textColor: 'white',\r\n hideAfter: hideAfter\r\n });\r\n\r\n } \r\n\r\n static alert(message: string, title: string = null, icon: string = 'info', hideAfter: number = 10000) {\r\n\r\n switch (icon) {\r\n case 'error':\r\n Alerts.error(message, title, hideAfter);\r\n break;\r\n case 'warning':\r\n Alerts.warning(message, title, hideAfter);\r\n break;\r\n case 'info':\r\n Alerts.message(message, title, hideAfter);\r\n break;\r\n case 'success':\r\n Alerts.success(message, title, hideAfter);\r\n break;\r\n }\r\n\r\n }\r\n\r\n static sweetAlert(options: SweetAlertOptions, callback: (result: SweetAlertResult<any>) => void) {\r\n BootstrapSwal.fire(options).then(function (result: any) {\r\n callback(result);\r\n });\r\n }\r\n\r\n static confirm(options: SweetAlertOptions, callback: (result: SweetAlertResult<any>) => void) {\r\n\r\n let baseOptions: SweetAlertOptions = {\r\n showCancelButton: true,\r\n footer: null,\r\n title: 'Are you sure?',\r\n html: 'Are you sure you want to do this?',\r\n confirmButtonText: 'Ok', \r\n cancelButtonText:'Cancel'\r\n };\r\n\r\n Alerts.sweetAlert({...baseOptions, ...options}, callback);\r\n }\r\n\r\n static prompt(options: SweetAlertOptions, callback: (result: SweetAlertResult<any>) => void) {\r\n\r\n let baseOptions: SweetAlertOptions = {\r\n input: 'text',\r\n inputAttributes: {\r\n autocapitalize: 'off'\r\n },\r\n showCancelButton: true,\r\n icon: 'info',\r\n footer: '<span class=\"text-warning\"><i class=\"fa fa-exclamation-triangle\"></i> This cannot be undone.</span>', \r\n confirmButtonText: 'Ok', \r\n cancelButtonText: 'Cancel'\r\n };\r\n\r\n Alerts.sweetAlert({...baseOptions, ...options}, callback);\r\n }\r\n\r\n log(message: string, type: 'message' | 'error' | 'warning' | 'info' = 'message') {\r\n Alerts.log(message, type);\r\n }\r\n\r\n error(message: string, title: string = null, hideAfter: number = null) {\r\n Alerts.error(message, title, hideAfter);\r\n }\r\n\r\n warning(message: string, title: string = null, hideAfter: number = null) {\r\n Alerts.warning(message, title, hideAfter);\r\n }\r\n\r\n message(message: string, title: string = null, hideAfter: number = null) {\r\n Alerts.message(message, title, hideAfter);\r\n }\r\n\r\n success(message: string, title: string = null, hideAfter: number = null) {\r\n Alerts.success(message, title, hideAfter);\r\n }\r\n\r\n alert(message: string, title: string = null, icon: string = 'info', hideAfter: number = 10000) {\r\n Alerts.alert(message, message, icon, hideAfter);\r\n }\r\n\r\n sweetAlert(options: SweetAlertOptions, callback: (result: SweetAlertResult<any>) => void) {\r\n Alerts.sweetAlert(options, callback);\r\n }\r\n\r\n confirm(options: SweetAlertOptions, callback: (result: SweetAlertResult<any>) => void) {\r\n Alerts.confirm(options, callback);\r\n }\r\n\r\n prompt(options: SweetAlertOptions, callback: (result: SweetAlertResult<any>) => void) {\r\n Alerts.prompt(options, callback);\r\n }\r\n\r\n}","import { Alerts } from \"./Alerts\";\r\nimport { Response } from \"./Response\";\r\n\r\nexport interface InlineOptions {\r\n\r\n /**\r\n * Called before the data is fetched.\r\n */\r\n onLoad?: (sender?: HTMLElement) => void;\r\n\r\n /**\r\n * Called before the fetched HTML is rendered to the list. Must return the data back to datalist to render.\r\n */\r\n onRender?: (html: string, sender?: HTMLElement) => string;\r\n\r\n /**\r\n * Called when loading and rendering is complete.\r\n */\r\n onComplete?: (html: string, sender?: HTMLElement) => void;\r\n\r\n /**\r\n * Called when an error occurs.\r\n */\r\n onError?: (jqXHR: any, textStatus: any, errorThrown: any) => void;\r\n\r\n}\r\n\r\nexport class Inline {\r\n static load(tag: HTMLElement, options: InlineOptions) {\r\n\r\n let $tag = $(tag) as JQuery<HTMLElement>;\r\n $tag.addClass('loading');\r\n if (options.onLoad) {\r\n options.onLoad(tag);\r\n }\r\n\r\n let url: string = $tag.data('url');\r\n $.get(url, function (data: string) {\r\n\r\n if (options.onRender) {\r\n data = options.onRender(data, tag);\r\n }\r\n\r\n $tag.html(data);\r\n $tag.removeClass('loading');\r\n\r\n if (options.onComplete) {\r\n options.onComplete(data, tag);\r\n }\r\n\r\n })\r\n .fail(options.onError ?? Inline.handleError);\r\n }\r\n\r\n static task(url: string, sender: HTMLElement,\r\n complete: (data: Response, sender?: HTMLElement) => void = null,\r\n error: (jqXHR: any, textStatus: any, errorThrown: any) => void = null): void {\r\n\r\n if (sender) {\r\n sender.classList.add('loading');\r\n }\r\n $.get(url, function (response: Response) {\r\n if (sender) {\r\n sender.classList.remove('loading');\r\n }\r\n if (complete) {\r\n complete(response, sender);\r\n }\r\n })\r\n .fail(error ?? Inline.handleError);\r\n\r\n }\r\n\r\n static post(url: string, sender: HTMLElement,\r\n complete: (data: Response, sender?: HTMLElement) => void = null,\r\n error: (jqXHR: any, textStatus: any, errorThrown: any) => void = null): void {\r\n\r\n if (sender) {\r\n sender.classList.add('loading');\r\n }\r\n $.post(url, function (response: Response) {\r\n if (sender) {\r\n sender.classList.remove('loading');\r\n }\r\n if (complete) {\r\n complete(response, sender);\r\n }\r\n })\r\n .fail(error ?? Inline.handleError);\r\n\r\n }\r\n\r\n static handleError(xhr: { status: string | number; }, textStatus: any, errorThrown: any) {\r\n if (xhr.status === 500) {\r\n Alerts.error(\"There was an error processing the content, please contact an administrator if this continues.\", \"Error \" + xhr.status, 10000);\r\n } else if (xhr.status === 404) {\r\n Alerts.error(\"The content could not be found.\", \"Error \" + xhr.status, 10000);\r\n } else if (xhr.status === 401) {\r\n Alerts.error(\"You are not allowed to view this resource, are you logged in correctly?\", \"Error \" + xhr.status, 10000);\r\n window.location = window.location;\r\n }\r\n }\r\n}\r\n\r\n","import { Alerts } from \"./Alerts\";\r\nimport { Inline } from \"./Inline\";\r\n\r\ndeclare global {\r\n interface HTMLElement {\r\n hoodDataList: DataList;\r\n }\r\n}\r\n\r\nexport interface DataListOptions {\r\n\r\n /**\r\n * Called before the data is fetched.\r\n */\r\n onLoad?: (sender?: HTMLElement) => void;\r\n\r\n /**\r\n * Called before the fetched HTML is rendered to the list. Must return the data back to datalist to render.\r\n */\r\n onRender?: (html: string, sender?: HTMLElement) => string;\r\n\r\n /**\r\n * Called when loading and rendering is complete.\r\n */\r\n onComplete?: (html: string, sender?: HTMLElement) => void;\r\n\r\n /**\r\n * Called when an error occurs.\r\n */\r\n onError?: (jqXHR: any, textStatus: any, errorThrown: any) => void;\r\n\r\n}\r\n\r\n/**\r\n * Attach a data list feed to an HTML element. The element must have a data-url attribute to connect to a feed.\r\n */\r\n\r\nexport class DataList {\r\n element: HTMLElement;\r\n options: DataListOptions;\r\n\r\n /**\r\n * @param element The datalist element. The element must have a data-url attribute to connect to a feed.\r\n */\r\n constructor(element: HTMLElement, options: DataListOptions) {\r\n\r\n this.element = element;\r\n this.element.hoodDataList = this;\r\n if (typeof (element) == 'undefined' || element == null) {\r\n Alerts.log('Could not DataList to element, element does not exist.', 'error');\r\n return;\r\n }\r\n\r\n this.options = { ...this.options, ...options };\r\n\r\n if ($(this.element).hasClass('query')) {\r\n\r\n let r = new RegExp('^(?:[a-z]+:)?//', 'i');\r\n let pageUrl: URL = null;\r\n if (r.test(this.element.dataset.url)) {\r\n pageUrl = new URL(this.element.dataset.url);\r\n } else {\r\n pageUrl = new URL(window.location.origin + this.element.dataset.url);\r\n }\r\n if ('URLSearchParams' in window) {\r\n var searchParams = new URLSearchParams(window.location.search);\r\n var urlParams = new URLSearchParams(pageUrl.search);\r\n searchParams.forEach((value, key, parent) => {\r\n urlParams.set(key, value);\r\n });\r\n if (urlParams.get(\"page\") == \"0\") {\r\n urlParams.set(\"page\", \"1\");\r\n }\r\n pageUrl.search = urlParams.toString();\r\n } else {\r\n pageUrl.search = window.location.search;\r\n }\r\n\r\n let url = pageUrl.pathname + pageUrl.search;\r\n $(this.element).attr('data-url', url);\r\n $(this.element).data('url', url);\r\n\r\n }\r\n\r\n if (!$(this.element).hasClass('refresh-only')) {\r\n var listUrl = document.createElement('a');\r\n listUrl.href = $(this.element).data('url');\r\n this.reload(new URL(listUrl.href));\r\n }\r\n\r\n $(this.element).on('click', '.pagination a, a.hood-inline-list-target', function (this: DataList, e: JQuery.ClickEvent) {\r\n\r\n e.preventDefault();\r\n\r\n var url = document.createElement('a');\r\n url.href = (e.currentTarget as HTMLAnchorElement).href;\r\n\r\n var listUrl = document.createElement('a');\r\n listUrl.href = $(this.element).data('url');\r\n listUrl.search = url.search;\r\n\r\n this.reload(new URL(listUrl.href));\r\n\r\n }.bind(this));\r\n\r\n $('body').on('submit', `form.inline[data-target=\"#${this.element.id}\"]`, function (this: DataList, e: JQuery.ClickEvent) {\r\n\r\n e.preventDefault();\r\n\r\n let $form = $(e.currentTarget);\r\n\r\n var listUrl = document.createElement('a');\r\n listUrl.href = $(this.element).data('url');\r\n\r\n listUrl.search = \"?\" + $form.serialize();\r\n this.reload(new URL(listUrl.href));\r\n\r\n }.bind(this));\r\n\r\n }\r\n\r\n reload(this: DataList, url: URL = null) {\r\n if (url) {\r\n if (history.pushState && $(this.element).hasClass('query')) {\r\n let newurl = window.location.protocol + \"//\" + window.location.host + window.location.pathname + (url.href.contains('?') ? \"?\" + url.href.substring(url.href.indexOf('?') + 1) : '');\r\n window.history.pushState({ path: newurl }, '', newurl);\r\n }\r\n $(this.element).data('url', url);\r\n }\r\n Inline.load(this.element, { ...this.options });\r\n }\r\n\r\n}\r\n","import { Alerts } from \"./Alerts\";\r\nimport { Inline } from \"./Inline\";\r\nimport { Response } from \"./Response\";\r\n\r\nexport interface ValidatorOptions {\r\n errorAlert?: string;\r\n\r\n /**\r\n * Called before the submit of the form data, you can return the data to be serialised.\r\n */\r\n onSubmit?: (sender: Validator) => void;\r\n\r\n /**\r\n * Called when submit is complete.\r\n */\r\n onComplete?: (data: Response, sender?: Validator) => void;\r\n\r\n /**\r\n * Called when an error occurs.\r\n */\r\n onError?: (jqXHR: any, textStatus: any, errorThrown: any) => void;\r\n\r\n serializationFunction?: () => string;\r\n\r\n useAjax?: boolean;\r\n\r\n}\r\n\r\nexport class Validator {\r\n element: HTMLFormElement;\r\n options: ValidatorOptions = {\r\n errorAlert: 'There are errors on the form, please check your answers and try again.',\r\n useAjax: true\r\n };\r\n\r\n /**\r\n * @param element The datalist element. The element must have a data-url attribute to connect to a feed.\r\n */\r\n constructor(element: HTMLFormElement, options: ValidatorOptions) {\r\n\r\n this.element = element;\r\n if (!this.element) {\r\n return;\r\n }\r\n\r\n this.options.serializationFunction = function (this: Validator) {\r\n let rtn = $(this.element).serialize();\r\n return rtn;\r\n }.bind(this);\r\n\r\n this.options = { ...this.options, ...options };\r\n\r\n this.element.addEventListener('submit', function (this: Validator, e: Event) {\r\n e.preventDefault();\r\n e.stopImmediatePropagation();\r\n this.submitForm();\r\n }.bind(this));\r\n var tag = '[data-submit=\"#' + this.element.id + '\"]';\r\n let submitButtons = $(tag);\r\n if (submitButtons) {\r\n submitButtons.on('click', function (this: Validator, e: Event) {\r\n e.preventDefault();\r\n e.stopImmediatePropagation();\r\n let exit = $(e.currentTarget).data('exit'); \r\n if (exit) {\r\n $(this.element).find(\"input#exit\").remove();\r\n $(\"<input id='exit' />\").attr(\"type\", \"hidden\")\r\n .attr(\"name\", \"exit\")\r\n .attr(\"value\", \"true\")\r\n .appendTo(this.element);\r\n }\r\n this.submitForm();\r\n }.bind(this));\r\n }\r\n }\r\n\r\n submitForm() {\r\n this.element.classList.add('was-validated');\r\n if (this.element.checkValidity()) {\r\n\r\n this.element.classList.add('loading');\r\n\r\n let checkboxes = this.element.querySelector('input[type=checkbox]');\r\n if (checkboxes) {\r\n Array.prototype.slice.call(checkboxes)\r\n .forEach(function (checkbox: HTMLInputElement) {\r\n if ($(this).is(':checked')) {\r\n $(this).val('true');\r\n }\r\n });\r\n }\r\n\r\n if (this.options.onSubmit) {\r\n this.options.onSubmit(this);\r\n }\r\n\r\n if (this.options.useAjax) {\r\n\r\n let formData = this.options.serializationFunction();\r\n\r\n $.post(this.element.action, formData, function (this: Validator, data: any) {\r\n if (this.options.onComplete) {\r\n this.options.onComplete(data, this);\r\n }\r\n }.bind(this))\r\n .fail(this.options.onError ?? Inline.handleError);\r\n\r\n } else {\r\n\r\n this.element.submit();\r\n\r\n }\r\n\r\n } else {\r\n\r\n if (this.options.errorAlert) {\r\n Alerts.error(this.options.errorAlert, null, 5000);\r\n }\r\n }\r\n\r\n }\r\n}","export class Handlers {\r\n constructor() {\r\n }\r\n \r\n /**\r\n * Initialise all default Hood CMS handlers.\r\n */\r\n initDefaultHandlers() {\r\n\r\n this.checkboxToCsvInput();\r\n this.iconSelector();\r\n this.initSelectValues();\r\n this.scrollHandlers();\r\n this.selectText();\r\n this.setValueOnClick();\r\n this.submitOnChange();\r\n\r\n }\r\n\r\n /**\r\n * Sets values of any selects that have the value set in data-selected, useful for \r\n */\r\n initSelectValues(tag: string = 'body') {\r\n $(tag).find('select[data-selected]').each(this.initSelectValuesHandler);\r\n }\r\n\r\n initSelectValuesHandler(this: HTMLElement, index: number, element: HTMLElement) {\r\n let sel = $(this).data('selected');\r\n if (sel !== 'undefined' && sel !== '') {\r\n let selected = String(sel);\r\n $(this).val(selected);\r\n }\r\n }\r\n\r\n /**\r\n * Sets up any Hood Icon selector fields, requires the correct HTML setup.\r\n */\r\n iconSelector(tag: string = 'body') {\r\n $(tag).find('[data-hood-icon]').each(this.iconSelectorHandler);\r\n }\r\n\r\n iconSelectorHandler(this: HTMLElement, index: number, element: HTMLElement) {\r\n let $tag = $(this);\r\n let input = $tag.find('input[data-hood-icon-input]')\r\n let display = $tag.find('[data-hood-icon-display]')\r\n let collapse = $tag.find('.collapse')\r\n\r\n $tag.find('[data-hood-icon-key][data-hood-icon-value]').on('click', function () {\r\n $tag.find('[data-hood-icon-key][data-hood-icon-value]').removeClass('active');\r\n $(this).addClass('active');\r\n let key = $(this).data('hoodIconKey');\r\n let value = $(this).data('hoodIconValue');\r\n $(this)\r\n display.html(value);\r\n input.val(key);\r\n if (collapse) {\r\n collapse.removeClass('show');\r\n }\r\n });\r\n }\r\n\r\n /**\r\n * Submits the form when input is changed, mark inputs with .submit-on-change class.\r\n */\r\n selectText(tag: string = 'body') {\r\n $(tag).on('click', '.select-text', this.selectTextHandler);\r\n }\r\n\r\n selectTextHandler(this: HTMLInputElement) {\r\n let $this = $(this);\r\n $this.select();\r\n // Work around Chrome's little problem\r\n $this.mouseup(function () {\r\n // Prevent further mouseup intervention\r\n $this.unbind(\"mouseup\");\r\n return false;\r\n });\r\n }\r\n\r\n /**\r\n * Attaches handlers for default scrolling functions, scroll to top, scroll to target (with header.header offset calculated)\r\n * and scroll to target direct (with no calculated offset).\r\n */\r\n scrollHandlers(tag: string = 'body') {\r\n $(tag).on('click', '.scroll-top, .scroll-to-top', this.scrollTop);\r\n $(tag).on('click', '.scroll-target, .scroll-to-target', this.scrollTarget);\r\n $(tag).on('click', '.scroll-target-direct, .scroll-to-target-direct', this.scrollTargetDirect);\r\n }\r\n\r\n scrollTop(this: HTMLAnchorElement, e: JQuery.ClickEvent) {\r\n if (e) e.preventDefault();\r\n $('html, body').animate({ scrollTop: 0 }, 800);\r\n return false;\r\n }\r\n\r\n scrollTarget(this: HTMLAnchorElement, e: JQuery.ClickEvent) {\r\n if (e) e.preventDefault();\r\n let url = $(this).attr('href').split('#')[0];\r\n if (url !== window.location.pathname && url !== \"\") {\r\n return;\r\n }\r\n let target = this.hash;\r\n let $target = $(target);\r\n let $header = $('header.header');\r\n let headerOffset = 0;\r\n if ($header) {\r\n headerOffset = $header.height();\r\n }\r\n if ($(this).data('offset'))\r\n $('html, body').stop().animate({\r\n 'scrollTop': $target.offset().top - $(this).data('offset')\r\n }, 900, 'swing');\r\n else\r\n $('html, body').stop().animate({\r\n 'scrollTop': $target.offset().top - headerOffset\r\n }, 900, 'swing');\r\n }\r\n\r\n scrollTargetDirect(this: HTMLAnchorElement) {\r\n let scrollTop = $('body').scrollTop();\r\n let top = $($(this).attr('href')).offset().top;\r\n\r\n $('html, body').animate({\r\n scrollTop: top\r\n }, Math.abs(top - scrollTop));\r\n return false;\r\n }\r\n\r\n /**\r\n * Compiles any selected checkboxes with matching data-hood-csv-input tags,\r\n * then saves the CSV list of the values to the input given in the tag.\r\n */\r\n checkboxToCsvInput(tag: string = 'body') {\r\n $(tag).on('change', 'input[type=checkbox][data-hood-csv-input]', this.checkboxToCsvInputHandler);\r\n }\r\n\r\n checkboxToCsvInputHandler(this: HTMLInputElement, e: JQuery.ChangeEvent<HTMLElement>) {\r\n if (e) e.preventDefault();\r\n // when i change - create an array, with any other checked of the same data-input checkboxes. and add to the data-input referenced tag.\r\n let items = new Array();\r\n $('input[data-hood-csv-input=\"' + $(this).data('hoodCsvInput') + '\"]').each(function () {\r\n if ($(this).is(\":checked\"))\r\n items.push($(this).val());\r\n });\r\n let id = '#' + $(this).data('input');\r\n let vals = JSON.stringify(items);\r\n $(id).val(vals);\r\n }\r\n\r\n /**\r\n * Submits the form when input is changed, mark inputs with .submit-on-change class.\r\n */\r\n submitOnChange(tag: string = 'body') {\r\n $(tag).on('change', '.submit-on-change', this.submitOnChangeHandler);\r\n }\r\n\r\n submitOnChangeHandler(this: HTMLFormElement, e: JQuery.ChangeEvent) {\r\n if (e) e.preventDefault();\r\n $(this).parents('form').submit();\r\n }\r\n\r\n /**\r\n * Sets the value of the input [data-target] when clicked to the value in [data-value]\r\n */\r\n setValueOnClick(tag: string = 'body') {\r\n $(tag).on('click', '.click-select[data-target][data-value]', this.setValueOnClickHandler);\r\n }\r\n\r\n setValueOnClickHandler(this: HTMLElement) {\r\n let $this = $(this);\r\n let targetId = '#' + $this.data('target');\r\n $(targetId).val($this.data('value'));\r\n $(targetId).trigger('change');\r\n $('.click-select.clean[data-target=\"' + $this.data('target') + '\"]').each(function () { $(this).removeClass('active'); });\r\n $('.click-select.clean[data-target=\"' + $this.data('target') + '\"][data-value=\"' + $this.data('value') + '\"]').each(function () { $(this).addClass('active'); });\r\n }\r\n\r\n}","import { Response } from './Response';\r\nimport { Alerts } from './Alerts';\r\n\r\nexport class Uploader {\r\n constructor() {\r\n if ($('.image-uploader').length || $('.gallery-uploader').length) {\r\n $(\".upload-progress-bar\").hide();\r\n $('.image-uploader').each(this.singleImage);\r\n $('.gallery-uploader').each(this.gallery);\r\n }\r\n }\r\n\r\n refreshImage(sender: JQuery<HTMLElement>, data: Response) {\r\n $(sender.data('preview')).css({\r\n 'background-image': 'url(' + data.media.smallUrl + ')'\r\n });\r\n $(sender.data('preview')).find('img').attr('src', data.media.smallUrl);\r\n }\r\n\r\n singleImage(this: HTMLElement) {\r\n\r\n let tag = '#' + $(this).attr('id');\r\n let $tag = $(tag);\r\n\r\n let jsontag = '#' + $(this).attr('json');\r\n\r\n let avatarDropzone: Dropzone = null;\r\n $tag.dropzone({\r\n url: $tag.data('url'),\r\n maxFiles: 1,\r\n paramName: 'file',\r\n parallelUploads: 1,\r\n acceptedFiles: $tag.data('types') || \".png,.jpg,.jpeg,.gif\",\r\n autoProcessQueue: true, // Make sure the files aren't queued until manually added\r\n previewsContainer: false, // Define the container to display the previews\r\n clickable: tag,\r\n init: function () {\r\n avatarDropzone = this;\r\n }\r\n });\r\n\r\n avatarDropzone.on(\"addedfile\", function () {\r\n });\r\n\r\n avatarDropzone.on(\"totaluploadprogress\", function (progress) {\r\n $(\".upload-progress-bar.\" + tag.replace('#', '') + \" .progress-bar\").css({ width: progress + \"%\" });\r\n });\r\n\r\n avatarDropzone.on(\"sending\", function (file) {\r\n $(\".upload-progress-bar.\" + tag.replace('#', '')).show();\r\n $($tag.data('preview')).addClass('loading');\r\n });\r\n\r\n avatarDropzone.on(\"queuecomplete\", function (progress) {\r\n $(\".upload-progress-bar.\" + tag.replace('#', '')).hide();\r\n });\r\n\r\n avatarDropzone.on(\"success\", function (file, response: Response) {\r\n if (response.success) {\r\n if (response.media) {\r\n $(jsontag).val(JSON.stringify(response.media));\r\n $($tag.data('preview')).css({\r\n 'background-image': 'url(' + response.media.smallUrl + ')'\r\n });\r\n $($tag.data('preview')).find('img').attr('src', response.media.smallUrl);\r\n }\r\n Alerts.success(\"New image added!\");\r\n } else {\r\n Alerts.error(\"There was a problem adding the image: \" + response.error);\r\n }\r\n avatarDropzone.removeFile(file);\r\n $($tag.data('preview')).removeClass('loading');\r\n });\r\n\r\n }\r\n\r\n gallery(this: HTMLElement) {\r\n\r\n let tag = '#' + $(this).attr('id');\r\n let $tag = $(tag);\r\n\r\n let previewNode = document.querySelector(tag + \"-template\");\r\n previewNode.id = \"\";\r\n let previewTemplate = (<HTMLElement>previewNode.parentNode).innerHTML;\r\n previewNode.parentNode.removeChild(previewNode);\r\n\r\n let galleryDropzone: Dropzone = null;\r\n\r\n $tag.dropzone({\r\n url: $tag.data('url'),\r\n thumbnailWidth: 80,\r\n thumbnailHeight: 80,\r\n parallelUploads: 5,\r\n previewTemplate: previewTemplate,\r\n paramName: 'files',\r\n acceptedFiles: $tag.data('types') || \".png,.jpg,.jpeg,.gif\",\r\n autoProcessQueue: true, // Make sure the files aren't queued until manually added\r\n previewsContainer: \"#previews\", // Define the container to display the previews\r\n clickable: \".fileinput-button\",\r\n init: function () {\r\n galleryDropzone = this;\r\n }\r\n });\r\n\r\n $(tag + \" .cancel\").hide();\r\n\r\n galleryDropzone.on(\"addedfile\", function (file) {\r\n $(file.previewElement.querySelector(\".complete\")).hide();\r\n $(file.previewElement.querySelector(\".cancel\")).show();\r\n $(tag + \" .cancel\").show();\r\n });\r\n\r\n // Update the total progress bar\r\n galleryDropzone.on(\"totaluploadprogress\", function (totalProgress: number, totalBytes: number, totalBytesSent: number) {\r\n let progressBar = document.querySelector(\"#total-progress .progress-bar\") as HTMLElement;\r\n progressBar.style.width = totalProgress + \"%\";\r\n });\r\n\r\n galleryDropzone.on(\"sending\", function (file: Dropzone.DropzoneFile) {\r\n // Show the total progress bar when upload starts\r\n let progressBar = document.querySelector(\"#total-progress\") as HTMLElement;\r\n progressBar.style.opacity = \"1\";\r\n });\r\n\r\n // Hide the total progress bar when nothing's uploading anymore\r\n galleryDropzone.on(\"complete\", function (file) {\r\n $(file.previewElement.querySelector(\".cancel\")).hide();\r\n $(file.previewElement.querySelector(\".progress\")).hide();\r\n $(file.previewElement.querySelector(\".complete\")).show();\r\n\r\n console.error(\"Uploader.Gallery.Dropzone.OnComplete - Inline.Refresh('.gallery') is not implemented.\");\r\n //Inline.Refresh('.gallery');\r\n });\r\n\r\n // Hide the total progress bar when nothing's uploading anymore\r\n galleryDropzone.on(\"queuecomplete\", function (progress) {\r\n let totalProgress = document.querySelector(\"#total-progress\") as HTMLElement;\r\n totalProgress.style.opacity = \"0\";\r\n $(tag + \" .cancel\").hide();\r\n });\r\n\r\n galleryDropzone.on(\"success\", function (file, response: Response) {\r\n\r\n console.error(\"Uploader.Gallery.Dropzone.OnSuccess - Inline.Refresh('.gallery') is not implemented.\");\r\n //Inline.Refresh('.gallery');\r\n\r\n if (response.success) {\r\n Alerts.success(\"New images added!\");\r\n } else {\r\n Alerts.error(\"There was a problem adding the profile image: \" + response.error);\r\n }\r\n });\r\n\r\n // Setup the buttons for all transfers\r\n // The \"add files\" button doesn't need to be setup because the config\r\n // `clickable` has already been specified.\r\n $(\".actions .cancel\").click(function () {\r\n galleryDropzone.removeAllFiles(true);\r\n });\r\n }\r\n\r\n}","/// <reference types=\"google.maps\" />\r\n\r\nimport { Response } from \"./Response\";\r\nimport { Alerts } from \"./Alerts\";\r\nimport { Handlers } from \"./Handlers\";\r\nimport { Uploader } from \"./Uploader\";\r\nimport { Validator } from \"./Validator\";\r\n\r\ndeclare global {\r\n interface Hood {\r\n alerts: Alerts;\r\n uploader: Uploader;\r\n handlers: Handlers;\r\n }\r\n\r\n interface Window {\r\n hood: Hood;\r\n }\r\n}\r\n\r\n/**\r\n * Base class for extending a Hood CMS website, ensure you call HoodApi.initialise() to setup loaders and contact form defaults.\r\n */\r\nexport class HoodApi {\r\n alerts: Alerts = new Alerts();\r\n handlers: Handlers = new Handlers();\r\n uploader: Uploader = new Uploader();\r\n\r\n constructor() {\r\n }\r\n\r\n // Initialise Hood CMS site defaults, can be overridden or individual setup items can be called instead of the initialise function. \r\n initialise() {\r\n // Initialise loaders (default, adds loading to body tag)\r\n this.setupLoaders();\r\n\r\n // Hook up default handlers.\r\n this.handlers.initDefaultHandlers();\r\n\r\n // Init hood contact forms. \r\n this.initContactForms();\r\n }\r\n\r\n /**\r\n * Default Hood CMS loaders, can be used however, this simply adds a \"loading\" class to the body tag on show/hide.\r\n */\r\n setupLoaders(): void {\r\n $('body').on('loader-show', function () { document.body.classList.add('loading') })\r\n $('body').on('loader-hide', function () { document.body.classList.remove('loading') })\r\n }\r\n\r\n /**\r\n * Default initialisation function for Google Maps, should be called as the callback from the Google Maps API script tag.\r\n */\r\n initGoogleMaps(tag: string = '.google-map') {\r\n\r\n $(tag).each(function () {\r\n\r\n var myLatLng = new google.maps.LatLng($(this).data('lat'), $(this).data('long'));\r\n\r\n console.log('Loading map at: ' + $(this).data('lat') + ', ' + $(this).data('long'));\r\n\r\n var map = new google.maps.Map(this, {\r\n zoom: $(this).data('zoom') || 15,\r\n center: myLatLng,\r\n scrollwheel: false\r\n });\r\n\r\n var marker = new google.maps.Marker({\r\n position: myLatLng,\r\n map: map,\r\n title: $(this).data('marker')\r\n });\r\n\r\n $(window).on('resize', function () {\r\n google.maps.event.trigger(map, 'resize');\r\n });\r\n google.maps.event.trigger(map, 'resize');\r\n\r\n });\r\n\r\n }\r\n \r\n /**\r\n * Initialisation function for contact forms on the site, will add validator, and submit/functionality to any forms matching the given tag selector string.\r\n */\r\n initContactForms(tag: string = '.contact-form') {\r\n\r\n let $form = $(tag);\r\n\r\n $form.find('.thank-you').hide();\r\n $form.find('.form-content').show();\r\n\r\n let form: HTMLFormElement = $(tag)[0] as HTMLFormElement;\r\n new Validator(form, {\r\n onComplete: function (this: HoodApi, response: Response) {\r\n if (response.success) {\r\n\r\n if ($form.attr('data-redirect'))\r\n window.location.href = $form.attr('data-redirect');\r\n\r\n if ($form.attr('data-alert-message'))\r\n Alerts.success($form.attr('data-alert-message'));\r\n\r\n $form.find('.form').hide();\r\n $form.find('.thank-you').show();\r\n } else {\r\n if ($form.attr('data-alert-error'))\r\n Alerts.error($form.attr('data-alert-error'));\r\n else {\r\n console.error(response.errors);\r\n Alerts.error(\"There are errors on the form, please check your answers and try again.\");\r\n }\r\n }\r\n\r\n }.bind(this)\r\n });\r\n\r\n }\r\n\r\n}","export class Loader {\r\n constructor() {\r\n new CustomEvent('loader-show');\r\n new CustomEvent('loader-hide');\r\n }\r\n\r\n static show(): void {\r\n $('body').trigger('loader-show');\r\n }\r\n\r\n static hide(): void {\r\n $('body').trigger('loader-hide');\r\n }\r\n}\r\n\r\nnew Loader()","import { SweetAlertResult } from 'sweetalert2';\r\nimport { Alerts } from '../core/Alerts';\r\n\r\ndeclare global {\r\n interface JQuery {\r\n exists(): number;\r\n restrictToSlug(): void;\r\n restrictToPageSlug(): void;\r\n restrictToMetaSlug(): void;\r\n characterCounter(): void;\r\n warningAlert(): void;\r\n }\r\n}\r\n\r\n$.fn.exists = function () {\r\n return $(this).length;\r\n};\r\n\r\n$.fn.restrictToSlug = function (restrictPattern: RegExp = /[^0-9a-zA-Z]*/g) {\r\n let targets = $(this);\r\n\r\n // The characters inside this pattern are accepted\r\n // and everything else will be 'cleaned'\r\n // For example 'ABCdEfGhI5' become 'ABCEGI5'\r\n\r\n var restrictHandler = function () {\r\n var val = $(this).val() as string;\r\n var newVal = val.replace(restrictPattern, '');\r\n\r\n // This condition is to prevent selection and keyboard navigation issues\r\n if (val !== newVal) {\r\n $(this).val(newVal);\r\n }\r\n };\r\n\r\n targets.on('keyup', restrictHandler);\r\n targets.on('paste', restrictHandler);\r\n targets.on('change', restrictHandler);\r\n};\r\n$.fn.restrictToPageSlug = function (restrictPattern: RegExp = /[^0-9a-zA-Z-//]*/g) {\r\n let targets = $(this);\r\n\r\n // The characters inside this pattern are accepted\r\n // and everything else will be 'cleaned'\r\n\r\n let restrictHandler = function () {\r\n var val = $(this).val() as string;\r\n var newVal = val.replace(restrictPattern, '');\r\n if ((newVal.match(new RegExp(\"/\", \"g\")) || []).length > 4) {\r\n var pos = newVal.lastIndexOf('/');\r\n newVal = newVal.substring(0, pos) + newVal.substring(pos + 1);\r\n Alerts.warning(\"You can only have up to 4 '/' characters in a url slug.\");\r\n }\r\n // This condition is to prevent selection and keyboard navigation issues\r\n if (val !== newVal) {\r\n $(this).val(newVal);\r\n }\r\n };\r\n\r\n targets.on('keyup', restrictHandler);\r\n targets.on('paste', restrictHandler);\r\n targets.on('change', restrictHandler);\r\n};\r\n$.fn.restrictToMetaSlug = function (restrictPattern: RegExp = /[^0-9a-zA-Z.]*/g) {\r\n let targets = $(this);\r\n\r\n // The characters inside this pattern are accepted\r\n // and everything else will be 'cleaned'\r\n\r\n let restrictHandler = function () {\r\n let val = $(this).val() as string;\r\n let newVal = val.replace(restrictPattern, '');\r\n if ((newVal.match(new RegExp(\".\", \"g\")) || []).length > 1) {\r\n let pos = newVal.lastIndexOf('.');\r\n newVal = newVal.substring(0, pos) + newVal.substring(pos + 1);\r\n Alerts.warning(\"You can only have up to 1 '.' characters in a meta slug.\");\r\n }\r\n // This condition is to prevent selection and keyboard navigation issues\r\n if (val !== newVal) {\r\n $(this).val(newVal);\r\n }\r\n };\r\n\r\n targets.on('keyup', restrictHandler);\r\n targets.on('paste', restrictHandler);\r\n targets.on('change', restrictHandler);\r\n};\r\n\r\n$.fn.characterCounter = function () {\r\n let targets = $(this);\r\n let characterCounterHandler = function () {\r\n let counter = $(this).data('counter');\r\n let max = Number($(this).attr('maxlength'));\r\n let len = ($(this).val() as string).length;\r\n $(counter).text(max - len);\r\n let cls = \"text-success\";\r\n if (max - len < max / 10)\r\n cls = \"text-danger\";\r\n $(counter).parent().removeClass('text-success').removeClass('text-danger').addClass(cls);\r\n };\r\n targets.on('keyup', characterCounterHandler);\r\n targets.on('paste', characterCounterHandler);\r\n targets.on('change', characterCounterHandler);\r\n};\r\n\r\n$.fn.warningAlert = function () {\r\n let targets = $(this);\r\n let warningAlertHandler = function (this: HTMLElement, e: JQuery.ClickEvent) {\r\n e.preventDefault();\r\n let warningAlertCallback = function (result: SweetAlertResult) {\r\n if (result.isConfirmed) {\r\n let url = $(e.currentTarget).attr('href');\r\n window.location.href = url;\r\n }\r\n };\r\n Alerts.confirm(\r\n {\r\n title: $(e.currentTarget).data('title'),\r\n html: $(e.currentTarget).data('warning'),\r\n footer: $(e.currentTarget).data('footer'),\r\n icon: 'warning'\r\n },\r\n warningAlertCallback\r\n );\r\n return false;\r\n };\r\n targets.on('click', warningAlertHandler);\r\n};\r\n\r\n","declare global {\r\n interface Number {\r\n formatCurrency(currency: string): string;\r\n formatKilobytes(): string;\r\n formatMegabytes(): string;\r\n }\r\n}\r\n\r\n\r\nNumber.prototype.formatCurrency = function (currency: string) {\r\n return currency + \" \" + this.toFixed(2).replace(/./g, function (c: string, i: number, a: string | any[]) {\r\n return i > 0 && c !== \".\" && (a.length - i) % 3 === 0 ? \",\" + c : c;\r\n });\r\n}\r\nNumber.prototype.formatKilobytes = function() {\r\n let n = this / 1024;\r\n return n.toFixed(0).replace(/./g, function (c: string, i: number, a: string | any[]) {\r\n return i > 0 && c !== \".\" && (a.length - i) % 3 === 0 ? \",\" + c : c;\r\n }) + \"Kb\";\r\n}\r\nNumber.prototype.formatMegabytes = function() {\r\n let n = this / 1024; \r\n n = n / 1024;\r\n return n.toFixed(0).replace(/./g, function (c: string, i: number, a: string | any[]) {\r\n return i > 0 && c !== \".\" && (a.length - i) % 3 === 0 ? \",\" + c : c;\r\n }) + \"Mb\";\r\n}\r\n\r\nexport { }\r\n","declare global {\r\n interface String {\r\n isUrlExternal(): boolean;\r\n htmlEncode(): string;\r\n htmlDecode(): string;\r\n contains(it: string): boolean;\r\n pick(min: number, max: number): string;\r\n shuffle(): string;\r\n toSeoUrl(): string;\r\n }\r\n}\r\n\r\nString.prototype.htmlEncode = function () {\r\n //create a in-memory div, set it's inner text(which jQuery automatically encodes)\r\n //then grab the encoded contents back out. The div never exists on the page.\r\n return $('<div/>').text(this).html();\r\n};\r\n\r\nString.prototype.htmlDecode = function () {\r\n return $('<div/>').html(this).text();\r\n};\r\n\r\nString.prototype.contains = function (it: string) {\r\n return this.indexOf(it) !== -1;\r\n};\r\n\r\nString.prototype.pick = function (min: number, max: number) {\r\n var n, chars = '';\r\n\r\n if (typeof max === 'undefined') {\r\n n = min;\r\n } else {\r\n n = min + Math.floor(Math.random() * (max - min));\r\n }\r\n\r\n for (var i = 0; i < n; i++) {\r\n chars += this.charAt(Math.floor(Math.random() * this.length));\r\n }\r\n\r\n return chars;\r\n};\r\n\r\n// Credit to @Christoph: http://stackoverflow.com/a/962890/464744\r\nString.prototype.shuffle = function () {\r\n var array = this.split('');\r\n var tmp, current, top = array.length;\r\n\r\n if (top) while (--top) {\r\n current = Math.floor(Math.random() * (top + 1));\r\n tmp = array[current];\r\n array[current] = array[top];\r\n array[top] = tmp;\r\n }\r\n\r\n return array.join('');\r\n};\r\n\r\nString.prototype.toSeoUrl = function () {\r\n var output = this.replace(/[^a-zA-Z0-9]/g, ' ').replace(/\\s+/g, \"-\").toLowerCase();\r\n /* remove first dash */\r\n if (output.charAt(0) === '-') output = output.substring(1);\r\n /* remove last dash */\r\n var last = output.length - 1;\r\n if (output.charAt(last) === '-') output = output.substring(0, last);\r\n return output;\r\n};\r\n\r\nexport { }\r\n","/// <reference types=\"google.maps\" />\r\n\r\nimport { Alerts } from \"../core/Alerts\";\r\nimport { DataList } from \"../core/DataList\";\r\n\r\ndeclare global {\r\n\tnamespace google.maps {\r\n\t\tinterface Marker {\r\n\t\t\tinfo: string;\r\n\t\t}\r\n\t}\r\n}\r\n\r\nexport interface PropertyServiceOptions {\r\n\tlistElementId?: string;\r\n\tmapListElementId?: string;\r\n\tmapElementId?: string;\r\n\tmapLocationListId?: string;\r\n\r\n\t/**\r\n\t * Called before the data is fetched.\r\n\t */\r\n\tonListLoad?: (sender?: HTMLElement) => void;\r\n\r\n\t/**\r\n\t * Called before the fetched HTML is rendered to the list. Must return the data back to datalist to render.\r\n\t */\r\n\tonListRender?: (html: string, sender?: HTMLElement) => string;\r\n\t/**\r\n\t * Called before the data is fetched.\r\n\t */\r\n\tonMapLoad?: (data: string, sender?: HTMLElement) => void;\r\n\r\n\t/**\r\n\t * Called before the fetched HTML is rendered to the list. Must return the data back to datalist to render.\r\n\t */\r\n\tonMapRender?: (sender?: HTMLElement) => string;\r\n\r\n\t/**\r\n\t * Renders the popup on the property map, location is the property map marker object sent from the server for that property.\r\n\t */\r\n\trenderPropertyPopup?: (location?: any) => string;\r\n}\r\n\r\nexport class PropertyService {\r\n\toptions: PropertyServiceOptions = {\r\n\t\tlistElementId: \"property-list\",\r\n\t\tmapListElementId: \"property-map-list\",\r\n\t\tmapElementId: \"property-map\",\r\n\t\tmapLocationListId: \"property-map-locations\",\r\n\r\n\t\trenderPropertyPopup: function (location: any): string {\r\n\t\t\treturn `<div class=\"card border-0\" style=\"max-width:300px\">\r\n <div style=\"background-image:url(${location.ImageUrl})\" class=\"rounded img-full img img-wide\"></div>\r\n <div class=\"card-body border-0\">\r\n <p style=\"overflow: hidden;text-overflow: ellipsis;white-space: nowrap;\">\r\n <strong>${location.Address1}, ${location.Postcode}</strong>\r\n </p>\r\n <p>${location.Description}</p>\r\n <a href=\"${location.MarkerUrl}\" class=\"btn btn-block btn-primary\">Find out more...</a>\r\n </div>\r\n </div>`;\r\n\t\t},\r\n\t};\r\n\r\n\tconstructor(options?: PropertyServiceOptions) {\r\n\t\tthis.options = { ...this.options, ...options };\r\n\r\n\t\tthis.initList();\r\n\t}\r\n\r\n\telement: HTMLElement;\r\n\tlist: DataList;\r\n\tmapListElement: HTMLElement;\r\n\tmapList: DataList;\r\n\tmap: google.maps.Map = null;\r\n\tcenter: google.maps.LatLngLiteral = { lat: 30, lng: -110 };\r\n\tmapElement: HTMLElement;\r\n\tmarkers: any[];\r\n\r\n\tinitList() {\r\n\t\tthis.element = document.getElementById(this.options.listElementId);\r\n\t\tif (!this.element) {\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tthis.list = new DataList(this.element, {\r\n\t\t\tonLoad: function (this: PropertyService, sender: HTMLElement = null) {\r\n\t\t\t\tif (this.options.onListLoad) {\r\n\t\t\t\t\tthis.options.onListLoad(sender);\r\n\t\t\t\t}\r\n\t\t\t}.bind(this),\r\n\t\t\tonComplete: function (this: PropertyService, data: string, sender: HTMLElement = null) {\r\n\t\t\t\tif (this.options.onListRender) {\r\n\t\t\t\t\tthis.options.onListRender(data, sender);\r\n\t\t\t\t}\r\n\t\t\t\tAlerts.log(\"Finished loading property list.\", \"info\");\r\n\t\t\t}.bind(this),\r\n\t\t});\r\n\t}\r\n\r\n\tinitMapList() {\r\n\t\tthis.mapListElement = document.getElementById(this.options.mapListElementId);\r\n\t\tif (!this.mapElement) {\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tthis.mapList = new DataList(this.mapListElement, {\r\n\t\t\tonComplete: function (this: PropertyService, data: string, sender: HTMLElement = null) {\r\n\t\t\t\tif (this.options.onMapLoad) {\r\n\t\t\t\t\tthis.options.onMapLoad(data, sender);\r\n\t\t\t\t}\r\n\t\t\t\tAlerts.log(\"Finished loading map list.\", \"info\");\r\n\t\t\t\tthis.reloadMarkers();\r\n\t\t\t}.bind(this),\r\n\t\t});\r\n\t}\r\n\r\n\tinitMap() {\r\n\t\tthis.mapElement = document.getElementById(this.options.mapElementId);\r\n\t\tif (!this.mapElement) {\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tthis.center = { lat: +this.mapElement.dataset.lat, lng: +this.mapElement.dataset.long };\r\n\r\n let scrollwheel = false;\r\n if (this.mapElement.dataset.scrollwheel === \"true\") {\r\n scrollwheel = true;\r\n }\r\n\t\tthis.map = new google.maps.Map(this.mapElement, {\r\n\t\t\tzoom: +this.mapElement.dataset.zoom || 15,\r\n\t\t\tcenter: this.center,\r\n\t\t\tscrollwheel: scrollwheel,\r\n\t\t});\r\n\r\n\t\t$(window).resize(\r\n\t\t\tfunction (this: PropertyService) {\r\n\t\t\t\tgoogle.maps.event.trigger(this.map, \"resize\");\r\n\t\t\t}.bind(this)\r\n\t\t);\r\n\r\n\t\tgoogle.maps.event.trigger(this.map, \"resize\");\r\n\r\n\t\tthis.initMapList();\r\n\t}\r\n\r\n\treloadMarkers() {\r\n\t\tvar infowindow: google.maps.InfoWindow = null;\r\n\r\n\t\tif (!this.mapElement) {\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tvar map = this.map;\r\n\r\n\t\tif (this.markers) {\r\n\t\t\tfor (var i = 0; i < this.markers.length; i++) {\r\n\t\t\t\tthis.markers[i].setMap(null);\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\tthis.markers = [];\r\n\r\n var locationsElement = document.getElementById(this.options.mapLocationListId);\r\n if (!locationsElement) {\r\n return;\r\n }\r\n\r\n\t\tvar locations = JSON.parse(locationsElement.dataset.locations);\r\n\r\n\t\tlocations.map(\r\n\t\t\tfunction (this: PropertyService, location: any, i: number) {\r\n\t\t\t\tlet marker = new google.maps.Marker({\r\n\t\t\t\t\tposition: new google.maps.LatLng(+location.Latitude, +location.Longitude),\r\n\t\t\t\t\tmap: this.map,\r\n\t\t\t\t\toptimized: true, // makes SVG icons work in IE\r\n\t\t\t\t});\r\n\r\n\t\t\t\tif (this.mapElement.dataset.marker) {\r\n\t\t\t\t\tmarker.setIcon(this.mapElement.dataset.marker);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tmarker.info = this.options.renderPropertyPopup(location);\r\n\r\n\t\t\t\tmarker.addListener(\"click\", () => {\r\n\t\t\t\t\tif (infowindow) {\r\n\t\t\t\t\t\tinfowindow.close();\r\n\t\t\t\t\t}\r\n\t\t\t\t\tinfowindow = new google.maps.InfoWindow({\r\n\t\t\t\t\t\tcontent: marker.info,\r\n\t\t\t\t\t});\r\n\t\t\t\t\tinfowindow.open({\r\n\t\t\t\t\t\tanchor: marker,\r\n\t\t\t\t\t\tmap,\r\n\t\t\t\t\t\tshouldFocus: false,\r\n\t\t\t\t\t});\r\n\t\t\t\t});\r\n\r\n\t\t\t\tthis.markers.push(marker);\r\n\t\t\t}.bind(this)\r\n\t\t);\r\n\r\n\t\tif (this.options.onMapRender) {\r\n\t\t\tthis.options.onMapRender();\r\n\t\t}\r\n\t}\r\n}\r\n","/// <reference types=\"google.maps\" />\r\n\r\nimport { HoodApi, PropertyService } from \".\";\r\n\r\nexport class App extends HoodApi {\r\n property: PropertyService;\r\n\r\n constructor() {\r\n super();\r\n\r\n // Setup defaults with HoodApi default initialise function. \r\n this.initialise();\r\n\r\n // Initialise the property controllers.\r\n this.property = new PropertyService();\r\n }\r\n\r\n}\r\n\r\nwindow.hood = new App();\r\n"],"names":["Swal"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"app.property.js","sources":["../../../node_modules/tslib/tslib.es6.js","../../../node_modules/jquery-toast-plugin/dist/jquery.toast.min.js","../../../../src/ts/core/Alerts.ts","../../../../src/ts/core/Inline.ts","../../../../src/ts/core/DataList.ts","../../../../src/ts/core/Validator.ts","../../../../src/ts/core/Handlers.ts","../../../../src/ts/core/Uploader.ts","../../../../src/ts/core/HoodApi.ts","../../../../src/ts/core/Loader.ts","../../../../src/ts/extensions/jqueryExtensions.ts","../../../../src/ts/extensions/numberExtensions.ts","../../../../src/ts/extensions/stringExtensions.ts","../../../../src/ts/app/PropertyService.ts","../../../../src/ts/app.property.ts"],"sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __createBinding(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, privateMap) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to get private field on non-instance\");\r\n }\r\n return privateMap.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, privateMap, value) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to set private field on non-instance\");\r\n }\r\n privateMap.set(receiver, value);\r\n return value;\r\n}\r\n","\"function\"!=typeof Object.create&&(Object.create=function(t){function o(){}return o.prototype=t,new o}),function(t,o,i,s){\"use strict\";var n={_positionClasses:[\"bottom-left\",\"bottom-right\",\"top-right\",\"top-left\",\"bottom-center\",\"top-center\",\"mid-center\"],_defaultIcons:[\"success\",\"error\",\"info\",\"warning\"],init:function(o,i){this.prepareOptions(o,t.toast.options),this.process()},prepareOptions:function(o,i){var s={};\"string\"==typeof o||o instanceof Array?s.text=o:s=o,this.options=t.extend({},i,s)},process:function(){this.setup(),this.addToDom(),this.position(),this.bindToast(),this.animate()},setup:function(){var o=\"\";if(this._toastEl=this._toastEl||t(\"<div></div>\",{\"class\":\"jq-toast-single\"}),o+='<span class=\"jq-toast-loader\"></span>',this.options.allowToastClose&&(o+='<span class=\"close-jq-toast-single\">×</span>'),this.options.text instanceof Array){this.options.heading&&(o+='<h2 class=\"jq-toast-heading\">'+this.options.heading+\"</h2>\"),o+='<ul class=\"jq-toast-ul\">';for(var i=0;i<this.options.text.length;i++)o+='<li class=\"jq-toast-li\" id=\"jq-toast-item-'+i+'\">'+this.options.text[i]+\"</li>\";o+=\"</ul>\"}else this.options.heading&&(o+='<h2 class=\"jq-toast-heading\">'+this.options.heading+\"</h2>\"),o+=this.options.text;this._toastEl.html(o),this.options.bgColor!==!1&&this._toastEl.css(\"background-color\",this.options.bgColor),this.options.textColor!==!1&&this._toastEl.css(\"color\",this.options.textColor),this.options.textAlign&&this._toastEl.css(\"text-align\",this.options.textAlign),this.options.icon!==!1&&(this._toastEl.addClass(\"jq-has-icon\"),-1!==t.inArray(this.options.icon,this._defaultIcons)&&this._toastEl.addClass(\"jq-icon-\"+this.options.icon)),this.options[\"class\"]!==!1&&this._toastEl.addClass(this.options[\"class\"])},position:function(){\"string\"==typeof this.options.position&&-1!==t.inArray(this.options.position,this._positionClasses)?\"bottom-center\"===this.options.position?this._container.css({left:t(o).outerWidth()/2-this._container.outerWidth()/2,bottom:20}):\"top-center\"===this.options.position?this._container.css({left:t(o).outerWidth()/2-this._container.outerWidth()/2,top:20}):\"mid-center\"===this.options.position?this._container.css({left:t(o).outerWidth()/2-this._container.outerWidth()/2,top:t(o).outerHeight()/2-this._container.outerHeight()/2}):this._container.addClass(this.options.position):\"object\"==typeof this.options.position?this._container.css({top:this.options.position.top?this.options.position.top:\"auto\",bottom:this.options.position.bottom?this.options.position.bottom:\"auto\",left:this.options.position.left?this.options.position.left:\"auto\",right:this.options.position.right?this.options.position.right:\"auto\"}):this._container.addClass(\"bottom-left\")},bindToast:function(){var t=this;this._toastEl.on(\"afterShown\",function(){t.processLoader()}),this._toastEl.find(\".close-jq-toast-single\").on(\"click\",function(o){o.preventDefault(),\"fade\"===t.options.showHideTransition?(t._toastEl.trigger(\"beforeHide\"),t._toastEl.fadeOut(function(){t._toastEl.trigger(\"afterHidden\")})):\"slide\"===t.options.showHideTransition?(t._toastEl.trigger(\"beforeHide\"),t._toastEl.slideUp(function(){t._toastEl.trigger(\"afterHidden\")})):(t._toastEl.trigger(\"beforeHide\"),t._toastEl.hide(function(){t._toastEl.trigger(\"afterHidden\")}))}),\"function\"==typeof this.options.beforeShow&&this._toastEl.on(\"beforeShow\",function(){t.options.beforeShow()}),\"function\"==typeof this.options.afterShown&&this._toastEl.on(\"afterShown\",function(){t.options.afterShown()}),\"function\"==typeof this.options.beforeHide&&this._toastEl.on(\"beforeHide\",function(){t.options.beforeHide()}),\"function\"==typeof this.options.afterHidden&&this._toastEl.on(\"afterHidden\",function(){t.options.afterHidden()})},addToDom:function(){var o=t(\".jq-toast-wrap\");if(0===o.length?(o=t(\"<div></div>\",{\"class\":\"jq-toast-wrap\"}),t(\"body\").append(o)):(!this.options.stack||isNaN(parseInt(this.options.stack,10)))&&o.empty(),o.find(\".jq-toast-single:hidden\").remove(),o.append(this._toastEl),this.options.stack&&!isNaN(parseInt(this.options.stack),10)){var i=o.find(\".jq-toast-single\").length,s=i-this.options.stack;s>0&&t(\".jq-toast-wrap\").find(\".jq-toast-single\").slice(0,s).remove()}this._container=o},canAutoHide:function(){return this.options.hideAfter!==!1&&!isNaN(parseInt(this.options.hideAfter,10))},processLoader:function(){if(!this.canAutoHide()||this.options.loader===!1)return!1;var t=this._toastEl.find(\".jq-toast-loader\"),o=(this.options.hideAfter-400)/1e3+\"s\",i=this.options.loaderBg,s=t.attr(\"style\")||\"\";s=s.substring(0,s.indexOf(\"-webkit-transition\")),s+=\"-webkit-transition: width \"+o+\" ease-in; -o-transition: width \"+o+\" ease-in; transition: width \"+o+\" ease-in; background-color: \"+i+\";\",t.attr(\"style\",s).addClass(\"jq-toast-loaded\")},animate:function(){var t=this;if(this._toastEl.hide(),this._toastEl.trigger(\"beforeShow\"),\"fade\"===this.options.showHideTransition.toLowerCase()?this._toastEl.fadeIn(function(){t._toastEl.trigger(\"afterShown\")}):\"slide\"===this.options.showHideTransition.toLowerCase()?this._toastEl.slideDown(function(){t._toastEl.trigger(\"afterShown\")}):this._toastEl.show(function(){t._toastEl.trigger(\"afterShown\")}),this.canAutoHide()){var t=this;o.setTimeout(function(){\"fade\"===t.options.showHideTransition.toLowerCase()?(t._toastEl.trigger(\"beforeHide\"),t._toastEl.fadeOut(function(){t._toastEl.trigger(\"afterHidden\")})):\"slide\"===t.options.showHideTransition.toLowerCase()?(t._toastEl.trigger(\"beforeHide\"),t._toastEl.slideUp(function(){t._toastEl.trigger(\"afterHidden\")})):(t._toastEl.trigger(\"beforeHide\"),t._toastEl.hide(function(){t._toastEl.trigger(\"afterHidden\")}))},this.options.hideAfter)}},reset:function(o){\"all\"===o?t(\".jq-toast-wrap\").remove():this._toastEl.remove()},update:function(t){this.prepareOptions(t,this.options),this.setup(),this.bindToast()}};t.toast=function(t){var o=Object.create(n);return o.init(t,this),{reset:function(t){o.reset(t)},update:function(t){o.update(t)}}},t.toast.options={text:\"\",heading:\"\",showHideTransition:\"fade\",allowToastClose:!0,hideAfter:3e3,loader:!0,loaderBg:\"#9EC600\",stack:5,position:\"bottom-left\",bgColor:!1,textColor:!1,textAlign:\"left\",icon:!1,beforeShow:function(){},afterShown:function(){},beforeHide:function(){},afterHidden:function(){}}}(jQuery,window,document);","import Swal, { SweetAlertOptions, SweetAlertResult } from 'sweetalert2';\r\nimport 'jquery-toast-plugin';\r\n\r\nconst BootstrapSwal = Swal.mixin({\r\n customClass: {\r\n confirmButton: 'btn btn-success m-1 px-3',\r\n cancelButton: 'btn btn-danger m-1 px-3'\r\n },\r\n buttonsStyling: false\r\n});\r\n\r\nexport class Alerts {\r\n\r\n static log(message: any, type: 'message' | 'error' | 'warning' | 'info' = 'message') {\r\n if (!document.body.classList.contains('dev-mode')) {\r\n return;\r\n }\r\n switch (type) {\r\n case 'error':\r\n console.error(message);\r\n break;\r\n case 'message':\r\n console.log(message);\r\n break;\r\n case 'warning':\r\n console.warn(message);\r\n break;\r\n case 'info':\r\n console.info(message);\r\n break;\r\n }\r\n }\r\n\r\n static error(message: string, title: string = null, hideAfter: number = null) {\r\n \r\n $.toast({\r\n heading: title,\r\n text: message,\r\n icon: 'error',\r\n position: 'bottom-left',\r\n loader: false,\r\n bgColor: '#d0100b',\r\n textColor: 'white', \r\n hideAfter: hideAfter\r\n });\r\n\r\n }\r\n\r\n static warning(message: string, title: string = null, hideAfter: number = null) {\r\n \r\n $.toast({\r\n heading: title,\r\n text: message,\r\n icon: 'error',\r\n position: 'bottom-left',\r\n loader: false,\r\n bgColor: '#ef9007',\r\n textColor: 'white',\r\n hideAfter: hideAfter\r\n });\r\n\r\n } \r\n\r\n static message(message: string, title: string = null, hideAfter: number = null) {\r\n \r\n $.toast({\r\n heading: title,\r\n text: message,\r\n icon: 'error',\r\n position: 'bottom-left',\r\n loader: false,\r\n bgColor: '#222222',\r\n textColor: 'white',\r\n hideAfter: hideAfter\r\n });\r\n\r\n } \r\n\r\n static success(message: string, title: string = null, hideAfter: number = null) {\r\n \r\n $.toast({\r\n heading: title,\r\n text: message,\r\n icon: 'error',\r\n position: 'bottom-left',\r\n loader: false,\r\n bgColor: '#28a745',\r\n textColor: 'white',\r\n hideAfter: hideAfter\r\n });\r\n\r\n } \r\n\r\n static alert(message: string, title: string = null, icon: string = 'info', hideAfter: number = 10000) {\r\n\r\n switch (icon) {\r\n case 'error':\r\n Alerts.error(message, title, hideAfter);\r\n break;\r\n case 'warning':\r\n Alerts.warning(message, title, hideAfter);\r\n break;\r\n case 'info':\r\n Alerts.message(message, title, hideAfter);\r\n break;\r\n case 'success':\r\n Alerts.success(message, title, hideAfter);\r\n break;\r\n }\r\n\r\n }\r\n\r\n static sweetAlert(options: SweetAlertOptions, callback: (result: SweetAlertResult<any>) => void) {\r\n BootstrapSwal.fire(options).then(function (result: any) {\r\n callback(result);\r\n });\r\n }\r\n\r\n static confirm(options: SweetAlertOptions, callback: (result: SweetAlertResult<any>) => void) {\r\n\r\n let baseOptions: SweetAlertOptions = {\r\n showCancelButton: true,\r\n footer: null,\r\n title: 'Are you sure?',\r\n html: 'Are you sure you want to do this?',\r\n confirmButtonText: 'Ok', \r\n cancelButtonText:'Cancel'\r\n };\r\n\r\n Alerts.sweetAlert({...baseOptions, ...options}, callback);\r\n }\r\n\r\n static prompt(options: SweetAlertOptions, callback: (result: SweetAlertResult<any>) => void) {\r\n\r\n let baseOptions: SweetAlertOptions = {\r\n input: 'text',\r\n inputAttributes: {\r\n autocapitalize: 'off'\r\n },\r\n showCancelButton: true,\r\n icon: 'info',\r\n footer: '<span class=\"text-warning\"><i class=\"fa fa-exclamation-triangle\"></i> This cannot be undone.</span>', \r\n confirmButtonText: 'Ok', \r\n cancelButtonText: 'Cancel'\r\n };\r\n\r\n Alerts.sweetAlert({...baseOptions, ...options}, callback);\r\n }\r\n\r\n log(message: string, type: 'message' | 'error' | 'warning' | 'info' = 'message') {\r\n Alerts.log(message, type);\r\n }\r\n\r\n error(message: string, title: string = null, hideAfter: number = null) {\r\n Alerts.error(message, title, hideAfter);\r\n }\r\n\r\n warning(message: string, title: string = null, hideAfter: number = null) {\r\n Alerts.warning(message, title, hideAfter);\r\n }\r\n\r\n message(message: string, title: string = null, hideAfter: number = null) {\r\n Alerts.message(message, title, hideAfter);\r\n }\r\n\r\n success(message: string, title: string = null, hideAfter: number = null) {\r\n Alerts.success(message, title, hideAfter);\r\n }\r\n\r\n alert(message: string, title: string = null, icon: string = 'info', hideAfter: number = 10000) {\r\n Alerts.alert(message, message, icon, hideAfter);\r\n }\r\n\r\n sweetAlert(options: SweetAlertOptions, callback: (result: SweetAlertResult<any>) => void) {\r\n Alerts.sweetAlert(options, callback);\r\n }\r\n\r\n confirm(options: SweetAlertOptions, callback: (result: SweetAlertResult<any>) => void) {\r\n Alerts.confirm(options, callback);\r\n }\r\n\r\n prompt(options: SweetAlertOptions, callback: (result: SweetAlertResult<any>) => void) {\r\n Alerts.prompt(options, callback);\r\n }\r\n\r\n}","import { Alerts } from \"./Alerts\";\r\nimport { Response } from \"./Response\";\r\n\r\nexport interface InlineOptions {\r\n\r\n /**\r\n * Called before the data is fetched.\r\n */\r\n onLoad?: (sender?: HTMLElement) => void;\r\n\r\n /**\r\n * Called before the fetched HTML is rendered to the list. Must return the data back to datalist to render.\r\n */\r\n onRender?: (html: string, sender?: HTMLElement) => string;\r\n\r\n /**\r\n * Called when loading and rendering is complete.\r\n */\r\n onComplete?: (html: string, sender?: HTMLElement) => void;\r\n\r\n /**\r\n * Called when an error occurs.\r\n */\r\n onError?: (jqXHR: any, textStatus: any, errorThrown: any) => void;\r\n\r\n}\r\n\r\nexport class Inline {\r\n static load(tag: HTMLElement, options: InlineOptions) {\r\n\r\n let $tag = $(tag) as JQuery<HTMLElement>;\r\n $tag.addClass('loading');\r\n if (options.onLoad) {\r\n options.onLoad(tag);\r\n }\r\n\r\n let url: string = $tag.data('url');\r\n $.get(url, function (data: string) {\r\n\r\n if (options.onRender) {\r\n data = options.onRender(data, tag);\r\n }\r\n\r\n $tag.html(data);\r\n $tag.removeClass('loading');\r\n\r\n if (options.onComplete) {\r\n options.onComplete(data, tag);\r\n }\r\n\r\n })\r\n .fail(options.onError ?? Inline.handleError);\r\n }\r\n\r\n static task(url: string, sender: HTMLElement,\r\n complete: (data: Response, sender?: HTMLElement) => void = null,\r\n error: (jqXHR: any, textStatus: any, errorThrown: any) => void = null): void {\r\n\r\n if (sender) {\r\n sender.classList.add('loading');\r\n }\r\n $.get(url, function (response: Response) {\r\n if (sender) {\r\n sender.classList.remove('loading');\r\n }\r\n if (complete) {\r\n complete(response, sender);\r\n }\r\n })\r\n .fail(error ?? Inline.handleError);\r\n\r\n }\r\n\r\n static post(url: string, sender: HTMLElement,\r\n complete: (data: Response, sender?: HTMLElement) => void = null,\r\n error: (jqXHR: any, textStatus: any, errorThrown: any) => void = null): void {\r\n\r\n if (sender) {\r\n sender.classList.add('loading');\r\n }\r\n $.post(url, function (response: Response) {\r\n if (sender) {\r\n sender.classList.remove('loading');\r\n }\r\n if (complete) {\r\n complete(response, sender);\r\n }\r\n })\r\n .fail(error ?? Inline.handleError);\r\n\r\n }\r\n\r\n static handleError(xhr: { status: string | number; }, textStatus: any, errorThrown: any) {\r\n if (xhr.status === 500) {\r\n Alerts.error(\"There was an error processing the content, please contact an administrator if this continues.\", \"Error \" + xhr.status, 10000);\r\n } else if (xhr.status === 404) {\r\n Alerts.error(\"The content could not be found.\", \"Error \" + xhr.status, 10000);\r\n } else if (xhr.status === 401) {\r\n Alerts.error(\"You are not allowed to view this resource, are you logged in correctly?\", \"Error \" + xhr.status, 10000);\r\n window.location = window.location;\r\n }\r\n }\r\n}\r\n\r\n","import { Alerts } from \"./Alerts\";\r\nimport { Inline } from \"./Inline\";\r\n\r\ndeclare global {\r\n interface HTMLElement {\r\n hoodDataList: DataList;\r\n }\r\n}\r\n\r\nexport interface DataListOptions {\r\n\r\n /**\r\n * Called before the data is fetched.\r\n */\r\n onLoad?: (sender?: HTMLElement) => void;\r\n\r\n /**\r\n * Called before the fetched HTML is rendered to the list. Must return the data back to datalist to render.\r\n */\r\n onRender?: (html: string, sender?: HTMLElement) => string;\r\n\r\n /**\r\n * Called when loading and rendering is complete.\r\n */\r\n onComplete?: (html: string, sender?: HTMLElement) => void;\r\n\r\n /**\r\n * Called when an error occurs.\r\n */\r\n onError?: (jqXHR: any, textStatus: any, errorThrown: any) => void;\r\n\r\n}\r\n\r\n/**\r\n * Attach a data list feed to an HTML element. The element must have a data-url attribute to connect to a feed.\r\n */\r\n\r\nexport class DataList {\r\n element: HTMLElement;\r\n options: DataListOptions;\r\n\r\n /**\r\n * @param element The datalist element. The element must have a data-url attribute to connect to a feed.\r\n */\r\n constructor(element: HTMLElement, options: DataListOptions) {\r\n\r\n this.element = element;\r\n this.element.hoodDataList = this;\r\n if (typeof (element) == 'undefined' || element == null) {\r\n Alerts.log('Could not DataList to element, element does not exist.', 'error');\r\n return;\r\n }\r\n\r\n this.options = { ...this.options, ...options };\r\n\r\n if ($(this.element).hasClass('query')) {\r\n\r\n let r = new RegExp('^(?:[a-z]+:)?//', 'i');\r\n let pageUrl: URL = null;\r\n if (r.test(this.element.dataset.url)) {\r\n pageUrl = new URL(this.element.dataset.url);\r\n } else {\r\n pageUrl = new URL(window.location.origin + this.element.dataset.url);\r\n }\r\n if ('URLSearchParams' in window) {\r\n var searchParams = new URLSearchParams(window.location.search);\r\n var urlParams = new URLSearchParams(pageUrl.search);\r\n searchParams.forEach((value, key, parent) => {\r\n urlParams.set(key, value);\r\n });\r\n if (urlParams.get(\"page\") == \"0\") {\r\n urlParams.set(\"page\", \"1\");\r\n }\r\n pageUrl.search = urlParams.toString();\r\n } else {\r\n pageUrl.search = window.location.search;\r\n }\r\n\r\n let url = pageUrl.pathname + pageUrl.search;\r\n $(this.element).attr('data-url', url);\r\n $(this.element).data('url', url);\r\n\r\n }\r\n\r\n if (!$(this.element).hasClass('refresh-only')) {\r\n var listUrl = document.createElement('a');\r\n listUrl.href = $(this.element).data('url');\r\n this.reload(new URL(listUrl.href));\r\n }\r\n\r\n $(this.element).on('click', '.pagination a, a.hood-inline-list-target', function (this: DataList, e: JQuery.ClickEvent) {\r\n\r\n e.preventDefault();\r\n\r\n var url = document.createElement('a');\r\n url.href = (e.currentTarget as HTMLAnchorElement).href;\r\n\r\n var listUrl = document.createElement('a');\r\n listUrl.href = $(this.element).data('url');\r\n listUrl.search = url.search;\r\n\r\n this.reload(new URL(listUrl.href));\r\n\r\n }.bind(this));\r\n\r\n $('body').on('submit', `form.inline[data-target=\"#${this.element.id}\"]`, function (this: DataList, e: JQuery.ClickEvent) {\r\n\r\n e.preventDefault();\r\n\r\n let $form = $(e.currentTarget);\r\n\r\n var listUrl = document.createElement('a');\r\n listUrl.href = $(this.element).data('url');\r\n\r\n listUrl.search = \"?\" + $form.serialize();\r\n this.reload(new URL(listUrl.href));\r\n\r\n }.bind(this));\r\n\r\n }\r\n\r\n reload(this: DataList, url: URL = null) {\r\n if (url) {\r\n if (history.pushState && $(this.element).hasClass('query')) {\r\n let newurl = window.location.protocol + \"//\" + window.location.host + window.location.pathname + (url.href.contains('?') ? \"?\" + url.href.substring(url.href.indexOf('?') + 1) : '');\r\n window.history.pushState({ path: newurl }, '', newurl);\r\n }\r\n $(this.element).data('url', url);\r\n }\r\n Inline.load(this.element, { ...this.options });\r\n }\r\n\r\n}\r\n","import { Alerts } from \"./Alerts\";\r\nimport { Inline } from \"./Inline\";\r\nimport { Response } from \"./Response\";\r\n\r\nexport interface ValidatorOptions {\r\n\terrorAlert?: string;\r\n\r\n\t/**\r\n\t * Called before the submit of the form data, you can return the data to be serialised.\r\n\t */\r\n\tonSubmit?: (sender: Validator) => void;\r\n\r\n\t/**\r\n\t * Called when submit is complete.\r\n\t */\r\n\tonComplete?: (data: Response, sender?: Validator) => void;\r\n\r\n\t/**\r\n\t * Called when an error occurs.\r\n\t */\r\n\tonError?: (jqXHR: any, textStatus: any, errorThrown: any) => void;\r\n\r\n\tserializationFunction?: () => string;\r\n\r\n\tuseAjax?: boolean;\r\n}\r\n\r\nexport class Validator {\r\n\telement: HTMLFormElement;\r\n\toptions: ValidatorOptions = {\r\n\t\terrorAlert: \"There are errors on the form, please check your answers and try again.\",\r\n\t\tuseAjax: true,\r\n\t};\r\n\r\n\t/**\r\n\t * @param element The datalist element. The element must have a data-url attribute to connect to a feed.\r\n\t */\r\n\tconstructor(element: HTMLFormElement, options: ValidatorOptions) {\r\n\t\tthis.element = element;\r\n\t\tif (!this.element) {\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tthis.options.serializationFunction = function (this: Validator) {\r\n\t\t\tlet rtn = $(this.element).serialize();\r\n\t\t\treturn rtn;\r\n\t\t}.bind(this);\r\n\r\n\t\tthis.options = { ...this.options, ...options };\r\n\r\n\t\tthis.element.addEventListener(\r\n\t\t\t\"submit\",\r\n\t\t\tfunction (this: Validator, e: Event) {\r\n\t\t\t\te.preventDefault();\r\n\t\t\t\te.stopImmediatePropagation();\r\n\t\t\t\tthis.submitForm();\r\n\t\t\t}.bind(this)\r\n\t\t);\r\n\t\tvar tag = '[data-submit=\"#' + this.element.id + '\"]';\r\n\t\tlet submitButtons = $(tag);\r\n\t\tif (submitButtons) {\r\n\t\t\tsubmitButtons.on(\r\n\t\t\t\t\"click\",\r\n\t\t\t\tfunction (this: Validator, e: Event) {\r\n\t\t\t\t\te.preventDefault();\r\n\t\t\t\t\te.stopImmediatePropagation();\r\n\t\t\t\t\tlet exit = $(e.currentTarget).data(\"exit\");\r\n\t\t\t\t\tif (exit) {\r\n\t\t\t\t\t\t$(this.element).find(\"input#exit\").remove();\r\n\t\t\t\t\t\t$(\"<input id='exit' />\").attr(\"type\", \"hidden\").attr(\"name\", \"exit\").attr(\"value\", \"true\").appendTo(this.element);\r\n\t\t\t\t\t}\r\n\t\t\t\t\tthis.submitForm();\r\n\t\t\t\t}.bind(this)\r\n\t\t\t);\r\n\t\t}\r\n\t}\r\n\r\n\tsubmitForm() {\r\n\t\tthis.element.classList.add(\"was-validated\");\r\n\t\tif (this.element.checkValidity()) {\r\n\t\t\tthis.element.classList.add(\"loading\");\r\n\r\n\t\t\tlet checkboxes = this.element.querySelector(\"input[type=checkbox]\");\r\n\t\t\tif (checkboxes) {\r\n\t\t\t\tArray.prototype.slice.call(checkboxes).forEach(function (checkbox: HTMLInputElement) {\r\n\t\t\t\t\tif ($(this).is(\":checked\")) {\r\n\t\t\t\t\t\t$(this).val(\"true\");\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t}\r\n\r\n\t\t\tif (this.options.onSubmit) {\r\n\t\t\t\tthis.options.onSubmit(this);\r\n\t\t\t}\r\n\r\n\t\t\tif (this.options.useAjax) {\r\n\t\t\t\tlet formData = this.options.serializationFunction();\r\n\r\n\t\t\t\t$.post(\r\n\t\t\t\t\tthis.element.action,\r\n\t\t\t\t\tformData,\r\n\t\t\t\t\tfunction (this: Validator, data: any) {\r\n\t\t\t\t\t\tif (this.options.onComplete) {\r\n\t\t\t\t\t\t\tthis.options.onComplete(data, this);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}.bind(this)\r\n\t\t\t\t)\r\n\t\t\t\t\t.fail(this.options.onError ?? Inline.handleError)\r\n\t\t\t\t\t.always(function (this: Validator) {\r\n\t\t\t\t\t\tthis.element.classList.remove(\"loading\");\r\n\t\t\t\t\t}.bind(this));\r\n\t\t\t} else {\r\n\t\t\t\tthis.element.submit();\r\n\t\t\t}\r\n\t\t} else {\r\n\t\t\tif (this.options.errorAlert) {\r\n\t\t\t\tAlerts.error(this.options.errorAlert, null, 5000);\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n}\r\n","export class Handlers {\r\n constructor() {\r\n }\r\n \r\n /**\r\n * Initialise all default Hood CMS handlers.\r\n */\r\n initDefaultHandlers() {\r\n\r\n this.checkboxToCsvInput();\r\n this.iconSelector();\r\n this.initSelectValues();\r\n this.scrollHandlers();\r\n this.selectText();\r\n this.setValueOnClick();\r\n this.submitOnChange();\r\n\r\n }\r\n\r\n /**\r\n * Sets values of any selects that have the value set in data-selected, useful for \r\n */\r\n initSelectValues(tag: string = 'body') {\r\n $(tag).find('select[data-selected]').each(this.initSelectValuesHandler);\r\n }\r\n\r\n initSelectValuesHandler(this: HTMLElement, index: number, element: HTMLElement) {\r\n let sel = $(this).data('selected');\r\n if (sel !== 'undefined' && sel !== '') {\r\n let selected = String(sel);\r\n $(this).val(selected);\r\n }\r\n }\r\n\r\n /**\r\n * Sets up any Hood Icon selector fields, requires the correct HTML setup.\r\n */\r\n iconSelector(tag: string = 'body') {\r\n $(tag).find('[data-hood-icon]').each(this.iconSelectorHandler);\r\n }\r\n\r\n iconSelectorHandler(this: HTMLElement, index: number, element: HTMLElement) {\r\n let $tag = $(this);\r\n let input = $tag.find('input[data-hood-icon-input]')\r\n let display = $tag.find('[data-hood-icon-display]')\r\n let collapse = $tag.find('.collapse')\r\n\r\n $tag.find('[data-hood-icon-key][data-hood-icon-value]').on('click', function () {\r\n $tag.find('[data-hood-icon-key][data-hood-icon-value]').removeClass('active');\r\n $(this).addClass('active');\r\n let key = $(this).data('hoodIconKey');\r\n let value = $(this).data('hoodIconValue');\r\n $(this)\r\n display.html(value);\r\n input.val(key);\r\n if (collapse) {\r\n collapse.removeClass('show');\r\n }\r\n });\r\n }\r\n\r\n /**\r\n * Submits the form when input is changed, mark inputs with .submit-on-change class.\r\n */\r\n selectText(tag: string = 'body') {\r\n $(tag).on('click', '.select-text', this.selectTextHandler);\r\n }\r\n\r\n selectTextHandler(this: HTMLInputElement) {\r\n let $this = $(this);\r\n $this.select();\r\n // Work around Chrome's little problem\r\n $this.mouseup(function () {\r\n // Prevent further mouseup intervention\r\n $this.unbind(\"mouseup\");\r\n return false;\r\n });\r\n }\r\n\r\n /**\r\n * Attaches handlers for default scrolling functions, scroll to top, scroll to target (with header.header offset calculated)\r\n * and scroll to target direct (with no calculated offset).\r\n */\r\n scrollHandlers(tag: string = 'body') {\r\n $(tag).on('click', '.scroll-top, .scroll-to-top', this.scrollTop);\r\n $(tag).on('click', '.scroll-target, .scroll-to-target', this.scrollTarget);\r\n $(tag).on('click', '.scroll-target-direct, .scroll-to-target-direct', this.scrollTargetDirect);\r\n }\r\n\r\n scrollTop(this: HTMLAnchorElement, e: JQuery.ClickEvent) {\r\n if (e) e.preventDefault();\r\n $('html, body').animate({ scrollTop: 0 }, 800);\r\n return false;\r\n }\r\n\r\n scrollTarget(this: HTMLAnchorElement, e: JQuery.ClickEvent) {\r\n if (e) e.preventDefault();\r\n let url = $(this).attr('href').split('#')[0];\r\n if (url !== window.location.pathname && url !== \"\") {\r\n return;\r\n }\r\n let target = this.hash;\r\n let $target = $(target);\r\n let $header = $('header.header');\r\n let headerOffset = 0;\r\n if ($header) {\r\n headerOffset = $header.height();\r\n }\r\n if ($(this).data('offset'))\r\n $('html, body').stop().animate({\r\n 'scrollTop': $target.offset().top - $(this).data('offset')\r\n }, 900, 'swing');\r\n else\r\n $('html, body').stop().animate({\r\n 'scrollTop': $target.offset().top - headerOffset\r\n }, 900, 'swing');\r\n }\r\n\r\n scrollTargetDirect(this: HTMLAnchorElement) {\r\n let scrollTop = $('body').scrollTop();\r\n let top = $($(this).attr('href')).offset().top;\r\n\r\n $('html, body').animate({\r\n scrollTop: top\r\n }, Math.abs(top - scrollTop));\r\n return false;\r\n }\r\n\r\n /**\r\n * Compiles any selected checkboxes with matching data-hood-csv-input tags,\r\n * then saves the CSV list of the values to the input given in the tag.\r\n */\r\n checkboxToCsvInput(tag: string = 'body') {\r\n $(tag).on('change', 'input[type=checkbox][data-hood-csv-input]', this.checkboxToCsvInputHandler);\r\n }\r\n\r\n checkboxToCsvInputHandler(this: HTMLInputElement, e: JQuery.ChangeEvent<HTMLElement>) {\r\n if (e) e.preventDefault();\r\n // when i change - create an array, with any other checked of the same data-input checkboxes. and add to the data-input referenced tag.\r\n let items = new Array();\r\n $('input[data-hood-csv-input=\"' + $(this).data('hoodCsvInput') + '\"]').each(function () {\r\n if ($(this).is(\":checked\"))\r\n items.push($(this).val());\r\n });\r\n let id = '#' + $(this).data('input');\r\n let vals = JSON.stringify(items);\r\n $(id).val(vals);\r\n }\r\n\r\n /**\r\n * Submits the form when input is changed, mark inputs with .submit-on-change class.\r\n */\r\n submitOnChange(tag: string = 'body') {\r\n $(tag).on('change', '.submit-on-change', this.submitOnChangeHandler);\r\n }\r\n\r\n submitOnChangeHandler(this: HTMLFormElement, e: JQuery.ChangeEvent) {\r\n if (e) e.preventDefault();\r\n $(this).parents('form').submit();\r\n }\r\n\r\n /**\r\n * Sets the value of the input [data-target] when clicked to the value in [data-value]\r\n */\r\n setValueOnClick(tag: string = 'body') {\r\n $(tag).on('click', '.click-select[data-target][data-value]', this.setValueOnClickHandler);\r\n }\r\n\r\n setValueOnClickHandler(this: HTMLElement) {\r\n let $this = $(this);\r\n let targetId = '#' + $this.data('target');\r\n $(targetId).val($this.data('value'));\r\n $(targetId).trigger('change');\r\n $('.click-select.clean[data-target=\"' + $this.data('target') + '\"]').each(function () { $(this).removeClass('active'); });\r\n $('.click-select.clean[data-target=\"' + $this.data('target') + '\"][data-value=\"' + $this.data('value') + '\"]').each(function () { $(this).addClass('active'); });\r\n }\r\n\r\n}","import { Response } from './Response';\r\nimport { Alerts } from './Alerts';\r\n\r\nexport class Uploader {\r\n constructor() {\r\n if ($('.image-uploader').length || $('.gallery-uploader').length) {\r\n $(\".upload-progress-bar\").hide();\r\n $('.image-uploader').each(this.singleImage);\r\n $('.gallery-uploader').each(this.gallery);\r\n }\r\n }\r\n\r\n refreshImage(sender: JQuery<HTMLElement>, data: Response) {\r\n $(sender.data('preview')).css({\r\n 'background-image': 'url(' + data.media.smallUrl + ')'\r\n });\r\n $(sender.data('preview')).find('img').attr('src', data.media.smallUrl);\r\n }\r\n\r\n singleImage(this: HTMLElement) {\r\n\r\n let tag = '#' + $(this).attr('id');\r\n let $tag = $(tag);\r\n\r\n let jsontag = '#' + $(this).attr('json');\r\n\r\n let avatarDropzone: Dropzone = null;\r\n $tag.dropzone({\r\n url: $tag.data('url'),\r\n maxFiles: 1,\r\n paramName: 'file',\r\n parallelUploads: 1,\r\n acceptedFiles: $tag.data('types') || \".png,.jpg,.jpeg,.gif\",\r\n autoProcessQueue: true, // Make sure the files aren't queued until manually added\r\n previewsContainer: false, // Define the container to display the previews\r\n clickable: tag,\r\n init: function () {\r\n avatarDropzone = this;\r\n }\r\n });\r\n\r\n avatarDropzone.on(\"addedfile\", function () {\r\n });\r\n\r\n avatarDropzone.on(\"totaluploadprogress\", function (progress) {\r\n $(\".upload-progress-bar.\" + tag.replace('#', '') + \" .progress-bar\").css({ width: progress + \"%\" });\r\n });\r\n\r\n avatarDropzone.on(\"sending\", function (file) {\r\n $(\".upload-progress-bar.\" + tag.replace('#', '')).show();\r\n $($tag.data('preview')).addClass('loading');\r\n });\r\n\r\n avatarDropzone.on(\"queuecomplete\", function (progress) {\r\n $(\".upload-progress-bar.\" + tag.replace('#', '')).hide();\r\n });\r\n\r\n avatarDropzone.on(\"success\", function (file, response: Response) {\r\n if (response.success) {\r\n if (response.media) {\r\n $(jsontag).val(JSON.stringify(response.media));\r\n $($tag.data('preview')).css({\r\n 'background-image': 'url(' + response.media.smallUrl + ')'\r\n });\r\n $($tag.data('preview')).find('img').attr('src', response.media.smallUrl);\r\n }\r\n Alerts.success(\"New image added!\");\r\n } else {\r\n Alerts.error(\"There was a problem adding the image: \" + response.error);\r\n }\r\n avatarDropzone.removeFile(file);\r\n $($tag.data('preview')).removeClass('loading');\r\n });\r\n\r\n }\r\n\r\n gallery(this: HTMLElement) {\r\n\r\n let tag = '#' + $(this).attr('id');\r\n let $tag = $(tag);\r\n\r\n let previewNode = document.querySelector(tag + \"-template\");\r\n previewNode.id = \"\";\r\n let previewTemplate = (<HTMLElement>previewNode.parentNode).innerHTML;\r\n previewNode.parentNode.removeChild(previewNode);\r\n\r\n let galleryDropzone: Dropzone = null;\r\n\r\n $tag.dropzone({\r\n url: $tag.data('url'),\r\n thumbnailWidth: 80,\r\n thumbnailHeight: 80,\r\n parallelUploads: 5,\r\n previewTemplate: previewTemplate,\r\n paramName: 'files',\r\n acceptedFiles: $tag.data('types') || \".png,.jpg,.jpeg,.gif\",\r\n autoProcessQueue: true, // Make sure the files aren't queued until manually added\r\n previewsContainer: \"#previews\", // Define the container to display the previews\r\n clickable: \".fileinput-button\",\r\n init: function () {\r\n galleryDropzone = this;\r\n }\r\n });\r\n\r\n $(tag + \" .cancel\").hide();\r\n\r\n galleryDropzone.on(\"addedfile\", function (file) {\r\n $(file.previewElement.querySelector(\".complete\")).hide();\r\n $(file.previewElement.querySelector(\".cancel\")).show();\r\n $(tag + \" .cancel\").show();\r\n });\r\n\r\n // Update the total progress bar\r\n galleryDropzone.on(\"totaluploadprogress\", function (totalProgress: number, totalBytes: number, totalBytesSent: number) {\r\n let progressBar = document.querySelector(\"#total-progress .progress-bar\") as HTMLElement;\r\n progressBar.style.width = totalProgress + \"%\";\r\n });\r\n\r\n galleryDropzone.on(\"sending\", function (file: Dropzone.DropzoneFile) {\r\n // Show the total progress bar when upload starts\r\n let progressBar = document.querySelector(\"#total-progress\") as HTMLElement;\r\n progressBar.style.opacity = \"1\";\r\n });\r\n\r\n // Hide the total progress bar when nothing's uploading anymore\r\n galleryDropzone.on(\"complete\", function (file) {\r\n $(file.previewElement.querySelector(\".cancel\")).hide();\r\n $(file.previewElement.querySelector(\".progress\")).hide();\r\n $(file.previewElement.querySelector(\".complete\")).show();\r\n\r\n console.error(\"Uploader.Gallery.Dropzone.OnComplete - Inline.Refresh('.gallery') is not implemented.\");\r\n //Inline.Refresh('.gallery');\r\n });\r\n\r\n // Hide the total progress bar when nothing's uploading anymore\r\n galleryDropzone.on(\"queuecomplete\", function (progress) {\r\n let totalProgress = document.querySelector(\"#total-progress\") as HTMLElement;\r\n totalProgress.style.opacity = \"0\";\r\n $(tag + \" .cancel\").hide();\r\n });\r\n\r\n galleryDropzone.on(\"success\", function (file, response: Response) {\r\n\r\n console.error(\"Uploader.Gallery.Dropzone.OnSuccess - Inline.Refresh('.gallery') is not implemented.\");\r\n //Inline.Refresh('.gallery');\r\n\r\n if (response.success) {\r\n Alerts.success(\"New images added!\");\r\n } else {\r\n Alerts.error(\"There was a problem adding the profile image: \" + response.error);\r\n }\r\n });\r\n\r\n // Setup the buttons for all transfers\r\n // The \"add files\" button doesn't need to be setup because the config\r\n // `clickable` has already been specified.\r\n $(\".actions .cancel\").click(function () {\r\n galleryDropzone.removeAllFiles(true);\r\n });\r\n }\r\n\r\n}","/// <reference types=\"google.maps\" />\r\n\r\nimport { Response } from \"./Response\";\r\nimport { Alerts } from \"./Alerts\";\r\nimport { Handlers } from \"./Handlers\";\r\nimport { Uploader } from \"./Uploader\";\r\nimport { Validator } from \"./Validator\";\r\n\r\ndeclare global {\r\n interface Hood {\r\n alerts: Alerts;\r\n uploader: Uploader;\r\n handlers: Handlers;\r\n }\r\n\r\n interface Window {\r\n hood: Hood;\r\n }\r\n}\r\n\r\n/**\r\n * Base class for extending a Hood CMS website, ensure you call HoodApi.initialise() to setup loaders and contact form defaults.\r\n */\r\nexport class HoodApi {\r\n alerts: Alerts = new Alerts();\r\n handlers: Handlers = new Handlers();\r\n uploader: Uploader = new Uploader();\r\n\r\n constructor() {\r\n }\r\n\r\n // Initialise Hood CMS site defaults, can be overridden or individual setup items can be called instead of the initialise function. \r\n initialise() {\r\n // Initialise loaders (default, adds loading to body tag)\r\n this.setupLoaders();\r\n\r\n // Hook up default handlers.\r\n this.handlers.initDefaultHandlers();\r\n\r\n // Init hood contact forms. \r\n this.initContactForms();\r\n }\r\n\r\n /**\r\n * Default Hood CMS loaders, can be used however, this simply adds a \"loading\" class to the body tag on show/hide.\r\n */\r\n setupLoaders(): void {\r\n $('body').on('loader-show', function () { document.body.classList.add('loading') })\r\n $('body').on('loader-hide', function () { document.body.classList.remove('loading') })\r\n }\r\n\r\n /**\r\n * Default initialisation function for Google Maps, should be called as the callback from the Google Maps API script tag.\r\n */\r\n initGoogleMaps(tag: string = '.google-map') {\r\n\r\n $(tag).each(function () {\r\n\r\n var myLatLng = new google.maps.LatLng($(this).data('lat'), $(this).data('long'));\r\n\r\n console.log('Loading map at: ' + $(this).data('lat') + ', ' + $(this).data('long'));\r\n\r\n var map = new google.maps.Map(this, {\r\n zoom: $(this).data('zoom') || 15,\r\n center: myLatLng,\r\n scrollwheel: false\r\n });\r\n\r\n var marker = new google.maps.Marker({\r\n position: myLatLng,\r\n map: map,\r\n title: $(this).data('marker')\r\n });\r\n\r\n $(window).on('resize', function () {\r\n google.maps.event.trigger(map, 'resize');\r\n });\r\n google.maps.event.trigger(map, 'resize');\r\n\r\n });\r\n\r\n }\r\n \r\n /**\r\n * Initialisation function for contact forms on the site, will add validator, and submit/functionality to any forms matching the given tag selector string.\r\n */\r\n initContactForms(tag: string = '.contact-form') {\r\n\r\n let $form = $(tag);\r\n\r\n $form.find('.thank-you').hide();\r\n $form.find('.form-content').show();\r\n\r\n let form: HTMLFormElement = $(tag)[0] as HTMLFormElement;\r\n new Validator(form, {\r\n onComplete: function (this: HoodApi, response: Response) {\r\n if (response.success) {\r\n\r\n if ($form.attr('data-redirect'))\r\n window.location.href = $form.attr('data-redirect');\r\n\r\n if ($form.attr('data-alert-message'))\r\n Alerts.success($form.attr('data-alert-message'));\r\n\r\n $form.find('.form').hide();\r\n $form.find('.thank-you').show();\r\n } else {\r\n if ($form.attr('data-alert-error'))\r\n Alerts.error($form.attr('data-alert-error'));\r\n else {\r\n console.error(response.errors);\r\n Alerts.error(\"There are errors on the form, please check your answers and try again.\");\r\n }\r\n }\r\n\r\n }.bind(this)\r\n });\r\n\r\n }\r\n\r\n}","export class Loader {\r\n constructor() {\r\n new CustomEvent('loader-show');\r\n new CustomEvent('loader-hide');\r\n }\r\n\r\n static show(): void {\r\n $('body').trigger('loader-show');\r\n }\r\n\r\n static hide(): void {\r\n $('body').trigger('loader-hide');\r\n }\r\n}\r\n\r\nnew Loader()","import { SweetAlertResult } from 'sweetalert2';\r\nimport { Alerts } from '../core/Alerts';\r\n\r\ndeclare global {\r\n interface JQuery {\r\n exists(): number;\r\n restrictToSlug(restrictPattern?: RegExp): void;\r\n restrictToPageSlug(restrictPattern?: RegExp): void;\r\n restrictToMetaSlug(restrictPattern?: RegExp): void;\r\n characterCounter(): void;\r\n warningAlert(): void;\r\n }\r\n}\r\n\r\n$.fn.exists = function () {\r\n return $(this).length;\r\n};\r\n\r\n$.fn.restrictToSlug = function (restrictPattern: RegExp = /[^0-9a-zA-Z]*/g) {\r\n let targets = $(this);\r\n\r\n // The characters inside this pattern are accepted\r\n // and everything else will be 'cleaned'\r\n // For example 'ABCdEfGhI5' become 'ABCEGI5'\r\n\r\n var restrictHandler = function () {\r\n var val = $(this).val() as string;\r\n var newVal = val.replace(restrictPattern, '');\r\n\r\n // This condition is to prevent selection and keyboard navigation issues\r\n if (val !== newVal) {\r\n $(this).val(newVal);\r\n }\r\n };\r\n\r\n targets.on('keyup', restrictHandler);\r\n targets.on('paste', restrictHandler);\r\n targets.on('change', restrictHandler);\r\n};\r\n$.fn.restrictToPageSlug = function (restrictPattern: RegExp = /[^0-9a-zA-Z-//]*/g) {\r\n let targets = $(this);\r\n\r\n // The characters inside this pattern are accepted\r\n // and everything else will be 'cleaned'\r\n\r\n let restrictHandler = function () {\r\n var val = $(this).val() as string;\r\n var newVal = val.replace(restrictPattern, '');\r\n if ((newVal.match(new RegExp(\"/\", \"g\")) || []).length > 4) {\r\n var pos = newVal.lastIndexOf('/');\r\n newVal = newVal.substring(0, pos) + newVal.substring(pos + 1);\r\n Alerts.warning(\"You can only have up to 4 '/' characters in a url slug.\");\r\n }\r\n // This condition is to prevent selection and keyboard navigation issues\r\n if (val !== newVal) {\r\n $(this).val(newVal);\r\n }\r\n };\r\n\r\n targets.on('keyup', restrictHandler);\r\n targets.on('paste', restrictHandler);\r\n targets.on('change', restrictHandler);\r\n};\r\n$.fn.restrictToMetaSlug = function (restrictPattern: RegExp = /[^0-9a-zA-Z.]*/g) {\r\n let targets = $(this);\r\n\r\n // The characters inside this pattern are accepted\r\n // and everything else will be 'cleaned'\r\n\r\n let restrictHandler = function () {\r\n let val = $(this).val() as string;\r\n let newVal = val.replace(restrictPattern, '');\r\n if ((newVal.match(new RegExp(\".\", \"g\")) || []).length > 1) {\r\n let pos = newVal.lastIndexOf('.');\r\n newVal = newVal.substring(0, pos) + newVal.substring(pos + 1);\r\n Alerts.warning(\"You can only have up to 1 '.' characters in a meta slug.\");\r\n }\r\n // This condition is to prevent selection and keyboard navigation issues\r\n if (val !== newVal) {\r\n $(this).val(newVal);\r\n }\r\n };\r\n\r\n targets.on('keyup', restrictHandler);\r\n targets.on('paste', restrictHandler);\r\n targets.on('change', restrictHandler);\r\n};\r\n\r\n$.fn.characterCounter = function () {\r\n let targets = $(this);\r\n let characterCounterHandler = function () {\r\n let counter = $(this).data('counter');\r\n let max = Number($(this).attr('maxlength'));\r\n let len = ($(this).val() as string).length;\r\n $(counter).text(max - len);\r\n let cls = \"text-success\";\r\n if (max - len < max / 10)\r\n cls = \"text-danger\";\r\n $(counter).parent().removeClass('text-success').removeClass('text-danger').addClass(cls);\r\n };\r\n targets.on('keyup', characterCounterHandler);\r\n targets.on('paste', characterCounterHandler);\r\n targets.on('change', characterCounterHandler);\r\n};\r\n\r\n$.fn.warningAlert = function () {\r\n let targets = $(this);\r\n let warningAlertHandler = function (this: HTMLElement, e: JQuery.ClickEvent) {\r\n e.preventDefault();\r\n let warningAlertCallback = function (result: SweetAlertResult) {\r\n if (result.isConfirmed) {\r\n let url = $(e.currentTarget).attr('href');\r\n window.location.href = url;\r\n }\r\n };\r\n Alerts.confirm(\r\n {\r\n title: $(e.currentTarget).data('title'),\r\n html: $(e.currentTarget).data('warning'),\r\n footer: $(e.currentTarget).data('footer'),\r\n icon: 'warning'\r\n },\r\n warningAlertCallback\r\n );\r\n return false;\r\n };\r\n targets.on('click', warningAlertHandler);\r\n};\r\n\r\n","declare global {\r\n interface Number {\r\n formatCurrency(currency: string): string;\r\n formatKilobytes(): string;\r\n formatMegabytes(): string;\r\n }\r\n}\r\n\r\n\r\nNumber.prototype.formatCurrency = function (currency: string) {\r\n return currency + \" \" + this.toFixed(2).replace(/./g, function (c: string, i: number, a: string | any[]) {\r\n return i > 0 && c !== \".\" && (a.length - i) % 3 === 0 ? \",\" + c : c;\r\n });\r\n}\r\nNumber.prototype.formatKilobytes = function() {\r\n let n = this / 1024;\r\n return n.toFixed(0).replace(/./g, function (c: string, i: number, a: string | any[]) {\r\n return i > 0 && c !== \".\" && (a.length - i) % 3 === 0 ? \",\" + c : c;\r\n }) + \"Kb\";\r\n}\r\nNumber.prototype.formatMegabytes = function() {\r\n let n = this / 1024; \r\n n = n / 1024;\r\n return n.toFixed(0).replace(/./g, function (c: string, i: number, a: string | any[]) {\r\n return i > 0 && c !== \".\" && (a.length - i) % 3 === 0 ? \",\" + c : c;\r\n }) + \"Mb\";\r\n}\r\n\r\nexport { }\r\n","declare global {\r\n interface String {\r\n isUrlExternal(): boolean;\r\n htmlEncode(): string;\r\n htmlDecode(): string;\r\n contains(it: string): boolean;\r\n pick(min: number, max: number): string;\r\n shuffle(): string;\r\n toSeoUrl(): string;\r\n }\r\n}\r\n\r\nString.prototype.htmlEncode = function () {\r\n //create a in-memory div, set it's inner text(which jQuery automatically encodes)\r\n //then grab the encoded contents back out. The div never exists on the page.\r\n return $('<div/>').text(this).html();\r\n};\r\n\r\nString.prototype.htmlDecode = function () {\r\n return $('<div/>').html(this).text();\r\n};\r\n\r\nString.prototype.contains = function (it: string) {\r\n return this.indexOf(it) !== -1;\r\n};\r\n\r\nString.prototype.pick = function (min: number, max: number) {\r\n var n, chars = '';\r\n\r\n if (typeof max === 'undefined') {\r\n n = min;\r\n } else {\r\n n = min + Math.floor(Math.random() * (max - min));\r\n }\r\n\r\n for (var i = 0; i < n; i++) {\r\n chars += this.charAt(Math.floor(Math.random() * this.length));\r\n }\r\n\r\n return chars;\r\n};\r\n\r\n// Credit to @Christoph: http://stackoverflow.com/a/962890/464744\r\nString.prototype.shuffle = function () {\r\n var array = this.split('');\r\n var tmp, current, top = array.length;\r\n\r\n if (top) while (--top) {\r\n current = Math.floor(Math.random() * (top + 1));\r\n tmp = array[current];\r\n array[current] = array[top];\r\n array[top] = tmp;\r\n }\r\n\r\n return array.join('');\r\n};\r\n\r\nString.prototype.toSeoUrl = function () {\r\n var output = this.replace(/[^a-zA-Z0-9]/g, ' ').replace(/\\s+/g, \"-\").toLowerCase();\r\n /* remove first dash */\r\n if (output.charAt(0) === '-') output = output.substring(1);\r\n /* remove last dash */\r\n var last = output.length - 1;\r\n if (output.charAt(last) === '-') output = output.substring(0, last);\r\n return output;\r\n};\r\n\r\nexport { }\r\n","/// <reference types=\"google.maps\" />\r\n\r\nimport { Alerts } from \"../core/Alerts\";\r\nimport { DataList } from \"../core/DataList\";\r\n\r\ndeclare global {\r\n\tnamespace google.maps {\r\n\t\tinterface Marker {\r\n\t\t\tinfo: string;\r\n\t\t}\r\n\t}\r\n}\r\n\r\nexport interface PropertyServiceOptions {\r\n\tlistElementId?: string;\r\n\tmapListElementId?: string;\r\n\tmapElementId?: string;\r\n\tmapLocationListId?: string;\r\n\r\n\t/**\r\n\t * Called before the data is fetched.\r\n\t */\r\n\tonListLoad?: (sender?: HTMLElement) => void;\r\n\r\n\t/**\r\n\t * Called before the fetched HTML is rendered to the list. Must return the data back to datalist to render.\r\n\t */\r\n\tonListRender?: (html: string, sender?: HTMLElement) => string;\r\n\t/**\r\n\t * Called before the data is fetched.\r\n\t */\r\n\tonMapLoad?: (data: string, sender?: HTMLElement) => void;\r\n\r\n\t/**\r\n\t * Called before the fetched HTML is rendered to the list. Must return the data back to datalist to render.\r\n\t */\r\n\tonMapRender?: (sender?: HTMLElement) => string;\r\n\r\n\t/**\r\n\t * Renders the popup on the property map, location is the property map marker object sent from the server for that property.\r\n\t */\r\n\trenderPropertyPopup?: (location?: any) => string;\r\n}\r\n\r\nexport class PropertyService {\r\n\toptions: PropertyServiceOptions = {\r\n\t\tlistElementId: \"property-list\",\r\n\t\tmapListElementId: \"property-map-list\",\r\n\t\tmapElementId: \"property-map\",\r\n\t\tmapLocationListId: \"property-map-locations\",\r\n\r\n\t\trenderPropertyPopup: function (location: any): string {\r\n\t\t\treturn `<div class=\"card border-0\" style=\"max-width:300px\">\r\n <div style=\"background-image:url(${location.ImageUrl})\" class=\"rounded img-full img img-wide\"></div>\r\n <div class=\"card-body border-0\">\r\n <p style=\"overflow: hidden;text-overflow: ellipsis;white-space: nowrap;\">\r\n <strong>${location.Address1}, ${location.Postcode}</strong>\r\n </p>\r\n <p>${location.Description}</p>\r\n <a href=\"${location.MarkerUrl}\" class=\"btn btn-block btn-primary\">Find out more...</a>\r\n </div>\r\n </div>`;\r\n\t\t},\r\n\t};\r\n\r\n\tconstructor(options?: PropertyServiceOptions) {\r\n\t\tthis.options = { ...this.options, ...options };\r\n\r\n\t\tthis.initList();\r\n\t}\r\n\r\n\telement: HTMLElement;\r\n\tlist: DataList;\r\n\tmapListElement: HTMLElement;\r\n\tmapList: DataList;\r\n\tmap: google.maps.Map = null;\r\n\tcenter: google.maps.LatLngLiteral = { lat: 30, lng: -110 };\r\n\tmapElement: HTMLElement;\r\n\tmarkers: any[];\r\n\r\n\tinitList() {\r\n\t\tthis.element = document.getElementById(this.options.listElementId);\r\n\t\tif (!this.element) {\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tthis.list = new DataList(this.element, {\r\n\t\t\tonLoad: function (this: PropertyService, sender: HTMLElement = null) {\r\n\t\t\t\tif (this.options.onListLoad) {\r\n\t\t\t\t\tthis.options.onListLoad(sender);\r\n\t\t\t\t}\r\n\t\t\t}.bind(this),\r\n\t\t\tonComplete: function (this: PropertyService, data: string, sender: HTMLElement = null) {\r\n\t\t\t\tif (this.options.onListRender) {\r\n\t\t\t\t\tthis.options.onListRender(data, sender);\r\n\t\t\t\t}\r\n\t\t\t\tAlerts.log(\"Finished loading property list.\", \"info\");\r\n\t\t\t}.bind(this),\r\n\t\t});\r\n\t}\r\n\r\n\tinitMapList() {\r\n\t\tthis.mapListElement = document.getElementById(this.options.mapListElementId);\r\n\t\tif (!this.mapElement) {\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tthis.mapList = new DataList(this.mapListElement, {\r\n\t\t\tonComplete: function (this: PropertyService, data: string, sender: HTMLElement = null) {\r\n\t\t\t\tif (this.options.onMapLoad) {\r\n\t\t\t\t\tthis.options.onMapLoad(data, sender);\r\n\t\t\t\t}\r\n\t\t\t\tAlerts.log(\"Finished loading map list.\", \"info\");\r\n\t\t\t\tthis.reloadMarkers();\r\n\t\t\t}.bind(this),\r\n\t\t});\r\n\t}\r\n\r\n\tinitMap() {\r\n\t\tthis.mapElement = document.getElementById(this.options.mapElementId);\r\n\t\tif (!this.mapElement) {\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tthis.center = { lat: +this.mapElement.dataset.lat, lng: +this.mapElement.dataset.long };\r\n\r\n let scrollwheel = false;\r\n if (this.mapElement.dataset.scrollwheel === \"true\") {\r\n scrollwheel = true;\r\n }\r\n\t\tthis.map = new google.maps.Map(this.mapElement, {\r\n\t\t\tzoom: +this.mapElement.dataset.zoom || 15,\r\n\t\t\tcenter: this.center,\r\n\t\t\tscrollwheel: scrollwheel,\r\n\t\t});\r\n\r\n\t\t$(window).resize(\r\n\t\t\tfunction (this: PropertyService) {\r\n\t\t\t\tgoogle.maps.event.trigger(this.map, \"resize\");\r\n\t\t\t}.bind(this)\r\n\t\t);\r\n\r\n\t\tgoogle.maps.event.trigger(this.map, \"resize\");\r\n\r\n\t\tthis.initMapList();\r\n\t}\r\n\r\n\treloadMarkers() {\r\n\t\tvar infowindow: google.maps.InfoWindow = null;\r\n\r\n\t\tif (!this.mapElement) {\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tvar map = this.map;\r\n\r\n\t\tif (this.markers) {\r\n\t\t\tfor (var i = 0; i < this.markers.length; i++) {\r\n\t\t\t\tthis.markers[i].setMap(null);\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\tthis.markers = [];\r\n\r\n var locationsElement = document.getElementById(this.options.mapLocationListId);\r\n if (!locationsElement) {\r\n return;\r\n }\r\n\r\n\t\tvar locations = JSON.parse(locationsElement.dataset.locations);\r\n\r\n\t\tlocations.map(\r\n\t\t\tfunction (this: PropertyService, location: any, i: number) {\r\n\t\t\t\tlet marker = new google.maps.Marker({\r\n\t\t\t\t\tposition: new google.maps.LatLng(+location.Latitude, +location.Longitude),\r\n\t\t\t\t\tmap: this.map,\r\n\t\t\t\t\toptimized: true, // makes SVG icons work in IE\r\n\t\t\t\t});\r\n\r\n\t\t\t\tif (this.mapElement.dataset.marker) {\r\n\t\t\t\t\tmarker.setIcon(this.mapElement.dataset.marker);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tmarker.info = this.options.renderPropertyPopup(location);\r\n\r\n\t\t\t\tmarker.addListener(\"click\", () => {\r\n\t\t\t\t\tif (infowindow) {\r\n\t\t\t\t\t\tinfowindow.close();\r\n\t\t\t\t\t}\r\n\t\t\t\t\tinfowindow = new google.maps.InfoWindow({\r\n\t\t\t\t\t\tcontent: marker.info,\r\n\t\t\t\t\t});\r\n\t\t\t\t\tinfowindow.open({\r\n\t\t\t\t\t\tanchor: marker,\r\n\t\t\t\t\t\tmap,\r\n\t\t\t\t\t\tshouldFocus: false,\r\n\t\t\t\t\t});\r\n\t\t\t\t});\r\n\r\n\t\t\t\tthis.markers.push(marker);\r\n\t\t\t}.bind(this)\r\n\t\t);\r\n\r\n\t\tif (this.options.onMapRender) {\r\n\t\t\tthis.options.onMapRender();\r\n\t\t}\r\n\t}\r\n}\r\n","/// <reference types=\"google.maps\" />\r\n\r\nimport { HoodApi, PropertyService } from \".\";\r\n\r\nexport class App extends HoodApi {\r\n property: PropertyService;\r\n\r\n constructor() {\r\n super();\r\n\r\n // Setup defaults with HoodApi default initialise function. \r\n this.initialise();\r\n\r\n // Initialise the property controllers.\r\n this.property = new PropertyService();\r\n }\r\n\r\n}\r\n\r\nwindow.hood = new App();\r\n"],"names":["Swal"],"mappings":"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"}
|
package/src/js/login.js
CHANGED